[svn] svn tip
authorsamo
Thu, 26 Jun 2008 17:39:40 +0100
branchsvn
changeset 78940bd88f376b
parent 77 34a27b94f99b
[svn]
Win32/DTNInterface.cpp
Win32/DTNInterface.h
Win32/Makefile.Debug
Win32/Makefile.Release
Win32/binaries/QtCore4.dll
Win32/binaries/QtGui4.dll
Win32/binaries/QtNetwork4.dll
Win32/binaries/connections.txt
Win32/binaries/prophet.exe
Win32/binaries/prophet.ini
Win32/bundle.cpp
Win32/bundle.h
Win32/bundleManager.cpp
Win32/bundleManager.h
Win32/connection.cpp
Win32/connection.h
Win32/connections.log
Win32/connections.txt
Win32/dataPacket.cpp
Win32/dataPacket.h
Win32/debugWidget.cpp
Win32/debugWidget.h
Win32/hello.cpp
Win32/hello.h
Win32/main.cpp
Win32/main.h
Win32/messageFile.cpp
Win32/messageFile.h
Win32/moc_DTNInterface.cpp
Win32/moc_bundle.cpp
Win32/moc_bundleManager.cpp
Win32/moc_connection.cpp
Win32/moc_dataPacket.cpp
Win32/moc_debugWidget.cpp
Win32/moc_hello.cpp
Win32/moc_messageFile.cpp
Win32/moc_msgWidget.cpp
Win32/moc_neighbourAwareness.cpp
Win32/moc_node.cpp
Win32/moc_nodeManager.cpp
Win32/moc_readFile.cpp
Win32/moc_tcpClient.cpp
Win32/moc_tlv.cpp
Win32/msgWidget.cpp
Win32/msgWidget.h
Win32/neighbourAwareness.cpp
Win32/neighbourAwareness.h
Win32/node.cpp
Win32/node.h
Win32/nodeManager.cpp
Win32/nodeManager.h
Win32/prophet.dsp
Win32/prophet.dsw
Win32/prophet.e__
Win32/prophet.ini
Win32/prophet.log
Win32/prophet.ncb
Win32/prophet.opt
Win32/prophet.plg
Win32/prophet.pro
Win32/readFile.cpp
Win32/readFile.h
Win32/tcpClient.cpp
Win32/tcpClient.h
Win32/tlv.cpp
Win32/tlv.h
doc/logging.txt
doc/vozlisca.txt
x86/2.7/DTN/HexDumpBuffer.cc
x86/2.7/DTNInterface.cpp
x86/2.7/DTNInterface.h
x86/2.7/Doxyfile
x86/2.7/bundle.cpp
x86/2.7/bundle.h
x86/2.7/bundleListFileIO.cpp
x86/2.7/bundleListFileIO.h
x86/2.7/bundleManager.cpp
x86/2.7/bundleManager.h
x86/2.7/bundleWidget.cpp
x86/2.7/bundleWidget.h
x86/2.7/configWidget.cpp
x86/2.7/configWidget.h
x86/2.7/connection.cpp
x86/2.7/connection.h
x86/2.7/connectionWidget.cpp
x86/2.7/connectionWidget.h
x86/2.7/dataPacket.cpp
x86/2.7/dataPacket.h
x86/2.7/debugWidget.cpp
x86/2.7/debugWidget.h
x86/2.7/dia/signals.dia
x86/2.7/green_off.png
x86/2.7/green_on.png
x86/2.7/hello.cpp
x86/2.7/hello.h
x86/2.7/infoWidget.cpp
x86/2.7/infoWidget.h
x86/2.7/main.cpp
x86/2.7/main.h
x86/2.7/messageFile.cpp
x86/2.7/messageFile.h
x86/2.7/msgReadWidget.cpp
x86/2.7/msgReadWidget.h
x86/2.7/msgWidget.cpp
x86/2.7/msgWidget.h
x86/2.7/neighbourAwareness.cpp
x86/2.7/neighbourAwareness.h
x86/2.7/node.cpp
x86/2.7/node.h
x86/2.7/nodeManager.cpp
x86/2.7/nodeManager.h
x86/2.7/prophet
x86/2.7/prophet.ini
x86/2.7/prophet.pro
x86/2.7/readFile.cpp
x86/2.7/readFile.h
x86/2.7/red_off.png
x86/2.7/red_on.png
x86/2.7/tcpClient.cpp
x86/2.7/tcpClient.h
x86/2.7/tlv.cpp
x86/2.7/tlv.h
x86/2.7/yellow_off.png
x86/2.7/yellow_on.png
x86/ARM/DTNInterface.cpp
x86/ARM/DTNInterface.h
x86/ARM/Makefile
x86/ARM/Makefile.Debug
x86/ARM/Makefile.Release
x86/ARM/binaries/actualizar
x86/ARM/binaries/prophet
x86/ARM/binaries/prophet.ini
x86/ARM/bundle.cpp
x86/ARM/bundle.h
x86/ARM/bundleManager.cpp
x86/ARM/bundleManager.h
x86/ARM/connection.cpp
x86/ARM/connection.h
x86/ARM/dataPacket.cpp
x86/ARM/dataPacket.h
x86/ARM/debugWidget.cpp
x86/ARM/debugWidget.h
x86/ARM/hello.cpp
x86/ARM/hello.h
x86/ARM/main.cpp
x86/ARM/main.h
x86/ARM/messageFile.cpp
x86/ARM/messageFile.h
x86/ARM/moc_bundle.cpp
x86/ARM/moc_bundleManager.cpp
x86/ARM/moc_connection.cpp
x86/ARM/moc_dataPacket.cpp
x86/ARM/moc_hello.cpp
x86/ARM/moc_messageFile.cpp
x86/ARM/moc_neighbourAwareness.cpp
x86/ARM/moc_node.cpp
x86/ARM/moc_nodeManager.cpp
x86/ARM/moc_readFile.cpp
x86/ARM/moc_tlv.cpp
x86/ARM/msgWidget.cpp
x86/ARM/msgWidget.h
x86/ARM/neighbourAwareness.cpp
x86/ARM/neighbourAwareness.h
x86/ARM/node.cpp
x86/ARM/node.h
x86/ARM/nodeManager.cpp
x86/ARM/nodeManager.h
x86/ARM/prophet
x86/ARM/prophet.dsp
x86/ARM/prophet.dsw
x86/ARM/prophet.ini
x86/ARM/prophet.log
x86/ARM/prophet.opt
x86/ARM/prophet.plg
x86/ARM/prophet.pro
x86/ARM/readFile.cpp
x86/ARM/readFile.h
x86/ARM/tcpClient.cpp
x86/ARM/tcpClient.h
x86/ARM/tlv.cpp
x86/ARM/tlv.h
x86/DTN/HexDumpBuffer.cc
x86/DTNInterface.cpp
x86/DTNInterface.h
x86/Doxyfile
x86/Win32/DTNInterface.cpp
x86/Win32/DTNInterface.h
x86/Win32/Makefile.Debug
x86/Win32/Makefile.Release
x86/Win32/binaries/QtCore4.dll
x86/Win32/binaries/QtGui4.dll
x86/Win32/binaries/QtNetwork4.dll
x86/Win32/binaries/connections.txt
x86/Win32/binaries/prophet.exe
x86/Win32/binaries/prophet.ini
x86/Win32/bundle.cpp
x86/Win32/bundle.h
x86/Win32/bundleManager.cpp
x86/Win32/bundleManager.h
x86/Win32/connection.cpp
x86/Win32/connection.h
x86/Win32/connections.log
x86/Win32/connections.txt
x86/Win32/dataPacket.cpp
x86/Win32/dataPacket.h
x86/Win32/debugWidget.cpp
x86/Win32/debugWidget.h
x86/Win32/hello.cpp
x86/Win32/hello.h
x86/Win32/main.cpp
x86/Win32/main.h
x86/Win32/messageFile.cpp
x86/Win32/messageFile.h
x86/Win32/moc_DTNInterface.cpp
x86/Win32/moc_bundle.cpp
x86/Win32/moc_bundleManager.cpp
x86/Win32/moc_connection.cpp
x86/Win32/moc_dataPacket.cpp
x86/Win32/moc_debugWidget.cpp
x86/Win32/moc_hello.cpp
x86/Win32/moc_messageFile.cpp
x86/Win32/moc_msgWidget.cpp
x86/Win32/moc_neighbourAwareness.cpp
x86/Win32/moc_node.cpp
x86/Win32/moc_nodeManager.cpp
x86/Win32/moc_readFile.cpp
x86/Win32/moc_tcpClient.cpp
x86/Win32/moc_tlv.cpp
x86/Win32/msgWidget.cpp
x86/Win32/msgWidget.h
x86/Win32/neighbourAwareness.cpp
x86/Win32/neighbourAwareness.h
x86/Win32/node.cpp
x86/Win32/node.h
x86/Win32/nodeManager.cpp
x86/Win32/nodeManager.h
x86/Win32/prophet.dsp
x86/Win32/prophet.dsw
x86/Win32/prophet.e__
x86/Win32/prophet.ini
x86/Win32/prophet.log
x86/Win32/prophet.ncb
x86/Win32/prophet.opt
x86/Win32/prophet.plg
x86/Win32/prophet.pro
x86/Win32/readFile.cpp
x86/Win32/readFile.h
x86/Win32/tcpClient.cpp
x86/Win32/tcpClient.h
x86/Win32/tlv.cpp
x86/Win32/tlv.h
x86/bundle.cpp
x86/bundle.h
x86/bundleListFileIO.cpp
x86/bundleListFileIO.h
x86/bundleManager.cpp
x86/bundleManager.h
x86/bundleWidget.cpp
x86/bundleWidget.h
x86/configWidget.cpp
x86/configWidget.h
x86/connection.cpp
x86/connection.h
x86/connectionWidget.cpp
x86/connectionWidget.h
x86/dataPacket.cpp
x86/dataPacket.h
x86/debugWidget.cpp
x86/debugWidget.h
x86/dia/signals.dia
x86/green_off.png
x86/green_on.png
x86/hello.cpp
x86/hello.h
x86/infoWidget.cpp
x86/infoWidget.h
x86/main.cpp
x86/main.h
x86/messageFile.cpp
x86/messageFile.h
x86/msgReadWidget.cpp
x86/msgReadWidget.h
x86/msgWidget.cpp
x86/msgWidget.h
x86/neighbourAwareness.cpp
x86/neighbourAwareness.h
x86/node.cpp
x86/node.h
x86/nodeManager.cpp
x86/nodeManager.h
x86/prophet
x86/prophet.ini
x86/prophet.pro
x86/readFile.cpp
x86/readFile.h
x86/red_off.png
x86/red_on.png
x86/tcpClient.cpp
x86/tcpClient.h
x86/tlv.cpp
x86/tlv.h
x86/x86/2.7/DTN/HexDumpBuffer.cc
x86/x86/2.7/DTNInterface.cpp
x86/x86/2.7/DTNInterface.h
x86/x86/2.7/Doxyfile
x86/x86/2.7/bundle.cpp
x86/x86/2.7/bundle.h
x86/x86/2.7/bundleListFileIO.cpp
x86/x86/2.7/bundleListFileIO.h
x86/x86/2.7/bundleManager.cpp
x86/x86/2.7/bundleManager.h
x86/x86/2.7/bundleWidget.cpp
x86/x86/2.7/bundleWidget.h
x86/x86/2.7/configWidget.cpp
x86/x86/2.7/configWidget.h
x86/x86/2.7/connection.cpp
x86/x86/2.7/connection.h
x86/x86/2.7/connectionWidget.cpp
x86/x86/2.7/connectionWidget.h
x86/x86/2.7/dataPacket.cpp
x86/x86/2.7/dataPacket.h
x86/x86/2.7/debugWidget.cpp
x86/x86/2.7/debugWidget.h
x86/x86/2.7/dia/signals.dia
x86/x86/2.7/green_off.png
x86/x86/2.7/green_on.png
x86/x86/2.7/hello.cpp
x86/x86/2.7/hello.h
x86/x86/2.7/infoWidget.cpp
x86/x86/2.7/infoWidget.h
x86/x86/2.7/main.cpp
x86/x86/2.7/main.h
x86/x86/2.7/messageFile.cpp
x86/x86/2.7/messageFile.h
x86/x86/2.7/msgReadWidget.cpp
x86/x86/2.7/msgReadWidget.h
x86/x86/2.7/msgWidget.cpp
x86/x86/2.7/msgWidget.h
x86/x86/2.7/neighbourAwareness.cpp
x86/x86/2.7/neighbourAwareness.h
x86/x86/2.7/node.cpp
x86/x86/2.7/node.h
x86/x86/2.7/nodeManager.cpp
x86/x86/2.7/nodeManager.h
x86/x86/2.7/prophet
x86/x86/2.7/prophet.ini
x86/x86/2.7/prophet.pro
x86/x86/2.7/readFile.cpp
x86/x86/2.7/readFile.h
x86/x86/2.7/red_off.png
x86/x86/2.7/red_on.png
x86/x86/2.7/tcpClient.cpp
x86/x86/2.7/tcpClient.h
x86/x86/2.7/tlv.cpp
x86/x86/2.7/tlv.h
x86/x86/2.7/yellow_off.png
x86/x86/2.7/yellow_on.png
x86/x86/DTN/BundleCommand.cc
x86/x86/DTN/HexDumpBuffer.cc
x86/x86/DTN/file_locations.txt
x86/x86/DTNInterface.cpp
x86/x86/DTNInterface.h
x86/x86/Doxyfile
x86/x86/bundle.cpp
x86/x86/bundle.h
x86/x86/bundleListFileIO.cpp
x86/x86/bundleListFileIO.h
x86/x86/bundleManager.cpp
x86/x86/bundleManager.h
x86/x86/bundleWidget.cpp
x86/x86/bundleWidget.h
x86/x86/configWidget.cpp
x86/x86/configWidget.h
x86/x86/connection.cpp
x86/x86/connection.h
x86/x86/connectionWidget.cpp
x86/x86/connectionWidget.h
x86/x86/dataPacket.cpp
x86/x86/dataPacket.h
x86/x86/debugWidget.cpp
x86/x86/debugWidget.h
x86/x86/dia/signals.dia
x86/x86/green_off.png
x86/x86/green_on.png
x86/x86/hello.cpp
x86/x86/hello.h
x86/x86/infoWidget.cpp
x86/x86/infoWidget.h
x86/x86/main.cpp
x86/x86/main.h
x86/x86/messageFile.cpp
x86/x86/messageFile.h
x86/x86/msgReadWidget.cpp
x86/x86/msgReadWidget.h
x86/x86/msgWidget.cpp
x86/x86/msgWidget.h
x86/x86/neighbourAwareness.cpp
x86/x86/neighbourAwareness.h
x86/x86/node.cpp
x86/x86/node.h
x86/x86/nodeManager.cpp
x86/x86/nodeManager.h
x86/x86/prophet
x86/x86/prophet.ini
x86/x86/prophet.pro
x86/x86/readFile.cpp
x86/x86/readFile.h
x86/x86/red_off.png
x86/x86/red_on.png
x86/x86/tcpClient.cpp
x86/x86/tcpClient.h
x86/x86/tlv.cpp
x86/x86/tlv.h
x86/x86/yellow_off.png
x86/x86/yellow_on.png
x86/yellow_off.png
x86/yellow_on.png
     1.1 --- a/Win32/DTNInterface.cpp	Wed Jan 03 09:17:10 2007 +0000
     1.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.3 @@ -1,293 +0,0 @@
     1.4 -#include <QtCore>
     1.5 -#include <QtNetwork>
     1.6 -#include <readFile.h>
     1.7 -#include <bundleManager.h>
     1.8 -#include <DTNInterface.h>
     1.9 -#include <tcpClient.h>
    1.10 -
    1.11 -#define DTNTIMER 500
    1.12 -
    1.13 -
    1.14 -#define INIT 0
    1.15 -#define DTNLIST 1
    1.16 -#define IDLE 2
    1.17 -#define PARSE 3
    1.18 -
    1.19 -DTNInterface::DTNInterface(BundleManager* bundleMng, NodeManager* nodeMng)
    1.20 -{
    1.21 -	ReadFile conf;
    1.22 -	seq=0;
    1.23 -	hostPort=conf.getDTNHostPort();
    1.24 -	hostAddress=conf.getDTNHostName();
    1.25 -	ourName=conf.getNodeName();
    1.26 -	ourId=conf.getNodeId();
    1.27 -	bundleManager = bundleMng;
    1.28 -	nodeManager = nodeMng;
    1.29 -	//Create and connect Hello Timer
    1.30 -	timer = new QTimer(this);
    1.31 -    connect(timer, SIGNAL(timeout()), this, SLOT(getBundles()));
    1.32 -    timer->start(DTNTIMER);
    1.33 -	client = new TcpClient(this);
    1.34 -    sender = new TcpClient(this);
    1.35 -	connect(client, SIGNAL(newAnswer(QByteArray)), this, SLOT(getResponse(QByteArray)));
    1.36 -	client->addHost(hostAddress.toString(),hostPort);
    1.37 -	sender->addHost(hostAddress.toString(),hostPort);
    1.38 -	dtnState=INIT;
    1.39 -	bundlesToParse=0;
    1.40 -	parsedList.clear();
    1.41 -	bundleList.clear();
    1.42 -
    1.43 -}
    1.44 -
    1.45 -void DTNInterface::receiveBundle(Bundle bundle)
    1.46 -{
    1.47 -	QString command;
    1.48 -	if(bundle.data.size()>0)
    1.49 -	{
    1.50 -		command.append("bundle inject ");
    1.51 -		command.append(bundle.sourceString);
    1.52 -		command.append(" ");
    1.53 -		command.append(bundle.destinationString);
    1.54 -		command.append(" \"");
    1.55 -		for (int m = 0; m < bundle.data.size(); ++m)
    1.56 -		{
    1.57 -			QString ch;
    1.58 -			ch.append("\\x");
    1.59 -			ch.append(QString("%1").arg((unsigned char)bundle.data.at(m),0,16)  );
    1.60 -			command.append(ch);
    1.61 -		}	
    1.62 -		command.append("\"");
    1.63 -		sender->appendCommand(0,command);
    1.64 -		QFile file("inject.txt");
    1.65 -		if(file.open(QIODevice::WriteOnly))
    1.66 -		{
    1.67 -		    file.write(command.toAscii());
    1.68 -		    file.close();
    1.69 -		
    1.70 -		}
    1.71 -		
    1.72 -		emit sendLog("Adding bundle to DTN...");
    1.73 -	}
    1.74 -	else
    1.75 -		emit sendLog("Zero bundle not sent to DTN...");
    1.76 -
    1.77 -}
    1.78 -
    1.79 -
    1.80 -void DTNInterface::getBundles()
    1.81 -{
    1.82 -	if(dtnState==IDLE)
    1.83 -	{
    1.84 -		dtnState=INIT;
    1.85 -		client->appendCommand(0,(QString)"");
    1.86 -	}
    1.87 -}
    1.88 -
    1.89 -
    1.90 -void DTNInterface::getResponse(QByteArray response)
    1.91 -{
    1.92 -	QString log;
    1.93 -	switch(dtnState)
    1.94 -	{
    1.95 -		case INIT:log.append("INIT:");break;
    1.96 -		case DTNLIST:log.append("DTNLIST:");break;
    1.97 -		case IDLE:log.append("IDLE:");break;
    1.98 -		case PARSE:log.append("PARSE:");break;
    1.99 -	}
   1.100 -	int size=response.size();
   1.101 -	if(size<500)
   1.102 -		log.append(response);
   1.103 -	else
   1.104 -		log.append("Long response...");
   1.105 -	emit sendLog(log);
   1.106 -	QString temp;
   1.107 -	int pos;
   1.108 -	int pos2;
   1.109 -	int inTheList=-1;
   1.110 -	
   1.111 -
   1.112 - 	switch(dtnState)
   1.113 -	{
   1.114 -		case INIT:	bundleIndex=0;
   1.115 -					bundleList.clear();
   1.116 -					client->appendCommand(0,(QString)"bundle list");
   1.117 -					dtnState=DTNLIST;
   1.118 -			break;
   1.119 -		case DTNLIST:	//we get the nuber of bundles
   1.120 -						pos = response.indexOf("(",0);
   1.121 -						pos2 = response.indexOf(")",0);
   1.122 -						temp=response.mid(pos+1,pos2-pos-1);
   1.123 -						bundlesToParse=temp.toInt(0,10);
   1.124 -						response.remove(0,pos2+6);
   1.125 -						emit sendLog("NR BUNDLES:");
   1.126 -	   				    emit sendLog(QString("%1").arg(bundlesToParse));
   1.127 -						while(bundlesToParse>0)
   1.128 -						{
   1.129 -							Bundle tempBundle;
   1.130 -							tempBundle.setContent(seq,0,0,"",0);
   1.131 -							seq++;
   1.132 -							pos2 = response.indexOf(":",0);
   1.133 -							temp=response.mid(0,pos2);
   1.134 -							//Parse bundle ID
   1.135 -							tempBundle.options=temp.toInt(0,10);
   1.136 -							response.remove(0,pos2+2);
   1.137 -							//Parse source name
   1.138 -							pos2= response.indexOf("->",0);
   1.139 -							temp=response.mid(0,pos2-1);
   1.140 -							tempBundle.sourceString=temp.toAscii();
   1.141 -							response.remove(0,pos2+3);
   1.142 -							//Parse destination name
   1.143 -							pos2= response.indexOf("length",0);
   1.144 -							temp=response.mid(0,pos2-1);
   1.145 -							tempBundle.destinationString=temp.toAscii();
   1.146 -							//Parse data length
   1.147 -							response.remove(0,pos2+7);
   1.148 -							pos2= response.indexOf("\r",0);
   1.149 -							temp=response.mid(0,pos2);
   1.150 -							tempBundle.dataLength=temp.toInt(0,10);
   1.151 -							//Removing last part
   1.152 -							pos2= response.indexOf("\r",0);
   1.153 -							response.remove(0,pos2+3);
   1.154 -							bundleList.append(tempBundle);
   1.155 -							bundlesToParse--;
   1.156 -						}
   1.157 -						//Checking for unused bundles in parsed list
   1.158 -						for (int m = 0; m < parsedList.size(); ++m)
   1.159 -						{
   1.160 -							inTheList=-1;
   1.161 -							for (int n = 0; n < bundleList.size(); ++n)
   1.162 -							{
   1.163 -								if(parsedList.at(m)==bundleList.at(n).options)
   1.164 -									inTheList=m;
   1.165 -							}
   1.166 -							if(inTheList==-1)
   1.167 -							{
   1.168 -								parsedList.removeAt(m);
   1.169 -								m=0;
   1.170 -							}
   1.171 -						}
   1.172 -						//Check if it is some of the bundles are already on the parsed list
   1.173 -						for (int m = 0; m < parsedList.size(); ++m)
   1.174 -						{
   1.175 -							inTheList=-1;
   1.176 -							for (int n = 0; n < bundleList.size(); ++n)
   1.177 -							{
   1.178 -								if(parsedList.at(m)==bundleList.at(n).options)
   1.179 -									inTheList=n;
   1.180 -							}
   1.181 -							if(inTheList!=-1)
   1.182 -								bundleList.removeAt(inTheList);
   1.183 -						}
   1.184 -						if(bundleList.size()>0)
   1.185 -						{
   1.186 -							QString command;
   1.187 -							command.append("bundle dump ");
   1.188 -							command.append(QString("%1").arg(bundleList.at(bundleIndex).options));
   1.189 -							client->appendCommand(0,command);
   1.190 -							dtnState=PARSE;
   1.191 -							
   1.192 -						}
   1.193 -						else
   1.194 -						{
   1.195 -							dtnState=IDLE;
   1.196 -						}
   1.197 -			break;
   1.198 -		case PARSE://	client->appendCommand(0,(QString)"bundle list");
   1.199 -
   1.200 -						temp=response.mid(0,20);
   1.201 -						pos=temp.indexOf("error",0);			
   1.202 -						//Parsing dumped data
   1.203 -						if(pos==-1)
   1.204 -						{
   1.205 -							QByteArray tempData;
   1.206 -							QString hexValue;
   1.207 -							char decValue;
   1.208 -							response.remove(0,8);
   1.209 -							pos=0;
   1.210 -							int resIndex=0;
   1.211 -							int responseSize=response.size();
   1.212 -							int dataLenght=bundleList.at(bundleIndex).dataLength;
   1.213 -							while((pos<(dataLenght))&&(resIndex<responseSize))
   1.214 -							{
   1.215 -								if(pos%10000==0)
   1.216 -								{
   1.217 -									int i=2;
   1.218 -								}
   1.219 -								
   1.220 -								//Decode hex value
   1.221 -								hexValue=response.mid(resIndex,2);
   1.222 -								decValue=hexValue.toShort(0,16);
   1.223 -								tempData.append(decValue);
   1.224 -								//Move to next value
   1.225 -								resIndex=resIndex+2;
   1.226 -								if(response.at(resIndex)==' ')
   1.227 -									resIndex++;
   1.228 -								if(response.at(resIndex)=='|')
   1.229 -									resIndex=resIndex+29;
   1.230 -								pos++;
   1.231 -								
   1.232 -								/*
   1.233 -								//Decode hex value
   1.234 -								QString hexValue;
   1.235 -								char decValue;
   1.236 -								hexValue=response.mid(0,2);
   1.237 -								decValue=hexValue.toShort(0,16);
   1.238 -								tempData.append(decValue);
   1.239 -								//Move to next value
   1.240 -
   1.241 -								response.remove(0,2);
   1.242 -								if(response.startsWith(' '))
   1.243 -									response.remove(0,1);
   1.244 -								if(response.startsWith('|'))
   1.245 -									response.remove(0,29);
   1.246 -								pos++;*/
   1.247 -							}
   1.248 -							Bundle tempBundle=bundleList.at(bundleIndex);
   1.249 -							tempBundle.data=tempData;
   1.250 -							//Removing from the list
   1.251 -							parsedList.append(tempBundle.options);
   1.252 -													
   1.253 -							//Checking if this is not our bundle
   1.254 -							QString temp;
   1.255 -							QString destination;
   1.256 -							temp=tempBundle.destinationString;
   1.257 -							pos=temp.indexOf("://",0);
   1.258 -							temp.remove(0,pos+3);
   1.259 -							pos=temp.indexOf("/",0);
   1.260 -							destination=temp.mid(0,pos);
   1.261 -							if(destination!=ourName)
   1.262 -							{
   1.263 -								emit sendLog("Bundle parsed...\r\n");
   1.264 -								tempBundle.options=0;
   1.265 -								tempBundle.sourceId=ourId;
   1.266 -								//tempBundle.sourceString.append("dtn://");
   1.267 -								//tempBundle.sourceString.append(ourName.toAscii());
   1.268 -								if(tempBundle.data.size()>0)
   1.269 -									emit sendBundle(tempBundle);
   1.270 -								bundleManager->updateBundlesDestinations(nodeManager);
   1.271 -							}
   1.272 -							else
   1.273 -							{
   1.274 -								emit sendLog("Bundle parsed but it is for us...\r\n");
   1.275 -							}
   1.276 -						
   1.277 -						}
   1.278 -						bundleIndex++;
   1.279 -						if(bundleIndex<bundleList.size())
   1.280 -						{
   1.281 -							QString command;
   1.282 -							command.append("bundle dump ");
   1.283 -							command.append(QString("%1").arg(bundleList.at(bundleIndex).options));
   1.284 -							client->appendCommand(0,command);
   1.285 -							dtnState=PARSE;
   1.286 -						}
   1.287 -						else
   1.288 -						{
   1.289 -							dtnState=IDLE;
   1.290 -						}
   1.291 -			break;
   1.292 -		case IDLE:		dtnState=IDLE;
   1.293 -			break;
   1.294 -	}
   1.295 -
   1.296 -}
   1.297 \ No newline at end of file
     2.1 --- a/Win32/DTNInterface.h	Wed Jan 03 09:17:10 2007 +0000
     2.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.3 @@ -1,48 +0,0 @@
     2.4 -#ifndef DTNINTERFACE_H
     2.5 -#define DTNINTERFACE_H
     2.6 -
     2.7 -//#include <iostream.h>
     2.8 -#include <QtCore>
     2.9 -#include <QtNetwork>
    2.10 -#include <connection.h>
    2.11 -#include <dataPacket.h>
    2.12 -#include <neighbourAwareness.h>
    2.13 -#include <bundleManager.h>
    2.14 -#include <nodeManager.h>
    2.15 -#include <tcpClient.h>
    2.16 -
    2.17 -class DTNInterface : public QObject 
    2.18 -{
    2.19 -
    2.20 -	Q_OBJECT
    2.21 -	public:
    2.22 -	int dtnState;
    2.23 -	int bundlesToParse;
    2.24 -	QList<Bundle> bundleList;
    2.25 -	QList<int> parsedList;
    2.26 -	DTNInterface(BundleManager*,NodeManager* nodeMng);
    2.27 -	BundleManager *bundleManager;
    2.28 -	NodeManager* nodeManager;
    2.29 -	int bundleIndex; 
    2.30 -	int hostPort;
    2.31 -	QHostAddress hostAddress;
    2.32 -	TcpClient *client;
    2.33 -	TcpClient *sender;
    2.34 -	QString ourName;
    2.35 -	int ourId;
    2.36 -	QTimer *timer;
    2.37 -	int seq;
    2.38 -			
    2.39 -	public slots:
    2.40 -	void getBundles();
    2.41 -	void getResponse(QByteArray response);
    2.42 -	void receiveBundle(Bundle);
    2.43 -	signals:
    2.44 -	void sendLog(QString);
    2.45 -	void sendBundle(Bundle);
    2.46 -
    2.47 -
    2.48 -
    2.49 -};
    2.50 -
    2.51 -#endif
     3.1 --- a/Win32/Makefile.Debug	Wed Jan 03 09:17:10 2007 +0000
     3.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.3 @@ -1,569 +0,0 @@
     3.4 -#############################################################################
     3.5 -# Makefile for building: prophet
     3.6 -# Generated by qmake (2.00a) (Qt 4.0.1) on: sre 9. avg 15:40:13 2006
     3.7 -# Project:  prophet.pro
     3.8 -# Template: app
     3.9 -#############################################################################
    3.10 -
    3.11 -####### Compiler, tools and options
    3.12 -
    3.13 -CC            = cl
    3.14 -CXX           = cl
    3.15 -LEX           = flex
    3.16 -YACC          = byacc
    3.17 -DEFINES       = -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT
    3.18 -CFLAGS        = -nologo -Zm200 -Zi -MDd -Zi -MDd -W3 $(DEFINES)
    3.19 -CXXFLAGS      = -nologo -Zm200 -Zi -MDd -Zi -MDd -GR -GX -W3 $(DEFINES)
    3.20 -LEXFLAGS      = 
    3.21 -YACCFLAGS     = -d
    3.22 -INCPATH       = -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc"
    3.23 -LINK          = link
    3.24 -LFLAGS        = /LIBPATH:"C:\Qt\4.0.1\lib" /NOLOGO /DEBUG /DEBUG /incremental:yes /SUBSYSTEM:windows
    3.25 -LIBS          = C:\Qt\4.0.1\lib\qtmaind.lib C:\Qt\4.0.1\lib\QtCored4.lib C:\Qt\4.0.1\lib\QtGuid4.lib C:\Qt\4.0.1\lib\QtNetworkd4.lib
    3.26 -QMAKE         = qmake
    3.27 -IDC           = C:\Qt\4.0.1\bin\idc.exe
    3.28 -IDL           = midl
    3.29 -ZIP           = zip -r -9
    3.30 -DEF_FILE      = 
    3.31 -RES_FILE      = 
    3.32 -COPY          = copy /y
    3.33 -COPY_FILE     = $(COPY)
    3.34 -COPY_DIR      = xcopy /s /q /y /i
    3.35 -DEL_FILE      = del
    3.36 -DEL_DIR       = rmdir
    3.37 -MOVE          = move
    3.38 -CHK_DIR_EXISTS= if not exist
    3.39 -MKDIR         = mkdir
    3.40 -INSTALL_FILE  = $(COPY_FILE)
    3.41 -INSTALL_DIR   = $(COPY_DIR)
    3.42 -
    3.43 -####### Output directory
    3.44 -
    3.45 -OBJECTS_DIR   = debug
    3.46 -
    3.47 -####### Files
    3.48 -
    3.49 -SOURCES       = main.cpp \
    3.50 -		bundle.cpp \
    3.51 -		msgWidget.cpp \
    3.52 -		bundleManager.cpp \
    3.53 -		debugWidget.cpp \
    3.54 -		node.cpp \
    3.55 -		nodeManager.cpp \
    3.56 -		connection.cpp \
    3.57 -		hello.cpp \
    3.58 -		tlv.cpp \
    3.59 -		dataPacket.cpp \
    3.60 -		messageFile.cpp \
    3.61 -		neighbourAwareness.cpp \
    3.62 -		readFile.cpp \
    3.63 -		DTNInterface.cpp \
    3.64 -		tcpClient.cpp debug\moc_neighbourAwareness.cpp \
    3.65 -		debug\moc_bundle.cpp \
    3.66 -		debug\moc_msgWidget.cpp \
    3.67 -		debug\moc_bundleManager.cpp \
    3.68 -		debug\moc_debugWidget.cpp \
    3.69 -		debug\moc_node.cpp \
    3.70 -		debug\moc_nodeManager.cpp \
    3.71 -		debug\moc_connection.cpp \
    3.72 -		debug\moc_tlv.cpp \
    3.73 -		debug\moc_messageFile.cpp \
    3.74 -		debug\moc_hello.cpp \
    3.75 -		debug\moc_dataPacket.cpp \
    3.76 -		debug\moc_readFile.cpp \
    3.77 -		debug\moc_DTNInterface.cpp \
    3.78 -		debug\moc_tcpClient.cpp
    3.79 -OBJECTS       = debug\main.obj \
    3.80 -		debug\bundle.obj \
    3.81 -		debug\msgWidget.obj \
    3.82 -		debug\bundleManager.obj \
    3.83 -		debug\debugWidget.obj \
    3.84 -		debug\node.obj \
    3.85 -		debug\nodeManager.obj \
    3.86 -		debug\connection.obj \
    3.87 -		debug\hello.obj \
    3.88 -		debug\tlv.obj \
    3.89 -		debug\dataPacket.obj \
    3.90 -		debug\messageFile.obj \
    3.91 -		debug\neighbourAwareness.obj \
    3.92 -		debug\readFile.obj \
    3.93 -		debug\DTNInterface.obj \
    3.94 -		debug\tcpClient.obj \
    3.95 -		debug\moc_neighbourAwareness.obj \
    3.96 -		debug\moc_bundle.obj \
    3.97 -		debug\moc_msgWidget.obj \
    3.98 -		debug\moc_bundleManager.obj \
    3.99 -		debug\moc_debugWidget.obj \
   3.100 -		debug\moc_node.obj \
   3.101 -		debug\moc_nodeManager.obj \
   3.102 -		debug\moc_connection.obj \
   3.103 -		debug\moc_tlv.obj \
   3.104 -		debug\moc_messageFile.obj \
   3.105 -		debug\moc_hello.obj \
   3.106 -		debug\moc_dataPacket.obj \
   3.107 -		debug\moc_readFile.obj \
   3.108 -		debug\moc_DTNInterface.obj \
   3.109 -		debug\moc_tcpClient.obj
   3.110 -DIST          = 
   3.111 -QMAKE_TARGET  = prophet
   3.112 -DESTDIR       = debug\ #avoid trailing-slash linebreak
   3.113 -TARGET        = debug\prophet.exe
   3.114 -
   3.115 -####### Implicit rules
   3.116 -
   3.117 -.SUFFIXES: .c .cpp .cc .cxx
   3.118 -
   3.119 -{.}.cpp{debug\}.obj::
   3.120 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
   3.121 -	$<
   3.122 -<<
   3.123 -
   3.124 -{.}.cc{debug\}.obj::
   3.125 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
   3.126 -	$<
   3.127 -<<
   3.128 -
   3.129 -{.}.cxx{debug\}.obj::
   3.130 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
   3.131 -	$<
   3.132 -<<
   3.133 -
   3.134 -{.}.c{debug\}.obj::
   3.135 -	$(CC) -c $(CFLAGS) $(INCPATH) -Fodebug\ @<<
   3.136 -	$<
   3.137 -<<
   3.138 -
   3.139 -{.}.cpp{debug\}.obj::
   3.140 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
   3.141 -	$<
   3.142 -<<
   3.143 -
   3.144 -{.}.cc{debug\}.obj::
   3.145 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
   3.146 -	$<
   3.147 -<<
   3.148 -
   3.149 -{.}.cxx{debug\}.obj::
   3.150 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
   3.151 -	$<
   3.152 -<<
   3.153 -
   3.154 -{.}.c{debug\}.obj::
   3.155 -	$(CC) -c $(CFLAGS) $(INCPATH) -Fodebug\ @<<
   3.156 -	$<
   3.157 -<<
   3.158 -
   3.159 -{.}.cpp{debug\}.obj::
   3.160 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
   3.161 -	$<
   3.162 -<<
   3.163 -
   3.164 -{.}.cc{debug\}.obj::
   3.165 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
   3.166 -	$<
   3.167 -<<
   3.168 -
   3.169 -{.}.cxx{debug\}.obj::
   3.170 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
   3.171 -	$<
   3.172 -<<
   3.173 -
   3.174 -{.}.c{debug\}.obj::
   3.175 -	$(CC) -c $(CFLAGS) $(INCPATH) -Fodebug\ @<<
   3.176 -	$<
   3.177 -<<
   3.178 -
   3.179 -{debug}.cpp{debug\}.obj::
   3.180 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
   3.181 -	$<
   3.182 -<<
   3.183 -
   3.184 -{debug}.cc{debug\}.obj::
   3.185 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
   3.186 -	$<
   3.187 -<<
   3.188 -
   3.189 -{debug}.cxx{debug\}.obj::
   3.190 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
   3.191 -	$<
   3.192 -<<
   3.193 -
   3.194 -{debug}.c{debug\}.obj::
   3.195 -	$(CC) -c $(CFLAGS) $(INCPATH) -Fodebug\ @<<
   3.196 -	$<
   3.197 -<<
   3.198 -
   3.199 -{debug}.cpp{debug\}.obj::
   3.200 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
   3.201 -	$<
   3.202 -<<
   3.203 -
   3.204 -{debug}.cc{debug\}.obj::
   3.205 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
   3.206 -	$<
   3.207 -<<
   3.208 -
   3.209 -{debug}.cxx{debug\}.obj::
   3.210 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
   3.211 -	$<
   3.212 -<<
   3.213 -
   3.214 -{debug}.c{debug\}.obj::
   3.215 -	$(CC) -c $(CFLAGS) $(INCPATH) -Fodebug\ @<<
   3.216 -	$<
   3.217 -<<
   3.218 -
   3.219 -####### Build rules
   3.220 -
   3.221 -first: all
   3.222 -all: Makefile.Debug $(TARGET)
   3.223 -
   3.224 -$(TARGET):  $(OBJECTS) 
   3.225 -	$(LINK) $(LFLAGS) /OUT:"$(TARGET)" @<< 
   3.226 -	  $(OBJECTS) $(LIBS)
   3.227 -<<
   3.228 -
   3.229 -
   3.230 -qmake:  FORCE
   3.231 -	@$(QMAKE) -win32 -o Makefile.Debug prophet.pro
   3.232 -
   3.233 -dist:
   3.234 -	$(ZIP) prophet.zip $(SOURCES) $(DIST) prophet.pro C:/Qt/4.0.1/mkspecs/qconfig.pri ..\..\Qt\4.0.1\mkspecs\features\qt_config.prf ..\..\Qt\4.0.1\mkspecs\features\exclusive_builds.prf ..\..\Qt\4.0.1\mkspecs\features\default_pre.prf ..\..\Qt\4.0.1\mkspecs\features\win32\default_pre.prf ..\..\Qt\4.0.1\mkspecs\features\debug.prf ..\..\Qt\4.0.1\mkspecs\features\debug_and_release.prf ..\..\Qt\4.0.1\mkspecs\features\default_post.prf ..\..\Qt\4.0.1\mkspecs\features\build_pass.prf ..\..\Qt\4.0.1\mkspecs\features\Debug.prf ..\..\Qt\4.0.1\mkspecs\features\qt.prf ..\..\Qt\4.0.1\mkspecs\features\win32\thread.prf ..\..\Qt\4.0.1\mkspecs\features\moc.prf ..\..\Qt\4.0.1\mkspecs\features\win32\rtti.prf ..\..\Qt\4.0.1\mkspecs\features\win32\exceptions.prf ..\..\Qt\4.0.1\mkspecs\features\win32\stl.prf ..\..\Qt\4.0.1\mkspecs\features\shared.prf C:/Qt/4.0.1/mkspecs/win32-msvc/features/incremental.prf ..\..\Qt\4.0.1\mkspecs\features\warn_on.prf ..\..\Qt\4.0.1\mkspecs\features\win32\windows.prf ..\..\Qt\4.0.1\mkspecs\features\resources.prf ..\..\Qt\4.0.1\mkspecs\features\uic.prf C:\Qt\4.0.1\lib\qtmaind.prl  HEADERS RESOURCES IMAGES SOURCES FORMS 
   3.235 -
   3.236 -clean: compiler_clean
   3.237 -	-$(DEL_FILE) debug\main.obj
   3.238 -	-$(DEL_FILE) debug\bundle.obj
   3.239 -	-$(DEL_FILE) debug\msgWidget.obj
   3.240 -	-$(DEL_FILE) debug\bundleManager.obj
   3.241 -	-$(DEL_FILE) debug\debugWidget.obj
   3.242 -	-$(DEL_FILE) debug\node.obj
   3.243 -	-$(DEL_FILE) debug\nodeManager.obj
   3.244 -	-$(DEL_FILE) debug\connection.obj
   3.245 -	-$(DEL_FILE) debug\hello.obj
   3.246 -	-$(DEL_FILE) debug\tlv.obj
   3.247 -	-$(DEL_FILE) debug\dataPacket.obj
   3.248 -	-$(DEL_FILE) debug\messageFile.obj
   3.249 -	-$(DEL_FILE) debug\neighbourAwareness.obj
   3.250 -	-$(DEL_FILE) debug\readFile.obj
   3.251 -	-$(DEL_FILE) debug\DTNInterface.obj
   3.252 -	-$(DEL_FILE) debug\tcpClient.obj
   3.253 -	-$(DEL_FILE) debug\moc_neighbourAwareness.obj
   3.254 -	-$(DEL_FILE) debug\moc_bundle.obj
   3.255 -	-$(DEL_FILE) debug\moc_msgWidget.obj
   3.256 -	-$(DEL_FILE) debug\moc_bundleManager.obj
   3.257 -	-$(DEL_FILE) debug\moc_debugWidget.obj
   3.258 -	-$(DEL_FILE) debug\moc_node.obj
   3.259 -	-$(DEL_FILE) debug\moc_nodeManager.obj
   3.260 -	-$(DEL_FILE) debug\moc_connection.obj
   3.261 -	-$(DEL_FILE) debug\moc_tlv.obj
   3.262 -	-$(DEL_FILE) debug\moc_messageFile.obj
   3.263 -	-$(DEL_FILE) debug\moc_hello.obj
   3.264 -	-$(DEL_FILE) debug\moc_dataPacket.obj
   3.265 -	-$(DEL_FILE) debug\moc_readFile.obj
   3.266 -	-$(DEL_FILE) debug\moc_DTNInterface.obj
   3.267 -	-$(DEL_FILE) debug\moc_tcpClient.obj
   3.268 -	-$(DEL_FILE) debug\prophet.pdb
   3.269 -	-$(DEL_FILE) debug\prophet.ilk
   3.270 -	-$(DEL_FILE) vc*.pdb
   3.271 -	-$(DEL_FILE) vc*.idb
   3.272 -
   3.273 -distclean: clean
   3.274 -	-$(DEL_FILE) "$(TARGET)"
   3.275 -	-$(DEL_FILE) Makefile.Debug
   3.276 -
   3.277 -mocclean: compiler_moc_header_clean compiler_moc_source_clean
   3.278 -
   3.279 -mocables: compiler_moc_header_make_all compiler_moc_source_make_all
   3.280 -
   3.281 -compiler_moc_header_make_all: debug\moc_neighbourAwareness.cpp debug\moc_bundle.cpp debug\moc_msgWidget.cpp debug\moc_bundleManager.cpp debug\moc_debugWidget.cpp debug\moc_node.cpp debug\moc_nodeManager.cpp debug\moc_connection.cpp debug\moc_tlv.cpp debug\moc_messageFile.cpp debug\moc_hello.cpp debug\moc_dataPacket.cpp debug\moc_readFile.cpp debug\moc_DTNInterface.cpp debug\moc_tcpClient.cpp
   3.282 -compiler_moc_header_clean:
   3.283 -	-$(DEL_FILE) debug\moc_neighbourAwareness.cpp
   3.284 -	-$(DEL_FILE) debug\moc_bundle.cpp
   3.285 -	-$(DEL_FILE) debug\moc_msgWidget.cpp
   3.286 -	-$(DEL_FILE) debug\moc_bundleManager.cpp
   3.287 -	-$(DEL_FILE) debug\moc_debugWidget.cpp
   3.288 -	-$(DEL_FILE) debug\moc_node.cpp
   3.289 -	-$(DEL_FILE) debug\moc_nodeManager.cpp
   3.290 -	-$(DEL_FILE) debug\moc_connection.cpp
   3.291 -	-$(DEL_FILE) debug\moc_tlv.cpp
   3.292 -	-$(DEL_FILE) debug\moc_messageFile.cpp
   3.293 -	-$(DEL_FILE) debug\moc_hello.cpp
   3.294 -	-$(DEL_FILE) debug\moc_dataPacket.cpp
   3.295 -	-$(DEL_FILE) debug\moc_readFile.cpp
   3.296 -	-$(DEL_FILE) debug\moc_DTNInterface.cpp
   3.297 -	-$(DEL_FILE) debug\moc_tcpClient.cpp
   3.298 -debug\moc_neighbourAwareness.cpp: connection.h \
   3.299 -		hello.h \
   3.300 -		tlv.h \
   3.301 -		node.h \
   3.302 -		bundle.h \
   3.303 -		nodeManager.h \
   3.304 -		bundleManager.h \
   3.305 -		messageFile.h \
   3.306 -		dataPacket.h \
   3.307 -		neighbourAwareness.h \
   3.308 -		readFile.h \
   3.309 -		neighbourAwareness.h
   3.310 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 neighbourAwareness.h -o debug\moc_neighbourAwareness.cpp
   3.311 -
   3.312 -debug\moc_bundle.cpp: bundle.h
   3.313 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 bundle.h -o debug\moc_bundle.cpp
   3.314 -
   3.315 -debug\moc_msgWidget.cpp: bundle.h \
   3.316 -		nodeManager.h \
   3.317 -		node.h \
   3.318 -		msgWidget.h
   3.319 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 msgWidget.h -o debug\moc_msgWidget.cpp
   3.320 -
   3.321 -debug\moc_bundleManager.cpp: bundle.h \
   3.322 -		node.h \
   3.323 -		nodeManager.h \
   3.324 -		messageFile.h \
   3.325 -		bundleManager.h
   3.326 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 bundleManager.h -o debug\moc_bundleManager.cpp
   3.327 -
   3.328 -debug\moc_debugWidget.cpp: bundle.h \
   3.329 -		node.h \
   3.330 -		msgWidget.h \
   3.331 -		nodeManager.h \
   3.332 -		neighbourAwareness.h \
   3.333 -		connection.h \
   3.334 -		hello.h \
   3.335 -		tlv.h \
   3.336 -		bundleManager.h \
   3.337 -		messageFile.h \
   3.338 -		dataPacket.h \
   3.339 -		readFile.h \
   3.340 -		debugWidget.h
   3.341 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 debugWidget.h -o debug\moc_debugWidget.cpp
   3.342 -
   3.343 -debug\moc_node.cpp: node.h
   3.344 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 node.h -o debug\moc_node.cpp
   3.345 -
   3.346 -debug\moc_nodeManager.cpp: node.h \
   3.347 -		nodeManager.h
   3.348 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 nodeManager.h -o debug\moc_nodeManager.cpp
   3.349 -
   3.350 -debug\moc_connection.cpp: hello.h \
   3.351 -		tlv.h \
   3.352 -		node.h \
   3.353 -		bundle.h \
   3.354 -		nodeManager.h \
   3.355 -		bundleManager.h \
   3.356 -		messageFile.h \
   3.357 -		dataPacket.h \
   3.358 -		connection.h
   3.359 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 connection.h -o debug\moc_connection.cpp
   3.360 -
   3.361 -debug\moc_tlv.cpp: hello.h \
   3.362 -		node.h \
   3.363 -		bundle.h \
   3.364 -		tlv.h
   3.365 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 tlv.h -o debug\moc_tlv.cpp
   3.366 -
   3.367 -debug\moc_messageFile.cpp: messageFile.h
   3.368 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 messageFile.h -o debug\moc_messageFile.cpp
   3.369 -
   3.370 -debug\moc_hello.cpp: hello.h
   3.371 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 hello.h -o debug\moc_hello.cpp
   3.372 -
   3.373 -debug\moc_dataPacket.cpp: dataPacket.h
   3.374 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 dataPacket.h -o debug\moc_dataPacket.cpp
   3.375 -
   3.376 -debug\moc_readFile.cpp: readFile.h
   3.377 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 readFile.h -o debug\moc_readFile.cpp
   3.378 -
   3.379 -debug\moc_DTNInterface.cpp: connection.h \
   3.380 -		hello.h \
   3.381 -		tlv.h \
   3.382 -		node.h \
   3.383 -		bundle.h \
   3.384 -		nodeManager.h \
   3.385 -		bundleManager.h \
   3.386 -		messageFile.h \
   3.387 -		dataPacket.h \
   3.388 -		neighbourAwareness.h \
   3.389 -		readFile.h \
   3.390 -		tcpClient.h \
   3.391 -		DTNInterface.h
   3.392 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 DTNInterface.h -o debug\moc_DTNInterface.cpp
   3.393 -
   3.394 -debug\moc_tcpClient.cpp: tcpClient.h
   3.395 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 tcpClient.h -o debug\moc_tcpClient.cpp
   3.396 -
   3.397 -compiler_rcc_make_all:
   3.398 -compiler_rcc_clean:
   3.399 -compiler_image_collection_make_all:
   3.400 -compiler_image_collection_clean:
   3.401 -	-$(DEL_FILE) qmake_image_collection.cpp
   3.402 -compiler_moc_source_make_all:
   3.403 -compiler_moc_source_clean:
   3.404 -compiler_uic_make_all:
   3.405 -compiler_uic_clean:
   3.406 -compiler_clean: compiler_moc_header_clean compiler_rcc_clean compiler_image_collection_clean compiler_moc_source_clean compiler_uic_clean 
   3.407 -
   3.408 -
   3.409 -
   3.410 -####### Compile
   3.411 -
   3.412 -debug\main.obj: main.cpp neighbourAwareness.h \
   3.413 -		connection.h \
   3.414 -		hello.h \
   3.415 -		tlv.h \
   3.416 -		node.h \
   3.417 -		bundle.h \
   3.418 -		nodeManager.h \
   3.419 -		bundleManager.h \
   3.420 -		messageFile.h \
   3.421 -		dataPacket.h \
   3.422 -		readFile.h \
   3.423 -		DTNInterface.h \
   3.424 -		tcpClient.h \
   3.425 -		debugWidget.h \
   3.426 -		msgWidget.h \
   3.427 -		
   3.428 -
   3.429 -debug\bundle.obj: bundle.cpp bundle.h \
   3.430 -		
   3.431 -
   3.432 -debug\msgWidget.obj: msgWidget.cpp msgWidget.h \
   3.433 -		bundle.h \
   3.434 -		nodeManager.h \
   3.435 -		node.h \
   3.436 -		readFile.h \
   3.437 -		
   3.438 -
   3.439 -debug\bundleManager.obj: bundleManager.cpp bundleManager.h \
   3.440 -		bundle.h \
   3.441 -		node.h \
   3.442 -		nodeManager.h \
   3.443 -		messageFile.h \
   3.444 -		readFile.h \
   3.445 -		
   3.446 -
   3.447 -debug\debugWidget.obj: debugWidget.cpp debugWidget.h \
   3.448 -		bundle.h \
   3.449 -		node.h \
   3.450 -		msgWidget.h \
   3.451 -		nodeManager.h \
   3.452 -		neighbourAwareness.h \
   3.453 -		connection.h \
   3.454 -		hello.h \
   3.455 -		tlv.h \
   3.456 -		bundleManager.h \
   3.457 -		messageFile.h \
   3.458 -		dataPacket.h \
   3.459 -		readFile.h \
   3.460 -		
   3.461 -
   3.462 -debug\node.obj: node.cpp node.h \
   3.463 -		
   3.464 -
   3.465 -debug\nodeManager.obj: nodeManager.cpp nodeManager.h \
   3.466 -		node.h \
   3.467 -		readFile.h \
   3.468 -		
   3.469 -
   3.470 -debug\connection.obj: connection.cpp connection.h \
   3.471 -		hello.h \
   3.472 -		tlv.h \
   3.473 -		node.h \
   3.474 -		bundle.h \
   3.475 -		nodeManager.h \
   3.476 -		bundleManager.h \
   3.477 -		messageFile.h \
   3.478 -		dataPacket.h \
   3.479 -		readFile.h \
   3.480 -		
   3.481 -
   3.482 -debug\hello.obj: hello.cpp hello.h \
   3.483 -		
   3.484 -
   3.485 -debug\tlv.obj: tlv.cpp tlv.h \
   3.486 -		hello.h \
   3.487 -		node.h \
   3.488 -		bundle.h \
   3.489 -		messageFile.h \
   3.490 -		readFile.h \
   3.491 -		
   3.492 -
   3.493 -debug\dataPacket.obj: dataPacket.cpp dataPacket.h \
   3.494 -		
   3.495 -
   3.496 -debug\messageFile.obj: messageFile.cpp messageFile.h \
   3.497 -		readFile.h \
   3.498 -		
   3.499 -
   3.500 -debug\neighbourAwareness.obj: neighbourAwareness.cpp connection.h \
   3.501 -		hello.h \
   3.502 -		tlv.h \
   3.503 -		node.h \
   3.504 -		bundle.h \
   3.505 -		nodeManager.h \
   3.506 -		bundleManager.h \
   3.507 -		messageFile.h \
   3.508 -		dataPacket.h \
   3.509 -		neighbourAwareness.h \
   3.510 -		readFile.h \
   3.511 -		main.h \
   3.512 -		
   3.513 -
   3.514 -debug\readFile.obj: readFile.cpp readFile.h \
   3.515 -		
   3.516 -
   3.517 -debug\DTNInterface.obj: DTNInterface.cpp readFile.h \
   3.518 -		bundleManager.h \
   3.519 -		bundle.h \
   3.520 -		node.h \
   3.521 -		nodeManager.h \
   3.522 -		messageFile.h \
   3.523 -		DTNInterface.h \
   3.524 -		connection.h \
   3.525 -		hello.h \
   3.526 -		tlv.h \
   3.527 -		dataPacket.h \
   3.528 -		neighbourAwareness.h \
   3.529 -		tcpClient.h \
   3.530 -		
   3.531 -
   3.532 -debug\tcpClient.obj: tcpClient.cpp tcpClient.h \
   3.533 -		
   3.534 -
   3.535 -debug\moc_neighbourAwareness.obj: debug\moc_neighbourAwareness.cpp 
   3.536 -
   3.537 -debug\moc_bundle.obj: debug\moc_bundle.cpp 
   3.538 -
   3.539 -debug\moc_msgWidget.obj: debug\moc_msgWidget.cpp 
   3.540 -
   3.541 -debug\moc_bundleManager.obj: debug\moc_bundleManager.cpp 
   3.542 -
   3.543 -debug\moc_debugWidget.obj: debug\moc_debugWidget.cpp 
   3.544 -
   3.545 -debug\moc_node.obj: debug\moc_node.cpp 
   3.546 -
   3.547 -debug\moc_nodeManager.obj: debug\moc_nodeManager.cpp 
   3.548 -
   3.549 -debug\moc_connection.obj: debug\moc_connection.cpp 
   3.550 -
   3.551 -debug\moc_tlv.obj: debug\moc_tlv.cpp 
   3.552 -
   3.553 -debug\moc_messageFile.obj: debug\moc_messageFile.cpp 
   3.554 -
   3.555 -debug\moc_hello.obj: debug\moc_hello.cpp 
   3.556 -
   3.557 -debug\moc_dataPacket.obj: debug\moc_dataPacket.cpp 
   3.558 -
   3.559 -debug\moc_readFile.obj: debug\moc_readFile.cpp 
   3.560 -
   3.561 -debug\moc_DTNInterface.obj: debug\moc_DTNInterface.cpp 
   3.562 -
   3.563 -debug\moc_tcpClient.obj: debug\moc_tcpClient.cpp 
   3.564 -
   3.565 -####### Install
   3.566 -
   3.567 -install:   FORCE
   3.568 -
   3.569 -uninstall:   FORCE
   3.570 -
   3.571 -FORCE:
   3.572 -
     4.1 --- a/Win32/Makefile.Release	Wed Jan 03 09:17:10 2007 +0000
     4.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.3 @@ -1,565 +0,0 @@
     4.4 -#############################################################################
     4.5 -# Makefile for building: prophet
     4.6 -# Generated by qmake (2.00a) (Qt 4.0.1) on: sre 9. avg 15:40:13 2006
     4.7 -# Project:  prophet.pro
     4.8 -# Template: app
     4.9 -#############################################################################
    4.10 -
    4.11 -####### Compiler, tools and options
    4.12 -
    4.13 -CC            = cl
    4.14 -CXX           = cl
    4.15 -LEX           = flex
    4.16 -YACC          = byacc
    4.17 -DEFINES       = -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT
    4.18 -CFLAGS        = -nologo -Zm200 -O1 -MD -O1 -MD -W3 $(DEFINES)
    4.19 -CXXFLAGS      = -nologo -Zm200 -O1 -MD -O1 -MD -GR -GX -W3 $(DEFINES)
    4.20 -LEXFLAGS      = 
    4.21 -YACCFLAGS     = -d
    4.22 -INCPATH       = -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc"
    4.23 -LINK          = link
    4.24 -LFLAGS        = /LIBPATH:"C:\Qt\4.0.1\lib" /NOLOGO /incremental:yes /SUBSYSTEM:windows
    4.25 -LIBS          = C:\Qt\4.0.1\lib\qtmain.lib C:\Qt\4.0.1\lib\QtCore4.lib C:\Qt\4.0.1\lib\QtGui4.lib C:\Qt\4.0.1\lib\QtNetwork4.lib
    4.26 -QMAKE         = qmake
    4.27 -IDC           = C:\Qt\4.0.1\bin\idc.exe
    4.28 -IDL           = midl
    4.29 -ZIP           = zip -r -9
    4.30 -DEF_FILE      = 
    4.31 -RES_FILE      = 
    4.32 -COPY          = copy /y
    4.33 -COPY_FILE     = $(COPY)
    4.34 -COPY_DIR      = xcopy /s /q /y /i
    4.35 -DEL_FILE      = del
    4.36 -DEL_DIR       = rmdir
    4.37 -MOVE          = move
    4.38 -CHK_DIR_EXISTS= if not exist
    4.39 -MKDIR         = mkdir
    4.40 -INSTALL_FILE  = $(COPY_FILE)
    4.41 -INSTALL_DIR   = $(COPY_DIR)
    4.42 -
    4.43 -####### Output directory
    4.44 -
    4.45 -OBJECTS_DIR   = release
    4.46 -
    4.47 -####### Files
    4.48 -
    4.49 -SOURCES       = main.cpp \
    4.50 -		bundle.cpp \
    4.51 -		msgWidget.cpp \
    4.52 -		bundleManager.cpp \
    4.53 -		debugWidget.cpp \
    4.54 -		node.cpp \
    4.55 -		nodeManager.cpp \
    4.56 -		connection.cpp \
    4.57 -		hello.cpp \
    4.58 -		tlv.cpp \
    4.59 -		dataPacket.cpp \
    4.60 -		messageFile.cpp \
    4.61 -		neighbourAwareness.cpp \
    4.62 -		readFile.cpp \
    4.63 -		DTNInterface.cpp \
    4.64 -		tcpClient.cpp release\moc_neighbourAwareness.cpp \
    4.65 -		release\moc_bundle.cpp \
    4.66 -		release\moc_msgWidget.cpp \
    4.67 -		release\moc_bundleManager.cpp \
    4.68 -		release\moc_debugWidget.cpp \
    4.69 -		release\moc_node.cpp \
    4.70 -		release\moc_nodeManager.cpp \
    4.71 -		release\moc_connection.cpp \
    4.72 -		release\moc_tlv.cpp \
    4.73 -		release\moc_messageFile.cpp \
    4.74 -		release\moc_hello.cpp \
    4.75 -		release\moc_dataPacket.cpp \
    4.76 -		release\moc_readFile.cpp \
    4.77 -		release\moc_DTNInterface.cpp \
    4.78 -		release\moc_tcpClient.cpp
    4.79 -OBJECTS       = release\main.obj \
    4.80 -		release\bundle.obj \
    4.81 -		release\msgWidget.obj \
    4.82 -		release\bundleManager.obj \
    4.83 -		release\debugWidget.obj \
    4.84 -		release\node.obj \
    4.85 -		release\nodeManager.obj \
    4.86 -		release\connection.obj \
    4.87 -		release\hello.obj \
    4.88 -		release\tlv.obj \
    4.89 -		release\dataPacket.obj \
    4.90 -		release\messageFile.obj \
    4.91 -		release\neighbourAwareness.obj \
    4.92 -		release\readFile.obj \
    4.93 -		release\DTNInterface.obj \
    4.94 -		release\tcpClient.obj \
    4.95 -		release\moc_neighbourAwareness.obj \
    4.96 -		release\moc_bundle.obj \
    4.97 -		release\moc_msgWidget.obj \
    4.98 -		release\moc_bundleManager.obj \
    4.99 -		release\moc_debugWidget.obj \
   4.100 -		release\moc_node.obj \
   4.101 -		release\moc_nodeManager.obj \
   4.102 -		release\moc_connection.obj \
   4.103 -		release\moc_tlv.obj \
   4.104 -		release\moc_messageFile.obj \
   4.105 -		release\moc_hello.obj \
   4.106 -		release\moc_dataPacket.obj \
   4.107 -		release\moc_readFile.obj \
   4.108 -		release\moc_DTNInterface.obj \
   4.109 -		release\moc_tcpClient.obj
   4.110 -DIST          = 
   4.111 -QMAKE_TARGET  = prophet
   4.112 -DESTDIR       = release\ #avoid trailing-slash linebreak
   4.113 -TARGET        = release\prophet.exe
   4.114 -
   4.115 -####### Implicit rules
   4.116 -
   4.117 -.SUFFIXES: .c .cpp .cc .cxx
   4.118 -
   4.119 -{release}.cpp{release\}.obj::
   4.120 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
   4.121 -	$<
   4.122 -<<
   4.123 -
   4.124 -{release}.cc{release\}.obj::
   4.125 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
   4.126 -	$<
   4.127 -<<
   4.128 -
   4.129 -{release}.cxx{release\}.obj::
   4.130 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
   4.131 -	$<
   4.132 -<<
   4.133 -
   4.134 -{release}.c{release\}.obj::
   4.135 -	$(CC) -c $(CFLAGS) $(INCPATH) -Forelease\ @<<
   4.136 -	$<
   4.137 -<<
   4.138 -
   4.139 -{release}.cpp{release\}.obj::
   4.140 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
   4.141 -	$<
   4.142 -<<
   4.143 -
   4.144 -{release}.cc{release\}.obj::
   4.145 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
   4.146 -	$<
   4.147 -<<
   4.148 -
   4.149 -{release}.cxx{release\}.obj::
   4.150 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
   4.151 -	$<
   4.152 -<<
   4.153 -
   4.154 -{release}.c{release\}.obj::
   4.155 -	$(CC) -c $(CFLAGS) $(INCPATH) -Forelease\ @<<
   4.156 -	$<
   4.157 -<<
   4.158 -
   4.159 -{.}.cpp{release\}.obj::
   4.160 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
   4.161 -	$<
   4.162 -<<
   4.163 -
   4.164 -{.}.cc{release\}.obj::
   4.165 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
   4.166 -	$<
   4.167 -<<
   4.168 -
   4.169 -{.}.cxx{release\}.obj::
   4.170 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
   4.171 -	$<
   4.172 -<<
   4.173 -
   4.174 -{.}.c{release\}.obj::
   4.175 -	$(CC) -c $(CFLAGS) $(INCPATH) -Forelease\ @<<
   4.176 -	$<
   4.177 -<<
   4.178 -
   4.179 -{.}.cpp{release\}.obj::
   4.180 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
   4.181 -	$<
   4.182 -<<
   4.183 -
   4.184 -{.}.cc{release\}.obj::
   4.185 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
   4.186 -	$<
   4.187 -<<
   4.188 -
   4.189 -{.}.cxx{release\}.obj::
   4.190 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
   4.191 -	$<
   4.192 -<<
   4.193 -
   4.194 -{.}.c{release\}.obj::
   4.195 -	$(CC) -c $(CFLAGS) $(INCPATH) -Forelease\ @<<
   4.196 -	$<
   4.197 -<<
   4.198 -
   4.199 -{.}.cpp{release\}.obj::
   4.200 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
   4.201 -	$<
   4.202 -<<
   4.203 -
   4.204 -{.}.cc{release\}.obj::
   4.205 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
   4.206 -	$<
   4.207 -<<
   4.208 -
   4.209 -{.}.cxx{release\}.obj::
   4.210 -	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
   4.211 -	$<
   4.212 -<<
   4.213 -
   4.214 -{.}.c{release\}.obj::
   4.215 -	$(CC) -c $(CFLAGS) $(INCPATH) -Forelease\ @<<
   4.216 -	$<
   4.217 -<<
   4.218 -
   4.219 -####### Build rules
   4.220 -
   4.221 -first: all
   4.222 -all: Makefile.Release $(TARGET)
   4.223 -
   4.224 -$(TARGET):  $(OBJECTS) 
   4.225 -	$(LINK) $(LFLAGS) /OUT:"$(TARGET)" @<< 
   4.226 -	  $(OBJECTS) $(LIBS)
   4.227 -<<
   4.228 -
   4.229 -
   4.230 -qmake:  FORCE
   4.231 -	@$(QMAKE) -win32 -o Makefile.Release prophet.pro
   4.232 -
   4.233 -dist:
   4.234 -	$(ZIP) prophet.zip $(SOURCES) $(DIST) prophet.pro C:/Qt/4.0.1/mkspecs/qconfig.pri ..\..\Qt\4.0.1\mkspecs\features\qt_config.prf ..\..\Qt\4.0.1\mkspecs\features\exclusive_builds.prf ..\..\Qt\4.0.1\mkspecs\features\default_pre.prf ..\..\Qt\4.0.1\mkspecs\features\win32\default_pre.prf ..\..\Qt\4.0.1\mkspecs\features\release.prf ..\..\Qt\4.0.1\mkspecs\features\debug_and_release.prf ..\..\Qt\4.0.1\mkspecs\features\default_post.prf ..\..\Qt\4.0.1\mkspecs\features\build_pass.prf ..\..\Qt\4.0.1\mkspecs\features\Release.prf ..\..\Qt\4.0.1\mkspecs\features\qt.prf ..\..\Qt\4.0.1\mkspecs\features\win32\thread.prf ..\..\Qt\4.0.1\mkspecs\features\moc.prf ..\..\Qt\4.0.1\mkspecs\features\win32\rtti.prf ..\..\Qt\4.0.1\mkspecs\features\win32\exceptions.prf ..\..\Qt\4.0.1\mkspecs\features\win32\stl.prf ..\..\Qt\4.0.1\mkspecs\features\shared.prf C:/Qt/4.0.1/mkspecs/win32-msvc/features/incremental.prf ..\..\Qt\4.0.1\mkspecs\features\warn_on.prf ..\..\Qt\4.0.1\mkspecs\features\win32\windows.prf ..\..\Qt\4.0.1\mkspecs\features\resources.prf ..\..\Qt\4.0.1\mkspecs\features\uic.prf C:\Qt\4.0.1\lib\qtmain.prl  HEADERS RESOURCES IMAGES SOURCES FORMS 
   4.235 -
   4.236 -clean: compiler_clean
   4.237 -	-$(DEL_FILE) release\main.obj
   4.238 -	-$(DEL_FILE) release\bundle.obj
   4.239 -	-$(DEL_FILE) release\msgWidget.obj
   4.240 -	-$(DEL_FILE) release\bundleManager.obj
   4.241 -	-$(DEL_FILE) release\debugWidget.obj
   4.242 -	-$(DEL_FILE) release\node.obj
   4.243 -	-$(DEL_FILE) release\nodeManager.obj
   4.244 -	-$(DEL_FILE) release\connection.obj
   4.245 -	-$(DEL_FILE) release\hello.obj
   4.246 -	-$(DEL_FILE) release\tlv.obj
   4.247 -	-$(DEL_FILE) release\dataPacket.obj
   4.248 -	-$(DEL_FILE) release\messageFile.obj
   4.249 -	-$(DEL_FILE) release\neighbourAwareness.obj
   4.250 -	-$(DEL_FILE) release\readFile.obj
   4.251 -	-$(DEL_FILE) release\DTNInterface.obj
   4.252 -	-$(DEL_FILE) release\tcpClient.obj
   4.253 -	-$(DEL_FILE) release\moc_neighbourAwareness.obj
   4.254 -	-$(DEL_FILE) release\moc_bundle.obj
   4.255 -	-$(DEL_FILE) release\moc_msgWidget.obj
   4.256 -	-$(DEL_FILE) release\moc_bundleManager.obj
   4.257 -	-$(DEL_FILE) release\moc_debugWidget.obj
   4.258 -	-$(DEL_FILE) release\moc_node.obj
   4.259 -	-$(DEL_FILE) release\moc_nodeManager.obj
   4.260 -	-$(DEL_FILE) release\moc_connection.obj
   4.261 -	-$(DEL_FILE) release\moc_tlv.obj
   4.262 -	-$(DEL_FILE) release\moc_messageFile.obj
   4.263 -	-$(DEL_FILE) release\moc_hello.obj
   4.264 -	-$(DEL_FILE) release\moc_dataPacket.obj
   4.265 -	-$(DEL_FILE) release\moc_readFile.obj
   4.266 -	-$(DEL_FILE) release\moc_DTNInterface.obj
   4.267 -	-$(DEL_FILE) release\moc_tcpClient.obj
   4.268 -
   4.269 -distclean: clean
   4.270 -	-$(DEL_FILE) "$(TARGET)"
   4.271 -	-$(DEL_FILE) Makefile.Release
   4.272 -
   4.273 -mocclean: compiler_moc_header_clean compiler_moc_source_clean
   4.274 -
   4.275 -mocables: compiler_moc_header_make_all compiler_moc_source_make_all
   4.276 -
   4.277 -compiler_moc_header_make_all: release\moc_neighbourAwareness.cpp release\moc_bundle.cpp release\moc_msgWidget.cpp release\moc_bundleManager.cpp release\moc_debugWidget.cpp release\moc_node.cpp release\moc_nodeManager.cpp release\moc_connection.cpp release\moc_tlv.cpp release\moc_messageFile.cpp release\moc_hello.cpp release\moc_dataPacket.cpp release\moc_readFile.cpp release\moc_DTNInterface.cpp release\moc_tcpClient.cpp
   4.278 -compiler_moc_header_clean:
   4.279 -	-$(DEL_FILE) release\moc_neighbourAwareness.cpp
   4.280 -	-$(DEL_FILE) release\moc_bundle.cpp
   4.281 -	-$(DEL_FILE) release\moc_msgWidget.cpp
   4.282 -	-$(DEL_FILE) release\moc_bundleManager.cpp
   4.283 -	-$(DEL_FILE) release\moc_debugWidget.cpp
   4.284 -	-$(DEL_FILE) release\moc_node.cpp
   4.285 -	-$(DEL_FILE) release\moc_nodeManager.cpp
   4.286 -	-$(DEL_FILE) release\moc_connection.cpp
   4.287 -	-$(DEL_FILE) release\moc_tlv.cpp
   4.288 -	-$(DEL_FILE) release\moc_messageFile.cpp
   4.289 -	-$(DEL_FILE) release\moc_hello.cpp
   4.290 -	-$(DEL_FILE) release\moc_dataPacket.cpp
   4.291 -	-$(DEL_FILE) release\moc_readFile.cpp
   4.292 -	-$(DEL_FILE) release\moc_DTNInterface.cpp
   4.293 -	-$(DEL_FILE) release\moc_tcpClient.cpp
   4.294 -release\moc_neighbourAwareness.cpp: connection.h \
   4.295 -		hello.h \
   4.296 -		tlv.h \
   4.297 -		node.h \
   4.298 -		bundle.h \
   4.299 -		nodeManager.h \
   4.300 -		bundleManager.h \
   4.301 -		messageFile.h \
   4.302 -		dataPacket.h \
   4.303 -		neighbourAwareness.h \
   4.304 -		readFile.h \
   4.305 -		neighbourAwareness.h
   4.306 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 neighbourAwareness.h -o release\moc_neighbourAwareness.cpp
   4.307 -
   4.308 -release\moc_bundle.cpp: bundle.h
   4.309 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 bundle.h -o release\moc_bundle.cpp
   4.310 -
   4.311 -release\moc_msgWidget.cpp: bundle.h \
   4.312 -		nodeManager.h \
   4.313 -		node.h \
   4.314 -		msgWidget.h
   4.315 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 msgWidget.h -o release\moc_msgWidget.cpp
   4.316 -
   4.317 -release\moc_bundleManager.cpp: bundle.h \
   4.318 -		node.h \
   4.319 -		nodeManager.h \
   4.320 -		messageFile.h \
   4.321 -		bundleManager.h
   4.322 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 bundleManager.h -o release\moc_bundleManager.cpp
   4.323 -
   4.324 -release\moc_debugWidget.cpp: bundle.h \
   4.325 -		node.h \
   4.326 -		msgWidget.h \
   4.327 -		nodeManager.h \
   4.328 -		neighbourAwareness.h \
   4.329 -		connection.h \
   4.330 -		hello.h \
   4.331 -		tlv.h \
   4.332 -		bundleManager.h \
   4.333 -		messageFile.h \
   4.334 -		dataPacket.h \
   4.335 -		readFile.h \
   4.336 -		debugWidget.h
   4.337 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 debugWidget.h -o release\moc_debugWidget.cpp
   4.338 -
   4.339 -release\moc_node.cpp: node.h
   4.340 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 node.h -o release\moc_node.cpp
   4.341 -
   4.342 -release\moc_nodeManager.cpp: node.h \
   4.343 -		nodeManager.h
   4.344 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 nodeManager.h -o release\moc_nodeManager.cpp
   4.345 -
   4.346 -release\moc_connection.cpp: hello.h \
   4.347 -		tlv.h \
   4.348 -		node.h \
   4.349 -		bundle.h \
   4.350 -		nodeManager.h \
   4.351 -		bundleManager.h \
   4.352 -		messageFile.h \
   4.353 -		dataPacket.h \
   4.354 -		connection.h
   4.355 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 connection.h -o release\moc_connection.cpp
   4.356 -
   4.357 -release\moc_tlv.cpp: hello.h \
   4.358 -		node.h \
   4.359 -		bundle.h \
   4.360 -		tlv.h
   4.361 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 tlv.h -o release\moc_tlv.cpp
   4.362 -
   4.363 -release\moc_messageFile.cpp: messageFile.h
   4.364 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 messageFile.h -o release\moc_messageFile.cpp
   4.365 -
   4.366 -release\moc_hello.cpp: hello.h
   4.367 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 hello.h -o release\moc_hello.cpp
   4.368 -
   4.369 -release\moc_dataPacket.cpp: dataPacket.h
   4.370 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 dataPacket.h -o release\moc_dataPacket.cpp
   4.371 -
   4.372 -release\moc_readFile.cpp: readFile.h
   4.373 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 readFile.h -o release\moc_readFile.cpp
   4.374 -
   4.375 -release\moc_DTNInterface.cpp: connection.h \
   4.376 -		hello.h \
   4.377 -		tlv.h \
   4.378 -		node.h \
   4.379 -		bundle.h \
   4.380 -		nodeManager.h \
   4.381 -		bundleManager.h \
   4.382 -		messageFile.h \
   4.383 -		dataPacket.h \
   4.384 -		neighbourAwareness.h \
   4.385 -		readFile.h \
   4.386 -		tcpClient.h \
   4.387 -		DTNInterface.h
   4.388 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 DTNInterface.h -o release\moc_DTNInterface.cpp
   4.389 -
   4.390 -release\moc_tcpClient.cpp: tcpClient.h
   4.391 -	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 tcpClient.h -o release\moc_tcpClient.cpp
   4.392 -
   4.393 -compiler_rcc_make_all:
   4.394 -compiler_rcc_clean:
   4.395 -compiler_image_collection_make_all:
   4.396 -compiler_image_collection_clean:
   4.397 -	-$(DEL_FILE) qmake_image_collection.cpp
   4.398 -compiler_moc_source_make_all:
   4.399 -compiler_moc_source_clean:
   4.400 -compiler_uic_make_all:
   4.401 -compiler_uic_clean:
   4.402 -compiler_clean: compiler_moc_header_clean compiler_rcc_clean compiler_image_collection_clean compiler_moc_source_clean compiler_uic_clean 
   4.403 -
   4.404 -
   4.405 -
   4.406 -####### Compile
   4.407 -
   4.408 -release\main.obj: main.cpp neighbourAwareness.h \
   4.409 -		connection.h \
   4.410 -		hello.h \
   4.411 -		tlv.h \
   4.412 -		node.h \
   4.413 -		bundle.h \
   4.414 -		nodeManager.h \
   4.415 -		bundleManager.h \
   4.416 -		messageFile.h \
   4.417 -		dataPacket.h \
   4.418 -		readFile.h \
   4.419 -		DTNInterface.h \
   4.420 -		tcpClient.h \
   4.421 -		debugWidget.h \
   4.422 -		msgWidget.h \
   4.423 -		
   4.424 -
   4.425 -release\bundle.obj: bundle.cpp bundle.h \
   4.426 -		
   4.427 -
   4.428 -release\msgWidget.obj: msgWidget.cpp msgWidget.h \
   4.429 -		bundle.h \
   4.430 -		nodeManager.h \
   4.431 -		node.h \
   4.432 -		readFile.h \
   4.433 -		
   4.434 -
   4.435 -release\bundleManager.obj: bundleManager.cpp bundleManager.h \
   4.436 -		bundle.h \
   4.437 -		node.h \
   4.438 -		nodeManager.h \
   4.439 -		messageFile.h \
   4.440 -		readFile.h \
   4.441 -		
   4.442 -
   4.443 -release\debugWidget.obj: debugWidget.cpp debugWidget.h \
   4.444 -		bundle.h \
   4.445 -		node.h \
   4.446 -		msgWidget.h \
   4.447 -		nodeManager.h \
   4.448 -		neighbourAwareness.h \
   4.449 -		connection.h \
   4.450 -		hello.h \
   4.451 -		tlv.h \
   4.452 -		bundleManager.h \
   4.453 -		messageFile.h \
   4.454 -		dataPacket.h \
   4.455 -		readFile.h \
   4.456 -		
   4.457 -
   4.458 -release\node.obj: node.cpp node.h \
   4.459 -		
   4.460 -
   4.461 -release\nodeManager.obj: nodeManager.cpp nodeManager.h \
   4.462 -		node.h \
   4.463 -		readFile.h \
   4.464 -		
   4.465 -
   4.466 -release\connection.obj: connection.cpp connection.h \
   4.467 -		hello.h \
   4.468 -		tlv.h \
   4.469 -		node.h \
   4.470 -		bundle.h \
   4.471 -		nodeManager.h \
   4.472 -		bundleManager.h \
   4.473 -		messageFile.h \
   4.474 -		dataPacket.h \
   4.475 -		readFile.h \
   4.476 -		
   4.477 -
   4.478 -release\hello.obj: hello.cpp hello.h \
   4.479 -		
   4.480 -
   4.481 -release\tlv.obj: tlv.cpp tlv.h \
   4.482 -		hello.h \
   4.483 -		node.h \
   4.484 -		bundle.h \
   4.485 -		messageFile.h \
   4.486 -		readFile.h \
   4.487 -		
   4.488 -
   4.489 -release\dataPacket.obj: dataPacket.cpp dataPacket.h \
   4.490 -		
   4.491 -
   4.492 -release\messageFile.obj: messageFile.cpp messageFile.h \
   4.493 -		readFile.h \
   4.494 -		
   4.495 -
   4.496 -release\neighbourAwareness.obj: neighbourAwareness.cpp connection.h \
   4.497 -		hello.h \
   4.498 -		tlv.h \
   4.499 -		node.h \
   4.500 -		bundle.h \
   4.501 -		nodeManager.h \
   4.502 -		bundleManager.h \
   4.503 -		messageFile.h \
   4.504 -		dataPacket.h \
   4.505 -		neighbourAwareness.h \
   4.506 -		readFile.h \
   4.507 -		main.h \
   4.508 -		
   4.509 -
   4.510 -release\readFile.obj: readFile.cpp readFile.h \
   4.511 -		
   4.512 -
   4.513 -release\DTNInterface.obj: DTNInterface.cpp readFile.h \
   4.514 -		bundleManager.h \
   4.515 -		bundle.h \
   4.516 -		node.h \
   4.517 -		nodeManager.h \
   4.518 -		messageFile.h \
   4.519 -		DTNInterface.h \
   4.520 -		connection.h \
   4.521 -		hello.h \
   4.522 -		tlv.h \
   4.523 -		dataPacket.h \
   4.524 -		neighbourAwareness.h \
   4.525 -		tcpClient.h \
   4.526 -		
   4.527 -
   4.528 -release\tcpClient.obj: tcpClient.cpp tcpClient.h \
   4.529 -		
   4.530 -
   4.531 -release\moc_neighbourAwareness.obj: release\moc_neighbourAwareness.cpp 
   4.532 -
   4.533 -release\moc_bundle.obj: release\moc_bundle.cpp 
   4.534 -
   4.535 -release\moc_msgWidget.obj: release\moc_msgWidget.cpp 
   4.536 -
   4.537 -release\moc_bundleManager.obj: release\moc_bundleManager.cpp 
   4.538 -
   4.539 -release\moc_debugWidget.obj: release\moc_debugWidget.cpp 
   4.540 -
   4.541 -release\moc_node.obj: release\moc_node.cpp 
   4.542 -
   4.543 -release\moc_nodeManager.obj: release\moc_nodeManager.cpp 
   4.544 -
   4.545 -release\moc_connection.obj: release\moc_connection.cpp 
   4.546 -
   4.547 -release\moc_tlv.obj: release\moc_tlv.cpp 
   4.548 -
   4.549 -release\moc_messageFile.obj: release\moc_messageFile.cpp 
   4.550 -
   4.551 -release\moc_hello.obj: release\moc_hello.cpp 
   4.552 -
   4.553 -release\moc_dataPacket.obj: release\moc_dataPacket.cpp 
   4.554 -
   4.555 -release\moc_readFile.obj: release\moc_readFile.cpp 
   4.556 -
   4.557 -release\moc_DTNInterface.obj: release\moc_DTNInterface.cpp 
   4.558 -
   4.559 -release\moc_tcpClient.obj: release\moc_tcpClient.cpp 
   4.560 -
   4.561 -####### Install
   4.562 -
   4.563 -install:   FORCE
   4.564 -
   4.565 -uninstall:   FORCE
   4.566 -
   4.567 -FORCE:
   4.568 -
     5.1 Binary file Win32/binaries/QtCore4.dll has changed
     6.1 Binary file Win32/binaries/QtGui4.dll has changed
     7.1 Binary file Win32/binaries/QtNetwork4.dll has changed
     8.1 Binary file Win32/binaries/prophet.exe has changed
     9.1 --- a/Win32/binaries/prophet.ini	Wed Jan 03 09:17:10 2007 +0000
     9.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     9.3 @@ -1,30 +0,0 @@
     9.4 -NODEID=44
     9.5 -NODENAME=samonote.dtn
     9.6 -NODEIP=192.168.10.44
     9.7 -NODEIP2=192.168.0.3
     9.8 -NODEBROADCAST=255.255.255.255
     9.9 -BROADCAST=1000
    9.10 -AGINGTIMER=60000
    9.11 -PENCOUNTER=0.75
    9.12 -BETA=0.25
    9.13 -GAMMA=0.9989
    9.14 -HELLO=10000
    9.15 -ALIVE=60
    9.16 -HELLOTIMER=60000
    9.17 -INITIATORTIMER=60000
    9.18 -LISTENERTIMER=60000
    9.19 -DTNHOSTNAME=193.77.152.156
    9.20 -DTNHOSTPORT=5050
    9.21 -DNTTIMER=5000
    9.22 -STORAGESIZE=10000000
    9.23 -ROUTING=1
    9.24 -QUEUE=0
    9.25 -CONTINIUSUPDATE=1
    9.26 -STORAGEPATH=c:\Samo\PRoPHET\exe\list\
    9.27 -LOGPATH=c:\Samo\PRoPHET\exe\log\
    9.28 -MSGPATH=c:\Samo\PRoPHET\exe\storage\
    9.29 -AGEFILENODES=1
    9.30 -USEFILENODES=1
    9.31 -WRITETOFILETIMER=10000
    9.32 -USEFILEBUNDLES=1
    9.33 -LOGING=1
    10.1 --- a/Win32/bundle.cpp	Wed Jan 03 09:17:10 2007 +0000
    10.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.3 @@ -1,106 +0,0 @@
    10.4 -#include <QtCore>
    10.5 -#include <bundle.h>
    10.6 -
    10.7 -
    10.8 -Bundle::Bundle(QObject *parent)
    10.9 -{
   10.10 -			id=0;
   10.11 -			sourceId=0;
   10.12 -			destinationId=0;
   10.13 -			data.clear();
   10.14 -			options=0;
   10.15 -			sourceString.clear();
   10.16 -			destinationString.clear();
   10.17 -			dataLength=0;
   10.18 -}
   10.19 -
   10.20 -
   10.21 -Bundle& Bundle::operator=(const Bundle& other)
   10.22 -{
   10.23 - id = other.id;
   10.24 - sourceId = other.sourceId;
   10.25 - destinationId = other.destinationId;
   10.26 - data = other.data;
   10.27 - timeStamp = other.timeStamp;
   10.28 - options = other.options;
   10.29 - sourceString = other.sourceString;
   10.30 - destinationString = other.destinationString;
   10.31 - dataLength = other.dataLength;
   10.32 - return *this;
   10.33 -}
   10.34 -
   10.35 -Bundle::Bundle(const Bundle& other)
   10.36 -{
   10.37 - id = other.id;
   10.38 - sourceId = other.sourceId;
   10.39 - destinationId = other.destinationId;
   10.40 - data = other.data;
   10.41 - timeStamp = other.timeStamp;
   10.42 - options = other.options;
   10.43 - sourceString = other.sourceString;
   10.44 - destinationString = other.destinationString;
   10.45 - dataLength = other.dataLength;
   10.46 -}	
   10.47 -	
   10.48 -void Bundle::setContent(int seq,int s,int d,QByteArray m,int opt,QByteArray src,QByteArray dst)
   10.49 -{
   10.50 -	timeStamp=timeStamp.currentDateTime();
   10.51 -	id=(seq%100)+(rand()%1000)*1000;
   10.52 -	
   10.53 -	//	id=s+(d*100)+(timeStamp.second()*10000)+(timeStamp.minute()*1000000);//+(timeStamp.minute()*100000000);
   10.54 -//	id=(rand()%10000)+(rand()*10000);
   10.55 -	sourceId=s;
   10.56 -	destinationId=d;
   10.57 -	data=m; 
   10.58 -	options=opt;
   10.59 -	sourceString = src;
   10.60 -	destinationString = dst;
   10.61 -
   10.62 -
   10.63 -}
   10.64 -void Bundle::setContent(int seq,int s,int d,QByteArray m,int opt)
   10.65 -{
   10.66 -	timeStamp=timeStamp.currentDateTime();
   10.67 -//	id=s+(d*100)+(timeStamp.second()*10000)+(timeStamp.minute()*1000000);//+(timeStamp.minute()*100000000);
   10.68 -//	id=(rand()%10000)+(rand()*10000);
   10.69 -//	id=d+(s*1000)+((seq%100)*100000000);
   10.70 -	id=(rand()%10000);
   10.71 -	sourceId=s;
   10.72 -	destinationId=d;
   10.73 -	data=m;
   10.74 -	sourceString.clear();
   10.75 -	destinationString.clear();
   10.76 -
   10.77 -	options=opt;
   10.78 -}
   10.79 -
   10.80 -int Bundle::getId()
   10.81 -{
   10.82 -	return id;
   10.83 -}
   10.84 -
   10.85 -int Bundle::getSourceId()
   10.86 -{
   10.87 -	return sourceId;
   10.88 -}
   10.89 -
   10.90 -int Bundle::getDestinationId()
   10.91 -{
   10.92 -	return destinationId;
   10.93 -}
   10.94 -
   10.95 -QByteArray Bundle::getData()
   10.96 -{
   10.97 -	return data;
   10.98 -}
   10.99 -
  10.100 -QDateTime Bundle::getTime()
  10.101 -{
  10.102 -	return timeStamp;
  10.103 -}
  10.104 -
  10.105 -
  10.106 -int Bundle::getOptions()
  10.107 -{
  10.108 -	return options;
  10.109 -}
  10.110 \ No newline at end of file
    11.1 --- a/Win32/bundle.h	Wed Jan 03 09:17:10 2007 +0000
    11.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    11.3 @@ -1,37 +0,0 @@
    11.4 -#ifndef BUNDLE_H
    11.5 -#define BUNDLE_H
    11.6 -
    11.7 -#include <QtCore>
    11.8 -
    11.9 -class Bundle : public QObject
   11.10 -{
   11.11 -
   11.12 -Q_OBJECT 
   11.13 -	public:
   11.14 -	int id;
   11.15 -	int sourceId;
   11.16 -	int destinationId;
   11.17 -	QByteArray data;
   11.18 -	QByteArray sourceString;
   11.19 -	QByteArray destinationString;
   11.20 -	QDateTime timeStamp;
   11.21 -	int options;
   11.22 -	int dataLength;
   11.23 -
   11.24 -
   11.25 -	Bundle(QObject *parent = 0);
   11.26 -	Bundle(const Bundle& other);
   11.27 -	Bundle& operator=(const Bundle& other);
   11.28 -
   11.29 -	void setContent(int,int s,int d,QByteArray m,int opt,QByteArray src,QByteArray dst);
   11.30 -	void setContent(int,int,int,QByteArray,int);
   11.31 -	int getId(); 
   11.32 -	int getSourceId();
   11.33 -	int getDestinationId();
   11.34 -	QDateTime getTime();
   11.35 -	QByteArray getData();
   11.36 -	int getOptions();
   11.37 -	
   11.38 -};
   11.39 -
   11.40 -#endif
   11.41 \ No newline at end of file
    12.1 --- a/Win32/bundleManager.cpp	Wed Jan 03 09:17:10 2007 +0000
    12.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    12.3 @@ -1,423 +0,0 @@
    12.4 -#include <QtCore>
    12.5 -#include <bundleManager.h>
    12.6 -#include <bundle.h>
    12.7 -#include <readFile.h>
    12.8 -#include <nodeManager.h>
    12.9 -
   12.10 -//#define STORAGESIZE 2000
   12.11 -#define BUNDLEDESTUPDATE 1000
   12.12 -
   12.13 -BundleManager::BundleManager(int id)
   12.14 -{
   12.15 -	ourId=id;
   12.16 -	ReadFile conf;
   12.17 -	STORAGESIZE=conf.getStorageSize();
   12.18 -	fileOption=conf.getUseFileBundles();
   12.19 -	routing=conf.getRouting();
   12.20 -	int WRITETIMER =conf.getWriteToFileTimer();
   12.21 -	storagePath=conf.getStoragePath();
   12.22 -	dir.setPath(storagePath);
   12.23 -	QString msgDirPath=conf.getMsgPath();
   12.24 -	msgDir.setPath(msgDirPath);
   12.25 -	option=conf.getUseFileBundles();
   12.26 -	logOption=conf.getLogOption();
   12.27 -	if(fileOption==1)
   12.28 -	{
   12.29 -		readFromFile();
   12.30 -		writeToFileTimer = new QTimer();
   12.31 -		connect(writeToFileTimer, SIGNAL(timeout()), this, SLOT(saveToFile()));
   12.32 -		writeToFileTimer->start(WRITETIMER);
   12.33 -		emit sendDebugBundleList(bundleList);
   12.34 -	}
   12.35 -	timer = new QTimer();
   12.36 -	showFirstTime=0;
   12.37 -	timer->start(5000);
   12.38 -	connect(timer, SIGNAL(timeout()), this, SLOT(emitDebugList()));
   12.39 -	if(logOption==1)
   12.40 -	{
   12.41 -		log = new MessageFile;
   12.42 -		log->set("transfer.log", 1000000, 5);
   12.43 -	}
   12.44 -
   12.45 -}
   12.46 -
   12.47 -void BundleManager::emitDebugList()
   12.48 -{
   12.49 -	if(showFirstTime==0)
   12.50 -	{
   12.51 -		emit sendDebugBundleList(bundleList);
   12.52 -		showFirstTime=1;
   12.53 -	}
   12.54 -
   12.55 -}
   12.56 -void BundleManager::saveToFile()
   12.57 -{
   12.58 -	QFile file(dir.filePath("bundles.txt"));
   12.59 -	if(file.open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text))
   12.60 -	{
   12.61 -	    QDateTime realTime;
   12.62 -	    realTime=realTime.currentDateTime ();
   12.63 -	    QString time=realTime.toString("MM/dd/yyyy hh:mm:ss");
   12.64 -	    time.append("\n");
   12.65 -	    file.write(time.toAscii ());
   12.66 -	    for (ushort i = 0; i < bundleList.size(); ++i) 
   12.67 -	    {
   12.68 -		QString bundleString;
   12.69 -		bundleString.append(QString("%1").arg((int)bundleList.at(i).id));
   12.70 -		bundleString.append("\t");
   12.71 -		bundleString.append(QString("%1").arg((int)bundleList.at(i).sourceId));
   12.72 -		bundleString.append("\t");
   12.73 -		bundleString.append(QString("%1").arg((int)bundleList.at(i).destinationId));
   12.74 -		bundleString.append("\t");
   12.75 -		bundleString.append(bundleList.at(i).sourceString);
   12.76 -		bundleString.append("\t");
   12.77 -		bundleString.append(bundleList.at(i).destinationString);
   12.78 -		bundleString.append("\t");
   12.79 -		QDateTime Dtime = bundleList.at(i).timeStamp;
   12.80 -		QString time=Dtime.toString("MM/dd/yyyy hh:mm:ss");
   12.81 -		bundleString.append(time);
   12.82 -		bundleString.append("\t");
   12.83 -		bundleString.append(QString("%1").arg((int)bundleList.at(i).options));
   12.84 -		bundleString.append("\t");
   12.85 -		bundleString.append(QString("%1").arg((int)bundleList.at(i).dataLength));
   12.86 -		bundleString.append("\n");
   12.87 -		file.write(bundleString.toAscii ());
   12.88 -	    }
   12.89 -	    file.close();
   12.90 -	}
   12.91 -}
   12.92 -
   12.93 -void BundleManager::readFromFile()
   12.94 -{
   12.95 -	QFile file(dir.filePath("bundles.txt"));
   12.96 -	if (file.open(QIODevice::ReadOnly|QIODevice::Text))
   12.97 -	{
   12.98 -		QString firstLine;
   12.99 -		QString line;
  12.100 -		//First we read date and time
  12.101 -		firstLine=file.readLine();
  12.102 -		//Then we add nodes
  12.103 -		line=file.readLine();
  12.104 -		while(line.size()>0)
  12.105 -		{
  12.106 -			//Parsing node
  12.107 -			int pos;
  12.108 -			QString temp;
  12.109 -			Bundle newBundle;
  12.110 -			//Bundle ID
  12.111 -			pos=line.indexOf("\t",0);
  12.112 -			temp=line.mid(0,pos);
  12.113 -			newBundle.id=temp.toInt(0,10);
  12.114 -			line.remove(0,pos+1);
  12.115 -			//Bundle source ID
  12.116 -			pos=line.indexOf("\t",0);
  12.117 -			temp=line.mid(0,pos);
  12.118 -			newBundle.sourceId=temp.toInt(0,10);
  12.119 -			line.remove(0,pos+1);
  12.120 -			//Bundle destination ID
  12.121 -			pos=line.indexOf("\t",0);
  12.122 -			temp=line.mid(0,pos);
  12.123 -			newBundle.destinationId=temp.toInt(0,10);
  12.124 -			line.remove(0,pos+1);
  12.125 -			//Bundle source string
  12.126 -			pos=line.indexOf("\t",0);
  12.127 -			temp=line.mid(0,pos);
  12.128 -			newBundle.sourceString=temp.toAscii();
  12.129 -			line.remove(0,pos+1);
  12.130 -			//Bundle destination string
  12.131 -			pos=line.indexOf("\t",0);
  12.132 -			temp=line.mid(0,pos);
  12.133 -			newBundle.destinationString=temp.toAscii();
  12.134 -			line.remove(0,pos+1);
  12.135 -			//Bundle timestamp
  12.136 -			pos=line.indexOf("\t",0);
  12.137 -			temp=line.mid(0,pos);
  12.138 -			QDateTime time;
  12.139 -			time=time.fromString(temp,"MM/dd/yyyy hh:mm:ss");
  12.140 -			newBundle.timeStamp=time;
  12.141 -			line.remove(0,pos+1);
  12.142 -			//Bundle options
  12.143 -			pos=line.indexOf("\t",0);
  12.144 -			temp=line.mid(0,pos);
  12.145 -			newBundle.options=temp.toInt(0,10);
  12.146 -			line.remove(0,pos+1);
  12.147 -			//Bundle datalength
  12.148 -			pos=line.indexOf("\t",0);
  12.149 -			temp=line.mid(0,pos);
  12.150 -			newBundle.dataLength=temp.toInt(0,10);
  12.151 -			line.remove(0,pos+1);
  12.152 -			//Adding Node
  12.153 -			QString bundlefilename;
  12.154 -			bundlefilename=QString("%1").arg((int)newBundle.id);
  12.155 -			QFile bundleFile(dir.filePath(bundlefilename));
  12.156 -			if (bundleFile.open(QIODevice::ReadOnly))
  12.157 -			{
  12.158 -			    int size=bundleFile.size();
  12.159 -			    bundleFile.close();
  12.160 -				if(bundleFile.size()>0)
  12.161 -				{
  12.162 -					bundleList.append(newBundle);
  12.163 -				}
  12.164 -			}
  12.165 -
  12.166 -
  12.167 -			line=file.readLine();
  12.168 -		}
  12.169 -		file.close();
  12.170 -	}
  12.171 -}
  12.172 -
  12.173 -QList<Bundle> BundleManager::getBundleList()
  12.174 -{	
  12.175 -	return bundleList;
  12.176 -}
  12.177 -
  12.178 -int BundleManager::getStorageSize()
  12.179 -{	
  12.180 -	int size=0;
  12.181 -	for (ushort i = 0; i < bundleList.size(); ++i) 
  12.182 -	{
  12.183 -		size+=getBundleSize(bundleList.at(i));
  12.184 -	}
  12.185 -	return size;
  12.186 -}
  12.187 -
  12.188 -int BundleManager::getBundleSize(Bundle bundle)
  12.189 -{	
  12.190 -	int size=0;
  12.191 -	size+=sizeof(Bundle);
  12.192 -	size+=bundle.data.size();
  12.193 -	size+=bundle.destinationString.size();
  12.194 -	size+=bundle.sourceString.size();
  12.195 -	return size;
  12.196 -}
  12.197 -
  12.198 -QList<Bundle> BundleManager::getBundleOffer(QList<Node> ourList,QList<Node> encoutnerList,int encounterId)
  12.199 -{
  12.200 -	QList<Bundle> newBundleList;
  12.201 -//	return bundleList;
  12.202 -
  12.203 -	switch(routing)
  12.204 -	{
  12.205 -		case 0:	//EPIDEMIC ROUTING - I like it.. ;)	
  12.206 -				return bundleList; break;
  12.207 -		case 1: //PROPHET ROUTING: GRTR  P_(B,D)>P_(A,D) - A bit more advanced
  12.208 -		//We have to check for each bundle
  12.209 -			for (ushort i = 0; i < bundleList.size(); ++i) 
  12.210 -			{
  12.211 -				float ourProbability = -1.0;
  12.212 -				float encounterProbability = -1.0;
  12.213 -				int bundleDestination = bundleList.at(i).destinationId;
  12.214 -				//First we get our probability
  12.215 -				for (ushort n = 0; n < ourList.size(); ++n) 
  12.216 -				{
  12.217 -					int nodeId=ourList.at(n).nodeId;
  12.218 -					if(nodeId==bundleDestination)
  12.219 -						ourProbability = ourList.at(n).probability;
  12.220 -				}
  12.221 -				//Then we get encouter probability
  12.222 -				for (ushort n = 0; n < encoutnerList.size(); ++n) 
  12.223 -				{
  12.224 -					int nodeId=encoutnerList.at(n).nodeId;
  12.225 -					if(encoutnerList.at(n).nodeId==bundleDestination)
  12.226 -						encounterProbability = encoutnerList.at(n).probability;
  12.227 -				}
  12.228 -				if(((encounterProbability>ourProbability)||(bundleDestination==encounterId))&&(bundleDestination!=0))
  12.229 -				{		
  12.230 -					Bundle tempBundle;
  12.231 -					tempBundle=bundleList.at(i);
  12.232 -					newBundleList.append(tempBundle);
  12.233 -				}
  12.234 -			}
  12.235 -			return newBundleList;
  12.236 -			break;
  12.237 -	}
  12.238 -	return bundleList;
  12.239 -}
  12.240 -
  12.241 -void BundleManager::updateBundlesDestinations(NodeManager* nodeManager)
  12.242 -{
  12.243 -	for (ushort i = 0; i < bundleList.size(); ++i) 
  12.244 -	{
  12.245 -		Bundle tempBundle;
  12.246 -		if(bundleList.at(i).destinationId==0)
  12.247 -		{
  12.248 -			QString source;
  12.249 -			QString destination;
  12.250 -			QString temp;
  12.251 -			int pos;
  12.252 -			tempBundle=bundleList.at(i);
  12.253 -			temp=tempBundle.sourceString;
  12.254 -			pos=temp.indexOf("://",0);
  12.255 -			temp.remove(0,pos+3);
  12.256 -			pos=temp.indexOf("/",0);
  12.257 -			source=temp.mid(0,pos);
  12.258 -			temp=tempBundle.destinationString;
  12.259 -			pos=temp.indexOf("://",0);
  12.260 -			temp.remove(0,pos+3);
  12.261 -			pos=temp.indexOf("/",0);
  12.262 -			destination=temp.mid(0,pos);
  12.263 -			tempBundle.destinationId=nodeManager->getId(destination);
  12.264 -			tempBundle.sourceId=nodeManager->getId(source);
  12.265 -			bundleList.replace(i,tempBundle);
  12.266 -			emit sendDebugBundleList(bundleList);
  12.267 -		}
  12.268 -	} 
  12.269 -
  12.270 -}
  12.271 -
  12.272 -QList<Bundle> BundleManager::prepareBundels(QList<Bundle> receivedList)
  12.273 -{
  12.274 -
  12.275 -	
  12.276 -	QList<Bundle> newBundleList;
  12.277 -	//We have to find and add all the bundles with data to the list
  12.278 -	for (ushort i = 0; i < bundleList.size(); ++i) 
  12.279 -	{
  12.280 -		for (ushort j = 0; j < receivedList.size(); ++j) 
  12.281 -		{
  12.282 -			if(bundleList.at(i).id==receivedList.at(j).id)
  12.283 -				newBundleList.append(bundleList.at(i));
  12.284 -		}	
  12.285 -	}
  12.286 -	return newBundleList; 
  12.287 -}
  12.288 -
  12.289 -
  12.290 -QList<Bundle> BundleManager::prepareBundelRequest(QList<Bundle> receivedList)
  12.291 -{
  12.292 -	//We take only bundles that we don't have
  12.293 -	//Currently no memory restrictions!!!
  12.294 -	for (ushort i = 0; i < bundleList.size(); ++i) 
  12.295 -	{
  12.296 -		for (ushort j = 0; j < receivedList.size(); ++j) 
  12.297 -		{
  12.298 -			if((bundleList.at(i).id==receivedList.at(j).id))//||(bundleList.at(i).options==receivedList.at(j).id))
  12.299 -			{
  12.300 -				receivedList.removeAt(j);
  12.301 -				j=0;
  12.302 -			}
  12.303 -		}	
  12.304 -	}
  12.305 -
  12.306 -	return receivedList; //We have to add some memory restrictions
  12.307 -}
  12.308 -
  12.309 -
  12.310 -
  12.311 -void BundleManager::addBundleList(QList<Bundle> receivedList)
  12.312 -{
  12.313 -	for (ushort n = 0; n < receivedList.size(); ++n)
  12.314 -	{
  12.315 -		Bundle newBundle;
  12.316 -		newBundle=receivedList.at(n);
  12.317 -		addBundle(newBundle);
  12.318 -	}	
  12.319 -}
  12.320 -
  12.321 -void BundleManager::addBundle(Bundle newBundle)
  12.322 -{
  12.323 -	int isInTheList=0;
  12.324 - 	Bundle tempBundle=newBundle;
  12.325 -	//check that we don't have the same bundle
  12.326 -	for (ushort n = 0; n < bundleList.size(); ++n)
  12.327 -	{
  12.328 -		if(tempBundle.id==bundleList.at(n).id)
  12.329 -			isInTheList++;
  12.330 -	}	
  12.331 -	if(isInTheList==0)
  12.332 -	{
  12.333 -		if(logOption==1)
  12.334 -		{
  12.335 -		    QString logString;
  12.336 -		    logString.append("Bundle ID:");	
  12.337 -		    logString.append(QString("%1").arg((int)tempBundle.id));
  12.338 -		    logString.append(" SRC:");
  12.339 -		    logString.append(QString("%1").arg((int)tempBundle.sourceId));
  12.340 -		    logString.append(" ");
  12.341 -		    logString.append(tempBundle.sourceString);
  12.342 -		    logString.append(" DST:");
  12.343 -		    logString.append(QString("%1").arg((int)tempBundle.destinationId));
  12.344 -		    logString.append(" ");
  12.345 -		    logString.append(" Size:");
  12.346 -		    logString.append(QString("%1").arg((int)tempBundle.data.size()));
  12.347 -		    logString.append(tempBundle.destinationString);
  12.348 -		    log->addLog(0,logString);
  12.349 -		}
  12.350 -		if(tempBundle.destinationId==ourId)
  12.351 -		{
  12.352 -			if(tempBundle.options==5)
  12.353 -			{
  12.354 -				//We add a new msg
  12.355 -				QString filename;
  12.356 -				filename.append(tempBundle.timeStamp.toString("MM-dd_hh-mm"));
  12.357 -				filename.append("_ID_");
  12.358 -				filename.append(QString("%1").arg((int)tempBundle.id));
  12.359 -				filename.append("_FROM_");
  12.360 -				filename.append(tempBundle.sourceString);
  12.361 -				QFile file(msgDir.filePath(filename));
  12.362 -				if(file.open(QIODevice::WriteOnly|QIODevice::Truncate))
  12.363 -				{
  12.364 -					file.write(tempBundle.data);
  12.365 -					file.close();
  12.366 -				}
  12.367 -			}
  12.368 -			else
  12.369 -			{
  12.370 -			    QString logString;
  12.371 -			    logString.append("Adding bundle to DTN  ID:");	
  12.372 -			    logString.append(QString("%1").arg((int)tempBundle.id));
  12.373 -			    logString.append(" SRC:");
  12.374 -			    logString.append(QString("%1").arg((int)tempBundle.sourceId));
  12.375 -			    logString.append(" ");
  12.376 -			    logString.append(tempBundle.sourceString);
  12.377 -			    logString.append(" DST:");
  12.378 -			    logString.append(QString("%1").arg((int)tempBundle.destinationId));
  12.379 -			    logString.append(" ");
  12.380 -			    logString.append(tempBundle.destinationString);
  12.381 -			    logString.append(" Size:");
  12.382 -			    logString.append(QString("%1").arg((int)tempBundle.data.size()));
  12.383 -
  12.384 -			    log->addLog(0,logString);
  12.385 -			    emit sendDeliveredBundle(tempBundle);
  12.386 -			}	
  12.387 -		
  12.388 -		}
  12.389 -		//FIFO 
  12.390 -		//We prepare space
  12.391 -	/*	if(getBundleSize(tempBundle)<STORAGESIZE)
  12.392 -		{
  12.393 -			while(((getStorageSize()+getBundleSize(tempBundle))>STORAGESIZE)&&(bundleList.size()>0))
  12.394 -			{
  12.395 -				if(fileOption==1)
  12.396 -				{
  12.397 -					Bundle firstBundle;
  12.398 -					firstBundle=bundleList.first();
  12.399 -					QString filename;
  12.400 -					filename=QString("%1").arg((int)firstBundle.id);
  12.401 -					QFile file(dir.filePath(filename));
  12.402 -					file.remove();
  12.403 -			}
  12.404 -			bundleList.removeFirst();
  12.405 -		}*/
  12.406 -		//Adding recived bundle to storage
  12.407 -		if(fileOption==1)
  12.408 -		{
  12.409 -			QString filename;
  12.410 -			filename=QString("%1").arg((int)tempBundle.id);
  12.411 -			QFile file(dir.filePath(filename));
  12.412 -			if (file.open(QIODevice::WriteOnly |QIODevice::Truncate))
  12.413 -			{
  12.414 -				file.write(tempBundle.data);
  12.415 -				tempBundle.data.clear();
  12.416 -				file.close();
  12.417 -			}
  12.418 -		}
  12.419 -		bundleList.append(tempBundle);
  12.420 -
  12.421 -		
  12.422 -	//DEBUG
  12.423 -	emit sendDebugBundleList(bundleList);
  12.424 -	//emit sendStorage(getStorageSize());
  12.425 -	}
  12.426 -}
    13.1 --- a/Win32/bundleManager.h	Wed Jan 03 09:17:10 2007 +0000
    13.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    13.3 @@ -1,50 +0,0 @@
    13.4 -#ifndef BUNDLEMANAGER_H
    13.5 -#define BUNDLEMANAGER_H
    13.6 -#include <QtCore>
    13.7 -#include <bundle.h>
    13.8 -#include <node.h>
    13.9 -#include <nodeManager.h>
   13.10 -#include <messageFile.h>
   13.11 -
   13.12 -class BundleManager : public QObject
   13.13 -{
   13.14 -	Q_OBJECT
   13.15 -
   13.16 -
   13.17 -public:
   13.18 -	BundleManager(int);
   13.19 -	QTimer *timer;
   13.20 -	int routing;
   13.21 -	int fileOption;
   13.22 -	int STORAGESIZE;
   13.23 -	int ourId;
   13.24 -	int getStorageSize();
   13.25 -	int getBundleSize(Bundle);
   13.26 -	QTimer *writeToFileTimer;
   13.27 -	QList<Bundle> bundleList;
   13.28 -	QList<Bundle> getBundleList();
   13.29 -	QList<Bundle> getBundleOffer(QList<Node> ourList,QList<Node> encoutnerList,int encounterId);
   13.30 -	QList<Bundle> prepareBundelRequest(QList<Bundle>);
   13.31 -	QList<Bundle> prepareBundels(QList<Bundle>);
   13.32 -	QDir dir;
   13.33 -	QDir msgDir;
   13.34 -	QString storagePath;
   13.35 -	int option;
   13.36 -	int logOption;
   13.37 -	MessageFile *log;
   13.38 -	bool showFirstTime;
   13.39 -	signals:
   13.40 -	void sendDeliveredBundle(Bundle);
   13.41 -	void sendStorage(int);
   13.42 -	void sendDebugBundleList(QList<Bundle>);
   13.43 -public slots:
   13.44 -	void updateBundlesDestinations(NodeManager*);
   13.45 -	void addBundle(Bundle);
   13.46 -	void addBundleList(QList<Bundle>);
   13.47 -	void saveToFile();
   13.48 -	void readFromFile();
   13.49 -	void emitDebugList();
   13.50 -
   13.51 -
   13.52 -};
   13.53 -#endif
    14.1 --- a/Win32/connection.cpp	Wed Jan 03 09:17:10 2007 +0000
    14.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    14.3 @@ -1,624 +0,0 @@
    14.4 -#include <QtCore>
    14.5 -#include <connection.h>
    14.6 -#include <tlv.h>
    14.7 -#include <messageFile.h>
    14.8 -#include <dataPacket.h>
    14.9 -#include <readFile.h>
   14.10 -
   14.11 -#define NOW 100
   14.12 -
   14.13 -//#define HELLO_TIMER 60000
   14.14 -//#define INITIATOR_TIMER 60000
   14.15 -//#define LISTENER_TIMER 60000
   14.16 -//#define HELLOT 10000
   14.17 -//#define BROADCAST 1000
   14.18 -
   14.19 -//Connection states
   14.20 -#define WAIT_NB 0
   14.21 -#define HELLO 1
   14.22 -#define INFO_EXCH 2
   14.23 -#define WAIT_INFO 2
   14.24 -
   14.25 -
   14.26 -//Hello procedure states
   14.27 -#define SENDSYN 1
   14.28 -#define WAITSYNACK 2
   14.29 -#define WAITACK 4
   14.30 -#define ESTABLISHED 3
   14.31 -#define MASTER 4
   14.32 -#define SLAVE 5
   14.33 -
   14.34 -//Initiator states
   14.35 -#define SENDDICTIONARY 1
   14.36 -#define SENDRIB 2
   14.37 -#define SENDBOFFER 4
   14.38 -#define WAITBREQ 5
   14.39 -#define TIMEOUT 16
   14.40 -#define SENDBUNDLE 7
   14.41 -#define WAITFORBREQUEST 8
   14.42 -#define RESETLINK 19
   14.43 -#define IDLESTATE 110
   14.44 -
   14.45 -//Listener states
   14.46 -#define WAITFORDICTIONARY 1
   14.47 -#define WAITFORRIB 2
   14.48 -#define WAITFORBOFFER 3
   14.49 -#define SENDBREQUEST 4
   14.50 -#define WAITFORBUNDLES 5
   14.51 -
   14.52 -
   14.53 -
   14.54 -Connection::Connection(int connectId,int nodeId,QString nodeName,NodeManager* nodeManager,BundleManager* bundleManager,QObject *parent)
   14.55 -
   14.56 -{
   14.57 -	ReadFile init;
   14.58 -	HELLO_TIMER=init.getHelloTimer();
   14.59 -	INITIATOR_TIMER=init.getInitiatorTimer();
   14.60 -	LISTENER_TIMER=init.getListenerTimer();
   14.61 -	HELLOT=init.getHello();
   14.62 -	BROADCAST=init.getBroadcastTimer();
   14.63 -	continiusUpdate=init.getContiniusUpdate();
   14.64 -	update=0;
   14.65 -	
   14.66 -/*	QString logString;
   14.67 -	logString.append("I am created:");
   14.68 -	logString.append(QString("%1").arg((int)connectId));
   14.69 -	//log->addLog(0,logString);
   14.70 -*/	
   14.71 -	encounterNodeId=0;
   14.72 -	//State variables
   14.73 -	connectionState=HELLO;
   14.74 -	helloState=SENDSYN;
   14.75 -	initiatorState=IDLESTATE;
   14.76 -	listenerState=IDLESTATE;
   14.77 -	//Define our node manager
   14.78 -	connectionNodeManager=nodeManager;
   14.79 -	//Define our bundle manager
   14.80 -	connectionBundleManager=bundleManager;
   14.81 -	//Set up unique connection ID
   14.82 -//	connectionId=rand();
   14.83 -//	connectionId=connectionId%1000;
   14.84 -	connectionId=connectId;
   14.85 -	//Set up connectionNodeName
   14.86 -	connectionNodeName=nodeName;
   14.87 -	//Set up connectionNodeName
   14.88 -	connectionNodeId=nodeId;
   14.89 -	//Create and connect Hello Timer
   14.90 -    helloTimer = new QTimer(this);
   14.91 -    connect(helloTimer, SIGNAL(timeout()), this, SLOT(helloProcedure()));
   14.92 -    helloTimer->start(rand()%HELLO);
   14.93 -
   14.94 -	//Create and connect Initiator Timer
   14.95 -    initiatorTimer = new QTimer(this);
   14.96 -    connect(initiatorTimer, SIGNAL(timeout()), this, SLOT(initiatorProcedure()));
   14.97 -    //initiatorTimer->start(INITIATOR_TIMER);
   14.98 -
   14.99 -	//Create and connect Listener Timer
  14.100 -    listenerTimer = new QTimer(this);
  14.101 -    connect(listenerTimer, SIGNAL(timeout()), this, SLOT(listenerProcedure()));
  14.102 -    //listenerTimer->start(LISTENER_TIMER);
  14.103 -
  14.104 -
  14.105 -
  14.106 -
  14.107 -	//Create and connect TLV translator
  14.108 -	TLVTranslator = new TLV;
  14.109 -
  14.110 -	//Main external datastreams
  14.111 -	connect(TLVTranslator,SIGNAL(sendDatagram(QByteArray)),this,SLOT(forwardSlotDatagram(QByteArray)));
  14.112 -	connect(this,SIGNAL(forwardSignalDatagram(QByteArray)),TLVTranslator,SLOT(receiveDatagram(QByteArray)));
  14.113 -
  14.114 -	//Hello procedure connections
  14.115 -    connect(this, SIGNAL(sendHello(Hello)),TLVTranslator,SLOT(receiveHello(Hello)));
  14.116 -    connect(TLVTranslator, SIGNAL(sendHello(Hello)),this,SLOT(receiveHello(Hello)));
  14.117 -
  14.118 -	//Initiators procedure connections
  14.119 -    connect(this, SIGNAL(sendDictionary(QList<Node>)),TLVTranslator,SLOT(createDictionary(QList<Node>)));
  14.120 -    connect(this, SIGNAL(sendRIB(QList<Node>)),TLVTranslator,SLOT(createRIB(QList<Node>)));
  14.121 -    connect(this, SIGNAL(sendBundleOffer(QList<Bundle>)),TLVTranslator,SLOT(createBundleOffer(QList<Bundle>)));
  14.122 -    connect(TLVTranslator, SIGNAL(sendBundleRequest(QList<Bundle>)),this,SLOT(receiveBundleRequest(QList<Bundle>)));
  14.123 -	connect(this, SIGNAL(sendBundles(QList<Bundle>)),TLVTranslator,SLOT(createBundleData(QList<Bundle>)));
  14.124 -
  14.125 -
  14.126 -	//Listener procedure connections
  14.127 -    connect(TLVTranslator, SIGNAL(sendDictionary(QList<Node>)),this,SLOT(receiveDictionary(QList<Node>)));
  14.128 -    connect(TLVTranslator, SIGNAL(sendRIB(QList<Node>)),this,SLOT(receiveRIB(QList<Node>)));
  14.129 -    connect(TLVTranslator, SIGNAL(sendBundleOffer(QList<Bundle>)),this,SLOT(receiveBundleOffer(QList<Bundle>)));
  14.130 -    connect(this, SIGNAL(sendBundleRequest(QList<Bundle>)),TLVTranslator,SLOT(createBundleRequest(QList<Bundle>)));
  14.131 -    connect(TLVTranslator, SIGNAL(sendBundleData(QList<Bundle>)),this,SLOT(receiveBundles(QList<Bundle>)));
  14.132 -
  14.133 -
  14.134 -
  14.135 -
  14.136 -	//Fork Initiator and Listener
  14.137 -//	initiator = new Initiator;
  14.138 -//	listener	= new Listener;
  14.139 -	//connect them internally for development purpose only
  14.140 -
  14.141 -}
  14.142 -
  14.143 -
  14.144 -Connection::~Connection(void)
  14.145 -{
  14.146 -	if(helloTimer!=NULL)
  14.147 -	{
  14.148 -		helloTimer->stop();
  14.149 -		delete helloTimer;
  14.150 -	}
  14.151 -		if(initiatorTimer!=NULL)
  14.152 -	{
  14.153 -		initiatorTimer->stop();
  14.154 -		delete initiatorTimer;
  14.155 -	}
  14.156 -			if(listenerTimer!=NULL)
  14.157 -	{
  14.158 -		listenerTimer->stop();
  14.159 -		delete listenerTimer;
  14.160 -	}	
  14.161 -	if(TLVTranslator!=NULL)
  14.162 -	{
  14.163 -		delete TLVTranslator; 
  14.164 -	} 
  14.165 -
  14.166 -}
  14.167 -
  14.168 -
  14.169 -void Connection::helloProcedure()
  14.170 -{
  14.171 -	helloTimer->stop();
  14.172 -	//Prepare new Hello Object
  14.173 -	Hello newHello;
  14.174 -	switch(helloState)
  14.175 -	{
  14.176 -		case SENDSYN:	//log->addLog(connectionId,(QString)"Hello Procedure:SENDSYN");
  14.177 -						newHello.setFunction(SYN);
  14.178 -						newHello.setTimer(HELLO_TIMER);
  14.179 -						newHello.setSenderName(connectionNodeName);
  14.180 -						newHello.senderId=connectionNodeId;
  14.181 -						newHello.senderType=0;
  14.182 -						helloState=WAITSYNACK;
  14.183 -						emit sendHello(newHello);
  14.184 -			
  14.185 -		break;			
  14.186 -		default	:		//log->addLog(connectionId,(QString)"Hello Procedure:Default");
  14.187 -						helloState=SENDSYN;
  14.188 -						connectionState=HELLO;
  14.189 -						initiatorState=IDLESTATE;
  14.190 -						listenerState=IDLESTATE;
  14.191 -						listenerTimer->stop();
  14.192 -						initiatorTimer->stop();		
  14.193 -		break;
  14.194 -		}	
  14.195 -		helloTimer->start(HELLO_TIMER);
  14.196 -}
  14.197 -
  14.198 -
  14.199 -
  14.200 -void Connection::receiveHello(Hello receivedHello)
  14.201 -{
  14.202 -	int helloType=receivedHello.getFunction();
  14.203 -	helloTimer->stop();
  14.204 -	
  14.205 -	//Prepare new Hello object
  14.206 -	Hello newHello;
  14.207 -	
  14.208 -	switch(helloType)
  14.209 -	{
  14.210 -	case SYNACK:	//log->addLog(connectionId,(QString)"Receive Hello:SYNACK");
  14.211 -					//Resolving a ID form encountered node
  14.212 -					encounterNodeId=receivedHello.senderId;
  14.213 -					encounterNodeName=receivedHello.senderName;
  14.214 -					encounterNodeType=receivedHello.senderType;
  14.215 -					if(update==0)
  14.216 -					{
  14.217 -						connectionNodeManager->encounterNode(encounterNodeId,encounterNodeType,encounterNodeName);
  14.218 -						if(continiusUpdate==0)
  14.219 -							update=1;
  14.220 -					}
  14.221 -
  14.222 -					//Setting our own ID
  14.223 -					newHello.setFunction(ACK);
  14.224 -					newHello.setTimer(HELLO_TIMER);
  14.225 -					newHello.setSenderName(connectionNodeName);
  14.226 -					newHello.senderId=connectionNodeId;
  14.227 -					newHello.senderType=0;
  14.228 -					emit sendHello(newHello);
  14.229 -					helloState=SLAVE;
  14.230 -					//Invoke Initiator and Listener
  14.231 -					helloTimer->stop();
  14.232 -					initiatorState=SENDDICTIONARY;
  14.233 -					listenerState=WAITFORDICTIONARY;
  14.234 -					initiatorTimer->start(NOW);
  14.235 -					listenerTimer->start(LISTENER_TIMER);
  14.236 -					///initiatorProcedure();
  14.237 -					//////////////////////////////
  14.238 -					
  14.239 -	break;
  14.240 -	case SYN:		//log->addLog(connectionId,(QString)"Receive Hello:SYN");
  14.241 -					newHello.setFunction(SYNACK);
  14.242 -					newHello.setTimer(HELLO_TIMER);
  14.243 -					newHello.setSenderName(connectionNodeName);
  14.244 -					newHello.senderId=connectionNodeId;
  14.245 -					newHello.senderType=0;
  14.246 -					helloState=WAITACK;helloTimer->start(HELLO_TIMER);
  14.247 -					emit sendHello(newHello);
  14.248 -	break;
  14.249 -	case ACK:		//log->addLog(connectionId,(QString)"Receive Hello:ACK");
  14.250 -					//Resolving a ID form encountered node
  14.251 -					encounterNodeId=receivedHello.senderId;
  14.252 -					encounterNodeName=receivedHello.senderName;
  14.253 -					encounterNodeType=receivedHello.senderType;
  14.254 -					if(update==0)
  14.255 -					{
  14.256 -						connectionNodeManager->encounterNode(encounterNodeId,encounterNodeType,encounterNodeName);
  14.257 -						if(continiusUpdate==0)
  14.258 -							update=1;
  14.259 -					}
  14.260 -					helloState=MASTER;
  14.261 -					//Invoke Initiator and Listener
  14.262 -					helloTimer->stop();
  14.263 -					initiatorState=SENDDICTIONARY;
  14.264 -					listenerState=WAITFORDICTIONARY;
  14.265 -					initiatorTimer->start(NOW);
  14.266 -					listenerTimer->start(LISTENER_TIMER);
  14.267 -					//initiatorProcedure();
  14.268 -					/////////////////////////////////////
  14.269 -	break;
  14.270 -	case RSTACK:	//log->addLog(connectionId,(QString)"Receive Hello:RSTACK");
  14.271 -					helloState=SENDSYN;
  14.272 -					connectionState=HELLO;helloTimer->start(HELLO_TIMER);
  14.273 -	break;
  14.274 -	default:		//log->addLog(connectionId,(QString)"Receive Hello:Default");
  14.275 -					helloState=SENDSYN;
  14.276 -					connectionState=HELLO;helloTimer->start(HELLO_TIMER);
  14.277 -	break;
  14.278 -	}
  14.279 -	
  14.280 -
  14.281 -}
  14.282 -
  14.283 -void Connection::listenerProcedure()
  14.284 -{
  14.285 -	listenerTimer->stop();
  14.286 -	switch(initiatorState)
  14.287 -		{
  14.288 -		case WAITFORDICTIONARY://log->addLog(connectionId,(QString)"Listener:DICTIONARY timeout...");
  14.289 -							//we reset the link
  14.290 -							initiatorState=IDLESTATE;
  14.291 -							listenerState=IDLESTATE;
  14.292 -							connectionState=HELLO;
  14.293 -							helloState=SENDSYN;
  14.294 -							listenerTimer->stop();
  14.295 -							initiatorTimer->stop();
  14.296 -							helloTimer->start(HELLO_TIMER);
  14.297 -							
  14.298 -			
  14.299 -		break;			
  14.300 -		case WAITFORRIB:	//log->addLog(connectionId,(QString)"Listener:RIB timeout...");
  14.301 -							//we reset the link
  14.302 -							initiatorState=IDLESTATE;
  14.303 -							listenerState=IDLESTATE;
  14.304 -							connectionState=HELLO;
  14.305 -							helloState=SENDSYN;
  14.306 -							listenerTimer->stop();
  14.307 -							initiatorTimer->stop();
  14.308 -							helloTimer->start(HELLO_TIMER);
  14.309 -			
  14.310 -		break;
  14.311 -		case WAITFORBOFFER:	//log->addLog(connectionId,(QString)"Listener:BOFFER timeout...");
  14.312 -							//we reset the link
  14.313 -							initiatorState=IDLESTATE;
  14.314 -							listenerState=IDLESTATE;
  14.315 -							connectionState=HELLO;
  14.316 -							helloState=SENDSYN;
  14.317 -							listenerTimer->stop();
  14.318 -							initiatorTimer->stop();
  14.319 -							helloTimer->start(HELLO_TIMER);
  14.320 -			
  14.321 -		break;
  14.322 -		case WAITFORBREQUEST://log->addLog(connectionId,(QString)"Listener:BREQ Timeout...");
  14.323 -							//we reset the link
  14.324 -							initiatorState=IDLESTATE;
  14.325 -							listenerState=IDLESTATE;
  14.326 -							connectionState=HELLO;
  14.327 -							helloState=SENDSYN;
  14.328 -							listenerTimer->stop();
  14.329 -							initiatorTimer->stop();
  14.330 -							helloTimer->start(HELLO_TIMER);
  14.331 -			
  14.332 -		break;
  14.333 -		case WAITFORBUNDLES://log->addLog(connectionId,(QString)"Listener:BUNDLES Timeout...");
  14.334 -							//we reset the link
  14.335 -							initiatorState=IDLESTATE;
  14.336 -							listenerState=IDLESTATE;
  14.337 -							connectionState=HELLO;
  14.338 -							helloState=SENDSYN;
  14.339 -							listenerTimer->stop();
  14.340 -							initiatorTimer->stop();
  14.341 -							helloTimer->start(HELLO_TIMER);
  14.342 -							listenerState=RESETLINK;
  14.343 -			
  14.344 -		break;
  14.345 -		case IDLESTATE:		//log->addLog(connectionId,(QString)"Listener:Idle state...");
  14.346 -							//we reset the link
  14.347 -							initiatorState=IDLESTATE;
  14.348 -							listenerState=IDLESTATE;
  14.349 -							connectionState=HELLO;
  14.350 -							helloState=SENDSYN;
  14.351 -							listenerTimer->stop();
  14.352 -							initiatorTimer->stop();
  14.353 -							helloTimer->start(HELLO_TIMER);
  14.354 -														
  14.355 -							
  14.356 -		break;
  14.357 -		case RESETLINK:		//log->addLog(connectionId,(QString)"Listener:Link problem...");
  14.358 -							//we reset the link
  14.359 -							initiatorState=IDLESTATE;
  14.360 -							listenerState=IDLESTATE;
  14.361 -							connectionState=HELLO;
  14.362 -							helloState=SENDSYN;
  14.363 -							listenerTimer->stop();
  14.364 -							initiatorTimer->stop();
  14.365 -							helloTimer->start(HELLO_TIMER);
  14.366 -			
  14.367 -		break;
  14.368 -		default	://log->addLog(connectionId,(QString)"Hm Listener Timeout default...");		
  14.369 -		break;
  14.370 -		}	
  14.371 -}
  14.372 -
  14.373 -
  14.374 -void Connection::initiatorProcedure()
  14.375 -{
  14.376 -	initiatorTimer->stop();
  14.377 -	QList<Node> nodeList;
  14.378 -	QList<Bundle> bundleList;
  14.379 -	switch(initiatorState)
  14.380 -		{
  14.381 -		case SENDDICTIONARY://log->addLog(connectionId,(QString)"Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER");
  14.382 -							nodeList = connectionNodeManager->getNodeList();
  14.383 -							initiatorState=SENDRIB;
  14.384 -							emit sendDictionary(nodeList);
  14.385 -							nodeList = connectionNodeManager->getRIBNodeList();//We have to use only nodes with RIB
  14.386 -							initiatorState=SENDBOFFER;
  14.387 -							emit sendRIB(nodeList);
  14.388 -							bundleList = connectionBundleManager->getBundleOffer(connectionNodeManager->getNodeList(),lastReceivedRIB,encounterNodeId);
  14.389 -							emit sendBundleOffer(bundleList);
  14.390 -							initiatorState=WAITBREQ;
  14.391 -							initiatorTimer->start(INITIATOR_TIMER);
  14.392 -		
  14.393 -		break;
  14.394 -		case WAITFORBREQUEST://log->addLog(connectionId,(QString)"Initiator:BREQ Timeout");
  14.395 -							//we reset the link
  14.396 -							initiatorState=IDLESTATE;
  14.397 -							listenerState=IDLESTATE;
  14.398 -							connectionState=HELLO;
  14.399 -							helloState=SENDSYN;
  14.400 -							listenerTimer->stop();
  14.401 -							initiatorTimer->stop();
  14.402 -							helloTimer->start(HELLO_TIMER);
  14.403 -			
  14.404 -		break;
  14.405 -		case IDLESTATE:		//log->addLog(connectionId,(QString)"Initiator:Idle state...");
  14.406 -							//we reset the link
  14.407 -							initiatorState=IDLESTATE;
  14.408 -							listenerState=IDLESTATE;
  14.409 -							connectionState=HELLO;
  14.410 -							helloState=SENDSYN;
  14.411 -							listenerTimer->stop();
  14.412 -							initiatorTimer->stop();
  14.413 -							helloTimer->start(HELLO_TIMER);
  14.414 -
  14.415 -			
  14.416 -		break;
  14.417 -		case RESETLINK:		//log->addLog(connectionId,(QString)"Initiator:Link problem...");
  14.418 -							//we reset the link
  14.419 -							initiatorState=IDLESTATE;
  14.420 -							listenerState=IDLESTATE;
  14.421 -							connectionState=HELLO;
  14.422 -							helloState=SENDSYN;
  14.423 -							listenerTimer->stop();
  14.424 -							initiatorTimer->stop();
  14.425 -							helloTimer->start(HELLO_TIMER);
  14.426 -			
  14.427 -		break;
  14.428 -		default	://log->addLog(connectionId,(QString)"Hm default timeout initiator...");		
  14.429 -		break;
  14.430 -		}	
  14.431 - }
  14.432 -
  14.433 -
  14.434 -void Connection::receiveBundleOffer(QList<Bundle> receivedList) //LISTENER
  14.435 -{
  14.436 -	listenerTimer->stop();
  14.437 -	bundleRequestList=connectionBundleManager->prepareBundelRequest(receivedList);
  14.438 -	//log->addLog(connectionId,(QString)"Listener:Received Bundle Offer");
  14.439 -//	we send only one bundle request
  14.440 -	if(bundleRequestList.size()>0)
  14.441 -	{
  14.442 -		//log->addLog(connectionId,(QString)"Listener:Sending Full bundle request...");
  14.443 -		QList<Bundle> dummyList;
  14.444 -		dummyList.append(bundleRequestList.first());
  14.445 -		bundleRequestList.removeFirst();
  14.446 -		listenerState=WAITFORBUNDLES;
  14.447 -		listenerTimer->start(LISTENER_TIMER);
  14.448 -		emit sendBundleRequest(dummyList);
  14.449 -
  14.450 -	}
  14.451 -	else 
  14.452 -	{
  14.453 -		//log->addLog(connectionId,(QString)"Listener:Sending Empty bundle request...");
  14.454 -		if(initiatorState==IDLESTATE)
  14.455 -		{	
  14.456 -			//we reset the link
  14.457 -			initiatorState=IDLESTATE;
  14.458 -			listenerState=IDLESTATE;
  14.459 -			listenerTimer->stop();
  14.460 -			initiatorTimer->stop();
  14.461 -
  14.462 -			if(helloState==MASTER)
  14.463 -			{
  14.464 -				helloState=SENDSYN;
  14.465 -				helloTimer->start(NOW);
  14.466 -				//log->addLog(connectionId,(QString)"Listener(receiveBOffer):We can restart connection...(MASTER)");
  14.467 -
  14.468 -			}
  14.469 -			else
  14.470 -			{
  14.471 -				helloState=SENDSYN;
  14.472 -				helloTimer->start(HELLO_TIMER);
  14.473 -				//log->addLog(connectionId,(QString)"Listener(receiveBOffer):We can not restart connection(SLAVE)");
  14.474 -
  14.475 -			}
  14.476 -		}
  14.477 -		else
  14.478 -		{
  14.479 -			//log->addLog(connectionId,(QString)"Listener(receiveBOffer):But we can not restart connection...");
  14.480 -			listenerState=IDLESTATE;
  14.481 -			listenerTimer->stop();
  14.482 -		}
  14.483 -		emit sendBundleRequest(bundleRequestList);
  14.484 -		
  14.485 -	}
  14.486 -
  14.487 -}
  14.488 -
  14.489 -void Connection::receiveBundles(QList<Bundle> receivedList) //LISTENER
  14.490 -{
  14.491 -	//log->addLog(connectionId,(QString)"Listener:Received Bundles...");
  14.492 -	listenerTimer->stop();
  14.493 -	connectionBundleManager->addBundleList(receivedList);
  14.494 -//	we send only one bundle request
  14.495 -	if(bundleRequestList.size()>0)
  14.496 -
  14.497 -	{
  14.498 -		//log->addLog(connectionId,(QString)"Listener:Requesting Bundles...");
  14.499 -		QList<Bundle> dummyList;
  14.500 -		dummyList.append(bundleRequestList.first());
  14.501 -		bundleRequestList.removeFirst();
  14.502 -		listenerState=WAITFORBUNDLES;
  14.503 -		listenerTimer->start(LISTENER_TIMER);
  14.504 -		emit sendBundleRequest(dummyList);
  14.505 -
  14.506 -	}
  14.507 -	else //we finish comunication by sending empty bundle request
  14.508 -	{
  14.509 -		//log->addLog(connectionId,(QString)"Listener:No more needed Bundles...");
  14.510 -		if(initiatorState==IDLESTATE)
  14.511 -		{	
  14.512 -			//we reset the link
  14.513 -			initiatorState=IDLESTATE;
  14.514 -			listenerState=IDLESTATE;
  14.515 -			listenerTimer->stop();
  14.516 -			initiatorTimer->stop();
  14.517 -
  14.518 -			if(helloState==MASTER)
  14.519 -			{
  14.520 -				helloState=SENDSYN;
  14.521 -				helloTimer->start(HELLOT);
  14.522 -				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can restart connection...(MASTER)");
  14.523 -
  14.524 -			}
  14.525 -			else
  14.526 -			{
  14.527 -				//helloState=SENDSYN;
  14.528 -				//helloTimer->start(HELLO_TIMER);
  14.529 -				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can not restart connection(SLAVE)");
  14.530 -
  14.531 -			}
  14.532 -		}
  14.533 -		else
  14.534 -		{
  14.535 -			//log->addLog(connectionId,(QString)"Listener(receiveBundles):But we can not restart connection...");
  14.536 -			listenerState=IDLESTATE;
  14.537 -			listenerTimer->stop();
  14.538 -		
  14.539 -		}
  14.540 -		emit sendBundleRequest(bundleRequestList);
  14.541 -		
  14.542 -	}
  14.543 -		
  14.544 -}
  14.545 -
  14.546 -void Connection::receiveBundleRequest(QList<Bundle> receivedList) //INITIATOR
  14.547 -{
  14.548 -	initiatorTimer->stop();
  14.549 -	QList<Bundle> bundleList;
  14.550 -	if(receivedList.size()>0)
  14.551 -	{
  14.552 -		bundleList=connectionBundleManager->prepareBundels(receivedList);
  14.553 -		initiatorState=WAITBREQ;
  14.554 -		//log->addLog(connectionId,(QString)"Initiator:Sending bundles");
  14.555 -		initiatorTimer->start(INITIATOR_TIMER);
  14.556 -		emit sendBundles(bundleList);
  14.557 -	}
  14.558 -	else
  14.559 -	{
  14.560 -		//log->addLog(connectionId,(QString)"Initiator:No more requested bundles");
  14.561 -		if(listenerState==IDLESTATE)
  14.562 -		{	
  14.563 -			//we reset the link
  14.564 -			if(helloState==MASTER)
  14.565 -			{
  14.566 -				helloState=SENDSYN;
  14.567 -				helloTimer->start(HELLOT);
  14.568 -				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can restart connection...");
  14.569 -
  14.570 -			}
  14.571 -			else
  14.572 -			{
  14.573 -				helloState=SENDSYN;
  14.574 -				helloTimer->start(HELLO_TIMER);
  14.575 -				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can not restart connection(SLAVE)");
  14.576 -
  14.577 -			}
  14.578 -		}
  14.579 -		else
  14.580 -		{
  14.581 -			//log->addLog(connectionId,(QString)"Initiator:But we can not restart connection...");
  14.582 -			initiatorState=IDLESTATE;
  14.583 -			initiatorTimer->stop();
  14.584 -		}
  14.585 -	}
  14.586 -	
  14.587 -}
  14.588 -
  14.589 -
  14.590 -void Connection::receiveDictionary(QList<Node> receivedList)
  14.591 -{
  14.592 -	listenerTimer->stop();
  14.593 -	connectionNodeManager->addDictionary(connectionNodeId,receivedList);
  14.594 -	listenerState=WAITFORRIB;
  14.595 -	//log->addLog(connectionId,(QString)"Listener:Received dictionary");
  14.596 -	listenerTimer->start(LISTENER_TIMER);
  14.597 -
  14.598 -}
  14.599 -
  14.600 -void Connection::receiveRIB(QList<Node> receivedList)
  14.601 -{
  14.602 -	listenerTimer->stop();
  14.603 -	connectionNodeManager->addRIB(receivedList,encounterNodeId);
  14.604 -	listenerState=WAITFORBOFFER;
  14.605 -	//Needed for Routing
  14.606 -	lastReceivedRIB=receivedList;
  14.607 -	//log->addLog(connectionId,(QString)"Listener:Received RIB");
  14.608 -	listenerTimer->start(LISTENER_TIMER);
  14.609 -}
  14.610 -
  14.611 -
  14.612 -
  14.613 -void Connection::receiveDatagram(DataPacket dataPacket)
  14.614 -{
  14.615 -	////log->addLog(connectionId,(QString)"Received datagram...");
  14.616 -	emit forwardSignalDatagram(dataPacket.data);
  14.617 -}
  14.618 -
  14.619 -
  14.620 -void Connection::forwardSlotDatagram(QByteArray datagram)
  14.621 -{
  14.622 -	DataPacket dataPacket;
  14.623 -	////log->addLog(connectionId,(QString)"Sended datagram...");
  14.624 -	dataPacket.data = datagram;
  14.625 -	dataPacket.id = connectionId;
  14.626 -	emit sendDataPacket(dataPacket);
  14.627 -}
    15.1 --- a/Win32/connection.h	Wed Jan 03 09:17:10 2007 +0000
    15.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    15.3 @@ -1,72 +0,0 @@
    15.4 -#ifndef CONNECTION_H
    15.5 -#define CONNECTION_H
    15.6 -#include <QtCore>
    15.7 -#include <hello.h>
    15.8 -#include <tlv.h>
    15.9 -#include <nodeManager.h>
   15.10 -#include <bundleManager.h>
   15.11 -#include <dataPacket.h>
   15.12 -
   15.13 -
   15.14 -class Connection: public QObject
   15.15 -{
   15.16 -	Q_OBJECT 
   15.17 -	public:
   15.18 -		int HELLO_TIMER;
   15.19 -		int INITIATOR_TIMER;
   15.20 -		int LISTENER_TIMER;
   15.21 -		int HELLOT;
   15.22 -		int BROADCAST;
   15.23 -		bool update;
   15.24 -		int continiusUpdate;
   15.25 -
   15.26 -		int connectionState;
   15.27 -		int helloState;
   15.28 -		int initiatorState;
   15.29 -		int listenerState;
   15.30 -		int encounterNodeId;
   15.31 -		int encounterNodeType;
   15.32 -		QString encounterNodeName;
   15.33 -		QTimer *helloTimer; 		
   15.34 -		QTimer *initiatorTimer; 		
   15.35 -		QTimer *listenerTimer; 		
   15.36 -		//TLV
   15.37 -		TLV *TLVTranslator; 
   15.38 -		Connection(int,int ,QString ,NodeManager* ,BundleManager* ,QObject *parent = 0);
   15.39 -		~Connection(void);
   15.40 -		QString connectionNodeName;
   15.41 -		QList<Node> lastReceivedRIB;
   15.42 -		QList<Bundle> bundleRequestList;
   15.43 -		int connectionId;
   15.44 -		int connectionNodeId;
   15.45 -		NodeManager* connectionNodeManager;
   15.46 -		BundleManager* connectionBundleManager;
   15.47 -//		Listner *listener;
   15.48 -		
   15.49 -
   15.50 -	signals:
   15.51 -		void sendDataPacket(DataPacket);
   15.52 -		
   15.53 -		void sendHello(Hello);
   15.54 -		void sendDictionary(QList<Node>);
   15.55 -		void sendRIB(QList<Node>);
   15.56 -		void forwardSignalDatagram(QByteArray);
   15.57 -		void sendBundleOffer(QList<Bundle>);
   15.58 -		void sendBundleRequest(QList<Bundle>);
   15.59 -		void sendBundles(QList<Bundle>);
   15.60 -	public slots:
   15.61 -		void receiveDatagram(DataPacket);
   15.62 -		void forwardSlotDatagram(QByteArray);
   15.63 -		void helloProcedure();
   15.64 -		void listenerProcedure();
   15.65 -		void initiatorProcedure();
   15.66 -		void receiveHello(Hello);
   15.67 -		void receiveDictionary(QList<Node>);
   15.68 -		void receiveRIB(QList<Node>);
   15.69 -		void receiveBundleOffer(QList<Bundle>);
   15.70 -		void receiveBundleRequest(QList<Bundle>);
   15.71 -		void receiveBundles(QList<Bundle>);
   15.72 -
   15.73 -
   15.74 -};
   15.75 -#endif
   15.76 \ No newline at end of file
    16.1 --- a/Win32/connections.log	Wed Jan 03 09:17:10 2007 +0000
    16.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    16.3 @@ -1,438 +0,0 @@
    16.4 -08/11/2006 17:11:36.240  000>> New connection(C):192.168.10.104
    16.5 -08/11/2006 17:11:37.602  000>> Drop connection(C):192.168.10.44
    16.6 -08/11/2006 17:11:38.604  000>> Drop connection(C):192.168.10.44
    16.7 -08/11/2006 17:11:39.605  000>> Drop connection(C):192.168.10.44
    16.8 -08/11/2006 17:11:40.607  000>> Drop connection(C):192.168.10.44
    16.9 -08/11/2006 17:11:41.708  000>> Drop connection(C):192.168.10.44
   16.10 -08/11/2006 17:11:42.609  000>> Drop connection(C):192.168.10.44
   16.11 -08/11/2006 17:15:35.254  000>> New connection(C):192.168.10.104
   16.12 -08/11/2006 17:15:36.135  000>> Drop connection(C):192.168.10.44
   16.13 -08/11/2006 17:15:37.137  000>> Drop connection(C):192.168.10.44
   16.14 -08/11/2006 17:15:38.138  000>> Drop connection(C):192.168.10.44
   16.15 -08/11/2006 17:15:39.140  000>> Drop connection(C):192.168.10.44
   16.16 -08/11/2006 17:15:40.141  000>> Drop connection(C):192.168.10.44
   16.17 -08/11/2006 17:15:41.122  000>> Drop connection(C):192.168.10.44
   16.18 -08/11/2006 17:15:42.144  000>> Drop connection(C):192.168.10.44
   16.19 -08/11/2006 17:15:43.125  000>> Drop connection(C):192.168.10.44
   16.20 -08/11/2006 17:15:44.147  000>> Drop connection(C):192.168.10.44
   16.21 -08/11/2006 17:15:45.148  000>> Drop connection(C):192.168.10.44
   16.22 -08/11/2006 17:15:46.130  000>> Drop connection(C):192.168.10.44
   16.23 -08/11/2006 17:15:47.141  000>> Drop connection(C):192.168.10.44
   16.24 -08/11/2006 17:15:48.142  000>> Drop connection(C):192.168.10.44
   16.25 -08/11/2006 17:15:49.134  000>> Drop connection(C):192.168.10.44
   16.26 -08/11/2006 17:15:50.135  000>> Drop connection(C):192.168.10.44
   16.27 -08/11/2006 17:15:51.237  000>> Drop connection(C):192.168.10.44
   16.28 -08/11/2006 17:15:52.218  000>> Drop connection(C):192.168.10.44
   16.29 -08/11/2006 17:15:53.140  000>> Drop connection(C):192.168.10.44
   16.30 -08/11/2006 17:15:54.181  000>> Drop connection(C):192.168.10.44
   16.31 -08/11/2006 17:15:55.143  000>> Drop connection(C):192.168.10.44
   16.32 -08/11/2006 17:15:56.184  000>> Drop connection(C):192.168.10.44
   16.33 -08/11/2006 17:15:57.175  000>> Drop connection(C):192.168.10.44
   16.34 -08/11/2006 17:15:58.147  000>> Drop connection(C):192.168.10.44
   16.35 -08/11/2006 17:15:59.198  000>> Drop connection(C):192.168.10.44
   16.36 -08/11/2006 17:16:00.210  000>> Drop connection(C):192.168.10.44
   16.37 -08/11/2006 17:16:01.191  000>> Drop connection(C):192.168.10.44
   16.38 -08/11/2006 17:16:02.153  000>> Drop connection(C):192.168.10.44
   16.39 -08/11/2006 17:16:03.174  000>> Drop connection(C):192.168.10.44
   16.40 -08/11/2006 17:16:04.156  000>> Drop connection(C):192.168.10.44
   16.41 -08/11/2006 17:16:05.187  000>> Drop connection(C):192.168.10.44
   16.42 -08/11/2006 17:16:06.178  000>> Drop connection(C):192.168.10.44
   16.43 -08/11/2006 17:16:07.170  000>> Drop connection(C):192.168.10.44
   16.44 -08/11/2006 17:16:08.211  000>> Drop connection(C):192.168.10.44
   16.45 -08/11/2006 17:16:09.163  000>> Drop connection(C):192.168.10.44
   16.46 -08/11/2006 17:16:10.174  000>> Drop connection(C):192.168.10.44
   16.47 -08/11/2006 17:16:11.196  000>> Drop connection(C):192.168.10.44
   16.48 -08/11/2006 17:16:12.167  000>> Drop connection(C):192.168.10.44
   16.49 -08/11/2006 17:16:13.178  000>> Drop connection(C):192.168.10.44
   16.50 -08/11/2006 17:16:14.200  000>> Drop connection(C):192.168.10.44
   16.51 -08/11/2006 17:16:15.181  000>> Drop connection(C):192.168.10.44
   16.52 -08/11/2006 17:16:16.183  000>> Drop connection(C):192.168.10.44
   16.53 -08/11/2006 17:16:17.204  000>> Drop connection(C):192.168.10.44
   16.54 -08/11/2006 17:16:18.176  000>> Drop connection(C):192.168.10.44
   16.55 -08/11/2006 17:16:19.177  000>> Drop connection(C):192.168.10.44
   16.56 -08/11/2006 17:16:20.179  000>> Drop connection(C):192.168.10.44
   16.57 -08/11/2006 17:16:21.190  000>> Drop connection(C):192.168.10.44
   16.58 -08/11/2006 17:16:22.181  000>> Drop connection(C):192.168.10.44
   16.59 -08/11/2006 17:16:23.213  000>> Drop connection(C):192.168.10.44
   16.60 -08/11/2006 17:16:24.194  000>> Drop connection(C):192.168.10.44
   16.61 -08/11/2006 17:16:25.196  000>> Drop connection(C):192.168.10.44
   16.62 -08/11/2006 17:16:26.217  000>> Drop connection(C):192.168.10.44
   16.63 -08/11/2006 17:16:27.199  000>> Drop connection(C):192.168.10.44
   16.64 -08/11/2006 17:16:28.200  000>> Drop connection(C):192.168.10.44
   16.65 -08/11/2006 17:16:29.222  000>> Drop connection(C):192.168.10.44
   16.66 -08/11/2006 17:16:30.203  000>> Drop connection(C):192.168.10.44
   16.67 -08/11/2006 17:16:31.204  000>> Drop connection(C):192.168.10.44
   16.68 -08/11/2006 17:16:32.226  000>> Drop connection(C):192.168.10.44
   16.69 -08/11/2006 17:16:33.207  000>> Drop connection(C):192.168.10.44
   16.70 -08/11/2006 17:16:34.209  000>> Drop connection(C):192.168.10.44
   16.71 -08/11/2006 17:16:35.230  000>> Drop connection(C):192.168.10.44
   16.72 -08/11/2006 17:16:36.212  000>> Drop connection(C):192.168.10.44
   16.73 -08/11/2006 17:16:37.213  000>> Drop connection(C):192.168.10.44
   16.74 -08/11/2006 17:16:38.235  000>> Drop connection(C):192.168.10.44
   16.75 -08/11/2006 17:16:39.216  000>> Drop connection(C):192.168.10.44
   16.76 -08/11/2006 17:16:40.217  000>> Drop connection(C):192.168.10.44
   16.77 -08/11/2006 17:16:41.239  000>> Drop connection(C):192.168.10.44
   16.78 -08/11/2006 17:16:42.220  000>> Drop connection(C):192.168.10.44
   16.79 -08/11/2006 17:16:43.222  000>> Drop connection(C):192.168.10.44
   16.80 -08/11/2006 17:16:44.243  000>> Drop connection(C):192.168.10.44
   16.81 -08/11/2006 17:16:45.225  000>> Drop connection(C):192.168.10.44
   16.82 -08/11/2006 17:16:46.226  000>> Drop connection(C):192.168.10.44
   16.83 -08/11/2006 17:16:47.247  000>> Drop connection(C):192.168.10.44
   16.84 -08/11/2006 17:16:48.229  000>> Drop connection(C):192.168.10.44
   16.85 -08/11/2006 17:16:49.230  000>> Drop connection(C):192.168.10.44
   16.86 -08/11/2006 17:16:50.252  000>> Drop connection(C):192.168.10.44
   16.87 -08/11/2006 17:16:51.233  000>> Drop connection(C):192.168.10.44
   16.88 -08/11/2006 17:16:52.235  000>> Drop connection(C):192.168.10.44
   16.89 -08/11/2006 17:16:53.256  000>> Drop connection(C):192.168.10.44
   16.90 -08/11/2006 17:16:54.238  000>> Drop connection(C):192.168.10.44
   16.91 -08/11/2006 17:16:55.239  000>> Drop connection(C):192.168.10.44
   16.92 -08/11/2006 17:16:56.260  000>> Drop connection(C):192.168.10.44
   16.93 -08/11/2006 17:16:57.242  000>> Drop connection(C):192.168.10.44
   16.94 -08/11/2006 17:16:58.243  000>> Drop connection(C):192.168.10.44
   16.95 -08/11/2006 17:16:59.265  000>> Drop connection(C):192.168.10.44
   16.96 -08/11/2006 17:17:00.246  000>> Drop connection(C):192.168.10.44
   16.97 -08/11/2006 17:17:01.248  000>> Drop connection(C):192.168.10.44
   16.98 -08/11/2006 17:17:02.269  000>> Drop connection(C):192.168.10.44
   16.99 -08/11/2006 17:17:03.250  000>> Drop connection(C):192.168.10.44
  16.100 -08/11/2006 17:17:04.252  000>> Drop connection(C):192.168.10.44
  16.101 -08/11/2006 17:17:05.273  000>> Drop connection(C):192.168.10.44
  16.102 -08/11/2006 17:17:06.255  000>> Drop connection(C):192.168.10.44
  16.103 -08/11/2006 17:17:07.256  000>> Drop connection(C):192.168.10.44
  16.104 -08/11/2006 17:17:08.278  000>> Drop connection(C):192.168.10.44
  16.105 -08/11/2006 17:17:09.259  000>> Drop connection(C):192.168.10.44
  16.106 -08/11/2006 17:17:10.261  000>> Drop connection(C):192.168.10.44
  16.107 -08/11/2006 17:17:11.282  000>> Drop connection(C):192.168.10.44
  16.108 -08/11/2006 17:17:12.263  000>> Drop connection(C):192.168.10.44
  16.109 -08/11/2006 17:17:13.265  000>> Drop connection(C):192.168.10.44
  16.110 -08/11/2006 17:17:14.286  000>> Drop connection(C):192.168.10.44
  16.111 -08/11/2006 17:17:15.268  000>> Drop connection(C):192.168.10.44
  16.112 -08/11/2006 17:17:16.269  000>> Drop connection(C):192.168.10.44
  16.113 -08/11/2006 17:17:17.291  000>> Drop connection(C):192.168.10.44
  16.114 -08/11/2006 17:17:18.272  000>> Drop connection(C):192.168.10.44
  16.115 -08/11/2006 17:17:19.274  000>> Drop connection(C):192.168.10.44
  16.116 -08/11/2006 17:17:20.295  000>> Drop connection(C):192.168.10.44
  16.117 -08/11/2006 17:17:21.276  000>> Drop connection(C):192.168.10.44
  16.118 -08/11/2006 17:17:22.278  000>> Drop connection(C):192.168.10.44
  16.119 -08/11/2006 17:17:23.299  000>> Drop connection(C):192.168.10.44
  16.120 -08/11/2006 17:17:24.281  000>> Drop connection(C):192.168.10.44
  16.121 -08/11/2006 17:17:25.282  000>> Drop connection(C):192.168.10.44
  16.122 -08/11/2006 17:17:26.304  000>> Drop connection(C):192.168.10.44
  16.123 -08/11/2006 17:17:27.285  000>> Drop connection(C):192.168.10.44
  16.124 -08/11/2006 17:17:28.286  000>> Drop connection(C):192.168.10.44
  16.125 -08/11/2006 17:17:29.308  000>> Drop connection(C):192.168.10.44
  16.126 -08/11/2006 17:17:30.289  000>> Drop connection(C):192.168.10.44
  16.127 -08/11/2006 17:17:31.291  000>> Drop connection(C):192.168.10.44
  16.128 -08/11/2006 17:17:32.312  000>> Drop connection(C):192.168.10.44
  16.129 -08/11/2006 17:17:33.294  000>> Drop connection(C):192.168.10.44
  16.130 -08/11/2006 17:17:34.295  000>> Drop connection(C):192.168.10.44
  16.131 -08/11/2006 17:17:35.317  000>> Drop connection(C):192.168.10.44
  16.132 -08/11/2006 17:17:36.298  000>> Drop connection(C):192.168.10.44
  16.133 -08/11/2006 17:17:37.299  000>> Drop connection(C):192.168.10.44
  16.134 -08/11/2006 17:17:38.321  000>> Drop connection(C):192.168.10.44
  16.135 -08/11/2006 17:17:39.302  000>> Drop connection(C):192.168.10.44
  16.136 -08/11/2006 17:17:40.304  000>> Drop connection(C):192.168.10.44
  16.137 -08/11/2006 17:17:41.325  000>> Drop connection(C):192.168.10.44
  16.138 -08/11/2006 17:17:42.307  000>> Drop connection(C):192.168.10.44
  16.139 -08/11/2006 17:17:43.308  000>> Drop connection(C):192.168.10.44
  16.140 -08/11/2006 17:17:44.330  000>> Drop connection(C):192.168.10.44
  16.141 -08/11/2006 17:17:45.311  000>> Drop connection(C):192.168.10.44
  16.142 -08/11/2006 17:17:46.312  000>> Drop connection(C):192.168.10.44
  16.143 -08/11/2006 17:17:47.334  000>> Drop connection(C):192.168.10.44
  16.144 -08/11/2006 17:17:48.315  000>> Drop connection(C):192.168.10.44
  16.145 -08/11/2006 17:17:49.317  000>> Drop connection(C):192.168.10.44
  16.146 -08/11/2006 17:17:50.338  000>> Drop connection(C):192.168.10.44
  16.147 -08/11/2006 17:17:51.320  000>> Drop connection(C):192.168.10.44
  16.148 -08/11/2006 17:17:52.321  000>> Drop connection(C):192.168.10.44
  16.149 -08/11/2006 17:17:53.343  000>> Drop connection(C):192.168.10.44
  16.150 -08/11/2006 17:17:54.324  000>> Drop connection(C):192.168.10.44
  16.151 -08/11/2006 17:17:55.325  000>> Drop connection(C):192.168.10.44
  16.152 -08/11/2006 17:17:56.347  000>> Drop connection(C):192.168.10.44
  16.153 -08/11/2006 17:17:57.328  000>> Drop connection(C):192.168.10.44
  16.154 -08/11/2006 17:17:58.330  000>> Drop connection(C):192.168.10.44
  16.155 -08/11/2006 17:17:59.351  000>> Drop connection(C):192.168.10.44
  16.156 -08/11/2006 17:18:00.333  000>> Drop connection(C):192.168.10.44
  16.157 -08/11/2006 17:18:01.334  000>> Drop connection(C):192.168.10.44
  16.158 -08/11/2006 17:18:02.355  000>> Drop connection(C):192.168.10.44
  16.159 -08/11/2006 17:18:03.337  000>> Drop connection(C):192.168.10.44
  16.160 -08/11/2006 17:18:04.338  000>> Drop connection(C):192.168.10.44
  16.161 -08/11/2006 17:18:05.360  000>> Drop connection(C):192.168.10.44
  16.162 -08/11/2006 17:18:06.341  000>> Drop connection(C):192.168.10.44
  16.163 -08/11/2006 17:18:07.343  000>> Drop connection(C):192.168.10.44
  16.164 -08/11/2006 17:18:08.364  000>> Drop connection(C):192.168.10.44
  16.165 -08/11/2006 17:18:09.346  000>> Drop connection(C):192.168.10.44
  16.166 -08/11/2006 17:18:10.347  000>> Drop connection(C):192.168.10.44
  16.167 -08/11/2006 17:18:11.368  000>> Drop connection(C):192.168.10.44
  16.168 -08/11/2006 17:18:12.350  000>> Drop connection(C):192.168.10.44
  16.169 -08/11/2006 17:18:13.351  000>> Drop connection(C):192.168.10.44
  16.170 -08/11/2006 17:18:14.373  000>> Drop connection(C):192.168.10.44
  16.171 -08/11/2006 17:18:15.354  000>> Drop connection(C):192.168.10.44
  16.172 -08/11/2006 17:18:16.356  000>> Drop connection(C):192.168.10.44
  16.173 -08/11/2006 17:18:17.377  000>> Drop connection(C):192.168.10.44
  16.174 -08/11/2006 17:18:18.358  000>> Drop connection(C):192.168.10.44
  16.175 -08/11/2006 17:18:19.360  000>> Drop connection(C):192.168.10.44
  16.176 -08/11/2006 17:18:20.381  000>> Drop connection(C):192.168.10.44
  16.177 -08/11/2006 17:18:21.363  000>> Drop connection(C):192.168.10.44
  16.178 -08/11/2006 17:18:22.364  000>> Drop connection(C):192.168.10.44
  16.179 -08/11/2006 17:18:23.386  000>> Drop connection(C):192.168.10.44
  16.180 -08/11/2006 17:18:24.367  000>> Drop connection(C):192.168.10.44
  16.181 -08/11/2006 17:18:25.369  000>> Drop connection(C):192.168.10.44
  16.182 -08/11/2006 17:18:26.390  000>> Drop connection(C):192.168.10.44
  16.183 -08/11/2006 17:18:27.371  000>> Drop connection(C):192.168.10.44
  16.184 -08/11/2006 17:18:28.373  000>> Drop connection(C):192.168.10.44
  16.185 -08/11/2006 17:18:29.394  000>> Drop connection(C):192.168.10.44
  16.186 -08/11/2006 17:18:30.376  000>> Drop connection(C):192.168.10.44
  16.187 -08/11/2006 17:18:31.377  000>> Drop connection(C):192.168.10.44
  16.188 -08/11/2006 17:18:32.399  000>> Drop connection(C):192.168.10.44
  16.189 -08/11/2006 17:18:33.380  000>> Drop connection(C):192.168.10.44
  16.190 -08/11/2006 17:18:34.382  000>> Drop connection(C):192.168.10.44
  16.191 -08/11/2006 17:18:35.403  000>> Drop connection(C):192.168.10.44
  16.192 -08/11/2006 17:18:36.384  000>> Drop connection(C):192.168.10.44
  16.193 -08/11/2006 17:18:37.386  000>> Drop connection(C):192.168.10.44
  16.194 -08/11/2006 17:18:38.407  000>> Drop connection(C):192.168.10.44
  16.195 -08/11/2006 17:18:39.389  000>> Drop connection(C):192.168.10.44
  16.196 -08/11/2006 17:18:40.390  000>> Drop connection(C):192.168.10.44
  16.197 -08/11/2006 17:18:41.412  000>> Drop connection(C):192.168.10.44
  16.198 -08/11/2006 17:18:42.393  000>> Drop connection(C):192.168.10.44
  16.199 -08/11/2006 17:18:43.394  000>> Drop connection(C):192.168.10.44
  16.200 -08/11/2006 17:18:44.416  000>> Drop connection(C):192.168.10.44
  16.201 -08/11/2006 17:18:45.397  000>> Drop connection(C):192.168.10.44
  16.202 -08/11/2006 17:18:46.399  000>> Drop connection(C):192.168.10.44
  16.203 -08/11/2006 17:18:47.420  000>> Drop connection(C):192.168.10.44
  16.204 -08/11/2006 17:18:48.402  000>> Drop connection(C):192.168.10.44
  16.205 -08/11/2006 17:18:49.403  000>> Drop connection(C):192.168.10.44
  16.206 -08/11/2006 17:18:50.425  000>> Drop connection(C):192.168.10.44
  16.207 -08/11/2006 17:18:51.406  000>> Drop connection(C):192.168.10.44
  16.208 -08/11/2006 17:18:52.407  000>> Drop connection(C):192.168.10.44
  16.209 -08/11/2006 17:18:53.429  000>> Drop connection(C):192.168.10.44
  16.210 -08/11/2006 17:18:54.410  000>> Drop connection(C):192.168.10.44
  16.211 -08/11/2006 17:18:55.412  000>> Drop connection(C):192.168.10.44
  16.212 -08/11/2006 17:18:56.433  000>> Drop connection(C):192.168.10.44
  16.213 -08/11/2006 17:18:57.415  000>> Drop connection(C):192.168.10.44
  16.214 -08/11/2006 17:18:58.416  000>> Drop connection(C):192.168.10.44
  16.215 -08/11/2006 17:18:59.438  000>> Drop connection(C):192.168.10.44
  16.216 -08/11/2006 17:19:00.419  000>> Drop connection(C):192.168.10.44
  16.217 -08/11/2006 17:19:01.420  000>> Drop connection(C):192.168.10.44
  16.218 -08/11/2006 17:19:02.442  000>> Drop connection(C):192.168.10.44
  16.219 -08/11/2006 17:19:03.423  000>> Drop connection(C):192.168.10.44
  16.220 -08/11/2006 17:19:04.425  000>> Drop connection(C):192.168.10.44
  16.221 -08/11/2006 17:19:05.446  000>> Drop connection(C):192.168.10.44
  16.222 -08/11/2006 17:19:06.428  000>> Drop connection(C):192.168.10.44
  16.223 -08/11/2006 17:19:07.429  000>> Drop connection(C):192.168.10.44
  16.224 -08/11/2006 17:19:08.451  000>> Drop connection(C):192.168.10.44
  16.225 -08/11/2006 17:19:09.432  000>> Drop connection(C):192.168.10.44
  16.226 -08/11/2006 17:19:10.433  000>> Drop connection(C):192.168.10.44
  16.227 -08/11/2006 17:19:11.455  000>> Drop connection(C):192.168.10.44
  16.228 -08/11/2006 17:19:12.436  000>> Drop connection(C):192.168.10.44
  16.229 -08/11/2006 17:19:13.438  000>> Drop connection(C):192.168.10.44
  16.230 -08/11/2006 17:19:14.459  000>> Drop connection(C):192.168.10.44
  16.231 -08/11/2006 17:19:15.441  000>> Drop connection(C):192.168.10.44
  16.232 -08/11/2006 17:19:16.442  000>> Drop connection(C):192.168.10.44
  16.233 -08/11/2006 17:19:17.463  000>> Drop connection(C):192.168.10.44
  16.234 -08/11/2006 17:19:18.445  000>> Drop connection(C):192.168.10.44
  16.235 -08/11/2006 17:19:19.446  000>> Drop connection(C):192.168.10.44
  16.236 -08/11/2006 17:19:20.468  000>> Drop connection(C):192.168.10.44
  16.237 -08/11/2006 17:19:21.449  000>> Drop connection(C):192.168.10.44
  16.238 -08/11/2006 17:19:22.451  000>> Drop connection(C):192.168.10.44
  16.239 -08/11/2006 17:19:23.472  000>> Drop connection(C):192.168.10.44
  16.240 -08/11/2006 17:19:24.454  000>> Drop connection(C):192.168.10.44
  16.241 -08/11/2006 17:19:25.455  000>> Drop connection(C):192.168.10.44
  16.242 -08/11/2006 17:19:26.476  000>> Drop connection(C):192.168.10.44
  16.243 -08/11/2006 17:19:27.458  000>> Drop connection(C):192.168.10.44
  16.244 -08/11/2006 17:19:28.459  000>> Drop connection(C):192.168.10.44
  16.245 -08/11/2006 17:19:29.481  000>> Drop connection(C):192.168.10.44
  16.246 -08/11/2006 17:19:30.462  000>> Drop connection(C):192.168.10.44
  16.247 -08/11/2006 17:19:31.464  000>> Drop connection(C):192.168.10.44
  16.248 -08/11/2006 17:19:32.485  000>> Drop connection(C):192.168.10.44
  16.249 -08/11/2006 17:19:33.466  000>> Drop connection(C):192.168.10.44
  16.250 -08/11/2006 17:19:34.468  000>> Drop connection(C):192.168.10.44
  16.251 -08/11/2006 17:19:35.489  000>> Drop connection(C):192.168.10.44
  16.252 -08/11/2006 17:19:36.471  000>> Drop connection(C):192.168.10.44
  16.253 -08/11/2006 17:19:37.472  000>> Drop connection(C):192.168.10.44
  16.254 -08/11/2006 17:19:38.494  000>> Drop connection(C):192.168.10.44
  16.255 -08/11/2006 17:19:39.475  000>> Drop connection(C):192.168.10.44
  16.256 -08/11/2006 17:19:40.477  000>> Drop connection(C):192.168.10.44
  16.257 -08/11/2006 17:19:41.498  000>> Drop connection(C):192.168.10.44
  16.258 -08/11/2006 17:19:42.479  000>> Drop connection(C):192.168.10.44
  16.259 -08/11/2006 17:19:43.481  000>> Drop connection(C):192.168.10.44
  16.260 -08/11/2006 17:19:44.502  000>> Drop connection(C):192.168.10.44
  16.261 -08/11/2006 17:19:45.484  000>> Drop connection(C):192.168.10.44
  16.262 -08/11/2006 17:19:46.485  000>> Drop connection(C):192.168.10.44
  16.263 -08/11/2006 17:19:47.507  000>> Drop connection(C):192.168.10.44
  16.264 -08/11/2006 17:19:48.488  000>> Drop connection(C):192.168.10.44
  16.265 -08/11/2006 17:19:49.490  000>> Drop connection(C):192.168.10.44
  16.266 -08/11/2006 17:19:50.511  000>> Drop connection(C):192.168.10.44
  16.267 -08/11/2006 17:19:51.492  000>> Drop connection(C):192.168.10.44
  16.268 -08/11/2006 17:19:52.494  000>> Drop connection(C):192.168.10.44
  16.269 -08/11/2006 17:19:53.515  000>> Drop connection(C):192.168.10.44
  16.270 -08/11/2006 17:19:54.497  000>> Drop connection(C):192.168.10.44
  16.271 -08/11/2006 17:19:55.498  000>> Drop connection(C):192.168.10.44
  16.272 -08/11/2006 17:19:56.520  000>> Drop connection(C):192.168.10.44
  16.273 -08/11/2006 17:19:57.501  000>> Drop connection(C):192.168.10.44
  16.274 -08/11/2006 17:19:58.502  000>> Drop connection(C):192.168.10.44
  16.275 -08/11/2006 17:19:59.524  000>> Drop connection(C):192.168.10.44
  16.276 -08/11/2006 17:20:00.505  000>> Drop connection(C):192.168.10.44
  16.277 -08/11/2006 17:20:01.507  000>> Drop connection(C):192.168.10.44
  16.278 -08/11/2006 17:20:02.528  000>> Drop connection(C):192.168.10.44
  16.279 -08/11/2006 17:20:03.510  000>> Drop connection(C):192.168.10.44
  16.280 -08/11/2006 17:20:04.511  000>> Drop connection(C):192.168.10.44
  16.281 -08/11/2006 17:20:05.533  000>> Drop connection(C):192.168.10.44
  16.282 -08/11/2006 17:20:06.514  000>> Drop connection(C):192.168.10.44
  16.283 -08/11/2006 17:20:07.515  000>> Drop connection(C):192.168.10.44
  16.284 -08/11/2006 17:20:08.537  000>> Drop connection(C):192.168.10.44
  16.285 -08/11/2006 17:20:09.518  000>> Drop connection(C):192.168.10.44
  16.286 -08/11/2006 17:20:10.520  000>> Drop connection(C):192.168.10.44
  16.287 -08/11/2006 17:20:11.541  000>> Drop connection(C):192.168.10.44
  16.288 -08/11/2006 17:20:12.523  000>> Drop connection(C):192.168.10.44
  16.289 -08/11/2006 17:20:13.524  000>> Drop connection(C):192.168.10.44
  16.290 -08/11/2006 17:20:14.546  000>> Drop connection(C):192.168.10.44
  16.291 -08/11/2006 17:20:15.527  000>> Drop connection(C):192.168.10.44
  16.292 -08/11/2006 17:20:16.528  000>> Drop connection(C):192.168.10.44
  16.293 -08/11/2006 17:20:17.550  000>> Drop connection(C):192.168.10.44
  16.294 -08/11/2006 17:20:18.531  000>> Drop connection(C):192.168.10.44
  16.295 -08/11/2006 17:20:19.533  000>> Drop connection(C):192.168.10.44
  16.296 -08/11/2006 17:20:20.554  000>> Drop connection(C):192.168.10.44
  16.297 -08/11/2006 17:20:21.536  000>> Drop connection(C):192.168.10.44
  16.298 -08/11/2006 17:20:22.537  000>> Drop connection(C):192.168.10.44
  16.299 -08/11/2006 17:20:23.559  000>> Drop connection(C):192.168.10.44
  16.300 -08/11/2006 17:20:24.540  000>> Drop connection(C):192.168.10.44
  16.301 -08/11/2006 17:20:25.541  000>> Drop connection(C):192.168.10.44
  16.302 -08/11/2006 17:20:26.563  000>> Drop connection(C):192.168.10.44
  16.303 -08/11/2006 17:20:27.544  000>> Drop connection(C):192.168.10.44
  16.304 -08/11/2006 17:20:28.546  000>> Drop connection(C):192.168.10.44
  16.305 -08/11/2006 17:20:29.567  000>> Drop connection(C):192.168.10.44
  16.306 -08/11/2006 17:20:30.549  000>> Drop connection(C):192.168.10.44
  16.307 -08/11/2006 17:20:31.550  000>> Drop connection(C):192.168.10.44
  16.308 -08/11/2006 17:20:32.571  000>> Drop connection(C):192.168.10.44
  16.309 -08/11/2006 17:20:33.553  000>> Drop connection(C):192.168.10.44
  16.310 -08/11/2006 17:20:34.554  000>> Drop connection(C):192.168.10.44
  16.311 -08/11/2006 17:20:35.576  000>> Drop connection(C):192.168.10.44
  16.312 -08/11/2006 17:20:36.557  000>> Drop connection(C):192.168.10.44
  16.313 -08/11/2006 17:20:37.559  000>> Drop connection(C):192.168.10.44
  16.314 -08/11/2006 17:20:38.580  000>> Drop connection(C):192.168.10.44
  16.315 -08/11/2006 17:20:39.562  000>> Drop connection(C):192.168.10.44
  16.316 -08/11/2006 17:20:40.563  000>> Drop connection(C):192.168.10.44
  16.317 -08/11/2006 17:20:41.584  000>> Drop connection(C):192.168.10.44
  16.318 -08/11/2006 17:20:42.566  000>> Drop connection(C):192.168.10.44
  16.319 -08/11/2006 17:20:43.567  000>> Drop connection(C):192.168.10.44
  16.320 -08/11/2006 17:20:44.589  000>> Drop connection(C):192.168.10.44
  16.321 -08/11/2006 17:20:45.570  000>> Drop connection(C):192.168.10.44
  16.322 -08/11/2006 17:20:46.572  000>> Drop connection(C):192.168.10.44
  16.323 -08/11/2006 17:20:47.593  000>> Drop connection(C):192.168.10.44
  16.324 -08/11/2006 17:20:48.564  000>> Drop connection(C):192.168.10.44
  16.325 -08/11/2006 17:20:49.576  000>> Drop connection(C):192.168.10.44
  16.326 -08/11/2006 17:20:50.597  000>> Drop connection(C):192.168.10.44
  16.327 -08/11/2006 17:20:51.569  000>> Drop connection(C):192.168.10.44
  16.328 -08/11/2006 17:20:52.580  000>> Drop connection(C):192.168.10.44
  16.329 -08/11/2006 17:20:53.572  000>> Drop connection(C):192.168.10.44
  16.330 -08/11/2006 17:20:54.573  000>> Drop connection(C):192.168.10.44
  16.331 -08/11/2006 17:20:55.595  000>> Drop connection(C):192.168.10.44
  16.332 -08/11/2006 17:20:56.606  000>> Drop connection(C):192.168.10.44
  16.333 -08/11/2006 17:20:57.597  000>> Drop connection(C):192.168.10.44
  16.334 -08/11/2006 17:20:58.599  000>> Drop connection(C):192.168.10.44
  16.335 -08/11/2006 17:20:59.610  000>> Drop connection(C):192.168.10.44
  16.336 -08/11/2006 17:21:00.602  000>> Drop connection(C):192.168.10.44
  16.337 -08/11/2006 17:21:01.603  000>> Drop connection(C):192.168.10.44
  16.338 -08/11/2006 17:21:02.615  000>> Drop connection(C):192.168.10.44
  16.339 -08/11/2006 17:21:03.606  000>> Drop connection(C):192.168.10.44
  16.340 -08/11/2006 17:21:04.608  000>> Drop connection(C):192.168.10.44
  16.341 -08/11/2006 17:21:05.619  000>> Drop connection(C):192.168.10.44
  16.342 -08/11/2006 17:21:06.610  000>> Drop connection(C):192.168.10.44
  16.343 -08/11/2006 17:21:07.612  000>> Drop connection(C):192.168.10.44
  16.344 -08/11/2006 17:21:08.623  000>> Drop connection(C):192.168.10.44
  16.345 -08/11/2006 17:21:09.615  000>> Drop connection(C):192.168.10.44
  16.346 -08/11/2006 17:21:10.616  000>> Drop connection(C):192.168.10.44
  16.347 -08/11/2006 17:21:11.628  000>> Drop connection(C):192.168.10.44
  16.348 -08/11/2006 17:21:12.619  000>> Drop connection(C):192.168.10.44
  16.349 -08/11/2006 17:21:13.621  000>> Drop connection(C):192.168.10.44
  16.350 -08/11/2006 17:21:14.632  000>> Drop connection(C):192.168.10.44
  16.351 -08/11/2006 17:21:15.623  000>> Drop connection(C):192.168.10.44
  16.352 -08/11/2006 17:21:16.625  000>> Drop connection(C):192.168.10.44
  16.353 -08/11/2006 17:21:17.636  000>> Drop connection(C):192.168.10.44
  16.354 -08/11/2006 17:21:18.628  000>> Drop connection(C):192.168.10.44
  16.355 -08/11/2006 17:21:19.629  000>> Drop connection(C):192.168.10.44
  16.356 -08/11/2006 17:21:20.641  000>> Drop connection(C):192.168.10.44
  16.357 -08/11/2006 17:21:21.632  000>> Drop connection(C):192.168.10.44
  16.358 -08/11/2006 17:21:22.633  000>> Drop connection(C):192.168.10.44
  16.359 -08/11/2006 17:21:23.645  000>> Drop connection(C):192.168.10.44
  16.360 -08/11/2006 17:21:24.636  000>> Drop connection(C):192.168.10.44
  16.361 -08/11/2006 17:21:25.638  000>> Drop connection(C):192.168.10.44
  16.362 -08/11/2006 17:21:26.649  000>> Drop connection(C):192.168.10.44
  16.363 -08/11/2006 17:21:27.641  000>> Drop connection(C):192.168.10.44
  16.364 -08/11/2006 17:21:28.642  000>> Drop connection(C):192.168.10.44
  16.365 -08/11/2006 17:21:29.654  000>> Drop connection(C):192.168.10.44
  16.366 -08/11/2006 17:21:30.645  000>> Drop connection(C):192.168.10.44
  16.367 -08/11/2006 17:21:31.646  000>> Drop connection(C):192.168.10.44
  16.368 -08/11/2006 17:21:32.658  000>> Drop connection(C):192.168.10.44
  16.369 -08/11/2006 17:21:33.649  000>> Drop connection(C):192.168.10.44
  16.370 -08/11/2006 17:21:34.651  000>> Drop connection(C):192.168.10.44
  16.371 -08/11/2006 17:21:35.662  000>> Drop connection(C):192.168.10.44
  16.372 -08/11/2006 17:21:36.654  000>> Drop connection(C):192.168.10.44
  16.373 -08/11/2006 17:21:37.655  000>> Drop connection(C):192.168.10.44
  16.374 -08/11/2006 17:21:38.667  000>> Drop connection(C):192.168.10.44
  16.375 -08/11/2006 17:21:39.658  000>> Drop connection(C):192.168.10.44
  16.376 -08/11/2006 17:21:40.659  000>> Drop connection(C):192.168.10.44
  16.377 -08/11/2006 17:21:41.671  000>> Drop connection(C):192.168.10.44
  16.378 -08/11/2006 17:21:42.662  000>> Drop connection(C):192.168.10.44
  16.379 -08/11/2006 17:21:43.664  000>> Drop connection(C):192.168.10.44
  16.380 -08/11/2006 17:21:44.675  000>> Drop connection(C):192.168.10.44
  16.381 -08/11/2006 17:21:45.667  000>> Drop connection(C):192.168.10.44
  16.382 -08/11/2006 17:21:46.668  000>> Drop connection(C):192.168.10.44
  16.383 -08/11/2006 17:21:47.679  000>> Drop connection(C):192.168.10.44
  16.384 -08/11/2006 17:21:48.671  000>> Drop connection(C):192.168.10.44
  16.385 -08/11/2006 17:21:49.672  000>> Drop connection(C):192.168.10.44
  16.386 -08/11/2006 17:21:50.684  000>> Drop connection(C):192.168.10.44
  16.387 -08/11/2006 17:21:51.675  000>> Drop connection(C):192.168.10.44
  16.388 -08/11/2006 17:21:52.677  000>> Drop connection(C):192.168.10.44
  16.389 -08/11/2006 17:21:53.688  000>> Drop connection(C):192.168.10.44
  16.390 -08/11/2006 17:21:54.680  000>> Drop connection(C):192.168.10.44
  16.391 -08/11/2006 17:21:55.681  000>> Drop connection(C):192.168.10.44
  16.392 -08/11/2006 17:21:56.692  000>> Drop connection(C):192.168.10.44
  16.393 -08/11/2006 17:21:57.684  000>> Drop connection(C):192.168.10.44
  16.394 -08/11/2006 17:21:58.685  000>> Drop connection(C):192.168.10.44
  16.395 -08/11/2006 17:21:59.697  000>> Drop connection(C):192.168.10.44
  16.396 -08/11/2006 17:22:00.688  000>> Drop connection(C):192.168.10.44
  16.397 -08/11/2006 17:22:01.680  000>> Drop connection(C):192.168.10.44
  16.398 -08/11/2006 17:22:02.701  000>> Drop connection(C):192.168.10.44
  16.399 -08/11/2006 17:22:03.672  000>> Drop connection(C):192.168.10.44
  16.400 -08/11/2006 17:22:04.754  000>> Drop connection(C):192.168.10.44
  16.401 -08/11/2006 17:22:05.675  000>> Drop connection(C):192.168.10.44
  16.402 -08/11/2006 17:22:06.687  000>> Drop connection(C):192.168.10.44
  16.403 -08/11/2006 17:22:07.688  000>> Drop connection(C):192.168.10.44
  16.404 -08/11/2006 17:22:08.710  000>> Drop connection(C):192.168.10.44
  16.405 -08/11/2006 17:22:09.691  000>> Drop connection(C):192.168.10.44
  16.406 -08/11/2006 17:22:10.693  000>> Drop connection(C):192.168.10.44
  16.407 -08/11/2006 17:22:11.714  000>> Drop connection(C):192.168.10.44
  16.408 -08/11/2006 17:22:12.695  000>> Drop connection(C):192.168.10.44
  16.409 -08/11/2006 17:22:13.697  000>> Drop connection(C):192.168.10.44
  16.410 -08/11/2006 17:22:14.718  000>> Drop connection(C):192.168.10.44
  16.411 -08/11/2006 17:22:15.700  000>> Drop connection(C):192.168.10.44
  16.412 -08/11/2006 17:22:16.701  000>> Drop connection(C):192.168.10.44
  16.413 -08/11/2006 17:22:17.723  000>> Drop connection(C):192.168.10.44
  16.414 -08/11/2006 17:22:18.704  000>> Drop connection(C):192.168.10.44
  16.415 -08/11/2006 17:22:19.706  000>> Drop connection(C):192.168.10.44
  16.416 -08/11/2006 17:22:20.727  000>> Drop connection(C):192.168.10.44
  16.417 -08/11/2006 17:22:21.708  000>> Drop connection(C):192.168.10.44
  16.418 -08/11/2006 17:22:22.710  000>> Drop connection(C):192.168.10.44
  16.419 -08/11/2006 17:22:23.731  000>> Drop connection(C):192.168.10.44
  16.420 -08/11/2006 17:22:24.713  000>> Drop connection(C):192.168.10.44
  16.421 -08/11/2006 17:22:25.714  000>> Drop connection(C):192.168.10.44
  16.422 -08/11/2006 17:22:26.736  000>> Drop connection(C):192.168.10.44
  16.423 -08/11/2006 17:22:27.717  000>> Drop connection(C):192.168.10.44
  16.424 -08/11/2006 17:22:28.718  000>> Drop connection(C):192.168.10.44
  16.425 -08/11/2006 17:22:29.740  000>> Drop connection(C):192.168.10.44
  16.426 -08/11/2006 17:22:30.721  000>> Drop connection(C):192.168.10.44
  16.427 -08/11/2006 17:22:31.723  000>> Drop connection(C):192.168.10.44
  16.428 -08/11/2006 17:22:32.744  000>> Drop connection(C):192.168.10.44
  16.429 -08/11/2006 17:22:33.726  000>> Drop connection(C):192.168.10.44
  16.430 -08/11/2006 17:22:34.727  000>> Drop connection(C):192.168.10.44
  16.431 -08/11/2006 17:22:35.749  000>> Drop connection(C):192.168.10.44
  16.432 -08/11/2006 17:22:36.730  000>> Drop connection(C):192.168.10.44
  16.433 -08/11/2006 17:22:37.731  000>> Drop connection(C):192.168.10.44
  16.434 -08/11/2006 17:22:38.723  000>> Drop connection(C):192.168.10.44
  16.435 -08/11/2006 17:22:39.734  000>> Drop connection(C):192.168.10.44
  16.436 -08/11/2006 17:22:40.736  000>> Drop connection(C):192.168.10.44
  16.437 -08/11/2006 17:22:41.757  000>> Drop connection(C):192.168.10.44
  16.438 -08/11/2006 17:22:42.739  000>> Drop connection(C):192.168.10.44
  16.439 -08/11/2006 17:22:43.740  000>> Drop connection(C):192.168.10.44
  16.440 -08/11/2006 17:22:44.732  000>> Drop connection(C):192.168.10.44
  16.441 -08/11/2006 17:22:45.743  000>> Drop connection(C):192.168.10.44
    17.1 --- a/Win32/dataPacket.cpp	Wed Jan 03 09:17:10 2007 +0000
    17.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    17.3 @@ -1,21 +0,0 @@
    17.4 -#include <QtCore>
    17.5 -#include <dataPacket.h>
    17.6 -
    17.7 -DataPacket::DataPacket(QObject *parent)
    17.8 -{
    17.9 -	id=0;
   17.10 -	data.clear();
   17.11 -}
   17.12 -
   17.13 -DataPacket& DataPacket::operator=(const DataPacket& other)
   17.14 -{
   17.15 - id = other.id;
   17.16 - data = other.data;
   17.17 - return *this;
   17.18 -}
   17.19 -
   17.20 -DataPacket::DataPacket(const DataPacket& other)
   17.21 -{
   17.22 - id = other.id;
   17.23 - data = other.data;
   17.24 -}	
    18.1 --- a/Win32/dataPacket.h	Wed Jan 03 09:17:10 2007 +0000
    18.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    18.3 @@ -1,18 +0,0 @@
    18.4 -#ifndef DATAPACKET_H
    18.5 -#define DATAPACKET_H
    18.6 -#include <QtCore>
    18.7 -
    18.8 -class DataPacket: public QObject
    18.9 -{
   18.10 -
   18.11 -	Q_OBJECT 
   18.12 -	public:
   18.13 -	QByteArray data;
   18.14 -	int id;
   18.15 -	DataPacket(QObject *parent= 0);
   18.16 -	DataPacket(const DataPacket& other);
   18.17 -	DataPacket& operator=(const DataPacket& other);
   18.18 -
   18.19 -};
   18.20 -
   18.21 -#endif
    19.1 --- a/Win32/debugWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
    19.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    19.3 @@ -1,271 +0,0 @@
    19.4 -#include <debugWidget.h>
    19.5 -#include <QtGui>
    19.6 -#include <QtCore>
    19.7 -#include <readFile.h>
    19.8 -
    19.9 -
   19.10 -#define DTN 500
   19.11 -
   19.12 -DebugWidget::DebugWidget(NodeManager *nodeMng,QWidget *parent)
   19.13 -		: QWidget(parent)
   19.14 -{
   19.15 -	setFixedSize(1000,700);
   19.16 -	ReadFile conf;
   19.17 -	QString mainText = "Prophet Window - ";
   19.18 -	mainText.append(conf.getNodeName());
   19.19 -	setWindowTitle(mainText);
   19.20 -	
   19.21 -	//BundleTable
   19.22 -	table = new QTableWidget(1000, 8, this);
   19.23 -    QStringList horizontalLabels;
   19.24 -    horizontalLabels << "ID" << "TimeStamp" << "SrcStr" << "DestStr"<< "Source" << "Dest" << "Data" << "Options";
   19.25 -	table->setHorizontalHeaderLabels(horizontalLabels); 
   19.26 -
   19.27 -	//Message Widget
   19.28 -	message = new MsgWidget(nodeMng);
   19.29 -	connect(message, SIGNAL(sendBundle(Bundle)), this, SLOT(forwardAppBundle(Bundle)));
   19.30 -
   19.31 -
   19.32 -	//NodeTable
   19.33 -	nodeTable = new QTableWidget(40, 4, this);
   19.34 -    QStringList horizontalNodeLabels;
   19.35 -    horizontalNodeLabels << "ID" << "Name" << "Probability" << "RIB Flag";
   19.36 -	nodeTable->setHorizontalHeaderLabels(horizontalNodeLabels); 
   19.37 -
   19.38 -		//ConnectionsTable
   19.39 -	conTable = new QTableWidget(40, 5, this);
   19.40 -    QStringList horizontalConLabels;
   19.41 -     horizontalConLabels << "ID" << "IP" << "Alive" << "Socket"<< "Con";
   19.42 -	conTable->setHorizontalHeaderLabels(horizontalConLabels); 
   19.43 -
   19.44 -	//Info tag
   19.45 -	info = new QListWidget;
   19.46 -	QString itemText;
   19.47 -	itemText.append("PRoPHET Version: 2.4 Long list edition");
   19.48 -    QListWidgetItem *newItem = new QListWidgetItem;
   19.49 -    newItem->setText(itemText);
   19.50 -    info->insertItem(0, newItem);
   19.51 -	itemText.clear();
   19.52 -
   19.53 -
   19.54 -   	itemText.append("Node name: ");
   19.55 -  	itemText.append(conf.getNodeName());
   19.56 - 	newItem = new QListWidgetItem;
   19.57 -	newItem->setText(itemText);
   19.58 -	info->insertItem(1, newItem);
   19.59 -	itemText.clear();
   19.60 -
   19.61 -   	itemText.append("Node ID: ");
   19.62 -  	itemText.append(QString("%1").arg(conf.getNodeId()));
   19.63 - 	newItem = new QListWidgetItem;
   19.64 -	newItem->setText(itemText);
   19.65 -	info->insertItem(2, newItem);
   19.66 -	itemText.clear();
   19.67 -
   19.68 -   	itemText.append("Node IP: ");
   19.69 -	QHostAddress ip = conf.getNodeIp();
   19.70 -	itemText.append(ip.toString());
   19.71 - 	newItem = new QListWidgetItem;
   19.72 -	newItem->setText(itemText);
   19.73 -	info->insertItem(3, newItem);
   19.74 -	itemText.clear();
   19.75 -
   19.76 -	itemText.append("Storage capacity (bytes): ");
   19.77 -  	itemText.append(QString("%1").arg(conf.getStorageSize()));
   19.78 - 	newItem = new QListWidgetItem;
   19.79 -	newItem->setText(itemText);
   19.80 -	info->insertItem(4, newItem);
   19.81 -	itemText.clear();
   19.82 -
   19.83 -  
   19.84 -	//DTN Interface
   19.85 -	dtnInfo = new QTextEdit;
   19.86 -	dtnInfo->setReadOnly(true);
   19.87 -	dtnEntery = 0;
   19.88 -
   19.89 -	//Message Group
   19.90 -//	QGroupBox *listMessage = new QGroupBox("Message GUI");
   19.91 - //   QPushButton *refreshBundle= new QPushButton("Refresh", this);
   19.92 -//	QGridLayout *messageGroup = new QGridLayout;
   19.93 -//	messageGroup->addWidget(table, 0, 0);
   19.94 -//	bundleGroup->addWidget(refreshBundle, 1, 0);
   19.95 -//    listMessage->setLayout(messageGroup);
   19.96 -
   19.97 -
   19.98 -	//Bundle List group
   19.99 -//	QGroupBox *listBundle = new QGroupBox("Bundle List");
  19.100 - //   QPushButton *refreshBundle= new QPushButton("Refresh", this);
  19.101 -//	QGridLayout *bundleGroup = new QGridLayout;
  19.102 -//	bundleGroup->addWidget(table, 0, 0);
  19.103 -//	bundleGroup->addWidget(refreshBundle, 1, 0);
  19.104 -  //  listBundle->setLayout(bundleGroup);
  19.105 -
  19.106 -	//Node  List group
  19.107 -//	QGroupBox *listNode = new QGroupBox("Node List");
  19.108 -//    QPushButton *refreshNode= new QPushButton("Refresh", this);
  19.109 -//	QGridLayout *nodeGroup = new QGridLayout;
  19.110 -//	nodeGroup->addWidget(nodeTable, 0, 0+);
  19.111 -//	nodeGroup->addWidget(refreshNode, 1, 0);
  19.112 - //   listNode->setLayout(nodeGroup);
  19.113 - 
  19.114 -	//Tab Widget
  19.115 -	tabWidget = new QTabWidget;
  19.116 -	tabWidget->addTab(conTable, tr("Connections"));
  19.117 -    tabWidget->addTab(message, tr("NSIM"));
  19.118 -	tabWidget->addTab(info,tr("Node info"));
  19.119 -	tabWidget->addTab(dtnInfo,tr("DTN Interface"));
  19.120 -    tabWidget->addTab(table, tr("Bundle list"));
  19.121 -    tabWidget->addTab(nodeTable, tr("Node list"));
  19.122 -
  19.123 -	
  19.124 -	//Define final layout
  19.125 -	QVBoxLayout *layout = new QVBoxLayout;
  19.126 -    layout->addWidget(tabWidget);    
  19.127 -//	layout->addWidget(listBundle);
  19.128 -//	layout->addWidget(listMessage);
  19.129 -    setLayout(layout);
  19.130 -
  19.131 -}
  19.132 -
  19.133 -void DebugWidget::getBundleList(QList<Bundle> list)
  19.134 -{
  19.135 -	Bundle newBundle;
  19.136 -	table->clear();
  19.137 -	QStringList horizontalLabels;
  19.138 -    horizontalLabels << "ID" << "TimeStamp" << "SrcStr" << "DestStr"<< "Source" << "Dest" << "Data" << "Options";
  19.139 -	table->setHorizontalHeaderLabels(horizontalLabels); 
  19.140 -   for (int i = 0; i < list.size(); ++i) 
  19.141 -	{
  19.142 -		newBundle=list.at(i);
  19.143 -		QString text = QString("%1").arg((int)newBundle.getId());
  19.144 -		QTableWidgetItem *newItem = new QTableWidgetItem(text);
  19.145 -		table->setItem(i, 0, newItem);
  19.146 -	
  19.147 -		QDateTime time= newBundle.getTime();
  19.148 -		text = time.toString("MM/dd/yyyy hh:mm:ss");
  19.149 -		newItem = new QTableWidgetItem(text);
  19.150 -		table->setItem(i, 1, newItem);
  19.151 -
  19.152 -	
  19.153 -		newItem = new QTableWidgetItem((QString)newBundle.sourceString);
  19.154 -		table->setItem(i, 2, newItem);
  19.155 -		
  19.156 -		newItem = new QTableWidgetItem((QString)newBundle.destinationString);
  19.157 -		table->setItem(i, 3, newItem);
  19.158 -		
  19.159 -		text = QString("%1").arg((int)newBundle.getSourceId());
  19.160 -		newItem = new QTableWidgetItem(text);
  19.161 -		table->setItem(i, 4, newItem);
  19.162 -
  19.163 -		text = QString("%1").arg((int)newBundle.getDestinationId());
  19.164 -		newItem = new QTableWidgetItem(text);
  19.165 -		table->setItem(i, 5, newItem);
  19.166 -	
  19.167 -		newItem = new QTableWidgetItem((QString)newBundle.getData());
  19.168 -		table->setItem(i, 6, newItem);
  19.169 -
  19.170 -		text = QString("%1").arg((int)newBundle.getOptions());
  19.171 -		newItem = new QTableWidgetItem(text);
  19.172 -		table->setItem(i, 7, newItem);
  19.173 -
  19.174 -	}
  19.175 -}
  19.176 -
  19.177 -void DebugWidget::getNodeList(QList<Node> list)
  19.178 -{
  19.179 -	Node tempNode;
  19.180 -	nodeTable->clear();
  19.181 -    QStringList horizontalNodeLabels;
  19.182 -    horizontalNodeLabels << "ID" << "Name" << "Probability" << "RIB Flag";
  19.183 -	nodeTable->setHorizontalHeaderLabels(horizontalNodeLabels); 
  19.184 -    for (int i = 0; i < list.size(); ++i) 
  19.185 -	{
  19.186 -		tempNode=list.at(i);
  19.187 -
  19.188 -		QString text = QString("%1").arg((int)tempNode.nodeId);
  19.189 -		QTableWidgetItem *newItem = new QTableWidgetItem(text);
  19.190 -		nodeTable->setItem(i, 0, newItem);
  19.191 -
  19.192 -		text = tempNode.getName();
  19.193 -		newItem = new QTableWidgetItem(text);
  19.194 -		nodeTable->setItem(i, 1, newItem);
  19.195 -
  19.196 -		text = QString("%1").arg((float)tempNode.probability);
  19.197 -		newItem = new QTableWidgetItem(text);
  19.198 -		nodeTable->setItem(i, 2, newItem);
  19.199 -
  19.200 -		text = QString("%1").arg((int)tempNode.flag);
  19.201 -		newItem = new QTableWidgetItem(text);
  19.202 -		nodeTable->setItem(i, 3, newItem);
  19.203 -		//table->resizeRowToContents(i);
  19.204 -	}
  19.205 -}
  19.206 -
  19.207 -void DebugWidget::getConnectionList(QList<ConnectionInfo> list)
  19.208 -{
  19.209 -	ConnectionInfo tempNode;
  19.210 -	conTable->clear();
  19.211 -     QStringList horizontalConLabels;
  19.212 -    horizontalConLabels << "ID" << "IP" << "Alive" << "State"<< "Error";
  19.213 -	conTable->setHorizontalHeaderLabels(horizontalConLabels); 
  19.214 -   for (int i = 0; i < list.size(); ++i) 
  19.215 -	{
  19.216 -		tempNode=list.at(i);
  19.217 -
  19.218 -		QString text = QString("%1").arg((int)tempNode.id);
  19.219 -		QTableWidgetItem *newItem = new QTableWidgetItem(text);
  19.220 -		conTable->setItem(i, 0, newItem);
  19.221 -
  19.222 -		text = tempNode.ip.toString();
  19.223 -		newItem = new QTableWidgetItem(text);
  19.224 -		conTable->setItem(i, 1, newItem);
  19.225 -
  19.226 -		text = QString("%1").arg((int)tempNode.alive);
  19.227 -		newItem = new QTableWidgetItem(text);
  19.228 -		conTable->setItem(i, 2, newItem);
  19.229 -		
  19.230 -		int x = tempNode.tcpSocket->state();
  19.231 -		text = QString("%1").arg((int)x);
  19.232 -		newItem = new QTableWidgetItem(text);
  19.233 -		conTable->setItem(i, 3, newItem);
  19.234 -		 x = tempNode.tcpSocket->error();
  19.235 -		text = QString("%1").arg((int)x);
  19.236 -		newItem = new QTableWidgetItem(text);
  19.237 -		conTable->setItem(i, 4, newItem);
  19.238 -		//table->resizeRowToContents(i);
  19.239 -	}
  19.240 -
  19.241 - }
  19.242 -
  19.243 -void DebugWidget::getStorageSize(int size)
  19.244 -{
  19.245 -/*	QString itemText;
  19.246 -	itemText.append("Usede storage size: ");
  19.247 -	itemText.append(QString("%1").arg(size));
  19.248 -	itemText.append("       ");
  19.249 -    QListWidgetItem *newItem = new QListWidgetItem;
  19.250 -    newItem->setText(itemText);
  19.251 -    info->insertItem(5, newItem);
  19.252 -	info->setCurrentRow ( 5 );*/
  19.253 -}
  19.254 -
  19.255 -void DebugWidget::getLog(QString log)
  19.256 -{
  19.257 -	if(dtnEntery>DTN)
  19.258 -	{
  19.259 -		dtnInfo->clear();
  19.260 -		dtnEntery=0;
  19.261 -	}
  19.262 -	dtnInfo->append(log);
  19.263 -	dtnEntery++;
  19.264 -}
  19.265 -
  19.266 -void DebugWidget::forwardAppBundle(Bundle newBundle)
  19.267 -{
  19.268 -	emit sendAppBundle(newBundle);
  19.269 -}
  19.270 -
  19.271 -void DebugWidget::getAppBundle(Bundle newBundle)
  19.272 -{
  19.273 -	message->getBundle(newBundle);
  19.274 -}
    20.1 --- a/Win32/debugWidget.h	Wed Jan 03 09:17:10 2007 +0000
    20.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    20.3 @@ -1,41 +0,0 @@
    20.4 -#ifndef DEBUGWIDGET_H
    20.5 -#define DEBUGWIDGET_H
    20.6 -
    20.7 -
    20.8 -#include <QtGui>
    20.9 -#include <bundle.h>
   20.10 -#include <node.h>
   20.11 -#include <msgWidget.h>
   20.12 -#include <neighbourAwareness.h>
   20.13 -
   20.14 -class DebugWidget : public QWidget
   20.15 -{
   20.16 -	Q_OBJECT 
   20.17 -	
   20.18 -
   20.19 -	public:
   20.20 -		DebugWidget(NodeManager*,QWidget *parent = 0);
   20.21 -		QTableWidget *table;
   20.22 -		QTableWidget *nodeTable;
   20.23 -		QTableWidget *conTable;
   20.24 -		MsgWidget *message;
   20.25 -		QTabWidget *tabWidget;
   20.26 -		QListWidget *info;
   20.27 -		QTextEdit *dtnInfo;
   20.28 -		int dtnEntery;
   20.29 -	 signals:
   20.30 -		void sendAppBundle(Bundle);
   20.31 -
   20.32 -	public slots:
   20.33 -	void getLog(QString);
   20.34 -	void getStorageSize(int);
   20.35 -	void getConnectionList(QList<ConnectionInfo> list);
   20.36 -	void getBundleList(QList<Bundle>);
   20.37 -	void forwardAppBundle(Bundle);
   20.38 -	void getAppBundle(Bundle);
   20.39 -	void getNodeList(QList<Node>);
   20.40 -};
   20.41 -
   20.42 -#endif
   20.43 -
   20.44 -
    21.1 --- a/Win32/hello.cpp	Wed Jan 03 09:17:10 2007 +0000
    21.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    21.3 @@ -1,65 +0,0 @@
    21.4 -#include <QtCore>
    21.5 -#include <hello.h>
    21.6 -
    21.7 -Hello::Hello(QObject *parent)
    21.8 -{
    21.9 -	reserved=0;
   21.10 -	HFunction=0;
   21.11 -	timer=0;
   21.12 -	senderId=0;
   21.13 -	senderType=0;
   21.14 -	senderName.clear();
   21.15 -}
   21.16 -
   21.17 -
   21.18 -Hello& Hello::operator=(const Hello& other)
   21.19 -{
   21.20 - reserved = other.reserved;
   21.21 - HFunction = other.HFunction;
   21.22 - timer = other.timer;
   21.23 - senderName = other.senderName;
   21.24 - senderId = other.senderId;
   21.25 - senderType = other.senderType;
   21.26 - return *this;
   21.27 -}
   21.28 -
   21.29 -Hello::Hello(const Hello& other)
   21.30 -{
   21.31 - reserved = other.reserved;
   21.32 - HFunction = other.HFunction;
   21.33 - timer = other.timer;
   21.34 - senderName = other.senderName;
   21.35 -  senderId = other.senderId;
   21.36 - senderType = other.senderType;
   21.37 -
   21.38 -}	
   21.39 -	
   21.40 -void Hello::setFunction(int function)
   21.41 -{
   21.42 -	HFunction=function;
   21.43 -}
   21.44 -
   21.45 -void Hello::setSenderName(QString name)
   21.46 -{
   21.47 -	senderName=name;
   21.48 -}
   21.49 -
   21.50 -int Hello::getFunction()
   21.51 -{
   21.52 -	return HFunction;
   21.53 -}
   21.54 -
   21.55 -QString Hello::getSenderName()
   21.56 -{
   21.57 -	return senderName;
   21.58 -}
   21.59 -
   21.60 -void Hello::setTimer(int t)
   21.61 -{
   21.62 -	timer=t;
   21.63 -}
   21.64 -
   21.65 -int Hello::getTimer()
   21.66 -{
   21.67 -	return timer;
   21.68 -}
   21.69 \ No newline at end of file
    22.1 --- a/Win32/hello.h	Wed Jan 03 09:17:10 2007 +0000
    22.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    22.3 @@ -1,38 +0,0 @@
    22.4 -#ifndef HELLO_H
    22.5 -#define HELLO_H
    22.6 -
    22.7 -#define SYN 1
    22.8 -#define SYNACK 2
    22.9 -#define ACK 3
   22.10 -#define RSTACK 4
   22.11 -
   22.12 -
   22.13 -
   22.14 -#include <QtCore>
   22.15 -
   22.16 -class Hello : public QObject
   22.17 -{
   22.18 -
   22.19 -Q_OBJECT 
   22.20 -	public:
   22.21 -	int reserved;
   22.22 -	int HFunction;
   22.23 -	int timer;
   22.24 -	int senderId;
   22.25 -	int senderType;
   22.26 -	QString senderName;
   22.27 -
   22.28 -	Hello(QObject *parent = 0);
   22.29 -	Hello(const Hello& other);
   22.30 -	Hello& operator=(const Hello& other);
   22.31 -
   22.32 -
   22.33 -	void setFunction(int);
   22.34 -	int getFunction(); 
   22.35 -	QString getSenderName();	
   22.36 -	void setSenderName(QString);
   22.37 -	void setTimer(int);
   22.38 -	int getTimer(); 
   22.39 -};
   22.40 -
   22.41 -#endif
   22.42 \ No newline at end of file
    23.1 --- a/Win32/main.cpp	Wed Jan 03 09:17:10 2007 +0000
    23.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    23.3 @@ -1,57 +0,0 @@
    23.4 -#include <QtGui>
    23.5 -#include <QtCore>
    23.6 -#include <neighbourAwareness.h>
    23.7 -#include <DTNInterface.h>
    23.8 -#include <debugWidget.h>
    23.9 -#include <messageFile.h>
   23.10 -#include <readFile.h>
   23.11 -
   23.12 -
   23.13 -using namespace std;
   23.14 -
   23.15 -
   23.16 -int main(int argc, char *argv[])
   23.17 -{
   23.18 -	QApplication app(argc, argv);
   23.19 -	ReadFile* conf;
   23.20 -	conf = new ReadFile;
   23.21 -	//Prepare Log File
   23.22 -	if(conf->getLogOption()==1)
   23.23 -	{
   23.24 -		MessageFile *log;
   23.25 -		log = new MessageFile;
   23.26 -		log->set("startup.log", 1000000, 5);
   23.27 -		log->addLog(0,(QString)"Starting Prophet!");
   23.28 -	}
   23.29 -
   23.30 -	//Create bundle manager
   23.31 -	BundleManager* mainBundleMananger = new BundleManager(conf->getNodeId());
   23.32 -	//Create node manager
   23.33 -	NodeManager* mainNodeManager = new NodeManager();//mainBundleMananger);
   23.34 -	//Create DTN interface
   23.35 -	DTNInterface* mainDTNInterface = new DTNInterface(mainBundleMananger,mainNodeManager);
   23.36 -	//Create debug
   23.37 -	DebugWidget* debugWidget = new DebugWidget(mainNodeManager);
   23.38 -	debugWidget->show();
   23.39 -	//Connect Bundle manager, Node manager and Debug widget
   23.40 -	debugWidget->connect(mainBundleMananger,SIGNAL(sendDebugBundleList(QList<Bundle>)),debugWidget,SLOT(getBundleList(QList<Bundle>)));
   23.41 -	debugWidget->connect(debugWidget,SIGNAL(sendAppBundle(Bundle)),mainBundleMananger,SLOT(addBundle(Bundle)));
   23.42 -	debugWidget->connect(mainBundleMananger,SIGNAL(sendStorage(int)),debugWidget,SLOT(getStorageSize(int)));
   23.43 -	//Updating bundle destinations
   23.44 -
   23.45 -	debugWidget->connect(mainNodeManager,SIGNAL(updatedNodeList(NodeManager*)),mainBundleMananger,SLOT(updateBundlesDestinations(NodeManager*)));
   23.46 -
   23.47 -	//Connect DTN Inteface and Debug widget
   23.48 -	debugWidget->connect(mainDTNInterface,SIGNAL(sendLog(QString)),debugWidget,SLOT(getLog(QString)));
   23.49 -	mainDTNInterface->connect(mainDTNInterface,SIGNAL(sendBundle(Bundle)),mainBundleMananger,SLOT(addBundle(Bundle)));
   23.50 -	mainDTNInterface->connect(mainBundleMananger,SIGNAL(sendDeliveredBundle(Bundle)),mainDTNInterface,SLOT(receiveBundle(Bundle)));
   23.51 -	//Connect Node manager and Debug widget
   23.52 -	debugWidget->connect(mainNodeManager,SIGNAL(sendDebugNodeList(QList<Node>)),debugWidget,SLOT(getNodeList(QList<Node>)));
   23.53 -	//Neighbor Awarnes 	
   23.54 -	NeighAware* neighbourawareness = new NeighAware(mainBundleMananger,mainNodeManager);
   23.55 -	debugWidget->connect(neighbourawareness,SIGNAL(sendDebugConList(QList<ConnectionInfo>)),debugWidget,SLOT(getConnectionList(QList<ConnectionInfo>)));
   23.56 -	delete conf;
   23.57 -	app.exec();
   23.58 -	return 0;
   23.59 -
   23.60 -}
    24.1 --- a/Win32/main.h	Wed Jan 03 09:17:10 2007 +0000
    24.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    24.3 @@ -1,2 +0,0 @@
    24.4 -#include <QtGui>
    24.5 -
    25.1 --- a/Win32/messageFile.cpp	Wed Jan 03 09:17:10 2007 +0000
    25.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    25.3 @@ -1,132 +0,0 @@
    25.4 -#include <messageFile.h>
    25.5 -#include <readFile.h>
    25.6 -
    25.7 -#ifdef Q_WS_X11
    25.8 -#include <sys/types.h>
    25.9 -#include <sys/stat.h> 
   25.10 -#endif
   25.11 -
   25.12 -#include <QTextStream>
   25.13 -
   25.14 -void MessageFile::set(QString fileName, int fileSize, int fileNo)
   25.15 -{
   25.16 -	msgFileName = fileName;
   25.17 -	msgFileSize = fileSize;
   25.18 -	msgFileNo = fileNo;
   25.19 -	mutex = new QMutex;
   25.20 -	dt = new QDateTime;
   25.21 -	ReadFile conf;
   25.22 -	storagePath=conf.getLogPath();
   25.23 -	dir.setPath(storagePath);
   25.24 -
   25.25 -}
   25.26 -
   25.27 -
   25.28 -void MessageFile::saveMessage(QString& message)
   25.29 -{
   25.30 -	saveMessage(message, false);
   25.31 -}
   25.32 -
   25.33 -void MessageFile::saveMessage(QString& message, bool datetime)
   25.34 -{
   25.35 -	QString dateTime;
   25.36 -	if (datetime == true)
   25.37 -	{
   25.38 -		mutex->lock();
   25.39 -		(*dt) = dt->currentDateTime();
   25.40 -		dateTime = dt->toString("MM/dd/yyyy hh:mm:ss.zzz ");
   25.41 -		mutex->unlock();
   25.42 -	}
   25.43 -	dateTime += message;
   25.44 -	saveMessage(0, dateTime);
   25.45 -
   25.46 -}
   25.47 -
   25.48 -
   25.49 -void MessageFile::saveMessage(int type, QString& message)
   25.50 -{
   25.51 -//	qDebug(message);
   25.52 -	mutex->lock();
   25.53 -	int i = 0;
   25.54 -	bool exists;
   25.55 -	QFile* f;
   25.56 -	f = new QFile(dir.filePath(msgFileName));
   25.57 -	exists = f->exists();
   25.58 -	if (f->open(QIODevice::WriteOnly|QIODevice::Append) == true)
   25.59 -	{
   25.60 -		QTextStream stream(f);
   25.61 -		stream << message;
   25.62 -		stream << "\r\n";
   25.63 -		i = f->size();
   25.64 -//		qDebug(QString("MessageFile size: %1 %2\r\n").arg(i).arg(msgFileSize));
   25.65 -		f->close();
   25.66 -#ifdef Q_WS_X11
   25.67 -		if (exists == false)
   25.68 -			chmod(msgFileName.toAscii(), S_IROTH|S_IWOTH|S_IRGRP|S_IWGRP|S_IRUSR|S_IWUSR);
   25.69 -#endif
   25.70 -	}
   25.71 -	delete f;
   25.72 -	if (i > msgFileSize)
   25.73 -	{
   25.74 -		QDir dir;
   25.75 -		QString fileNameOld;
   25.76 -		QString fileNameNew;
   25.77 -		i = msgFileNo;
   25.78 -		while (i > 1)
   25.79 -		{
   25.80 -			fileNameOld = msgFileName;
   25.81 -			fileNameOld += QString(".%1").arg(i);
   25.82 -			dir.remove(fileNameOld);
   25.83 -			i--;
   25.84 -			fileNameNew = msgFileName;
   25.85 -			fileNameNew += QString(".%1").arg(i);
   25.86 -			dir.rename(fileNameNew, fileNameOld);
   25.87 -		}
   25.88 -		fileNameOld = msgFileName;
   25.89 -		fileNameOld += QString(".%1").arg(i);
   25.90 -		dir.remove(fileNameOld);
   25.91 -		i--;
   25.92 -		fileNameNew = msgFileName;
   25.93 -		dir.rename(fileNameNew, fileNameOld);
   25.94 -	}
   25.95 -	mutex->unlock();
   25.96 -}
   25.97 -
   25.98 -void MessageFile::loadList(QStringList& sl, unsigned int maxItemNo)
   25.99 -{
  25.100 -	mutex->lock();
  25.101 -	sl.clear();
  25.102 -	QString line;
  25.103 -	QFile* f;
  25.104 -	f = new QFile(msgFileName);
  25.105 -	if (f->open(QIODevice::ReadOnly) == true)
  25.106 -	{
  25.107 -		QTextStream stream(f);
  25.108 -		while ((!stream.atEnd()) && (maxItemNo > 0))
  25.109 -		{
  25.110 -			sl.prepend(stream.readLine());
  25.111 -			maxItemNo--;
  25.112 -		}
  25.113 -		f->close();
  25.114 -	}
  25.115 -	mutex->unlock();
  25.116 -}
  25.117 -
  25.118 -void MessageFile::addLog(int indet,QString message)
  25.119 -{
  25.120 -	QString dateTime;
  25.121 -	QString id;
  25.122 -	id.sprintf(" %03d>> ", indet);
  25.123 -	if (1)
  25.124 -	{
  25.125 -		mutex->lock();
  25.126 -		(*dt) = dt->currentDateTime();
  25.127 -		dateTime = dt->toString("MM/dd/yyyy hh:mm:ss.zzz ");
  25.128 -		mutex->unlock();
  25.129 -	}
  25.130 -	dateTime += id;
  25.131 -	dateTime += message;
  25.132 -	saveMessage(0, dateTime);
  25.133 -
  25.134 -}
  25.135 -
    26.1 --- a/Win32/messageFile.h	Wed Jan 03 09:17:10 2007 +0000
    26.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    26.3 @@ -1,35 +0,0 @@
    26.4 -#ifndef MESSAGEFILE_H
    26.5 -#define MESSAGEFILE_H
    26.6 -
    26.7 -#include <qobject.h>
    26.8 -#include <qfile.h>
    26.9 -#include <qdir.h>
   26.10 -#include <qmutex.h>
   26.11 -#include <qstringlist.h>
   26.12 -#include <qdatetime.h>
   26.13 -
   26.14 -class MessageFile : public QObject
   26.15 -{
   26.16 -	Q_OBJECT
   26.17 -
   26.18 -public:
   26.19 -	virtual void set(QString fileName, int fileSize, int fileNo);
   26.20 -	virtual void loadList(QStringList& sl, unsigned int maxItemNo = 0xFFFFFFFF);
   26.21 -	void MessageFile::addLog(int indet,QString message);
   26.22 -
   26.23 -public slots:
   26.24 -	virtual void saveMessage(int type, QString& message);
   26.25 -	virtual void saveMessage(QString& message);
   26.26 -	virtual void saveMessage(QString& message, bool datetime);
   26.27 -
   26.28 -protected:
   26.29 -	QString msgFileName;
   26.30 -	int msgFileSize;
   26.31 -	int msgFileNo;
   26.32 -	QMutex* mutex;
   26.33 -	QDateTime* dt;
   26.34 -	QString storagePath;
   26.35 -	QDir dir;
   26.36 -};
   26.37 -
   26.38 -#endif
    27.1 --- a/Win32/moc_DTNInterface.cpp	Wed Jan 03 09:17:10 2007 +0000
    27.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    27.3 @@ -1,94 +0,0 @@
    27.4 -/****************************************************************************
    27.5 -** Meta object code from reading C++ file 'DTNInterface.h'
    27.6 -**
    27.7 -** Created: Wed Aug 9 11:25:43 2006
    27.8 -**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
    27.9 -**
   27.10 -** WARNING! All changes made in this file will be lost!
   27.11 -*****************************************************************************/
   27.12 -
   27.13 -#include "DTNInterface.h"
   27.14 -#if !defined(Q_MOC_OUTPUT_REVISION)
   27.15 -#error "The header file 'DTNInterface.h' doesn't include <QObject>."
   27.16 -#elif Q_MOC_OUTPUT_REVISION != 59
   27.17 -#error "This file was generated using the moc from 4.1.3. It"
   27.18 -#error "cannot be used with the include files from this version of Qt."
   27.19 -#error "(The moc has changed too much.)"
   27.20 -#endif
   27.21 -
   27.22 -static const uint qt_meta_data_DTNInterface[] = {
   27.23 -
   27.24 - // content:
   27.25 -       1,       // revision
   27.26 -       0,       // classname
   27.27 -       0,    0, // classinfo
   27.28 -       5,   10, // methods
   27.29 -       0,    0, // properties
   27.30 -       0,    0, // enums/sets
   27.31 -
   27.32 - // signals: signature, parameters, type, tag, flags
   27.33 -      14,   13,   13,   13, 0x05,
   27.34 -      31,   13,   13,   13, 0x05,
   27.35 -
   27.36 - // slots: signature, parameters, type, tag, flags
   27.37 -      50,   13,   13,   13, 0x0a,
   27.38 -      72,   63,   13,   13, 0x0a,
   27.39 -      96,   13,   13,   13, 0x0a,
   27.40 -
   27.41 -       0        // eod
   27.42 -};
   27.43 -
   27.44 -static const char qt_meta_stringdata_DTNInterface[] = {
   27.45 -    "DTNInterface\0\0sendLog(QString)\0sendBundle(Bundle)\0getBundles()\0"
   27.46 -    "response\0getResponse(QByteArray)\0receiveBundle(Bundle)\0"
   27.47 -};
   27.48 -
   27.49 -const QMetaObject DTNInterface::staticMetaObject = {
   27.50 -    { &QObject::staticMetaObject, qt_meta_stringdata_DTNInterface,
   27.51 -      qt_meta_data_DTNInterface, 0 }
   27.52 -};
   27.53 -
   27.54 -const QMetaObject *DTNInterface::metaObject() const
   27.55 -{
   27.56 -    return &staticMetaObject;
   27.57 -}
   27.58 -
   27.59 -void *DTNInterface::qt_metacast(const char *_clname)
   27.60 -{
   27.61 -    if (!_clname) return 0;
   27.62 -    if (!strcmp(_clname, qt_meta_stringdata_DTNInterface))
   27.63 -	return static_cast<void*>(const_cast<DTNInterface*>(this));
   27.64 -    return QObject::qt_metacast(_clname);
   27.65 -}
   27.66 -
   27.67 -int DTNInterface::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
   27.68 -{
   27.69 -    _id = QObject::qt_metacall(_c, _id, _a);
   27.70 -    if (_id < 0)
   27.71 -        return _id;
   27.72 -    if (_c == QMetaObject::InvokeMetaMethod) {
   27.73 -        switch (_id) {
   27.74 -        case 0: sendLog((*reinterpret_cast< QString(*)>(_a[1]))); break;
   27.75 -        case 1: sendBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
   27.76 -        case 2: getBundles(); break;
   27.77 -        case 3: getResponse((*reinterpret_cast< QByteArray(*)>(_a[1]))); break;
   27.78 -        case 4: receiveBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
   27.79 -        }
   27.80 -        _id -= 5;
   27.81 -    }
   27.82 -    return _id;
   27.83 -}
   27.84 -
   27.85 -// SIGNAL 0
   27.86 -void DTNInterface::sendLog(QString _t1)
   27.87 -{
   27.88 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
   27.89 -    QMetaObject::activate(this, &staticMetaObject, 0, _a);
   27.90 -}
   27.91 -
   27.92 -// SIGNAL 1
   27.93 -void DTNInterface::sendBundle(Bundle _t1)
   27.94 -{
   27.95 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
   27.96 -    QMetaObject::activate(this, &staticMetaObject, 1, _a);
   27.97 -}
    28.1 --- a/Win32/moc_bundle.cpp	Wed Jan 03 09:17:10 2007 +0000
    28.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    28.3 @@ -1,60 +0,0 @@
    28.4 -/****************************************************************************
    28.5 -** Meta object code from reading C++ file 'bundle.h'
    28.6 -**
    28.7 -** Created: Wed Aug 9 11:25:22 2006
    28.8 -**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
    28.9 -**
   28.10 -** WARNING! All changes made in this file will be lost!
   28.11 -*****************************************************************************/
   28.12 -
   28.13 -#include "bundle.h"
   28.14 -#if !defined(Q_MOC_OUTPUT_REVISION)
   28.15 -#error "The header file 'bundle.h' doesn't include <QObject>."
   28.16 -#elif Q_MOC_OUTPUT_REVISION != 59
   28.17 -#error "This file was generated using the moc from 4.1.3. It"
   28.18 -#error "cannot be used with the include files from this version of Qt."
   28.19 -#error "(The moc has changed too much.)"
   28.20 -#endif
   28.21 -
   28.22 -static const uint qt_meta_data_Bundle[] = {
   28.23 -
   28.24 - // content:
   28.25 -       1,       // revision
   28.26 -       0,       // classname
   28.27 -       0,    0, // classinfo
   28.28 -       0,    0, // methods
   28.29 -       0,    0, // properties
   28.30 -       0,    0, // enums/sets
   28.31 -
   28.32 -       0        // eod
   28.33 -};
   28.34 -
   28.35 -static const char qt_meta_stringdata_Bundle[] = {
   28.36 -    "Bundle\0"
   28.37 -};
   28.38 -
   28.39 -const QMetaObject Bundle::staticMetaObject = {
   28.40 -    { &QObject::staticMetaObject, qt_meta_stringdata_Bundle,
   28.41 -      qt_meta_data_Bundle, 0 }
   28.42 -};
   28.43 -
   28.44 -const QMetaObject *Bundle::metaObject() const
   28.45 -{
   28.46 -    return &staticMetaObject;
   28.47 -}
   28.48 -
   28.49 -void *Bundle::qt_metacast(const char *_clname)
   28.50 -{
   28.51 -    if (!_clname) return 0;
   28.52 -    if (!strcmp(_clname, qt_meta_stringdata_Bundle))
   28.53 -	return static_cast<void*>(const_cast<Bundle*>(this));
   28.54 -    return QObject::qt_metacast(_clname);
   28.55 -}
   28.56 -
   28.57 -int Bundle::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
   28.58 -{
   28.59 -    _id = QObject::qt_metacall(_c, _id, _a);
   28.60 -    if (_id < 0)
   28.61 -        return _id;
   28.62 -    return _id;
   28.63 -}
    29.1 --- a/Win32/moc_bundleManager.cpp	Wed Jan 03 09:17:10 2007 +0000
    29.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    29.3 @@ -1,112 +0,0 @@
    29.4 -/****************************************************************************
    29.5 -** Meta object code from reading C++ file 'bundleManager.h'
    29.6 -**
    29.7 -** Created: Wed Aug 9 11:25:26 2006
    29.8 -**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
    29.9 -**
   29.10 -** WARNING! All changes made in this file will be lost!
   29.11 -*****************************************************************************/
   29.12 -
   29.13 -#include "bundleManager.h"
   29.14 -#if !defined(Q_MOC_OUTPUT_REVISION)
   29.15 -#error "The header file 'bundleManager.h' doesn't include <QObject>."
   29.16 -#elif Q_MOC_OUTPUT_REVISION != 59
   29.17 -#error "This file was generated using the moc from 4.1.3. It"
   29.18 -#error "cannot be used with the include files from this version of Qt."
   29.19 -#error "(The moc has changed too much.)"
   29.20 -#endif
   29.21 -
   29.22 -static const uint qt_meta_data_BundleManager[] = {
   29.23 -
   29.24 - // content:
   29.25 -       1,       // revision
   29.26 -       0,       // classname
   29.27 -       0,    0, // classinfo
   29.28 -       9,   10, // methods
   29.29 -       0,    0, // properties
   29.30 -       0,    0, // enums/sets
   29.31 -
   29.32 - // signals: signature, parameters, type, tag, flags
   29.33 -      15,   14,   14,   14, 0x05,
   29.34 -      43,   14,   14,   14, 0x05,
   29.35 -      60,   14,   14,   14, 0x05,
   29.36 -
   29.37 - // slots: signature, parameters, type, tag, flags
   29.38 -      95,   14,   14,   14, 0x0a,
   29.39 -     135,   14,   14,   14, 0x0a,
   29.40 -     153,   14,   14,   14, 0x0a,
   29.41 -     182,   14,   14,   14, 0x0a,
   29.42 -     195,   14,   14,   14, 0x0a,
   29.43 -     210,   14,   14,   14, 0x0a,
   29.44 -
   29.45 -       0        // eod
   29.46 -};
   29.47 -
   29.48 -static const char qt_meta_stringdata_BundleManager[] = {
   29.49 -    "BundleManager\0\0sendDeliveredBundle(Bundle)\0sendStorage(int)\0"
   29.50 -    "sendDebugBundleList(QList<Bundle>)\0"
   29.51 -    "updateBundlesDestinations(NodeManager*)\0addBundle(Bundle)\0"
   29.52 -    "addBundleList(QList<Bundle>)\0saveToFile()\0readFromFile()\0"
   29.53 -    "emitDebugList()\0"
   29.54 -};
   29.55 -
   29.56 -const QMetaObject BundleManager::staticMetaObject = {
   29.57 -    { &QObject::staticMetaObject, qt_meta_stringdata_BundleManager,
   29.58 -      qt_meta_data_BundleManager, 0 }
   29.59 -};
   29.60 -
   29.61 -const QMetaObject *BundleManager::metaObject() const
   29.62 -{
   29.63 -    return &staticMetaObject;
   29.64 -}
   29.65 -
   29.66 -void *BundleManager::qt_metacast(const char *_clname)
   29.67 -{
   29.68 -    if (!_clname) return 0;
   29.69 -    if (!strcmp(_clname, qt_meta_stringdata_BundleManager))
   29.70 -	return static_cast<void*>(const_cast<BundleManager*>(this));
   29.71 -    return QObject::qt_metacast(_clname);
   29.72 -}
   29.73 -
   29.74 -int BundleManager::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
   29.75 -{
   29.76 -    _id = QObject::qt_metacall(_c, _id, _a);
   29.77 -    if (_id < 0)
   29.78 -        return _id;
   29.79 -    if (_c == QMetaObject::InvokeMetaMethod) {
   29.80 -        switch (_id) {
   29.81 -        case 0: sendDeliveredBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
   29.82 -        case 1: sendStorage((*reinterpret_cast< int(*)>(_a[1]))); break;
   29.83 -        case 2: sendDebugBundleList((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
   29.84 -        case 3: updateBundlesDestinations((*reinterpret_cast< NodeManager*(*)>(_a[1]))); break;
   29.85 -        case 4: addBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
   29.86 -        case 5: addBundleList((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
   29.87 -        case 6: saveToFile(); break;
   29.88 -        case 7: readFromFile(); break;
   29.89 -        case 8: emitDebugList(); break;
   29.90 -        }
   29.91 -        _id -= 9;
   29.92 -    }
   29.93 -    return _id;
   29.94 -}
   29.95 -
   29.96 -// SIGNAL 0
   29.97 -void BundleManager::sendDeliveredBundle(Bundle _t1)
   29.98 -{
   29.99 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  29.100 -    QMetaObject::activate(this, &staticMetaObject, 0, _a);
  29.101 -}
  29.102 -
  29.103 -// SIGNAL 1
  29.104 -void BundleManager::sendStorage(int _t1)
  29.105 -{
  29.106 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  29.107 -    QMetaObject::activate(this, &staticMetaObject, 1, _a);
  29.108 -}
  29.109 -
  29.110 -// SIGNAL 2
  29.111 -void BundleManager::sendDebugBundleList(QList<Bundle> _t1)
  29.112 -{
  29.113 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  29.114 -    QMetaObject::activate(this, &staticMetaObject, 2, _a);
  29.115 -}
    30.1 --- a/Win32/moc_connection.cpp	Wed Jan 03 09:17:10 2007 +0000
    30.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    30.3 @@ -1,171 +0,0 @@
    30.4 -/****************************************************************************
    30.5 -** Meta object code from reading C++ file 'connection.h'
    30.6 -**
    30.7 -** Created: Wed Aug 9 11:25:34 2006
    30.8 -**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
    30.9 -**
   30.10 -** WARNING! All changes made in this file will be lost!
   30.11 -*****************************************************************************/
   30.12 -
   30.13 -#include "connection.h"
   30.14 -#if !defined(Q_MOC_OUTPUT_REVISION)
   30.15 -#error "The header file 'connection.h' doesn't include <QObject>."
   30.16 -#elif Q_MOC_OUTPUT_REVISION != 59
   30.17 -#error "This file was generated using the moc from 4.1.3. It"
   30.18 -#error "cannot be used with the include files from this version of Qt."
   30.19 -#error "(The moc has changed too much.)"
   30.20 -#endif
   30.21 -
   30.22 -static const uint qt_meta_data_Connection[] = {
   30.23 -
   30.24 - // content:
   30.25 -       1,       // revision
   30.26 -       0,       // classname
   30.27 -       0,    0, // classinfo
   30.28 -      19,   10, // methods
   30.29 -       0,    0, // properties
   30.30 -       0,    0, // enums/sets
   30.31 -
   30.32 - // signals: signature, parameters, type, tag, flags
   30.33 -      12,   11,   11,   11, 0x05,
   30.34 -      39,   11,   11,   11, 0x05,
   30.35 -      56,   11,   11,   11, 0x05,
   30.36 -      84,   11,   11,   11, 0x05,
   30.37 -     105,   11,   11,   11, 0x05,
   30.38 -     139,   11,   11,   11, 0x05,
   30.39 -     170,   11,   11,   11, 0x05,
   30.40 -     203,   11,   11,   11, 0x05,
   30.41 -
   30.42 - // slots: signature, parameters, type, tag, flags
   30.43 -     230,   11,   11,   11, 0x0a,
   30.44 -     258,   11,   11,   11, 0x0a,
   30.45 -     290,   11,   11,   11, 0x0a,
   30.46 -     307,   11,   11,   11, 0x0a,
   30.47 -     327,   11,   11,   11, 0x0a,
   30.48 -     348,   11,   11,   11, 0x0a,
   30.49 -     368,   11,   11,   11, 0x0a,
   30.50 -     399,   11,   11,   11, 0x0a,
   30.51 -     423,   11,   11,   11, 0x0a,
   30.52 -     457,   11,   11,   11, 0x0a,
   30.53 -     493,   11,   11,   11, 0x0a,
   30.54 -
   30.55 -       0        // eod
   30.56 -};
   30.57 -
   30.58 -static const char qt_meta_stringdata_Connection[] = {
   30.59 -    "Connection\0\0sendDataPacket(DataPacket)\0sendHello(Hello)\0"
   30.60 -    "sendDictionary(QList<Node>)\0sendRIB(QList<Node>)\0"
   30.61 -    "forwardSignalDatagram(QByteArray)\0sendBundleOffer(QList<Bundle>)\0"
   30.62 -    "sendBundleRequest(QList<Bundle>)\0sendBundles(QList<Bundle>)\0"
   30.63 -    "receiveDatagram(DataPacket)\0forwardSlotDatagram(QByteArray)\0"
   30.64 -    "helloProcedure()\0listenerProcedure()\0initiatorProcedure()\0"
   30.65 -    "receiveHello(Hello)\0receiveDictionary(QList<Node>)\0"
   30.66 -    "receiveRIB(QList<Node>)\0receiveBundleOffer(QList<Bundle>)\0"
   30.67 -    "receiveBundleRequest(QList<Bundle>)\0receiveBundles(QList<Bundle>)\0"
   30.68 -};
   30.69 -
   30.70 -const QMetaObject Connection::staticMetaObject = {
   30.71 -    { &QObject::staticMetaObject, qt_meta_stringdata_Connection,
   30.72 -      qt_meta_data_Connection, 0 }
   30.73 -};
   30.74 -
   30.75 -const QMetaObject *Connection::metaObject() const
   30.76 -{
   30.77 -    return &staticMetaObject;
   30.78 -}
   30.79 -
   30.80 -void *Connection::qt_metacast(const char *_clname)
   30.81 -{
   30.82 -    if (!_clname) return 0;
   30.83 -    if (!strcmp(_clname, qt_meta_stringdata_Connection))
   30.84 -	return static_cast<void*>(const_cast<Connection*>(this));
   30.85 -    return QObject::qt_metacast(_clname);
   30.86 -}
   30.87 -
   30.88 -int Connection::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
   30.89 -{
   30.90 -    _id = QObject::qt_metacall(_c, _id, _a);
   30.91 -    if (_id < 0)
   30.92 -        return _id;
   30.93 -    if (_c == QMetaObject::InvokeMetaMethod) {
   30.94 -        switch (_id) {
   30.95 -        case 0: sendDataPacket((*reinterpret_cast< DataPacket(*)>(_a[1]))); break;
   30.96 -        case 1: sendHello((*reinterpret_cast< Hello(*)>(_a[1]))); break;
   30.97 -        case 2: sendDictionary((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
   30.98 -        case 3: sendRIB((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
   30.99 -        case 4: forwardSignalDatagram((*reinterpret_cast< QByteArray(*)>(_a[1]))); break;
  30.100 -        case 5: sendBundleOffer((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  30.101 -        case 6: sendBundleRequest((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  30.102 -        case 7: sendBundles((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  30.103 -        case 8: receiveDatagram((*reinterpret_cast< DataPacket(*)>(_a[1]))); break;
  30.104 -        case 9: forwardSlotDatagram((*reinterpret_cast< QByteArray(*)>(_a[1]))); break;
  30.105 -        case 10: helloProcedure(); break;
  30.106 -        case 11: listenerProcedure(); break;
  30.107 -        case 12: initiatorProcedure(); break;
  30.108 -        case 13: receiveHello((*reinterpret_cast< Hello(*)>(_a[1]))); break;
  30.109 -        case 14: receiveDictionary((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  30.110 -        case 15: receiveRIB((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  30.111 -        case 16: receiveBundleOffer((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  30.112 -        case 17: receiveBundleRequest((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  30.113 -        case 18: receiveBundles((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  30.114 -        }
  30.115 -        _id -= 19;
  30.116 -    }
  30.117 -    return _id;
  30.118 -}
  30.119 -
  30.120 -// SIGNAL 0
  30.121 -void Connection::sendDataPacket(DataPacket _t1)
  30.122 -{
  30.123 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  30.124 -    QMetaObject::activate(this, &staticMetaObject, 0, _a);
  30.125 -}
  30.126 -
  30.127 -// SIGNAL 1
  30.128 -void Connection::sendHello(Hello _t1)
  30.129 -{
  30.130 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  30.131 -    QMetaObject::activate(this, &staticMetaObject, 1, _a);
  30.132 -}
  30.133 -
  30.134 -// SIGNAL 2
  30.135 -void Connection::sendDictionary(QList<Node> _t1)
  30.136 -{
  30.137 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  30.138 -    QMetaObject::activate(this, &staticMetaObject, 2, _a);
  30.139 -}
  30.140 -
  30.141 -// SIGNAL 3
  30.142 -void Connection::sendRIB(QList<Node> _t1)
  30.143 -{
  30.144 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  30.145 -    QMetaObject::activate(this, &staticMetaObject, 3, _a);
  30.146 -}
  30.147 -
  30.148 -// SIGNAL 4
  30.149 -void Connection::forwardSignalDatagram(QByteArray _t1)
  30.150 -{
  30.151 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  30.152 -    QMetaObject::activate(this, &staticMetaObject, 4, _a);
  30.153 -}
  30.154 -
  30.155 -// SIGNAL 5
  30.156 -void Connection::sendBundleOffer(QList<Bundle> _t1)
  30.157 -{
  30.158 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  30.159 -    QMetaObject::activate(this, &staticMetaObject, 5, _a);
  30.160 -}
  30.161 -
  30.162 -// SIGNAL 6
  30.163 -void Connection::sendBundleRequest(QList<Bundle> _t1)
  30.164 -{
  30.165 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  30.166 -    QMetaObject::activate(this, &staticMetaObject, 6, _a);
  30.167 -}
  30.168 -
  30.169 -// SIGNAL 7
  30.170 -void Connection::sendBundles(QList<Bundle> _t1)
  30.171 -{
  30.172 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  30.173 -    QMetaObject::activate(this, &staticMetaObject, 7, _a);
  30.174 -}
    31.1 --- a/Win32/moc_dataPacket.cpp	Wed Jan 03 09:17:10 2007 +0000
    31.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    31.3 @@ -1,60 +0,0 @@
    31.4 -/****************************************************************************
    31.5 -** Meta object code from reading C++ file 'dataPacket.h'
    31.6 -**
    31.7 -** Created: Wed Aug 9 11:25:40 2006
    31.8 -**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
    31.9 -**
   31.10 -** WARNING! All changes made in this file will be lost!
   31.11 -*****************************************************************************/
   31.12 -
   31.13 -#include "dataPacket.h"
   31.14 -#if !defined(Q_MOC_OUTPUT_REVISION)
   31.15 -#error "The header file 'dataPacket.h' doesn't include <QObject>."
   31.16 -#elif Q_MOC_OUTPUT_REVISION != 59
   31.17 -#error "This file was generated using the moc from 4.1.3. It"
   31.18 -#error "cannot be used with the include files from this version of Qt."
   31.19 -#error "(The moc has changed too much.)"
   31.20 -#endif
   31.21 -
   31.22 -static const uint qt_meta_data_DataPacket[] = {
   31.23 -
   31.24 - // content:
   31.25 -       1,       // revision
   31.26 -       0,       // classname
   31.27 -       0,    0, // classinfo
   31.28 -       0,    0, // methods
   31.29 -       0,    0, // properties
   31.30 -       0,    0, // enums/sets
   31.31 -
   31.32 -       0        // eod
   31.33 -};
   31.34 -
   31.35 -static const char qt_meta_stringdata_DataPacket[] = {
   31.36 -    "DataPacket\0"
   31.37 -};
   31.38 -
   31.39 -const QMetaObject DataPacket::staticMetaObject = {
   31.40 -    { &QObject::staticMetaObject, qt_meta_stringdata_DataPacket,
   31.41 -      qt_meta_data_DataPacket, 0 }
   31.42 -};
   31.43 -
   31.44 -const QMetaObject *DataPacket::metaObject() const
   31.45 -{
   31.46 -    return &staticMetaObject;
   31.47 -}
   31.48 -
   31.49 -void *DataPacket::qt_metacast(const char *_clname)
   31.50 -{
   31.51 -    if (!_clname) return 0;
   31.52 -    if (!strcmp(_clname, qt_meta_stringdata_DataPacket))
   31.53 -	return static_cast<void*>(const_cast<DataPacket*>(this));
   31.54 -    return QObject::qt_metacast(_clname);
   31.55 -}
   31.56 -
   31.57 -int DataPacket::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
   31.58 -{
   31.59 -    _id = QObject::qt_metacall(_c, _id, _a);
   31.60 -    if (_id < 0)
   31.61 -        return _id;
   31.62 -    return _id;
   31.63 -}
    32.1 --- a/Win32/moc_debugWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
    32.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    32.3 @@ -1,95 +0,0 @@
    32.4 -/****************************************************************************
    32.5 -** Meta object code from reading C++ file 'debugWidget.h'
    32.6 -**
    32.7 -** Created: Wed Aug 9 11:25:28 2006
    32.8 -**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
    32.9 -**
   32.10 -** WARNING! All changes made in this file will be lost!
   32.11 -*****************************************************************************/
   32.12 -
   32.13 -#include "debugWidget.h"
   32.14 -#if !defined(Q_MOC_OUTPUT_REVISION)
   32.15 -#error "The header file 'debugWidget.h' doesn't include <QObject>."
   32.16 -#elif Q_MOC_OUTPUT_REVISION != 59
   32.17 -#error "This file was generated using the moc from 4.1.3. It"
   32.18 -#error "cannot be used with the include files from this version of Qt."
   32.19 -#error "(The moc has changed too much.)"
   32.20 -#endif
   32.21 -
   32.22 -static const uint qt_meta_data_DebugWidget[] = {
   32.23 -
   32.24 - // content:
   32.25 -       1,       // revision
   32.26 -       0,       // classname
   32.27 -       0,    0, // classinfo
   32.28 -       8,   10, // methods
   32.29 -       0,    0, // properties
   32.30 -       0,    0, // enums/sets
   32.31 -
   32.32 - // signals: signature, parameters, type, tag, flags
   32.33 -      13,   12,   12,   12, 0x05,
   32.34 -
   32.35 - // slots: signature, parameters, type, tag, flags
   32.36 -      35,   12,   12,   12, 0x0a,
   32.37 -      51,   12,   12,   12, 0x0a,
   32.38 -      76,   71,   12,   12, 0x0a,
   32.39 -     117,   12,   12,   12, 0x0a,
   32.40 -     146,   12,   12,   12, 0x0a,
   32.41 -     171,   12,   12,   12, 0x0a,
   32.42 -     192,   12,   12,   12, 0x0a,
   32.43 -
   32.44 -       0        // eod
   32.45 -};
   32.46 -
   32.47 -static const char qt_meta_stringdata_DebugWidget[] = {
   32.48 -    "DebugWidget\0\0sendAppBundle(Bundle)\0getLog(QString)\0"
   32.49 -    "getStorageSize(int)\0list\0getConnectionList(QList<ConnectionInfo>)\0"
   32.50 -    "getBundleList(QList<Bundle>)\0forwardAppBundle(Bundle)\0"
   32.51 -    "getAppBundle(Bundle)\0getNodeList(QList<Node>)\0"
   32.52 -};
   32.53 -
   32.54 -const QMetaObject DebugWidget::staticMetaObject = {
   32.55 -    { &QWidget::staticMetaObject, qt_meta_stringdata_DebugWidget,
   32.56 -      qt_meta_data_DebugWidget, 0 }
   32.57 -};
   32.58 -
   32.59 -const QMetaObject *DebugWidget::metaObject() const
   32.60 -{
   32.61 -    return &staticMetaObject;
   32.62 -}
   32.63 -
   32.64 -void *DebugWidget::qt_metacast(const char *_clname)
   32.65 -{
   32.66 -    if (!_clname) return 0;
   32.67 -    if (!strcmp(_clname, qt_meta_stringdata_DebugWidget))
   32.68 -	return static_cast<void*>(const_cast<DebugWidget*>(this));
   32.69 -    return QWidget::qt_metacast(_clname);
   32.70 -}
   32.71 -
   32.72 -int DebugWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
   32.73 -{
   32.74 -    _id = QWidget::qt_metacall(_c, _id, _a);
   32.75 -    if (_id < 0)
   32.76 -        return _id;
   32.77 -    if (_c == QMetaObject::InvokeMetaMethod) {
   32.78 -        switch (_id) {
   32.79 -        case 0: sendAppBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
   32.80 -        case 1: getLog((*reinterpret_cast< QString(*)>(_a[1]))); break;
   32.81 -        case 2: getStorageSize((*reinterpret_cast< int(*)>(_a[1]))); break;
   32.82 -        case 3: getConnectionList((*reinterpret_cast< QList<ConnectionInfo>(*)>(_a[1]))); break;
   32.83 -        case 4: getBundleList((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
   32.84 -        case 5: forwardAppBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
   32.85 -        case 6: getAppBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
   32.86 -        case 7: getNodeList((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
   32.87 -        }
   32.88 -        _id -= 8;
   32.89 -    }
   32.90 -    return _id;
   32.91 -}
   32.92 -
   32.93 -// SIGNAL 0
   32.94 -void DebugWidget::sendAppBundle(Bundle _t1)
   32.95 -{
   32.96 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
   32.97 -    QMetaObject::activate(this, &staticMetaObject, 0, _a);
   32.98 -}
    33.1 --- a/Win32/moc_hello.cpp	Wed Jan 03 09:17:10 2007 +0000
    33.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    33.3 @@ -1,60 +0,0 @@
    33.4 -/****************************************************************************
    33.5 -** Meta object code from reading C++ file 'hello.h'
    33.6 -**
    33.7 -** Created: Wed Aug 9 11:25:39 2006
    33.8 -**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
    33.9 -**
   33.10 -** WARNING! All changes made in this file will be lost!
   33.11 -*****************************************************************************/
   33.12 -
   33.13 -#include "hello.h"
   33.14 -#if !defined(Q_MOC_OUTPUT_REVISION)
   33.15 -#error "The header file 'hello.h' doesn't include <QObject>."
   33.16 -#elif Q_MOC_OUTPUT_REVISION != 59
   33.17 -#error "This file was generated using the moc from 4.1.3. It"
   33.18 -#error "cannot be used with the include files from this version of Qt."
   33.19 -#error "(The moc has changed too much.)"
   33.20 -#endif
   33.21 -
   33.22 -static const uint qt_meta_data_Hello[] = {
   33.23 -
   33.24 - // content:
   33.25 -       1,       // revision
   33.26 -       0,       // classname
   33.27 -       0,    0, // classinfo
   33.28 -       0,    0, // methods
   33.29 -       0,    0, // properties
   33.30 -       0,    0, // enums/sets
   33.31 -
   33.32 -       0        // eod
   33.33 -};
   33.34 -
   33.35 -static const char qt_meta_stringdata_Hello[] = {
   33.36 -    "Hello\0"
   33.37 -};
   33.38 -
   33.39 -const QMetaObject Hello::staticMetaObject = {
   33.40 -    { &QObject::staticMetaObject, qt_meta_stringdata_Hello,
   33.41 -      qt_meta_data_Hello, 0 }
   33.42 -};
   33.43 -
   33.44 -const QMetaObject *Hello::metaObject() const
   33.45 -{
   33.46 -    return &staticMetaObject;
   33.47 -}
   33.48 -
   33.49 -void *Hello::qt_metacast(const char *_clname)
   33.50 -{
   33.51 -    if (!_clname) return 0;
   33.52 -    if (!strcmp(_clname, qt_meta_stringdata_Hello))
   33.53 -	return static_cast<void*>(const_cast<Hello*>(this));
   33.54 -    return QObject::qt_metacast(_clname);
   33.55 -}
   33.56 -
   33.57 -int Hello::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
   33.58 -{
   33.59 -    _id = QObject::qt_metacall(_c, _id, _a);
   33.60 -    if (_id < 0)
   33.61 -        return _id;
   33.62 -    return _id;
   33.63 -}
    34.1 --- a/Win32/moc_messageFile.cpp	Wed Jan 03 09:17:10 2007 +0000
    34.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    34.3 @@ -1,74 +0,0 @@
    34.4 -/****************************************************************************
    34.5 -** Meta object code from reading C++ file 'messageFile.h'
    34.6 -**
    34.7 -** Created: Wed Aug 9 11:25:38 2006
    34.8 -**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
    34.9 -**
   34.10 -** WARNING! All changes made in this file will be lost!
   34.11 -*****************************************************************************/
   34.12 -
   34.13 -#include "messageFile.h"
   34.14 -#if !defined(Q_MOC_OUTPUT_REVISION)
   34.15 -#error "The header file 'messageFile.h' doesn't include <QObject>."
   34.16 -#elif Q_MOC_OUTPUT_REVISION != 59
   34.17 -#error "This file was generated using the moc from 4.1.3. It"
   34.18 -#error "cannot be used with the include files from this version of Qt."
   34.19 -#error "(The moc has changed too much.)"
   34.20 -#endif
   34.21 -
   34.22 -static const uint qt_meta_data_MessageFile[] = {
   34.23 -
   34.24 - // content:
   34.25 -       1,       // revision
   34.26 -       0,       // classname
   34.27 -       0,    0, // classinfo
   34.28 -       3,   10, // methods
   34.29 -       0,    0, // properties
   34.30 -       0,    0, // enums/sets
   34.31 -
   34.32 - // slots: signature, parameters, type, tag, flags
   34.33 -      26,   13,   12,   12, 0x0a,
   34.34 -      60,   52,   12,   12, 0x0a,
   34.35 -      99,   82,   12,   12, 0x0a,
   34.36 -
   34.37 -       0        // eod
   34.38 -};
   34.39 -
   34.40 -static const char qt_meta_stringdata_MessageFile[] = {
   34.41 -    "MessageFile\0\0type,message\0saveMessage(int,QString&)\0message\0"
   34.42 -    "saveMessage(QString&)\0message,datetime\0saveMessage(QString&,bool)\0"
   34.43 -};
   34.44 -
   34.45 -const QMetaObject MessageFile::staticMetaObject = {
   34.46 -    { &QObject::staticMetaObject, qt_meta_stringdata_MessageFile,
   34.47 -      qt_meta_data_MessageFile, 0 }
   34.48 -};
   34.49 -
   34.50 -const QMetaObject *MessageFile::metaObject() const
   34.51 -{
   34.52 -    return &staticMetaObject;
   34.53 -}
   34.54 -
   34.55 -void *MessageFile::qt_metacast(const char *_clname)
   34.56 -{
   34.57 -    if (!_clname) return 0;
   34.58 -    if (!strcmp(_clname, qt_meta_stringdata_MessageFile))
   34.59 -	return static_cast<void*>(const_cast<MessageFile*>(this));
   34.60 -    return QObject::qt_metacast(_clname);
   34.61 -}
   34.62 -
   34.63 -int MessageFile::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
   34.64 -{
   34.65 -    _id = QObject::qt_metacall(_c, _id, _a);
   34.66 -    if (_id < 0)
   34.67 -        return _id;
   34.68 -    if (_c == QMetaObject::InvokeMetaMethod) {
   34.69 -        switch (_id) {
   34.70 -        case 0: saveMessage((*reinterpret_cast< int(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
   34.71 -        case 1: saveMessage((*reinterpret_cast< QString(*)>(_a[1]))); break;
   34.72 -        case 2: saveMessage((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break;
   34.73 -        }
   34.74 -        _id -= 3;
   34.75 -    }
   34.76 -    return _id;
   34.77 -}
    35.1 --- a/Win32/moc_msgWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
    35.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    35.3 @@ -1,90 +0,0 @@
    35.4 -/****************************************************************************
    35.5 -** Meta object code from reading C++ file 'msgWidget.h'
    35.6 -**
    35.7 -** Created: Wed Aug 9 11:25:24 2006
    35.8 -**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
    35.9 -**
   35.10 -** WARNING! All changes made in this file will be lost!
   35.11 -*****************************************************************************/
   35.12 -
   35.13 -#include "msgWidget.h"
   35.14 -#if !defined(Q_MOC_OUTPUT_REVISION)
   35.15 -#error "The header file 'msgWidget.h' doesn't include <QObject>."
   35.16 -#elif Q_MOC_OUTPUT_REVISION != 59
   35.17 -#error "This file was generated using the moc from 4.1.3. It"
   35.18 -#error "cannot be used with the include files from this version of Qt."
   35.19 -#error "(The moc has changed too much.)"
   35.20 -#endif
   35.21 -
   35.22 -static const uint qt_meta_data_MsgWidget[] = {
   35.23 -
   35.24 - // content:
   35.25 -       1,       // revision
   35.26 -       0,       // classname
   35.27 -       0,    0, // classinfo
   35.28 -       6,   10, // methods
   35.29 -       0,    0, // properties
   35.30 -       0,    0, // enums/sets
   35.31 -
   35.32 - // signals: signature, parameters, type, tag, flags
   35.33 -      11,   10,   10,   10, 0x05,
   35.34 -
   35.35 - // slots: signature, parameters, type, tag, flags
   35.36 -      30,   10,   10,   10, 0x0a,
   35.37 -      56,   46,   10,   10, 0x0a,
   35.38 -      74,   10,   10,   10, 0x0a,
   35.39 -      92,   88,   10,   10, 0x0a,
   35.40 -     122,   10,   10,   10, 0x0a,
   35.41 -
   35.42 -       0        // eod
   35.43 -};
   35.44 -
   35.45 -static const char qt_meta_stringdata_MsgWidget[] = {
   35.46 -    "MsgWidget\0\0sendBundle(Bundle)\0composeBundle()\0newBundle\0"
   35.47 -    "getBundle(Bundle)\0updateLists()\0ptr\0updatedNodeList(NodeManager*)\0"
   35.48 -    "showMsg(QListWidgetItem*)\0"
   35.49 -};
   35.50 -
   35.51 -const QMetaObject MsgWidget::staticMetaObject = {
   35.52 -    { &QWidget::staticMetaObject, qt_meta_stringdata_MsgWidget,
   35.53 -      qt_meta_data_MsgWidget, 0 }
   35.54 -};
   35.55 -
   35.56 -const QMetaObject *MsgWidget::metaObject() const
   35.57 -{
   35.58 -    return &staticMetaObject;
   35.59 -}
   35.60 -
   35.61 -void *MsgWidget::qt_metacast(const char *_clname)
   35.62 -{
   35.63 -    if (!_clname) return 0;
   35.64 -    if (!strcmp(_clname, qt_meta_stringdata_MsgWidget))
   35.65 -	return static_cast<void*>(const_cast<MsgWidget*>(this));
   35.66 -    return QWidget::qt_metacast(_clname);
   35.67 -}
   35.68 -
   35.69 -int MsgWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
   35.70 -{
   35.71 -    _id = QWidget::qt_metacall(_c, _id, _a);
   35.72 -    if (_id < 0)
   35.73 -        return _id;
   35.74 -    if (_c == QMetaObject::InvokeMetaMethod) {
   35.75 -        switch (_id) {
   35.76 -        case 0: sendBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
   35.77 -        case 1: composeBundle(); break;
   35.78 -        case 2: getBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
   35.79 -        case 3: updateLists(); break;
   35.80 -        case 4: updatedNodeList((*reinterpret_cast< NodeManager*(*)>(_a[1]))); break;
   35.81 -        case 5: showMsg((*reinterpret_cast< QListWidgetItem*(*)>(_a[1]))); break;
   35.82 -        }
   35.83 -        _id -= 6;
   35.84 -    }
   35.85 -    return _id;
   35.86 -}
   35.87 -
   35.88 -// SIGNAL 0
   35.89 -void MsgWidget::sendBundle(Bundle _t1)
   35.90 -{
   35.91 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
   35.92 -    QMetaObject::activate(this, &staticMetaObject, 0, _a);
   35.93 -}
    36.1 --- a/Win32/moc_neighbourAwareness.cpp	Wed Jan 03 09:17:10 2007 +0000
    36.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    36.3 @@ -1,212 +0,0 @@
    36.4 -/****************************************************************************
    36.5 -** Meta object code from reading C++ file 'neighbourAwareness.h'
    36.6 -**
    36.7 -** Created: Wed Aug 9 11:25:20 2006
    36.8 -**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
    36.9 -**
   36.10 -** WARNING! All changes made in this file will be lost!
   36.11 -*****************************************************************************/
   36.12 -
   36.13 -#include "neighbourAwareness.h"
   36.14 -#if !defined(Q_MOC_OUTPUT_REVISION)
   36.15 -#error "The header file 'neighbourAwareness.h' doesn't include <QObject>."
   36.16 -#elif Q_MOC_OUTPUT_REVISION != 59
   36.17 -#error "This file was generated using the moc from 4.1.3. It"
   36.18 -#error "cannot be used with the include files from this version of Qt."
   36.19 -#error "(The moc has changed too much.)"
   36.20 -#endif
   36.21 -
   36.22 -static const uint qt_meta_data_ConnectionInfo[] = {
   36.23 -
   36.24 - // content:
   36.25 -       1,       // revision
   36.26 -       0,       // classname
   36.27 -       0,    0, // classinfo
   36.28 -       0,    0, // methods
   36.29 -       0,    0, // properties
   36.30 -       0,    0, // enums/sets
   36.31 -
   36.32 -       0        // eod
   36.33 -};
   36.34 -
   36.35 -static const char qt_meta_stringdata_ConnectionInfo[] = {
   36.36 -    "ConnectionInfo\0"
   36.37 -};
   36.38 -
   36.39 -const QMetaObject ConnectionInfo::staticMetaObject = {
   36.40 -    { &QObject::staticMetaObject, qt_meta_stringdata_ConnectionInfo,
   36.41 -      qt_meta_data_ConnectionInfo, 0 }
   36.42 -};
   36.43 -
   36.44 -const QMetaObject *ConnectionInfo::metaObject() const
   36.45 -{
   36.46 -    return &staticMetaObject;
   36.47 -}
   36.48 -
   36.49 -void *ConnectionInfo::qt_metacast(const char *_clname)
   36.50 -{
   36.51 -    if (!_clname) return 0;
   36.52 -    if (!strcmp(_clname, qt_meta_stringdata_ConnectionInfo))
   36.53 -	return static_cast<void*>(const_cast<ConnectionInfo*>(this));
   36.54 -    return QObject::qt_metacast(_clname);
   36.55 -}
   36.56 -
   36.57 -int ConnectionInfo::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
   36.58 -{
   36.59 -    _id = QObject::qt_metacall(_c, _id, _a);
   36.60 -    if (_id < 0)
   36.61 -        return _id;
   36.62 -    return _id;
   36.63 -}
   36.64 -static const uint qt_meta_data_NeighAwareServer[] = {
   36.65 -
   36.66 - // content:
   36.67 -       1,       // revision
   36.68 -       0,       // classname
   36.69 -       0,    0, // classinfo
   36.70 -       2,   10, // methods
   36.71 -       0,    0, // properties
   36.72 -       0,    0, // enums/sets
   36.73 -
   36.74 - // signals: signature, parameters, type, tag, flags
   36.75 -      48,   18,   17,   17, 0x05,
   36.76 -
   36.77 - // slots: signature, parameters, type, tag, flags
   36.78 -     109,   92,   17,   17, 0x09,
   36.79 -
   36.80 -       0        // eod
   36.81 -};
   36.82 -
   36.83 -static const char qt_meta_stringdata_NeighAwareServer[] = {
   36.84 -    "NeighAwareServer\0\0newSocket,permitNewConnection\0"
   36.85 -    "newConnectionEstablished(QTcpSocket*,bool&)\0socketDescripton\0"
   36.86 -    "incomingConnection(int)\0"
   36.87 -};
   36.88 -
   36.89 -const QMetaObject NeighAwareServer::staticMetaObject = {
   36.90 -    { &QTcpServer::staticMetaObject, qt_meta_stringdata_NeighAwareServer,
   36.91 -      qt_meta_data_NeighAwareServer, 0 }
   36.92 -};
   36.93 -
   36.94 -const QMetaObject *NeighAwareServer::metaObject() const
   36.95 -{
   36.96 -    return &staticMetaObject;
   36.97 -}
   36.98 -
   36.99 -void *NeighAwareServer::qt_metacast(const char *_clname)
  36.100 -{
  36.101 -    if (!_clname) return 0;
  36.102 -    if (!strcmp(_clname, qt_meta_stringdata_NeighAwareServer))
  36.103 -	return static_cast<void*>(const_cast<NeighAwareServer*>(this));
  36.104 -    return QTcpServer::qt_metacast(_clname);
  36.105 -}
  36.106 -
  36.107 -int NeighAwareServer::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  36.108 -{
  36.109 -    _id = QTcpServer::qt_metacall(_c, _id, _a);
  36.110 -    if (_id < 0)
  36.111 -        return _id;
  36.112 -    if (_c == QMetaObject::InvokeMetaMethod) {
  36.113 -        switch (_id) {
  36.114 -        case 0: newConnectionEstablished((*reinterpret_cast< QTcpSocket*(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break;
  36.115 -        case 1: incomingConnection((*reinterpret_cast< int(*)>(_a[1]))); break;
  36.116 -        }
  36.117 -        _id -= 2;
  36.118 -    }
  36.119 -    return _id;
  36.120 -}
  36.121 -
  36.122 -// SIGNAL 0
  36.123 -void NeighAwareServer::newConnectionEstablished(QTcpSocket * _t1, bool & _t2)
  36.124 -{
  36.125 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)), const_cast<void*>(reinterpret_cast<const void*>(&_t2)) };
  36.126 -    QMetaObject::activate(this, &staticMetaObject, 0, _a);
  36.127 -}
  36.128 -static const uint qt_meta_data_NeighAware[] = {
  36.129 -
  36.130 - // content:
  36.131 -       1,       // revision
  36.132 -       0,       // classname
  36.133 -       0,    0, // classinfo
  36.134 -       9,   10, // methods
  36.135 -       0,    0, // properties
  36.136 -       0,    0, // enums/sets
  36.137 -
  36.138 - // signals: signature, parameters, type, tag, flags
  36.139 -      12,   11,   11,   11, 0x05,
  36.140 -      52,   11,   11,   11, 0x05,
  36.141 -
  36.142 - // slots: signature, parameters, type, tag, flags
  36.143 -     107,   77,   11,   11, 0x0a,
  36.144 -     151,   11,   11,   11, 0x0a,
  36.145 -     193,   11,   11,   11, 0x0a,
  36.146 -     208,   11,   11,   11, 0x0a,
  36.147 -     239,  228,   11,   11, 0x0a,
  36.148 -     264,   11,   11,   11, 0x0a,
  36.149 -     290,   11,   11,   11, 0x0a,
  36.150 -
  36.151 -       0        // eod
  36.152 -};
  36.153 -
  36.154 -static const char qt_meta_stringdata_NeighAware[] = {
  36.155 -    "NeighAware\0\0sendDebugConList(QList<ConnectionInfo>)\0"
  36.156 -    "passDatagram(DataPacket)\0newSocket,permitNewConnection\0"
  36.157 -    "newConnectionEstablished(QTcpSocket*,bool&)\0"
  36.158 -    "errorDecode(QAbstractSocket::SocketError)\0stateChanged()\0"
  36.159 -    "broadcastDatagram()\0datapacket\0sendDatagram(DataPacket)\0"
  36.160 -    "processPendingDatagrams()\0processPingDatagrams()\0"
  36.161 -};
  36.162 -
  36.163 -const QMetaObject NeighAware::staticMetaObject = {
  36.164 -    { &QObject::staticMetaObject, qt_meta_stringdata_NeighAware,
  36.165 -      qt_meta_data_NeighAware, 0 }
  36.166 -};
  36.167 -
  36.168 -const QMetaObject *NeighAware::metaObject() const
  36.169 -{
  36.170 -    return &staticMetaObject;
  36.171 -}
  36.172 -
  36.173 -void *NeighAware::qt_metacast(const char *_clname)
  36.174 -{
  36.175 -    if (!_clname) return 0;
  36.176 -    if (!strcmp(_clname, qt_meta_stringdata_NeighAware))
  36.177 -	return static_cast<void*>(const_cast<NeighAware*>(this));
  36.178 -    return QObject::qt_metacast(_clname);
  36.179 -}
  36.180 -
  36.181 -int NeighAware::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  36.182 -{
  36.183 -    _id = QObject::qt_metacall(_c, _id, _a);
  36.184 -    if (_id < 0)
  36.185 -        return _id;
  36.186 -    if (_c == QMetaObject::InvokeMetaMethod) {
  36.187 -        switch (_id) {
  36.188 -        case 0: sendDebugConList((*reinterpret_cast< QList<ConnectionInfo>(*)>(_a[1]))); break;
  36.189 -        case 1: passDatagram((*reinterpret_cast< DataPacket(*)>(_a[1]))); break;
  36.190 -        case 2: newConnectionEstablished((*reinterpret_cast< QTcpSocket*(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break;
  36.191 -        case 3: errorDecode((*reinterpret_cast< QAbstractSocket::SocketError(*)>(_a[1]))); break;
  36.192 -        case 4: stateChanged(); break;
  36.193 -        case 5: broadcastDatagram(); break;
  36.194 -        case 6: sendDatagram((*reinterpret_cast< DataPacket(*)>(_a[1]))); break;
  36.195 -        case 7: processPendingDatagrams(); break;
  36.196 -        case 8: processPingDatagrams(); break;
  36.197 -        }
  36.198 -        _id -= 9;
  36.199 -    }
  36.200 -    return _id;
  36.201 -}
  36.202 -
  36.203 -// SIGNAL 0
  36.204 -void NeighAware::sendDebugConList(QList<ConnectionInfo> _t1)
  36.205 -{
  36.206 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  36.207 -    QMetaObject::activate(this, &staticMetaObject, 0, _a);
  36.208 -}
  36.209 -
  36.210 -// SIGNAL 1
  36.211 -void NeighAware::passDatagram(DataPacket _t1)
  36.212 -{
  36.213 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  36.214 -    QMetaObject::activate(this, &staticMetaObject, 1, _a);
  36.215 -}
    37.1 --- a/Win32/moc_node.cpp	Wed Jan 03 09:17:10 2007 +0000
    37.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    37.3 @@ -1,60 +0,0 @@
    37.4 -/****************************************************************************
    37.5 -** Meta object code from reading C++ file 'node.h'
    37.6 -**
    37.7 -** Created: Wed Aug 9 11:25:32 2006
    37.8 -**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
    37.9 -**
   37.10 -** WARNING! All changes made in this file will be lost!
   37.11 -*****************************************************************************/
   37.12 -
   37.13 -#include "node.h"
   37.14 -#if !defined(Q_MOC_OUTPUT_REVISION)
   37.15 -#error "The header file 'node.h' doesn't include <QObject>."
   37.16 -#elif Q_MOC_OUTPUT_REVISION != 59
   37.17 -#error "This file was generated using the moc from 4.1.3. It"
   37.18 -#error "cannot be used with the include files from this version of Qt."
   37.19 -#error "(The moc has changed too much.)"
   37.20 -#endif
   37.21 -
   37.22 -static const uint qt_meta_data_Node[] = {
   37.23 -
   37.24 - // content:
   37.25 -       1,       // revision
   37.26 -       0,       // classname
   37.27 -       0,    0, // classinfo
   37.28 -       0,    0, // methods
   37.29 -       0,    0, // properties
   37.30 -       0,    0, // enums/sets
   37.31 -
   37.32 -       0        // eod
   37.33 -};
   37.34 -
   37.35 -static const char qt_meta_stringdata_Node[] = {
   37.36 -    "Node\0"
   37.37 -};
   37.38 -
   37.39 -const QMetaObject Node::staticMetaObject = {
   37.40 -    { &QObject::staticMetaObject, qt_meta_stringdata_Node,
   37.41 -      qt_meta_data_Node, 0 }
   37.42 -};
   37.43 -
   37.44 -const QMetaObject *Node::metaObject() const
   37.45 -{
   37.46 -    return &staticMetaObject;
   37.47 -}
   37.48 -
   37.49 -void *Node::qt_metacast(const char *_clname)
   37.50 -{
   37.51 -    if (!_clname) return 0;
   37.52 -    if (!strcmp(_clname, qt_meta_stringdata_Node))
   37.53 -	return static_cast<void*>(const_cast<Node*>(this));
   37.54 -    return QObject::qt_metacast(_clname);
   37.55 -}
   37.56 -
   37.57 -int Node::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
   37.58 -{
   37.59 -    _id = QObject::qt_metacall(_c, _id, _a);
   37.60 -    if (_id < 0)
   37.61 -        return _id;
   37.62 -    return _id;
   37.63 -}
    38.1 --- a/Win32/moc_nodeManager.cpp	Wed Jan 03 09:17:10 2007 +0000
    38.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    38.3 @@ -1,94 +0,0 @@
    38.4 -/****************************************************************************
    38.5 -** Meta object code from reading C++ file 'nodeManager.h'
    38.6 -**
    38.7 -** Created: Wed Aug 9 11:25:33 2006
    38.8 -**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
    38.9 -**
   38.10 -** WARNING! All changes made in this file will be lost!
   38.11 -*****************************************************************************/
   38.12 -
   38.13 -#include "nodeManager.h"
   38.14 -#if !defined(Q_MOC_OUTPUT_REVISION)
   38.15 -#error "The header file 'nodeManager.h' doesn't include <QObject>."
   38.16 -#elif Q_MOC_OUTPUT_REVISION != 59
   38.17 -#error "This file was generated using the moc from 4.1.3. It"
   38.18 -#error "cannot be used with the include files from this version of Qt."
   38.19 -#error "(The moc has changed too much.)"
   38.20 -#endif
   38.21 -
   38.22 -static const uint qt_meta_data_NodeManager[] = {
   38.23 -
   38.24 - // content:
   38.25 -       1,       // revision
   38.26 -       0,       // classname
   38.27 -       0,    0, // classinfo
   38.28 -       5,   10, // methods
   38.29 -       0,    0, // properties
   38.30 -       0,    0, // enums/sets
   38.31 -
   38.32 - // signals: signature, parameters, type, tag, flags
   38.33 -      13,   12,   12,   12, 0x05,
   38.34 -      44,   12,   12,   12, 0x05,
   38.35 -
   38.36 - // slots: signature, parameters, type, tag, flags
   38.37 -      74,   12,   12,   12, 0x0a,
   38.38 -      82,   12,   12,   12, 0x0a,
   38.39 -      95,   12,   12,   12, 0x0a,
   38.40 -
   38.41 -       0        // eod
   38.42 -};
   38.43 -
   38.44 -static const char qt_meta_stringdata_NodeManager[] = {
   38.45 -    "NodeManager\0\0sendDebugNodeList(QList<Node>)\0"
   38.46 -    "updatedNodeList(NodeManager*)\0aging()\0saveToFile()\0readFromFile()\0"
   38.47 -};
   38.48 -
   38.49 -const QMetaObject NodeManager::staticMetaObject = {
   38.50 -    { &QObject::staticMetaObject, qt_meta_stringdata_NodeManager,
   38.51 -      qt_meta_data_NodeManager, 0 }
   38.52 -};
   38.53 -
   38.54 -const QMetaObject *NodeManager::metaObject() const
   38.55 -{
   38.56 -    return &staticMetaObject;
   38.57 -}
   38.58 -
   38.59 -void *NodeManager::qt_metacast(const char *_clname)
   38.60 -{
   38.61 -    if (!_clname) return 0;
   38.62 -    if (!strcmp(_clname, qt_meta_stringdata_NodeManager))
   38.63 -	return static_cast<void*>(const_cast<NodeManager*>(this));
   38.64 -    return QObject::qt_metacast(_clname);
   38.65 -}
   38.66 -
   38.67 -int NodeManager::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
   38.68 -{
   38.69 -    _id = QObject::qt_metacall(_c, _id, _a);
   38.70 -    if (_id < 0)
   38.71 -        return _id;
   38.72 -    if (_c == QMetaObject::InvokeMetaMethod) {
   38.73 -        switch (_id) {
   38.74 -        case 0: sendDebugNodeList((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
   38.75 -        case 1: updatedNodeList((*reinterpret_cast< NodeManager*(*)>(_a[1]))); break;
   38.76 -        case 2: aging(); break;
   38.77 -        case 3: saveToFile(); break;
   38.78 -        case 4: readFromFile(); break;
   38.79 -        }
   38.80 -        _id -= 5;
   38.81 -    }
   38.82 -    return _id;
   38.83 -}
   38.84 -
   38.85 -// SIGNAL 0
   38.86 -void NodeManager::sendDebugNodeList(QList<Node> _t1)
   38.87 -{
   38.88 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
   38.89 -    QMetaObject::activate(this, &staticMetaObject, 0, _a);
   38.90 -}
   38.91 -
   38.92 -// SIGNAL 1
   38.93 -void NodeManager::updatedNodeList(NodeManager * _t1)
   38.94 -{
   38.95 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
   38.96 -    QMetaObject::activate(this, &staticMetaObject, 1, _a);
   38.97 -}
    39.1 --- a/Win32/moc_readFile.cpp	Wed Jan 03 09:17:10 2007 +0000
    39.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    39.3 @@ -1,60 +0,0 @@
    39.4 -/****************************************************************************
    39.5 -** Meta object code from reading C++ file 'readFile.h'
    39.6 -**
    39.7 -** Created: Wed Aug 9 11:25:42 2006
    39.8 -**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
    39.9 -**
   39.10 -** WARNING! All changes made in this file will be lost!
   39.11 -*****************************************************************************/
   39.12 -
   39.13 -#include "readFile.h"
   39.14 -#if !defined(Q_MOC_OUTPUT_REVISION)
   39.15 -#error "The header file 'readFile.h' doesn't include <QObject>."
   39.16 -#elif Q_MOC_OUTPUT_REVISION != 59
   39.17 -#error "This file was generated using the moc from 4.1.3. It"
   39.18 -#error "cannot be used with the include files from this version of Qt."
   39.19 -#error "(The moc has changed too much.)"
   39.20 -#endif
   39.21 -
   39.22 -static const uint qt_meta_data_ReadFile[] = {
   39.23 -
   39.24 - // content:
   39.25 -       1,       // revision
   39.26 -       0,       // classname
   39.27 -       0,    0, // classinfo
   39.28 -       0,    0, // methods
   39.29 -       0,    0, // properties
   39.30 -       0,    0, // enums/sets
   39.31 -
   39.32 -       0        // eod
   39.33 -};
   39.34 -
   39.35 -static const char qt_meta_stringdata_ReadFile[] = {
   39.36 -    "ReadFile\0"
   39.37 -};
   39.38 -
   39.39 -const QMetaObject ReadFile::staticMetaObject = {
   39.40 -    { &QObject::staticMetaObject, qt_meta_stringdata_ReadFile,
   39.41 -      qt_meta_data_ReadFile, 0 }
   39.42 -};
   39.43 -
   39.44 -const QMetaObject *ReadFile::metaObject() const
   39.45 -{
   39.46 -    return &staticMetaObject;
   39.47 -}
   39.48 -
   39.49 -void *ReadFile::qt_metacast(const char *_clname)
   39.50 -{
   39.51 -    if (!_clname) return 0;
   39.52 -    if (!strcmp(_clname, qt_meta_stringdata_ReadFile))
   39.53 -	return static_cast<void*>(const_cast<ReadFile*>(this));
   39.54 -    return QObject::qt_metacast(_clname);
   39.55 -}
   39.56 -
   39.57 -int ReadFile::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
   39.58 -{
   39.59 -    _id = QObject::qt_metacall(_c, _id, _a);
   39.60 -    if (_id < 0)
   39.61 -        return _id;
   39.62 -    return _id;
   39.63 -}
    40.1 --- a/Win32/moc_tcpClient.cpp	Wed Jan 03 09:17:10 2007 +0000
    40.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    40.3 @@ -1,105 +0,0 @@
    40.4 -/****************************************************************************
    40.5 -** Meta object code from reading C++ file 'tcpClient.h'
    40.6 -**
    40.7 -** Created: Wed Aug 9 11:25:45 2006
    40.8 -**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
    40.9 -**
   40.10 -** WARNING! All changes made in this file will be lost!
   40.11 -*****************************************************************************/
   40.12 -
   40.13 -#include "tcpClient.h"
   40.14 -#if !defined(Q_MOC_OUTPUT_REVISION)
   40.15 -#error "The header file 'tcpClient.h' doesn't include <QObject>."
   40.16 -#elif Q_MOC_OUTPUT_REVISION != 59
   40.17 -#error "This file was generated using the moc from 4.1.3. It"
   40.18 -#error "cannot be used with the include files from this version of Qt."
   40.19 -#error "(The moc has changed too much.)"
   40.20 -#endif
   40.21 -
   40.22 -static const uint qt_meta_data_TcpClient[] = {
   40.23 -
   40.24 - // content:
   40.25 -       1,       // revision
   40.26 -       0,       // classname
   40.27 -       0,    0, // classinfo
   40.28 -       7,   10, // methods
   40.29 -       0,    0, // properties
   40.30 -       0,    0, // enums/sets
   40.31 -
   40.32 - // signals: signature, parameters, type, tag, flags
   40.33 -      16,   11,   10,   10, 0x05,
   40.34 -      38,   10,   10,   10, 0x05,
   40.35 -      50,   10,   10,   10, 0x05,
   40.36 -
   40.37 - // slots: signature, parameters, type, tag, flags
   40.38 -      65,   10,   10,   10, 0x0a,
   40.39 -      89,   83,   10,   10, 0x0a,
   40.40 -     142,  136,   10,   10, 0x0a,
   40.41 -     182,   10,   10,   10, 0x0a,
   40.42 -
   40.43 -       0        // eod
   40.44 -};
   40.45 -
   40.46 -static const char qt_meta_stringdata_TcpClient[] = {
   40.47 -    "TcpClient\0\0answ\0newAnswer(QByteArray)\0connected()\0disconnected()\0"
   40.48 -    "reconnectToHost()\0state\0"
   40.49 -    "hostStateChanged(QAbstractSocket::SocketState)\0error\0"
   40.50 -    "hostError(QAbstractSocket::SocketError)\0hostReadyRead()\0"
   40.51 -};
   40.52 -
   40.53 -const QMetaObject TcpClient::staticMetaObject = {
   40.54 -    { &QTcpSocket::staticMetaObject, qt_meta_stringdata_TcpClient,
   40.55 -      qt_meta_data_TcpClient, 0 }
   40.56 -};
   40.57 -
   40.58 -const QMetaObject *TcpClient::metaObject() const
   40.59 -{
   40.60 -    return &staticMetaObject;
   40.61 -}
   40.62 -
   40.63 -void *TcpClient::qt_metacast(const char *_clname)
   40.64 -{
   40.65 -    if (!_clname) return 0;
   40.66 -    if (!strcmp(_clname, qt_meta_stringdata_TcpClient))
   40.67 -	return static_cast<void*>(const_cast<TcpClient*>(this));
   40.68 -    return QTcpSocket::qt_metacast(_clname);
   40.69 -}
   40.70 -
   40.71 -int TcpClient::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
   40.72 -{
   40.73 -    _id = QTcpSocket::qt_metacall(_c, _id, _a);
   40.74 -    if (_id < 0)
   40.75 -        return _id;
   40.76 -    if (_c == QMetaObject::InvokeMetaMethod) {
   40.77 -        switch (_id) {
   40.78 -        case 0: newAnswer((*reinterpret_cast< QByteArray(*)>(_a[1]))); break;
   40.79 -        case 1: connected(); break;
   40.80 -        case 2: disconnected(); break;
   40.81 -        case 3: reconnectToHost(); break;
   40.82 -        case 4: hostStateChanged((*reinterpret_cast< QAbstractSocket::SocketState(*)>(_a[1]))); break;
   40.83 -        case 5: hostError((*reinterpret_cast< QAbstractSocket::SocketError(*)>(_a[1]))); break;
   40.84 -        case 6: hostReadyRead(); break;
   40.85 -        }
   40.86 -        _id -= 7;
   40.87 -    }
   40.88 -    return _id;
   40.89 -}
   40.90 -
   40.91 -// SIGNAL 0
   40.92 -void TcpClient::newAnswer(QByteArray _t1)
   40.93 -{
   40.94 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
   40.95 -    QMetaObject::activate(this, &staticMetaObject, 0, _a);
   40.96 -}
   40.97 -
   40.98 -// SIGNAL 1
   40.99 -void TcpClient::connected()
  40.100 -{
  40.101 -    QMetaObject::activate(this, &staticMetaObject, 1, 0);
  40.102 -}
  40.103 -
  40.104 -// SIGNAL 2
  40.105 -void TcpClient::disconnected()
  40.106 -{
  40.107 -    QMetaObject::activate(this, &staticMetaObject, 2, 0);
  40.108 -}
    41.1 --- a/Win32/moc_tlv.cpp	Wed Jan 03 09:17:10 2007 +0000
    41.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    41.3 @@ -1,152 +0,0 @@
    41.4 -/****************************************************************************
    41.5 -** Meta object code from reading C++ file 'tlv.h'
    41.6 -**
    41.7 -** Created: Wed Aug 9 11:25:36 2006
    41.8 -**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
    41.9 -**
   41.10 -** WARNING! All changes made in this file will be lost!
   41.11 -*****************************************************************************/
   41.12 -
   41.13 -#include "tlv.h"
   41.14 -#if !defined(Q_MOC_OUTPUT_REVISION)
   41.15 -#error "The header file 'tlv.h' doesn't include <QObject>."
   41.16 -#elif Q_MOC_OUTPUT_REVISION != 59
   41.17 -#error "This file was generated using the moc from 4.1.3. It"
   41.18 -#error "cannot be used with the include files from this version of Qt."
   41.19 -#error "(The moc has changed too much.)"
   41.20 -#endif
   41.21 -
   41.22 -static const uint qt_meta_data_TLV[] = {
   41.23 -
   41.24 - // content:
   41.25 -       1,       // revision
   41.26 -       0,       // classname
   41.27 -       0,    0, // classinfo
   41.28 -      14,   10, // methods
   41.29 -       0,    0, // properties
   41.30 -       0,    0, // enums/sets
   41.31 -
   41.32 - // signals: signature, parameters, type, tag, flags
   41.33 -       5,    4,    4,    4, 0x05,
   41.34 -      30,    4,    4,    4, 0x05,
   41.35 -      47,    4,    4,    4, 0x05,
   41.36 -      75,    4,    4,    4, 0x05,
   41.37 -      96,    4,    4,    4, 0x05,
   41.38 -     127,    4,    4,    4, 0x05,
   41.39 -     160,    4,    4,    4, 0x05,
   41.40 -
   41.41 - // slots: signature, parameters, type, tag, flags
   41.42 -     190,    4,    4,    4, 0x0a,
   41.43 -     210,    4,    4,    4, 0x0a,
   41.44 -     238,    4,    4,    4, 0x0a,
   41.45 -     268,    4,    4,    4, 0x0a,
   41.46 -     291,    4,    4,    4, 0x0a,
   41.47 -     324,    4,    4,    4, 0x0a,
   41.48 -     359,    4,    4,    4, 0x0a,
   41.49 -
   41.50 -       0        // eod
   41.51 -};
   41.52 -
   41.53 -static const char qt_meta_stringdata_TLV[] = {
   41.54 -    "TLV\0\0sendDatagram(QByteArray)\0sendHello(Hello)\0"
   41.55 -    "sendDictionary(QList<Node>)\0sendRIB(QList<Node>)\0"
   41.56 -    "sendBundleOffer(QList<Bundle>)\0sendBundleRequest(QList<Bundle>)\0"
   41.57 -    "sendBundleData(QList<Bundle>)\0receiveHello(Hello)\0"
   41.58 -    "receiveDatagram(QByteArray)\0createDictionary(QList<Node>)\0"
   41.59 -    "createRIB(QList<Node>)\0createBundleOffer(QList<Bundle>)\0"
   41.60 -    "createBundleRequest(QList<Bundle>)\0createBundleData(QList<Bundle>)\0"
   41.61 -};
   41.62 -
   41.63 -const QMetaObject TLV::staticMetaObject = {
   41.64 -    { &QObject::staticMetaObject, qt_meta_stringdata_TLV,
   41.65 -      qt_meta_data_TLV, 0 }
   41.66 -};
   41.67 -
   41.68 -const QMetaObject *TLV::metaObject() const
   41.69 -{
   41.70 -    return &staticMetaObject;
   41.71 -}
   41.72 -
   41.73 -void *TLV::qt_metacast(const char *_clname)
   41.74 -{
   41.75 -    if (!_clname) return 0;
   41.76 -    if (!strcmp(_clname, qt_meta_stringdata_TLV))
   41.77 -	return static_cast<void*>(const_cast<TLV*>(this));
   41.78 -    return QObject::qt_metacast(_clname);
   41.79 -}
   41.80 -
   41.81 -int TLV::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
   41.82 -{
   41.83 -    _id = QObject::qt_metacall(_c, _id, _a);
   41.84 -    if (_id < 0)
   41.85 -        return _id;
   41.86 -    if (_c == QMetaObject::InvokeMetaMethod) {
   41.87 -        switch (_id) {
   41.88 -        case 0: sendDatagram((*reinterpret_cast< QByteArray(*)>(_a[1]))); break;
   41.89 -        case 1: sendHello((*reinterpret_cast< Hello(*)>(_a[1]))); break;
   41.90 -        case 2: sendDictionary((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
   41.91 -        case 3: sendRIB((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
   41.92 -        case 4: sendBundleOffer((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
   41.93 -        case 5: sendBundleRequest((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
   41.94 -        case 6: sendBundleData((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
   41.95 -        case 7: receiveHello((*reinterpret_cast< Hello(*)>(_a[1]))); break;
   41.96 -        case 8: receiveDatagram((*reinterpret_cast< QByteArray(*)>(_a[1]))); break;
   41.97 -        case 9: createDictionary((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
   41.98 -        case 10: createRIB((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
   41.99 -        case 11: createBundleOffer((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  41.100 -        case 12: createBundleRequest((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  41.101 -        case 13: createBundleData((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  41.102 -        }
  41.103 -        _id -= 14;
  41.104 -    }
  41.105 -    return _id;
  41.106 -}
  41.107 -
  41.108 -// SIGNAL 0
  41.109 -void TLV::sendDatagram(QByteArray _t1)
  41.110 -{
  41.111 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  41.112 -    QMetaObject::activate(this, &staticMetaObject, 0, _a);
  41.113 -}
  41.114 -
  41.115 -// SIGNAL 1
  41.116 -void TLV::sendHello(Hello _t1)
  41.117 -{
  41.118 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  41.119 -    QMetaObject::activate(this, &staticMetaObject, 1, _a);
  41.120 -}
  41.121 -
  41.122 -// SIGNAL 2
  41.123 -void TLV::sendDictionary(QList<Node> _t1)
  41.124 -{
  41.125 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  41.126 -    QMetaObject::activate(this, &staticMetaObject, 2, _a);
  41.127 -}
  41.128 -
  41.129 -// SIGNAL 3
  41.130 -void TLV::sendRIB(QList<Node> _t1)
  41.131 -{
  41.132 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  41.133 -    QMetaObject::activate(this, &staticMetaObject, 3, _a);
  41.134 -}
  41.135 -
  41.136 -// SIGNAL 4
  41.137 -void TLV::sendBundleOffer(QList<Bundle> _t1)
  41.138 -{
  41.139 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  41.140 -    QMetaObject::activate(this, &staticMetaObject, 4, _a);
  41.141 -}
  41.142 -
  41.143 -// SIGNAL 5
  41.144 -void TLV::sendBundleRequest(QList<Bundle> _t1)
  41.145 -{
  41.146 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  41.147 -    QMetaObject::activate(this, &staticMetaObject, 5, _a);
  41.148 -}
  41.149 -
  41.150 -// SIGNAL 6
  41.151 -void TLV::sendBundleData(QList<Bundle> _t1)
  41.152 -{
  41.153 -    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  41.154 -    QMetaObject::activate(this, &staticMetaObject, 6, _a);
  41.155 -}
    42.1 --- a/Win32/msgWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
    42.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    42.3 @@ -1,205 +0,0 @@
    42.4 -#include <QtGui>
    42.5 -#include <msgWidget.h>
    42.6 -#include <readFile.h>
    42.7 -
    42.8 -
    42.9 -
   42.10 -MsgWidget::MsgWidget(NodeManager* nodeMng,QWidget *parent)
   42.11 -        : QWidget(parent)
   42.12 -{
   42.13 -	setFixedSize(990, 660);
   42.14 -	nodeManager = nodeMng;
   42.15 -	connect(nodeMng,SIGNAL(updatedNodeList(NodeManager*)),this,SLOT(updatedNodeList(NodeManager*)));
   42.16 -
   42.17 -	//Send message group
   42.18 -	QGroupBox *sendBox = new QGroupBox("Send message");
   42.19 -    //Source
   42.20 -    QLabel *labelSrc = new QLabel(this);
   42.21 -    labelSrc->setText("Select destination:");
   42.22 -	src = new QLineEdit();
   42.23 -	src->setMaxLength(3); 
   42.24 -	//Destination
   42.25 -	QLabel *labelDst = new QLabel(this);
   42.26 -    labelDst->setText("Send message:");
   42.27 -	combo = new QComboBox(this);
   42.28 -
   42.29 -
   42.30 -	dst = new QLineEdit();
   42.31 -	dst->setMaxLength(3); 
   42.32 -	//Options
   42.33 -	QLabel *labelOpt = new QLabel(this);
   42.34 -    labelOpt->setText("Received messages:");
   42.35 -	opt = new QLineEdit();
   42.36 -	opt->setMaxLength(3); 
   42.37 -	//Message
   42.38 -	QLabel *labelMsg = new QLabel(this);
   42.39 -    labelMsg->setText("Type message here:");
   42.40 -	line = new QTextEdit();
   42.41 -	//sourceString
   42.42 -	QLabel *srcStr = new QLabel(this);
   42.43 -    srcStr->setText("Content:");
   42.44 -	srcLine = new QLineEdit();
   42.45 -	//destinationString
   42.46 -	QLabel *dstStr = new QLabel(this);
   42.47 -   // dstStr->setText("DestinationString");
   42.48 -	dstLine = new QLineEdit();
   42.49 -	//Send
   42.50 -	QPushButton *send= new QPushButton("Send", this);
   42.51 -	//File
   42.52 -	//QFileDialog *file = new QFileDialog(this);	
   42.53 -	//Final grid layout
   42.54 -    QGridLayout *sendGroup = new QGridLayout;
   42.55 -	sendGroup->addWidget(labelSrc, 0, 0);
   42.56 -    sendGroup->addWidget(combo, 1, 0);
   42.57 -
   42.58 -	sendGroup->addWidget(labelDst, 0, 1);
   42.59 -    sendGroup->addWidget(send, 1, 1);
   42.60 -	sendGroup->addWidget(labelMsg, 2, 0);
   42.61 -	sendGroup->addWidget(line, 3, 0, 1, 2);
   42.62 -
   42.63 -	//sendGroup->addWidget(dst, 1, 1);
   42.64 -	//sendGroup->addWidget(combo, 2, 1);
   42.65 -
   42.66 -	//sendGroup->addWidget(labelDst, 0, 1);
   42.67 -	//sendGroup->addWidget(dstLine, 3, 1);
   42.68 -
   42.69 -	//sendGroup->addWidget(labelOpt, 0, 2);
   42.70 -	//sendGroup->addWidget(opt, 1, 2);
   42.71 -
   42.72 -	//sendGroup->addWidget(labelMsg, 4, 0);
   42.73 - 	//sendGroup->addWidget(line, 5, 0, 1, 3);
   42.74 -    //sendGroup->addWidget(send, 3, 2);
   42.75 -	 //   sendGroup->addWidget(file, 6, 2);
   42.76 -	sendBox->setFixedSize(450, 620);
   42.77 -	sendBox->setLayout(sendGroup);
   42.78 -	///////////////////////////////////////////////////
   42.79 -	QGroupBox *readBox = new QGroupBox("Read message");
   42.80 -	readText = new QTextBrowser(this);
   42.81 -	msgList = new QListWidget;
   42.82 -	//Final grid layout
   42.83 -    QGridLayout *readGroup = new QGridLayout;
   42.84 -	readGroup->addWidget(labelOpt, 0, 0);
   42.85 -	readGroup->addWidget(msgList, 1, 0);
   42.86 -	readGroup->addWidget(srcStr, 2, 0);
   42.87 -	readGroup->addWidget(readText, 3, 0);
   42.88 - 	readBox->setFixedSize(450, 620);
   42.89 -	readBox->setLayout(readGroup);
   42.90 -	Bundle *msg = new Bundle;
   42.91 -	//Define final layout
   42.92 -	QVBoxLayout *layout = new QVBoxLayout;
   42.93 -	layout->setDirection(QBoxLayout::LeftToRight);
   42.94 -    layout->addWidget(sendBox);    
   42.95 -    layout->addWidget(readBox);    
   42.96 -    setLayout(layout);
   42.97 -	//Define connections
   42.98 -	bool b = connect(send,SIGNAL(clicked(void)),this, SLOT(composeBundle(void)) );
   42.99 -//	connect(line, SIGNAL(returnPressed ()(QString)),label,SLOT(setText(QString)));
  42.100 -	//Prepare update timer
  42.101 -	timer = new QTimer();
  42.102 -	connect(timer, SIGNAL(timeout()), this, SLOT(updateLists()));
  42.103 -	connect(msgList, SIGNAL(itemClicked (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
  42.104 -	connect(msgList, SIGNAL(itemDoubleClicked  (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
  42.105 -	connect(nodeManager, SIGNAL(updatedNodeList(NodeManager*)), this, SLOT(updatedNodeList(NodeManager* )));
  42.106 -
  42.107 -
  42.108 -
  42.109 -	timer->start(5000);
  42.110 -	firstTime=0;
  42.111 -	ReadFile conf;
  42.112 -	QString msgPath=conf.getMsgPath();
  42.113 -	dir.setPath(msgPath);
  42.114 -	sourceId =conf.getNodeId();
  42.115 -	sourceStr = conf.getNodeName();
  42.116 -
  42.117 -}
  42.118 -
  42.119 -void MsgWidget::updatedNodeList(NodeManager* ptr)
  42.120 -{
  42.121 -	//First time we update combobox
  42.122 -	QList <Node> nodeList;
  42.123 -	nodeList = nodeManager->getNodeList();
  42.124 -	combo->clear();
  42.125 -	for (ushort i = 0; i < nodeList.size(); ++i) 
  42.126 -	{
  42.127 -			combo->insertItem(i,nodeList.at(i).nodeName);
  42.128 -	}
  42.129 -	firstTime=1;
  42.130 -
  42.131 -}
  42.132 -
  42.133 -
  42.134 -void MsgWidget::getBundle(Bundle newBundle)
  42.135 -{
  42.136 -	label->setText(newBundle.getData());
  42.137 -}
  42.138 -
  42.139 -void MsgWidget::updateLists()
  42.140 -{
  42.141 -	if(firstTime==0)
  42.142 -	{
  42.143 -		//First time we update combobox
  42.144 -		QList <Node> nodeList;
  42.145 -		nodeList = nodeManager->getNodeList();
  42.146 -		combo->clear();
  42.147 -		for (ushort i = 0; i < nodeList.size(); ++i) 
  42.148 -		{
  42.149 -			combo->insertItem(i,nodeList.at(i).nodeName);
  42.150 -		}
  42.151 -		firstTime=1;
  42.152 -	}
  42.153 -	QList<QString> list;
  42.154 -	list = dir.entryList();
  42.155 -	msgList->clear();
  42.156 -	for (ushort i = 0; i < list.size(); ++i) 
  42.157 -	{
  42.158 -		QListWidgetItem *newItem = new QListWidgetItem;
  42.159 -		newItem->setText(list.at(i));
  42.160 -		msgList->insertItem(i, newItem);
  42.161 -	}
  42.162 -}
  42.163 -
  42.164 -void MsgWidget::showMsg(QListWidgetItem * item)
  42.165 -{
  42.166 -	QString fileName;
  42.167 -	if(item!=NULL)
  42.168 -	{
  42.169 -	fileName = item->text();
  42.170 -	if(fileName.size()>2)
  42.171 -	{
  42.172 -	
  42.173 -	QFile file(dir.filePath(fileName));
  42.174 -	if(file.open(QIODevice::ReadOnly))
  42.175 -	{
  42.176 -		QByteArray data;
  42.177 -		data=file.readAll();
  42.178 -		readText->clear();
  42.179 -		readText->insertPlainText(data);
  42.180 -		file.close();
  42.181 -	}
  42.182 -	}
  42.183 -}}
  42.184 -
  42.185 -
  42.186 -
  42.187 -
  42.188 -
  42.189 -void MsgWidget::composeBundle()
  42.190 -{
  42.191 -	Bundle newBundle;
  42.192 -	QString stringData;// = line->text();
  42.193 -	QByteArray data = line->toPlainText().toAscii();
  42.194 -	if(combo->count()>0)
  42.195 -	{
  42.196 -
  42.197 -		int dstId=nodeManager->nodeList.at(combo->currentIndex()).nodeId;
  42.198 -		QString dstStr = combo->itemText(combo->currentIndex()); 
  42.199 -		newBundle.setContent(seq,sourceId,dstId,data,5,sourceStr.toAscii(),dstStr.toAscii());
  42.200 -		seq++;
  42.201 -		emit sendBundle(newBundle);
  42.202 -		 QMessageBox::information(this, "PRoPHET notSoIM",
  42.203 -		"Message sent!\n");
  42.204 -	}
  42.205 -
  42.206 -}
  42.207 -
  42.208 -
    43.1 --- a/Win32/msgWidget.h	Wed Jan 03 09:17:10 2007 +0000
    43.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    43.3 @@ -1,52 +0,0 @@
    43.4 -#ifndef MSGWIDGET_H
    43.5 -#define MSGWIDGET_H
    43.6 -#include <QtGui>
    43.7 -#include <bundle.h>
    43.8 -#include <nodeManager.h>
    43.9 -
   43.10 -class MsgWidget : public QWidget
   43.11 -{
   43.12 -
   43.13 -	Q_OBJECT
   43.14 -
   43.15 -private:
   43.16 -		
   43.17 -	QLineEdit *label;
   43.18 -
   43.19 -	
   43.20 -public:
   43.21 -	int seq;
   43.22 -	QComboBox *combo;
   43.23 -	QTextBrowser *readText;
   43.24 -	QFileDialog *file;
   43.25 -	QLineEdit *src;
   43.26 -	QLineEdit *dst;
   43.27 -	QLineEdit *opt;
   43.28 -	QTextEdit *line;
   43.29 -	QLineEdit *srcLine;
   43.30 -	QLineEdit *dstLine;
   43.31 -	MsgWidget(NodeManager*,QWidget *parent = 0);
   43.32 -	NodeManager* nodeManager;
   43.33 -	QTimer* timer;
   43.34 -	bool firstTime;
   43.35 -	QListWidget* msgList;
   43.36 -	QDir dir;
   43.37 -	int sourceId;
   43.38 -	QString sourceStr;
   43.39 -
   43.40 -
   43.41 -
   43.42 -signals:
   43.43 -		void sendBundle(Bundle);
   43.44 -public slots:
   43.45 -        void composeBundle();
   43.46 -public slots:
   43.47 -	void getBundle(Bundle newBundle);
   43.48 -	void updateLists();
   43.49 -	void updatedNodeList(NodeManager* ptr);
   43.50 -	void showMsg(QListWidgetItem *);
   43.51 -};
   43.52 -
   43.53 -#endif
   43.54 -
   43.55 -
    44.1 --- a/Win32/neighbourAwareness.cpp	Wed Jan 03 09:17:10 2007 +0000
    44.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    44.3 @@ -1,403 +0,0 @@
    44.4 -#include <QtCore>
    44.5 -#include <QtNetwork>
    44.6 -#include <connection.h>
    44.7 -#include <dataPacket.h>
    44.8 -#include <neighbourAwareness.h>
    44.9 -#include <stdio.h>
   44.10 -#include <readFile.h>
   44.11 -#include <main.h>
   44.12 -#include <messageFile.h>
   44.13 -#ifdef Q_WS_X11
   44.14 -#include <sys/types.h>
   44.15 -#include <sys/stat.h> 
   44.16 -#endif
   44.17 -//extern MessageFile *log;
   44.18 -
   44.19 -#define VERSION 2
   44.20 -#define HELLO_DATAGRAM "PROPHET"
   44.21 -//#define ALIVE 15
   44.22 -#define TERMINATOR "žšð3ðšðšq<žðšžð<dšðsd"
   44.23 -#define TERMINATOR2 "ž3š2šžš324šž2šž32šžšž32"
   44.24 -struct DatagramHeader
   44.25 -{
   44.26 -	qint32 version;
   44.27 -	qint32 lenght;
   44.28 -	qint32 checkSum;
   44.29 -	qint32 nr;
   44.30 -};
   44.31 -
   44.32 -ConnectionInfo::ConnectionInfo(QObject *parent)
   44.33 -{
   44.34 -	ReadFile conf;
   44.35 -	alive=conf.getAlive();
   44.36 -	data.clear();
   44.37 -}
   44.38 -
   44.39 -
   44.40 -ConnectionInfo& ConnectionInfo::operator=(const ConnectionInfo& other)
   44.41 -{
   44.42 - id = other.id;
   44.43 - alive = other.alive;
   44.44 - ip = other.ip;
   44.45 - data = other.data;
   44.46 - tcpSocket = other.tcpSocket;
   44.47 - isClient = other.isClient;
   44.48 - conptr= other.conptr;
   44.49 -
   44.50 - return *this;
   44.51 -}
   44.52 -
   44.53 -ConnectionInfo::ConnectionInfo(const ConnectionInfo& other)
   44.54 -{
   44.55 - id = other.id;
   44.56 - alive = other.alive;
   44.57 - ip = other.ip;
   44.58 - data = other.data;
   44.59 - tcpSocket = other.tcpSocket;
   44.60 - isClient = other.isClient;
   44.61 - conptr= other.conptr;
   44.62 -}	
   44.63 -
   44.64 -
   44.65 -NeighAwareServer::NeighAwareServer(QObject* parent) : QTcpServer(parent)
   44.66 -{
   44.67 -}
   44.68 -
   44.69 -void NeighAwareServer::incomingConnection(int socketDescriptor)
   44.70 -{ 
   44.71 -	QTcpSocket* newSocket = new QTcpSocket(this);
   44.72 -	newSocket->setSocketDescriptor(socketDescriptor);
   44.73 -	bool permitNewConnection = false;
   44.74 -	emit newConnectionEstablished(newSocket, permitNewConnection);
   44.75 -	if (permitNewConnection == false)
   44.76 -	{
   44.77 -		newSocket->deleteLater();
   44.78 -		newSocket->disconnectFromHost();
   44.79 -	}
   44.80 -}	
   44.81 -	
   44.82 -
   44.83 -NeighAware::NeighAware(BundleManager* bundleMng, NodeManager* nodeMng)
   44.84 -{
   44.85 -	nodeManager = nodeMng;
   44.86 -	bundleManager = bundleMng;
   44.87 -	terminator.clear();
   44.88 -	terminator.append(TERMINATOR);
   44.89 -	terminator.append(TERMINATOR2);
   44.90 -
   44.91 -	file = new ReadFile;
   44.92 -	myip=file->getNodeIp();
   44.93 -	myip2=file->getNodeIp2();
   44.94 -	broadcast=file->getBroadcast();
   44.95 -	nodeId=file->getNodeId();
   44.96 -	nodeName=file->getNodeName();
   44.97 -	ALIVE=file->getAlive();
   44.98 -	numid = 0;
   44.99 -
  44.100 -
  44.101 -
  44.102 -	tcpServer = new NeighAwareServer(this);
  44.103 -	bool b = connect(tcpServer, SIGNAL(newConnectionEstablished(QTcpSocket*, bool&)), this, SLOT(newConnectionEstablished(QTcpSocket*, bool&)));
  44.104 -	tcpServer->listen(myip,30001);
  44.105 -
  44.106 -	udpSocketp = new QUdpSocket(this);
  44.107 -	udpSocketp->bind(30000);
  44.108 -    connect(udpSocketp, SIGNAL(readyRead()),this, SLOT(processPingDatagrams()));
  44.109 -	
  44.110 -	broadcastTimer = new QTimer(this);
  44.111 -	connect(broadcastTimer, SIGNAL(timeout()), this, SLOT(broadcastDatagram()));
  44.112 -	broadcastTimer->start(1000);
  44.113 -
  44.114 -	//DEBUG
  44.115 -	log = new MessageFile;
  44.116 -	log->set("connections.log", 1000000, 5);
  44.117 -}
  44.118 -
  44.119 -void NeighAware::newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection)
  44.120 -{ 
  44.121 -	QHostAddress ip;
  44.122 -	ip = newSocket->peerAddress();
  44.123 -	QString bla = ip.toString();
  44.124 -	int index=-1;
  44.125 -	for(int i=0;i<connectionlist.size();i++)
  44.126 -	{
  44.127 -		QString bla = ip.toString();
  44.128 -		if(ip == connectionlist.at(i).ip)
  44.129 -			index=i;
  44.130 -	}
  44.131 -	if(index==-1)
  44.132 -	{
  44.133 -		newSocket->connect(newSocket,SIGNAL(readyRead()),this,SLOT(processPendingDatagrams()));
  44.134 -		newSocket->connect(newSocket,SIGNAL(disconnected()),this,SLOT(stateChanged()));
  44.135 -		newSocket->connect(newSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(errorDecode(QAbstractSocket::SocketError)));
  44.136 -		//We add a new connection to the list
  44.137 -		ConnectionInfo connectioninfo;
  44.138 -		//Ading
  44.139 -		connectioninfo.conptr = new Connection(numid,file->getNodeId(),file->getNodeName(),nodeManager,bundleManager,this);
  44.140 -		newSocket->connect(connectioninfo.conptr,SIGNAL(sendDataPacket(DataPacket)),this,SLOT(sendDatagram(DataPacket)));
  44.141 -		///
  44.142 -		connectioninfo.ip=ip;
  44.143 -		connectioninfo.id=numid;
  44.144 -		connectioninfo.alive=ALIVE;
  44.145 -		connectioninfo.tcpSocket = newSocket;
  44.146 -		connectioninfo.isClient = false;
  44.147 -
  44.148 -
  44.149 -    			if(connectioninfo.tcpSocket->waitForConnected(500))
  44.150 -			{
  44.151 -			    QHostAddress tmp=connectioninfo.ip;
  44.152 -    			    QString logString;
  44.153 -			    logString.append("New connection(S):");	
  44.154 -			    logString.append(tmp.toString());
  44.155 -			    log->addLog(0,logString);
  44.156 -			    connectionlist << connectioninfo;
  44.157 -			}
  44.158 -			else
  44.159 -			{
  44.160 -			    QHostAddress tmp=connectioninfo.ip;
  44.161 -			    QString logString;
  44.162 -			    logString.append("Drop connection(S):");	
  44.163 -			    logString.append(tmp.toString());
  44.164 -			    log->addLog(0,logString);
  44.165 -			    delete connectioninfo.conptr;
  44.166 -			    //delete connectioninfo.tcpSocket;
  44.167 -			}
  44.168 -
  44.169 -		
  44.170 -		numid++;
  44.171 -		permitNewConnection=true;
  44.172 -		sendDebugConList(connectionlist);
  44.173 -	}
  44.174 -}
  44.175 -
  44.176 -void NeighAware::broadcastDatagram()
  44.177 -{  	
  44.178 -	QByteArray datagram=HELLO_DATAGRAM;
  44.179 -	QString debug = broadcast.toString();
  44.180 - 	udpSocketp->writeDatagram(datagram.data(), datagram.size(), broadcast, 30000);
  44.181 -	for(int i=0;i<connectionlist.count();i++)
  44.182 -	{
  44.183 -		connectionlist[i].alive--;
  44.184 -		if(connectionlist[i].alive<=0)
  44.185 -		{
  44.186 -			
  44.187 -			connectionlist[i].tcpSocket->disconnectFromHost();
  44.188 -			delete connectionlist[i].tcpSocket;
  44.189 -			delete connectionlist[i].conptr;
  44.190 -			connectionlist.removeAt(i);	
  44.191 -			sendDebugConList(connectionlist);
  44.192 -		}
  44.193 -		sendDebugConList(connectionlist);
  44.194 -	}
  44.195 -	QFile f("connections.txt");
  44.196 -	if (f.open(QIODevice::WriteOnly) == true)
  44.197 -	{
  44.198 -		for(int i=0;i<connectionlist.size();i++)
  44.199 -		{
  44.200 -			f.write(connectionlist[i].ip.toString().toAscii());
  44.201 -			if (connectionlist[i].isClient == true)
  44.202 -				f.write(QString("\tclient\r\n").toAscii());
  44.203 -			else
  44.204 -				f.write(QString("\tserver\r\n").toAscii());
  44.205 -		}
  44.206 -		f.close();
  44.207 -	}
  44.208 -}
  44.209 -
  44.210 -void NeighAware::processPingDatagrams()
  44.211 -{
  44.212 -	while (udpSocketp->hasPendingDatagrams()) 
  44.213 -	{
  44.214 -        QByteArray datagram;
  44.215 -		
  44.216 -		quint16 port;
  44.217 -		QHostAddress ip;
  44.218 -		bool insert=true;
  44.219 -		datagram.resize(udpSocketp->pendingDatagramSize());
  44.220 -        udpSocketp->readDatagram(datagram.data(), datagram.size(), &ip, &port);
  44.221 -		QString bla = ip.toString();
  44.222 -		//Is the node in the list?
  44.223 -		if ((ip==myip) || (ip==myip2))
  44.224 -		{
  44.225 -			insert=false;
  44.226 -		}
  44.227 -		else
  44.228 -		{
  44.229 -			for(int i=0;i<connectionlist.size();i++)
  44.230 -			{
  44.231 -			 
  44.232 -				if(connectionlist.at(i).ip ==ip)
  44.233 -				{ 
  44.234 -					insert=false;
  44.235 -				}
  44.236 -			}
  44.237 -		}
  44.238 -		//If not we insert it.
  44.239 -		if(insert==true)
  44.240 -		{
  44.241 -			QTcpSocket* newSocket = new QTcpSocket(this);
  44.242 -			newSocket->connect(newSocket,SIGNAL(readyRead()),this,SLOT(processPendingDatagrams()));
  44.243 -			newSocket->connect(newSocket,SIGNAL(disconnected()),this,SLOT(stateChanged()));
  44.244 -			newSocket->connect(newSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(errorDecode(QAbstractSocket::SocketError)));
  44.245 -			newSocket->connectToHost(ip, 30001);
  44.246 -			//We add a new connection to the list
  44.247 -			ConnectionInfo connectioninfo;
  44.248 -			//Adding
  44.249 -			connectioninfo.conptr = new Connection(numid,file->getNodeId(),file->getNodeName(),nodeManager,bundleManager,this);
  44.250 -			newSocket->connect(connectioninfo.conptr,SIGNAL(sendDataPacket(DataPacket)),this,SLOT(sendDatagram(DataPacket)));
  44.251 -
  44.252 -			///
  44.253 -			connectioninfo.ip=ip;
  44.254 -			connectioninfo.id=numid;
  44.255 -			connectioninfo.alive=ALIVE;
  44.256 -			connectioninfo.tcpSocket = newSocket;
  44.257 -			connectioninfo.isClient = true;
  44.258 -
  44.259 -			
  44.260 -    			if(connectioninfo.tcpSocket->waitForConnected(500))
  44.261 -			{
  44.262 -			    QHostAddress tmp=connectioninfo.ip;
  44.263 -    			    QString logString;
  44.264 -			    logString.append("New connection(C):");	
  44.265 -			    logString.append(tmp.toString());
  44.266 -			    log->addLog(0,logString);
  44.267 -			    connectionlist << connectioninfo;
  44.268 -			}
  44.269 -			else
  44.270 -			{
  44.271 -			    QHostAddress tmp=connectioninfo.ip;
  44.272 -			    QString logString;
  44.273 -			    logString.append("Drop connection(C):");	
  44.274 -			    logString.append(tmp.toString());
  44.275 -			    log->addLog(0,logString);
  44.276 -    			    connectioninfo.tcpSocket->disconnectFromHost();
  44.277 -			    delete connectioninfo.conptr;
  44.278 -			    delete connectioninfo.tcpSocket;
  44.279 -			}
  44.280 -
  44.281 -
  44.282 -
  44.283 -
  44.284 -			bool b = connectionlist[connectionlist.count()-1].isClient;
  44.285 -			numid++;
  44.286 -			sendDebugConList(connectionlist);
  44.287 -		}
  44.288 -	}
  44.289 -}
  44.290 -
  44.291 -
  44.292 -void NeighAware::sendDatagram(DataPacket datapacket)
  44.293 -{  	
  44.294 -	QHostAddress ip;
  44.295 -	for(int i=0;i<connectionlist.size();i++)
  44.296 -	{
  44.297 -		if(connectionlist.at(i).id==datapacket.id) 
  44.298 -		{
  44.299 -			ip=connectionlist.at(i).ip;
  44.300 -
  44.301 -			//Preparing heder
  44.302 -			QByteArray newDatagram;
  44.303 -			newDatagram.append(datapacket.data);
  44.304 -			//Appending terminator
  44.305 -			newDatagram.append(terminator);
  44.306 -			//Sending datagram 
  44.307 -			connectionlist[i].tcpSocket->write(newDatagram);
  44.308 -		}
  44.309 -	}
  44.310 -
  44.311 -
  44.312 -}
  44.313 -
  44.314 -
  44.315 -
  44.316 -void NeighAware::stateChanged()
  44.317 -{
  44.318 -	QString logString;
  44.319 -	logString.append(">>>>>>>>>>>>State:");
  44.320 -	log->addLog(0,logString);
  44.321 -
  44.322 -	for(int i=0;i<connectionlist.count();i++)
  44.323 -	{
  44.324 -		if((connectionlist.at(i).tcpSocket->state() != QAbstractSocket::ConnectedState))    
  44.325 -		{
  44.326 -//		QString logString;
  44.327 -//		QHostAddress tmp=connectionlist.at(i).ip;
  44.328 -//		logString.append("Removing (State) IP:");	
  44.329 -//		logString.append(tmp.toString());		
  44.330 -//		log->addLog(0,logString);
  44.331 -			
  44.332 -//			connectionlist[i].tcpSocket->deleteLater();
  44.333 -//			connectionlist[i].conptr->deleteLater();
  44.334 -//			connectionlist.removeAt(i);	
  44.335 -			connectionlist[i].alive=0;
  44.336 -
  44.337 -			sendDebugConList(connectionlist);
  44.338 -		}
  44.339 -	}
  44.340 -}
  44.341 -
  44.342 -void NeighAware::errorDecode(QAbstractSocket::SocketError error)
  44.343 -{
  44.344 -	int i=error;
  44.345 -	QString logString;
  44.346 -	logString.append(QString("Error %1\n\r").arg((int)error).toAscii());
  44.347 -	log->addLog(0,logString);
  44.348 -/*	
  44.349 -	for(int i=0;i<connectionlist.count();i++)
  44.350 -	{
  44.351 -		if((connectionlist.at(i).tcpSocket->state() != QAbstractSocket::ConnectedState))    
  44.352 -		{
  44.353 -//			connectionlist[i].tcpSocket->deleteLater();
  44.354 -//			connectionlist[i].conptr->deleteLater();
  44.355 -//			connectionlist.removeAt(i);	
  44.356 -			connectionlist[i].alive=0;
  44.357 -			sendDebugConList(connectionlist);
  44.358 -		}
  44.359 -	}
  44.360 -
  44.361 -			QFile f("error.txt");
  44.362 -		if (f.open(QIODevice::WriteOnly|QIODevice::Append) == true)
  44.363 -		{
  44.364 -			f.write(QString("Error %1\n\r").arg((int)error).toAscii());
  44.365 -			f.close();
  44.366 -		}
  44.367 -*/
  44.368 -}
  44.369 -
  44.370 -
  44.371 -
  44.372 -void NeighAware::processPendingDatagrams()
  44.373 -{
  44.374 -	for(int i=0;i<connectionlist.size();i++)
  44.375 -	{
  44.376 -		QByteArray packetPart;
  44.377 -		packetPart=connectionlist[i].tcpSocket->readAll();
  44.378 -		if(packetPart.size()>0)
  44.379 -		{
  44.380 -			//Updating alive variable
  44.381 -			connectionlist[i].alive=ALIVE;
  44.382 -			//We add datagram to data
  44.383 -			connectionlist[i].data.append(packetPart);
  44.384 -			int idx;
  44.385 -			idx = connectionlist[i].data.indexOf(terminator,0);
  44.386 -			while(idx != -1)
  44.387 -			{
  44.388 -				//We remove the terminator
  44.389 -				QByteArray tempData;
  44.390 -				tempData=connectionlist[i].data.mid(0,idx);
  44.391 -				connectionlist[i].data.remove(0,(idx+terminator.size()));
  44.392 -				DataPacket send;
  44.393 -				send.data.append(tempData);
  44.394 -				send.id=connectionlist[i].id;
  44.395 -				connectionlist[i].conptr->receiveDatagram(send);
  44.396 -				idx = connectionlist[i].data.indexOf(terminator,0);
  44.397 -			}
  44.398 -			
  44.399 -		}
  44.400 -	}
  44.401 -}
  44.402 -
  44.403 -		
  44.404 -		
  44.405 -
  44.406 -		
    45.1 --- a/Win32/neighbourAwareness.h	Wed Jan 03 09:17:10 2007 +0000
    45.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    45.3 @@ -1,99 +0,0 @@
    45.4 -#ifndef NEIGHBOURAWARENESS_H
    45.5 -#define NEIGHBOURAWARENESS_H
    45.6 -
    45.7 -//#include <iostream.h>
    45.8 -#include <QtCore>
    45.9 -#include <QtNetwork>
   45.10 -#include <connection.h>
   45.11 -#include <dataPacket.h>
   45.12 -#include <neighbourAwareness.h>
   45.13 -#include <bundleManager.h>
   45.14 -#include <nodeManager.h>
   45.15 -#include <messageFile.h>
   45.16 -#include <readFile.h>
   45.17 -
   45.18 -
   45.19 -class ConnectionInfo : public QObject 
   45.20 -{
   45.21 -	Q_OBJECT
   45.22 -	public:
   45.23 -	ConnectionInfo(QObject *parent = 0);
   45.24 -	ConnectionInfo(const ConnectionInfo& other);
   45.25 -	ConnectionInfo& operator=(const ConnectionInfo& other);
   45.26 -	QHostAddress ip;
   45.27 -	QByteArray data;
   45.28 -	QTcpSocket* tcpSocket;
   45.29 -	QTcpSocket* clientTcpSocket;
   45.30 -	Connection *conptr;
   45.31 -	int alive;
   45.32 -	int id;
   45.33 -	bool isClient;
   45.34 -};
   45.35 -
   45.36 -class NeighAwareServer : public QTcpServer
   45.37 -{
   45.38 -	Q_OBJECT
   45.39 -
   45.40 -public:
   45.41 -	NeighAwareServer(QObject *parent = 0);
   45.42 -
   45.43 -protected slots:
   45.44 -	virtual void incomingConnection(int socketDescripton);
   45.45 -
   45.46 -signals:
   45.47 -	void newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection);
   45.48 -
   45.49 -};
   45.50 -
   45.51 -
   45.52 -class NeighAware : public QObject 
   45.53 -{
   45.54 -
   45.55 -
   45.56 -Q_OBJECT
   45.57 -
   45.58 -public:
   45.59 -
   45.60 -	NeighAware(BundleManager*, NodeManager*);
   45.61 -	NodeManager *nodeManager;
   45.62 -	BundleManager *bundleManager;
   45.63 -
   45.64 -	QList<ConnectionInfo> connectionlist;
   45.65 -   	QByteArray terminator; 	
   45.66 -
   45.67 -	QHostAddress myip;
   45.68 -	QHostAddress myip2;
   45.69 -	QHostAddress broadcast;
   45.70 -	int nodeId;
   45.71 -	QString nodeName;
   45.72 -	int ALIVE;
   45.73 -	int numid;
   45.74 -	ReadFile *file;
   45.75 -
   45.76 -	NeighAwareServer *tcpServer;
   45.77 -	QUdpSocket *udpSocketp;
   45.78 -	QTimer *broadcastTimer;
   45.79 -	QTimer *testTimer;
   45.80 -	MessageFile* log;
   45.81 -
   45.82 -	int logOption;
   45.83 -	
   45.84 -public slots:
   45.85 -	void newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection);
   45.86 -
   45.87 -		
   45.88 -    void errorDecode(QAbstractSocket::SocketError);
   45.89 -	void stateChanged();
   45.90 -	void broadcastDatagram();
   45.91 -	void sendDatagram(DataPacket datapacket);
   45.92 -	void processPendingDatagrams();
   45.93 -	void processPingDatagrams();
   45.94 -//	void addTcpConnection();
   45.95 -
   45.96 -signals:
   45.97 -	void sendDebugConList(QList<ConnectionInfo>);
   45.98 -	void passDatagram(DataPacket);	
   45.99 -
  45.100 -};
  45.101 -
  45.102 -#endif
    46.1 --- a/Win32/node.cpp	Wed Jan 03 09:17:10 2007 +0000
    46.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    46.3 @@ -1,59 +0,0 @@
    46.4 -#include <QtCore>
    46.5 -#include <node.h>
    46.6 -
    46.7 -
    46.8 -Node::Node(QObject *parent)
    46.9 -{
   46.10 -			nodeId=0;
   46.11 -			probability=0.0;
   46.12 -			nodeName.clear();
   46.13 -			flag=-1;
   46.14 -}
   46.15 -
   46.16 -Node& Node::operator=(const Node& other)
   46.17 -{
   46.18 - nodeId = other.nodeId;
   46.19 - flag = other.flag;
   46.20 - probability = other.probability;
   46.21 - nodeName = other.nodeName;
   46.22 - return *this;
   46.23 -}
   46.24 -
   46.25 -Node::Node(const Node& other)
   46.26 -{
   46.27 - nodeId = other.nodeId;
   46.28 - flag = other.flag;
   46.29 - probability = other.probability;
   46.30 - nodeName = other.nodeName;
   46.31 -}	
   46.32 -	
   46.33 -void Node::setContent(int id,float pro,int f,QString name)
   46.34 -{
   46.35 -	flag=f;
   46.36 -	nodeId=id;
   46.37 -	probability=pro;
   46.38 -	nodeName=name;
   46.39 -
   46.40 -}
   46.41 -
   46.42 -int Node::getId()
   46.43 -{
   46.44 -	return nodeId;
   46.45 -}
   46.46 -
   46.47 -int Node::getFlag()
   46.48 -{
   46.49 -	
   46.50 -	return flag;
   46.51 -}
   46.52 -
   46.53 -float Node::getProbability()
   46.54 -{
   46.55 -	return probability;
   46.56 -}
   46.57 -
   46.58 -QString Node::getName()
   46.59 -{
   46.60 -	return nodeName;
   46.61 -}
   46.62 -
    47.1 --- a/Win32/node.h	Wed Jan 03 09:17:10 2007 +0000
    47.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    47.3 @@ -1,29 +0,0 @@
    47.4 -#ifndef NODE_H
    47.5 -#define NODE_H
    47.6 -
    47.7 -#include <QtCore>
    47.8 -
    47.9 -class Node : public QObject
   47.10 -{
   47.11 -
   47.12 -Q_OBJECT 
   47.13 -	public:
   47.14 -	int nodeId;
   47.15 -	float probability;
   47.16 -	int flag;
   47.17 -	QString nodeName;
   47.18 -
   47.19 -
   47.20 -	Node(QObject *parent = 0);
   47.21 -	Node(const Node& other);
   47.22 -	Node& operator=(const Node& other);
   47.23 -
   47.24 -
   47.25 -	void setContent(int,float,int,QString);
   47.26 -	int getId();
   47.27 -	int getFlag(); 
   47.28 -	float getProbability();
   47.29 -	QString getName();
   47.30 -};
   47.31 -
   47.32 -#endif
   47.33 \ No newline at end of file
    48.1 --- a/Win32/nodeManager.cpp	Wed Jan 03 09:17:10 2007 +0000
    48.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    48.3 @@ -1,298 +0,0 @@
    48.4 -#include <QtCore>
    48.5 -#include <nodeManager.h>
    48.6 -#include <node.h>
    48.7 -#include <readFile.h>
    48.8 -#include <math.h>
    48.9 -#include <qmutex.h>
   48.10 -
   48.11 -//#define AGING_TIMER 900
   48.12 -//#define PENCOUNTER 0.75
   48.13 -//#define BETA 0.25
   48.14 -//#define GAMMA 0.90
   48.15 -
   48.16 -NodeManager::NodeManager()//BundleManager* bundleMng)
   48.17 -{
   48.18 -	ReadFile conf;
   48.19 -	BETA=0.75;
   48.20 -	PENCOUNTER=conf.getPEncounter();
   48.21 -	GAMMA=conf.getGamma();
   48.22 -	AGING_TIMER=conf.getAgingTimer();
   48.23 -	int WRITETIMER =conf.getWriteToFileTimer();
   48.24 -	int fileOption = conf.getUseFileNodes();
   48.25 -	//Create and connect Hello Timer
   48.26 -	//bundleManager = bundleMng;
   48.27 -	agingTimer = new QTimer();
   48.28 -	storagePath=conf.getStoragePath();
   48.29 -	dir.setPath(storagePath);
   48.30 -	option=conf.getUseFileNodes();
   48.31 -        connect(agingTimer, SIGNAL(timeout()), this, SLOT(aging()));
   48.32 -        agingTimer->start(AGING_TIMER);
   48.33 -	if(fileOption==1)
   48.34 -	{
   48.35 -		readFromFile();
   48.36 -		writeToFileTimer = new QTimer();
   48.37 -		connect(writeToFileTimer, SIGNAL(timeout()), this, SLOT(saveToFile()));
   48.38 -		writeToFileTimer->start(WRITETIMER);
   48.39 -		emit sendDebugNodeList(nodeList);
   48.40 -	}
   48.41 -}
   48.42 -
   48.43 -
   48.44 -void NodeManager::aging()
   48.45 -{
   48.46 -	for (ushort i = 0; i < nodeList.size(); ++i) 
   48.47 -	{
   48.48 -			//AGE PROBABILITY UPDATE
   48.49 -			Node tempNode;
   48.50 -			tempNode=nodeList.at(i);
   48.51 -			tempNode.probability=tempNode.probability*GAMMA;
   48.52 -			nodeList.replace(i,tempNode);
   48.53 -
   48.54 -	}
   48.55 -	//DEBUG
   48.56 -	emit sendDebugNodeList(nodeList);
   48.57 -}
   48.58 -
   48.59 -void NodeManager::saveToFile()
   48.60 -{
   48.61 -	QFile file(dir.filePath("nodes.txt"));
   48.62 -	if(file.open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text))
   48.63 -	{
   48.64 -	    QDateTime realTime;
   48.65 -	    realTime=realTime.currentDateTime ();
   48.66 -	    QString time=realTime.toString("MM/dd/yyyy hh:mm:ss");
   48.67 -	    time.append("\n");
   48.68 -	    file.write(time.toAscii ());
   48.69 -	    for (ushort i = 0; i < nodeList.size(); ++i) 
   48.70 -	    {
   48.71 -		QString nodeString;
   48.72 -		nodeString.append(QString("%1").arg((int)nodeList.at(i).nodeId));
   48.73 -		nodeString.append("\t");
   48.74 -		nodeString.append(nodeList.at(i).nodeName);
   48.75 -		nodeString.append("\t");
   48.76 -		nodeString.append(QString("%1").arg((float)nodeList.at(i).probability));
   48.77 -		nodeString.append("\t");
   48.78 -		nodeString.append(QString("%1").arg((int)nodeList.at(i).flag));
   48.79 -		nodeString.append("\n");
   48.80 -		file.write(nodeString.toAscii ());
   48.81 -	    }
   48.82 -	    file.close();
   48.83 -	}
   48.84 -	//DEBUG
   48.85 -	emit sendDebugNodeList(nodeList);
   48.86 -}
   48.87 -
   48.88 -void NodeManager::readFromFile()
   48.89 -{
   48.90 -	ReadFile conf;
   48.91 -	QString storagePath=conf.getStoragePath();
   48.92 -	QDir dir;
   48.93 -	dir.setPath(storagePath);
   48.94 -	QFile file(dir.filePath("nodes.txt"));
   48.95 -	if(file.open(QIODevice::ReadOnly | QIODevice::Text))
   48.96 -	{
   48.97 -	    QString firstLine;
   48.98 -	    QString line;
   48.99 -	    //First we read date and time
  48.100 -	    firstLine=file.readLine();
  48.101 -	    //Then we add nodes
  48.102 -	    line=file.readLine();
  48.103 -	    while(line.size()>0)
  48.104 -	    {
  48.105 -    		//Parsing node
  48.106 -		int pos;
  48.107 -		QString temp;
  48.108 -		Node newNode;
  48.109 -		//Node ID
  48.110 -		pos=line.indexOf("\t",0);
  48.111 -		temp=line.mid(0,pos);
  48.112 -		newNode.nodeId=temp.toInt(0,10);
  48.113 -		line.remove(0,pos+1);
  48.114 -		//Node Name
  48.115 -		pos=line.indexOf("\t",0);
  48.116 -		temp=line.mid(0,pos);
  48.117 -		newNode.nodeName=temp;
  48.118 -		line.remove(0,pos+1);
  48.119 -		//Node Probability
  48.120 -		pos=line.indexOf("\t",0);
  48.121 -		temp=line.mid(0,pos);
  48.122 -		newNode.probability=temp.toFloat();
  48.123 -		line.remove(0,pos+1);
  48.124 -		//Node Flag
  48.125 -		pos=line.indexOf("\t",0);
  48.126 -		temp=line.mid(0,pos);
  48.127 -		newNode.flag=temp.toInt(0,10);
  48.128 -		line.remove(0,pos+1);
  48.129 -		//Adding Node
  48.130 -		nodeList.append(newNode);
  48.131 -		line=file.readLine();
  48.132 -	    }
  48.133 -	    //Aging the nodes
  48.134 -	    int option=conf.getAgeFileNodes();
  48.135 -	    if(option==1)
  48.136 -	    {
  48.137 -		QDateTime oldTime;
  48.138 -		firstLine.chop(1);
  48.139 -		oldTime=oldTime.fromString(firstLine,"MM/dd/yyyy hh:mm:ss");
  48.140 -		QDateTime realTime;
  48.141 -		realTime=realTime.currentDateTime ();
  48.142 -		int dif= oldTime.secsTo(realTime);
  48.143 -		int normalAging = conf.getAgingTimer()/1000;
  48.144 -		int aging=dif/normalAging;
  48.145 -		//Aging all nodes
  48.146 -		for (ushort i = 0; i < nodeList.size(); ++i) 
  48.147 -		{
  48.148 -			//AGE PROBABILITY UPDATE
  48.149 -			Node tempNode;
  48.150 -			tempNode=nodeList.at(i);
  48.151 -			tempNode.probability=tempNode.probability*(pow(GAMMA,aging));
  48.152 -			nodeList.replace(i,tempNode);
  48.153 -		}
  48.154 -	    }
  48.155 -	    emit sendDebugNodeList(nodeList);
  48.156 -	    emit updatedNodeList(this);
  48.157 -	    file.close();
  48.158 -	}
  48.159 -}
  48.160 -
  48.161 -
  48.162 -
  48.163 -int NodeManager::getId(QString str)
  48.164 -{
  48.165 -	for (ushort i = 0; i < nodeList.size(); ++i) 
  48.166 -	{
  48.167 -			QString s;
  48.168 -			QString n;
  48.169 -			s=str;
  48.170 -			n=nodeList.at(i).nodeName;
  48.171 -			if(nodeList.at(i).nodeName==str)
  48.172 -				return nodeList.at(i).nodeId;
  48.173 -	}
  48.174 -	return 0;
  48.175 -}
  48.176 -
  48.177 -
  48.178 -void NodeManager::addDictionary(int ourNodeId,QList<Node> dictionary)
  48.179 -{
  48.180 -	for (ushort i = 0; i < dictionary.size(); ++i) 
  48.181 -	{
  48.182 -		int isInTheList=0;
  48.183 -		for (ushort n = 0; n < nodeList.size(); ++n) 
  48.184 -		{
  48.185 -			if(dictionary.at(i).nodeId==nodeList.at(n).nodeId)
  48.186 -				isInTheList++;
  48.187 -			
  48.188 -		}
  48.189 -		if((isInTheList==0)&&(dictionary.at(i).nodeId!=ourNodeId))
  48.190 -		{
  48.191 -			nodeList.append(dictionary.at(i));
  48.192 -			//!!!!!!!!!!!!!!!!!!!!!!
  48.193 -				//DEBUG
  48.194 -			emit sendDebugNodeList(nodeList);
  48.195 -			emit updatedNodeList(this);
  48.196 -		}
  48.197 -	}
  48.198 -}
  48.199 -
  48.200 -void NodeManager::encounterNode(int encounterNodeId,int encounterNodeType,QString encounterNodeName)
  48.201 -{
  48.202 -	int isInTheList=0;
  48.203 -	for (ushort i = 0; i < nodeList.size(); ++i) 
  48.204 -	{
  48.205 -		//ENCOUNTER PROBABILITY UPDATE
  48.206 -		if(nodeList.at(i).nodeId==encounterNodeId)
  48.207 -		{
  48.208 -				Node tempNode;
  48.209 -				tempNode=nodeList.at(i);
  48.210 -				//ENCOUNTING EQUATION
  48.211 -				tempNode.probability=tempNode.probability+((1-tempNode.probability)*PENCOUNTER);
  48.212 -				nodeList.replace(i,tempNode);
  48.213 -				isInTheList++;
  48.214 -		}
  48.215 -	}
  48.216 -	//UNKNOW NEW NODE
  48.217 -	if(isInTheList==0) 
  48.218 -	{
  48.219 -		Node tempNode;
  48.220 -		tempNode.nodeId=encounterNodeId;
  48.221 -		tempNode.nodeName=encounterNodeName;
  48.222 -		tempNode.flag=-1;
  48.223 -		tempNode.probability=PENCOUNTER;
  48.224 -		nodeList.append(tempNode);
  48.225 -		//!!!!!!!!!!!!!!!!!!!!!!
  48.226 -		//DEBUG
  48.227 -		emit sendDebugNodeList(nodeList);
  48.228 -		emit updatedNodeList(this);
  48.229 -	}
  48.230 -}
  48.231 -
  48.232 -
  48.233 -void NodeManager::addRIB(QList<Node>RIB,int encounterNodeId)//RIB=P_(B,x)
  48.234 -{
  48.235 -	float P_AB=1;
  48.236 -	//First we find P_AB
  48.237 -	for (ushort i = 0; i < nodeList.size(); ++i) 
  48.238 -	{
  48.239 -		if(nodeList.at(i).nodeId==encounterNodeId)
  48.240 -			P_AB = nodeList.at(i).probability;
  48.241 -	}
  48.242 -	//Then we update all transitivites
  48.243 -	for (ushort i = 0; i < nodeList.size(); ++i) 
  48.244 -	{
  48.245 -		//TRANSITIVE PROBABILITY UPDATE
  48.246 -		if(nodeList.at(i).nodeId!=encounterNodeId)
  48.247 -		{
  48.248 -			int nodeCId = nodeList.at(i).nodeId;
  48.249 -			float P_AC = nodeList.at(i).probability;
  48.250 -			float P_BC = 1;
  48.251 -			float newP_AC;
  48.252 -			int flag=0;
  48.253 -			for (ushort n = 0; n < RIB.size(); ++n) 
  48.254 -			{
  48.255 -				if(RIB.at(n).nodeId==nodeCId)
  48.256 -				{
  48.257 -					P_BC = RIB.at(n).probability;
  48.258 -					flag = RIB.at(n).flag;
  48.259 -				}
  48.260 -			}
  48.261 -			newP_AC=P_AC+((1-P_AC) * P_AB * P_BC * BETA);
  48.262 -			//Adding data to list
  48.263 -			Node tempNode;
  48.264 -			tempNode=nodeList.at(i);
  48.265 -			tempNode.probability=newP_AC;
  48.266 -			tempNode.flag=flag;
  48.267 -			nodeList.replace(i,tempNode);
  48.268 -		}
  48.269 -
  48.270 -	}
  48.271 -	//DEBUG
  48.272 -	emit sendDebugNodeList(nodeList);
  48.273 -}
  48.274 -
  48.275 -
  48.276 -void NodeManager::addNode(Node newNode)
  48.277 -{
  48.278 -	nodeList.append(newNode);
  48.279 -	//!!!!!!!!!!!!!!!!!!!!!!!!!!!
  48.280 -	emit updatedNodeList(this);
  48.281 -	//DEBUG
  48.282 -	emit sendDebugNodeList(nodeList);
  48.283 -}
  48.284 -
  48.285 -QList<Node> NodeManager::getNodeList()
  48.286 -{	
  48.287 -	return nodeList;
  48.288 -}
  48.289 -
  48.290 -//Gives out only the list of nodes with RIB information
  48.291 -QList<Node> NodeManager::getRIBNodeList()
  48.292 -{	
  48.293 -	QList<Node> newNodeList;
  48.294 -	for (ushort i = 0; i < nodeList.size(); ++i) 
  48.295 -	{
  48.296 -		if(nodeList.at(i).flag != -1)
  48.297 -			newNodeList.append(nodeList.at(i));
  48.298 -	
  48.299 -	}
  48.300 -	return newNodeList;
  48.301 -}
  48.302 \ No newline at end of file
    49.1 --- a/Win32/nodeManager.h	Wed Jan 03 09:17:10 2007 +0000
    49.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    49.3 @@ -1,46 +0,0 @@
    49.4 -#ifndef NODEMANAGER_H
    49.5 -#define NODEMANAGER_H
    49.6 -
    49.7 -#include <QtCore>
    49.8 -#include <node.h>
    49.9 -//#include <messageFile.cpp>
   49.10 -//#include <bundleManager.h>
   49.11 -
   49.12 -class NodeManager : public QObject
   49.13 -{
   49.14 -	Q_OBJECT
   49.15 -public:
   49.16 -	int AGING_TIMER;
   49.17 -	float PENCOUNTER;
   49.18 -	float BETA;
   49.19 -	float GAMMA;
   49.20 -
   49.21 -//	BundleManager *bundleManager;
   49.22 -	
   49.23 -	void addNode(Node);
   49.24 -	int getId(QString);
   49.25 -	void addDictionary(int ourNodeId,QList<Node>);
   49.26 -	void addRIB(QList<Node>RIB,int encounterNodeId);
   49.27 -	void encounterNode(int encounterNodeId,int encounterNodeType,QString encounterNodeName);
   49.28 -	QList<Node> getNodeList();
   49.29 -	QList<Node> getRIBNodeList();
   49.30 -	QList<Node> nodeList;
   49.31 -	QTimer *agingTimer;
   49.32 -	QTimer *writeToFileTimer;
   49.33 -//	NodeManager(BundleManager*);
   49.34 -	NodeManager();
   49.35 -	QString storagePath;
   49.36 -	//MessageFile* log; 
   49.37 -	QDir dir;
   49.38 -	int option;
   49.39 -
   49.40 -
   49.41 -signals:
   49.42 -		void sendDebugNodeList(QList<Node>);
   49.43 -		void updatedNodeList(NodeManager*);
   49.44 -public slots:
   49.45 -		void aging();
   49.46 -		void saveToFile();
   49.47 -		void readFromFile();
   49.48 -};
   49.49 -#endif
   49.50 \ No newline at end of file
    50.1 --- a/Win32/prophet.dsp	Wed Jan 03 09:17:10 2007 +0000
    50.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    50.3 @@ -1,985 +0,0 @@
    50.4 -# Microsoft Developer Studio Project File - Name="prophet" - Package Owner=<4>
    50.5 -# Microsoft Developer Studio Generated Build File, Format Version 6.00
    50.6 -# ** DO NOT EDIT **
    50.7 -
    50.8 -# TARGTYPE "Win32 (x86) Application" 0x0101
    50.9 -
   50.10 -CFG=prophet - Win32 Debug
   50.11 -!MESSAGE This is not a valid makefile. To build this project using NMAKE,
   50.12 -!MESSAGE use the Export Makefile command and run
   50.13 -!MESSAGE 
   50.14 -!MESSAGE NMAKE /f "prophet.mak".
   50.15 -!MESSAGE 
   50.16 -!MESSAGE You can specify a configuration when running NMAKE
   50.17 -!MESSAGE by defining the macro CFG on the command line. For example:
   50.18 -!MESSAGE 
   50.19 -!MESSAGE NMAKE /f "prophet.mak" CFG="prophet - Win32 Debug"
   50.20 -!MESSAGE 
   50.21 -!MESSAGE Possible choices for configuration are:
   50.22 -!MESSAGE 
   50.23 -!MESSAGE "prophet - Win32 Debug" (based on "Win32 (x86) Application")
   50.24 -!MESSAGE "prophet - Win32 Release" (based on "Win32 (x86) Application")
   50.25 -!MESSAGE 
   50.26 -
   50.27 -# Begin Project
   50.28 -# PROP AllowPerConfigDependencies 0
   50.29 -# PROP Scc_ProjName ""
   50.30 -# PROP Scc_LocalPath ""
   50.31 -CPP=cl
   50.32 -MTL=midl
   50.33 -RSC=rc
   50.34 -BSC32=bscmake.exe
   50.35 -
   50.36 -!IF  "$(CFG)" == "prophet - Win32 Debug"
   50.37 -
   50.38 -# PROP BASE Use_MFC 0
   50.39 -# PROP BASE Use_Debug_Libraries 1
   50.40 -# PROP BASE Output_Dir "debug"
   50.41 -# PROP BASE Intermediate_Dir "debug"
   50.42 -# PROP BASE Target_Dir ""
   50.43 -# PROP Use_MFC 0
   50.44 -# PROP Use_Debug_Libraries 1
   50.45 -# PROP Output_Dir "debug"
   50.46 -# PROP Intermediate_Dir "debug"
   50.47 -# PROP Target_Dir ""
   50.48 -# ADD CPP /I"C:/Qt/4.0.1/include/QtNetwork" /I"C:/Qt/4.0.1/include/QtGui" /I"C:/Qt/4.0.1/include/QtCore" /I"C:/Qt/4.0.1/include" /I"." /I"C:/Qt/4.0.1/include/ActiveQt" /I"debug" /I"." /I"C:/Qt/4.0.1/mkspecs/win32-msvc" /c /FD -nologo -Zm200 -Zi -MDd -Zi -MDd -GR -GX -W3  /D "_WINDOWS"  /D UNICODE /D QT_LARGEFILE_SUPPORT /D QT_DLL /D QT_CORE_LIB /D QT_GUI_LIB /D QT_NETWORK_LIB /D QT_THREAD_SUPPORT  /D "WIN32"   /D "QT_THREAD_SUPPORT" 
   50.49 -# ADD MTL /nologo /mktyplib203 /win32 /D "_DEBUG"
   50.50 -# ADD RSC /l 0x409 /d "_DEBUG"
   50.51 -# ADD BSC32 /nologo
   50.52 -LINK32=link
   50.53 -# ADD LINK32 /NOLOGO /DEBUG /DEBUG /incremental:yes /SUBSYSTEM:windows /LIBPATH:"C:\Qt\4.0.1\lib" "C:\Qt\4.0.1\lib\qtmaind.lib" "C:\Qt\4.0.1\lib\QtCored4.lib" "C:\Qt\4.0.1\lib\QtGuid4.lib" "C:\Qt\4.0.1\lib\QtNetworkd4.lib" /out:"debug\prophet.exe" 
   50.54 -
   50.55 -!ELSEIF  "$(CFG)" == "prophet - Win32 Release"
   50.56 -
   50.57 -# PROP BASE Use_MFC 0
   50.58 -# PROP BASE Use_Debug_Libraries 0
   50.59 -# PROP BASE Output_Dir "release"
   50.60 -# PROP BASE Intermediate_Dir "release"
   50.61 -# PROP BASE Target_Dir ""
   50.62 -# PROP Use_MFC 0
   50.63 -# PROP Use_Debug_Libraries 0
   50.64 -# PROP Output_Dir "release"
   50.65 -# PROP Intermediate_Dir "release"
   50.66 -# PROP Target_Dir ""
   50.67 -# ADD CPP /I"C:/Qt/4.0.1/include/QtNetwork" /I"C:/Qt/4.0.1/include/QtGui" /I"C:/Qt/4.0.1/include/QtCore" /I"C:/Qt/4.0.1/include" /I"." /I"C:/Qt/4.0.1/include/ActiveQt" /I"release" /I"." /I"C:/Qt/4.0.1/mkspecs/win32-msvc" /c /FD -nologo -Zm200 -O1 -MD -O1 -MD -GR -GX -W3  /D "_WINDOWS"  /D UNICODE /D QT_LARGEFILE_SUPPORT /D QT_DLL /D QT_NO_DEBUG /D QT_CORE_LIB /D QT_GUI_LIB /D QT_NETWORK_LIB /D QT_THREAD_SUPPORT  /D "WIN32"   /D "QT_THREAD_SUPPORT" 
   50.68 -# ADD MTL /nologo /mktyplib203 /win32 /D "NDEBUG"
   50.69 -# ADD RSC /l 0x409 /d "NDEBUG"
   50.70 -# ADD BSC32 /nologo
   50.71 -LINK32=link
   50.72 -# ADD LINK32 /NOLOGO /incremental:yes /SUBSYSTEM:windows /LIBPATH:"C:\Qt\4.0.1\lib" "C:\Qt\4.0.1\lib\qtmain.lib" "C:\Qt\4.0.1\lib\QtCore4.lib" "C:\Qt\4.0.1\lib\QtGui4.lib" "C:\Qt\4.0.1\lib\QtNetwork4.lib" /out:"release\prophet.exe" 
   50.73 -
   50.74 -!ENDIF 
   50.75 -
   50.76 -# Begin Target
   50.77 -
   50.78 -# Name "prophet - Win32 Debug"
   50.79 -# Name "prophet - Win32 Release"
   50.80 -
   50.81 -# Begin Group "Source Files"
   50.82 -# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
   50.83 -# Begin Source File
   50.84 -SOURCE=DTNInterface.cpp
   50.85 -# End Source File
   50.86 -
   50.87 -# Begin Source File
   50.88 -SOURCE=bundle.cpp
   50.89 -# End Source File
   50.90 -
   50.91 -# Begin Source File
   50.92 -SOURCE=bundleManager.cpp
   50.93 -# End Source File
   50.94 -
   50.95 -# Begin Source File
   50.96 -SOURCE=connection.cpp
   50.97 -# End Source File
   50.98 -
   50.99 -# Begin Source File
  50.100 -SOURCE=dataPacket.cpp
  50.101 -# End Source File
  50.102 -
  50.103 -# Begin Source File
  50.104 -SOURCE=debugWidget.cpp
  50.105 -# End Source File
  50.106 -
  50.107 -# Begin Source File
  50.108 -SOURCE=hello.cpp
  50.109 -# End Source File
  50.110 -
  50.111 -# Begin Source File
  50.112 -SOURCE=main.cpp
  50.113 -# End Source File
  50.114 -
  50.115 -# Begin Source File
  50.116 -SOURCE=messageFile.cpp
  50.117 -# End Source File
  50.118 -
  50.119 -# Begin Source File
  50.120 -SOURCE=msgWidget.cpp
  50.121 -# End Source File
  50.122 -
  50.123 -# Begin Source File
  50.124 -SOURCE=neighbourAwareness.cpp
  50.125 -# End Source File
  50.126 -
  50.127 -# Begin Source File
  50.128 -SOURCE=node.cpp
  50.129 -# End Source File
  50.130 -
  50.131 -# Begin Source File
  50.132 -SOURCE=nodeManager.cpp
  50.133 -# End Source File
  50.134 -
  50.135 -# Begin Source File
  50.136 -SOURCE=readFile.cpp
  50.137 -# End Source File
  50.138 -
  50.139 -# Begin Source File
  50.140 -SOURCE=tcpClient.cpp
  50.141 -# End Source File
  50.142 -
  50.143 -# Begin Source File
  50.144 -SOURCE=tlv.cpp
  50.145 -# End Source File
  50.146 -
  50.147 -# End Group
  50.148 -
  50.149 -# Begin Group "Header Files"
  50.150 -# PROP Default_Filter "h;hpp;hxx;hm;inl"
  50.151 -# Begin Source File
  50.152 -SOURCE=DTNInterface.h
  50.153 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.154 -
  50.155 -USERDEP_DTNInterface.h=
  50.156 -# PROP Ignore_Default_Tool 1
  50.157 -# Begin Custom Build - Running MOC on DTNInterface.h
  50.158 -InputPath=DTNInterface.h
  50.159 -BuildCmds=  \
  50.160 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_DTNInterface.cpp
  50.161 -"debug\moc_DTNInterface.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.162 -	$(BuildCmds)
  50.163 -
  50.164 -# End Custom Build
  50.165 -
  50.166 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.167 -
  50.168 -USERDEP_DTNInterface.h=
  50.169 -# PROP Ignore_Default_Tool 1
  50.170 -# Begin Custom Build - Running MOC on DTNInterface.h
  50.171 -InputPath=DTNInterface.h
  50.172 -BuildCmds=  \
  50.173 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_DTNInterface.cpp
  50.174 -"release\moc_DTNInterface.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.175 -	$(BuildCmds)
  50.176 -
  50.177 -# End Custom Build
  50.178 -
  50.179 -!ENDIF
  50.180 -# End Source File
  50.181 -
  50.182 -# Begin Source File
  50.183 -SOURCE=bundle.h
  50.184 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.185 -
  50.186 -USERDEP_bundle.h=
  50.187 -# PROP Ignore_Default_Tool 1
  50.188 -# Begin Custom Build - Running MOC on bundle.h
  50.189 -InputPath=bundle.h
  50.190 -BuildCmds=  \
  50.191 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_bundle.cpp
  50.192 -"debug\moc_bundle.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.193 -	$(BuildCmds)
  50.194 -
  50.195 -# End Custom Build
  50.196 -
  50.197 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.198 -
  50.199 -USERDEP_bundle.h=
  50.200 -# PROP Ignore_Default_Tool 1
  50.201 -# Begin Custom Build - Running MOC on bundle.h
  50.202 -InputPath=bundle.h
  50.203 -BuildCmds=  \
  50.204 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_bundle.cpp
  50.205 -"release\moc_bundle.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.206 -	$(BuildCmds)
  50.207 -
  50.208 -# End Custom Build
  50.209 -
  50.210 -!ENDIF
  50.211 -# End Source File
  50.212 -
  50.213 -# Begin Source File
  50.214 -SOURCE=bundleManager.h
  50.215 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.216 -
  50.217 -USERDEP_bundleManager.h=
  50.218 -# PROP Ignore_Default_Tool 1
  50.219 -# Begin Custom Build - Running MOC on bundleManager.h
  50.220 -InputPath=bundleManager.h
  50.221 -BuildCmds=  \
  50.222 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_bundleManager.cpp
  50.223 -"debug\moc_bundleManager.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.224 -	$(BuildCmds)
  50.225 -
  50.226 -# End Custom Build
  50.227 -
  50.228 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.229 -
  50.230 -USERDEP_bundleManager.h=
  50.231 -# PROP Ignore_Default_Tool 1
  50.232 -# Begin Custom Build - Running MOC on bundleManager.h
  50.233 -InputPath=bundleManager.h
  50.234 -BuildCmds=  \
  50.235 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_bundleManager.cpp
  50.236 -"release\moc_bundleManager.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.237 -	$(BuildCmds)
  50.238 -
  50.239 -# End Custom Build
  50.240 -
  50.241 -!ENDIF
  50.242 -# End Source File
  50.243 -
  50.244 -# Begin Source File
  50.245 -SOURCE=connection.h
  50.246 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.247 -
  50.248 -USERDEP_connection.h=
  50.249 -# PROP Ignore_Default_Tool 1
  50.250 -# Begin Custom Build - Running MOC on connection.h
  50.251 -InputPath=connection.h
  50.252 -BuildCmds=  \
  50.253 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_connection.cpp
  50.254 -"debug\moc_connection.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.255 -	$(BuildCmds)
  50.256 -
  50.257 -# End Custom Build
  50.258 -
  50.259 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.260 -
  50.261 -USERDEP_connection.h=
  50.262 -# PROP Ignore_Default_Tool 1
  50.263 -# Begin Custom Build - Running MOC on connection.h
  50.264 -InputPath=connection.h
  50.265 -BuildCmds=  \
  50.266 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_connection.cpp
  50.267 -"release\moc_connection.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.268 -	$(BuildCmds)
  50.269 -
  50.270 -# End Custom Build
  50.271 -
  50.272 -!ENDIF
  50.273 -# End Source File
  50.274 -
  50.275 -# Begin Source File
  50.276 -SOURCE=dataPacket.h
  50.277 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.278 -
  50.279 -USERDEP_dataPacket.h=
  50.280 -# PROP Ignore_Default_Tool 1
  50.281 -# Begin Custom Build - Running MOC on dataPacket.h
  50.282 -InputPath=dataPacket.h
  50.283 -BuildCmds=  \
  50.284 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_dataPacket.cpp
  50.285 -"debug\moc_dataPacket.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.286 -	$(BuildCmds)
  50.287 -
  50.288 -# End Custom Build
  50.289 -
  50.290 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.291 -
  50.292 -USERDEP_dataPacket.h=
  50.293 -# PROP Ignore_Default_Tool 1
  50.294 -# Begin Custom Build - Running MOC on dataPacket.h
  50.295 -InputPath=dataPacket.h
  50.296 -BuildCmds=  \
  50.297 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_dataPacket.cpp
  50.298 -"release\moc_dataPacket.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.299 -	$(BuildCmds)
  50.300 -
  50.301 -# End Custom Build
  50.302 -
  50.303 -!ENDIF
  50.304 -# End Source File
  50.305 -
  50.306 -# Begin Source File
  50.307 -SOURCE=debugWidget.h
  50.308 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.309 -
  50.310 -USERDEP_debugWidget.h=
  50.311 -# PROP Ignore_Default_Tool 1
  50.312 -# Begin Custom Build - Running MOC on debugWidget.h
  50.313 -InputPath=debugWidget.h
  50.314 -BuildCmds=  \
  50.315 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_debugWidget.cpp
  50.316 -"debug\moc_debugWidget.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.317 -	$(BuildCmds)
  50.318 -
  50.319 -# End Custom Build
  50.320 -
  50.321 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.322 -
  50.323 -USERDEP_debugWidget.h=
  50.324 -# PROP Ignore_Default_Tool 1
  50.325 -# Begin Custom Build - Running MOC on debugWidget.h
  50.326 -InputPath=debugWidget.h
  50.327 -BuildCmds=  \
  50.328 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_debugWidget.cpp
  50.329 -"release\moc_debugWidget.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.330 -	$(BuildCmds)
  50.331 -
  50.332 -# End Custom Build
  50.333 -
  50.334 -!ENDIF
  50.335 -# End Source File
  50.336 -
  50.337 -# Begin Source File
  50.338 -SOURCE=hello.h
  50.339 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.340 -
  50.341 -USERDEP_hello.h=
  50.342 -# PROP Ignore_Default_Tool 1
  50.343 -# Begin Custom Build - Running MOC on hello.h
  50.344 -InputPath=hello.h
  50.345 -BuildCmds=  \
  50.346 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_hello.cpp
  50.347 -"debug\moc_hello.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.348 -	$(BuildCmds)
  50.349 -
  50.350 -# End Custom Build
  50.351 -
  50.352 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.353 -
  50.354 -USERDEP_hello.h=
  50.355 -# PROP Ignore_Default_Tool 1
  50.356 -# Begin Custom Build - Running MOC on hello.h
  50.357 -InputPath=hello.h
  50.358 -BuildCmds=  \
  50.359 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_hello.cpp
  50.360 -"release\moc_hello.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.361 -	$(BuildCmds)
  50.362 -
  50.363 -# End Custom Build
  50.364 -
  50.365 -!ENDIF
  50.366 -# End Source File
  50.367 -
  50.368 -# Begin Source File
  50.369 -SOURCE=main.h
  50.370 -# End Source File
  50.371 -
  50.372 -# Begin Source File
  50.373 -SOURCE=messageFile.h
  50.374 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.375 -
  50.376 -USERDEP_messageFile.h=
  50.377 -# PROP Ignore_Default_Tool 1
  50.378 -# Begin Custom Build - Running MOC on messageFile.h
  50.379 -InputPath=messageFile.h
  50.380 -BuildCmds=  \
  50.381 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_messageFile.cpp
  50.382 -"debug\moc_messageFile.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.383 -	$(BuildCmds)
  50.384 -
  50.385 -# End Custom Build
  50.386 -
  50.387 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.388 -
  50.389 -USERDEP_messageFile.h=
  50.390 -# PROP Ignore_Default_Tool 1
  50.391 -# Begin Custom Build - Running MOC on messageFile.h
  50.392 -InputPath=messageFile.h
  50.393 -BuildCmds=  \
  50.394 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_messageFile.cpp
  50.395 -"release\moc_messageFile.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.396 -	$(BuildCmds)
  50.397 -
  50.398 -# End Custom Build
  50.399 -
  50.400 -!ENDIF
  50.401 -# End Source File
  50.402 -
  50.403 -# Begin Source File
  50.404 -SOURCE=msgWidget.h
  50.405 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.406 -
  50.407 -USERDEP_msgWidget.h=
  50.408 -# PROP Ignore_Default_Tool 1
  50.409 -# Begin Custom Build - Running MOC on msgWidget.h
  50.410 -InputPath=msgWidget.h
  50.411 -BuildCmds=  \
  50.412 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_msgWidget.cpp
  50.413 -"debug\moc_msgWidget.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.414 -	$(BuildCmds)
  50.415 -
  50.416 -# End Custom Build
  50.417 -
  50.418 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.419 -
  50.420 -USERDEP_msgWidget.h=
  50.421 -# PROP Ignore_Default_Tool 1
  50.422 -# Begin Custom Build - Running MOC on msgWidget.h
  50.423 -InputPath=msgWidget.h
  50.424 -BuildCmds=  \
  50.425 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_msgWidget.cpp
  50.426 -"release\moc_msgWidget.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.427 -	$(BuildCmds)
  50.428 -
  50.429 -# End Custom Build
  50.430 -
  50.431 -!ENDIF
  50.432 -# End Source File
  50.433 -
  50.434 -# Begin Source File
  50.435 -SOURCE=neighbourAwareness.h
  50.436 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.437 -
  50.438 -USERDEP_neighbourAwareness.h=
  50.439 -# PROP Ignore_Default_Tool 1
  50.440 -# Begin Custom Build - Running MOC on neighbourAwareness.h
  50.441 -InputPath=neighbourAwareness.h
  50.442 -BuildCmds=  \
  50.443 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_neighbourAwareness.cpp
  50.444 -"debug\moc_neighbourAwareness.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.445 -	$(BuildCmds)
  50.446 -
  50.447 -# End Custom Build
  50.448 -
  50.449 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.450 -
  50.451 -USERDEP_neighbourAwareness.h=
  50.452 -# PROP Ignore_Default_Tool 1
  50.453 -# Begin Custom Build - Running MOC on neighbourAwareness.h
  50.454 -InputPath=neighbourAwareness.h
  50.455 -BuildCmds=  \
  50.456 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_neighbourAwareness.cpp
  50.457 -"release\moc_neighbourAwareness.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.458 -	$(BuildCmds)
  50.459 -
  50.460 -# End Custom Build
  50.461 -
  50.462 -!ENDIF
  50.463 -# End Source File
  50.464 -
  50.465 -# Begin Source File
  50.466 -SOURCE=node.h
  50.467 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.468 -
  50.469 -USERDEP_node.h=
  50.470 -# PROP Ignore_Default_Tool 1
  50.471 -# Begin Custom Build - Running MOC on node.h
  50.472 -InputPath=node.h
  50.473 -BuildCmds=  \
  50.474 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_node.cpp
  50.475 -"debug\moc_node.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.476 -	$(BuildCmds)
  50.477 -
  50.478 -# End Custom Build
  50.479 -
  50.480 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.481 -
  50.482 -USERDEP_node.h=
  50.483 -# PROP Ignore_Default_Tool 1
  50.484 -# Begin Custom Build - Running MOC on node.h
  50.485 -InputPath=node.h
  50.486 -BuildCmds=  \
  50.487 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_node.cpp
  50.488 -"release\moc_node.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.489 -	$(BuildCmds)
  50.490 -
  50.491 -# End Custom Build
  50.492 -
  50.493 -!ENDIF
  50.494 -# End Source File
  50.495 -
  50.496 -# Begin Source File
  50.497 -SOURCE=nodeManager.h
  50.498 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.499 -
  50.500 -USERDEP_nodeManager.h=
  50.501 -# PROP Ignore_Default_Tool 1
  50.502 -# Begin Custom Build - Running MOC on nodeManager.h
  50.503 -InputPath=nodeManager.h
  50.504 -BuildCmds=  \
  50.505 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_nodeManager.cpp
  50.506 -"debug\moc_nodeManager.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.507 -	$(BuildCmds)
  50.508 -
  50.509 -# End Custom Build
  50.510 -
  50.511 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.512 -
  50.513 -USERDEP_nodeManager.h=
  50.514 -# PROP Ignore_Default_Tool 1
  50.515 -# Begin Custom Build - Running MOC on nodeManager.h
  50.516 -InputPath=nodeManager.h
  50.517 -BuildCmds=  \
  50.518 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_nodeManager.cpp
  50.519 -"release\moc_nodeManager.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.520 -	$(BuildCmds)
  50.521 -
  50.522 -# End Custom Build
  50.523 -
  50.524 -!ENDIF
  50.525 -# End Source File
  50.526 -
  50.527 -# Begin Source File
  50.528 -SOURCE=readFile.h
  50.529 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.530 -
  50.531 -USERDEP_readFile.h=
  50.532 -# PROP Ignore_Default_Tool 1
  50.533 -# Begin Custom Build - Running MOC on readFile.h
  50.534 -InputPath=readFile.h
  50.535 -BuildCmds=  \
  50.536 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_readFile.cpp
  50.537 -"debug\moc_readFile.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.538 -	$(BuildCmds)
  50.539 -
  50.540 -# End Custom Build
  50.541 -
  50.542 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.543 -
  50.544 -USERDEP_readFile.h=
  50.545 -# PROP Ignore_Default_Tool 1
  50.546 -# Begin Custom Build - Running MOC on readFile.h
  50.547 -InputPath=readFile.h
  50.548 -BuildCmds=  \
  50.549 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_readFile.cpp
  50.550 -"release\moc_readFile.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.551 -	$(BuildCmds)
  50.552 -
  50.553 -# End Custom Build
  50.554 -
  50.555 -!ENDIF
  50.556 -# End Source File
  50.557 -
  50.558 -# Begin Source File
  50.559 -SOURCE=tcpClient.h
  50.560 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.561 -
  50.562 -USERDEP_tcpClient.h=
  50.563 -# PROP Ignore_Default_Tool 1
  50.564 -# Begin Custom Build - Running MOC on tcpClient.h
  50.565 -InputPath=tcpClient.h
  50.566 -BuildCmds=  \
  50.567 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_tcpClient.cpp
  50.568 -"debug\moc_tcpClient.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.569 -	$(BuildCmds)
  50.570 -
  50.571 -# End Custom Build
  50.572 -
  50.573 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.574 -
  50.575 -USERDEP_tcpClient.h=
  50.576 -# PROP Ignore_Default_Tool 1
  50.577 -# Begin Custom Build - Running MOC on tcpClient.h
  50.578 -InputPath=tcpClient.h
  50.579 -BuildCmds=  \
  50.580 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_tcpClient.cpp
  50.581 -"release\moc_tcpClient.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.582 -	$(BuildCmds)
  50.583 -
  50.584 -# End Custom Build
  50.585 -
  50.586 -!ENDIF
  50.587 -# End Source File
  50.588 -
  50.589 -# Begin Source File
  50.590 -SOURCE=tlv.h
  50.591 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.592 -
  50.593 -USERDEP_tlv.h=
  50.594 -# PROP Ignore_Default_Tool 1
  50.595 -# Begin Custom Build - Running MOC on tlv.h
  50.596 -InputPath=tlv.h
  50.597 -BuildCmds=  \
  50.598 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_tlv.cpp
  50.599 -"debug\moc_tlv.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.600 -	$(BuildCmds)
  50.601 -
  50.602 -# End Custom Build
  50.603 -
  50.604 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.605 -
  50.606 -USERDEP_tlv.h=
  50.607 -# PROP Ignore_Default_Tool 1
  50.608 -# Begin Custom Build - Running MOC on tlv.h
  50.609 -InputPath=tlv.h
  50.610 -BuildCmds=  \
  50.611 -	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_tlv.cpp
  50.612 -"release\moc_tlv.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
  50.613 -	$(BuildCmds)
  50.614 -
  50.615 -# End Custom Build
  50.616 -
  50.617 -!ENDIF
  50.618 -# End Source File
  50.619 -
  50.620 -# End Group
  50.621 -
  50.622 -# Begin Group "Generated"
  50.623 -# PROP Default_Filter ""
  50.624 -# Begin Source File
  50.625 -SOURCE=debug\moc_DTNInterface.cpp
  50.626 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.627 -
  50.628 -
  50.629 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.630 -
  50.631 -# PROP Exclude_From_Build 1
  50.632 -
  50.633 -!ENDIF
  50.634 -# End Source File
  50.635 -
  50.636 -# Begin Source File
  50.637 -SOURCE=debug\moc_bundle.cpp
  50.638 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.639 -
  50.640 -
  50.641 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.642 -
  50.643 -# PROP Exclude_From_Build 1
  50.644 -
  50.645 -!ENDIF
  50.646 -# End Source File
  50.647 -
  50.648 -# Begin Source File
  50.649 -SOURCE=debug\moc_bundleManager.cpp
  50.650 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.651 -
  50.652 -
  50.653 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.654 -
  50.655 -# PROP Exclude_From_Build 1
  50.656 -
  50.657 -!ENDIF
  50.658 -# End Source File
  50.659 -
  50.660 -# Begin Source File
  50.661 -SOURCE=debug\moc_connection.cpp
  50.662 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.663 -
  50.664 -
  50.665 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.666 -
  50.667 -# PROP Exclude_From_Build 1
  50.668 -
  50.669 -!ENDIF
  50.670 -# End Source File
  50.671 -
  50.672 -# Begin Source File
  50.673 -SOURCE=debug\moc_dataPacket.cpp
  50.674 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.675 -
  50.676 -
  50.677 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.678 -
  50.679 -# PROP Exclude_From_Build 1
  50.680 -
  50.681 -!ENDIF
  50.682 -# End Source File
  50.683 -
  50.684 -# Begin Source File
  50.685 -SOURCE=debug\moc_debugWidget.cpp
  50.686 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.687 -
  50.688 -
  50.689 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.690 -
  50.691 -# PROP Exclude_From_Build 1
  50.692 -
  50.693 -!ENDIF
  50.694 -# End Source File
  50.695 -
  50.696 -# Begin Source File
  50.697 -SOURCE=debug\moc_hello.cpp
  50.698 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.699 -
  50.700 -
  50.701 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.702 -
  50.703 -# PROP Exclude_From_Build 1
  50.704 -
  50.705 -!ENDIF
  50.706 -# End Source File
  50.707 -
  50.708 -# Begin Source File
  50.709 -SOURCE=debug\moc_messageFile.cpp
  50.710 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.711 -
  50.712 -
  50.713 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.714 -
  50.715 -# PROP Exclude_From_Build 1
  50.716 -
  50.717 -!ENDIF
  50.718 -# End Source File
  50.719 -
  50.720 -# Begin Source File
  50.721 -SOURCE=debug\moc_msgWidget.cpp
  50.722 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.723 -
  50.724 -
  50.725 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.726 -
  50.727 -# PROP Exclude_From_Build 1
  50.728 -
  50.729 -!ENDIF
  50.730 -# End Source File
  50.731 -
  50.732 -# Begin Source File
  50.733 -SOURCE=debug\moc_neighbourAwareness.cpp
  50.734 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.735 -
  50.736 -
  50.737 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.738 -
  50.739 -# PROP Exclude_From_Build 1
  50.740 -
  50.741 -!ENDIF
  50.742 -# End Source File
  50.743 -
  50.744 -# Begin Source File
  50.745 -SOURCE=debug\moc_node.cpp
  50.746 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.747 -
  50.748 -
  50.749 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.750 -
  50.751 -# PROP Exclude_From_Build 1
  50.752 -
  50.753 -!ENDIF
  50.754 -# End Source File
  50.755 -
  50.756 -# Begin Source File
  50.757 -SOURCE=debug\moc_nodeManager.cpp
  50.758 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.759 -
  50.760 -
  50.761 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.762 -
  50.763 -# PROP Exclude_From_Build 1
  50.764 -
  50.765 -!ENDIF
  50.766 -# End Source File
  50.767 -
  50.768 -# Begin Source File
  50.769 -SOURCE=debug\moc_readFile.cpp
  50.770 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.771 -
  50.772 -
  50.773 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.774 -
  50.775 -# PROP Exclude_From_Build 1
  50.776 -
  50.777 -!ENDIF
  50.778 -# End Source File
  50.779 -
  50.780 -# Begin Source File
  50.781 -SOURCE=debug\moc_tcpClient.cpp
  50.782 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.783 -
  50.784 -
  50.785 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.786 -
  50.787 -# PROP Exclude_From_Build 1
  50.788 -
  50.789 -!ENDIF
  50.790 -# End Source File
  50.791 -
  50.792 -# Begin Source File
  50.793 -SOURCE=debug\moc_tlv.cpp
  50.794 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.795 -
  50.796 -
  50.797 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.798 -
  50.799 -# PROP Exclude_From_Build 1
  50.800 -
  50.801 -!ENDIF
  50.802 -# End Source File
  50.803 -
  50.804 -# Begin Source File
  50.805 -SOURCE=release\moc_DTNInterface.cpp
  50.806 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.807 -
  50.808 -# PROP Exclude_From_Build 1
  50.809 -
  50.810 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.811 -
  50.812 -
  50.813 -!ENDIF
  50.814 -# End Source File
  50.815 -
  50.816 -# Begin Source File
  50.817 -SOURCE=release\moc_bundle.cpp
  50.818 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.819 -
  50.820 -# PROP Exclude_From_Build 1
  50.821 -
  50.822 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.823 -
  50.824 -
  50.825 -!ENDIF
  50.826 -# End Source File
  50.827 -
  50.828 -# Begin Source File
  50.829 -SOURCE=release\moc_bundleManager.cpp
  50.830 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.831 -
  50.832 -# PROP Exclude_From_Build 1
  50.833 -
  50.834 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.835 -
  50.836 -
  50.837 -!ENDIF
  50.838 -# End Source File
  50.839 -
  50.840 -# Begin Source File
  50.841 -SOURCE=release\moc_connection.cpp
  50.842 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.843 -
  50.844 -# PROP Exclude_From_Build 1
  50.845 -
  50.846 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.847 -
  50.848 -
  50.849 -!ENDIF
  50.850 -# End Source File
  50.851 -
  50.852 -# Begin Source File
  50.853 -SOURCE=release\moc_dataPacket.cpp
  50.854 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.855 -
  50.856 -# PROP Exclude_From_Build 1
  50.857 -
  50.858 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.859 -
  50.860 -
  50.861 -!ENDIF
  50.862 -# End Source File
  50.863 -
  50.864 -# Begin Source File
  50.865 -SOURCE=release\moc_debugWidget.cpp
  50.866 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.867 -
  50.868 -# PROP Exclude_From_Build 1
  50.869 -
  50.870 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.871 -
  50.872 -
  50.873 -!ENDIF
  50.874 -# End Source File
  50.875 -
  50.876 -# Begin Source File
  50.877 -SOURCE=release\moc_hello.cpp
  50.878 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.879 -
  50.880 -# PROP Exclude_From_Build 1
  50.881 -
  50.882 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.883 -
  50.884 -
  50.885 -!ENDIF
  50.886 -# End Source File
  50.887 -
  50.888 -# Begin Source File
  50.889 -SOURCE=release\moc_messageFile.cpp
  50.890 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.891 -
  50.892 -# PROP Exclude_From_Build 1
  50.893 -
  50.894 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.895 -
  50.896 -
  50.897 -!ENDIF
  50.898 -# End Source File
  50.899 -
  50.900 -# Begin Source File
  50.901 -SOURCE=release\moc_msgWidget.cpp
  50.902 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.903 -
  50.904 -# PROP Exclude_From_Build 1
  50.905 -
  50.906 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.907 -
  50.908 -
  50.909 -!ENDIF
  50.910 -# End Source File
  50.911 -
  50.912 -# Begin Source File
  50.913 -SOURCE=release\moc_neighbourAwareness.cpp
  50.914 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.915 -
  50.916 -# PROP Exclude_From_Build 1
  50.917 -
  50.918 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.919 -
  50.920 -
  50.921 -!ENDIF
  50.922 -# End Source File
  50.923 -
  50.924 -# Begin Source File
  50.925 -SOURCE=release\moc_node.cpp
  50.926 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.927 -
  50.928 -# PROP Exclude_From_Build 1
  50.929 -
  50.930 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.931 -
  50.932 -
  50.933 -!ENDIF
  50.934 -# End Source File
  50.935 -
  50.936 -# Begin Source File
  50.937 -SOURCE=release\moc_nodeManager.cpp
  50.938 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.939 -
  50.940 -# PROP Exclude_From_Build 1
  50.941 -
  50.942 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.943 -
  50.944 -
  50.945 -!ENDIF
  50.946 -# End Source File
  50.947 -
  50.948 -# Begin Source File
  50.949 -SOURCE=release\moc_readFile.cpp
  50.950 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.951 -
  50.952 -# PROP Exclude_From_Build 1
  50.953 -
  50.954 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.955 -
  50.956 -
  50.957 -!ENDIF
  50.958 -# End Source File
  50.959 -
  50.960 -# Begin Source File
  50.961 -SOURCE=release\moc_tcpClient.cpp
  50.962 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.963 -
  50.964 -# PROP Exclude_From_Build 1
  50.965 -
  50.966 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.967 -
  50.968 -
  50.969 -!ENDIF
  50.970 -# End Source File
  50.971 -
  50.972 -# Begin Source File
  50.973 -SOURCE=release\moc_tlv.cpp
  50.974 -!IF"$(CFG)" == "prophet - Win32 Debug"
  50.975 -
  50.976 -# PROP Exclude_From_Build 1
  50.977 -
  50.978 -!ELSEIF"$(CFG)" == "prophet - Win32 Release"
  50.979 -
  50.980 -
  50.981 -!ENDIF
  50.982 -# End Source File
  50.983 -
  50.984 -# End Group
  50.985 -
  50.986 -
  50.987 -# End Target
  50.988 -# End Project
    51.1 --- a/Win32/prophet.dsw	Wed Jan 03 09:17:10 2007 +0000
    51.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    51.3 @@ -1,29 +0,0 @@
    51.4 -Microsoft Developer Studio Workspace File, Format Version 6.00
    51.5 -# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
    51.6 -
    51.7 -###############################################################################
    51.8 -
    51.9 -Project: "prophet"=.\prophet.dsp - Package Owner=<4>
   51.10 -
   51.11 -Package=<5>
   51.12 -{{{
   51.13 -}}}
   51.14 -
   51.15 -Package=<4>
   51.16 -{{{
   51.17 -}}}
   51.18 -
   51.19 -###############################################################################
   51.20 -
   51.21 -Global:
   51.22 -
   51.23 -Package=<5>
   51.24 -{{{
   51.25 -}}}
   51.26 -
   51.27 -Package=<3>
   51.28 -{{{
   51.29 -}}}
   51.30 -
   51.31 -###############################################################################
   51.32 -
    52.1 Binary file Win32/prophet.e__ has changed
    53.1 --- a/Win32/prophet.ini	Wed Jan 03 09:17:10 2007 +0000
    53.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    53.3 @@ -1,30 +0,0 @@
    53.4 -NODEID=44
    53.5 -NODENAME=samonote.dtn
    53.6 -NODEIP=192.168.10.44
    53.7 -NODEIP2=192.168.0.3
    53.8 -NODEBROADCAST=255.255.255.255
    53.9 -BROADCAST=1000
   53.10 -AGINGTIMER=60000
   53.11 -PENCOUNTER=0.75
   53.12 -BETA=0.25
   53.13 -GAMMA=0.9989
   53.14 -HELLO=10000
   53.15 -ALIVE=60
   53.16 -HELLOTIMER=60000
   53.17 -INITIATORTIMER=60000
   53.18 -LISTENERTIMER=60000
   53.19 -DTNHOSTNAME=193.77.152.156
   53.20 -DTNHOSTPORT=5050
   53.21 -DNTTIMER=5000
   53.22 -STORAGESIZE=10000000
   53.23 -ROUTING=0
   53.24 -QUEUE=0
   53.25 -CONTINIUSUPDATE=1
   53.26 -STORAGEPATH=c:\Samo\PRoPHET\exe\list\
   53.27 -LOGPATH=c:\Samo\PRoPHET\exe\log\
   53.28 -MSGPATH=c:\Samo\PRoPHET\exe\storage\
   53.29 -AGEFILENODES=1
   53.30 -USEFILENODES=1
   53.31 -WRITETOFILETIMER=10000
   53.32 -USEFILEBUNDLES=1
   53.33 -LOGING=1
    54.1 --- a/Win32/prophet.log	Wed Jan 03 09:17:10 2007 +0000
    54.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    54.3 @@ -1,9583 +0,0 @@
    54.4 -14/06/2006 12:48:23.078  000>> 91>>>>>>>>>>Complete!
    54.5 -14/06/2006 12:48:23.078  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29674
    54.6 -14/06/2006 12:48:23.078  000>> Good datagram received!
    54.7 -14/06/2006 12:48:23.078  000>> Receive Hello:ACK
    54.8 -14/06/2006 12:48:23.178  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
    54.9 -14/06/2006 12:48:23.178  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29247
   54.10 -14/06/2006 12:48:23.178  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29248
   54.11 -14/06/2006 12:48:23.178  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29249
   54.12 -14/06/2006 12:48:23.178  000>> 98>>>>>>>>>>Part datagram received!
   54.13 -14/06/2006 12:48:23.178  000>> 98>>>>>>>>>>Complete!
   54.14 -14/06/2006 12:48:23.178  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29675
   54.15 -14/06/2006 12:48:23.178  000>> Good datagram received!
   54.16 -14/06/2006 12:48:23.188  000>> Listener:Received dictionary
   54.17 -14/06/2006 12:48:23.188  000>> 90>>>>>>>>>>Part datagram received!
   54.18 -14/06/2006 12:48:23.188  000>> 90>>>>>>>>>>Complete!
   54.19 -14/06/2006 12:48:23.188  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29676
   54.20 -14/06/2006 12:48:23.188  000>> Good datagram received!
   54.21 -14/06/2006 12:48:23.188  000>> Listener:Received RIB
   54.22 -14/06/2006 12:48:23.318  000>> 716>>>>>>>>>>Part datagram received!
   54.23 -14/06/2006 12:48:23.318  000>> 716>>>>>>>>>>Complete!
   54.24 -14/06/2006 12:48:23.318  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29677
   54.25 -14/06/2006 12:48:23.318  000>> Good datagram received!
   54.26 -14/06/2006 12:48:23.338  000>> Listener:Received Bundle Offer
   54.27 -14/06/2006 12:48:23.338  000>> Listener:Sending Empty bundle request...
   54.28 -14/06/2006 12:48:23.338  000>> Listener(receiveBOffer):But we can not restart connection...
   54.29 -14/06/2006 12:48:23.338  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29250
   54.30 -14/06/2006 12:48:23.338  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29678
   54.31 -14/06/2006 12:48:23.338  000>> Good datagram received!
   54.32 -14/06/2006 12:48:23.338  000>> Initiator:No more requested bundles
   54.33 -14/06/2006 12:48:23.338  000>> Listener(receiveBundles):We can restart connection...
   54.34 -14/06/2006 12:48:23.438  000>> Hello Procedure:SENDSYN
   54.35 -14/06/2006 12:48:23.438  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29251
   54.36 -14/06/2006 12:48:23.528  000>> 91>>>>>>>>>>Part datagram received!
   54.37 -14/06/2006 12:48:23.528  000>> 91>>>>>>>>>>Complete!
   54.38 -14/06/2006 12:48:23.528  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29679
   54.39 -14/06/2006 12:48:23.528  000>> Good datagram received!
   54.40 -14/06/2006 12:48:23.528  000>> Receive Hello:SYNACK
   54.41 -14/06/2006 12:48:23.528  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29252
   54.42 -14/06/2006 12:48:23.628  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
   54.43 -14/06/2006 12:48:23.628  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29253
   54.44 -14/06/2006 12:48:23.628  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29254
   54.45 -14/06/2006 12:48:23.628  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29255
   54.46 -14/06/2006 12:48:23.648  000>> 98>>>>>>>>>>Part datagram received!
   54.47 -14/06/2006 12:48:23.648  000>> 98>>>>>>>>>>Complete!
   54.48 -14/06/2006 12:48:23.648  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29680
   54.49 -14/06/2006 12:48:23.648  000>> Good datagram received!
   54.50 -14/06/2006 12:48:23.658  000>> Listener:Received dictionary
   54.51 -14/06/2006 12:48:23.658  000>> 90>>>>>>>>>>Part datagram received!
   54.52 -14/06/2006 12:48:23.658  000>> 90>>>>>>>>>>Complete!
   54.53 -14/06/2006 12:48:23.658  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29681
   54.54 -14/06/2006 12:48:23.658  000>> Good datagram received!
   54.55 -14/06/2006 12:48:23.658  000>> Listener:Received RIB
   54.56 -14/06/2006 12:48:23.819  000>> 716>>>>>>>>>>Part datagram received!
   54.57 -14/06/2006 12:48:23.819  000>> 716>>>>>>>>>>Complete!
   54.58 -14/06/2006 12:48:23.819  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29682
   54.59 -14/06/2006 12:48:23.819  000>> Good datagram received!
   54.60 -14/06/2006 12:48:23.839  000>> Listener:Received Bundle Offer
   54.61 -14/06/2006 12:48:23.839  000>> Listener:Sending Empty bundle request...
   54.62 -14/06/2006 12:48:23.839  000>> Listener(receiveBOffer):But we can not restart connection...
   54.63 -14/06/2006 12:48:23.839  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29256
   54.64 -14/06/2006 12:48:23.839  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29683
   54.65 -14/06/2006 12:48:23.839  000>> Good datagram received!
   54.66 -14/06/2006 12:48:23.839  000>> Initiator:No more requested bundles
   54.67 -14/06/2006 12:48:23.839  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
   54.68 -14/06/2006 12:48:24.049  000>> 91>>>>>>>>>>Part datagram received!
   54.69 -14/06/2006 12:48:24.049  000>> 91>>>>>>>>>>Complete!
   54.70 -14/06/2006 12:48:24.049  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29684
   54.71 -14/06/2006 12:48:24.049  000>> Good datagram received!
   54.72 -14/06/2006 12:48:24.059  000>> Receive Hello:SYN
   54.73 -14/06/2006 12:48:24.059  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29257
   54.74 -14/06/2006 12:48:24.079  000>> 91>>>>>>>>>>Part datagram received!
   54.75 -14/06/2006 12:48:24.079  000>> 91>>>>>>>>>>Complete!
   54.76 -14/06/2006 12:48:24.079  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29685
   54.77 -14/06/2006 12:48:24.079  000>> Good datagram received!
   54.78 -14/06/2006 12:48:24.079  000>> Receive Hello:ACK
   54.79 -14/06/2006 12:48:24.179  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
   54.80 -14/06/2006 12:48:24.179  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29258
   54.81 -14/06/2006 12:48:24.179  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29259
   54.82 -14/06/2006 12:48:24.179  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29260
   54.83 -14/06/2006 12:48:24.179  000>> 98>>>>>>>>>>Part datagram received!
   54.84 -14/06/2006 12:48:24.179  000>> 98>>>>>>>>>>Complete!
   54.85 -14/06/2006 12:48:24.179  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29686
   54.86 -14/06/2006 12:48:24.179  000>> Good datagram received!
   54.87 -14/06/2006 12:48:24.189  000>> Listener:Received dictionary
   54.88 -14/06/2006 12:48:24.189  000>> 90>>>>>>>>>>Part datagram received!
   54.89 -14/06/2006 12:48:24.189  000>> 90>>>>>>>>>>Complete!
   54.90 -14/06/2006 12:48:24.189  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29687
   54.91 -14/06/2006 12:48:24.189  000>> Good datagram received!
   54.92 -14/06/2006 12:48:24.189  000>> Listener:Received RIB
   54.93 -14/06/2006 12:48:24.319  000>> 716>>>>>>>>>>Part datagram received!
   54.94 -14/06/2006 12:48:24.319  000>> 716>>>>>>>>>>Complete!
   54.95 -14/06/2006 12:48:24.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29688
   54.96 -14/06/2006 12:48:24.319  000>> Good datagram received!
   54.97 -14/06/2006 12:48:24.339  000>> Listener:Received Bundle Offer
   54.98 -14/06/2006 12:48:24.339  000>> Listener:Sending Empty bundle request...
   54.99 -14/06/2006 12:48:24.339  000>> Listener(receiveBOffer):But we can not restart connection...
  54.100 -14/06/2006 12:48:24.339  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29261
  54.101 -14/06/2006 12:48:24.339  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29689
  54.102 -14/06/2006 12:48:24.339  000>> Good datagram received!
  54.103 -14/06/2006 12:48:24.349  000>> Initiator:No more requested bundles
  54.104 -14/06/2006 12:48:24.349  000>> Listener(receiveBundles):We can restart connection...
  54.105 -14/06/2006 12:48:24.450  000>> Hello Procedure:SENDSYN
  54.106 -14/06/2006 12:48:24.450  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29262
  54.107 -14/06/2006 12:48:24.550  000>> 91>>>>>>>>>>Part datagram received!
  54.108 -14/06/2006 12:48:24.550  000>> 91>>>>>>>>>>Complete!
  54.109 -14/06/2006 12:48:24.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29690
  54.110 -14/06/2006 12:48:24.560  000>> Good datagram received!
  54.111 -14/06/2006 12:48:24.560  000>> Receive Hello:SYNACK
  54.112 -14/06/2006 12:48:24.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29263
  54.113 -14/06/2006 12:48:24.660  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.114 -14/06/2006 12:48:24.660  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29264
  54.115 -14/06/2006 12:48:24.660  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29265
  54.116 -14/06/2006 12:48:24.660  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29266
  54.117 -14/06/2006 12:48:24.680  000>> 98>>>>>>>>>>Part datagram received!
  54.118 -14/06/2006 12:48:24.680  000>> 98>>>>>>>>>>Complete!
  54.119 -14/06/2006 12:48:24.690  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29691
  54.120 -14/06/2006 12:48:24.690  000>> Good datagram received!
  54.121 -14/06/2006 12:48:24.690  000>> Listener:Received dictionary
  54.122 -14/06/2006 12:48:24.690  000>> 90>>>>>>>>>>Part datagram received!
  54.123 -14/06/2006 12:48:24.690  000>> 90>>>>>>>>>>Complete!
  54.124 -14/06/2006 12:48:24.690  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29692
  54.125 -14/06/2006 12:48:24.690  000>> Good datagram received!
  54.126 -14/06/2006 12:48:24.690  000>> Listener:Received RIB
  54.127 -14/06/2006 12:48:24.820  000>> 716>>>>>>>>>>Part datagram received!
  54.128 -14/06/2006 12:48:24.820  000>> 716>>>>>>>>>>Complete!
  54.129 -14/06/2006 12:48:24.820  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29693
  54.130 -14/06/2006 12:48:24.820  000>> Good datagram received!
  54.131 -14/06/2006 12:48:24.840  000>> Listener:Received Bundle Offer
  54.132 -14/06/2006 12:48:24.840  000>> Listener:Sending Empty bundle request...
  54.133 -14/06/2006 12:48:24.840  000>> Listener(receiveBOffer):But we can not restart connection...
  54.134 -14/06/2006 12:48:24.840  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29267
  54.135 -14/06/2006 12:48:24.840  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29694
  54.136 -14/06/2006 12:48:24.840  000>> Good datagram received!
  54.137 -14/06/2006 12:48:24.840  000>> Initiator:No more requested bundles
  54.138 -14/06/2006 12:48:24.840  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
  54.139 -14/06/2006 12:48:25.040  000>> 91>>>>>>>>>>Part datagram received!
  54.140 -14/06/2006 12:48:25.040  000>> 91>>>>>>>>>>Complete!
  54.141 -14/06/2006 12:48:25.040  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29695
  54.142 -14/06/2006 12:48:25.040  000>> Good datagram received!
  54.143 -14/06/2006 12:48:25.040  000>> Receive Hello:SYN
  54.144 -14/06/2006 12:48:25.050  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29268
  54.145 -14/06/2006 12:48:25.081  000>> 91>>>>>>>>>>Part datagram received!
  54.146 -14/06/2006 12:48:25.081  000>> 91>>>>>>>>>>Complete!
  54.147 -14/06/2006 12:48:25.081  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29696
  54.148 -14/06/2006 12:48:25.081  000>> Good datagram received!
  54.149 -14/06/2006 12:48:25.081  000>> Receive Hello:ACK
  54.150 -14/06/2006 12:48:25.181  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.151 -14/06/2006 12:48:25.181  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29269
  54.152 -14/06/2006 12:48:25.181  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29270
  54.153 -14/06/2006 12:48:25.181  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29271
  54.154 -14/06/2006 12:48:25.211  000>> 98>>>>>>>>>>Part datagram received!
  54.155 -14/06/2006 12:48:25.211  000>> 98>>>>>>>>>>Complete!
  54.156 -14/06/2006 12:48:25.211  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29697
  54.157 -14/06/2006 12:48:25.221  000>> Good datagram received!
  54.158 -14/06/2006 12:48:25.221  000>> Listener:Received dictionary
  54.159 -14/06/2006 12:48:25.221  000>> 90>>>>>>>>>>Part datagram received!
  54.160 -14/06/2006 12:48:25.221  000>> 90>>>>>>>>>>Complete!
  54.161 -14/06/2006 12:48:25.221  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29698
  54.162 -14/06/2006 12:48:25.221  000>> Good datagram received!
  54.163 -14/06/2006 12:48:25.221  000>> Listener:Received RIB
  54.164 -14/06/2006 12:48:25.341  000>> 716>>>>>>>>>>Part datagram received!
  54.165 -14/06/2006 12:48:25.341  000>> 716>>>>>>>>>>Complete!
  54.166 -14/06/2006 12:48:25.341  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29699
  54.167 -14/06/2006 12:48:25.341  000>> Good datagram received!
  54.168 -14/06/2006 12:48:25.361  000>> Listener:Received Bundle Offer
  54.169 -14/06/2006 12:48:25.361  000>> Listener:Sending Empty bundle request...
  54.170 -14/06/2006 12:48:25.361  000>> Listener(receiveBOffer):But we can not restart connection...
  54.171 -14/06/2006 12:48:25.361  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29272
  54.172 -14/06/2006 12:48:25.361  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29700
  54.173 -14/06/2006 12:48:25.361  000>> Good datagram received!
  54.174 -14/06/2006 12:48:25.361  000>> Initiator:No more requested bundles
  54.175 -14/06/2006 12:48:25.361  000>> Listener(receiveBundles):We can restart connection...
  54.176 -14/06/2006 12:48:25.461  000>> Hello Procedure:SENDSYN
  54.177 -14/06/2006 12:48:25.461  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29273
  54.178 -14/06/2006 12:48:25.541  000>> 91>>>>>>>>>>Part datagram received!
  54.179 -14/06/2006 12:48:25.541  000>> 91>>>>>>>>>>Complete!
  54.180 -14/06/2006 12:48:25.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29701
  54.181 -14/06/2006 12:48:25.541  000>> Good datagram received!
  54.182 -14/06/2006 12:48:25.541  000>> Receive Hello:SYNACK
  54.183 -14/06/2006 12:48:25.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29274
  54.184 -14/06/2006 12:48:25.641  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.185 -14/06/2006 12:48:25.641  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29275
  54.186 -14/06/2006 12:48:25.641  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29276
  54.187 -14/06/2006 12:48:25.641  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29277
  54.188 -14/06/2006 12:48:25.661  000>> 98>>>>>>>>>>Part datagram received!
  54.189 -14/06/2006 12:48:25.661  000>> 98>>>>>>>>>>Complete!
  54.190 -14/06/2006 12:48:25.661  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29702
  54.191 -14/06/2006 12:48:25.661  000>> Good datagram received!
  54.192 -14/06/2006 12:48:25.671  000>> Listener:Received dictionary
  54.193 -14/06/2006 12:48:25.671  000>> 90>>>>>>>>>>Part datagram received!
  54.194 -14/06/2006 12:48:25.671  000>> 90>>>>>>>>>>Complete!
  54.195 -14/06/2006 12:48:25.671  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29703
  54.196 -14/06/2006 12:48:25.671  000>> Good datagram received!
  54.197 -14/06/2006 12:48:25.671  000>> Listener:Received RIB
  54.198 -14/06/2006 12:48:25.832  000>> 716>>>>>>>>>>Part datagram received!
  54.199 -14/06/2006 12:48:25.832  000>> 716>>>>>>>>>>Complete!
  54.200 -14/06/2006 12:48:25.832  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29704
  54.201 -14/06/2006 12:48:25.832  000>> Good datagram received!
  54.202 -14/06/2006 12:48:25.842  000>> Listener:Received Bundle Offer
  54.203 -14/06/2006 12:48:25.842  000>> Listener:Sending Empty bundle request...
  54.204 -14/06/2006 12:48:25.842  000>> Listener(receiveBOffer):But we can not restart connection...
  54.205 -14/06/2006 12:48:25.842  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29278
  54.206 -14/06/2006 12:48:25.852  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29705
  54.207 -14/06/2006 12:48:25.852  000>> Good datagram received!
  54.208 -14/06/2006 12:48:25.852  000>> Initiator:No more requested bundles
  54.209 -14/06/2006 12:48:25.852  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
  54.210 -14/06/2006 12:48:26.072  000>> 91>>>>>>>>>>Part datagram received!
  54.211 -14/06/2006 12:48:26.072  000>> 91>>>>>>>>>>Complete!
  54.212 -14/06/2006 12:48:26.072  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29706
  54.213 -14/06/2006 12:48:26.072  000>> Good datagram received!
  54.214 -14/06/2006 12:48:26.072  000>> Receive Hello:SYN
  54.215 -14/06/2006 12:48:26.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29279
  54.216 -14/06/2006 12:48:26.112  000>> 91>>>>>>>>>>Part datagram received!
  54.217 -14/06/2006 12:48:26.112  000>> 91>>>>>>>>>>Complete!
  54.218 -14/06/2006 12:48:26.112  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29707
  54.219 -14/06/2006 12:48:26.112  000>> Good datagram received!
  54.220 -14/06/2006 12:48:26.112  000>> Receive Hello:ACK
  54.221 -14/06/2006 12:48:26.212  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.222 -14/06/2006 12:48:26.212  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29280
  54.223 -14/06/2006 12:48:26.212  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29281
  54.224 -14/06/2006 12:48:26.212  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29282
  54.225 -14/06/2006 12:48:26.212  000>> 98>>>>>>>>>>Part datagram received!
  54.226 -14/06/2006 12:48:26.212  000>> 98>>>>>>>>>>Complete!
  54.227 -14/06/2006 12:48:26.212  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29708
  54.228 -14/06/2006 12:48:26.222  000>> Good datagram received!
  54.229 -14/06/2006 12:48:26.222  000>> Listener:Received dictionary
  54.230 -14/06/2006 12:48:26.232  000>> 90>>>>>>>>>>Part datagram received!
  54.231 -14/06/2006 12:48:26.232  000>> 90>>>>>>>>>>Complete!
  54.232 -14/06/2006 12:48:26.232  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29709
  54.233 -14/06/2006 12:48:26.242  000>> Good datagram received!
  54.234 -14/06/2006 12:48:26.242  000>> Listener:Received RIB
  54.235 -14/06/2006 12:48:26.432  000>> 716>>>>>>>>>>Part datagram received!
  54.236 -14/06/2006 12:48:26.432  000>> 716>>>>>>>>>>Complete!
  54.237 -14/06/2006 12:48:26.432  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29710
  54.238 -14/06/2006 12:48:26.432  000>> Good datagram received!
  54.239 -14/06/2006 12:48:26.442  000>> Listener:Received Bundle Offer
  54.240 -14/06/2006 12:48:26.442  000>> Listener:Sending Empty bundle request...
  54.241 -14/06/2006 12:48:26.442  000>> Listener(receiveBOffer):But we can not restart connection...
  54.242 -14/06/2006 12:48:26.442  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29283
  54.243 -14/06/2006 12:48:26.442  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29711
  54.244 -14/06/2006 12:48:26.453  000>> Good datagram received!
  54.245 -14/06/2006 12:48:26.453  000>> Initiator:No more requested bundles
  54.246 -14/06/2006 12:48:26.453  000>> Listener(receiveBundles):We can restart connection...
  54.247 -14/06/2006 12:48:26.553  000>> Hello Procedure:SENDSYN
  54.248 -14/06/2006 12:48:26.553  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29284
  54.249 -14/06/2006 12:48:26.653  000>> 91>>>>>>>>>>Part datagram received!
  54.250 -14/06/2006 12:48:26.653  000>> 91>>>>>>>>>>Complete!
  54.251 -14/06/2006 12:48:26.653  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29712
  54.252 -14/06/2006 12:48:26.653  000>> Good datagram received!
  54.253 -14/06/2006 12:48:26.653  000>> Receive Hello:SYNACK
  54.254 -14/06/2006 12:48:26.653  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29285
  54.255 -14/06/2006 12:48:26.753  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.256 -14/06/2006 12:48:26.753  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29286
  54.257 -14/06/2006 12:48:26.753  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29287
  54.258 -14/06/2006 12:48:26.753  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29288
  54.259 -14/06/2006 12:48:26.773  000>> 98>>>>>>>>>>Part datagram received!
  54.260 -14/06/2006 12:48:26.783  000>> 98>>>>>>>>>>Complete!
  54.261 -14/06/2006 12:48:26.783  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29713
  54.262 -14/06/2006 12:48:26.783  000>> Good datagram received!
  54.263 -14/06/2006 12:48:26.783  000>> Listener:Received dictionary
  54.264 -14/06/2006 12:48:26.783  000>> 90>>>>>>>>>>Part datagram received!
  54.265 -14/06/2006 12:48:26.783  000>> 90>>>>>>>>>>Complete!
  54.266 -14/06/2006 12:48:26.783  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29714
  54.267 -14/06/2006 12:48:26.783  000>> Good datagram received!
  54.268 -14/06/2006 12:48:26.783  000>> Listener:Received RIB
  54.269 -14/06/2006 12:48:26.933  000>> 716>>>>>>>>>>Part datagram received!
  54.270 -14/06/2006 12:48:26.933  000>> 716>>>>>>>>>>Complete!
  54.271 -14/06/2006 12:48:26.933  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29715
  54.272 -14/06/2006 12:48:26.933  000>> Good datagram received!
  54.273 -14/06/2006 12:48:26.943  000>> Listener:Received Bundle Offer
  54.274 -14/06/2006 12:48:26.943  000>> Listener:Sending Empty bundle request...
  54.275 -14/06/2006 12:48:26.943  000>> Listener(receiveBOffer):But we can not restart connection...
  54.276 -14/06/2006 12:48:26.953  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29289
  54.277 -14/06/2006 12:48:26.953  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29716
  54.278 -14/06/2006 12:48:26.953  000>> Good datagram received!
  54.279 -14/06/2006 12:48:26.953  000>> Initiator:No more requested bundles
  54.280 -14/06/2006 12:48:26.953  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
  54.281 -14/06/2006 12:48:27.073  000>> 91>>>>>>>>>>Part datagram received!
  54.282 -14/06/2006 12:48:27.073  000>> 91>>>>>>>>>>Complete!
  54.283 -14/06/2006 12:48:27.073  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29717
  54.284 -14/06/2006 12:48:27.073  000>> Good datagram received!
  54.285 -14/06/2006 12:48:27.083  000>> Receive Hello:SYN
  54.286 -14/06/2006 12:48:27.083  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29290
  54.287 -14/06/2006 12:48:27.103  000>> 91>>>>>>>>>>Part datagram received!
  54.288 -14/06/2006 12:48:27.103  000>> 91>>>>>>>>>>Complete!
  54.289 -14/06/2006 12:48:27.103  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29718
  54.290 -14/06/2006 12:48:27.103  000>> Good datagram received!
  54.291 -14/06/2006 12:48:27.103  000>> Receive Hello:ACK
  54.292 -14/06/2006 12:48:27.204  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.293 -14/06/2006 12:48:27.204  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29291
  54.294 -14/06/2006 12:48:27.204  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29292
  54.295 -14/06/2006 12:48:27.204  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29293
  54.296 -14/06/2006 12:48:27.204  000>> 98>>>>>>>>>>Part datagram received!
  54.297 -14/06/2006 12:48:27.204  000>> 98>>>>>>>>>>Complete!
  54.298 -14/06/2006 12:48:27.204  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29719
  54.299 -14/06/2006 12:48:27.204  000>> Good datagram received!
  54.300 -14/06/2006 12:48:27.214  000>> Listener:Received dictionary
  54.301 -14/06/2006 12:48:27.214  000>> 90>>>>>>>>>>Part datagram received!
  54.302 -14/06/2006 12:48:27.214  000>> 90>>>>>>>>>>Complete!
  54.303 -14/06/2006 12:48:27.214  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29720
  54.304 -14/06/2006 12:48:27.214  000>> Good datagram received!
  54.305 -14/06/2006 12:48:27.214  000>> Listener:Received RIB
  54.306 -14/06/2006 12:48:27.334  000>> 716>>>>>>>>>>Part datagram received!
  54.307 -14/06/2006 12:48:27.334  000>> 716>>>>>>>>>>Complete!
  54.308 -14/06/2006 12:48:27.334  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29721
  54.309 -14/06/2006 12:48:27.334  000>> Good datagram received!
  54.310 -14/06/2006 12:48:27.354  000>> Listener:Received Bundle Offer
  54.311 -14/06/2006 12:48:27.354  000>> Listener:Sending Empty bundle request...
  54.312 -14/06/2006 12:48:27.354  000>> Listener(receiveBOffer):But we can not restart connection...
  54.313 -14/06/2006 12:48:27.354  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29294
  54.314 -14/06/2006 12:48:27.354  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29722
  54.315 -14/06/2006 12:48:27.354  000>> Good datagram received!
  54.316 -14/06/2006 12:48:27.354  000>> Initiator:No more requested bundles
  54.317 -14/06/2006 12:48:27.354  000>> Listener(receiveBundles):We can restart connection...
  54.318 -14/06/2006 12:48:27.454  000>> Hello Procedure:SENDSYN
  54.319 -14/06/2006 12:48:27.454  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29295
  54.320 -14/06/2006 12:48:27.554  000>> 91>>>>>>>>>>Part datagram received!
  54.321 -14/06/2006 12:48:27.554  000>> 91>>>>>>>>>>Complete!
  54.322 -14/06/2006 12:48:27.554  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29723
  54.323 -14/06/2006 12:48:27.554  000>> Good datagram received!
  54.324 -14/06/2006 12:48:27.554  000>> Receive Hello:SYNACK
  54.325 -14/06/2006 12:48:27.554  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29296
  54.326 -14/06/2006 12:48:27.654  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.327 -14/06/2006 12:48:27.654  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29297
  54.328 -14/06/2006 12:48:27.654  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29298
  54.329 -14/06/2006 12:48:27.654  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29299
  54.330 -14/06/2006 12:48:27.674  000>> 98>>>>>>>>>>Part datagram received!
  54.331 -14/06/2006 12:48:27.674  000>> 98>>>>>>>>>>Complete!
  54.332 -14/06/2006 12:48:27.674  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29724
  54.333 -14/06/2006 12:48:27.674  000>> Good datagram received!
  54.334 -14/06/2006 12:48:27.674  000>> Listener:Received dictionary
  54.335 -14/06/2006 12:48:27.684  000>> 90>>>>>>>>>>Part datagram received!
  54.336 -14/06/2006 12:48:27.684  000>> 90>>>>>>>>>>Complete!
  54.337 -14/06/2006 12:48:27.684  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29725
  54.338 -14/06/2006 12:48:27.684  000>> Good datagram received!
  54.339 -14/06/2006 12:48:27.684  000>> Listener:Received RIB
  54.340 -14/06/2006 12:48:27.834  000>> 716>>>>>>>>>>Part datagram received!
  54.341 -14/06/2006 12:48:27.834  000>> 716>>>>>>>>>>Complete!
  54.342 -14/06/2006 12:48:27.834  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29726
  54.343 -14/06/2006 12:48:27.834  000>> Good datagram received!
  54.344 -14/06/2006 12:48:27.855  000>> Listener:Received Bundle Offer
  54.345 -14/06/2006 12:48:27.855  000>> Listener:Sending Empty bundle request...
  54.346 -14/06/2006 12:48:27.855  000>> Listener(receiveBOffer):But we can not restart connection...
  54.347 -14/06/2006 12:48:27.855  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29300
  54.348 -14/06/2006 12:48:27.855  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29727
  54.349 -14/06/2006 12:48:27.855  000>> Good datagram received!
  54.350 -14/06/2006 12:48:27.855  000>> Initiator:No more requested bundles
  54.351 -14/06/2006 12:48:27.855  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
  54.352 -14/06/2006 12:48:28.065  000>> 91>>>>>>>>>>Part datagram received!
  54.353 -14/06/2006 12:48:28.065  000>> 91>>>>>>>>>>Complete!
  54.354 -14/06/2006 12:48:28.065  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29728
  54.355 -14/06/2006 12:48:28.065  000>> Good datagram received!
  54.356 -14/06/2006 12:48:28.065  000>> Receive Hello:SYN
  54.357 -14/06/2006 12:48:28.065  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29301
  54.358 -14/06/2006 12:48:28.085  000>> 91>>>>>>>>>>Part datagram received!
  54.359 -14/06/2006 12:48:28.085  000>> 91>>>>>>>>>>Complete!
  54.360 -14/06/2006 12:48:28.085  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29729
  54.361 -14/06/2006 12:48:28.085  000>> Good datagram received!
  54.362 -14/06/2006 12:48:28.085  000>> Receive Hello:ACK
  54.363 -14/06/2006 12:48:28.185  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.364 -14/06/2006 12:48:28.185  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29302
  54.365 -14/06/2006 12:48:28.185  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29303
  54.366 -14/06/2006 12:48:28.185  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29304
  54.367 -14/06/2006 12:48:28.185  000>> 98>>>>>>>>>>Part datagram received!
  54.368 -14/06/2006 12:48:28.185  000>> 98>>>>>>>>>>Complete!
  54.369 -14/06/2006 12:48:28.185  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29730
  54.370 -14/06/2006 12:48:28.195  000>> Good datagram received!
  54.371 -14/06/2006 12:48:28.195  000>> Listener:Received dictionary
  54.372 -14/06/2006 12:48:28.205  000>> 90>>>>>>>>>>Part datagram received!
  54.373 -14/06/2006 12:48:28.205  000>> 90>>>>>>>>>>Complete!
  54.374 -14/06/2006 12:48:28.205  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29731
  54.375 -14/06/2006 12:48:28.205  000>> Good datagram received!
  54.376 -14/06/2006 12:48:28.205  000>> Listener:Received RIB
  54.377 -14/06/2006 12:48:28.335  000>> 716>>>>>>>>>>Part datagram received!
  54.378 -14/06/2006 12:48:28.335  000>> 716>>>>>>>>>>Complete!
  54.379 -14/06/2006 12:48:28.335  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29732
  54.380 -14/06/2006 12:48:28.335  000>> Good datagram received!
  54.381 -14/06/2006 12:48:28.345  000>> Listener:Received Bundle Offer
  54.382 -14/06/2006 12:48:28.355  000>> Listener:Sending Empty bundle request...
  54.383 -14/06/2006 12:48:28.355  000>> Listener(receiveBOffer):But we can not restart connection...
  54.384 -14/06/2006 12:48:28.355  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29305
  54.385 -14/06/2006 12:48:28.355  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29733
  54.386 -14/06/2006 12:48:28.355  000>> Good datagram received!
  54.387 -14/06/2006 12:48:28.355  000>> Initiator:No more requested bundles
  54.388 -14/06/2006 12:48:28.355  000>> Listener(receiveBundles):We can restart connection...
  54.389 -14/06/2006 12:48:28.455  000>> Hello Procedure:SENDSYN
  54.390 -14/06/2006 12:48:28.455  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29306
  54.391 -14/06/2006 12:48:28.546  000>> 91>>>>>>>>>>Part datagram received!
  54.392 -14/06/2006 12:48:28.546  000>> 91>>>>>>>>>>Complete!
  54.393 -14/06/2006 12:48:28.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29734
  54.394 -14/06/2006 12:48:28.546  000>> Good datagram received!
  54.395 -14/06/2006 12:48:28.546  000>> Receive Hello:SYNACK
  54.396 -14/06/2006 12:48:28.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29307
  54.397 -14/06/2006 12:48:28.646  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.398 -14/06/2006 12:48:28.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29308
  54.399 -14/06/2006 12:48:28.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29309
  54.400 -14/06/2006 12:48:28.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29310
  54.401 -14/06/2006 12:48:28.686  000>> 98>>>>>>>>>>Part datagram received!
  54.402 -14/06/2006 12:48:28.686  000>> 98>>>>>>>>>>Complete!
  54.403 -14/06/2006 12:48:28.686  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29735
  54.404 -14/06/2006 12:48:28.686  000>> Good datagram received!
  54.405 -14/06/2006 12:48:28.686  000>> Listener:Received dictionary
  54.406 -14/06/2006 12:48:28.716  000>> 90>>>>>>>>>>Part datagram received!
  54.407 -14/06/2006 12:48:28.716  000>> 90>>>>>>>>>>Complete!
  54.408 -14/06/2006 12:48:28.716  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29736
  54.409 -14/06/2006 12:48:28.716  000>> Good datagram received!
  54.410 -14/06/2006 12:48:28.716  000>> Listener:Received RIB
  54.411 -14/06/2006 12:48:28.836  000>> 716>>>>>>>>>>Part datagram received!
  54.412 -14/06/2006 12:48:28.836  000>> 716>>>>>>>>>>Complete!
  54.413 -14/06/2006 12:48:28.836  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29737
  54.414 -14/06/2006 12:48:28.836  000>> Good datagram received!
  54.415 -14/06/2006 12:48:28.856  000>> Listener:Received Bundle Offer
  54.416 -14/06/2006 12:48:28.856  000>> Listener:Sending Empty bundle request...
  54.417 -14/06/2006 12:48:28.856  000>> Listener(receiveBOffer):But we can not restart connection...
  54.418 -14/06/2006 12:48:28.856  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29311
  54.419 -14/06/2006 12:48:28.856  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29738
  54.420 -14/06/2006 12:48:28.856  000>> Good datagram received!
  54.421 -14/06/2006 12:48:28.856  000>> Initiator:No more requested bundles
  54.422 -14/06/2006 12:48:28.856  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
  54.423 -14/06/2006 12:48:29.106  000>> 91>>>>>>>>>>Part datagram received!
  54.424 -14/06/2006 12:48:29.106  000>> 91>>>>>>>>>>Complete!
  54.425 -14/06/2006 12:48:29.106  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29739
  54.426 -14/06/2006 12:48:29.106  000>> Good datagram received!
  54.427 -14/06/2006 12:48:29.106  000>> Receive Hello:SYN
  54.428 -14/06/2006 12:48:29.106  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29312
  54.429 -14/06/2006 12:48:29.126  000>> 91>>>>>>>>>>Part datagram received!
  54.430 -14/06/2006 12:48:29.126  000>> 91>>>>>>>>>>Complete!
  54.431 -14/06/2006 12:48:29.126  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29740
  54.432 -14/06/2006 12:48:29.126  000>> Good datagram received!
  54.433 -14/06/2006 12:48:29.126  000>> Receive Hello:ACK
  54.434 -14/06/2006 12:48:29.226  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.435 -14/06/2006 12:48:29.226  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29313
  54.436 -14/06/2006 12:48:29.226  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29314
  54.437 -14/06/2006 12:48:29.226  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29315
  54.438 -14/06/2006 12:48:29.226  000>> 98>>>>>>>>>>Part datagram received!
  54.439 -14/06/2006 12:48:29.226  000>> 98>>>>>>>>>>Complete!
  54.440 -14/06/2006 12:48:29.237  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29741
  54.441 -14/06/2006 12:48:29.237  000>> Good datagram received!
  54.442 -14/06/2006 12:48:29.237  000>> Listener:Received dictionary
  54.443 -14/06/2006 12:48:29.247  000>> 90>>>>>>>>>>Part datagram received!
  54.444 -14/06/2006 12:48:29.247  000>> 90>>>>>>>>>>Complete!
  54.445 -14/06/2006 12:48:29.247  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29742
  54.446 -14/06/2006 12:48:29.247  000>> Good datagram received!
  54.447 -14/06/2006 12:48:29.247  000>> Listener:Received RIB
  54.448 -14/06/2006 12:48:29.437  000>> 716>>>>>>>>>>Part datagram received!
  54.449 -14/06/2006 12:48:29.437  000>> 716>>>>>>>>>>Complete!
  54.450 -14/06/2006 12:48:29.437  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29743
  54.451 -14/06/2006 12:48:29.437  000>> Good datagram received!
  54.452 -14/06/2006 12:48:29.457  000>> Listener:Received Bundle Offer
  54.453 -14/06/2006 12:48:29.457  000>> Listener:Sending Empty bundle request...
  54.454 -14/06/2006 12:48:29.457  000>> Listener(receiveBOffer):But we can not restart connection...
  54.455 -14/06/2006 12:48:29.457  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29316
  54.456 -14/06/2006 12:48:29.457  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29744
  54.457 -14/06/2006 12:48:29.457  000>> Good datagram received!
  54.458 -14/06/2006 12:48:29.457  000>> Initiator:No more requested bundles
  54.459 -14/06/2006 12:48:29.457  000>> Listener(receiveBundles):We can restart connection...
  54.460 -14/06/2006 12:48:29.557  000>> Hello Procedure:SENDSYN
  54.461 -14/06/2006 12:48:29.557  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29317
  54.462 -14/06/2006 12:48:29.647  000>> 91>>>>>>>>>>Part datagram received!
  54.463 -14/06/2006 12:48:29.647  000>> 91>>>>>>>>>>Complete!
  54.464 -14/06/2006 12:48:29.647  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29745
  54.465 -14/06/2006 12:48:29.647  000>> Good datagram received!
  54.466 -14/06/2006 12:48:29.647  000>> Receive Hello:SYNACK
  54.467 -14/06/2006 12:48:29.657  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29318
  54.468 -14/06/2006 12:48:29.757  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.469 -14/06/2006 12:48:29.757  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29319
  54.470 -14/06/2006 12:48:29.757  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29320
  54.471 -14/06/2006 12:48:29.757  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29321
  54.472 -14/06/2006 12:48:29.777  000>> 98>>>>>>>>>>Part datagram received!
  54.473 -14/06/2006 12:48:29.777  000>> 98>>>>>>>>>>Complete!
  54.474 -14/06/2006 12:48:29.777  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29746
  54.475 -14/06/2006 12:48:29.787  000>> Good datagram received!
  54.476 -14/06/2006 12:48:29.787  000>> Listener:Received dictionary
  54.477 -14/06/2006 12:48:29.787  000>> 90>>>>>>>>>>Part datagram received!
  54.478 -14/06/2006 12:48:29.787  000>> 90>>>>>>>>>>Complete!
  54.479 -14/06/2006 12:48:29.787  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29747
  54.480 -14/06/2006 12:48:29.787  000>> Good datagram received!
  54.481 -14/06/2006 12:48:29.787  000>> Listener:Received RIB
  54.482 -14/06/2006 12:48:29.938  000>> 716>>>>>>>>>>Part datagram received!
  54.483 -14/06/2006 12:48:29.938  000>> 716>>>>>>>>>>Complete!
  54.484 -14/06/2006 12:48:29.938  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29748
  54.485 -14/06/2006 12:48:29.938  000>> Good datagram received!
  54.486 -14/06/2006 12:48:29.958  000>> Listener:Received Bundle Offer
  54.487 -14/06/2006 12:48:29.958  000>> Listener:Sending Empty bundle request...
  54.488 -14/06/2006 12:48:29.958  000>> Listener(receiveBOffer):But we can not restart connection...
  54.489 -14/06/2006 12:48:29.958  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29322
  54.490 -14/06/2006 12:48:29.958  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29749
  54.491 -14/06/2006 12:48:29.958  000>> Good datagram received!
  54.492 -14/06/2006 12:48:29.958  000>> Initiator:No more requested bundles
  54.493 -14/06/2006 12:48:29.958  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
  54.494 -14/06/2006 12:48:30.088  000>> 91>>>>>>>>>>Part datagram received!
  54.495 -14/06/2006 12:48:30.088  000>> 91>>>>>>>>>>Complete!
  54.496 -14/06/2006 12:48:30.088  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29750
  54.497 -14/06/2006 12:48:30.088  000>> Good datagram received!
  54.498 -14/06/2006 12:48:30.088  000>> Receive Hello:SYN
  54.499 -14/06/2006 12:48:30.088  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29323
  54.500 -14/06/2006 12:48:30.118  000>> 91>>>>>>>>>>Part datagram received!
  54.501 -14/06/2006 12:48:30.118  000>> 91>>>>>>>>>>Complete!
  54.502 -14/06/2006 12:48:30.118  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29751
  54.503 -14/06/2006 12:48:30.118  000>> Good datagram received!
  54.504 -14/06/2006 12:48:30.118  000>> Receive Hello:ACK
  54.505 -14/06/2006 12:48:30.218  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.506 -14/06/2006 12:48:30.218  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29324
  54.507 -14/06/2006 12:48:30.218  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29325
  54.508 -14/06/2006 12:48:30.218  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29326
  54.509 -14/06/2006 12:48:30.218  000>> 98>>>>>>>>>>Part datagram received!
  54.510 -14/06/2006 12:48:30.218  000>> 98>>>>>>>>>>Complete!
  54.511 -14/06/2006 12:48:30.218  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29752
  54.512 -14/06/2006 12:48:30.228  000>> Good datagram received!
  54.513 -14/06/2006 12:48:30.228  000>> Listener:Received dictionary
  54.514 -14/06/2006 12:48:30.228  000>> 90>>>>>>>>>>Part datagram received!
  54.515 -14/06/2006 12:48:30.228  000>> 90>>>>>>>>>>Complete!
  54.516 -14/06/2006 12:48:30.228  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29753
  54.517 -14/06/2006 12:48:30.228  000>> Good datagram received!
  54.518 -14/06/2006 12:48:30.228  000>> Listener:Received RIB
  54.519 -14/06/2006 12:48:30.348  000>> 716>>>>>>>>>>Part datagram received!
  54.520 -14/06/2006 12:48:30.348  000>> 716>>>>>>>>>>Complete!
  54.521 -14/06/2006 12:48:30.358  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29754
  54.522 -14/06/2006 12:48:30.358  000>> Good datagram received!
  54.523 -14/06/2006 12:48:30.368  000>> Listener:Received Bundle Offer
  54.524 -14/06/2006 12:48:30.368  000>> Listener:Sending Empty bundle request...
  54.525 -14/06/2006 12:48:30.368  000>> Listener(receiveBOffer):But we can not restart connection...
  54.526 -14/06/2006 12:48:30.368  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29327
  54.527 -14/06/2006 12:48:30.368  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29755
  54.528 -14/06/2006 12:48:30.368  000>> Good datagram received!
  54.529 -14/06/2006 12:48:30.368  000>> Initiator:No more requested bundles
  54.530 -14/06/2006 12:48:30.378  000>> Listener(receiveBundles):We can restart connection...
  54.531 -14/06/2006 12:48:30.478  000>> Hello Procedure:SENDSYN
  54.532 -14/06/2006 12:48:30.478  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29328
  54.533 -14/06/2006 12:48:30.548  000>> 91>>>>>>>>>>Part datagram received!
  54.534 -14/06/2006 12:48:30.548  000>> 91>>>>>>>>>>Complete!
  54.535 -14/06/2006 12:48:30.548  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29756
  54.536 -14/06/2006 12:48:30.548  000>> Good datagram received!
  54.537 -14/06/2006 12:48:30.548  000>> Receive Hello:SYNACK
  54.538 -14/06/2006 12:48:30.558  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29329
  54.539 -14/06/2006 12:48:30.659  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.540 -14/06/2006 12:48:30.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29330
  54.541 -14/06/2006 12:48:30.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29331
  54.542 -14/06/2006 12:48:30.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29332
  54.543 -14/06/2006 12:48:30.679  000>> 98>>>>>>>>>>Part datagram received!
  54.544 -14/06/2006 12:48:30.679  000>> 98>>>>>>>>>>Complete!
  54.545 -14/06/2006 12:48:30.679  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29757
  54.546 -14/06/2006 12:48:30.679  000>> Good datagram received!
  54.547 -14/06/2006 12:48:30.679  000>> Listener:Received dictionary
  54.548 -14/06/2006 12:48:30.679  000>> 90>>>>>>>>>>Part datagram received!
  54.549 -14/06/2006 12:48:30.679  000>> 90>>>>>>>>>>Complete!
  54.550 -14/06/2006 12:48:30.689  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29758
  54.551 -14/06/2006 12:48:30.689  000>> Good datagram received!
  54.552 -14/06/2006 12:48:30.689  000>> Listener:Received RIB
  54.553 -14/06/2006 12:48:30.839  000>> 716>>>>>>>>>>Part datagram received!
  54.554 -14/06/2006 12:48:30.839  000>> 716>>>>>>>>>>Complete!
  54.555 -14/06/2006 12:48:30.849  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29759
  54.556 -14/06/2006 12:48:30.849  000>> Good datagram received!
  54.557 -14/06/2006 12:48:30.859  000>> Listener:Received Bundle Offer
  54.558 -14/06/2006 12:48:30.859  000>> Listener:Sending Empty bundle request...
  54.559 -14/06/2006 12:48:30.859  000>> Listener(receiveBOffer):But we can not restart connection...
  54.560 -14/06/2006 12:48:30.859  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29333
  54.561 -14/06/2006 12:48:30.859  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29760
  54.562 -14/06/2006 12:48:30.859  000>> Good datagram received!
  54.563 -14/06/2006 12:48:30.869  000>> Initiator:No more requested bundles
  54.564 -14/06/2006 12:48:30.869  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
  54.565 -14/06/2006 12:48:31.069  000>> 91>>>>>>>>>>Part datagram received!
  54.566 -14/06/2006 12:48:31.069  000>> 91>>>>>>>>>>Complete!
  54.567 -14/06/2006 12:48:31.069  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29761
  54.568 -14/06/2006 12:48:31.069  000>> Good datagram received!
  54.569 -14/06/2006 12:48:31.069  000>> Receive Hello:SYN
  54.570 -14/06/2006 12:48:31.069  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29334
  54.571 -14/06/2006 12:48:31.089  000>> 91>>>>>>>>>>Part datagram received!
  54.572 -14/06/2006 12:48:31.089  000>> 91>>>>>>>>>>Complete!
  54.573 -14/06/2006 12:48:31.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29762
  54.574 -14/06/2006 12:48:31.099  000>> Good datagram received!
  54.575 -14/06/2006 12:48:31.099  000>> Receive Hello:ACK
  54.576 -14/06/2006 12:48:31.199  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.577 -14/06/2006 12:48:31.199  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29335
  54.578 -14/06/2006 12:48:31.199  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29336
  54.579 -14/06/2006 12:48:31.199  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29337
  54.580 -14/06/2006 12:48:31.199  000>> 98>>>>>>>>>>Part datagram received!
  54.581 -14/06/2006 12:48:31.199  000>> 98>>>>>>>>>>Complete!
  54.582 -14/06/2006 12:48:31.199  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29763
  54.583 -14/06/2006 12:48:31.199  000>> Good datagram received!
  54.584 -14/06/2006 12:48:31.199  000>> Listener:Received dictionary
  54.585 -14/06/2006 12:48:31.209  000>> 90>>>>>>>>>>Part datagram received!
  54.586 -14/06/2006 12:48:31.209  000>> 90>>>>>>>>>>Complete!
  54.587 -14/06/2006 12:48:31.209  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29764
  54.588 -14/06/2006 12:48:31.209  000>> Good datagram received!
  54.589 -14/06/2006 12:48:31.209  000>> Listener:Received RIB
  54.590 -14/06/2006 12:48:31.209  000>> 638>>>>>>>>>>Part datagram received!
  54.591 -14/06/2006 12:48:31.209  000>> 638>>>>>>>>>>Complete!
  54.592 -14/06/2006 12:48:31.209  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29765
  54.593 -14/06/2006 12:48:31.209  000>> Good datagram received!
  54.594 -14/06/2006 12:48:31.229  000>> Listener:Received Bundle Offer
  54.595 -14/06/2006 12:48:31.229  000>> Listener:Sending Empty bundle request...
  54.596 -14/06/2006 12:48:31.229  000>> Listener(receiveBOffer):But we can not restart connection...
  54.597 -14/06/2006 12:48:31.229  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29338
  54.598 -14/06/2006 12:48:31.229  000>> 0>>>>>>>>>>Part datagram received!
  54.599 -14/06/2006 12:48:31.239  000>> 0>>>>>>>>>>Part datagram received!
  54.600 -14/06/2006 12:48:31.309  000>> 78>>>>>>>>>>Part datagram received!
  54.601 -14/06/2006 12:48:31.319  000>> 78>>>>>>>>>>Complete!
  54.602 -14/06/2006 12:48:31.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29766
  54.603 -14/06/2006 12:48:31.319  000>> Good datagram received!
  54.604 -14/06/2006 12:48:31.319  000>> Initiator:No more requested bundles
  54.605 -14/06/2006 12:48:31.319  000>> Listener(receiveBundles):We can restart connection...
  54.606 -14/06/2006 12:48:31.420  000>> Hello Procedure:SENDSYN
  54.607 -14/06/2006 12:48:31.420  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29339
  54.608 -14/06/2006 12:48:31.460  000>> 91>>>>>>>>>>Part datagram received!
  54.609 -14/06/2006 12:48:31.460  000>> 91>>>>>>>>>>Complete!
  54.610 -14/06/2006 12:48:31.460  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29767
  54.611 -14/06/2006 12:48:31.460  000>> Good datagram received!
  54.612 -14/06/2006 12:48:31.460  000>> Receive Hello:SYNACK
  54.613 -14/06/2006 12:48:31.460  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29340
  54.614 -14/06/2006 12:48:31.560  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.615 -14/06/2006 12:48:31.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29341
  54.616 -14/06/2006 12:48:31.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29342
  54.617 -14/06/2006 12:48:31.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29343
  54.618 -14/06/2006 12:48:31.580  000>> 98>>>>>>>>>>Part datagram received!
  54.619 -14/06/2006 12:48:31.580  000>> 98>>>>>>>>>>Complete!
  54.620 -14/06/2006 12:48:31.580  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29768
  54.621 -14/06/2006 12:48:31.580  000>> Good datagram received!
  54.622 -14/06/2006 12:48:31.580  000>> Listener:Received dictionary
  54.623 -14/06/2006 12:48:31.580  000>> 90>>>>>>>>>>Part datagram received!
  54.624 -14/06/2006 12:48:31.580  000>> 90>>>>>>>>>>Complete!
  54.625 -14/06/2006 12:48:31.590  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29769
  54.626 -14/06/2006 12:48:31.590  000>> Good datagram received!
  54.627 -14/06/2006 12:48:31.590  000>> Listener:Received RIB
  54.628 -14/06/2006 12:48:31.740  000>> 716>>>>>>>>>>Part datagram received!
  54.629 -14/06/2006 12:48:31.750  000>> 716>>>>>>>>>>Complete!
  54.630 -14/06/2006 12:48:31.750  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29770
  54.631 -14/06/2006 12:48:31.750  000>> Good datagram received!
  54.632 -14/06/2006 12:48:31.760  000>> Listener:Received Bundle Offer
  54.633 -14/06/2006 12:48:31.760  000>> Listener:Sending Empty bundle request...
  54.634 -14/06/2006 12:48:31.760  000>> Listener(receiveBOffer):But we can not restart connection...
  54.635 -14/06/2006 12:48:31.760  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29344
  54.636 -14/06/2006 12:48:31.760  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29771
  54.637 -14/06/2006 12:48:31.760  000>> Good datagram received!
  54.638 -14/06/2006 12:48:31.770  000>> Initiator:No more requested bundles
  54.639 -14/06/2006 12:48:31.770  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
  54.640 -14/06/2006 12:48:31.960  000>> 91>>>>>>>>>>Part datagram received!
  54.641 -14/06/2006 12:48:31.960  000>> 91>>>>>>>>>>Complete!
  54.642 -14/06/2006 12:48:31.960  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29772
  54.643 -14/06/2006 12:48:31.960  000>> Good datagram received!
  54.644 -14/06/2006 12:48:31.960  000>> Receive Hello:SYN
  54.645 -14/06/2006 12:48:31.960  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29345
  54.646 -14/06/2006 12:48:31.980  000>> 91>>>>>>>>>>Part datagram received!
  54.647 -14/06/2006 12:48:31.980  000>> 91>>>>>>>>>>Complete!
  54.648 -14/06/2006 12:48:31.980  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29773
  54.649 -14/06/2006 12:48:31.980  000>> Good datagram received!
  54.650 -14/06/2006 12:48:31.980  000>> Receive Hello:ACK
  54.651 -14/06/2006 12:48:32.081  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.652 -14/06/2006 12:48:32.081  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29346
  54.653 -14/06/2006 12:48:32.081  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29347
  54.654 -14/06/2006 12:48:32.081  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29348
  54.655 -14/06/2006 12:48:32.091  000>> 98>>>>>>>>>>Part datagram received!
  54.656 -14/06/2006 12:48:32.091  000>> 98>>>>>>>>>>Complete!
  54.657 -14/06/2006 12:48:32.091  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29774
  54.658 -14/06/2006 12:48:32.091  000>> Good datagram received!
  54.659 -14/06/2006 12:48:32.101  000>> Listener:Received dictionary
  54.660 -14/06/2006 12:48:32.111  000>> 90>>>>>>>>>>Part datagram received!
  54.661 -14/06/2006 12:48:32.111  000>> 90>>>>>>>>>>Complete!
  54.662 -14/06/2006 12:48:32.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29775
  54.663 -14/06/2006 12:48:32.111  000>> Good datagram received!
  54.664 -14/06/2006 12:48:32.111  000>> Listener:Received RIB
  54.665 -14/06/2006 12:48:32.251  000>> 716>>>>>>>>>>Part datagram received!
  54.666 -14/06/2006 12:48:32.251  000>> 716>>>>>>>>>>Complete!
  54.667 -14/06/2006 12:48:32.251  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29776
  54.668 -14/06/2006 12:48:32.251  000>> Good datagram received!
  54.669 -14/06/2006 12:48:32.261  000>> Listener:Received Bundle Offer
  54.670 -14/06/2006 12:48:32.261  000>> Listener:Sending Empty bundle request...
  54.671 -14/06/2006 12:48:32.261  000>> Listener(receiveBOffer):But we can not restart connection...
  54.672 -14/06/2006 12:48:32.261  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29349
  54.673 -14/06/2006 12:48:32.271  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29777
  54.674 -14/06/2006 12:48:32.271  000>> Good datagram received!
  54.675 -14/06/2006 12:48:32.271  000>> Initiator:No more requested bundles
  54.676 -14/06/2006 12:48:32.271  000>> Listener(receiveBundles):We can restart connection...
  54.677 -14/06/2006 12:48:32.371  000>> Hello Procedure:SENDSYN
  54.678 -14/06/2006 12:48:32.381  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29350
  54.679 -14/06/2006 12:48:32.441  000>> 91>>>>>>>>>>Part datagram received!
  54.680 -14/06/2006 12:48:32.441  000>> 91>>>>>>>>>>Complete!
  54.681 -14/06/2006 12:48:32.451  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29778
  54.682 -14/06/2006 12:48:32.451  000>> Good datagram received!
  54.683 -14/06/2006 12:48:32.451  000>> Receive Hello:SYNACK
  54.684 -14/06/2006 12:48:32.451  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29351
  54.685 -14/06/2006 12:48:32.551  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.686 -14/06/2006 12:48:32.551  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29352
  54.687 -14/06/2006 12:48:32.551  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29353
  54.688 -14/06/2006 12:48:32.551  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29354
  54.689 -14/06/2006 12:48:32.591  000>> 98>>>>>>>>>>Part datagram received!
  54.690 -14/06/2006 12:48:32.591  000>> 98>>>>>>>>>>Complete!
  54.691 -14/06/2006 12:48:32.591  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29779
  54.692 -14/06/2006 12:48:32.591  000>> Good datagram received!
  54.693 -14/06/2006 12:48:32.601  000>> Listener:Received dictionary
  54.694 -14/06/2006 12:48:32.621  000>> 90>>>>>>>>>>Part datagram received!
  54.695 -14/06/2006 12:48:32.621  000>> 90>>>>>>>>>>Complete!
  54.696 -14/06/2006 12:48:32.621  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29780
  54.697 -14/06/2006 12:48:32.621  000>> Good datagram received!
  54.698 -14/06/2006 12:48:32.621  000>> Listener:Received RIB
  54.699 -14/06/2006 12:48:32.752  000>> 716>>>>>>>>>>Part datagram received!
  54.700 -14/06/2006 12:48:32.752  000>> 716>>>>>>>>>>Complete!
  54.701 -14/06/2006 12:48:32.752  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29781
  54.702 -14/06/2006 12:48:32.752  000>> Good datagram received!
  54.703 -14/06/2006 12:48:32.762  000>> Listener:Received Bundle Offer
  54.704 -14/06/2006 12:48:32.762  000>> Listener:Sending Empty bundle request...
  54.705 -14/06/2006 12:48:32.762  000>> Listener(receiveBOffer):But we can not restart connection...
  54.706 -14/06/2006 12:48:32.762  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29355
  54.707 -14/06/2006 12:48:32.772  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29782
  54.708 -14/06/2006 12:48:32.772  000>> Good datagram received!
  54.709 -14/06/2006 12:48:32.772  000>> Initiator:No more requested bundles
  54.710 -14/06/2006 12:48:32.772  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
  54.711 -14/06/2006 12:48:32.962  000>> 91>>>>>>>>>>Part datagram received!
  54.712 -14/06/2006 12:48:32.962  000>> 91>>>>>>>>>>Complete!
  54.713 -14/06/2006 12:48:32.962  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29783
  54.714 -14/06/2006 12:48:32.962  000>> Good datagram received!
  54.715 -14/06/2006 12:48:32.962  000>> Receive Hello:SYN
  54.716 -14/06/2006 12:48:32.962  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29356
  54.717 -14/06/2006 12:48:32.982  000>> 91>>>>>>>>>>Part datagram received!
  54.718 -14/06/2006 12:48:32.982  000>> 91>>>>>>>>>>Complete!
  54.719 -14/06/2006 12:48:32.982  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29784
  54.720 -14/06/2006 12:48:32.982  000>> Good datagram received!
  54.721 -14/06/2006 12:48:32.982  000>> Receive Hello:ACK
  54.722 -14/06/2006 12:48:33.082  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.723 -14/06/2006 12:48:33.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29357
  54.724 -14/06/2006 12:48:33.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29358
  54.725 -14/06/2006 12:48:33.092  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29359
  54.726 -14/06/2006 12:48:33.092  000>> 98>>>>>>>>>>Part datagram received!
  54.727 -14/06/2006 12:48:33.092  000>> 98>>>>>>>>>>Complete!
  54.728 -14/06/2006 12:48:33.092  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29785
  54.729 -14/06/2006 12:48:33.092  000>> Good datagram received!
  54.730 -14/06/2006 12:48:33.092  000>> Listener:Received dictionary
  54.731 -14/06/2006 12:48:33.092  000>> 90>>>>>>>>>>Part datagram received!
  54.732 -14/06/2006 12:48:33.092  000>> 90>>>>>>>>>>Complete!
  54.733 -14/06/2006 12:48:33.092  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29786
  54.734 -14/06/2006 12:48:33.102  000>> Good datagram received!
  54.735 -14/06/2006 12:48:33.102  000>> Listener:Received RIB
  54.736 -14/06/2006 12:48:33.102  000>> 0>>>>>>>>>>Part datagram received!
  54.737 -14/06/2006 12:48:33.102  000>> 0>>>>>>>>>>Part datagram received!
  54.738 -14/06/2006 12:48:33.102  000>> 638>>>>>>>>>>Part datagram received!
  54.739 -14/06/2006 12:48:33.102  000>> 638>>>>>>>>>>Complete!
  54.740 -14/06/2006 12:48:33.102  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29787
  54.741 -14/06/2006 12:48:33.102  000>> Good datagram received!
  54.742 -14/06/2006 12:48:33.122  000>> Listener:Received Bundle Offer
  54.743 -14/06/2006 12:48:33.122  000>> Listener:Sending Empty bundle request...
  54.744 -14/06/2006 12:48:33.122  000>> Listener(receiveBOffer):But we can not restart connection...
  54.745 -14/06/2006 12:48:33.122  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29360
  54.746 -14/06/2006 12:48:33.202  000>> 78>>>>>>>>>>Part datagram received!
  54.747 -14/06/2006 12:48:33.202  000>> 78>>>>>>>>>>Complete!
  54.748 -14/06/2006 12:48:33.202  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29788
  54.749 -14/06/2006 12:48:33.202  000>> Good datagram received!
  54.750 -14/06/2006 12:48:33.202  000>> Initiator:No more requested bundles
  54.751 -14/06/2006 12:48:33.202  000>> Listener(receiveBundles):We can restart connection...
  54.752 -14/06/2006 12:48:33.302  000>> Hello Procedure:SENDSYN
  54.753 -14/06/2006 12:48:33.302  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29361
  54.754 -14/06/2006 12:48:33.332  000>> 91>>>>>>>>>>Part datagram received!
  54.755 -14/06/2006 12:48:33.332  000>> 91>>>>>>>>>>Complete!
  54.756 -14/06/2006 12:48:33.332  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29789
  54.757 -14/06/2006 12:48:33.342  000>> Good datagram received!
  54.758 -14/06/2006 12:48:33.342  000>> Receive Hello:SYNACK
  54.759 -14/06/2006 12:48:33.342  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29362
  54.760 -14/06/2006 12:48:33.443  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.761 -14/06/2006 12:48:33.443  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29363
  54.762 -14/06/2006 12:48:33.443  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29364
  54.763 -14/06/2006 12:48:33.443  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29365
  54.764 -14/06/2006 12:48:33.463  000>> 98>>>>>>>>>>Part datagram received!
  54.765 -14/06/2006 12:48:33.463  000>> 98>>>>>>>>>>Complete!
  54.766 -14/06/2006 12:48:33.463  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29790
  54.767 -14/06/2006 12:48:33.463  000>> Good datagram received!
  54.768 -14/06/2006 12:48:33.463  000>> Listener:Received dictionary
  54.769 -14/06/2006 12:48:33.473  000>> 90>>>>>>>>>>Part datagram received!
  54.770 -14/06/2006 12:48:33.473  000>> 90>>>>>>>>>>Complete!
  54.771 -14/06/2006 12:48:33.473  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29791
  54.772 -14/06/2006 12:48:33.473  000>> Good datagram received!
  54.773 -14/06/2006 12:48:33.473  000>> Listener:Received RIB
  54.774 -14/06/2006 12:48:33.653  000>> 716>>>>>>>>>>Part datagram received!
  54.775 -14/06/2006 12:48:33.653  000>> 716>>>>>>>>>>Complete!
  54.776 -14/06/2006 12:48:33.653  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29792
  54.777 -14/06/2006 12:48:33.653  000>> Good datagram received!
  54.778 -14/06/2006 12:48:33.673  000>> Listener:Received Bundle Offer
  54.779 -14/06/2006 12:48:33.673  000>> Listener:Sending Empty bundle request...
  54.780 -14/06/2006 12:48:33.673  000>> Listener(receiveBOffer):But we can not restart connection...
  54.781 -14/06/2006 12:48:33.673  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29366
  54.782 -14/06/2006 12:48:33.673  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29793
  54.783 -14/06/2006 12:48:33.673  000>> Good datagram received!
  54.784 -14/06/2006 12:48:33.673  000>> Initiator:No more requested bundles
  54.785 -14/06/2006 12:48:33.673  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
  54.786 -14/06/2006 12:48:33.803  000>> 91>>>>>>>>>>Part datagram received!
  54.787 -14/06/2006 12:48:33.803  000>> 91>>>>>>>>>>Complete!
  54.788 -14/06/2006 12:48:33.803  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29794
  54.789 -14/06/2006 12:48:33.803  000>> Good datagram received!
  54.790 -14/06/2006 12:48:33.803  000>> Receive Hello:SYN
  54.791 -14/06/2006 12:48:33.803  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29367
  54.792 -14/06/2006 12:48:33.823  000>> 91>>>>>>>>>>Part datagram received!
  54.793 -14/06/2006 12:48:33.823  000>> 91>>>>>>>>>>Complete!
  54.794 -14/06/2006 12:48:33.823  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29795
  54.795 -14/06/2006 12:48:33.823  000>> Good datagram received!
  54.796 -14/06/2006 12:48:33.833  000>> Receive Hello:ACK
  54.797 -14/06/2006 12:48:33.933  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.798 -14/06/2006 12:48:33.933  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29368
  54.799 -14/06/2006 12:48:33.933  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29369
  54.800 -14/06/2006 12:48:33.933  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29370
  54.801 -14/06/2006 12:48:33.963  000>> 98>>>>>>>>>>Part datagram received!
  54.802 -14/06/2006 12:48:33.963  000>> 98>>>>>>>>>>Complete!
  54.803 -14/06/2006 12:48:33.963  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29796
  54.804 -14/06/2006 12:48:33.963  000>> Good datagram received!
  54.805 -14/06/2006 12:48:33.963  000>> Listener:Received dictionary
  54.806 -14/06/2006 12:48:33.973  000>> 90>>>>>>>>>>Part datagram received!
  54.807 -14/06/2006 12:48:33.973  000>> 90>>>>>>>>>>Complete!
  54.808 -14/06/2006 12:48:33.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29797
  54.809 -14/06/2006 12:48:33.973  000>> Good datagram received!
  54.810 -14/06/2006 12:48:33.973  000>> Listener:Received RIB
  54.811 -14/06/2006 12:48:34.154  000>> 716>>>>>>>>>>Part datagram received!
  54.812 -14/06/2006 12:48:34.154  000>> 716>>>>>>>>>>Complete!
  54.813 -14/06/2006 12:48:34.154  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29798
  54.814 -14/06/2006 12:48:34.154  000>> Good datagram received!
  54.815 -14/06/2006 12:48:34.174  000>> Listener:Received Bundle Offer
  54.816 -14/06/2006 12:48:34.174  000>> Listener:Sending Empty bundle request...
  54.817 -14/06/2006 12:48:34.174  000>> Listener(receiveBOffer):But we can not restart connection...
  54.818 -14/06/2006 12:48:34.174  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29371
  54.819 -14/06/2006 12:48:34.174  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29799
  54.820 -14/06/2006 12:48:34.174  000>> Good datagram received!
  54.821 -14/06/2006 12:48:34.174  000>> Initiator:No more requested bundles
  54.822 -14/06/2006 12:48:34.174  000>> Listener(receiveBundles):We can restart connection...
  54.823 -14/06/2006 12:48:34.274  000>> Hello Procedure:SENDSYN
  54.824 -14/06/2006 12:48:34.274  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29372
  54.825 -14/06/2006 12:48:34.354  000>> 91>>>>>>>>>>Part datagram received!
  54.826 -14/06/2006 12:48:34.354  000>> 91>>>>>>>>>>Complete!
  54.827 -14/06/2006 12:48:34.354  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29800
  54.828 -14/06/2006 12:48:34.354  000>> Good datagram received!
  54.829 -14/06/2006 12:48:34.354  000>> Receive Hello:SYNACK
  54.830 -14/06/2006 12:48:34.364  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29373
  54.831 -14/06/2006 12:48:34.464  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.832 -14/06/2006 12:48:34.464  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29374
  54.833 -14/06/2006 12:48:34.464  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29375
  54.834 -14/06/2006 12:48:34.464  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29376
  54.835 -14/06/2006 12:48:34.484  000>> 98>>>>>>>>>>Part datagram received!
  54.836 -14/06/2006 12:48:34.484  000>> 98>>>>>>>>>>Complete!
  54.837 -14/06/2006 12:48:34.494  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29801
  54.838 -14/06/2006 12:48:34.494  000>> Good datagram received!
  54.839 -14/06/2006 12:48:34.494  000>> Listener:Received dictionary
  54.840 -14/06/2006 12:48:34.494  000>> 90>>>>>>>>>>Part datagram received!
  54.841 -14/06/2006 12:48:34.494  000>> 90>>>>>>>>>>Complete!
  54.842 -14/06/2006 12:48:34.494  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29802
  54.843 -14/06/2006 12:48:34.494  000>> Good datagram received!
  54.844 -14/06/2006 12:48:34.494  000>> Listener:Received RIB
  54.845 -14/06/2006 12:48:34.654  000>> 716>>>>>>>>>>Part datagram received!
  54.846 -14/06/2006 12:48:34.654  000>> 716>>>>>>>>>>Complete!
  54.847 -14/06/2006 12:48:34.654  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29803
  54.848 -14/06/2006 12:48:34.654  000>> Good datagram received!
  54.849 -14/06/2006 12:48:34.674  000>> Listener:Received Bundle Offer
  54.850 -14/06/2006 12:48:34.674  000>> Listener:Sending Empty bundle request...
  54.851 -14/06/2006 12:48:34.674  000>> Listener(receiveBOffer):But we can not restart connection...
  54.852 -14/06/2006 12:48:34.674  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29377
  54.853 -14/06/2006 12:48:34.674  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29804
  54.854 -14/06/2006 12:48:34.674  000>> Good datagram received!
  54.855 -14/06/2006 12:48:34.674  000>> Initiator:No more requested bundles
  54.856 -14/06/2006 12:48:34.674  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
  54.857 -14/06/2006 12:48:34.835  000>> 91>>>>>>>>>>Part datagram received!
  54.858 -14/06/2006 12:48:34.835  000>> 91>>>>>>>>>>Complete!
  54.859 -14/06/2006 12:48:34.845  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29805
  54.860 -14/06/2006 12:48:34.845  000>> Good datagram received!
  54.861 -14/06/2006 12:48:34.845  000>> Receive Hello:SYN
  54.862 -14/06/2006 12:48:34.845  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29378
  54.863 -14/06/2006 12:48:34.985  000>> 91>>>>>>>>>>Part datagram received!
  54.864 -14/06/2006 12:48:34.985  000>> 91>>>>>>>>>>Complete!
  54.865 -14/06/2006 12:48:34.985  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29806
  54.866 -14/06/2006 12:48:34.985  000>> Good datagram received!
  54.867 -14/06/2006 12:48:34.985  000>> Receive Hello:ACK
  54.868 -14/06/2006 12:48:35.085  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.869 -14/06/2006 12:48:35.085  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29379
  54.870 -14/06/2006 12:48:35.085  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29380
  54.871 -14/06/2006 12:48:35.085  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29381
  54.872 -14/06/2006 12:48:35.095  000>> 98>>>>>>>>>>Part datagram received!
  54.873 -14/06/2006 12:48:35.095  000>> 98>>>>>>>>>>Complete!
  54.874 -14/06/2006 12:48:35.095  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29807
  54.875 -14/06/2006 12:48:35.095  000>> Good datagram received!
  54.876 -14/06/2006 12:48:35.095  000>> Listener:Received dictionary
  54.877 -14/06/2006 12:48:35.105  000>> 90>>>>>>>>>>Part datagram received!
  54.878 -14/06/2006 12:48:35.105  000>> 90>>>>>>>>>>Complete!
  54.879 -14/06/2006 12:48:35.105  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29808
  54.880 -14/06/2006 12:48:35.105  000>> Good datagram received!
  54.881 -14/06/2006 12:48:35.105  000>> Listener:Received RIB
  54.882 -14/06/2006 12:48:35.255  000>> 716>>>>>>>>>>Part datagram received!
  54.883 -14/06/2006 12:48:35.255  000>> 716>>>>>>>>>>Complete!
  54.884 -14/06/2006 12:48:35.255  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29809
  54.885 -14/06/2006 12:48:35.255  000>> Good datagram received!
  54.886 -14/06/2006 12:48:35.275  000>> Listener:Received Bundle Offer
  54.887 -14/06/2006 12:48:35.275  000>> Listener:Sending Empty bundle request...
  54.888 -14/06/2006 12:48:35.275  000>> Listener(receiveBOffer):But we can not restart connection...
  54.889 -14/06/2006 12:48:35.275  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29382
  54.890 -14/06/2006 12:48:35.275  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29810
  54.891 -14/06/2006 12:48:35.275  000>> Good datagram received!
  54.892 -14/06/2006 12:48:35.275  000>> Initiator:No more requested bundles
  54.893 -14/06/2006 12:48:35.275  000>> Listener(receiveBundles):We can restart connection...
  54.894 -14/06/2006 12:48:35.385  000>> Hello Procedure:SENDSYN
  54.895 -14/06/2006 12:48:35.385  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29383
  54.896 -14/06/2006 12:48:35.455  000>> 91>>>>>>>>>>Part datagram received!
  54.897 -14/06/2006 12:48:35.455  000>> 91>>>>>>>>>>Complete!
  54.898 -14/06/2006 12:48:35.455  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29811
  54.899 -14/06/2006 12:48:35.455  000>> Good datagram received!
  54.900 -14/06/2006 12:48:35.455  000>> Receive Hello:SYNACK
  54.901 -14/06/2006 12:48:35.455  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29384
  54.902 -14/06/2006 12:48:35.556  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.903 -14/06/2006 12:48:35.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29385
  54.904 -14/06/2006 12:48:35.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29386
  54.905 -14/06/2006 12:48:35.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29387
  54.906 -14/06/2006 12:48:35.616  000>> 98>>>>>>>>>>Part datagram received!
  54.907 -14/06/2006 12:48:35.616  000>> 98>>>>>>>>>>Complete!
  54.908 -14/06/2006 12:48:35.616  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29812
  54.909 -14/06/2006 12:48:35.616  000>> Good datagram received!
  54.910 -14/06/2006 12:48:35.616  000>> Listener:Received dictionary
  54.911 -14/06/2006 12:48:35.616  000>> 90>>>>>>>>>>Part datagram received!
  54.912 -14/06/2006 12:48:35.616  000>> 90>>>>>>>>>>Complete!
  54.913 -14/06/2006 12:48:35.616  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29813
  54.914 -14/06/2006 12:48:35.616  000>> Good datagram received!
  54.915 -14/06/2006 12:48:35.626  000>> Listener:Received RIB
  54.916 -14/06/2006 12:48:35.756  000>> 716>>>>>>>>>>Part datagram received!
  54.917 -14/06/2006 12:48:35.756  000>> 716>>>>>>>>>>Complete!
  54.918 -14/06/2006 12:48:35.756  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29814
  54.919 -14/06/2006 12:48:35.756  000>> Good datagram received!
  54.920 -14/06/2006 12:48:35.776  000>> Listener:Received Bundle Offer
  54.921 -14/06/2006 12:48:35.776  000>> Listener:Sending Empty bundle request...
  54.922 -14/06/2006 12:48:35.776  000>> Listener(receiveBOffer):But we can not restart connection...
  54.923 -14/06/2006 12:48:35.776  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29388
  54.924 -14/06/2006 12:48:35.776  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29815
  54.925 -14/06/2006 12:48:35.776  000>> Good datagram received!
  54.926 -14/06/2006 12:48:35.776  000>> Initiator:No more requested bundles
  54.927 -14/06/2006 12:48:35.776  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
  54.928 -14/06/2006 12:48:35.966  000>> 91>>>>>>>>>>Part datagram received!
  54.929 -14/06/2006 12:48:35.966  000>> 91>>>>>>>>>>Complete!
  54.930 -14/06/2006 12:48:35.966  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29816
  54.931 -14/06/2006 12:48:35.966  000>> Good datagram received!
  54.932 -14/06/2006 12:48:35.966  000>> Receive Hello:SYN
  54.933 -14/06/2006 12:48:35.966  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29389
  54.934 -14/06/2006 12:48:35.996  000>> 91>>>>>>>>>>Part datagram received!
  54.935 -14/06/2006 12:48:35.996  000>> 91>>>>>>>>>>Complete!
  54.936 -14/06/2006 12:48:35.996  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29817
  54.937 -14/06/2006 12:48:35.996  000>> Good datagram received!
  54.938 -14/06/2006 12:48:36.006  000>> Receive Hello:ACK
  54.939 -14/06/2006 12:48:36.106  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.940 -14/06/2006 12:48:36.106  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29390
  54.941 -14/06/2006 12:48:36.106  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29391
  54.942 -14/06/2006 12:48:36.106  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29392
  54.943 -14/06/2006 12:48:36.106  000>> 826>>>>>>>>>>Part datagram received!
  54.944 -14/06/2006 12:48:36.106  000>> 826>>>>>>>>>>Complete!
  54.945 -14/06/2006 12:48:36.106  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29818
  54.946 -14/06/2006 12:48:36.106  000>> Good datagram received!
  54.947 -14/06/2006 12:48:36.116  000>> Listener:Received dictionary
  54.948 -14/06/2006 12:48:36.116  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29819
  54.949 -14/06/2006 12:48:36.116  000>> Good datagram received!
  54.950 -14/06/2006 12:48:36.116  000>> Listener:Received RIB
  54.951 -14/06/2006 12:48:36.116  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29820
  54.952 -14/06/2006 12:48:36.116  000>> Good datagram received!
  54.953 -14/06/2006 12:48:36.126  000>> Listener:Received Bundle Offer
  54.954 -14/06/2006 12:48:36.136  000>> Listener:Sending Empty bundle request...
  54.955 -14/06/2006 12:48:36.136  000>> Listener(receiveBOffer):But we can not restart connection...
  54.956 -14/06/2006 12:48:36.136  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29393
  54.957 -14/06/2006 12:48:36.136  000>> 0>>>>>>>>>>Part datagram received!
  54.958 -14/06/2006 12:48:36.136  000>> 0>>>>>>>>>>Part datagram received!
  54.959 -14/06/2006 12:48:36.287  000>> 78>>>>>>>>>>Part datagram received!
  54.960 -14/06/2006 12:48:36.287  000>> 78>>>>>>>>>>Complete!
  54.961 -14/06/2006 12:48:36.287  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29821
  54.962 -14/06/2006 12:48:36.287  000>> Good datagram received!
  54.963 -14/06/2006 12:48:36.287  000>> Initiator:No more requested bundles
  54.964 -14/06/2006 12:48:36.287  000>> Listener(receiveBundles):We can restart connection...
  54.965 -14/06/2006 12:48:36.387  000>> Hello Procedure:SENDSYN
  54.966 -14/06/2006 12:48:36.387  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29394
  54.967 -14/06/2006 12:48:36.407  000>> 91>>>>>>>>>>Part datagram received!
  54.968 -14/06/2006 12:48:36.407  000>> 91>>>>>>>>>>Complete!
  54.969 -14/06/2006 12:48:36.407  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29822
  54.970 -14/06/2006 12:48:36.407  000>> Good datagram received!
  54.971 -14/06/2006 12:48:36.407  000>> Receive Hello:SYNACK
  54.972 -14/06/2006 12:48:36.417  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29395
  54.973 -14/06/2006 12:48:36.517  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  54.974 -14/06/2006 12:48:36.517  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29396
  54.975 -14/06/2006 12:48:36.517  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29397
  54.976 -14/06/2006 12:48:36.517  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29398
  54.977 -14/06/2006 12:48:36.527  000>> 98>>>>>>>>>>Part datagram received!
  54.978 -14/06/2006 12:48:36.527  000>> 98>>>>>>>>>>Complete!
  54.979 -14/06/2006 12:48:36.527  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29823
  54.980 -14/06/2006 12:48:36.527  000>> Good datagram received!
  54.981 -14/06/2006 12:48:36.527  000>> Listener:Received dictionary
  54.982 -14/06/2006 12:48:36.537  000>> 90>>>>>>>>>>Part datagram received!
  54.983 -14/06/2006 12:48:36.537  000>> 90>>>>>>>>>>Complete!
  54.984 -14/06/2006 12:48:36.537  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29824
  54.985 -14/06/2006 12:48:36.537  000>> Good datagram received!
  54.986 -14/06/2006 12:48:36.537  000>> Listener:Received RIB
  54.987 -14/06/2006 12:48:36.657  000>> 716>>>>>>>>>>Part datagram received!
  54.988 -14/06/2006 12:48:36.657  000>> 716>>>>>>>>>>Complete!
  54.989 -14/06/2006 12:48:36.667  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29825
  54.990 -14/06/2006 12:48:36.667  000>> Good datagram received!
  54.991 -14/06/2006 12:48:36.677  000>> Listener:Received Bundle Offer
  54.992 -14/06/2006 12:48:36.677  000>> Listener:Sending Empty bundle request...
  54.993 -14/06/2006 12:48:36.677  000>> Listener(receiveBOffer):But we can not restart connection...
  54.994 -14/06/2006 12:48:36.677  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29399
  54.995 -14/06/2006 12:48:36.677  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29826
  54.996 -14/06/2006 12:48:36.677  000>> Good datagram received!
  54.997 -14/06/2006 12:48:36.677  000>> Initiator:No more requested bundles
  54.998 -14/06/2006 12:48:36.687  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
  54.999 -14/06/2006 12:48:36.797  000>> 91>>>>>>>>>>Part datagram received!
 54.1000 -14/06/2006 12:48:36.797  000>> 91>>>>>>>>>>Complete!
 54.1001 -14/06/2006 12:48:36.797  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29827
 54.1002 -14/06/2006 12:48:36.797  000>> Good datagram received!
 54.1003 -14/06/2006 12:48:36.797  000>> Receive Hello:SYN
 54.1004 -14/06/2006 12:48:36.797  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29400
 54.1005 -14/06/2006 12:48:36.827  000>> 91>>>>>>>>>>Part datagram received!
 54.1006 -14/06/2006 12:48:36.827  000>> 91>>>>>>>>>>Complete!
 54.1007 -14/06/2006 12:48:36.827  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29828
 54.1008 -14/06/2006 12:48:36.827  000>> Good datagram received!
 54.1009 -14/06/2006 12:48:36.827  000>> Receive Hello:ACK
 54.1010 -14/06/2006 12:48:36.928  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1011 -14/06/2006 12:48:36.928  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29401
 54.1012 -14/06/2006 12:48:36.928  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29402
 54.1013 -14/06/2006 12:48:36.928  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29403
 54.1014 -14/06/2006 12:48:36.978  000>> 98>>>>>>>>>>Part datagram received!
 54.1015 -14/06/2006 12:48:36.978  000>> 98>>>>>>>>>>Complete!
 54.1016 -14/06/2006 12:48:36.978  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29829
 54.1017 -14/06/2006 12:48:36.978  000>> Good datagram received!
 54.1018 -14/06/2006 12:48:36.978  000>> Listener:Received dictionary
 54.1019 -14/06/2006 12:48:36.988  000>> 90>>>>>>>>>>Part datagram received!
 54.1020 -14/06/2006 12:48:36.988  000>> 90>>>>>>>>>>Complete!
 54.1021 -14/06/2006 12:48:36.988  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29830
 54.1022 -14/06/2006 12:48:36.988  000>> Good datagram received!
 54.1023 -14/06/2006 12:48:36.988  000>> Listener:Received RIB
 54.1024 -14/06/2006 12:48:37.158  000>> 716>>>>>>>>>>Part datagram received!
 54.1025 -14/06/2006 12:48:37.168  000>> 716>>>>>>>>>>Complete!
 54.1026 -14/06/2006 12:48:37.168  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29831
 54.1027 -14/06/2006 12:48:37.168  000>> Good datagram received!
 54.1028 -14/06/2006 12:48:37.178  000>> Listener:Received Bundle Offer
 54.1029 -14/06/2006 12:48:37.178  000>> Listener:Sending Empty bundle request...
 54.1030 -14/06/2006 12:48:37.178  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1031 -14/06/2006 12:48:37.178  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29404
 54.1032 -14/06/2006 12:48:37.178  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29832
 54.1033 -14/06/2006 12:48:37.178  000>> Good datagram received!
 54.1034 -14/06/2006 12:48:37.188  000>> Initiator:No more requested bundles
 54.1035 -14/06/2006 12:48:37.188  000>> Listener(receiveBundles):We can restart connection...
 54.1036 -14/06/2006 12:48:37.288  000>> Hello Procedure:SENDSYN
 54.1037 -14/06/2006 12:48:37.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29405
 54.1038 -14/06/2006 12:48:37.368  000>> 91>>>>>>>>>>Part datagram received!
 54.1039 -14/06/2006 12:48:37.368  000>> 91>>>>>>>>>>Complete!
 54.1040 -14/06/2006 12:48:37.368  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29833
 54.1041 -14/06/2006 12:48:37.368  000>> Good datagram received!
 54.1042 -14/06/2006 12:48:37.368  000>> Receive Hello:SYNACK
 54.1043 -14/06/2006 12:48:37.368  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29406
 54.1044 -14/06/2006 12:48:37.468  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1045 -14/06/2006 12:48:37.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29407
 54.1046 -14/06/2006 12:48:37.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29408
 54.1047 -14/06/2006 12:48:37.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29409
 54.1048 -14/06/2006 12:48:37.488  000>> 98>>>>>>>>>>Part datagram received!
 54.1049 -14/06/2006 12:48:37.488  000>> 98>>>>>>>>>>Complete!
 54.1050 -14/06/2006 12:48:37.488  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29834
 54.1051 -14/06/2006 12:48:37.488  000>> Good datagram received!
 54.1052 -14/06/2006 12:48:37.498  000>> Listener:Received dictionary
 54.1053 -14/06/2006 12:48:37.498  000>> 90>>>>>>>>>>Part datagram received!
 54.1054 -14/06/2006 12:48:37.498  000>> 90>>>>>>>>>>Complete!
 54.1055 -14/06/2006 12:48:37.498  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29835
 54.1056 -14/06/2006 12:48:37.498  000>> Good datagram received!
 54.1057 -14/06/2006 12:48:37.498  000>> Listener:Received RIB
 54.1058 -14/06/2006 12:48:37.669  000>> 716>>>>>>>>>>Part datagram received!
 54.1059 -14/06/2006 12:48:37.669  000>> 716>>>>>>>>>>Complete!
 54.1060 -14/06/2006 12:48:37.669  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29836
 54.1061 -14/06/2006 12:48:37.669  000>> Good datagram received!
 54.1062 -14/06/2006 12:48:37.679  000>> Listener:Received Bundle Offer
 54.1063 -14/06/2006 12:48:37.679  000>> Listener:Sending Empty bundle request...
 54.1064 -14/06/2006 12:48:37.679  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1065 -14/06/2006 12:48:37.679  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29410
 54.1066 -14/06/2006 12:48:37.679  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29837
 54.1067 -14/06/2006 12:48:37.689  000>> Good datagram received!
 54.1068 -14/06/2006 12:48:37.689  000>> Initiator:No more requested bundles
 54.1069 -14/06/2006 12:48:37.689  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.1070 -14/06/2006 12:48:37.829  000>> 91>>>>>>>>>>Part datagram received!
 54.1071 -14/06/2006 12:48:37.829  000>> 91>>>>>>>>>>Complete!
 54.1072 -14/06/2006 12:48:37.829  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29838
 54.1073 -14/06/2006 12:48:37.829  000>> Good datagram received!
 54.1074 -14/06/2006 12:48:37.829  000>> Receive Hello:SYN
 54.1075 -14/06/2006 12:48:37.829  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29411
 54.1076 -14/06/2006 12:48:37.859  000>> 91>>>>>>>>>>Part datagram received!
 54.1077 -14/06/2006 12:48:37.859  000>> 91>>>>>>>>>>Complete!
 54.1078 -14/06/2006 12:48:37.859  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29839
 54.1079 -14/06/2006 12:48:37.859  000>> Good datagram received!
 54.1080 -14/06/2006 12:48:37.859  000>> Receive Hello:ACK
 54.1081 -14/06/2006 12:48:37.969  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1082 -14/06/2006 12:48:37.969  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29412
 54.1083 -14/06/2006 12:48:37.969  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29413
 54.1084 -14/06/2006 12:48:37.969  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29414
 54.1085 -14/06/2006 12:48:37.989  000>> 98>>>>>>>>>>Part datagram received!
 54.1086 -14/06/2006 12:48:37.989  000>> 98>>>>>>>>>>Complete!
 54.1087 -14/06/2006 12:48:37.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29840
 54.1088 -14/06/2006 12:48:37.989  000>> Good datagram received!
 54.1089 -14/06/2006 12:48:37.989  000>> Listener:Received dictionary
 54.1090 -14/06/2006 12:48:37.999  000>> 90>>>>>>>>>>Part datagram received!
 54.1091 -14/06/2006 12:48:37.999  000>> 90>>>>>>>>>>Complete!
 54.1092 -14/06/2006 12:48:37.999  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29841
 54.1093 -14/06/2006 12:48:37.999  000>> Good datagram received!
 54.1094 -14/06/2006 12:48:37.999  000>> Listener:Received RIB
 54.1095 -14/06/2006 12:48:38.169  000>> 716>>>>>>>>>>Part datagram received!
 54.1096 -14/06/2006 12:48:38.169  000>> 716>>>>>>>>>>Complete!
 54.1097 -14/06/2006 12:48:38.169  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29842
 54.1098 -14/06/2006 12:48:38.169  000>> Good datagram received!
 54.1099 -14/06/2006 12:48:38.179  000>> Listener:Received Bundle Offer
 54.1100 -14/06/2006 12:48:38.179  000>> Listener:Sending Empty bundle request...
 54.1101 -14/06/2006 12:48:38.179  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1102 -14/06/2006 12:48:38.179  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29415
 54.1103 -14/06/2006 12:48:38.189  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29843
 54.1104 -14/06/2006 12:48:38.189  000>> Good datagram received!
 54.1105 -14/06/2006 12:48:38.189  000>> Initiator:No more requested bundles
 54.1106 -14/06/2006 12:48:38.189  000>> Listener(receiveBundles):We can restart connection...
 54.1107 -14/06/2006 12:48:38.290  000>> Hello Procedure:SENDSYN
 54.1108 -14/06/2006 12:48:38.290  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29416
 54.1109 -14/06/2006 12:48:38.370  000>> 91>>>>>>>>>>Part datagram received!
 54.1110 -14/06/2006 12:48:38.370  000>> 91>>>>>>>>>>Complete!
 54.1111 -14/06/2006 12:48:38.370  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29844
 54.1112 -14/06/2006 12:48:38.370  000>> Good datagram received!
 54.1113 -14/06/2006 12:48:38.370  000>> Receive Hello:SYNACK
 54.1114 -14/06/2006 12:48:38.370  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29417
 54.1115 -14/06/2006 12:48:38.470  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1116 -14/06/2006 12:48:38.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29418
 54.1117 -14/06/2006 12:48:38.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29419
 54.1118 -14/06/2006 12:48:38.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29420
 54.1119 -14/06/2006 12:48:38.490  000>> 98>>>>>>>>>>Part datagram received!
 54.1120 -14/06/2006 12:48:38.490  000>> 98>>>>>>>>>>Complete!
 54.1121 -14/06/2006 12:48:38.490  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29845
 54.1122 -14/06/2006 12:48:38.490  000>> Good datagram received!
 54.1123 -14/06/2006 12:48:38.490  000>> Listener:Received dictionary
 54.1124 -14/06/2006 12:48:38.500  000>> 90>>>>>>>>>>Part datagram received!
 54.1125 -14/06/2006 12:48:38.500  000>> 90>>>>>>>>>>Complete!
 54.1126 -14/06/2006 12:48:38.500  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29846
 54.1127 -14/06/2006 12:48:38.500  000>> Good datagram received!
 54.1128 -14/06/2006 12:48:38.500  000>> Listener:Received RIB
 54.1129 -14/06/2006 12:48:38.670  000>> 716>>>>>>>>>>Part datagram received!
 54.1130 -14/06/2006 12:48:38.670  000>> 716>>>>>>>>>>Complete!
 54.1131 -14/06/2006 12:48:38.670  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29847
 54.1132 -14/06/2006 12:48:38.670  000>> Good datagram received!
 54.1133 -14/06/2006 12:48:38.680  000>> Listener:Received Bundle Offer
 54.1134 -14/06/2006 12:48:38.680  000>> Listener:Sending Empty bundle request...
 54.1135 -14/06/2006 12:48:38.680  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1136 -14/06/2006 12:48:38.680  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29421
 54.1137 -14/06/2006 12:48:38.690  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29848
 54.1138 -14/06/2006 12:48:38.690  000>> Good datagram received!
 54.1139 -14/06/2006 12:48:38.690  000>> Initiator:No more requested bundles
 54.1140 -14/06/2006 12:48:38.690  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.1141 -14/06/2006 12:48:38.800  000>> 91>>>>>>>>>>Part datagram received!
 54.1142 -14/06/2006 12:48:38.800  000>> 91>>>>>>>>>>Complete!
 54.1143 -14/06/2006 12:48:38.800  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29849
 54.1144 -14/06/2006 12:48:38.800  000>> Good datagram received!
 54.1145 -14/06/2006 12:48:38.800  000>> Receive Hello:SYN
 54.1146 -14/06/2006 12:48:38.810  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29422
 54.1147 -14/06/2006 12:48:38.830  000>> 91>>>>>>>>>>Part datagram received!
 54.1148 -14/06/2006 12:48:38.830  000>> 91>>>>>>>>>>Complete!
 54.1149 -14/06/2006 12:48:38.830  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29850
 54.1150 -14/06/2006 12:48:38.830  000>> Good datagram received!
 54.1151 -14/06/2006 12:48:38.830  000>> Receive Hello:ACK
 54.1152 -14/06/2006 12:48:38.930  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1153 -14/06/2006 12:48:38.930  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29423
 54.1154 -14/06/2006 12:48:38.930  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29424
 54.1155 -14/06/2006 12:48:38.930  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29425
 54.1156 -14/06/2006 12:48:38.991  000>> 98>>>>>>>>>>Part datagram received!
 54.1157 -14/06/2006 12:48:39.001  000>> 98>>>>>>>>>>Complete!
 54.1158 -14/06/2006 12:48:39.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29851
 54.1159 -14/06/2006 12:48:39.001  000>> Good datagram received!
 54.1160 -14/06/2006 12:48:39.001  000>> Listener:Received dictionary
 54.1161 -14/06/2006 12:48:39.001  000>> 90>>>>>>>>>>Part datagram received!
 54.1162 -14/06/2006 12:48:39.001  000>> 90>>>>>>>>>>Complete!
 54.1163 -14/06/2006 12:48:39.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29852
 54.1164 -14/06/2006 12:48:39.001  000>> Good datagram received!
 54.1165 -14/06/2006 12:48:39.001  000>> Listener:Received RIB
 54.1166 -14/06/2006 12:48:39.171  000>> 716>>>>>>>>>>Part datagram received!
 54.1167 -14/06/2006 12:48:39.171  000>> 716>>>>>>>>>>Complete!
 54.1168 -14/06/2006 12:48:39.171  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29853
 54.1169 -14/06/2006 12:48:39.171  000>> Good datagram received!
 54.1170 -14/06/2006 12:48:39.181  000>> Listener:Received Bundle Offer
 54.1171 -14/06/2006 12:48:39.181  000>> Listener:Sending Empty bundle request...
 54.1172 -14/06/2006 12:48:39.191  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1173 -14/06/2006 12:48:39.191  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29426
 54.1174 -14/06/2006 12:48:39.191  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29854
 54.1175 -14/06/2006 12:48:39.191  000>> Good datagram received!
 54.1176 -14/06/2006 12:48:39.191  000>> Initiator:No more requested bundles
 54.1177 -14/06/2006 12:48:39.191  000>> Listener(receiveBundles):We can restart connection...
 54.1178 -14/06/2006 12:48:39.291  000>> Hello Procedure:SENDSYN
 54.1179 -14/06/2006 12:48:39.291  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29427
 54.1180 -14/06/2006 12:48:39.371  000>> 91>>>>>>>>>>Part datagram received!
 54.1181 -14/06/2006 12:48:39.371  000>> 91>>>>>>>>>>Complete!
 54.1182 -14/06/2006 12:48:39.371  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29855
 54.1183 -14/06/2006 12:48:39.371  000>> Good datagram received!
 54.1184 -14/06/2006 12:48:39.371  000>> Receive Hello:SYNACK
 54.1185 -14/06/2006 12:48:39.371  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29428
 54.1186 -14/06/2006 12:48:39.471  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1187 -14/06/2006 12:48:39.471  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29429
 54.1188 -14/06/2006 12:48:39.471  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29430
 54.1189 -14/06/2006 12:48:39.471  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29431
 54.1190 -14/06/2006 12:48:39.491  000>> 98>>>>>>>>>>Part datagram received!
 54.1191 -14/06/2006 12:48:39.491  000>> 98>>>>>>>>>>Complete!
 54.1192 -14/06/2006 12:48:39.491  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29856
 54.1193 -14/06/2006 12:48:39.491  000>> Good datagram received!
 54.1194 -14/06/2006 12:48:39.501  000>> Listener:Received dictionary
 54.1195 -14/06/2006 12:48:39.551  000>> 728>>>>>>>>>>Part datagram received!
 54.1196 -14/06/2006 12:48:39.551  000>> 728>>>>>>>>>>Complete!
 54.1197 -14/06/2006 12:48:39.551  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29857
 54.1198 -14/06/2006 12:48:39.551  000>> Good datagram received!
 54.1199 -14/06/2006 12:48:39.551  000>> Listener:Received RIB
 54.1200 -14/06/2006 12:48:39.551  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29858
 54.1201 -14/06/2006 12:48:39.551  000>> Good datagram received!
 54.1202 -14/06/2006 12:48:39.571  000>> Listener:Received Bundle Offer
 54.1203 -14/06/2006 12:48:39.571  000>> Listener:Sending Empty bundle request...
 54.1204 -14/06/2006 12:48:39.571  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1205 -14/06/2006 12:48:39.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29432
 54.1206 -14/06/2006 12:48:39.651  000>> 78>>>>>>>>>>Part datagram received!
 54.1207 -14/06/2006 12:48:39.651  000>> 78>>>>>>>>>>Complete!
 54.1208 -14/06/2006 12:48:39.651  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29859
 54.1209 -14/06/2006 12:48:39.651  000>> Good datagram received!
 54.1210 -14/06/2006 12:48:39.651  000>> Initiator:No more requested bundles
 54.1211 -14/06/2006 12:48:39.661  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.1212 -14/06/2006 12:48:39.772  000>> 91>>>>>>>>>>Part datagram received!
 54.1213 -14/06/2006 12:48:39.772  000>> 91>>>>>>>>>>Complete!
 54.1214 -14/06/2006 12:48:39.772  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29860
 54.1215 -14/06/2006 12:48:39.772  000>> Good datagram received!
 54.1216 -14/06/2006 12:48:39.772  000>> Receive Hello:SYN
 54.1217 -14/06/2006 12:48:39.772  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29433
 54.1218 -14/06/2006 12:48:39.792  000>> 91>>>>>>>>>>Part datagram received!
 54.1219 -14/06/2006 12:48:39.792  000>> 91>>>>>>>>>>Complete!
 54.1220 -14/06/2006 12:48:39.792  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29861
 54.1221 -14/06/2006 12:48:39.792  000>> Good datagram received!
 54.1222 -14/06/2006 12:48:39.792  000>> Receive Hello:ACK
 54.1223 -14/06/2006 12:48:39.902  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1224 -14/06/2006 12:48:39.902  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29434
 54.1225 -14/06/2006 12:48:39.902  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29435
 54.1226 -14/06/2006 12:48:39.902  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29436
 54.1227 -14/06/2006 12:48:39.992  000>> 98>>>>>>>>>>Part datagram received!
 54.1228 -14/06/2006 12:48:39.992  000>> 98>>>>>>>>>>Complete!
 54.1229 -14/06/2006 12:48:39.992  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29862
 54.1230 -14/06/2006 12:48:39.992  000>> Good datagram received!
 54.1231 -14/06/2006 12:48:39.992  000>> Listener:Received dictionary
 54.1232 -14/06/2006 12:48:39.992  000>> 90>>>>>>>>>>Part datagram received!
 54.1233 -14/06/2006 12:48:39.992  000>> 90>>>>>>>>>>Complete!
 54.1234 -14/06/2006 12:48:39.992  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29863
 54.1235 -14/06/2006 12:48:39.992  000>> Good datagram received!
 54.1236 -14/06/2006 12:48:40.002  000>> Listener:Received RIB
 54.1237 -14/06/2006 12:48:40.172  000>> 716>>>>>>>>>>Part datagram received!
 54.1238 -14/06/2006 12:48:40.172  000>> 716>>>>>>>>>>Complete!
 54.1239 -14/06/2006 12:48:40.172  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29864
 54.1240 -14/06/2006 12:48:40.172  000>> Good datagram received!
 54.1241 -14/06/2006 12:48:40.192  000>> Listener:Received Bundle Offer
 54.1242 -14/06/2006 12:48:40.192  000>> Listener:Sending Empty bundle request...
 54.1243 -14/06/2006 12:48:40.192  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1244 -14/06/2006 12:48:40.192  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29437
 54.1245 -14/06/2006 12:48:40.192  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29865
 54.1246 -14/06/2006 12:48:40.192  000>> Good datagram received!
 54.1247 -14/06/2006 12:48:40.192  000>> Initiator:No more requested bundles
 54.1248 -14/06/2006 12:48:40.192  000>> Listener(receiveBundles):We can restart connection...
 54.1249 -14/06/2006 12:48:40.292  000>> Hello Procedure:SENDSYN
 54.1250 -14/06/2006 12:48:40.292  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29438
 54.1251 -14/06/2006 12:48:40.363  000>> 91>>>>>>>>>>Part datagram received!
 54.1252 -14/06/2006 12:48:40.363  000>> 91>>>>>>>>>>Complete!
 54.1253 -14/06/2006 12:48:40.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29866
 54.1254 -14/06/2006 12:48:40.373  000>> Good datagram received!
 54.1255 -14/06/2006 12:48:40.373  000>> Receive Hello:SYNACK
 54.1256 -14/06/2006 12:48:40.373  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29439
 54.1257 -14/06/2006 12:48:40.473  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1258 -14/06/2006 12:48:40.473  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29440
 54.1259 -14/06/2006 12:48:40.473  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29441
 54.1260 -14/06/2006 12:48:40.473  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29442
 54.1261 -14/06/2006 12:48:40.493  000>> 98>>>>>>>>>>Part datagram received!
 54.1262 -14/06/2006 12:48:40.493  000>> 98>>>>>>>>>>Complete!
 54.1263 -14/06/2006 12:48:40.503  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29867
 54.1264 -14/06/2006 12:48:40.503  000>> Good datagram received!
 54.1265 -14/06/2006 12:48:40.503  000>> Listener:Received dictionary
 54.1266 -14/06/2006 12:48:40.503  000>> 90>>>>>>>>>>Part datagram received!
 54.1267 -14/06/2006 12:48:40.503  000>> 90>>>>>>>>>>Complete!
 54.1268 -14/06/2006 12:48:40.503  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29868
 54.1269 -14/06/2006 12:48:40.503  000>> Good datagram received!
 54.1270 -14/06/2006 12:48:40.503  000>> Listener:Received RIB
 54.1271 -14/06/2006 12:48:40.673  000>> 716>>>>>>>>>>Part datagram received!
 54.1272 -14/06/2006 12:48:40.673  000>> 716>>>>>>>>>>Complete!
 54.1273 -14/06/2006 12:48:40.673  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29869
 54.1274 -14/06/2006 12:48:40.673  000>> Good datagram received!
 54.1275 -14/06/2006 12:48:40.693  000>> Listener:Received Bundle Offer
 54.1276 -14/06/2006 12:48:40.693  000>> Listener:Sending Empty bundle request...
 54.1277 -14/06/2006 12:48:40.693  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1278 -14/06/2006 12:48:40.693  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29443
 54.1279 -14/06/2006 12:48:40.693  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29870
 54.1280 -14/06/2006 12:48:40.693  000>> Good datagram received!
 54.1281 -14/06/2006 12:48:40.693  000>> Initiator:No more requested bundles
 54.1282 -14/06/2006 12:48:40.693  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.1283 -14/06/2006 12:48:40.823  000>> 91>>>>>>>>>>Part datagram received!
 54.1284 -14/06/2006 12:48:40.823  000>> 91>>>>>>>>>>Complete!
 54.1285 -14/06/2006 12:48:40.833  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29871
 54.1286 -14/06/2006 12:48:40.833  000>> Good datagram received!
 54.1287 -14/06/2006 12:48:40.833  000>> Receive Hello:SYN
 54.1288 -14/06/2006 12:48:40.833  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29444
 54.1289 -14/06/2006 12:48:40.853  000>> 91>>>>>>>>>>Part datagram received!
 54.1290 -14/06/2006 12:48:40.853  000>> 91>>>>>>>>>>Complete!
 54.1291 -14/06/2006 12:48:40.853  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29872
 54.1292 -14/06/2006 12:48:40.853  000>> Good datagram received!
 54.1293 -14/06/2006 12:48:40.853  000>> Receive Hello:ACK
 54.1294 -14/06/2006 12:48:40.963  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1295 -14/06/2006 12:48:40.963  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29445
 54.1296 -14/06/2006 12:48:40.963  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29446
 54.1297 -14/06/2006 12:48:40.963  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29447
 54.1298 -14/06/2006 12:48:40.963  000>> 98>>>>>>>>>>Part datagram received!
 54.1299 -14/06/2006 12:48:40.963  000>> 98>>>>>>>>>>Complete!
 54.1300 -14/06/2006 12:48:40.963  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29873
 54.1301 -14/06/2006 12:48:40.963  000>> Good datagram received!
 54.1302 -14/06/2006 12:48:40.963  000>> Listener:Received dictionary
 54.1303 -14/06/2006 12:48:40.973  000>> 90>>>>>>>>>>Part datagram received!
 54.1304 -14/06/2006 12:48:40.973  000>> 90>>>>>>>>>>Complete!
 54.1305 -14/06/2006 12:48:40.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29874
 54.1306 -14/06/2006 12:48:40.973  000>> Good datagram received!
 54.1307 -14/06/2006 12:48:40.973  000>> Listener:Received RIB
 54.1308 -14/06/2006 12:48:40.973  000>> 638>>>>>>>>>>Part datagram received!
 54.1309 -14/06/2006 12:48:40.973  000>> 638>>>>>>>>>>Complete!
 54.1310 -14/06/2006 12:48:40.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29875
 54.1311 -14/06/2006 12:48:40.973  000>> Good datagram received!
 54.1312 -14/06/2006 12:48:40.993  000>> Listener:Received Bundle Offer
 54.1313 -14/06/2006 12:48:40.993  000>> Listener:Sending Empty bundle request...
 54.1314 -14/06/2006 12:48:40.993  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1315 -14/06/2006 12:48:40.993  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29448
 54.1316 -14/06/2006 12:48:40.993  000>> 0>>>>>>>>>>Part datagram received!
 54.1317 -14/06/2006 12:48:40.993  000>> 0>>>>>>>>>>Part datagram received!
 54.1318 -14/06/2006 12:48:41.074  000>> 78>>>>>>>>>>Part datagram received!
 54.1319 -14/06/2006 12:48:41.074  000>> 78>>>>>>>>>>Complete!
 54.1320 -14/06/2006 12:48:41.074  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29876
 54.1321 -14/06/2006 12:48:41.074  000>> Good datagram received!
 54.1322 -14/06/2006 12:48:41.084  000>> Initiator:No more requested bundles
 54.1323 -14/06/2006 12:48:41.084  000>> Listener(receiveBundles):We can restart connection...
 54.1324 -14/06/2006 12:48:41.184  000>> Hello Procedure:SENDSYN
 54.1325 -14/06/2006 12:48:41.184  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29449
 54.1326 -14/06/2006 12:48:41.224  000>> 91>>>>>>>>>>Part datagram received!
 54.1327 -14/06/2006 12:48:41.224  000>> 91>>>>>>>>>>Complete!
 54.1328 -14/06/2006 12:48:41.224  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29877
 54.1329 -14/06/2006 12:48:41.224  000>> Good datagram received!
 54.1330 -14/06/2006 12:48:41.224  000>> Receive Hello:SYNACK
 54.1331 -14/06/2006 12:48:41.224  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29450
 54.1332 -14/06/2006 12:48:41.324  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1333 -14/06/2006 12:48:41.324  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29451
 54.1334 -14/06/2006 12:48:41.324  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29452
 54.1335 -14/06/2006 12:48:41.324  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29453
 54.1336 -14/06/2006 12:48:41.354  000>> 98>>>>>>>>>>Part datagram received!
 54.1337 -14/06/2006 12:48:41.354  000>> 98>>>>>>>>>>Complete!
 54.1338 -14/06/2006 12:48:41.354  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29878
 54.1339 -14/06/2006 12:48:41.354  000>> Good datagram received!
 54.1340 -14/06/2006 12:48:41.354  000>> Listener:Received dictionary
 54.1341 -14/06/2006 12:48:41.474  000>> 806>>>>>>>>>>Part datagram received!
 54.1342 -14/06/2006 12:48:41.474  000>> 806>>>>>>>>>>Complete!
 54.1343 -14/06/2006 12:48:41.474  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29879
 54.1344 -14/06/2006 12:48:41.474  000>> Good datagram received!
 54.1345 -14/06/2006 12:48:41.484  000>> Listener:Received RIB
 54.1346 -14/06/2006 12:48:41.484  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29880
 54.1347 -14/06/2006 12:48:41.484  000>> Good datagram received!
 54.1348 -14/06/2006 12:48:41.494  000>> Listener:Received Bundle Offer
 54.1349 -14/06/2006 12:48:41.494  000>> Listener:Sending Empty bundle request...
 54.1350 -14/06/2006 12:48:41.494  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1351 -14/06/2006 12:48:41.494  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29454
 54.1352 -14/06/2006 12:48:41.494  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29881
 54.1353 -14/06/2006 12:48:41.494  000>> Good datagram received!
 54.1354 -14/06/2006 12:48:41.504  000>> Initiator:No more requested bundles
 54.1355 -14/06/2006 12:48:41.504  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.1356 -14/06/2006 12:48:41.614  000>> 91>>>>>>>>>>Part datagram received!
 54.1357 -14/06/2006 12:48:41.614  000>> 91>>>>>>>>>>Complete!
 54.1358 -14/06/2006 12:48:41.614  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29882
 54.1359 -14/06/2006 12:48:41.614  000>> Good datagram received!
 54.1360 -14/06/2006 12:48:41.614  000>> Receive Hello:SYN
 54.1361 -14/06/2006 12:48:41.614  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29455
 54.1362 -14/06/2006 12:48:41.634  000>> 91>>>>>>>>>>Part datagram received!
 54.1363 -14/06/2006 12:48:41.644  000>> 91>>>>>>>>>>Complete!
 54.1364 -14/06/2006 12:48:41.644  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29883
 54.1365 -14/06/2006 12:48:41.644  000>> Good datagram received!
 54.1366 -14/06/2006 12:48:41.644  000>> Receive Hello:ACK
 54.1367 -14/06/2006 12:48:41.744  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1368 -14/06/2006 12:48:41.744  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29456
 54.1369 -14/06/2006 12:48:41.744  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29457
 54.1370 -14/06/2006 12:48:41.744  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29458
 54.1371 -14/06/2006 12:48:41.744  000>> 98>>>>>>>>>>Part datagram received!
 54.1372 -14/06/2006 12:48:41.744  000>> 98>>>>>>>>>>Complete!
 54.1373 -14/06/2006 12:48:41.744  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29884
 54.1374 -14/06/2006 12:48:41.744  000>> Good datagram received!
 54.1375 -14/06/2006 12:48:41.755  000>> Listener:Received dictionary
 54.1376 -14/06/2006 12:48:41.755  000>> 90>>>>>>>>>>Part datagram received!
 54.1377 -14/06/2006 12:48:41.755  000>> 90>>>>>>>>>>Complete!
 54.1378 -14/06/2006 12:48:41.755  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29885
 54.1379 -14/06/2006 12:48:41.755  000>> Good datagram received!
 54.1380 -14/06/2006 12:48:41.755  000>> Listener:Received RIB
 54.1381 -14/06/2006 12:48:41.875  000>> 716>>>>>>>>>>Part datagram received!
 54.1382 -14/06/2006 12:48:41.875  000>> 716>>>>>>>>>>Complete!
 54.1383 -14/06/2006 12:48:41.875  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29886
 54.1384 -14/06/2006 12:48:41.875  000>> Good datagram received!
 54.1385 -14/06/2006 12:48:41.895  000>> Listener:Received Bundle Offer
 54.1386 -14/06/2006 12:48:41.895  000>> Listener:Sending Empty bundle request...
 54.1387 -14/06/2006 12:48:41.895  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1388 -14/06/2006 12:48:41.895  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29459
 54.1389 -14/06/2006 12:48:41.895  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29887
 54.1390 -14/06/2006 12:48:41.895  000>> Good datagram received!
 54.1391 -14/06/2006 12:48:41.895  000>> Initiator:No more requested bundles
 54.1392 -14/06/2006 12:48:41.895  000>> Listener(receiveBundles):We can restart connection...
 54.1393 -14/06/2006 12:48:41.995  000>> Hello Procedure:SENDSYN
 54.1394 -14/06/2006 12:48:41.995  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29460
 54.1395 -14/06/2006 12:48:42.055  000>> 91>>>>>>>>>>Part datagram received!
 54.1396 -14/06/2006 12:48:42.065  000>> 91>>>>>>>>>>Complete!
 54.1397 -14/06/2006 12:48:42.065  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29888
 54.1398 -14/06/2006 12:48:42.065  000>> Good datagram received!
 54.1399 -14/06/2006 12:48:42.065  000>> Receive Hello:SYNACK
 54.1400 -14/06/2006 12:48:42.065  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29461
 54.1401 -14/06/2006 12:48:42.165  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1402 -14/06/2006 12:48:42.165  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29462
 54.1403 -14/06/2006 12:48:42.165  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29463
 54.1404 -14/06/2006 12:48:42.165  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29464
 54.1405 -14/06/2006 12:48:42.185  000>> 98>>>>>>>>>>Part datagram received!
 54.1406 -14/06/2006 12:48:42.185  000>> 98>>>>>>>>>>Complete!
 54.1407 -14/06/2006 12:48:42.195  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29889
 54.1408 -14/06/2006 12:48:42.195  000>> Good datagram received!
 54.1409 -14/06/2006 12:48:42.195  000>> Listener:Received dictionary
 54.1410 -14/06/2006 12:48:42.195  000>> 90>>>>>>>>>>Part datagram received!
 54.1411 -14/06/2006 12:48:42.195  000>> 90>>>>>>>>>>Complete!
 54.1412 -14/06/2006 12:48:42.195  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29890
 54.1413 -14/06/2006 12:48:42.195  000>> Good datagram received!
 54.1414 -14/06/2006 12:48:42.195  000>> Listener:Received RIB
 54.1415 -14/06/2006 12:48:42.375  000>> 716>>>>>>>>>>Part datagram received!
 54.1416 -14/06/2006 12:48:42.375  000>> 716>>>>>>>>>>Complete!
 54.1417 -14/06/2006 12:48:42.385  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29891
 54.1418 -14/06/2006 12:48:42.385  000>> Good datagram received!
 54.1419 -14/06/2006 12:48:42.395  000>> Listener:Received Bundle Offer
 54.1420 -14/06/2006 12:48:42.395  000>> Listener:Sending Empty bundle request...
 54.1421 -14/06/2006 12:48:42.395  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1422 -14/06/2006 12:48:42.395  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29465
 54.1423 -14/06/2006 12:48:42.395  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29892
 54.1424 -14/06/2006 12:48:42.405  000>> Good datagram received!
 54.1425 -14/06/2006 12:48:42.405  000>> Initiator:No more requested bundles
 54.1426 -14/06/2006 12:48:42.405  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.1427 -14/06/2006 12:48:42.516  000>> 91>>>>>>>>>>Part datagram received!
 54.1428 -14/06/2006 12:48:42.516  000>> 91>>>>>>>>>>Complete!
 54.1429 -14/06/2006 12:48:42.516  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29893
 54.1430 -14/06/2006 12:48:42.516  000>> Good datagram received!
 54.1431 -14/06/2006 12:48:42.516  000>> Receive Hello:SYN
 54.1432 -14/06/2006 12:48:42.516  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29466
 54.1433 -14/06/2006 12:48:42.546  000>> 91>>>>>>>>>>Part datagram received!
 54.1434 -14/06/2006 12:48:42.546  000>> 91>>>>>>>>>>Complete!
 54.1435 -14/06/2006 12:48:42.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29894
 54.1436 -14/06/2006 12:48:42.546  000>> Good datagram received!
 54.1437 -14/06/2006 12:48:42.546  000>> Receive Hello:ACK
 54.1438 -14/06/2006 12:48:42.646  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1439 -14/06/2006 12:48:42.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29467
 54.1440 -14/06/2006 12:48:42.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29468
 54.1441 -14/06/2006 12:48:42.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29469
 54.1442 -14/06/2006 12:48:42.646  000>> 98>>>>>>>>>>Part datagram received!
 54.1443 -14/06/2006 12:48:42.646  000>> 98>>>>>>>>>>Complete!
 54.1444 -14/06/2006 12:48:42.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29895
 54.1445 -14/06/2006 12:48:42.646  000>> Good datagram received!
 54.1446 -14/06/2006 12:48:42.646  000>> Listener:Received dictionary
 54.1447 -14/06/2006 12:48:42.656  000>> 90>>>>>>>>>>Part datagram received!
 54.1448 -14/06/2006 12:48:42.656  000>> 90>>>>>>>>>>Complete!
 54.1449 -14/06/2006 12:48:42.656  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29896
 54.1450 -14/06/2006 12:48:42.656  000>> Good datagram received!
 54.1451 -14/06/2006 12:48:42.656  000>> Listener:Received RIB
 54.1452 -14/06/2006 12:48:42.776  000>> 716>>>>>>>>>>Part datagram received!
 54.1453 -14/06/2006 12:48:42.786  000>> 716>>>>>>>>>>Complete!
 54.1454 -14/06/2006 12:48:42.786  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29897
 54.1455 -14/06/2006 12:48:42.786  000>> Good datagram received!
 54.1456 -14/06/2006 12:48:42.796  000>> Listener:Received Bundle Offer
 54.1457 -14/06/2006 12:48:42.796  000>> Listener:Sending Empty bundle request...
 54.1458 -14/06/2006 12:48:42.796  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1459 -14/06/2006 12:48:42.796  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29470
 54.1460 -14/06/2006 12:48:42.796  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29898
 54.1461 -14/06/2006 12:48:42.806  000>> Good datagram received!
 54.1462 -14/06/2006 12:48:42.806  000>> Initiator:No more requested bundles
 54.1463 -14/06/2006 12:48:42.806  000>> Listener(receiveBundles):We can restart connection...
 54.1464 -14/06/2006 12:48:42.906  000>> Hello Procedure:SENDSYN
 54.1465 -14/06/2006 12:48:42.906  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29471
 54.1466 -14/06/2006 12:48:42.966  000>> 91>>>>>>>>>>Part datagram received!
 54.1467 -14/06/2006 12:48:42.966  000>> 91>>>>>>>>>>Complete!
 54.1468 -14/06/2006 12:48:42.966  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29899
 54.1469 -14/06/2006 12:48:42.966  000>> Good datagram received!
 54.1470 -14/06/2006 12:48:42.966  000>> Receive Hello:SYNACK
 54.1471 -14/06/2006 12:48:42.966  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29472
 54.1472 -14/06/2006 12:48:43.066  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1473 -14/06/2006 12:48:43.066  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29473
 54.1474 -14/06/2006 12:48:43.066  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29474
 54.1475 -14/06/2006 12:48:43.066  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29475
 54.1476 -14/06/2006 12:48:43.086  000>> 98>>>>>>>>>>Part datagram received!
 54.1477 -14/06/2006 12:48:43.086  000>> 98>>>>>>>>>>Complete!
 54.1478 -14/06/2006 12:48:43.086  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29900
 54.1479 -14/06/2006 12:48:43.086  000>> Good datagram received!
 54.1480 -14/06/2006 12:48:43.096  000>> Listener:Received dictionary
 54.1481 -14/06/2006 12:48:43.096  000>> 90>>>>>>>>>>Part datagram received!
 54.1482 -14/06/2006 12:48:43.096  000>> 90>>>>>>>>>>Complete!
 54.1483 -14/06/2006 12:48:43.096  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29901
 54.1484 -14/06/2006 12:48:43.096  000>> Good datagram received!
 54.1485 -14/06/2006 12:48:43.096  000>> Listener:Received RIB
 54.1486 -14/06/2006 12:48:43.277  000>> 716>>>>>>>>>>Part datagram received!
 54.1487 -14/06/2006 12:48:43.287  000>> 716>>>>>>>>>>Complete!
 54.1488 -14/06/2006 12:48:43.287  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29902
 54.1489 -14/06/2006 12:48:43.287  000>> Good datagram received!
 54.1490 -14/06/2006 12:48:43.297  000>> Listener:Received Bundle Offer
 54.1491 -14/06/2006 12:48:43.297  000>> Listener:Sending Empty bundle request...
 54.1492 -14/06/2006 12:48:43.297  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1493 -14/06/2006 12:48:43.297  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29476
 54.1494 -14/06/2006 12:48:43.297  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29903
 54.1495 -14/06/2006 12:48:43.297  000>> Good datagram received!
 54.1496 -14/06/2006 12:48:43.307  000>> Initiator:No more requested bundles
 54.1497 -14/06/2006 12:48:43.307  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.1498 -14/06/2006 12:48:43.427  000>> 91>>>>>>>>>>Part datagram received!
 54.1499 -14/06/2006 12:48:43.427  000>> 91>>>>>>>>>>Complete!
 54.1500 -14/06/2006 12:48:43.427  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29904
 54.1501 -14/06/2006 12:48:43.427  000>> Good datagram received!
 54.1502 -14/06/2006 12:48:43.427  000>> Receive Hello:SYN
 54.1503 -14/06/2006 12:48:43.427  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29477
 54.1504 -14/06/2006 12:48:43.447  000>> 91>>>>>>>>>>Part datagram received!
 54.1505 -14/06/2006 12:48:43.457  000>> 91>>>>>>>>>>Complete!
 54.1506 -14/06/2006 12:48:43.457  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29905
 54.1507 -14/06/2006 12:48:43.457  000>> Good datagram received!
 54.1508 -14/06/2006 12:48:43.457  000>> Receive Hello:ACK
 54.1509 -14/06/2006 12:48:43.557  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1510 -14/06/2006 12:48:43.557  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29478
 54.1511 -14/06/2006 12:48:43.557  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29479
 54.1512 -14/06/2006 12:48:43.557  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29480
 54.1513 -14/06/2006 12:48:43.567  000>> 98>>>>>>>>>>Part datagram received!
 54.1514 -14/06/2006 12:48:43.567  000>> 98>>>>>>>>>>Complete!
 54.1515 -14/06/2006 12:48:43.567  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29906
 54.1516 -14/06/2006 12:48:43.567  000>> Good datagram received!
 54.1517 -14/06/2006 12:48:43.567  000>> Listener:Received dictionary
 54.1518 -14/06/2006 12:48:43.567  000>> 90>>>>>>>>>>Part datagram received!
 54.1519 -14/06/2006 12:48:43.567  000>> 90>>>>>>>>>>Complete!
 54.1520 -14/06/2006 12:48:43.567  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29907
 54.1521 -14/06/2006 12:48:43.567  000>> Good datagram received!
 54.1522 -14/06/2006 12:48:43.567  000>> Listener:Received RIB
 54.1523 -14/06/2006 12:48:43.687  000>> 716>>>>>>>>>>Part datagram received!
 54.1524 -14/06/2006 12:48:43.687  000>> 716>>>>>>>>>>Complete!
 54.1525 -14/06/2006 12:48:43.687  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29908
 54.1526 -14/06/2006 12:48:43.687  000>> Good datagram received!
 54.1527 -14/06/2006 12:48:43.697  000>> Listener:Received Bundle Offer
 54.1528 -14/06/2006 12:48:43.697  000>> Listener:Sending Empty bundle request...
 54.1529 -14/06/2006 12:48:43.697  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1530 -14/06/2006 12:48:43.697  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29481
 54.1531 -14/06/2006 12:48:43.697  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29909
 54.1532 -14/06/2006 12:48:43.707  000>> Good datagram received!
 54.1533 -14/06/2006 12:48:43.707  000>> Initiator:No more requested bundles
 54.1534 -14/06/2006 12:48:43.707  000>> Listener(receiveBundles):We can restart connection...
 54.1535 -14/06/2006 12:48:43.807  000>> Hello Procedure:SENDSYN
 54.1536 -14/06/2006 12:48:43.807  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29482
 54.1537 -14/06/2006 12:48:43.868  000>> 91>>>>>>>>>>Part datagram received!
 54.1538 -14/06/2006 12:48:43.868  000>> 91>>>>>>>>>>Complete!
 54.1539 -14/06/2006 12:48:43.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29910
 54.1540 -14/06/2006 12:48:43.868  000>> Good datagram received!
 54.1541 -14/06/2006 12:48:43.868  000>> Receive Hello:SYNACK
 54.1542 -14/06/2006 12:48:43.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29483
 54.1543 -14/06/2006 12:48:43.968  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1544 -14/06/2006 12:48:43.968  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29484
 54.1545 -14/06/2006 12:48:43.968  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29485
 54.1546 -14/06/2006 12:48:43.968  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29486
 54.1547 -14/06/2006 12:48:44.118  000>> 78>>>>>>>>>>Part datagram received!
 54.1548 -14/06/2006 12:48:44.118  000>> 78>>>>>>>>>>Complete!
 54.1549 -14/06/2006 12:48:44.118  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29911
 54.1550 -14/06/2006 12:48:44.118  000>> Good datagram received!
 54.1551 -14/06/2006 12:48:44.118  000>> Initiator:No more requested bundles
 54.1552 -14/06/2006 12:48:44.118  000>> Initiator:But we can not restart connection...
 54.1553 -14/06/2006 12:48:44.288  000>> 826>>>>>>>>>>Part datagram received!
 54.1554 -14/06/2006 12:48:44.288  000>> 826>>>>>>>>>>Complete!
 54.1555 -14/06/2006 12:48:44.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29912
 54.1556 -14/06/2006 12:48:44.288  000>> Good datagram received!
 54.1557 -14/06/2006 12:48:44.288  000>> Listener:Received dictionary
 54.1558 -14/06/2006 12:48:44.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29913
 54.1559 -14/06/2006 12:48:44.288  000>> Good datagram received!
 54.1560 -14/06/2006 12:48:44.288  000>> Listener:Received RIB
 54.1561 -14/06/2006 12:48:44.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29914
 54.1562 -14/06/2006 12:48:44.288  000>> Good datagram received!
 54.1563 -14/06/2006 12:48:44.308  000>> Listener:Received Bundle Offer
 54.1564 -14/06/2006 12:48:44.308  000>> Listener:Sending Empty bundle request...
 54.1565 -14/06/2006 12:48:44.308  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.1566 -14/06/2006 12:48:44.308  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29487
 54.1567 -14/06/2006 12:48:44.468  000>> 91>>>>>>>>>>Part datagram received!
 54.1568 -14/06/2006 12:48:44.468  000>> 91>>>>>>>>>>Complete!
 54.1569 -14/06/2006 12:48:44.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29915
 54.1570 -14/06/2006 12:48:44.468  000>> Good datagram received!
 54.1571 -14/06/2006 12:48:44.468  000>> Receive Hello:SYN
 54.1572 -14/06/2006 12:48:44.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29488
 54.1573 -14/06/2006 12:48:44.488  000>> 91>>>>>>>>>>Part datagram received!
 54.1574 -14/06/2006 12:48:44.488  000>> 91>>>>>>>>>>Complete!
 54.1575 -14/06/2006 12:48:44.488  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29916
 54.1576 -14/06/2006 12:48:44.488  000>> Good datagram received!
 54.1577 -14/06/2006 12:48:44.488  000>> Receive Hello:ACK
 54.1578 -14/06/2006 12:48:44.589  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1579 -14/06/2006 12:48:44.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29489
 54.1580 -14/06/2006 12:48:44.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29490
 54.1581 -14/06/2006 12:48:44.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29491
 54.1582 -14/06/2006 12:48:44.609  000>> 98>>>>>>>>>>Part datagram received!
 54.1583 -14/06/2006 12:48:44.609  000>> 98>>>>>>>>>>Complete!
 54.1584 -14/06/2006 12:48:44.609  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29917
 54.1585 -14/06/2006 12:48:44.609  000>> Good datagram received!
 54.1586 -14/06/2006 12:48:44.609  000>> Listener:Received dictionary
 54.1587 -14/06/2006 12:48:44.609  000>> 90>>>>>>>>>>Part datagram received!
 54.1588 -14/06/2006 12:48:44.609  000>> 90>>>>>>>>>>Complete!
 54.1589 -14/06/2006 12:48:44.609  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29918
 54.1590 -14/06/2006 12:48:44.609  000>> Good datagram received!
 54.1591 -14/06/2006 12:48:44.609  000>> Listener:Received RIB
 54.1592 -14/06/2006 12:48:44.789  000>> 716>>>>>>>>>>Part datagram received!
 54.1593 -14/06/2006 12:48:44.789  000>> 716>>>>>>>>>>Complete!
 54.1594 -14/06/2006 12:48:44.789  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29919
 54.1595 -14/06/2006 12:48:44.789  000>> Good datagram received!
 54.1596 -14/06/2006 12:48:44.799  000>> Listener:Received Bundle Offer
 54.1597 -14/06/2006 12:48:44.809  000>> Listener:Sending Empty bundle request...
 54.1598 -14/06/2006 12:48:44.809  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1599 -14/06/2006 12:48:44.809  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29492
 54.1600 -14/06/2006 12:48:44.809  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29920
 54.1601 -14/06/2006 12:48:44.809  000>> Good datagram received!
 54.1602 -14/06/2006 12:48:44.809  000>> Initiator:No more requested bundles
 54.1603 -14/06/2006 12:48:44.809  000>> Listener(receiveBundles):We can restart connection...
 54.1604 -14/06/2006 12:48:44.909  000>> Hello Procedure:SENDSYN
 54.1605 -14/06/2006 12:48:44.909  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29493
 54.1606 -14/06/2006 12:48:44.979  000>> 91>>>>>>>>>>Part datagram received!
 54.1607 -14/06/2006 12:48:44.989  000>> 91>>>>>>>>>>Complete!
 54.1608 -14/06/2006 12:48:44.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29921
 54.1609 -14/06/2006 12:48:44.989  000>> Good datagram received!
 54.1610 -14/06/2006 12:48:44.989  000>> Receive Hello:SYNACK
 54.1611 -14/06/2006 12:48:44.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29494
 54.1612 -14/06/2006 12:48:45.089  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1613 -14/06/2006 12:48:45.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29495
 54.1614 -14/06/2006 12:48:45.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29496
 54.1615 -14/06/2006 12:48:45.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29497
 54.1616 -14/06/2006 12:48:45.119  000>> 98>>>>>>>>>>Part datagram received!
 54.1617 -14/06/2006 12:48:45.119  000>> 98>>>>>>>>>>Complete!
 54.1618 -14/06/2006 12:48:45.119  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29922
 54.1619 -14/06/2006 12:48:45.119  000>> Good datagram received!
 54.1620 -14/06/2006 12:48:45.119  000>> Listener:Received dictionary
 54.1621 -14/06/2006 12:48:45.119  000>> 90>>>>>>>>>>Part datagram received!
 54.1622 -14/06/2006 12:48:45.119  000>> 90>>>>>>>>>>Complete!
 54.1623 -14/06/2006 12:48:45.119  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29923
 54.1624 -14/06/2006 12:48:45.119  000>> Good datagram received!
 54.1625 -14/06/2006 12:48:45.129  000>> Listener:Received RIB
 54.1626 -14/06/2006 12:48:45.290  000>> 716>>>>>>>>>>Part datagram received!
 54.1627 -14/06/2006 12:48:45.290  000>> 716>>>>>>>>>>Complete!
 54.1628 -14/06/2006 12:48:45.290  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29924
 54.1629 -14/06/2006 12:48:45.290  000>> Good datagram received!
 54.1630 -14/06/2006 12:48:45.310  000>> Listener:Received Bundle Offer
 54.1631 -14/06/2006 12:48:45.310  000>> Listener:Sending Empty bundle request...
 54.1632 -14/06/2006 12:48:45.310  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1633 -14/06/2006 12:48:45.310  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29498
 54.1634 -14/06/2006 12:48:45.310  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29925
 54.1635 -14/06/2006 12:48:45.310  000>> Good datagram received!
 54.1636 -14/06/2006 12:48:45.310  000>> Initiator:No more requested bundles
 54.1637 -14/06/2006 12:48:45.310  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.1638 -14/06/2006 12:48:45.430  000>> 91>>>>>>>>>>Part datagram received!
 54.1639 -14/06/2006 12:48:45.430  000>> 91>>>>>>>>>>Complete!
 54.1640 -14/06/2006 12:48:45.430  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29926
 54.1641 -14/06/2006 12:48:45.430  000>> Good datagram received!
 54.1642 -14/06/2006 12:48:45.440  000>> Receive Hello:SYN
 54.1643 -14/06/2006 12:48:45.440  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29499
 54.1644 -14/06/2006 12:48:45.460  000>> 91>>>>>>>>>>Part datagram received!
 54.1645 -14/06/2006 12:48:45.460  000>> 91>>>>>>>>>>Complete!
 54.1646 -14/06/2006 12:48:45.460  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29927
 54.1647 -14/06/2006 12:48:45.460  000>> Good datagram received!
 54.1648 -14/06/2006 12:48:45.460  000>> Receive Hello:ACK
 54.1649 -14/06/2006 12:48:45.560  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1650 -14/06/2006 12:48:45.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29500
 54.1651 -14/06/2006 12:48:45.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29501
 54.1652 -14/06/2006 12:48:45.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29502
 54.1653 -14/06/2006 12:48:45.560  000>> 98>>>>>>>>>>Part datagram received!
 54.1654 -14/06/2006 12:48:45.560  000>> 98>>>>>>>>>>Complete!
 54.1655 -14/06/2006 12:48:45.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29928
 54.1656 -14/06/2006 12:48:45.570  000>> Good datagram received!
 54.1657 -14/06/2006 12:48:45.570  000>> Listener:Received dictionary
 54.1658 -14/06/2006 12:48:45.570  000>> 90>>>>>>>>>>Part datagram received!
 54.1659 -14/06/2006 12:48:45.570  000>> 90>>>>>>>>>>Complete!
 54.1660 -14/06/2006 12:48:45.570  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29929
 54.1661 -14/06/2006 12:48:45.570  000>> Good datagram received!
 54.1662 -14/06/2006 12:48:45.570  000>> Listener:Received RIB
 54.1663 -14/06/2006 12:48:45.690  000>> 716>>>>>>>>>>Part datagram received!
 54.1664 -14/06/2006 12:48:45.690  000>> 716>>>>>>>>>>Complete!
 54.1665 -14/06/2006 12:48:45.690  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29930
 54.1666 -14/06/2006 12:48:45.690  000>> Good datagram received!
 54.1667 -14/06/2006 12:48:45.710  000>> Listener:Received Bundle Offer
 54.1668 -14/06/2006 12:48:45.710  000>> Listener:Sending Empty bundle request...
 54.1669 -14/06/2006 12:48:45.710  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1670 -14/06/2006 12:48:45.710  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29503
 54.1671 -14/06/2006 12:48:45.710  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29931
 54.1672 -14/06/2006 12:48:45.710  000>> Good datagram received!
 54.1673 -14/06/2006 12:48:45.710  000>> Initiator:No more requested bundles
 54.1674 -14/06/2006 12:48:45.710  000>> Listener(receiveBundles):We can restart connection...
 54.1675 -14/06/2006 12:48:45.810  000>> Hello Procedure:SENDSYN
 54.1676 -14/06/2006 12:48:45.810  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29504
 54.1677 -14/06/2006 12:48:45.890  000>> 91>>>>>>>>>>Part datagram received!
 54.1678 -14/06/2006 12:48:45.890  000>> 91>>>>>>>>>>Complete!
 54.1679 -14/06/2006 12:48:45.890  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29932
 54.1680 -14/06/2006 12:48:45.900  000>> Good datagram received!
 54.1681 -14/06/2006 12:48:45.900  000>> Receive Hello:SYNACK
 54.1682 -14/06/2006 12:48:45.900  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29505
 54.1683 -14/06/2006 12:48:46.001  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1684 -14/06/2006 12:48:46.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29506
 54.1685 -14/06/2006 12:48:46.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29507
 54.1686 -14/06/2006 12:48:46.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29508
 54.1687 -14/06/2006 12:48:46.101  000>> 78>>>>>>>>>>Part datagram received!
 54.1688 -14/06/2006 12:48:46.101  000>> 78>>>>>>>>>>Complete!
 54.1689 -14/06/2006 12:48:46.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29933
 54.1690 -14/06/2006 12:48:46.111  000>> Good datagram received!
 54.1691 -14/06/2006 12:48:46.111  000>> Initiator:No more requested bundles
 54.1692 -14/06/2006 12:48:46.111  000>> Initiator:But we can not restart connection...
 54.1693 -14/06/2006 12:48:46.291  000>> 826>>>>>>>>>>Part datagram received!
 54.1694 -14/06/2006 12:48:46.291  000>> 826>>>>>>>>>>Complete!
 54.1695 -14/06/2006 12:48:46.291  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29934
 54.1696 -14/06/2006 12:48:46.291  000>> Good datagram received!
 54.1697 -14/06/2006 12:48:46.291  000>> Listener:Received dictionary
 54.1698 -14/06/2006 12:48:46.301  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29935
 54.1699 -14/06/2006 12:48:46.301  000>> Good datagram received!
 54.1700 -14/06/2006 12:48:46.301  000>> Listener:Received RIB
 54.1701 -14/06/2006 12:48:46.301  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29936
 54.1702 -14/06/2006 12:48:46.301  000>> Good datagram received!
 54.1703 -14/06/2006 12:48:46.311  000>> Listener:Received Bundle Offer
 54.1704 -14/06/2006 12:48:46.311  000>> Listener:Sending Empty bundle request...
 54.1705 -14/06/2006 12:48:46.321  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.1706 -14/06/2006 12:48:46.321  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29509
 54.1707 -14/06/2006 12:48:46.441  000>> 91>>>>>>>>>>Part datagram received!
 54.1708 -14/06/2006 12:48:46.441  000>> 91>>>>>>>>>>Complete!
 54.1709 -14/06/2006 12:48:46.451  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29937
 54.1710 -14/06/2006 12:48:46.451  000>> Good datagram received!
 54.1711 -14/06/2006 12:48:46.451  000>> Receive Hello:SYN
 54.1712 -14/06/2006 12:48:46.451  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29510
 54.1713 -14/06/2006 12:48:46.471  000>> 91>>>>>>>>>>Part datagram received!
 54.1714 -14/06/2006 12:48:46.471  000>> 91>>>>>>>>>>Complete!
 54.1715 -14/06/2006 12:48:46.471  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29938
 54.1716 -14/06/2006 12:48:46.471  000>> Good datagram received!
 54.1717 -14/06/2006 12:48:46.481  000>> Receive Hello:ACK
 54.1718 -14/06/2006 12:48:46.581  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1719 -14/06/2006 12:48:46.581  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29511
 54.1720 -14/06/2006 12:48:46.581  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29512
 54.1721 -14/06/2006 12:48:46.581  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29513
 54.1722 -14/06/2006 12:48:46.581  000>> 188>>>>>>>>>>Part datagram received!
 54.1723 -14/06/2006 12:48:46.581  000>> 188>>>>>>>>>>Complete!
 54.1724 -14/06/2006 12:48:46.581  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29939
 54.1725 -14/06/2006 12:48:46.581  000>> Good datagram received!
 54.1726 -14/06/2006 12:48:46.591  000>> Listener:Received dictionary
 54.1727 -14/06/2006 12:48:46.591  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29940
 54.1728 -14/06/2006 12:48:46.591  000>> Good datagram received!
 54.1729 -14/06/2006 12:48:46.591  000>> Listener:Received RIB
 54.1730 -14/06/2006 12:48:46.591  000>> 638>>>>>>>>>>Part datagram received!
 54.1731 -14/06/2006 12:48:46.591  000>> 638>>>>>>>>>>Complete!
 54.1732 -14/06/2006 12:48:46.591  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29941
 54.1733 -14/06/2006 12:48:46.591  000>> Good datagram received!
 54.1734 -14/06/2006 12:48:46.611  000>> Listener:Received Bundle Offer
 54.1735 -14/06/2006 12:48:46.611  000>> Listener:Sending Empty bundle request...
 54.1736 -14/06/2006 12:48:46.611  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1737 -14/06/2006 12:48:46.611  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29514
 54.1738 -14/06/2006 12:48:46.611  000>> 0>>>>>>>>>>Part datagram received!
 54.1739 -14/06/2006 12:48:46.611  000>> 0>>>>>>>>>>Part datagram received!
 54.1740 -14/06/2006 12:48:46.692  000>> 78>>>>>>>>>>Part datagram received!
 54.1741 -14/06/2006 12:48:46.692  000>> 78>>>>>>>>>>Complete!
 54.1742 -14/06/2006 12:48:46.692  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29942
 54.1743 -14/06/2006 12:48:46.692  000>> Good datagram received!
 54.1744 -14/06/2006 12:48:46.692  000>> Initiator:No more requested bundles
 54.1745 -14/06/2006 12:48:46.692  000>> Listener(receiveBundles):We can restart connection...
 54.1746 -14/06/2006 12:48:46.792  000>> Hello Procedure:SENDSYN
 54.1747 -14/06/2006 12:48:46.792  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29515
 54.1748 -14/06/2006 12:48:46.872  000>> 91>>>>>>>>>>Part datagram received!
 54.1749 -14/06/2006 12:48:46.872  000>> 91>>>>>>>>>>Complete!
 54.1750 -14/06/2006 12:48:46.872  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29943
 54.1751 -14/06/2006 12:48:46.872  000>> Good datagram received!
 54.1752 -14/06/2006 12:48:46.872  000>> Receive Hello:SYNACK
 54.1753 -14/06/2006 12:48:46.872  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29516
 54.1754 -14/06/2006 12:48:46.972  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1755 -14/06/2006 12:48:46.972  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29517
 54.1756 -14/06/2006 12:48:46.972  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29518
 54.1757 -14/06/2006 12:48:46.982  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29519
 54.1758 -14/06/2006 12:48:47.112  000>> 78>>>>>>>>>>Part datagram received!
 54.1759 -14/06/2006 12:48:47.112  000>> 78>>>>>>>>>>Complete!
 54.1760 -14/06/2006 12:48:47.112  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29944
 54.1761 -14/06/2006 12:48:47.122  000>> Good datagram received!
 54.1762 -14/06/2006 12:48:47.122  000>> Initiator:No more requested bundles
 54.1763 -14/06/2006 12:48:47.122  000>> Initiator:But we can not restart connection...
 54.1764 -14/06/2006 12:48:47.292  000>> 826>>>>>>>>>>Part datagram received!
 54.1765 -14/06/2006 12:48:47.292  000>> 826>>>>>>>>>>Complete!
 54.1766 -14/06/2006 12:48:47.292  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29945
 54.1767 -14/06/2006 12:48:47.292  000>> Good datagram received!
 54.1768 -14/06/2006 12:48:47.292  000>> Listener:Received dictionary
 54.1769 -14/06/2006 12:48:47.302  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29946
 54.1770 -14/06/2006 12:48:47.302  000>> Good datagram received!
 54.1771 -14/06/2006 12:48:47.302  000>> Listener:Received RIB
 54.1772 -14/06/2006 12:48:47.302  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29947
 54.1773 -14/06/2006 12:48:47.302  000>> Good datagram received!
 54.1774 -14/06/2006 12:48:47.312  000>> Listener:Received Bundle Offer
 54.1775 -14/06/2006 12:48:47.312  000>> Listener:Sending Empty bundle request...
 54.1776 -14/06/2006 12:48:47.323  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.1777 -14/06/2006 12:48:47.323  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29520
 54.1778 -14/06/2006 12:48:47.463  000>> 91>>>>>>>>>>Part datagram received!
 54.1779 -14/06/2006 12:48:47.463  000>> 91>>>>>>>>>>Complete!
 54.1780 -14/06/2006 12:48:47.463  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29948
 54.1781 -14/06/2006 12:48:47.463  000>> Good datagram received!
 54.1782 -14/06/2006 12:48:47.463  000>> Receive Hello:SYN
 54.1783 -14/06/2006 12:48:47.463  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29521
 54.1784 -14/06/2006 12:48:47.513  000>> 91>>>>>>>>>>Part datagram received!
 54.1785 -14/06/2006 12:48:47.513  000>> 91>>>>>>>>>>Complete!
 54.1786 -14/06/2006 12:48:47.513  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29949
 54.1787 -14/06/2006 12:48:47.513  000>> Good datagram received!
 54.1788 -14/06/2006 12:48:47.513  000>> Receive Hello:ACK
 54.1789 -14/06/2006 12:48:47.613  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1790 -14/06/2006 12:48:47.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29522
 54.1791 -14/06/2006 12:48:47.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29523
 54.1792 -14/06/2006 12:48:47.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29524
 54.1793 -14/06/2006 12:48:47.613  000>> 98>>>>>>>>>>Part datagram received!
 54.1794 -14/06/2006 12:48:47.613  000>> 98>>>>>>>>>>Complete!
 54.1795 -14/06/2006 12:48:47.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29950
 54.1796 -14/06/2006 12:48:47.623  000>> Good datagram received!
 54.1797 -14/06/2006 12:48:47.623  000>> Listener:Received dictionary
 54.1798 -14/06/2006 12:48:47.623  000>> 90>>>>>>>>>>Part datagram received!
 54.1799 -14/06/2006 12:48:47.623  000>> 90>>>>>>>>>>Complete!
 54.1800 -14/06/2006 12:48:47.623  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29951
 54.1801 -14/06/2006 12:48:47.623  000>> Good datagram received!
 54.1802 -14/06/2006 12:48:47.623  000>> Listener:Received RIB
 54.1803 -14/06/2006 12:48:47.793  000>> 716>>>>>>>>>>Part datagram received!
 54.1804 -14/06/2006 12:48:47.793  000>> 716>>>>>>>>>>Complete!
 54.1805 -14/06/2006 12:48:47.793  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29952
 54.1806 -14/06/2006 12:48:47.803  000>> Good datagram received!
 54.1807 -14/06/2006 12:48:47.813  000>> Listener:Received Bundle Offer
 54.1808 -14/06/2006 12:48:47.813  000>> Listener:Sending Empty bundle request...
 54.1809 -14/06/2006 12:48:47.813  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1810 -14/06/2006 12:48:47.813  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29525
 54.1811 -14/06/2006 12:48:47.813  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29953
 54.1812 -14/06/2006 12:48:47.813  000>> Good datagram received!
 54.1813 -14/06/2006 12:48:47.813  000>> Initiator:No more requested bundles
 54.1814 -14/06/2006 12:48:47.813  000>> Listener(receiveBundles):We can restart connection...
 54.1815 -14/06/2006 12:48:47.913  000>> Hello Procedure:SENDSYN
 54.1816 -14/06/2006 12:48:47.913  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29526
 54.1817 -14/06/2006 12:48:47.993  000>> 91>>>>>>>>>>Part datagram received!
 54.1818 -14/06/2006 12:48:47.993  000>> 91>>>>>>>>>>Complete!
 54.1819 -14/06/2006 12:48:47.993  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29954
 54.1820 -14/06/2006 12:48:47.993  000>> Good datagram received!
 54.1821 -14/06/2006 12:48:47.993  000>> Receive Hello:SYNACK
 54.1822 -14/06/2006 12:48:47.993  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29527
 54.1823 -14/06/2006 12:48:48.094  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1824 -14/06/2006 12:48:48.094  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29528
 54.1825 -14/06/2006 12:48:48.094  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29529
 54.1826 -14/06/2006 12:48:48.094  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29530
 54.1827 -14/06/2006 12:48:48.114  000>> 98>>>>>>>>>>Part datagram received!
 54.1828 -14/06/2006 12:48:48.124  000>> 98>>>>>>>>>>Complete!
 54.1829 -14/06/2006 12:48:48.124  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29955
 54.1830 -14/06/2006 12:48:48.124  000>> Good datagram received!
 54.1831 -14/06/2006 12:48:48.124  000>> Listener:Received dictionary
 54.1832 -14/06/2006 12:48:48.124  000>> 90>>>>>>>>>>Part datagram received!
 54.1833 -14/06/2006 12:48:48.124  000>> 90>>>>>>>>>>Complete!
 54.1834 -14/06/2006 12:48:48.124  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29956
 54.1835 -14/06/2006 12:48:48.124  000>> Good datagram received!
 54.1836 -14/06/2006 12:48:48.124  000>> Listener:Received RIB
 54.1837 -14/06/2006 12:48:48.294  000>> 716>>>>>>>>>>Part datagram received!
 54.1838 -14/06/2006 12:48:48.294  000>> 716>>>>>>>>>>Complete!
 54.1839 -14/06/2006 12:48:48.304  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29957
 54.1840 -14/06/2006 12:48:48.304  000>> Good datagram received!
 54.1841 -14/06/2006 12:48:48.314  000>> Listener:Received Bundle Offer
 54.1842 -14/06/2006 12:48:48.314  000>> Listener:Sending Empty bundle request...
 54.1843 -14/06/2006 12:48:48.314  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1844 -14/06/2006 12:48:48.314  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29531
 54.1845 -14/06/2006 12:48:48.314  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29958
 54.1846 -14/06/2006 12:48:48.314  000>> Good datagram received!
 54.1847 -14/06/2006 12:48:48.314  000>> Initiator:No more requested bundles
 54.1848 -14/06/2006 12:48:48.324  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.1849 -14/06/2006 12:48:48.434  000>> 91>>>>>>>>>>Part datagram received!
 54.1850 -14/06/2006 12:48:48.434  000>> 91>>>>>>>>>>Complete!
 54.1851 -14/06/2006 12:48:48.434  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29959
 54.1852 -14/06/2006 12:48:48.434  000>> Good datagram received!
 54.1853 -14/06/2006 12:48:48.444  000>> Receive Hello:SYN
 54.1854 -14/06/2006 12:48:48.444  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29532
 54.1855 -14/06/2006 12:48:48.464  000>> 91>>>>>>>>>>Part datagram received!
 54.1856 -14/06/2006 12:48:48.464  000>> 91>>>>>>>>>>Complete!
 54.1857 -14/06/2006 12:48:48.464  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29960
 54.1858 -14/06/2006 12:48:48.464  000>> Good datagram received!
 54.1859 -14/06/2006 12:48:48.464  000>> Receive Hello:ACK
 54.1860 -14/06/2006 12:48:48.564  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1861 -14/06/2006 12:48:48.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29533
 54.1862 -14/06/2006 12:48:48.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29534
 54.1863 -14/06/2006 12:48:48.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29535
 54.1864 -14/06/2006 12:48:48.564  000>> 98>>>>>>>>>>Part datagram received!
 54.1865 -14/06/2006 12:48:48.564  000>> 98>>>>>>>>>>Complete!
 54.1866 -14/06/2006 12:48:48.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29961
 54.1867 -14/06/2006 12:48:48.564  000>> Good datagram received!
 54.1868 -14/06/2006 12:48:48.564  000>> Listener:Received dictionary
 54.1869 -14/06/2006 12:48:48.574  000>> 90>>>>>>>>>>Part datagram received!
 54.1870 -14/06/2006 12:48:48.574  000>> 90>>>>>>>>>>Complete!
 54.1871 -14/06/2006 12:48:48.574  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29962
 54.1872 -14/06/2006 12:48:48.574  000>> Good datagram received!
 54.1873 -14/06/2006 12:48:48.574  000>> Listener:Received RIB
 54.1874 -14/06/2006 12:48:48.704  000>> 716>>>>>>>>>>Part datagram received!
 54.1875 -14/06/2006 12:48:48.704  000>> 716>>>>>>>>>>Complete!
 54.1876 -14/06/2006 12:48:48.704  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29963
 54.1877 -14/06/2006 12:48:48.704  000>> Good datagram received!
 54.1878 -14/06/2006 12:48:48.704  000>> Listener:Received Bundle Offer
 54.1879 -14/06/2006 12:48:48.704  000>> Listener:Sending Empty bundle request...
 54.1880 -14/06/2006 12:48:48.704  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1881 -14/06/2006 12:48:48.704  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29536
 54.1882 -14/06/2006 12:48:48.704  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29964
 54.1883 -14/06/2006 12:48:48.704  000>> Good datagram received!
 54.1884 -14/06/2006 12:48:48.704  000>> Initiator:No more requested bundles
 54.1885 -14/06/2006 12:48:48.704  000>> Listener(receiveBundles):We can restart connection...
 54.1886 -14/06/2006 12:48:48.805  000>> Hello Procedure:SENDSYN
 54.1887 -14/06/2006 12:48:48.805  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29537
 54.1888 -14/06/2006 12:48:48.955  000>> 91>>>>>>>>>>Part datagram received!
 54.1889 -14/06/2006 12:48:48.955  000>> 91>>>>>>>>>>Complete!
 54.1890 -14/06/2006 12:48:48.955  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29965
 54.1891 -14/06/2006 12:48:48.955  000>> Good datagram received!
 54.1892 -14/06/2006 12:48:48.955  000>> Receive Hello:SYNACK
 54.1893 -14/06/2006 12:48:48.955  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29538
 54.1894 -14/06/2006 12:48:49.055  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1895 -14/06/2006 12:48:49.055  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29539
 54.1896 -14/06/2006 12:48:49.055  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29540
 54.1897 -14/06/2006 12:48:49.055  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29541
 54.1898 -14/06/2006 12:48:49.075  000>> 98>>>>>>>>>>Part datagram received!
 54.1899 -14/06/2006 12:48:49.075  000>> 98>>>>>>>>>>Complete!
 54.1900 -14/06/2006 12:48:49.075  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29966
 54.1901 -14/06/2006 12:48:49.085  000>> Good datagram received!
 54.1902 -14/06/2006 12:48:49.085  000>> Listener:Received dictionary
 54.1903 -14/06/2006 12:48:49.085  000>> 90>>>>>>>>>>Part datagram received!
 54.1904 -14/06/2006 12:48:49.085  000>> 90>>>>>>>>>>Complete!
 54.1905 -14/06/2006 12:48:49.085  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29967
 54.1906 -14/06/2006 12:48:49.085  000>> Good datagram received!
 54.1907 -14/06/2006 12:48:49.085  000>> Listener:Received RIB
 54.1908 -14/06/2006 12:48:49.205  000>> 716>>>>>>>>>>Part datagram received!
 54.1909 -14/06/2006 12:48:49.205  000>> 716>>>>>>>>>>Complete!
 54.1910 -14/06/2006 12:48:49.205  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29968
 54.1911 -14/06/2006 12:48:49.205  000>> Good datagram received!
 54.1912 -14/06/2006 12:48:49.215  000>> Listener:Received Bundle Offer
 54.1913 -14/06/2006 12:48:49.215  000>> Listener:Sending Empty bundle request...
 54.1914 -14/06/2006 12:48:49.225  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1915 -14/06/2006 12:48:49.225  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29542
 54.1916 -14/06/2006 12:48:49.225  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29969
 54.1917 -14/06/2006 12:48:49.225  000>> Good datagram received!
 54.1918 -14/06/2006 12:48:49.225  000>> Initiator:No more requested bundles
 54.1919 -14/06/2006 12:48:49.225  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.1920 -14/06/2006 12:48:49.355  000>> 91>>>>>>>>>>Part datagram received!
 54.1921 -14/06/2006 12:48:49.355  000>> 91>>>>>>>>>>Complete!
 54.1922 -14/06/2006 12:48:49.355  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29970
 54.1923 -14/06/2006 12:48:49.355  000>> Good datagram received!
 54.1924 -14/06/2006 12:48:49.365  000>> Receive Hello:SYN
 54.1925 -14/06/2006 12:48:49.365  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29543
 54.1926 -14/06/2006 12:48:49.395  000>> 91>>>>>>>>>>Part datagram received!
 54.1927 -14/06/2006 12:48:49.395  000>> 91>>>>>>>>>>Complete!
 54.1928 -14/06/2006 12:48:49.395  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29971
 54.1929 -14/06/2006 12:48:49.395  000>> Good datagram received!
 54.1930 -14/06/2006 12:48:49.395  000>> Receive Hello:ACK
 54.1931 -14/06/2006 12:48:49.496  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1932 -14/06/2006 12:48:49.496  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29544
 54.1933 -14/06/2006 12:48:49.496  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29545
 54.1934 -14/06/2006 12:48:49.496  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29546
 54.1935 -14/06/2006 12:48:49.496  000>> 188>>>>>>>>>>Part datagram received!
 54.1936 -14/06/2006 12:48:49.496  000>> 188>>>>>>>>>>Complete!
 54.1937 -14/06/2006 12:48:49.496  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29972
 54.1938 -14/06/2006 12:48:49.496  000>> Good datagram received!
 54.1939 -14/06/2006 12:48:49.496  000>> Listener:Received dictionary
 54.1940 -14/06/2006 12:48:49.506  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29973
 54.1941 -14/06/2006 12:48:49.506  000>> Good datagram received!
 54.1942 -14/06/2006 12:48:49.506  000>> Listener:Received RIB
 54.1943 -14/06/2006 12:48:49.506  000>> 638>>>>>>>>>>Part datagram received!
 54.1944 -14/06/2006 12:48:49.516  000>> 638>>>>>>>>>>Complete!
 54.1945 -14/06/2006 12:48:49.516  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29974
 54.1946 -14/06/2006 12:48:49.516  000>> Good datagram received!
 54.1947 -14/06/2006 12:48:49.526  000>> Listener:Received Bundle Offer
 54.1948 -14/06/2006 12:48:49.526  000>> Listener:Sending Empty bundle request...
 54.1949 -14/06/2006 12:48:49.526  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1950 -14/06/2006 12:48:49.526  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29547
 54.1951 -14/06/2006 12:48:49.526  000>> 0>>>>>>>>>>Part datagram received!
 54.1952 -14/06/2006 12:48:49.536  000>> 0>>>>>>>>>>Part datagram received!
 54.1953 -14/06/2006 12:48:49.616  000>> 78>>>>>>>>>>Part datagram received!
 54.1954 -14/06/2006 12:48:49.616  000>> 78>>>>>>>>>>Complete!
 54.1955 -14/06/2006 12:48:49.616  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29975
 54.1956 -14/06/2006 12:48:49.616  000>> Good datagram received!
 54.1957 -14/06/2006 12:48:49.616  000>> Initiator:No more requested bundles
 54.1958 -14/06/2006 12:48:49.616  000>> Listener(receiveBundles):We can restart connection...
 54.1959 -14/06/2006 12:48:49.716  000>> Hello Procedure:SENDSYN
 54.1960 -14/06/2006 12:48:49.716  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29548
 54.1961 -14/06/2006 12:48:49.776  000>> 91>>>>>>>>>>Part datagram received!
 54.1962 -14/06/2006 12:48:49.776  000>> 91>>>>>>>>>>Complete!
 54.1963 -14/06/2006 12:48:49.776  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29976
 54.1964 -14/06/2006 12:48:49.776  000>> Good datagram received!
 54.1965 -14/06/2006 12:48:49.776  000>> Receive Hello:SYNACK
 54.1966 -14/06/2006 12:48:49.776  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29549
 54.1967 -14/06/2006 12:48:49.876  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.1968 -14/06/2006 12:48:49.876  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29550
 54.1969 -14/06/2006 12:48:49.876  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29551
 54.1970 -14/06/2006 12:48:49.876  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29552
 54.1971 -14/06/2006 12:48:49.946  000>> 98>>>>>>>>>>Part datagram received!
 54.1972 -14/06/2006 12:48:49.946  000>> 98>>>>>>>>>>Complete!
 54.1973 -14/06/2006 12:48:49.946  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29977
 54.1974 -14/06/2006 12:48:49.946  000>> Good datagram received!
 54.1975 -14/06/2006 12:48:49.946  000>> Listener:Received dictionary
 54.1976 -14/06/2006 12:48:49.946  000>> 90>>>>>>>>>>Part datagram received!
 54.1977 -14/06/2006 12:48:49.946  000>> 90>>>>>>>>>>Complete!
 54.1978 -14/06/2006 12:48:49.946  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29978
 54.1979 -14/06/2006 12:48:49.946  000>> Good datagram received!
 54.1980 -14/06/2006 12:48:49.946  000>> Listener:Received RIB
 54.1981 -14/06/2006 12:48:50.107  000>> 716>>>>>>>>>>Part datagram received!
 54.1982 -14/06/2006 12:48:50.107  000>> 716>>>>>>>>>>Complete!
 54.1983 -14/06/2006 12:48:50.107  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29979
 54.1984 -14/06/2006 12:48:50.107  000>> Good datagram received!
 54.1985 -14/06/2006 12:48:50.117  000>> Listener:Received Bundle Offer
 54.1986 -14/06/2006 12:48:50.117  000>> Listener:Sending Empty bundle request...
 54.1987 -14/06/2006 12:48:50.117  000>> Listener(receiveBOffer):But we can not restart connection...
 54.1988 -14/06/2006 12:48:50.117  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29553
 54.1989 -14/06/2006 12:48:50.127  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29980
 54.1990 -14/06/2006 12:48:50.127  000>> Good datagram received!
 54.1991 -14/06/2006 12:48:50.127  000>> Initiator:No more requested bundles
 54.1992 -14/06/2006 12:48:50.127  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.1993 -14/06/2006 12:48:50.247  000>> 91>>>>>>>>>>Part datagram received!
 54.1994 -14/06/2006 12:48:50.247  000>> 91>>>>>>>>>>Complete!
 54.1995 -14/06/2006 12:48:50.247  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29981
 54.1996 -14/06/2006 12:48:50.257  000>> Good datagram received!
 54.1997 -14/06/2006 12:48:50.257  000>> Receive Hello:SYN
 54.1998 -14/06/2006 12:48:50.257  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29554
 54.1999 -14/06/2006 12:48:50.277  000>> 91>>>>>>>>>>Part datagram received!
 54.2000 -14/06/2006 12:48:50.277  000>> 91>>>>>>>>>>Complete!
 54.2001 -14/06/2006 12:48:50.277  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29982
 54.2002 -14/06/2006 12:48:50.277  000>> Good datagram received!
 54.2003 -14/06/2006 12:48:50.277  000>> Receive Hello:ACK
 54.2004 -14/06/2006 12:48:50.387  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2005 -14/06/2006 12:48:50.387  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29555
 54.2006 -14/06/2006 12:48:50.387  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29556
 54.2007 -14/06/2006 12:48:50.387  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29557
 54.2008 -14/06/2006 12:48:50.387  000>> 188>>>>>>>>>>Part datagram received!
 54.2009 -14/06/2006 12:48:50.387  000>> 188>>>>>>>>>>Complete!
 54.2010 -14/06/2006 12:48:50.387  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29983
 54.2011 -14/06/2006 12:48:50.387  000>> Good datagram received!
 54.2012 -14/06/2006 12:48:50.387  000>> Listener:Received dictionary
 54.2013 -14/06/2006 12:48:50.397  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29984
 54.2014 -14/06/2006 12:48:50.397  000>> Good datagram received!
 54.2015 -14/06/2006 12:48:50.397  000>> Listener:Received RIB
 54.2016 -14/06/2006 12:48:50.397  000>> 638>>>>>>>>>>Part datagram received!
 54.2017 -14/06/2006 12:48:50.397  000>> 638>>>>>>>>>>Complete!
 54.2018 -14/06/2006 12:48:50.397  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29985
 54.2019 -14/06/2006 12:48:50.397  000>> Good datagram received!
 54.2020 -14/06/2006 12:48:50.417  000>> Listener:Received Bundle Offer
 54.2021 -14/06/2006 12:48:50.417  000>> Listener:Sending Empty bundle request...
 54.2022 -14/06/2006 12:48:50.417  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2023 -14/06/2006 12:48:50.417  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29558
 54.2024 -14/06/2006 12:48:50.417  000>> 0>>>>>>>>>>Part datagram received!
 54.2025 -14/06/2006 12:48:50.417  000>> 0>>>>>>>>>>Part datagram received!
 54.2026 -14/06/2006 12:48:50.497  000>> 78>>>>>>>>>>Part datagram received!
 54.2027 -14/06/2006 12:48:50.497  000>> 78>>>>>>>>>>Complete!
 54.2028 -14/06/2006 12:48:50.497  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29986
 54.2029 -14/06/2006 12:48:50.497  000>> Good datagram received!
 54.2030 -14/06/2006 12:48:50.497  000>> Initiator:No more requested bundles
 54.2031 -14/06/2006 12:48:50.497  000>> Listener(receiveBundles):We can restart connection...
 54.2032 -14/06/2006 12:48:50.597  000>> Hello Procedure:SENDSYN
 54.2033 -14/06/2006 12:48:50.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29559
 54.2034 -14/06/2006 12:48:50.667  000>> 91>>>>>>>>>>Part datagram received!
 54.2035 -14/06/2006 12:48:50.677  000>> 91>>>>>>>>>>Complete!
 54.2036 -14/06/2006 12:48:50.677  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29987
 54.2037 -14/06/2006 12:48:50.677  000>> Good datagram received!
 54.2038 -14/06/2006 12:48:50.677  000>> Receive Hello:SYNACK
 54.2039 -14/06/2006 12:48:50.677  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29560
 54.2040 -14/06/2006 12:48:50.777  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2041 -14/06/2006 12:48:50.777  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29561
 54.2042 -14/06/2006 12:48:50.777  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29562
 54.2043 -14/06/2006 12:48:50.777  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29563
 54.2044 -14/06/2006 12:48:50.808  000>> 98>>>>>>>>>>Part datagram received!
 54.2045 -14/06/2006 12:48:50.808  000>> 98>>>>>>>>>>Complete!
 54.2046 -14/06/2006 12:48:50.808  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29988
 54.2047 -14/06/2006 12:48:50.818  000>> Good datagram received!
 54.2048 -14/06/2006 12:48:50.818  000>> Listener:Received dictionary
 54.2049 -14/06/2006 12:48:50.818  000>> 90>>>>>>>>>>Part datagram received!
 54.2050 -14/06/2006 12:48:50.818  000>> 90>>>>>>>>>>Complete!
 54.2051 -14/06/2006 12:48:50.818  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29989
 54.2052 -14/06/2006 12:48:50.818  000>> Good datagram received!
 54.2053 -14/06/2006 12:48:50.818  000>> Listener:Received RIB
 54.2054 -14/06/2006 12:48:51.008  000>> 716>>>>>>>>>>Part datagram received!
 54.2055 -14/06/2006 12:48:51.008  000>> 716>>>>>>>>>>Complete!
 54.2056 -14/06/2006 12:48:51.008  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29990
 54.2057 -14/06/2006 12:48:51.008  000>> Good datagram received!
 54.2058 -14/06/2006 12:48:51.028  000>> Listener:Received Bundle Offer
 54.2059 -14/06/2006 12:48:51.028  000>> Listener:Sending Empty bundle request...
 54.2060 -14/06/2006 12:48:51.028  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2061 -14/06/2006 12:48:51.028  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29564
 54.2062 -14/06/2006 12:48:51.028  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29991
 54.2063 -14/06/2006 12:48:51.028  000>> Good datagram received!
 54.2064 -14/06/2006 12:48:51.028  000>> Initiator:No more requested bundles
 54.2065 -14/06/2006 12:48:51.028  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.2066 -14/06/2006 12:48:51.148  000>> 91>>>>>>>>>>Part datagram received!
 54.2067 -14/06/2006 12:48:51.148  000>> 91>>>>>>>>>>Complete!
 54.2068 -14/06/2006 12:48:51.148  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29992
 54.2069 -14/06/2006 12:48:51.148  000>> Good datagram received!
 54.2070 -14/06/2006 12:48:51.158  000>> Receive Hello:SYN
 54.2071 -14/06/2006 12:48:51.158  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29565
 54.2072 -14/06/2006 12:48:51.178  000>> 91>>>>>>>>>>Part datagram received!
 54.2073 -14/06/2006 12:48:51.178  000>> 91>>>>>>>>>>Complete!
 54.2074 -14/06/2006 12:48:51.178  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29993
 54.2075 -14/06/2006 12:48:51.188  000>> Good datagram received!
 54.2076 -14/06/2006 12:48:51.188  000>> Receive Hello:ACK
 54.2077 -14/06/2006 12:48:51.288  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2078 -14/06/2006 12:48:51.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29566
 54.2079 -14/06/2006 12:48:51.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29567
 54.2080 -14/06/2006 12:48:51.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29568
 54.2081 -14/06/2006 12:48:51.288  000>> 188>>>>>>>>>>Part datagram received!
 54.2082 -14/06/2006 12:48:51.288  000>> 188>>>>>>>>>>Complete!
 54.2083 -14/06/2006 12:48:51.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29994
 54.2084 -14/06/2006 12:48:51.288  000>> Good datagram received!
 54.2085 -14/06/2006 12:48:51.288  000>> Listener:Received dictionary
 54.2086 -14/06/2006 12:48:51.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29995
 54.2087 -14/06/2006 12:48:51.298  000>> Good datagram received!
 54.2088 -14/06/2006 12:48:51.298  000>> Listener:Received RIB
 54.2089 -14/06/2006 12:48:51.298  000>> 638>>>>>>>>>>Part datagram received!
 54.2090 -14/06/2006 12:48:51.298  000>> 638>>>>>>>>>>Complete!
 54.2091 -14/06/2006 12:48:51.298  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29996
 54.2092 -14/06/2006 12:48:51.298  000>> Good datagram received!
 54.2093 -14/06/2006 12:48:51.318  000>> Listener:Received Bundle Offer
 54.2094 -14/06/2006 12:48:51.318  000>> Listener:Sending Empty bundle request...
 54.2095 -14/06/2006 12:48:51.318  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2096 -14/06/2006 12:48:51.318  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29569
 54.2097 -14/06/2006 12:48:51.318  000>> 0>>>>>>>>>>Part datagram received!
 54.2098 -14/06/2006 12:48:51.318  000>> 0>>>>>>>>>>Part datagram received!
 54.2099 -14/06/2006 12:48:51.398  000>> 78>>>>>>>>>>Part datagram received!
 54.2100 -14/06/2006 12:48:51.398  000>> 78>>>>>>>>>>Complete!
 54.2101 -14/06/2006 12:48:51.398  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29997
 54.2102 -14/06/2006 12:48:51.398  000>> Good datagram received!
 54.2103 -14/06/2006 12:48:51.398  000>> Initiator:No more requested bundles
 54.2104 -14/06/2006 12:48:51.398  000>> Listener(receiveBundles):We can restart connection...
 54.2105 -14/06/2006 12:48:51.499  000>> Hello Procedure:SENDSYN
 54.2106 -14/06/2006 12:48:51.499  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29570
 54.2107 -14/06/2006 12:48:51.579  000>> 91>>>>>>>>>>Part datagram received!
 54.2108 -14/06/2006 12:48:51.579  000>> 91>>>>>>>>>>Complete!
 54.2109 -14/06/2006 12:48:51.579  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29998
 54.2110 -14/06/2006 12:48:51.579  000>> Good datagram received!
 54.2111 -14/06/2006 12:48:51.579  000>> Receive Hello:SYNACK
 54.2112 -14/06/2006 12:48:51.579  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29571
 54.2113 -14/06/2006 12:48:51.679  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2114 -14/06/2006 12:48:51.679  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29572
 54.2115 -14/06/2006 12:48:51.679  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29573
 54.2116 -14/06/2006 12:48:51.679  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29574
 54.2117 -14/06/2006 12:48:51.699  000>> 98>>>>>>>>>>Part datagram received!
 54.2118 -14/06/2006 12:48:51.699  000>> 98>>>>>>>>>>Complete!
 54.2119 -14/06/2006 12:48:51.709  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29999
 54.2120 -14/06/2006 12:48:51.709  000>> Good datagram received!
 54.2121 -14/06/2006 12:48:51.709  000>> Listener:Received dictionary
 54.2122 -14/06/2006 12:48:51.709  000>> 90>>>>>>>>>>Part datagram received!
 54.2123 -14/06/2006 12:48:51.709  000>> 90>>>>>>>>>>Complete!
 54.2124 -14/06/2006 12:48:51.709  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30000
 54.2125 -14/06/2006 12:48:51.709  000>> Good datagram received!
 54.2126 -14/06/2006 12:48:51.709  000>> Listener:Received RIB
 54.2127 -14/06/2006 12:48:51.909  000>> 716>>>>>>>>>>Part datagram received!
 54.2128 -14/06/2006 12:48:51.909  000>> 716>>>>>>>>>>Complete!
 54.2129 -14/06/2006 12:48:51.909  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30001
 54.2130 -14/06/2006 12:48:51.909  000>> Good datagram received!
 54.2131 -14/06/2006 12:48:51.929  000>> Listener:Received Bundle Offer
 54.2132 -14/06/2006 12:48:51.929  000>> Listener:Sending Empty bundle request...
 54.2133 -14/06/2006 12:48:51.929  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2134 -14/06/2006 12:48:51.929  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29575
 54.2135 -14/06/2006 12:48:51.929  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30002
 54.2136 -14/06/2006 12:48:51.929  000>> Good datagram received!
 54.2137 -14/06/2006 12:48:51.929  000>> Initiator:No more requested bundles
 54.2138 -14/06/2006 12:48:51.929  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.2139 -14/06/2006 12:48:52.049  000>> 91>>>>>>>>>>Part datagram received!
 54.2140 -14/06/2006 12:48:52.049  000>> 91>>>>>>>>>>Complete!
 54.2141 -14/06/2006 12:48:52.049  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30003
 54.2142 -14/06/2006 12:48:52.049  000>> Good datagram received!
 54.2143 -14/06/2006 12:48:52.059  000>> Receive Hello:SYN
 54.2144 -14/06/2006 12:48:52.059  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29576
 54.2145 -14/06/2006 12:48:52.089  000>> 91>>>>>>>>>>Part datagram received!
 54.2146 -14/06/2006 12:48:52.089  000>> 91>>>>>>>>>>Complete!
 54.2147 -14/06/2006 12:48:52.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30004
 54.2148 -14/06/2006 12:48:52.089  000>> Good datagram received!
 54.2149 -14/06/2006 12:48:52.089  000>> Receive Hello:ACK
 54.2150 -14/06/2006 12:48:52.190  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2151 -14/06/2006 12:48:52.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29577
 54.2152 -14/06/2006 12:48:52.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29578
 54.2153 -14/06/2006 12:48:52.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29579
 54.2154 -14/06/2006 12:48:52.190  000>> 98>>>>>>>>>>Part datagram received!
 54.2155 -14/06/2006 12:48:52.190  000>> 98>>>>>>>>>>Complete!
 54.2156 -14/06/2006 12:48:52.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30005
 54.2157 -14/06/2006 12:48:52.200  000>> Good datagram received!
 54.2158 -14/06/2006 12:48:52.200  000>> Listener:Received dictionary
 54.2159 -14/06/2006 12:48:52.200  000>> 90>>>>>>>>>>Part datagram received!
 54.2160 -14/06/2006 12:48:52.200  000>> 90>>>>>>>>>>Complete!
 54.2161 -14/06/2006 12:48:52.200  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30006
 54.2162 -14/06/2006 12:48:52.200  000>> Good datagram received!
 54.2163 -14/06/2006 12:48:52.200  000>> Listener:Received RIB
 54.2164 -14/06/2006 12:48:52.310  000>> 716>>>>>>>>>>Part datagram received!
 54.2165 -14/06/2006 12:48:52.310  000>> 716>>>>>>>>>>Complete!
 54.2166 -14/06/2006 12:48:52.310  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30007
 54.2167 -14/06/2006 12:48:52.320  000>> Good datagram received!
 54.2168 -14/06/2006 12:48:52.330  000>> Listener:Received Bundle Offer
 54.2169 -14/06/2006 12:48:52.330  000>> Listener:Sending Empty bundle request...
 54.2170 -14/06/2006 12:48:52.330  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2171 -14/06/2006 12:48:52.330  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29580
 54.2172 -14/06/2006 12:48:52.330  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30008
 54.2173 -14/06/2006 12:48:52.330  000>> Good datagram received!
 54.2174 -14/06/2006 12:48:52.330  000>> Initiator:No more requested bundles
 54.2175 -14/06/2006 12:48:52.340  000>> Listener(receiveBundles):We can restart connection...
 54.2176 -14/06/2006 12:48:52.450  000>> Hello Procedure:SENDSYN
 54.2177 -14/06/2006 12:48:52.450  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29581
 54.2178 -14/06/2006 12:48:52.480  000>> 91>>>>>>>>>>Part datagram received!
 54.2179 -14/06/2006 12:48:52.480  000>> 91>>>>>>>>>>Complete!
 54.2180 -14/06/2006 12:48:52.480  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30009
 54.2181 -14/06/2006 12:48:52.480  000>> Good datagram received!
 54.2182 -14/06/2006 12:48:52.480  000>> Receive Hello:SYNACK
 54.2183 -14/06/2006 12:48:52.480  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29582
 54.2184 -14/06/2006 12:48:52.580  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2185 -14/06/2006 12:48:52.580  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29583
 54.2186 -14/06/2006 12:48:52.580  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29584
 54.2187 -14/06/2006 12:48:52.590  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29585
 54.2188 -14/06/2006 12:48:52.600  000>> 98>>>>>>>>>>Part datagram received!
 54.2189 -14/06/2006 12:48:52.600  000>> 98>>>>>>>>>>Complete!
 54.2190 -14/06/2006 12:48:52.610  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30010
 54.2191 -14/06/2006 12:48:52.610  000>> Good datagram received!
 54.2192 -14/06/2006 12:48:52.610  000>> Listener:Received dictionary
 54.2193 -14/06/2006 12:48:52.610  000>> 90>>>>>>>>>>Part datagram received!
 54.2194 -14/06/2006 12:48:52.610  000>> 90>>>>>>>>>>Complete!
 54.2195 -14/06/2006 12:48:52.610  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30011
 54.2196 -14/06/2006 12:48:52.610  000>> Good datagram received!
 54.2197 -14/06/2006 12:48:52.610  000>> Listener:Received RIB
 54.2198 -14/06/2006 12:48:52.810  000>> 716>>>>>>>>>>Part datagram received!
 54.2199 -14/06/2006 12:48:52.820  000>> 716>>>>>>>>>>Complete!
 54.2200 -14/06/2006 12:48:52.820  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30012
 54.2201 -14/06/2006 12:48:52.820  000>> Good datagram received!
 54.2202 -14/06/2006 12:48:52.830  000>> Listener:Received Bundle Offer
 54.2203 -14/06/2006 12:48:52.830  000>> Listener:Sending Empty bundle request...
 54.2204 -14/06/2006 12:48:52.830  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2205 -14/06/2006 12:48:52.830  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29586
 54.2206 -14/06/2006 12:48:52.830  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30013
 54.2207 -14/06/2006 12:48:52.830  000>> Good datagram received!
 54.2208 -14/06/2006 12:48:52.840  000>> Initiator:No more requested bundles
 54.2209 -14/06/2006 12:48:52.840  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.2210 -14/06/2006 12:48:52.951  000>> 91>>>>>>>>>>Part datagram received!
 54.2211 -14/06/2006 12:48:52.951  000>> 91>>>>>>>>>>Complete!
 54.2212 -14/06/2006 12:48:52.951  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30014
 54.2213 -14/06/2006 12:48:52.951  000>> Good datagram received!
 54.2214 -14/06/2006 12:48:52.951  000>> Receive Hello:SYN
 54.2215 -14/06/2006 12:48:52.951  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29587
 54.2216 -14/06/2006 12:48:52.971  000>> 91>>>>>>>>>>Part datagram received!
 54.2217 -14/06/2006 12:48:52.971  000>> 91>>>>>>>>>>Complete!
 54.2218 -14/06/2006 12:48:52.981  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30015
 54.2219 -14/06/2006 12:48:52.981  000>> Good datagram received!
 54.2220 -14/06/2006 12:48:52.981  000>> Receive Hello:ACK
 54.2221 -14/06/2006 12:48:53.081  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2222 -14/06/2006 12:48:53.081  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29588
 54.2223 -14/06/2006 12:48:53.081  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29589
 54.2224 -14/06/2006 12:48:53.081  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29590
 54.2225 -14/06/2006 12:48:53.081  000>> 98>>>>>>>>>>Part datagram received!
 54.2226 -14/06/2006 12:48:53.091  000>> 98>>>>>>>>>>Complete!
 54.2227 -14/06/2006 12:48:53.091  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30016
 54.2228 -14/06/2006 12:48:53.091  000>> Good datagram received!
 54.2229 -14/06/2006 12:48:53.091  000>> Listener:Received dictionary
 54.2230 -14/06/2006 12:48:53.091  000>> 90>>>>>>>>>>Part datagram received!
 54.2231 -14/06/2006 12:48:53.091  000>> 90>>>>>>>>>>Complete!
 54.2232 -14/06/2006 12:48:53.091  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30017
 54.2233 -14/06/2006 12:48:53.091  000>> Good datagram received!
 54.2234 -14/06/2006 12:48:53.091  000>> Listener:Received RIB
 54.2235 -14/06/2006 12:48:53.211  000>> 716>>>>>>>>>>Part datagram received!
 54.2236 -14/06/2006 12:48:53.211  000>> 716>>>>>>>>>>Complete!
 54.2237 -14/06/2006 12:48:53.211  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30018
 54.2238 -14/06/2006 12:48:53.211  000>> Good datagram received!
 54.2239 -14/06/2006 12:48:53.231  000>> Listener:Received Bundle Offer
 54.2240 -14/06/2006 12:48:53.231  000>> Listener:Sending Empty bundle request...
 54.2241 -14/06/2006 12:48:53.231  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2242 -14/06/2006 12:48:53.231  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29591
 54.2243 -14/06/2006 12:48:53.231  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30019
 54.2244 -14/06/2006 12:48:53.231  000>> Good datagram received!
 54.2245 -14/06/2006 12:48:53.231  000>> Initiator:No more requested bundles
 54.2246 -14/06/2006 12:48:53.241  000>> Listener(receiveBundles):We can restart connection...
 54.2247 -14/06/2006 12:48:53.341  000>> Hello Procedure:SENDSYN
 54.2248 -14/06/2006 12:48:53.341  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29592
 54.2249 -14/06/2006 12:48:53.391  000>> 91>>>>>>>>>>Part datagram received!
 54.2250 -14/06/2006 12:48:53.401  000>> 91>>>>>>>>>>Complete!
 54.2251 -14/06/2006 12:48:53.401  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30020
 54.2252 -14/06/2006 12:48:53.401  000>> Good datagram received!
 54.2253 -14/06/2006 12:48:53.401  000>> Receive Hello:SYNACK
 54.2254 -14/06/2006 12:48:53.401  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29593
 54.2255 -14/06/2006 12:48:53.501  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2256 -14/06/2006 12:48:53.501  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29594
 54.2257 -14/06/2006 12:48:53.501  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29595
 54.2258 -14/06/2006 12:48:53.501  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29596
 54.2259 -14/06/2006 12:48:53.521  000>> 98>>>>>>>>>>Part datagram received!
 54.2260 -14/06/2006 12:48:53.521  000>> 98>>>>>>>>>>Complete!
 54.2261 -14/06/2006 12:48:53.521  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30021
 54.2262 -14/06/2006 12:48:53.521  000>> Good datagram received!
 54.2263 -14/06/2006 12:48:53.521  000>> Listener:Received dictionary
 54.2264 -14/06/2006 12:48:53.622  000>> 728>>>>>>>>>>Part datagram received!
 54.2265 -14/06/2006 12:48:53.622  000>> 728>>>>>>>>>>Complete!
 54.2266 -14/06/2006 12:48:53.632  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30022
 54.2267 -14/06/2006 12:48:53.632  000>> Good datagram received!
 54.2268 -14/06/2006 12:48:53.632  000>> Listener:Received RIB
 54.2269 -14/06/2006 12:48:53.632  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30023
 54.2270 -14/06/2006 12:48:53.632  000>> Good datagram received!
 54.2271 -14/06/2006 12:48:53.642  000>> Listener:Received Bundle Offer
 54.2272 -14/06/2006 12:48:53.652  000>> Listener:Sending Empty bundle request...
 54.2273 -14/06/2006 12:48:53.652  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2274 -14/06/2006 12:48:53.652  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29597
 54.2275 -14/06/2006 12:48:53.732  000>> 78>>>>>>>>>>Part datagram received!
 54.2276 -14/06/2006 12:48:53.732  000>> 78>>>>>>>>>>Complete!
 54.2277 -14/06/2006 12:48:53.732  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30024
 54.2278 -14/06/2006 12:48:53.732  000>> Good datagram received!
 54.2279 -14/06/2006 12:48:53.732  000>> Initiator:No more requested bundles
 54.2280 -14/06/2006 12:48:53.732  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.2281 -14/06/2006 12:48:53.842  000>> 91>>>>>>>>>>Part datagram received!
 54.2282 -14/06/2006 12:48:53.842  000>> 91>>>>>>>>>>Complete!
 54.2283 -14/06/2006 12:48:53.842  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30025
 54.2284 -14/06/2006 12:48:53.842  000>> Good datagram received!
 54.2285 -14/06/2006 12:48:53.842  000>> Receive Hello:SYN
 54.2286 -14/06/2006 12:48:53.842  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29598
 54.2287 -14/06/2006 12:48:53.872  000>> 91>>>>>>>>>>Part datagram received!
 54.2288 -14/06/2006 12:48:53.872  000>> 91>>>>>>>>>>Complete!
 54.2289 -14/06/2006 12:48:53.872  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30026
 54.2290 -14/06/2006 12:48:53.872  000>> Good datagram received!
 54.2291 -14/06/2006 12:48:53.872  000>> Receive Hello:ACK
 54.2292 -14/06/2006 12:48:53.972  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2293 -14/06/2006 12:48:53.972  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29599
 54.2294 -14/06/2006 12:48:53.972  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29600
 54.2295 -14/06/2006 12:48:53.972  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29601
 54.2296 -14/06/2006 12:48:53.972  000>> 98>>>>>>>>>>Part datagram received!
 54.2297 -14/06/2006 12:48:53.972  000>> 98>>>>>>>>>>Complete!
 54.2298 -14/06/2006 12:48:53.972  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30027
 54.2299 -14/06/2006 12:48:53.972  000>> Good datagram received!
 54.2300 -14/06/2006 12:48:53.982  000>> Listener:Received dictionary
 54.2301 -14/06/2006 12:48:53.982  000>> 90>>>>>>>>>>Part datagram received!
 54.2302 -14/06/2006 12:48:53.982  000>> 90>>>>>>>>>>Complete!
 54.2303 -14/06/2006 12:48:53.982  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30028
 54.2304 -14/06/2006 12:48:53.982  000>> Good datagram received!
 54.2305 -14/06/2006 12:48:53.982  000>> Listener:Received RIB
 54.2306 -14/06/2006 12:48:53.982  000>> 0>>>>>>>>>>Part datagram received!
 54.2307 -14/06/2006 12:48:53.982  000>> 0>>>>>>>>>>Part datagram received!
 54.2308 -14/06/2006 12:48:53.982  000>> 638>>>>>>>>>>Part datagram received!
 54.2309 -14/06/2006 12:48:53.982  000>> 638>>>>>>>>>>Complete!
 54.2310 -14/06/2006 12:48:53.982  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30029
 54.2311 -14/06/2006 12:48:53.992  000>> Good datagram received!
 54.2312 -14/06/2006 12:48:54.002  000>> Listener:Received Bundle Offer
 54.2313 -14/06/2006 12:48:54.002  000>> Listener:Sending Empty bundle request...
 54.2314 -14/06/2006 12:48:54.002  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2315 -14/06/2006 12:48:54.002  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29602
 54.2316 -14/06/2006 12:48:54.082  000>> 78>>>>>>>>>>Part datagram received!
 54.2317 -14/06/2006 12:48:54.082  000>> 78>>>>>>>>>>Complete!
 54.2318 -14/06/2006 12:48:54.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30030
 54.2319 -14/06/2006 12:48:54.082  000>> Good datagram received!
 54.2320 -14/06/2006 12:48:54.082  000>> Initiator:No more requested bundles
 54.2321 -14/06/2006 12:48:54.082  000>> Listener(receiveBundles):We can restart connection...
 54.2322 -14/06/2006 12:48:54.182  000>> Hello Procedure:SENDSYN
 54.2323 -14/06/2006 12:48:54.182  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29603
 54.2324 -14/06/2006 12:48:54.202  000>> 91>>>>>>>>>>Part datagram received!
 54.2325 -14/06/2006 12:48:54.202  000>> 91>>>>>>>>>>Complete!
 54.2326 -14/06/2006 12:48:54.202  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30031
 54.2327 -14/06/2006 12:48:54.202  000>> Good datagram received!
 54.2328 -14/06/2006 12:48:54.202  000>> Receive Hello:SYNACK
 54.2329 -14/06/2006 12:48:54.202  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29604
 54.2330 -14/06/2006 12:48:54.303  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2331 -14/06/2006 12:48:54.303  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29605
 54.2332 -14/06/2006 12:48:54.303  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29606
 54.2333 -14/06/2006 12:48:54.303  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29607
 54.2334 -14/06/2006 12:48:54.333  000>> 98>>>>>>>>>>Part datagram received!
 54.2335 -14/06/2006 12:48:54.333  000>> 98>>>>>>>>>>Complete!
 54.2336 -14/06/2006 12:48:54.333  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30032
 54.2337 -14/06/2006 12:48:54.343  000>> Good datagram received!
 54.2338 -14/06/2006 12:48:54.343  000>> Listener:Received dictionary
 54.2339 -14/06/2006 12:48:54.363  000>> 90>>>>>>>>>>Part datagram received!
 54.2340 -14/06/2006 12:48:54.363  000>> 90>>>>>>>>>>Complete!
 54.2341 -14/06/2006 12:48:54.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30033
 54.2342 -14/06/2006 12:48:54.363  000>> Good datagram received!
 54.2343 -14/06/2006 12:48:54.363  000>> Listener:Received RIB
 54.2344 -14/06/2006 12:48:54.523  000>> 716>>>>>>>>>>Part datagram received!
 54.2345 -14/06/2006 12:48:54.523  000>> 716>>>>>>>>>>Complete!
 54.2346 -14/06/2006 12:48:54.523  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30034
 54.2347 -14/06/2006 12:48:54.523  000>> Good datagram received!
 54.2348 -14/06/2006 12:48:54.533  000>> Listener:Received Bundle Offer
 54.2349 -14/06/2006 12:48:54.533  000>> Listener:Sending Empty bundle request...
 54.2350 -14/06/2006 12:48:54.533  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2351 -14/06/2006 12:48:54.533  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29608
 54.2352 -14/06/2006 12:48:54.543  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30035
 54.2353 -14/06/2006 12:48:54.543  000>> Good datagram received!
 54.2354 -14/06/2006 12:48:54.543  000>> Initiator:No more requested bundles
 54.2355 -14/06/2006 12:48:54.543  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.2356 -14/06/2006 12:48:54.653  000>> 91>>>>>>>>>>Part datagram received!
 54.2357 -14/06/2006 12:48:54.653  000>> 91>>>>>>>>>>Complete!
 54.2358 -14/06/2006 12:48:54.653  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30036
 54.2359 -14/06/2006 12:48:54.663  000>> Good datagram received!
 54.2360 -14/06/2006 12:48:54.663  000>> Receive Hello:SYN
 54.2361 -14/06/2006 12:48:54.663  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29609
 54.2362 -14/06/2006 12:48:54.984  000>> 91>>>>>>>>>>Part datagram received!
 54.2363 -14/06/2006 12:48:54.984  000>> 91>>>>>>>>>>Complete!
 54.2364 -14/06/2006 12:48:54.984  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30037
 54.2365 -14/06/2006 12:48:54.984  000>> Good datagram received!
 54.2366 -14/06/2006 12:48:54.984  000>> Receive Hello:ACK
 54.2367 -14/06/2006 12:48:55.084  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2368 -14/06/2006 12:48:55.084  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29610
 54.2369 -14/06/2006 12:48:55.084  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29611
 54.2370 -14/06/2006 12:48:55.084  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29612
 54.2371 -14/06/2006 12:48:55.084  000>> 98>>>>>>>>>>Part datagram received!
 54.2372 -14/06/2006 12:48:55.084  000>> 98>>>>>>>>>>Complete!
 54.2373 -14/06/2006 12:48:55.094  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30038
 54.2374 -14/06/2006 12:48:55.094  000>> Good datagram received!
 54.2375 -14/06/2006 12:48:55.094  000>> Listener:Received dictionary
 54.2376 -14/06/2006 12:48:55.094  000>> 90>>>>>>>>>>Part datagram received!
 54.2377 -14/06/2006 12:48:55.094  000>> 90>>>>>>>>>>Complete!
 54.2378 -14/06/2006 12:48:55.094  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30039
 54.2379 -14/06/2006 12:48:55.094  000>> Good datagram received!
 54.2380 -14/06/2006 12:48:55.094  000>> Listener:Received RIB
 54.2381 -14/06/2006 12:48:55.224  000>> 716>>>>>>>>>>Part datagram received!
 54.2382 -14/06/2006 12:48:55.224  000>> 716>>>>>>>>>>Complete!
 54.2383 -14/06/2006 12:48:55.224  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30040
 54.2384 -14/06/2006 12:48:55.224  000>> Good datagram received!
 54.2385 -14/06/2006 12:48:55.234  000>> Listener:Received Bundle Offer
 54.2386 -14/06/2006 12:48:55.234  000>> Listener:Sending Empty bundle request...
 54.2387 -14/06/2006 12:48:55.234  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2388 -14/06/2006 12:48:55.234  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29613
 54.2389 -14/06/2006 12:48:55.244  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30041
 54.2390 -14/06/2006 12:48:55.244  000>> Good datagram received!
 54.2391 -14/06/2006 12:48:55.244  000>> Initiator:No more requested bundles
 54.2392 -14/06/2006 12:48:55.244  000>> Listener(receiveBundles):We can restart connection...
 54.2393 -14/06/2006 12:48:55.344  000>> Hello Procedure:SENDSYN
 54.2394 -14/06/2006 12:48:55.344  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29614
 54.2395 -14/06/2006 12:48:55.394  000>> 91>>>>>>>>>>Part datagram received!
 54.2396 -14/06/2006 12:48:55.404  000>> 91>>>>>>>>>>Complete!
 54.2397 -14/06/2006 12:48:55.404  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30042
 54.2398 -14/06/2006 12:48:55.404  000>> Good datagram received!
 54.2399 -14/06/2006 12:48:55.404  000>> Receive Hello:SYNACK
 54.2400 -14/06/2006 12:48:55.404  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29615
 54.2401 -14/06/2006 12:48:55.504  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2402 -14/06/2006 12:48:55.504  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29616
 54.2403 -14/06/2006 12:48:55.504  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29617
 54.2404 -14/06/2006 12:48:55.504  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29618
 54.2405 -14/06/2006 12:48:55.534  000>> 98>>>>>>>>>>Part datagram received!
 54.2406 -14/06/2006 12:48:55.534  000>> 98>>>>>>>>>>Complete!
 54.2407 -14/06/2006 12:48:55.534  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30043
 54.2408 -14/06/2006 12:48:55.534  000>> Good datagram received!
 54.2409 -14/06/2006 12:48:55.534  000>> Listener:Received dictionary
 54.2410 -14/06/2006 12:48:55.544  000>> 90>>>>>>>>>>Part datagram received!
 54.2411 -14/06/2006 12:48:55.544  000>> 90>>>>>>>>>>Complete!
 54.2412 -14/06/2006 12:48:55.544  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30044
 54.2413 -14/06/2006 12:48:55.544  000>> Good datagram received!
 54.2414 -14/06/2006 12:48:55.544  000>> Listener:Received RIB
 54.2415 -14/06/2006 12:48:55.725  000>> 716>>>>>>>>>>Part datagram received!
 54.2416 -14/06/2006 12:48:55.725  000>> 716>>>>>>>>>>Complete!
 54.2417 -14/06/2006 12:48:55.725  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30045
 54.2418 -14/06/2006 12:48:55.725  000>> Good datagram received!
 54.2419 -14/06/2006 12:48:55.735  000>> Listener:Received Bundle Offer
 54.2420 -14/06/2006 12:48:55.735  000>> Listener:Sending Empty bundle request...
 54.2421 -14/06/2006 12:48:55.735  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2422 -14/06/2006 12:48:55.745  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29619
 54.2423 -14/06/2006 12:48:55.745  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30046
 54.2424 -14/06/2006 12:48:55.745  000>> Good datagram received!
 54.2425 -14/06/2006 12:48:55.745  000>> Initiator:No more requested bundles
 54.2426 -14/06/2006 12:48:55.745  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.2427 -14/06/2006 12:48:55.865  000>> 91>>>>>>>>>>Part datagram received!
 54.2428 -14/06/2006 12:48:55.865  000>> 91>>>>>>>>>>Complete!
 54.2429 -14/06/2006 12:48:55.875  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30047
 54.2430 -14/06/2006 12:48:55.875  000>> Good datagram received!
 54.2431 -14/06/2006 12:48:55.875  000>> Receive Hello:SYN
 54.2432 -14/06/2006 12:48:55.875  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29620
 54.2433 -14/06/2006 12:48:55.975  000>> 91>>>>>>>>>>Part datagram received!
 54.2434 -14/06/2006 12:48:55.975  000>> 91>>>>>>>>>>Complete!
 54.2435 -14/06/2006 12:48:55.975  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30048
 54.2436 -14/06/2006 12:48:55.975  000>> Good datagram received!
 54.2437 -14/06/2006 12:48:55.975  000>> Receive Hello:ACK
 54.2438 -14/06/2006 12:48:56.075  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2439 -14/06/2006 12:48:56.075  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29621
 54.2440 -14/06/2006 12:48:56.075  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29622
 54.2441 -14/06/2006 12:48:56.075  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29623
 54.2442 -14/06/2006 12:48:56.075  000>> 98>>>>>>>>>>Part datagram received!
 54.2443 -14/06/2006 12:48:56.085  000>> 98>>>>>>>>>>Complete!
 54.2444 -14/06/2006 12:48:56.085  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30049
 54.2445 -14/06/2006 12:48:56.085  000>> Good datagram received!
 54.2446 -14/06/2006 12:48:56.085  000>> Listener:Received dictionary
 54.2447 -14/06/2006 12:48:56.085  000>> 90>>>>>>>>>>Part datagram received!
 54.2448 -14/06/2006 12:48:56.085  000>> 90>>>>>>>>>>Complete!
 54.2449 -14/06/2006 12:48:56.085  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30050
 54.2450 -14/06/2006 12:48:56.085  000>> Good datagram received!
 54.2451 -14/06/2006 12:48:56.085  000>> Listener:Received RIB
 54.2452 -14/06/2006 12:48:56.225  000>> 716>>>>>>>>>>Part datagram received!
 54.2453 -14/06/2006 12:48:56.225  000>> 716>>>>>>>>>>Complete!
 54.2454 -14/06/2006 12:48:56.225  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30051
 54.2455 -14/06/2006 12:48:56.225  000>> Good datagram received!
 54.2456 -14/06/2006 12:48:56.235  000>> Listener:Received Bundle Offer
 54.2457 -14/06/2006 12:48:56.235  000>> Listener:Sending Empty bundle request...
 54.2458 -14/06/2006 12:48:56.245  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2459 -14/06/2006 12:48:56.245  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29624
 54.2460 -14/06/2006 12:48:56.245  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30052
 54.2461 -14/06/2006 12:48:56.245  000>> Good datagram received!
 54.2462 -14/06/2006 12:48:56.245  000>> Initiator:No more requested bundles
 54.2463 -14/06/2006 12:48:56.245  000>> Listener(receiveBundles):We can restart connection...
 54.2464 -14/06/2006 12:48:56.345  000>> Hello Procedure:SENDSYN
 54.2465 -14/06/2006 12:48:56.345  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29625
 54.2466 -14/06/2006 12:48:56.406  000>> 91>>>>>>>>>>Part datagram received!
 54.2467 -14/06/2006 12:48:56.406  000>> 91>>>>>>>>>>Complete!
 54.2468 -14/06/2006 12:48:56.406  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30053
 54.2469 -14/06/2006 12:48:56.406  000>> Good datagram received!
 54.2470 -14/06/2006 12:48:56.406  000>> Receive Hello:SYNACK
 54.2471 -14/06/2006 12:48:56.416  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29626
 54.2472 -14/06/2006 12:48:56.516  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2473 -14/06/2006 12:48:56.516  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29627
 54.2474 -14/06/2006 12:48:56.516  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29628
 54.2475 -14/06/2006 12:48:56.526  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29629
 54.2476 -14/06/2006 12:48:56.546  000>> 98>>>>>>>>>>Part datagram received!
 54.2477 -14/06/2006 12:48:56.546  000>> 98>>>>>>>>>>Complete!
 54.2478 -14/06/2006 12:48:56.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30054
 54.2479 -14/06/2006 12:48:56.556  000>> Good datagram received!
 54.2480 -14/06/2006 12:48:56.556  000>> Listener:Received dictionary
 54.2481 -14/06/2006 12:48:56.576  000>> 90>>>>>>>>>>Part datagram received!
 54.2482 -14/06/2006 12:48:56.576  000>> 90>>>>>>>>>>Complete!
 54.2483 -14/06/2006 12:48:56.576  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30055
 54.2484 -14/06/2006 12:48:56.576  000>> Good datagram received!
 54.2485 -14/06/2006 12:48:56.576  000>> Listener:Received RIB
 54.2486 -14/06/2006 12:48:56.726  000>> 716>>>>>>>>>>Part datagram received!
 54.2487 -14/06/2006 12:48:56.726  000>> 716>>>>>>>>>>Complete!
 54.2488 -14/06/2006 12:48:56.726  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30056
 54.2489 -14/06/2006 12:48:56.726  000>> Good datagram received!
 54.2490 -14/06/2006 12:48:56.736  000>> Listener:Received Bundle Offer
 54.2491 -14/06/2006 12:48:56.746  000>> Listener:Sending Empty bundle request...
 54.2492 -14/06/2006 12:48:56.746  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2493 -14/06/2006 12:48:56.746  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29630
 54.2494 -14/06/2006 12:48:56.746  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30057
 54.2495 -14/06/2006 12:48:56.746  000>> Good datagram received!
 54.2496 -14/06/2006 12:48:56.746  000>> Initiator:No more requested bundles
 54.2497 -14/06/2006 12:48:56.746  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.2498 -14/06/2006 12:48:56.866  000>> 91>>>>>>>>>>Part datagram received!
 54.2499 -14/06/2006 12:48:56.876  000>> 91>>>>>>>>>>Complete!
 54.2500 -14/06/2006 12:48:56.876  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30058
 54.2501 -14/06/2006 12:48:56.876  000>> Good datagram received!
 54.2502 -14/06/2006 12:48:56.876  000>> Receive Hello:SYN
 54.2503 -14/06/2006 12:48:56.876  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29631
 54.2504 -14/06/2006 12:48:56.976  000>> 91>>>>>>>>>>Part datagram received!
 54.2505 -14/06/2006 12:48:56.976  000>> 91>>>>>>>>>>Complete!
 54.2506 -14/06/2006 12:48:56.976  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30059
 54.2507 -14/06/2006 12:48:56.976  000>> Good datagram received!
 54.2508 -14/06/2006 12:48:56.976  000>> Receive Hello:ACK
 54.2509 -14/06/2006 12:48:57.077  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2510 -14/06/2006 12:48:57.077  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29632
 54.2511 -14/06/2006 12:48:57.077  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29633
 54.2512 -14/06/2006 12:48:57.077  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29634
 54.2513 -14/06/2006 12:48:57.087  000>> 98>>>>>>>>>>Part datagram received!
 54.2514 -14/06/2006 12:48:57.087  000>> 98>>>>>>>>>>Complete!
 54.2515 -14/06/2006 12:48:57.087  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30060
 54.2516 -14/06/2006 12:48:57.087  000>> Good datagram received!
 54.2517 -14/06/2006 12:48:57.097  000>> Listener:Received dictionary
 54.2518 -14/06/2006 12:48:57.097  000>> 90>>>>>>>>>>Part datagram received!
 54.2519 -14/06/2006 12:48:57.097  000>> 90>>>>>>>>>>Complete!
 54.2520 -14/06/2006 12:48:57.097  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30061
 54.2521 -14/06/2006 12:48:57.097  000>> Good datagram received!
 54.2522 -14/06/2006 12:48:57.097  000>> Listener:Received RIB
 54.2523 -14/06/2006 12:48:57.227  000>> 716>>>>>>>>>>Part datagram received!
 54.2524 -14/06/2006 12:48:57.227  000>> 716>>>>>>>>>>Complete!
 54.2525 -14/06/2006 12:48:57.227  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30062
 54.2526 -14/06/2006 12:48:57.227  000>> Good datagram received!
 54.2527 -14/06/2006 12:48:57.247  000>> Listener:Received Bundle Offer
 54.2528 -14/06/2006 12:48:57.247  000>> Listener:Sending Empty bundle request...
 54.2529 -14/06/2006 12:48:57.247  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2530 -14/06/2006 12:48:57.247  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29635
 54.2531 -14/06/2006 12:48:57.247  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30063
 54.2532 -14/06/2006 12:48:57.247  000>> Good datagram received!
 54.2533 -14/06/2006 12:48:57.247  000>> Initiator:No more requested bundles
 54.2534 -14/06/2006 12:48:57.247  000>> Listener(receiveBundles):We can restart connection...
 54.2535 -14/06/2006 12:48:57.347  000>> Hello Procedure:SENDSYN
 54.2536 -14/06/2006 12:48:57.347  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29636
 54.2537 -14/06/2006 12:48:57.397  000>> 91>>>>>>>>>>Part datagram received!
 54.2538 -14/06/2006 12:48:57.397  000>> 91>>>>>>>>>>Complete!
 54.2539 -14/06/2006 12:48:57.397  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30064
 54.2540 -14/06/2006 12:48:57.397  000>> Good datagram received!
 54.2541 -14/06/2006 12:48:57.397  000>> Receive Hello:SYNACK
 54.2542 -14/06/2006 12:48:57.407  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29637
 54.2543 -14/06/2006 12:48:57.507  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2544 -14/06/2006 12:48:57.507  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29638
 54.2545 -14/06/2006 12:48:57.507  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29639
 54.2546 -14/06/2006 12:48:57.507  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29640
 54.2547 -14/06/2006 12:48:57.527  000>> 98>>>>>>>>>>Part datagram received!
 54.2548 -14/06/2006 12:48:57.527  000>> 98>>>>>>>>>>Complete!
 54.2549 -14/06/2006 12:48:57.527  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30065
 54.2550 -14/06/2006 12:48:57.537  000>> Good datagram received!
 54.2551 -14/06/2006 12:48:57.537  000>> Listener:Received dictionary
 54.2552 -14/06/2006 12:48:57.537  000>> 90>>>>>>>>>>Part datagram received!
 54.2553 -14/06/2006 12:48:57.537  000>> 90>>>>>>>>>>Complete!
 54.2554 -14/06/2006 12:48:57.537  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30066
 54.2555 -14/06/2006 12:48:57.537  000>> Good datagram received!
 54.2556 -14/06/2006 12:48:57.537  000>> Listener:Received RIB
 54.2557 -14/06/2006 12:48:57.727  000>> 716>>>>>>>>>>Part datagram received!
 54.2558 -14/06/2006 12:48:57.737  000>> 716>>>>>>>>>>Complete!
 54.2559 -14/06/2006 12:48:57.737  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30067
 54.2560 -14/06/2006 12:48:57.737  000>> Good datagram received!
 54.2561 -14/06/2006 12:48:57.748  000>> Listener:Received Bundle Offer
 54.2562 -14/06/2006 12:48:57.748  000>> Listener:Sending Empty bundle request...
 54.2563 -14/06/2006 12:48:57.748  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2564 -14/06/2006 12:48:57.758  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29641
 54.2565 -14/06/2006 12:48:57.758  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30068
 54.2566 -14/06/2006 12:48:57.758  000>> Good datagram received!
 54.2567 -14/06/2006 12:48:57.758  000>> Initiator:No more requested bundles
 54.2568 -14/06/2006 12:48:57.758  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.2569 -14/06/2006 12:48:57.878  000>> 91>>>>>>>>>>Part datagram received!
 54.2570 -14/06/2006 12:48:57.878  000>> 91>>>>>>>>>>Complete!
 54.2571 -14/06/2006 12:48:57.878  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30069
 54.2572 -14/06/2006 12:48:57.878  000>> Good datagram received!
 54.2573 -14/06/2006 12:48:57.888  000>> Receive Hello:SYN
 54.2574 -14/06/2006 12:48:57.888  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29642
 54.2575 -14/06/2006 12:48:57.968  000>> 91>>>>>>>>>>Part datagram received!
 54.2576 -14/06/2006 12:48:57.968  000>> 91>>>>>>>>>>Complete!
 54.2577 -14/06/2006 12:48:57.968  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30070
 54.2578 -14/06/2006 12:48:57.968  000>> Good datagram received!
 54.2579 -14/06/2006 12:48:57.968  000>> Receive Hello:ACK
 54.2580 -14/06/2006 12:48:58.068  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2581 -14/06/2006 12:48:58.068  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29643
 54.2582 -14/06/2006 12:48:58.068  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29644
 54.2583 -14/06/2006 12:48:58.068  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29645
 54.2584 -14/06/2006 12:48:58.068  000>> 98>>>>>>>>>>Part datagram received!
 54.2585 -14/06/2006 12:48:58.078  000>> 98>>>>>>>>>>Complete!
 54.2586 -14/06/2006 12:48:58.078  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30071
 54.2587 -14/06/2006 12:48:58.078  000>> Good datagram received!
 54.2588 -14/06/2006 12:48:58.078  000>> Listener:Received dictionary
 54.2589 -14/06/2006 12:48:58.078  000>> 90>>>>>>>>>>Part datagram received!
 54.2590 -14/06/2006 12:48:58.078  000>> 90>>>>>>>>>>Complete!
 54.2591 -14/06/2006 12:48:58.078  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30072
 54.2592 -14/06/2006 12:48:58.078  000>> Good datagram received!
 54.2593 -14/06/2006 12:48:58.078  000>> Listener:Received RIB
 54.2594 -14/06/2006 12:48:58.228  000>> 716>>>>>>>>>>Part datagram received!
 54.2595 -14/06/2006 12:48:58.228  000>> 716>>>>>>>>>>Complete!
 54.2596 -14/06/2006 12:48:58.228  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30073
 54.2597 -14/06/2006 12:48:58.228  000>> Good datagram received!
 54.2598 -14/06/2006 12:48:58.248  000>> Listener:Received Bundle Offer
 54.2599 -14/06/2006 12:48:58.248  000>> Listener:Sending Empty bundle request...
 54.2600 -14/06/2006 12:48:58.248  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2601 -14/06/2006 12:48:58.248  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29646
 54.2602 -14/06/2006 12:48:58.248  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30074
 54.2603 -14/06/2006 12:48:58.258  000>> Good datagram received!
 54.2604 -14/06/2006 12:48:58.258  000>> Initiator:No more requested bundles
 54.2605 -14/06/2006 12:48:58.258  000>> Listener(receiveBundles):We can restart connection...
 54.2606 -14/06/2006 12:48:58.358  000>> Hello Procedure:SENDSYN
 54.2607 -14/06/2006 12:48:58.358  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29647
 54.2608 -14/06/2006 12:48:58.398  000>> 91>>>>>>>>>>Part datagram received!
 54.2609 -14/06/2006 12:48:58.408  000>> 91>>>>>>>>>>Complete!
 54.2610 -14/06/2006 12:48:58.408  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30075
 54.2611 -14/06/2006 12:48:58.408  000>> Good datagram received!
 54.2612 -14/06/2006 12:48:58.408  000>> Receive Hello:SYNACK
 54.2613 -14/06/2006 12:48:58.408  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29648
 54.2614 -14/06/2006 12:48:58.509  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2615 -14/06/2006 12:48:58.509  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29649
 54.2616 -14/06/2006 12:48:58.509  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29650
 54.2617 -14/06/2006 12:48:58.509  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29651
 54.2618 -14/06/2006 12:48:58.539  000>> 98>>>>>>>>>>Part datagram received!
 54.2619 -14/06/2006 12:48:58.539  000>> 98>>>>>>>>>>Complete!
 54.2620 -14/06/2006 12:48:58.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30076
 54.2621 -14/06/2006 12:48:58.539  000>> Good datagram received!
 54.2622 -14/06/2006 12:48:58.539  000>> Listener:Received dictionary
 54.2623 -14/06/2006 12:48:58.539  000>> 90>>>>>>>>>>Part datagram received!
 54.2624 -14/06/2006 12:48:58.539  000>> 90>>>>>>>>>>Complete!
 54.2625 -14/06/2006 12:48:58.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30077
 54.2626 -14/06/2006 12:48:58.539  000>> Good datagram received!
 54.2627 -14/06/2006 12:48:58.539  000>> Listener:Received RIB
 54.2628 -14/06/2006 12:48:58.729  000>> 716>>>>>>>>>>Part datagram received!
 54.2629 -14/06/2006 12:48:58.729  000>> 716>>>>>>>>>>Complete!
 54.2630 -14/06/2006 12:48:58.729  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30078
 54.2631 -14/06/2006 12:48:58.729  000>> Good datagram received!
 54.2632 -14/06/2006 12:48:58.749  000>> Listener:Received Bundle Offer
 54.2633 -14/06/2006 12:48:58.749  000>> Listener:Sending Empty bundle request...
 54.2634 -14/06/2006 12:48:58.749  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2635 -14/06/2006 12:48:58.749  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29652
 54.2636 -14/06/2006 12:48:58.749  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30079
 54.2637 -14/06/2006 12:48:58.759  000>> Good datagram received!
 54.2638 -14/06/2006 12:48:58.759  000>> Initiator:No more requested bundles
 54.2639 -14/06/2006 12:48:58.759  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.2640 -14/06/2006 12:48:58.959  000>> 91>>>>>>>>>>Part datagram received!
 54.2641 -14/06/2006 12:48:58.959  000>> 91>>>>>>>>>>Complete!
 54.2642 -14/06/2006 12:48:58.959  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30080
 54.2643 -14/06/2006 12:48:58.969  000>> Good datagram received!
 54.2644 -14/06/2006 12:48:58.969  000>> Receive Hello:SYN
 54.2645 -14/06/2006 12:48:58.969  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29653
 54.2646 -14/06/2006 12:48:58.979  000>> 91>>>>>>>>>>Part datagram received!
 54.2647 -14/06/2006 12:48:58.979  000>> 91>>>>>>>>>>Complete!
 54.2648 -14/06/2006 12:48:58.979  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30081
 54.2649 -14/06/2006 12:48:58.979  000>> Good datagram received!
 54.2650 -14/06/2006 12:48:58.979  000>> Receive Hello:ACK
 54.2651 -14/06/2006 12:48:59.089  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2652 -14/06/2006 12:48:59.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29654
 54.2653 -14/06/2006 12:48:59.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29655
 54.2654 -14/06/2006 12:48:59.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29656
 54.2655 -14/06/2006 12:48:59.089  000>> 188>>>>>>>>>>Part datagram received!
 54.2656 -14/06/2006 12:48:59.089  000>> 188>>>>>>>>>>Complete!
 54.2657 -14/06/2006 12:48:59.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30082
 54.2658 -14/06/2006 12:48:59.089  000>> Good datagram received!
 54.2659 -14/06/2006 12:48:59.099  000>> Listener:Received dictionary
 54.2660 -14/06/2006 12:48:59.099  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30083
 54.2661 -14/06/2006 12:48:59.099  000>> Good datagram received!
 54.2662 -14/06/2006 12:48:59.099  000>> Listener:Received RIB
 54.2663 -14/06/2006 12:48:59.099  000>> 638>>>>>>>>>>Part datagram received!
 54.2664 -14/06/2006 12:48:59.099  000>> 638>>>>>>>>>>Complete!
 54.2665 -14/06/2006 12:48:59.099  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30084
 54.2666 -14/06/2006 12:48:59.099  000>> Good datagram received!
 54.2667 -14/06/2006 12:48:59.119  000>> Listener:Received Bundle Offer
 54.2668 -14/06/2006 12:48:59.119  000>> Listener:Sending Empty bundle request...
 54.2669 -14/06/2006 12:48:59.119  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2670 -14/06/2006 12:48:59.119  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29657
 54.2671 -14/06/2006 12:48:59.119  000>> 0>>>>>>>>>>Part datagram received!
 54.2672 -14/06/2006 12:48:59.119  000>> 0>>>>>>>>>>Part datagram received!
 54.2673 -14/06/2006 12:48:59.200  000>> 78>>>>>>>>>>Part datagram received!
 54.2674 -14/06/2006 12:48:59.200  000>> 78>>>>>>>>>>Complete!
 54.2675 -14/06/2006 12:48:59.200  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30085
 54.2676 -14/06/2006 12:48:59.210  000>> Good datagram received!
 54.2677 -14/06/2006 12:48:59.210  000>> Initiator:No more requested bundles
 54.2678 -14/06/2006 12:48:59.210  000>> Listener(receiveBundles):We can restart connection...
 54.2679 -14/06/2006 12:48:59.310  000>> Hello Procedure:SENDSYN
 54.2680 -14/06/2006 12:48:59.310  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29658
 54.2681 -14/06/2006 12:48:59.370  000>> 91>>>>>>>>>>Part datagram received!
 54.2682 -14/06/2006 12:48:59.370  000>> 91>>>>>>>>>>Complete!
 54.2683 -14/06/2006 12:48:59.370  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30086
 54.2684 -14/06/2006 12:48:59.370  000>> Good datagram received!
 54.2685 -14/06/2006 12:48:59.370  000>> Receive Hello:SYNACK
 54.2686 -14/06/2006 12:48:59.370  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29659
 54.2687 -14/06/2006 12:48:59.470  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2688 -14/06/2006 12:48:59.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29660
 54.2689 -14/06/2006 12:48:59.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29661
 54.2690 -14/06/2006 12:48:59.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29662
 54.2691 -14/06/2006 12:48:59.490  000>> 98>>>>>>>>>>Part datagram received!
 54.2692 -14/06/2006 12:48:59.490  000>> 98>>>>>>>>>>Complete!
 54.2693 -14/06/2006 12:48:59.500  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30087
 54.2694 -14/06/2006 12:48:59.500  000>> Good datagram received!
 54.2695 -14/06/2006 12:48:59.500  000>> Listener:Received dictionary
 54.2696 -14/06/2006 12:48:59.500  000>> 90>>>>>>>>>>Part datagram received!
 54.2697 -14/06/2006 12:48:59.500  000>> 90>>>>>>>>>>Complete!
 54.2698 -14/06/2006 12:48:59.500  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30088
 54.2699 -14/06/2006 12:48:59.500  000>> Good datagram received!
 54.2700 -14/06/2006 12:48:59.500  000>> Listener:Received RIB
 54.2701 -14/06/2006 12:48:59.630  000>> 716>>>>>>>>>>Part datagram received!
 54.2702 -14/06/2006 12:48:59.640  000>> 716>>>>>>>>>>Complete!
 54.2703 -14/06/2006 12:48:59.640  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30089
 54.2704 -14/06/2006 12:48:59.640  000>> Good datagram received!
 54.2705 -14/06/2006 12:48:59.650  000>> Listener:Received Bundle Offer
 54.2706 -14/06/2006 12:48:59.650  000>> Listener:Sending Empty bundle request...
 54.2707 -14/06/2006 12:48:59.650  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2708 -14/06/2006 12:48:59.650  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29663
 54.2709 -14/06/2006 12:48:59.660  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30090
 54.2710 -14/06/2006 12:48:59.660  000>> Good datagram received!
 54.2711 -14/06/2006 12:48:59.660  000>> Initiator:No more requested bundles
 54.2712 -14/06/2006 12:48:59.660  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.2713 -14/06/2006 12:48:59.790  000>> 91>>>>>>>>>>Part datagram received!
 54.2714 -14/06/2006 12:48:59.790  000>> 91>>>>>>>>>>Complete!
 54.2715 -14/06/2006 12:48:59.790  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30091
 54.2716 -14/06/2006 12:48:59.790  000>> Good datagram received!
 54.2717 -14/06/2006 12:48:59.800  000>> Receive Hello:SYN
 54.2718 -14/06/2006 12:48:59.800  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29664
 54.2719 -14/06/2006 12:48:59.830  000>> 91>>>>>>>>>>Part datagram received!
 54.2720 -14/06/2006 12:48:59.830  000>> 91>>>>>>>>>>Complete!
 54.2721 -14/06/2006 12:48:59.830  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30092
 54.2722 -14/06/2006 12:48:59.830  000>> Good datagram received!
 54.2723 -14/06/2006 12:48:59.830  000>> Receive Hello:ACK
 54.2724 -14/06/2006 12:48:59.931  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2725 -14/06/2006 12:48:59.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29665
 54.2726 -14/06/2006 12:48:59.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29666
 54.2727 -14/06/2006 12:48:59.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29667
 54.2728 -14/06/2006 12:48:59.961  000>> 98>>>>>>>>>>Part datagram received!
 54.2729 -14/06/2006 12:48:59.961  000>> 98>>>>>>>>>>Complete!
 54.2730 -14/06/2006 12:48:59.961  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30093
 54.2731 -14/06/2006 12:48:59.961  000>> Good datagram received!
 54.2732 -14/06/2006 12:48:59.961  000>> Listener:Received dictionary
 54.2733 -14/06/2006 12:48:59.961  000>> 90>>>>>>>>>>Part datagram received!
 54.2734 -14/06/2006 12:48:59.961  000>> 90>>>>>>>>>>Complete!
 54.2735 -14/06/2006 12:48:59.961  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30094
 54.2736 -14/06/2006 12:48:59.961  000>> Good datagram received!
 54.2737 -14/06/2006 12:48:59.961  000>> Listener:Received RIB
 54.2738 -14/06/2006 12:49:00.131  000>> 716>>>>>>>>>>Part datagram received!
 54.2739 -14/06/2006 12:49:00.141  000>> 716>>>>>>>>>>Complete!
 54.2740 -14/06/2006 12:49:00.141  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30095
 54.2741 -14/06/2006 12:49:00.141  000>> Good datagram received!
 54.2742 -14/06/2006 12:49:00.151  000>> Listener:Received Bundle Offer
 54.2743 -14/06/2006 12:49:00.151  000>> Listener:Sending Empty bundle request...
 54.2744 -14/06/2006 12:49:00.151  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2745 -14/06/2006 12:49:00.151  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29668
 54.2746 -14/06/2006 12:49:00.161  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30096
 54.2747 -14/06/2006 12:49:00.161  000>> Good datagram received!
 54.2748 -14/06/2006 12:49:00.161  000>> Initiator:No more requested bundles
 54.2749 -14/06/2006 12:49:00.161  000>> Listener(receiveBundles):We can restart connection...
 54.2750 -14/06/2006 12:49:00.261  000>> Hello Procedure:SENDSYN
 54.2751 -14/06/2006 12:49:00.261  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29669
 54.2752 -14/06/2006 12:49:00.371  000>> 91>>>>>>>>>>Part datagram received!
 54.2753 -14/06/2006 12:49:00.371  000>> 91>>>>>>>>>>Complete!
 54.2754 -14/06/2006 12:49:00.371  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30097
 54.2755 -14/06/2006 12:49:00.371  000>> Good datagram received!
 54.2756 -14/06/2006 12:49:00.371  000>> Receive Hello:SYNACK
 54.2757 -14/06/2006 12:49:00.371  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29670
 54.2758 -14/06/2006 12:49:00.471  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2759 -14/06/2006 12:49:00.471  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29671
 54.2760 -14/06/2006 12:49:00.471  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29672
 54.2761 -14/06/2006 12:49:00.471  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29673
 54.2762 -14/06/2006 12:49:00.501  000>> 98>>>>>>>>>>Part datagram received!
 54.2763 -14/06/2006 12:49:00.501  000>> 98>>>>>>>>>>Complete!
 54.2764 -14/06/2006 12:49:00.501  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30098
 54.2765 -14/06/2006 12:49:00.501  000>> Good datagram received!
 54.2766 -14/06/2006 12:49:00.501  000>> Listener:Received dictionary
 54.2767 -14/06/2006 12:49:00.501  000>> 90>>>>>>>>>>Part datagram received!
 54.2768 -14/06/2006 12:49:00.501  000>> 90>>>>>>>>>>Complete!
 54.2769 -14/06/2006 12:49:00.501  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30099
 54.2770 -14/06/2006 12:49:00.501  000>> Good datagram received!
 54.2771 -14/06/2006 12:49:00.501  000>> Listener:Received RIB
 54.2772 -14/06/2006 12:49:00.642  000>> 716>>>>>>>>>>Part datagram received!
 54.2773 -14/06/2006 12:49:00.642  000>> 716>>>>>>>>>>Complete!
 54.2774 -14/06/2006 12:49:00.642  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30100
 54.2775 -14/06/2006 12:49:00.642  000>> Good datagram received!
 54.2776 -14/06/2006 12:49:00.652  000>> Listener:Received Bundle Offer
 54.2777 -14/06/2006 12:49:00.652  000>> Listener:Sending Empty bundle request...
 54.2778 -14/06/2006 12:49:00.662  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2779 -14/06/2006 12:49:00.662  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29674
 54.2780 -14/06/2006 12:49:00.662  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30101
 54.2781 -14/06/2006 12:49:00.662  000>> Good datagram received!
 54.2782 -14/06/2006 12:49:00.662  000>> Initiator:No more requested bundles
 54.2783 -14/06/2006 12:49:00.662  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.2784 -14/06/2006 12:49:00.782  000>> 91>>>>>>>>>>Part datagram received!
 54.2785 -14/06/2006 12:49:00.782  000>> 91>>>>>>>>>>Complete!
 54.2786 -14/06/2006 12:49:00.782  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30102
 54.2787 -14/06/2006 12:49:00.782  000>> Good datagram received!
 54.2788 -14/06/2006 12:49:00.792  000>> Receive Hello:SYN
 54.2789 -14/06/2006 12:49:00.792  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29675
 54.2790 -14/06/2006 12:49:00.812  000>> 91>>>>>>>>>>Part datagram received!
 54.2791 -14/06/2006 12:49:00.812  000>> 91>>>>>>>>>>Complete!
 54.2792 -14/06/2006 12:49:00.812  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30103
 54.2793 -14/06/2006 12:49:00.812  000>> Good datagram received!
 54.2794 -14/06/2006 12:49:00.812  000>> Receive Hello:ACK
 54.2795 -14/06/2006 12:49:00.912  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2796 -14/06/2006 12:49:00.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29676
 54.2797 -14/06/2006 12:49:00.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29677
 54.2798 -14/06/2006 12:49:00.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29678
 54.2799 -14/06/2006 12:49:00.942  000>> 98>>>>>>>>>>Part datagram received!
 54.2800 -14/06/2006 12:49:00.942  000>> 98>>>>>>>>>>Complete!
 54.2801 -14/06/2006 12:49:00.942  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30104
 54.2802 -14/06/2006 12:49:00.942  000>> Good datagram received!
 54.2803 -14/06/2006 12:49:00.942  000>> Listener:Received dictionary
 54.2804 -14/06/2006 12:49:00.942  000>> 90>>>>>>>>>>Part datagram received!
 54.2805 -14/06/2006 12:49:00.942  000>> 90>>>>>>>>>>Complete!
 54.2806 -14/06/2006 12:49:00.942  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30105
 54.2807 -14/06/2006 12:49:00.942  000>> Good datagram received!
 54.2808 -14/06/2006 12:49:00.942  000>> Listener:Received RIB
 54.2809 -14/06/2006 12:49:01.142  000>> 716>>>>>>>>>>Part datagram received!
 54.2810 -14/06/2006 12:49:01.142  000>> 716>>>>>>>>>>Complete!
 54.2811 -14/06/2006 12:49:01.142  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30106
 54.2812 -14/06/2006 12:49:01.142  000>> Good datagram received!
 54.2813 -14/06/2006 12:49:01.152  000>> Listener:Received Bundle Offer
 54.2814 -14/06/2006 12:49:01.152  000>> Listener:Sending Empty bundle request...
 54.2815 -14/06/2006 12:49:01.162  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2816 -14/06/2006 12:49:01.162  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29679
 54.2817 -14/06/2006 12:49:01.162  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30107
 54.2818 -14/06/2006 12:49:01.162  000>> Good datagram received!
 54.2819 -14/06/2006 12:49:01.162  000>> Initiator:No more requested bundles
 54.2820 -14/06/2006 12:49:01.162  000>> Listener(receiveBundles):We can restart connection...
 54.2821 -14/06/2006 12:49:01.263  000>> Hello Procedure:SENDSYN
 54.2822 -14/06/2006 12:49:01.263  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29680
 54.2823 -14/06/2006 12:49:01.403  000>> 91>>>>>>>>>>Part datagram received!
 54.2824 -14/06/2006 12:49:01.403  000>> 91>>>>>>>>>>Complete!
 54.2825 -14/06/2006 12:49:01.403  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30108
 54.2826 -14/06/2006 12:49:01.403  000>> Good datagram received!
 54.2827 -14/06/2006 12:49:01.403  000>> Receive Hello:SYNACK
 54.2828 -14/06/2006 12:49:01.403  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29681
 54.2829 -14/06/2006 12:49:01.503  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2830 -14/06/2006 12:49:01.503  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29682
 54.2831 -14/06/2006 12:49:01.503  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29683
 54.2832 -14/06/2006 12:49:01.503  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29684
 54.2833 -14/06/2006 12:49:01.523  000>> 98>>>>>>>>>>Part datagram received!
 54.2834 -14/06/2006 12:49:01.523  000>> 98>>>>>>>>>>Complete!
 54.2835 -14/06/2006 12:49:01.523  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30109
 54.2836 -14/06/2006 12:49:01.523  000>> Good datagram received!
 54.2837 -14/06/2006 12:49:01.533  000>> Listener:Received dictionary
 54.2838 -14/06/2006 12:49:01.533  000>> 90>>>>>>>>>>Part datagram received!
 54.2839 -14/06/2006 12:49:01.533  000>> 90>>>>>>>>>>Complete!
 54.2840 -14/06/2006 12:49:01.533  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30110
 54.2841 -14/06/2006 12:49:01.533  000>> Good datagram received!
 54.2842 -14/06/2006 12:49:01.533  000>> Listener:Received RIB
 54.2843 -14/06/2006 12:49:01.643  000>> 716>>>>>>>>>>Part datagram received!
 54.2844 -14/06/2006 12:49:01.643  000>> 716>>>>>>>>>>Complete!
 54.2845 -14/06/2006 12:49:01.643  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30111
 54.2846 -14/06/2006 12:49:01.643  000>> Good datagram received!
 54.2847 -14/06/2006 12:49:01.663  000>> Listener:Received Bundle Offer
 54.2848 -14/06/2006 12:49:01.663  000>> Listener:Sending Empty bundle request...
 54.2849 -14/06/2006 12:49:01.663  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2850 -14/06/2006 12:49:01.663  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29685
 54.2851 -14/06/2006 12:49:01.663  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30112
 54.2852 -14/06/2006 12:49:01.663  000>> Good datagram received!
 54.2853 -14/06/2006 12:49:01.663  000>> Initiator:No more requested bundles
 54.2854 -14/06/2006 12:49:01.663  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.2855 -14/06/2006 12:49:01.783  000>> 91>>>>>>>>>>Part datagram received!
 54.2856 -14/06/2006 12:49:01.783  000>> 91>>>>>>>>>>Complete!
 54.2857 -14/06/2006 12:49:01.783  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30113
 54.2858 -14/06/2006 12:49:01.783  000>> Good datagram received!
 54.2859 -14/06/2006 12:49:01.783  000>> Receive Hello:SYN
 54.2860 -14/06/2006 12:49:01.793  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29686
 54.2861 -14/06/2006 12:49:01.813  000>> 91>>>>>>>>>>Part datagram received!
 54.2862 -14/06/2006 12:49:01.813  000>> 91>>>>>>>>>>Complete!
 54.2863 -14/06/2006 12:49:01.813  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30114
 54.2864 -14/06/2006 12:49:01.813  000>> Good datagram received!
 54.2865 -14/06/2006 12:49:01.813  000>> Receive Hello:ACK
 54.2866 -14/06/2006 12:49:01.913  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2867 -14/06/2006 12:49:01.913  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29687
 54.2868 -14/06/2006 12:49:01.913  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29688
 54.2869 -14/06/2006 12:49:01.913  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29689
 54.2870 -14/06/2006 12:49:01.964  000>> 98>>>>>>>>>>Part datagram received!
 54.2871 -14/06/2006 12:49:01.974  000>> 98>>>>>>>>>>Complete!
 54.2872 -14/06/2006 12:49:01.974  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30115
 54.2873 -14/06/2006 12:49:01.974  000>> Good datagram received!
 54.2874 -14/06/2006 12:49:01.974  000>> Listener:Received dictionary
 54.2875 -14/06/2006 12:49:01.994  000>> 728>>>>>>>>>>Part datagram received!
 54.2876 -14/06/2006 12:49:01.994  000>> 728>>>>>>>>>>Complete!
 54.2877 -14/06/2006 12:49:01.994  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30116
 54.2878 -14/06/2006 12:49:01.994  000>> Good datagram received!
 54.2879 -14/06/2006 12:49:01.994  000>> Listener:Received RIB
 54.2880 -14/06/2006 12:49:01.994  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30117
 54.2881 -14/06/2006 12:49:01.994  000>> Good datagram received!
 54.2882 -14/06/2006 12:49:02.014  000>> Listener:Received Bundle Offer
 54.2883 -14/06/2006 12:49:02.014  000>> Listener:Sending Empty bundle request...
 54.2884 -14/06/2006 12:49:02.014  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2885 -14/06/2006 12:49:02.014  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29690
 54.2886 -14/06/2006 12:49:02.094  000>> 78>>>>>>>>>>Part datagram received!
 54.2887 -14/06/2006 12:49:02.094  000>> 78>>>>>>>>>>Complete!
 54.2888 -14/06/2006 12:49:02.094  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30118
 54.2889 -14/06/2006 12:49:02.094  000>> Good datagram received!
 54.2890 -14/06/2006 12:49:02.094  000>> Initiator:No more requested bundles
 54.2891 -14/06/2006 12:49:02.094  000>> Listener(receiveBundles):We can restart connection...
 54.2892 -14/06/2006 12:49:02.194  000>> Hello Procedure:SENDSYN
 54.2893 -14/06/2006 12:49:02.194  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29691
 54.2894 -14/06/2006 12:49:02.214  000>> 91>>>>>>>>>>Part datagram received!
 54.2895 -14/06/2006 12:49:02.214  000>> 91>>>>>>>>>>Complete!
 54.2896 -14/06/2006 12:49:02.214  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30119
 54.2897 -14/06/2006 12:49:02.214  000>> Good datagram received!
 54.2898 -14/06/2006 12:49:02.214  000>> Receive Hello:SYNACK
 54.2899 -14/06/2006 12:49:02.214  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29692
 54.2900 -14/06/2006 12:49:02.324  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2901 -14/06/2006 12:49:02.324  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29693
 54.2902 -14/06/2006 12:49:02.324  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29694
 54.2903 -14/06/2006 12:49:02.324  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29695
 54.2904 -14/06/2006 12:49:02.334  000>> 98>>>>>>>>>>Part datagram received!
 54.2905 -14/06/2006 12:49:02.334  000>> 98>>>>>>>>>>Complete!
 54.2906 -14/06/2006 12:49:02.334  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30120
 54.2907 -14/06/2006 12:49:02.344  000>> Good datagram received!
 54.2908 -14/06/2006 12:49:02.344  000>> Listener:Received dictionary
 54.2909 -14/06/2006 12:49:02.344  000>> 90>>>>>>>>>>Part datagram received!
 54.2910 -14/06/2006 12:49:02.344  000>> 90>>>>>>>>>>Complete!
 54.2911 -14/06/2006 12:49:02.344  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30121
 54.2912 -14/06/2006 12:49:02.344  000>> Good datagram received!
 54.2913 -14/06/2006 12:49:02.344  000>> Listener:Received RIB
 54.2914 -14/06/2006 12:49:02.544  000>> 716>>>>>>>>>>Part datagram received!
 54.2915 -14/06/2006 12:49:02.544  000>> 716>>>>>>>>>>Complete!
 54.2916 -14/06/2006 12:49:02.544  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30122
 54.2917 -14/06/2006 12:49:02.544  000>> Good datagram received!
 54.2918 -14/06/2006 12:49:02.554  000>> Listener:Received Bundle Offer
 54.2919 -14/06/2006 12:49:02.564  000>> Listener:Sending Empty bundle request...
 54.2920 -14/06/2006 12:49:02.564  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2921 -14/06/2006 12:49:02.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29696
 54.2922 -14/06/2006 12:49:02.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30123
 54.2923 -14/06/2006 12:49:02.564  000>> Good datagram received!
 54.2924 -14/06/2006 12:49:02.564  000>> Initiator:No more requested bundles
 54.2925 -14/06/2006 12:49:02.564  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.2926 -14/06/2006 12:49:02.685  000>> 91>>>>>>>>>>Part datagram received!
 54.2927 -14/06/2006 12:49:02.685  000>> 91>>>>>>>>>>Complete!
 54.2928 -14/06/2006 12:49:02.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30124
 54.2929 -14/06/2006 12:49:02.685  000>> Good datagram received!
 54.2930 -14/06/2006 12:49:02.685  000>> Receive Hello:SYN
 54.2931 -14/06/2006 12:49:02.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29697
 54.2932 -14/06/2006 12:49:02.705  000>> 91>>>>>>>>>>Part datagram received!
 54.2933 -14/06/2006 12:49:02.705  000>> 91>>>>>>>>>>Complete!
 54.2934 -14/06/2006 12:49:02.715  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30125
 54.2935 -14/06/2006 12:49:02.715  000>> Good datagram received!
 54.2936 -14/06/2006 12:49:02.715  000>> Receive Hello:ACK
 54.2937 -14/06/2006 12:49:02.815  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2938 -14/06/2006 12:49:02.815  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29698
 54.2939 -14/06/2006 12:49:02.815  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29699
 54.2940 -14/06/2006 12:49:02.815  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29700
 54.2941 -14/06/2006 12:49:02.815  000>> 98>>>>>>>>>>Part datagram received!
 54.2942 -14/06/2006 12:49:02.825  000>> 98>>>>>>>>>>Complete!
 54.2943 -14/06/2006 12:49:02.825  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30126
 54.2944 -14/06/2006 12:49:02.825  000>> Good datagram received!
 54.2945 -14/06/2006 12:49:02.825  000>> Listener:Received dictionary
 54.2946 -14/06/2006 12:49:02.825  000>> 90>>>>>>>>>>Part datagram received!
 54.2947 -14/06/2006 12:49:02.825  000>> 90>>>>>>>>>>Complete!
 54.2948 -14/06/2006 12:49:02.825  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30127
 54.2949 -14/06/2006 12:49:02.825  000>> Good datagram received!
 54.2950 -14/06/2006 12:49:02.825  000>> Listener:Received RIB
 54.2951 -14/06/2006 12:49:02.945  000>> 716>>>>>>>>>>Part datagram received!
 54.2952 -14/06/2006 12:49:02.945  000>> 716>>>>>>>>>>Complete!
 54.2953 -14/06/2006 12:49:02.945  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30128
 54.2954 -14/06/2006 12:49:02.945  000>> Good datagram received!
 54.2955 -14/06/2006 12:49:02.965  000>> Listener:Received Bundle Offer
 54.2956 -14/06/2006 12:49:02.965  000>> Listener:Sending Empty bundle request...
 54.2957 -14/06/2006 12:49:02.965  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2958 -14/06/2006 12:49:02.965  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29701
 54.2959 -14/06/2006 12:49:02.965  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30129
 54.2960 -14/06/2006 12:49:02.965  000>> Good datagram received!
 54.2961 -14/06/2006 12:49:02.965  000>> Initiator:No more requested bundles
 54.2962 -14/06/2006 12:49:02.965  000>> Listener(receiveBundles):We can restart connection...
 54.2963 -14/06/2006 12:49:03.065  000>> Hello Procedure:SENDSYN
 54.2964 -14/06/2006 12:49:03.065  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29702
 54.2965 -14/06/2006 12:49:03.185  000>> 91>>>>>>>>>>Part datagram received!
 54.2966 -14/06/2006 12:49:03.185  000>> 91>>>>>>>>>>Complete!
 54.2967 -14/06/2006 12:49:03.185  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30130
 54.2968 -14/06/2006 12:49:03.185  000>> Good datagram received!
 54.2969 -14/06/2006 12:49:03.185  000>> Receive Hello:SYNACK
 54.2970 -14/06/2006 12:49:03.195  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29703
 54.2971 -14/06/2006 12:49:03.295  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.2972 -14/06/2006 12:49:03.295  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29704
 54.2973 -14/06/2006 12:49:03.295  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29705
 54.2974 -14/06/2006 12:49:03.295  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29706
 54.2975 -14/06/2006 12:49:03.326  000>> 98>>>>>>>>>>Part datagram received!
 54.2976 -14/06/2006 12:49:03.326  000>> 98>>>>>>>>>>Complete!
 54.2977 -14/06/2006 12:49:03.326  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30131
 54.2978 -14/06/2006 12:49:03.326  000>> Good datagram received!
 54.2979 -14/06/2006 12:49:03.326  000>> Listener:Received dictionary
 54.2980 -14/06/2006 12:49:03.336  000>> 90>>>>>>>>>>Part datagram received!
 54.2981 -14/06/2006 12:49:03.336  000>> 90>>>>>>>>>>Complete!
 54.2982 -14/06/2006 12:49:03.336  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30132
 54.2983 -14/06/2006 12:49:03.336  000>> Good datagram received!
 54.2984 -14/06/2006 12:49:03.336  000>> Listener:Received RIB
 54.2985 -14/06/2006 12:49:03.446  000>> 716>>>>>>>>>>Part datagram received!
 54.2986 -14/06/2006 12:49:03.446  000>> 716>>>>>>>>>>Complete!
 54.2987 -14/06/2006 12:49:03.446  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30133
 54.2988 -14/06/2006 12:49:03.446  000>> Good datagram received!
 54.2989 -14/06/2006 12:49:03.466  000>> Listener:Received Bundle Offer
 54.2990 -14/06/2006 12:49:03.466  000>> Listener:Sending Empty bundle request...
 54.2991 -14/06/2006 12:49:03.466  000>> Listener(receiveBOffer):But we can not restart connection...
 54.2992 -14/06/2006 12:49:03.466  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29707
 54.2993 -14/06/2006 12:49:03.466  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30134
 54.2994 -14/06/2006 12:49:03.466  000>> Good datagram received!
 54.2995 -14/06/2006 12:49:03.466  000>> Initiator:No more requested bundles
 54.2996 -14/06/2006 12:49:03.466  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.2997 -14/06/2006 12:49:03.586  000>> 91>>>>>>>>>>Part datagram received!
 54.2998 -14/06/2006 12:49:03.586  000>> 91>>>>>>>>>>Complete!
 54.2999 -14/06/2006 12:49:03.586  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30135
 54.3000 -14/06/2006 12:49:03.586  000>> Good datagram received!
 54.3001 -14/06/2006 12:49:03.596  000>> Receive Hello:SYN
 54.3002 -14/06/2006 12:49:03.596  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29708
 54.3003 -14/06/2006 12:49:03.616  000>> 91>>>>>>>>>>Part datagram received!
 54.3004 -14/06/2006 12:49:03.616  000>> 91>>>>>>>>>>Complete!
 54.3005 -14/06/2006 12:49:03.616  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30136
 54.3006 -14/06/2006 12:49:03.616  000>> Good datagram received!
 54.3007 -14/06/2006 12:49:03.616  000>> Receive Hello:ACK
 54.3008 -14/06/2006 12:49:03.716  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3009 -14/06/2006 12:49:03.716  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29709
 54.3010 -14/06/2006 12:49:03.716  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29710
 54.3011 -14/06/2006 12:49:03.716  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29711
 54.3012 -14/06/2006 12:49:03.726  000>> 98>>>>>>>>>>Part datagram received!
 54.3013 -14/06/2006 12:49:03.726  000>> 98>>>>>>>>>>Complete!
 54.3014 -14/06/2006 12:49:03.726  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30137
 54.3015 -14/06/2006 12:49:03.726  000>> Good datagram received!
 54.3016 -14/06/2006 12:49:03.726  000>> Listener:Received dictionary
 54.3017 -14/06/2006 12:49:03.726  000>> 90>>>>>>>>>>Part datagram received!
 54.3018 -14/06/2006 12:49:03.726  000>> 90>>>>>>>>>>Complete!
 54.3019 -14/06/2006 12:49:03.726  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30138
 54.3020 -14/06/2006 12:49:03.726  000>> Good datagram received!
 54.3021 -14/06/2006 12:49:03.726  000>> Listener:Received RIB
 54.3022 -14/06/2006 12:49:03.846  000>> 716>>>>>>>>>>Part datagram received!
 54.3023 -14/06/2006 12:49:03.846  000>> 716>>>>>>>>>>Complete!
 54.3024 -14/06/2006 12:49:03.846  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30139
 54.3025 -14/06/2006 12:49:03.846  000>> Good datagram received!
 54.3026 -14/06/2006 12:49:03.866  000>> Listener:Received Bundle Offer
 54.3027 -14/06/2006 12:49:03.866  000>> Listener:Sending Empty bundle request...
 54.3028 -14/06/2006 12:49:03.866  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3029 -14/06/2006 12:49:03.866  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29712
 54.3030 -14/06/2006 12:49:03.866  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30140
 54.3031 -14/06/2006 12:49:03.866  000>> Good datagram received!
 54.3032 -14/06/2006 12:49:03.866  000>> Initiator:No more requested bundles
 54.3033 -14/06/2006 12:49:03.866  000>> Listener(receiveBundles):We can restart connection...
 54.3034 -14/06/2006 12:49:03.966  000>> Hello Procedure:SENDSYN
 54.3035 -14/06/2006 12:49:03.966  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29713
 54.3036 -14/06/2006 12:49:04.077  000>> 91>>>>>>>>>>Part datagram received!
 54.3037 -14/06/2006 12:49:04.077  000>> 91>>>>>>>>>>Complete!
 54.3038 -14/06/2006 12:49:04.077  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30141
 54.3039 -14/06/2006 12:49:04.077  000>> Good datagram received!
 54.3040 -14/06/2006 12:49:04.077  000>> Receive Hello:SYNACK
 54.3041 -14/06/2006 12:49:04.077  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29714
 54.3042 -14/06/2006 12:49:04.177  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3043 -14/06/2006 12:49:04.177  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29715
 54.3044 -14/06/2006 12:49:04.177  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29716
 54.3045 -14/06/2006 12:49:04.177  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29717
 54.3046 -14/06/2006 12:49:04.207  000>> 98>>>>>>>>>>Part datagram received!
 54.3047 -14/06/2006 12:49:04.207  000>> 98>>>>>>>>>>Complete!
 54.3048 -14/06/2006 12:49:04.207  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30142
 54.3049 -14/06/2006 12:49:04.217  000>> Good datagram received!
 54.3050 -14/06/2006 12:49:04.217  000>> Listener:Received dictionary
 54.3051 -14/06/2006 12:49:04.237  000>> 90>>>>>>>>>>Part datagram received!
 54.3052 -14/06/2006 12:49:04.237  000>> 90>>>>>>>>>>Complete!
 54.3053 -14/06/2006 12:49:04.237  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30143
 54.3054 -14/06/2006 12:49:04.237  000>> Good datagram received!
 54.3055 -14/06/2006 12:49:04.237  000>> Listener:Received RIB
 54.3056 -14/06/2006 12:49:04.347  000>> 716>>>>>>>>>>Part datagram received!
 54.3057 -14/06/2006 12:49:04.347  000>> 716>>>>>>>>>>Complete!
 54.3058 -14/06/2006 12:49:04.347  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30144
 54.3059 -14/06/2006 12:49:04.347  000>> Good datagram received!
 54.3060 -14/06/2006 12:49:04.367  000>> Listener:Received Bundle Offer
 54.3061 -14/06/2006 12:49:04.367  000>> Listener:Sending Empty bundle request...
 54.3062 -14/06/2006 12:49:04.367  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3063 -14/06/2006 12:49:04.367  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29718
 54.3064 -14/06/2006 12:49:04.367  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30145
 54.3065 -14/06/2006 12:49:04.367  000>> Good datagram received!
 54.3066 -14/06/2006 12:49:04.367  000>> Initiator:No more requested bundles
 54.3067 -14/06/2006 12:49:04.367  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.3068 -14/06/2006 12:49:04.487  000>> 91>>>>>>>>>>Part datagram received!
 54.3069 -14/06/2006 12:49:04.487  000>> 91>>>>>>>>>>Complete!
 54.3070 -14/06/2006 12:49:04.487  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30146
 54.3071 -14/06/2006 12:49:04.487  000>> Good datagram received!
 54.3072 -14/06/2006 12:49:04.487  000>> Receive Hello:SYN
 54.3073 -14/06/2006 12:49:04.497  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29719
 54.3074 -14/06/2006 12:49:04.527  000>> 91>>>>>>>>>>Part datagram received!
 54.3075 -14/06/2006 12:49:04.527  000>> 91>>>>>>>>>>Complete!
 54.3076 -14/06/2006 12:49:04.527  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30147
 54.3077 -14/06/2006 12:49:04.527  000>> Good datagram received!
 54.3078 -14/06/2006 12:49:04.527  000>> Receive Hello:ACK
 54.3079 -14/06/2006 12:49:04.627  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3080 -14/06/2006 12:49:04.627  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29720
 54.3081 -14/06/2006 12:49:04.627  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29721
 54.3082 -14/06/2006 12:49:04.627  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29722
 54.3083 -14/06/2006 12:49:04.627  000>> 98>>>>>>>>>>Part datagram received!
 54.3084 -14/06/2006 12:49:04.627  000>> 98>>>>>>>>>>Complete!
 54.3085 -14/06/2006 12:49:04.627  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30148
 54.3086 -14/06/2006 12:49:04.637  000>> Good datagram received!
 54.3087 -14/06/2006 12:49:04.637  000>> Listener:Received dictionary
 54.3088 -14/06/2006 12:49:04.637  000>> 90>>>>>>>>>>Part datagram received!
 54.3089 -14/06/2006 12:49:04.637  000>> 90>>>>>>>>>>Complete!
 54.3090 -14/06/2006 12:49:04.637  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30149
 54.3091 -14/06/2006 12:49:04.637  000>> Good datagram received!
 54.3092 -14/06/2006 12:49:04.637  000>> Listener:Received RIB
 54.3093 -14/06/2006 12:49:04.748  000>> 716>>>>>>>>>>Part datagram received!
 54.3094 -14/06/2006 12:49:04.748  000>> 716>>>>>>>>>>Complete!
 54.3095 -14/06/2006 12:49:04.748  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30150
 54.3096 -14/06/2006 12:49:04.748  000>> Good datagram received!
 54.3097 -14/06/2006 12:49:04.768  000>> Listener:Received Bundle Offer
 54.3098 -14/06/2006 12:49:04.768  000>> Listener:Sending Empty bundle request...
 54.3099 -14/06/2006 12:49:04.768  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3100 -14/06/2006 12:49:04.768  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29723
 54.3101 -14/06/2006 12:49:04.768  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30151
 54.3102 -14/06/2006 12:49:04.768  000>> Good datagram received!
 54.3103 -14/06/2006 12:49:04.768  000>> Initiator:No more requested bundles
 54.3104 -14/06/2006 12:49:04.768  000>> Listener(receiveBundles):We can restart connection...
 54.3105 -14/06/2006 12:49:04.868  000>> Hello Procedure:SENDSYN
 54.3106 -14/06/2006 12:49:04.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29724
 54.3107 -14/06/2006 12:49:04.968  000>> 91>>>>>>>>>>Part datagram received!
 54.3108 -14/06/2006 12:49:04.968  000>> 91>>>>>>>>>>Complete!
 54.3109 -14/06/2006 12:49:04.968  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30152
 54.3110 -14/06/2006 12:49:04.978  000>> Good datagram received!
 54.3111 -14/06/2006 12:49:04.978  000>> Receive Hello:SYNACK
 54.3112 -14/06/2006 12:49:04.978  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29725
 54.3113 -14/06/2006 12:49:05.078  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3114 -14/06/2006 12:49:05.078  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29726
 54.3115 -14/06/2006 12:49:05.078  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29727
 54.3116 -14/06/2006 12:49:05.088  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29728
 54.3117 -14/06/2006 12:49:05.088  000>> 98>>>>>>>>>>Part datagram received!
 54.3118 -14/06/2006 12:49:05.088  000>> 98>>>>>>>>>>Complete!
 54.3119 -14/06/2006 12:49:05.098  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30153
 54.3120 -14/06/2006 12:49:05.098  000>> Good datagram received!
 54.3121 -14/06/2006 12:49:05.098  000>> Listener:Received dictionary
 54.3122 -14/06/2006 12:49:05.098  000>> 90>>>>>>>>>>Part datagram received!
 54.3123 -14/06/2006 12:49:05.098  000>> 90>>>>>>>>>>Complete!
 54.3124 -14/06/2006 12:49:05.098  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30154
 54.3125 -14/06/2006 12:49:05.098  000>> Good datagram received!
 54.3126 -14/06/2006 12:49:05.098  000>> Listener:Received RIB
 54.3127 -14/06/2006 12:49:05.248  000>> 716>>>>>>>>>>Part datagram received!
 54.3128 -14/06/2006 12:49:05.248  000>> 716>>>>>>>>>>Complete!
 54.3129 -14/06/2006 12:49:05.258  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30155
 54.3130 -14/06/2006 12:49:05.258  000>> Good datagram received!
 54.3131 -14/06/2006 12:49:05.268  000>> Listener:Received Bundle Offer
 54.3132 -14/06/2006 12:49:05.268  000>> Listener:Sending Empty bundle request...
 54.3133 -14/06/2006 12:49:05.268  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3134 -14/06/2006 12:49:05.268  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29729
 54.3135 -14/06/2006 12:49:05.268  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30156
 54.3136 -14/06/2006 12:49:05.268  000>> Good datagram received!
 54.3137 -14/06/2006 12:49:05.268  000>> Initiator:No more requested bundles
 54.3138 -14/06/2006 12:49:05.278  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.3139 -14/06/2006 12:49:05.388  000>> 91>>>>>>>>>>Part datagram received!
 54.3140 -14/06/2006 12:49:05.399  000>> 91>>>>>>>>>>Complete!
 54.3141 -14/06/2006 12:49:05.399  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30157
 54.3142 -14/06/2006 12:49:05.399  000>> Good datagram received!
 54.3143 -14/06/2006 12:49:05.399  000>> Receive Hello:SYN
 54.3144 -14/06/2006 12:49:05.399  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29730
 54.3145 -14/06/2006 12:49:05.429  000>> 91>>>>>>>>>>Part datagram received!
 54.3146 -14/06/2006 12:49:05.429  000>> 91>>>>>>>>>>Complete!
 54.3147 -14/06/2006 12:49:05.429  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30158
 54.3148 -14/06/2006 12:49:05.429  000>> Good datagram received!
 54.3149 -14/06/2006 12:49:05.429  000>> Receive Hello:ACK
 54.3150 -14/06/2006 12:49:05.539  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3151 -14/06/2006 12:49:05.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29731
 54.3152 -14/06/2006 12:49:05.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29732
 54.3153 -14/06/2006 12:49:05.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29733
 54.3154 -14/06/2006 12:49:05.539  000>> 188>>>>>>>>>>Part datagram received!
 54.3155 -14/06/2006 12:49:05.539  000>> 188>>>>>>>>>>Complete!
 54.3156 -14/06/2006 12:49:05.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30159
 54.3157 -14/06/2006 12:49:05.539  000>> Good datagram received!
 54.3158 -14/06/2006 12:49:05.539  000>> Listener:Received dictionary
 54.3159 -14/06/2006 12:49:05.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30160
 54.3160 -14/06/2006 12:49:05.539  000>> Good datagram received!
 54.3161 -14/06/2006 12:49:05.549  000>> Listener:Received RIB
 54.3162 -14/06/2006 12:49:05.549  000>> 638>>>>>>>>>>Part datagram received!
 54.3163 -14/06/2006 12:49:05.549  000>> 638>>>>>>>>>>Complete!
 54.3164 -14/06/2006 12:49:05.549  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30161
 54.3165 -14/06/2006 12:49:05.549  000>> Good datagram received!
 54.3166 -14/06/2006 12:49:05.559  000>> Listener:Received Bundle Offer
 54.3167 -14/06/2006 12:49:05.559  000>> Listener:Sending Empty bundle request...
 54.3168 -14/06/2006 12:49:05.569  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3169 -14/06/2006 12:49:05.569  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29734
 54.3170 -14/06/2006 12:49:05.569  000>> 0>>>>>>>>>>Part datagram received!
 54.3171 -14/06/2006 12:49:05.569  000>> 0>>>>>>>>>>Part datagram received!
 54.3172 -14/06/2006 12:49:05.649  000>> 78>>>>>>>>>>Part datagram received!
 54.3173 -14/06/2006 12:49:05.649  000>> 78>>>>>>>>>>Complete!
 54.3174 -14/06/2006 12:49:05.649  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30162
 54.3175 -14/06/2006 12:49:05.649  000>> Good datagram received!
 54.3176 -14/06/2006 12:49:05.649  000>> Initiator:No more requested bundles
 54.3177 -14/06/2006 12:49:05.649  000>> Listener(receiveBundles):We can restart connection...
 54.3178 -14/06/2006 12:49:05.749  000>> Hello Procedure:SENDSYN
 54.3179 -14/06/2006 12:49:05.749  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29735
 54.3180 -14/06/2006 12:49:05.799  000>> 91>>>>>>>>>>Part datagram received!
 54.3181 -14/06/2006 12:49:05.799  000>> 91>>>>>>>>>>Complete!
 54.3182 -14/06/2006 12:49:05.799  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30163
 54.3183 -14/06/2006 12:49:05.799  000>> Good datagram received!
 54.3184 -14/06/2006 12:49:05.799  000>> Receive Hello:SYNACK
 54.3185 -14/06/2006 12:49:05.799  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29736
 54.3186 -14/06/2006 12:49:05.899  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3187 -14/06/2006 12:49:05.899  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29737
 54.3188 -14/06/2006 12:49:05.899  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29738
 54.3189 -14/06/2006 12:49:05.899  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29739
 54.3190 -14/06/2006 12:49:05.959  000>> 98>>>>>>>>>>Part datagram received!
 54.3191 -14/06/2006 12:49:05.959  000>> 98>>>>>>>>>>Complete!
 54.3192 -14/06/2006 12:49:05.959  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30164
 54.3193 -14/06/2006 12:49:05.959  000>> Good datagram received!
 54.3194 -14/06/2006 12:49:05.959  000>> Listener:Received dictionary
 54.3195 -14/06/2006 12:49:06.160  000>> 806>>>>>>>>>>Part datagram received!
 54.3196 -14/06/2006 12:49:06.160  000>> 806>>>>>>>>>>Complete!
 54.3197 -14/06/2006 12:49:06.160  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30165
 54.3198 -14/06/2006 12:49:06.160  000>> Good datagram received!
 54.3199 -14/06/2006 12:49:06.160  000>> Listener:Received RIB
 54.3200 -14/06/2006 12:49:06.160  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30166
 54.3201 -14/06/2006 12:49:06.160  000>> Good datagram received!
 54.3202 -14/06/2006 12:49:06.170  000>> Listener:Received Bundle Offer
 54.3203 -14/06/2006 12:49:06.180  000>> Listener:Sending Empty bundle request...
 54.3204 -14/06/2006 12:49:06.180  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3205 -14/06/2006 12:49:06.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29740
 54.3206 -14/06/2006 12:49:06.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30167
 54.3207 -14/06/2006 12:49:06.180  000>> Good datagram received!
 54.3208 -14/06/2006 12:49:06.180  000>> Initiator:No more requested bundles
 54.3209 -14/06/2006 12:49:06.180  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.3210 -14/06/2006 12:49:06.310  000>> 91>>>>>>>>>>Part datagram received!
 54.3211 -14/06/2006 12:49:06.320  000>> 91>>>>>>>>>>Complete!
 54.3212 -14/06/2006 12:49:06.320  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30168
 54.3213 -14/06/2006 12:49:06.320  000>> Good datagram received!
 54.3214 -14/06/2006 12:49:06.320  000>> Receive Hello:SYN
 54.3215 -14/06/2006 12:49:06.320  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29741
 54.3216 -14/06/2006 12:49:06.340  000>> 91>>>>>>>>>>Part datagram received!
 54.3217 -14/06/2006 12:49:06.340  000>> 91>>>>>>>>>>Complete!
 54.3218 -14/06/2006 12:49:06.340  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30169
 54.3219 -14/06/2006 12:49:06.340  000>> Good datagram received!
 54.3220 -14/06/2006 12:49:06.340  000>> Receive Hello:ACK
 54.3221 -14/06/2006 12:49:06.440  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3222 -14/06/2006 12:49:06.440  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29742
 54.3223 -14/06/2006 12:49:06.440  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29743
 54.3224 -14/06/2006 12:49:06.450  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29744
 54.3225 -14/06/2006 12:49:06.450  000>> 98>>>>>>>>>>Part datagram received!
 54.3226 -14/06/2006 12:49:06.450  000>> 98>>>>>>>>>>Complete!
 54.3227 -14/06/2006 12:49:06.450  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30170
 54.3228 -14/06/2006 12:49:06.450  000>> Good datagram received!
 54.3229 -14/06/2006 12:49:06.460  000>> Listener:Received dictionary
 54.3230 -14/06/2006 12:49:06.460  000>> 90>>>>>>>>>>Part datagram received!
 54.3231 -14/06/2006 12:49:06.460  000>> 90>>>>>>>>>>Complete!
 54.3232 -14/06/2006 12:49:06.460  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30171
 54.3233 -14/06/2006 12:49:06.460  000>> Good datagram received!
 54.3234 -14/06/2006 12:49:06.460  000>> Listener:Received RIB
 54.3235 -14/06/2006 12:49:06.660  000>> 716>>>>>>>>>>Part datagram received!
 54.3236 -14/06/2006 12:49:06.660  000>> 716>>>>>>>>>>Complete!
 54.3237 -14/06/2006 12:49:06.660  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30172
 54.3238 -14/06/2006 12:49:06.660  000>> Good datagram received!
 54.3239 -14/06/2006 12:49:06.670  000>> Listener:Received Bundle Offer
 54.3240 -14/06/2006 12:49:06.670  000>> Listener:Sending Empty bundle request...
 54.3241 -14/06/2006 12:49:06.680  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3242 -14/06/2006 12:49:06.680  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29745
 54.3243 -14/06/2006 12:49:06.680  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30173
 54.3244 -14/06/2006 12:49:06.680  000>> Good datagram received!
 54.3245 -14/06/2006 12:49:06.680  000>> Initiator:No more requested bundles
 54.3246 -14/06/2006 12:49:06.680  000>> Listener(receiveBundles):We can restart connection...
 54.3247 -14/06/2006 12:49:06.780  000>> Hello Procedure:SENDSYN
 54.3248 -14/06/2006 12:49:06.780  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29746
 54.3249 -14/06/2006 12:49:06.881  000>> 91>>>>>>>>>>Part datagram received!
 54.3250 -14/06/2006 12:49:06.881  000>> 91>>>>>>>>>>Complete!
 54.3251 -14/06/2006 12:49:06.881  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30174
 54.3252 -14/06/2006 12:49:06.881  000>> Good datagram received!
 54.3253 -14/06/2006 12:49:06.881  000>> Receive Hello:SYNACK
 54.3254 -14/06/2006 12:49:06.881  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29747
 54.3255 -14/06/2006 12:49:06.991  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3256 -14/06/2006 12:49:06.991  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29748
 54.3257 -14/06/2006 12:49:06.991  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29749
 54.3258 -14/06/2006 12:49:06.991  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29750
 54.3259 -14/06/2006 12:49:07.121  000>> 78>>>>>>>>>>Part datagram received!
 54.3260 -14/06/2006 12:49:07.131  000>> 78>>>>>>>>>>Complete!
 54.3261 -14/06/2006 12:49:07.131  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30175
 54.3262 -14/06/2006 12:49:07.131  000>> Good datagram received!
 54.3263 -14/06/2006 12:49:07.131  000>> Initiator:No more requested bundles
 54.3264 -14/06/2006 12:49:07.131  000>> Initiator:But we can not restart connection...
 54.3265 -14/06/2006 12:49:07.261  000>> 826>>>>>>>>>>Part datagram received!
 54.3266 -14/06/2006 12:49:07.261  000>> 826>>>>>>>>>>Complete!
 54.3267 -14/06/2006 12:49:07.261  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30176
 54.3268 -14/06/2006 12:49:07.261  000>> Good datagram received!
 54.3269 -14/06/2006 12:49:07.261  000>> Listener:Received dictionary
 54.3270 -14/06/2006 12:49:07.261  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30177
 54.3271 -14/06/2006 12:49:07.261  000>> Good datagram received!
 54.3272 -14/06/2006 12:49:07.261  000>> Listener:Received RIB
 54.3273 -14/06/2006 12:49:07.261  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30178
 54.3274 -14/06/2006 12:49:07.261  000>> Good datagram received!
 54.3275 -14/06/2006 12:49:07.281  000>> Listener:Received Bundle Offer
 54.3276 -14/06/2006 12:49:07.281  000>> Listener:Sending Empty bundle request...
 54.3277 -14/06/2006 12:49:07.281  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.3278 -14/06/2006 12:49:07.281  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29751
 54.3279 -14/06/2006 12:49:07.421  000>> 91>>>>>>>>>>Part datagram received!
 54.3280 -14/06/2006 12:49:07.421  000>> 91>>>>>>>>>>Complete!
 54.3281 -14/06/2006 12:49:07.421  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30179
 54.3282 -14/06/2006 12:49:07.421  000>> Good datagram received!
 54.3283 -14/06/2006 12:49:07.421  000>> Receive Hello:SYN
 54.3284 -14/06/2006 12:49:07.421  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29752
 54.3285 -14/06/2006 12:49:07.441  000>> 91>>>>>>>>>>Part datagram received!
 54.3286 -14/06/2006 12:49:07.451  000>> 91>>>>>>>>>>Complete!
 54.3287 -14/06/2006 12:49:07.451  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30180
 54.3288 -14/06/2006 12:49:07.451  000>> Good datagram received!
 54.3289 -14/06/2006 12:49:07.451  000>> Receive Hello:ACK
 54.3290 -14/06/2006 12:49:07.552  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3291 -14/06/2006 12:49:07.552  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29753
 54.3292 -14/06/2006 12:49:07.552  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29754
 54.3293 -14/06/2006 12:49:07.552  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29755
 54.3294 -14/06/2006 12:49:07.552  000>> 98>>>>>>>>>>Part datagram received!
 54.3295 -14/06/2006 12:49:07.552  000>> 98>>>>>>>>>>Complete!
 54.3296 -14/06/2006 12:49:07.562  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30181
 54.3297 -14/06/2006 12:49:07.562  000>> Good datagram received!
 54.3298 -14/06/2006 12:49:07.562  000>> Listener:Received dictionary
 54.3299 -14/06/2006 12:49:07.562  000>> 90>>>>>>>>>>Part datagram received!
 54.3300 -14/06/2006 12:49:07.562  000>> 90>>>>>>>>>>Complete!
 54.3301 -14/06/2006 12:49:07.562  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30182
 54.3302 -14/06/2006 12:49:07.562  000>> Good datagram received!
 54.3303 -14/06/2006 12:49:07.562  000>> Listener:Received RIB
 54.3304 -14/06/2006 12:49:07.762  000>> 716>>>>>>>>>>Part datagram received!
 54.3305 -14/06/2006 12:49:07.762  000>> 716>>>>>>>>>>Complete!
 54.3306 -14/06/2006 12:49:07.762  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30183
 54.3307 -14/06/2006 12:49:07.762  000>> Good datagram received!
 54.3308 -14/06/2006 12:49:07.772  000>> Listener:Received Bundle Offer
 54.3309 -14/06/2006 12:49:07.772  000>> Listener:Sending Empty bundle request...
 54.3310 -14/06/2006 12:49:07.772  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3311 -14/06/2006 12:49:07.782  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29756
 54.3312 -14/06/2006 12:49:07.782  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30184
 54.3313 -14/06/2006 12:49:07.782  000>> Good datagram received!
 54.3314 -14/06/2006 12:49:07.782  000>> Initiator:No more requested bundles
 54.3315 -14/06/2006 12:49:07.782  000>> Listener(receiveBundles):We can restart connection...
 54.3316 -14/06/2006 12:49:07.882  000>> Hello Procedure:SENDSYN
 54.3317 -14/06/2006 12:49:07.882  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29757
 54.3318 -14/06/2006 12:49:07.972  000>> 91>>>>>>>>>>Part datagram received!
 54.3319 -14/06/2006 12:49:07.972  000>> 91>>>>>>>>>>Complete!
 54.3320 -14/06/2006 12:49:07.972  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30185
 54.3321 -14/06/2006 12:49:07.972  000>> Good datagram received!
 54.3322 -14/06/2006 12:49:07.982  000>> Receive Hello:SYNACK
 54.3323 -14/06/2006 12:49:07.982  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29758
 54.3324 -14/06/2006 12:49:08.082  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3325 -14/06/2006 12:49:08.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29759
 54.3326 -14/06/2006 12:49:08.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29760
 54.3327 -14/06/2006 12:49:08.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29761
 54.3328 -14/06/2006 12:49:08.112  000>> 98>>>>>>>>>>Part datagram received!
 54.3329 -14/06/2006 12:49:08.112  000>> 98>>>>>>>>>>Complete!
 54.3330 -14/06/2006 12:49:08.122  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30186
 54.3331 -14/06/2006 12:49:08.122  000>> Good datagram received!
 54.3332 -14/06/2006 12:49:08.122  000>> Listener:Received dictionary
 54.3333 -14/06/2006 12:49:08.142  000>> 90>>>>>>>>>>Part datagram received!
 54.3334 -14/06/2006 12:49:08.142  000>> 90>>>>>>>>>>Complete!
 54.3335 -14/06/2006 12:49:08.142  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30187
 54.3336 -14/06/2006 12:49:08.142  000>> Good datagram received!
 54.3337 -14/06/2006 12:49:08.142  000>> Listener:Received RIB
 54.3338 -14/06/2006 12:49:08.263  000>> 716>>>>>>>>>>Part datagram received!
 54.3339 -14/06/2006 12:49:08.263  000>> 716>>>>>>>>>>Complete!
 54.3340 -14/06/2006 12:49:08.263  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30188
 54.3341 -14/06/2006 12:49:08.263  000>> Good datagram received!
 54.3342 -14/06/2006 12:49:08.283  000>> Listener:Received Bundle Offer
 54.3343 -14/06/2006 12:49:08.283  000>> Listener:Sending Empty bundle request...
 54.3344 -14/06/2006 12:49:08.283  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3345 -14/06/2006 12:49:08.283  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29762
 54.3346 -14/06/2006 12:49:08.283  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30189
 54.3347 -14/06/2006 12:49:08.283  000>> Good datagram received!
 54.3348 -14/06/2006 12:49:08.283  000>> Initiator:No more requested bundles
 54.3349 -14/06/2006 12:49:08.283  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.3350 -14/06/2006 12:49:08.393  000>> 91>>>>>>>>>>Part datagram received!
 54.3351 -14/06/2006 12:49:08.393  000>> 91>>>>>>>>>>Complete!
 54.3352 -14/06/2006 12:49:08.403  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30190
 54.3353 -14/06/2006 12:49:08.403  000>> Good datagram received!
 54.3354 -14/06/2006 12:49:08.403  000>> Receive Hello:SYN
 54.3355 -14/06/2006 12:49:08.403  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29763
 54.3356 -14/06/2006 12:49:08.433  000>> 91>>>>>>>>>>Part datagram received!
 54.3357 -14/06/2006 12:49:08.433  000>> 91>>>>>>>>>>Complete!
 54.3358 -14/06/2006 12:49:08.433  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30191
 54.3359 -14/06/2006 12:49:08.433  000>> Good datagram received!
 54.3360 -14/06/2006 12:49:08.433  000>> Receive Hello:ACK
 54.3361 -14/06/2006 12:49:08.533  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3362 -14/06/2006 12:49:08.533  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29764
 54.3363 -14/06/2006 12:49:08.533  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29765
 54.3364 -14/06/2006 12:49:08.533  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29766
 54.3365 -14/06/2006 12:49:08.533  000>> 98>>>>>>>>>>Part datagram received!
 54.3366 -14/06/2006 12:49:08.533  000>> 98>>>>>>>>>>Complete!
 54.3367 -14/06/2006 12:49:08.533  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30192
 54.3368 -14/06/2006 12:49:08.533  000>> Good datagram received!
 54.3369 -14/06/2006 12:49:08.543  000>> Listener:Received dictionary
 54.3370 -14/06/2006 12:49:08.543  000>> 90>>>>>>>>>>Part datagram received!
 54.3371 -14/06/2006 12:49:08.543  000>> 90>>>>>>>>>>Complete!
 54.3372 -14/06/2006 12:49:08.543  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30193
 54.3373 -14/06/2006 12:49:08.543  000>> Good datagram received!
 54.3374 -14/06/2006 12:49:08.543  000>> Listener:Received RIB
 54.3375 -14/06/2006 12:49:08.663  000>> 716>>>>>>>>>>Part datagram received!
 54.3376 -14/06/2006 12:49:08.663  000>> 716>>>>>>>>>>Complete!
 54.3377 -14/06/2006 12:49:08.663  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30194
 54.3378 -14/06/2006 12:49:08.663  000>> Good datagram received!
 54.3379 -14/06/2006 12:49:08.683  000>> Listener:Received Bundle Offer
 54.3380 -14/06/2006 12:49:08.683  000>> Listener:Sending Empty bundle request...
 54.3381 -14/06/2006 12:49:08.683  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3382 -14/06/2006 12:49:08.683  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29767
 54.3383 -14/06/2006 12:49:08.683  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30195
 54.3384 -14/06/2006 12:49:08.683  000>> Good datagram received!
 54.3385 -14/06/2006 12:49:08.683  000>> Initiator:No more requested bundles
 54.3386 -14/06/2006 12:49:08.683  000>> Listener(receiveBundles):We can restart connection...
 54.3387 -14/06/2006 12:49:08.783  000>> Hello Procedure:SENDSYN
 54.3388 -14/06/2006 12:49:08.783  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29768
 54.3389 -14/06/2006 12:49:08.884  000>> 91>>>>>>>>>>Part datagram received!
 54.3390 -14/06/2006 12:49:08.884  000>> 91>>>>>>>>>>Complete!
 54.3391 -14/06/2006 12:49:08.884  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30196
 54.3392 -14/06/2006 12:49:08.884  000>> Good datagram received!
 54.3393 -14/06/2006 12:49:08.884  000>> Receive Hello:SYNACK
 54.3394 -14/06/2006 12:49:08.884  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29769
 54.3395 -14/06/2006 12:49:08.984  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3396 -14/06/2006 12:49:08.984  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29770
 54.3397 -14/06/2006 12:49:08.984  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29771
 54.3398 -14/06/2006 12:49:08.984  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29772
 54.3399 -14/06/2006 12:49:09.114  000>> 78>>>>>>>>>>Part datagram received!
 54.3400 -14/06/2006 12:49:09.124  000>> 78>>>>>>>>>>Complete!
 54.3401 -14/06/2006 12:49:09.124  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30197
 54.3402 -14/06/2006 12:49:09.124  000>> Good datagram received!
 54.3403 -14/06/2006 12:49:09.124  000>> Initiator:No more requested bundles
 54.3404 -14/06/2006 12:49:09.124  000>> Initiator:But we can not restart connection...
 54.3405 -14/06/2006 12:49:09.264  000>> 826>>>>>>>>>>Part datagram received!
 54.3406 -14/06/2006 12:49:09.264  000>> 826>>>>>>>>>>Complete!
 54.3407 -14/06/2006 12:49:09.264  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30198
 54.3408 -14/06/2006 12:49:09.264  000>> Good datagram received!
 54.3409 -14/06/2006 12:49:09.264  000>> Listener:Received dictionary
 54.3410 -14/06/2006 12:49:09.274  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30199
 54.3411 -14/06/2006 12:49:09.274  000>> Good datagram received!
 54.3412 -14/06/2006 12:49:09.274  000>> Listener:Received RIB
 54.3413 -14/06/2006 12:49:09.274  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30200
 54.3414 -14/06/2006 12:49:09.274  000>> Good datagram received!
 54.3415 -14/06/2006 12:49:09.284  000>> Listener:Received Bundle Offer
 54.3416 -14/06/2006 12:49:09.284  000>> Listener:Sending Empty bundle request...
 54.3417 -14/06/2006 12:49:09.284  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.3418 -14/06/2006 12:49:09.294  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29773
 54.3419 -14/06/2006 12:49:09.424  000>> 91>>>>>>>>>>Part datagram received!
 54.3420 -14/06/2006 12:49:09.424  000>> 91>>>>>>>>>>Complete!
 54.3421 -14/06/2006 12:49:09.424  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30201
 54.3422 -14/06/2006 12:49:09.434  000>> Good datagram received!
 54.3423 -14/06/2006 12:49:09.434  000>> Receive Hello:SYN
 54.3424 -14/06/2006 12:49:09.434  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29774
 54.3425 -14/06/2006 12:49:09.464  000>> 91>>>>>>>>>>Part datagram received!
 54.3426 -14/06/2006 12:49:09.464  000>> 91>>>>>>>>>>Complete!
 54.3427 -14/06/2006 12:49:09.464  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30202
 54.3428 -14/06/2006 12:49:09.464  000>> Good datagram received!
 54.3429 -14/06/2006 12:49:09.464  000>> Receive Hello:ACK
 54.3430 -14/06/2006 12:49:09.564  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3431 -14/06/2006 12:49:09.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29775
 54.3432 -14/06/2006 12:49:09.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29776
 54.3433 -14/06/2006 12:49:09.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29777
 54.3434 -14/06/2006 12:49:09.575  000>> 98>>>>>>>>>>Part datagram received!
 54.3435 -14/06/2006 12:49:09.575  000>> 98>>>>>>>>>>Complete!
 54.3436 -14/06/2006 12:49:09.575  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30203
 54.3437 -14/06/2006 12:49:09.575  000>> Good datagram received!
 54.3438 -14/06/2006 12:49:09.575  000>> Listener:Received dictionary
 54.3439 -14/06/2006 12:49:09.575  000>> 90>>>>>>>>>>Part datagram received!
 54.3440 -14/06/2006 12:49:09.575  000>> 90>>>>>>>>>>Complete!
 54.3441 -14/06/2006 12:49:09.575  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30204
 54.3442 -14/06/2006 12:49:09.575  000>> Good datagram received!
 54.3443 -14/06/2006 12:49:09.575  000>> Listener:Received RIB
 54.3444 -14/06/2006 12:49:09.765  000>> 716>>>>>>>>>>Part datagram received!
 54.3445 -14/06/2006 12:49:09.765  000>> 716>>>>>>>>>>Complete!
 54.3446 -14/06/2006 12:49:09.765  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30205
 54.3447 -14/06/2006 12:49:09.765  000>> Good datagram received!
 54.3448 -14/06/2006 12:49:09.785  000>> Listener:Received Bundle Offer
 54.3449 -14/06/2006 12:49:09.785  000>> Listener:Sending Empty bundle request...
 54.3450 -14/06/2006 12:49:09.785  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3451 -14/06/2006 12:49:09.785  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29778
 54.3452 -14/06/2006 12:49:09.785  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30206
 54.3453 -14/06/2006 12:49:09.785  000>> Good datagram received!
 54.3454 -14/06/2006 12:49:09.795  000>> Initiator:No more requested bundles
 54.3455 -14/06/2006 12:49:09.795  000>> Listener(receiveBundles):We can restart connection...
 54.3456 -14/06/2006 12:49:09.895  000>> Hello Procedure:SENDSYN
 54.3457 -14/06/2006 12:49:09.895  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29779
 54.3458 -14/06/2006 12:49:10.015  000>> 91>>>>>>>>>>Part datagram received!
 54.3459 -14/06/2006 12:49:10.015  000>> 91>>>>>>>>>>Complete!
 54.3460 -14/06/2006 12:49:10.015  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30207
 54.3461 -14/06/2006 12:49:10.015  000>> Good datagram received!
 54.3462 -14/06/2006 12:49:10.015  000>> Receive Hello:SYNACK
 54.3463 -14/06/2006 12:49:10.015  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29780
 54.3464 -14/06/2006 12:49:10.115  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3465 -14/06/2006 12:49:10.115  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29781
 54.3466 -14/06/2006 12:49:10.115  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29782
 54.3467 -14/06/2006 12:49:10.115  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29783
 54.3468 -14/06/2006 12:49:10.135  000>> 98>>>>>>>>>>Part datagram received!
 54.3469 -14/06/2006 12:49:10.135  000>> 98>>>>>>>>>>Complete!
 54.3470 -14/06/2006 12:49:10.145  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30208
 54.3471 -14/06/2006 12:49:10.145  000>> Good datagram received!
 54.3472 -14/06/2006 12:49:10.145  000>> Listener:Received dictionary
 54.3473 -14/06/2006 12:49:10.145  000>> 90>>>>>>>>>>Part datagram received!
 54.3474 -14/06/2006 12:49:10.145  000>> 90>>>>>>>>>>Complete!
 54.3475 -14/06/2006 12:49:10.145  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30209
 54.3476 -14/06/2006 12:49:10.145  000>> Good datagram received!
 54.3477 -14/06/2006 12:49:10.145  000>> Listener:Received RIB
 54.3478 -14/06/2006 12:49:10.266  000>> 716>>>>>>>>>>Part datagram received!
 54.3479 -14/06/2006 12:49:10.266  000>> 716>>>>>>>>>>Complete!
 54.3480 -14/06/2006 12:49:10.266  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30210
 54.3481 -14/06/2006 12:49:10.266  000>> Good datagram received!
 54.3482 -14/06/2006 12:49:10.286  000>> Listener:Received Bundle Offer
 54.3483 -14/06/2006 12:49:10.286  000>> Listener:Sending Empty bundle request...
 54.3484 -14/06/2006 12:49:10.286  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3485 -14/06/2006 12:49:10.286  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29784
 54.3486 -14/06/2006 12:49:10.286  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30211
 54.3487 -14/06/2006 12:49:10.296  000>> Good datagram received!
 54.3488 -14/06/2006 12:49:10.296  000>> Initiator:No more requested bundles
 54.3489 -14/06/2006 12:49:10.296  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.3490 -14/06/2006 12:49:10.426  000>> 91>>>>>>>>>>Part datagram received!
 54.3491 -14/06/2006 12:49:10.426  000>> 91>>>>>>>>>>Complete!
 54.3492 -14/06/2006 12:49:10.426  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30212
 54.3493 -14/06/2006 12:49:10.426  000>> Good datagram received!
 54.3494 -14/06/2006 12:49:10.426  000>> Receive Hello:SYN
 54.3495 -14/06/2006 12:49:10.426  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29785
 54.3496 -14/06/2006 12:49:10.456  000>> 91>>>>>>>>>>Part datagram received!
 54.3497 -14/06/2006 12:49:10.456  000>> 91>>>>>>>>>>Complete!
 54.3498 -14/06/2006 12:49:10.456  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30213
 54.3499 -14/06/2006 12:49:10.456  000>> Good datagram received!
 54.3500 -14/06/2006 12:49:10.456  000>> Receive Hello:ACK
 54.3501 -14/06/2006 12:49:10.556  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3502 -14/06/2006 12:49:10.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29786
 54.3503 -14/06/2006 12:49:10.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29787
 54.3504 -14/06/2006 12:49:10.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29788
 54.3505 -14/06/2006 12:49:10.556  000>> 98>>>>>>>>>>Part datagram received!
 54.3506 -14/06/2006 12:49:10.556  000>> 98>>>>>>>>>>Complete!
 54.3507 -14/06/2006 12:49:10.566  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30214
 54.3508 -14/06/2006 12:49:10.566  000>> Good datagram received!
 54.3509 -14/06/2006 12:49:10.566  000>> Listener:Received dictionary
 54.3510 -14/06/2006 12:49:10.566  000>> 90>>>>>>>>>>Part datagram received!
 54.3511 -14/06/2006 12:49:10.566  000>> 90>>>>>>>>>>Complete!
 54.3512 -14/06/2006 12:49:10.566  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30215
 54.3513 -14/06/2006 12:49:10.566  000>> Good datagram received!
 54.3514 -14/06/2006 12:49:10.566  000>> Listener:Received RIB
 54.3515 -14/06/2006 12:49:10.666  000>> 716>>>>>>>>>>Part datagram received!
 54.3516 -14/06/2006 12:49:10.666  000>> 716>>>>>>>>>>Complete!
 54.3517 -14/06/2006 12:49:10.676  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30216
 54.3518 -14/06/2006 12:49:10.676  000>> Good datagram received!
 54.3519 -14/06/2006 12:49:10.686  000>> Listener:Received Bundle Offer
 54.3520 -14/06/2006 12:49:10.686  000>> Listener:Sending Empty bundle request...
 54.3521 -14/06/2006 12:49:10.686  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3522 -14/06/2006 12:49:10.686  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29789
 54.3523 -14/06/2006 12:49:10.686  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30217
 54.3524 -14/06/2006 12:49:10.686  000>> Good datagram received!
 54.3525 -14/06/2006 12:49:10.696  000>> Initiator:No more requested bundles
 54.3526 -14/06/2006 12:49:10.696  000>> Listener(receiveBundles):We can restart connection...
 54.3527 -14/06/2006 12:49:10.796  000>> Hello Procedure:SENDSYN
 54.3528 -14/06/2006 12:49:10.796  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29790
 54.3529 -14/06/2006 12:49:10.896  000>> 91>>>>>>>>>>Part datagram received!
 54.3530 -14/06/2006 12:49:10.896  000>> 91>>>>>>>>>>Complete!
 54.3531 -14/06/2006 12:49:10.896  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30218
 54.3532 -14/06/2006 12:49:10.896  000>> Good datagram received!
 54.3533 -14/06/2006 12:49:10.896  000>> Receive Hello:SYNACK
 54.3534 -14/06/2006 12:49:10.896  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29791
 54.3535 -14/06/2006 12:49:10.997  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3536 -14/06/2006 12:49:10.997  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29792
 54.3537 -14/06/2006 12:49:10.997  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29793
 54.3538 -14/06/2006 12:49:10.997  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29794
 54.3539 -14/06/2006 12:49:11.137  000>> 78>>>>>>>>>>Part datagram received!
 54.3540 -14/06/2006 12:49:11.137  000>> 78>>>>>>>>>>Complete!
 54.3541 -14/06/2006 12:49:11.137  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30219
 54.3542 -14/06/2006 12:49:11.137  000>> Good datagram received!
 54.3543 -14/06/2006 12:49:11.137  000>> Initiator:No more requested bundles
 54.3544 -14/06/2006 12:49:11.137  000>> Initiator:But we can not restart connection...
 54.3545 -14/06/2006 12:49:11.267  000>> 826>>>>>>>>>>Part datagram received!
 54.3546 -14/06/2006 12:49:11.267  000>> 826>>>>>>>>>>Complete!
 54.3547 -14/06/2006 12:49:11.277  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30220
 54.3548 -14/06/2006 12:49:11.277  000>> Good datagram received!
 54.3549 -14/06/2006 12:49:11.277  000>> Listener:Received dictionary
 54.3550 -14/06/2006 12:49:11.277  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30221
 54.3551 -14/06/2006 12:49:11.277  000>> Good datagram received!
 54.3552 -14/06/2006 12:49:11.277  000>> Listener:Received RIB
 54.3553 -14/06/2006 12:49:11.277  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30222
 54.3554 -14/06/2006 12:49:11.277  000>> Good datagram received!
 54.3555 -14/06/2006 12:49:11.297  000>> Listener:Received Bundle Offer
 54.3556 -14/06/2006 12:49:11.297  000>> Listener:Sending Empty bundle request...
 54.3557 -14/06/2006 12:49:11.297  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.3558 -14/06/2006 12:49:11.297  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29795
 54.3559 -14/06/2006 12:49:11.427  000>> 91>>>>>>>>>>Part datagram received!
 54.3560 -14/06/2006 12:49:11.427  000>> 91>>>>>>>>>>Complete!
 54.3561 -14/06/2006 12:49:11.427  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30223
 54.3562 -14/06/2006 12:49:11.427  000>> Good datagram received!
 54.3563 -14/06/2006 12:49:11.427  000>> Receive Hello:SYN
 54.3564 -14/06/2006 12:49:11.427  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29796
 54.3565 -14/06/2006 12:49:11.457  000>> 91>>>>>>>>>>Part datagram received!
 54.3566 -14/06/2006 12:49:11.457  000>> 91>>>>>>>>>>Complete!
 54.3567 -14/06/2006 12:49:11.457  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30224
 54.3568 -14/06/2006 12:49:11.457  000>> Good datagram received!
 54.3569 -14/06/2006 12:49:11.457  000>> Receive Hello:ACK
 54.3570 -14/06/2006 12:49:11.557  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3571 -14/06/2006 12:49:11.557  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29797
 54.3572 -14/06/2006 12:49:11.557  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29798
 54.3573 -14/06/2006 12:49:11.557  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29799
 54.3574 -14/06/2006 12:49:11.557  000>> 98>>>>>>>>>>Part datagram received!
 54.3575 -14/06/2006 12:49:11.567  000>> 98>>>>>>>>>>Complete!
 54.3576 -14/06/2006 12:49:11.567  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30225
 54.3577 -14/06/2006 12:49:11.567  000>> Good datagram received!
 54.3578 -14/06/2006 12:49:11.567  000>> Listener:Received dictionary
 54.3579 -14/06/2006 12:49:11.567  000>> 90>>>>>>>>>>Part datagram received!
 54.3580 -14/06/2006 12:49:11.567  000>> 90>>>>>>>>>>Complete!
 54.3581 -14/06/2006 12:49:11.567  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30226
 54.3582 -14/06/2006 12:49:11.567  000>> Good datagram received!
 54.3583 -14/06/2006 12:49:11.567  000>> Listener:Received RIB
 54.3584 -14/06/2006 12:49:11.668  000>> 716>>>>>>>>>>Part datagram received!
 54.3585 -14/06/2006 12:49:11.678  000>> 716>>>>>>>>>>Complete!
 54.3586 -14/06/2006 12:49:11.678  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30227
 54.3587 -14/06/2006 12:49:11.678  000>> Good datagram received!
 54.3588 -14/06/2006 12:49:11.688  000>> Listener:Received Bundle Offer
 54.3589 -14/06/2006 12:49:11.688  000>> Listener:Sending Empty bundle request...
 54.3590 -14/06/2006 12:49:11.688  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3591 -14/06/2006 12:49:11.688  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29800
 54.3592 -14/06/2006 12:49:11.688  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30228
 54.3593 -14/06/2006 12:49:11.688  000>> Good datagram received!
 54.3594 -14/06/2006 12:49:11.698  000>> Initiator:No more requested bundles
 54.3595 -14/06/2006 12:49:11.698  000>> Listener(receiveBundles):We can restart connection...
 54.3596 -14/06/2006 12:49:11.798  000>> Hello Procedure:SENDSYN
 54.3597 -14/06/2006 12:49:11.798  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29801
 54.3598 -14/06/2006 12:49:11.888  000>> 91>>>>>>>>>>Part datagram received!
 54.3599 -14/06/2006 12:49:11.888  000>> 91>>>>>>>>>>Complete!
 54.3600 -14/06/2006 12:49:11.888  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30229
 54.3601 -14/06/2006 12:49:11.888  000>> Good datagram received!
 54.3602 -14/06/2006 12:49:11.888  000>> Receive Hello:SYNACK
 54.3603 -14/06/2006 12:49:11.888  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29802
 54.3604 -14/06/2006 12:49:11.998  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3605 -14/06/2006 12:49:11.998  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29803
 54.3606 -14/06/2006 12:49:11.998  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29804
 54.3607 -14/06/2006 12:49:11.998  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29805
 54.3608 -14/06/2006 12:49:12.118  000>> 78>>>>>>>>>>Part datagram received!
 54.3609 -14/06/2006 12:49:12.118  000>> 78>>>>>>>>>>Complete!
 54.3610 -14/06/2006 12:49:12.118  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30230
 54.3611 -14/06/2006 12:49:12.128  000>> Good datagram received!
 54.3612 -14/06/2006 12:49:12.128  000>> Initiator:No more requested bundles
 54.3613 -14/06/2006 12:49:12.128  000>> Initiator:But we can not restart connection...
 54.3614 -14/06/2006 12:49:12.278  000>> 826>>>>>>>>>>Part datagram received!
 54.3615 -14/06/2006 12:49:12.278  000>> 826>>>>>>>>>>Complete!
 54.3616 -14/06/2006 12:49:12.278  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30231
 54.3617 -14/06/2006 12:49:12.278  000>> Good datagram received!
 54.3618 -14/06/2006 12:49:12.278  000>> Listener:Received dictionary
 54.3619 -14/06/2006 12:49:12.278  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30232
 54.3620 -14/06/2006 12:49:12.278  000>> Good datagram received!
 54.3621 -14/06/2006 12:49:12.278  000>> Listener:Received RIB
 54.3622 -14/06/2006 12:49:12.278  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30233
 54.3623 -14/06/2006 12:49:12.278  000>> Good datagram received!
 54.3624 -14/06/2006 12:49:12.298  000>> Listener:Received Bundle Offer
 54.3625 -14/06/2006 12:49:12.298  000>> Listener:Sending Empty bundle request...
 54.3626 -14/06/2006 12:49:12.298  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.3627 -14/06/2006 12:49:12.298  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29806
 54.3628 -14/06/2006 12:49:12.439  000>> 91>>>>>>>>>>Part datagram received!
 54.3629 -14/06/2006 12:49:12.439  000>> 91>>>>>>>>>>Complete!
 54.3630 -14/06/2006 12:49:12.439  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30234
 54.3631 -14/06/2006 12:49:12.439  000>> Good datagram received!
 54.3632 -14/06/2006 12:49:12.439  000>> Receive Hello:SYN
 54.3633 -14/06/2006 12:49:12.439  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29807
 54.3634 -14/06/2006 12:49:12.459  000>> 91>>>>>>>>>>Part datagram received!
 54.3635 -14/06/2006 12:49:12.459  000>> 91>>>>>>>>>>Complete!
 54.3636 -14/06/2006 12:49:12.459  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30235
 54.3637 -14/06/2006 12:49:12.459  000>> Good datagram received!
 54.3638 -14/06/2006 12:49:12.459  000>> Receive Hello:ACK
 54.3639 -14/06/2006 12:49:12.559  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3640 -14/06/2006 12:49:12.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29808
 54.3641 -14/06/2006 12:49:12.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29809
 54.3642 -14/06/2006 12:49:12.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29810
 54.3643 -14/06/2006 12:49:12.579  000>> 98>>>>>>>>>>Part datagram received!
 54.3644 -14/06/2006 12:49:12.579  000>> 98>>>>>>>>>>Complete!
 54.3645 -14/06/2006 12:49:12.579  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30236
 54.3646 -14/06/2006 12:49:12.579  000>> Good datagram received!
 54.3647 -14/06/2006 12:49:12.579  000>> Listener:Received dictionary
 54.3648 -14/06/2006 12:49:12.579  000>> 90>>>>>>>>>>Part datagram received!
 54.3649 -14/06/2006 12:49:12.579  000>> 90>>>>>>>>>>Complete!
 54.3650 -14/06/2006 12:49:12.579  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30237
 54.3651 -14/06/2006 12:49:12.579  000>> Good datagram received!
 54.3652 -14/06/2006 12:49:12.579  000>> Listener:Received RIB
 54.3653 -14/06/2006 12:49:12.779  000>> 716>>>>>>>>>>Part datagram received!
 54.3654 -14/06/2006 12:49:12.779  000>> 716>>>>>>>>>>Complete!
 54.3655 -14/06/2006 12:49:12.779  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30238
 54.3656 -14/06/2006 12:49:12.779  000>> Good datagram received!
 54.3657 -14/06/2006 12:49:12.789  000>> Listener:Received Bundle Offer
 54.3658 -14/06/2006 12:49:12.789  000>> Listener:Sending Empty bundle request...
 54.3659 -14/06/2006 12:49:12.789  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3660 -14/06/2006 12:49:12.789  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29811
 54.3661 -14/06/2006 12:49:12.799  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30239
 54.3662 -14/06/2006 12:49:12.799  000>> Good datagram received!
 54.3663 -14/06/2006 12:49:12.799  000>> Initiator:No more requested bundles
 54.3664 -14/06/2006 12:49:12.799  000>> Listener(receiveBundles):We can restart connection...
 54.3665 -14/06/2006 12:49:12.899  000>> Hello Procedure:SENDSYN
 54.3666 -14/06/2006 12:49:12.899  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29812
 54.3667 -14/06/2006 12:49:12.979  000>> 91>>>>>>>>>>Part datagram received!
 54.3668 -14/06/2006 12:49:12.979  000>> 91>>>>>>>>>>Complete!
 54.3669 -14/06/2006 12:49:12.979  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30240
 54.3670 -14/06/2006 12:49:12.979  000>> Good datagram received!
 54.3671 -14/06/2006 12:49:12.979  000>> Receive Hello:SYNACK
 54.3672 -14/06/2006 12:49:12.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29813
 54.3673 -14/06/2006 12:49:13.090  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3674 -14/06/2006 12:49:13.090  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29814
 54.3675 -14/06/2006 12:49:13.090  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29815
 54.3676 -14/06/2006 12:49:13.090  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29816
 54.3677 -14/06/2006 12:49:13.100  000>> 98>>>>>>>>>>Part datagram received!
 54.3678 -14/06/2006 12:49:13.100  000>> 98>>>>>>>>>>Complete!
 54.3679 -14/06/2006 12:49:13.100  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30241
 54.3680 -14/06/2006 12:49:13.100  000>> Good datagram received!
 54.3681 -14/06/2006 12:49:13.100  000>> Listener:Received dictionary
 54.3682 -14/06/2006 12:49:13.110  000>> 90>>>>>>>>>>Part datagram received!
 54.3683 -14/06/2006 12:49:13.110  000>> 90>>>>>>>>>>Complete!
 54.3684 -14/06/2006 12:49:13.110  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30242
 54.3685 -14/06/2006 12:49:13.110  000>> Good datagram received!
 54.3686 -14/06/2006 12:49:13.110  000>> Listener:Received RIB
 54.3687 -14/06/2006 12:49:13.280  000>> 716>>>>>>>>>>Part datagram received!
 54.3688 -14/06/2006 12:49:13.280  000>> 716>>>>>>>>>>Complete!
 54.3689 -14/06/2006 12:49:13.280  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30243
 54.3690 -14/06/2006 12:49:13.280  000>> Good datagram received!
 54.3691 -14/06/2006 12:49:13.290  000>> Listener:Received Bundle Offer
 54.3692 -14/06/2006 12:49:13.290  000>> Listener:Sending Empty bundle request...
 54.3693 -14/06/2006 12:49:13.300  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3694 -14/06/2006 12:49:13.300  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29817
 54.3695 -14/06/2006 12:49:13.300  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30244
 54.3696 -14/06/2006 12:49:13.300  000>> Good datagram received!
 54.3697 -14/06/2006 12:49:13.300  000>> Initiator:No more requested bundles
 54.3698 -14/06/2006 12:49:13.300  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.3699 -14/06/2006 12:49:13.430  000>> 91>>>>>>>>>>Part datagram received!
 54.3700 -14/06/2006 12:49:13.430  000>> 91>>>>>>>>>>Complete!
 54.3701 -14/06/2006 12:49:13.430  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30245
 54.3702 -14/06/2006 12:49:13.430  000>> Good datagram received!
 54.3703 -14/06/2006 12:49:13.430  000>> Receive Hello:SYN
 54.3704 -14/06/2006 12:49:13.440  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29818
 54.3705 -14/06/2006 12:49:13.480  000>> 91>>>>>>>>>>Part datagram received!
 54.3706 -14/06/2006 12:49:13.480  000>> 91>>>>>>>>>>Complete!
 54.3707 -14/06/2006 12:49:13.480  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30246
 54.3708 -14/06/2006 12:49:13.480  000>> Good datagram received!
 54.3709 -14/06/2006 12:49:13.480  000>> Receive Hello:ACK
 54.3710 -14/06/2006 12:49:13.580  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3711 -14/06/2006 12:49:13.580  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29819
 54.3712 -14/06/2006 12:49:13.580  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29820
 54.3713 -14/06/2006 12:49:13.580  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29821
 54.3714 -14/06/2006 12:49:13.590  000>> 98>>>>>>>>>>Part datagram received!
 54.3715 -14/06/2006 12:49:13.590  000>> 98>>>>>>>>>>Complete!
 54.3716 -14/06/2006 12:49:13.590  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30247
 54.3717 -14/06/2006 12:49:13.590  000>> Good datagram received!
 54.3718 -14/06/2006 12:49:13.590  000>> Listener:Received dictionary
 54.3719 -14/06/2006 12:49:13.610  000>> 90>>>>>>>>>>Part datagram received!
 54.3720 -14/06/2006 12:49:13.610  000>> 90>>>>>>>>>>Complete!
 54.3721 -14/06/2006 12:49:13.610  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30248
 54.3722 -14/06/2006 12:49:13.610  000>> Good datagram received!
 54.3723 -14/06/2006 12:49:13.610  000>> Listener:Received RIB
 54.3724 -14/06/2006 12:49:13.781  000>> 716>>>>>>>>>>Part datagram received!
 54.3725 -14/06/2006 12:49:13.781  000>> 716>>>>>>>>>>Complete!
 54.3726 -14/06/2006 12:49:13.781  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30249
 54.3727 -14/06/2006 12:49:13.781  000>> Good datagram received!
 54.3728 -14/06/2006 12:49:13.791  000>> Listener:Received Bundle Offer
 54.3729 -14/06/2006 12:49:13.801  000>> Listener:Sending Empty bundle request...
 54.3730 -14/06/2006 12:49:13.801  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3731 -14/06/2006 12:49:13.801  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29822
 54.3732 -14/06/2006 12:49:13.801  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30250
 54.3733 -14/06/2006 12:49:13.801  000>> Good datagram received!
 54.3734 -14/06/2006 12:49:13.801  000>> Initiator:No more requested bundles
 54.3735 -14/06/2006 12:49:13.801  000>> Listener(receiveBundles):We can restart connection...
 54.3736 -14/06/2006 12:49:13.901  000>> Hello Procedure:SENDSYN
 54.3737 -14/06/2006 12:49:13.901  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29823
 54.3738 -14/06/2006 12:49:14.001  000>> 91>>>>>>>>>>Part datagram received!
 54.3739 -14/06/2006 12:49:14.001  000>> 91>>>>>>>>>>Complete!
 54.3740 -14/06/2006 12:49:14.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30251
 54.3741 -14/06/2006 12:49:14.001  000>> Good datagram received!
 54.3742 -14/06/2006 12:49:14.001  000>> Receive Hello:SYNACK
 54.3743 -14/06/2006 12:49:14.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29824
 54.3744 -14/06/2006 12:49:14.111  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3745 -14/06/2006 12:49:14.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29825
 54.3746 -14/06/2006 12:49:14.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29826
 54.3747 -14/06/2006 12:49:14.121  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29827
 54.3748 -14/06/2006 12:49:14.131  000>> 98>>>>>>>>>>Part datagram received!
 54.3749 -14/06/2006 12:49:14.131  000>> 98>>>>>>>>>>Complete!
 54.3750 -14/06/2006 12:49:14.131  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30252
 54.3751 -14/06/2006 12:49:14.131  000>> Good datagram received!
 54.3752 -14/06/2006 12:49:14.131  000>> Listener:Received dictionary
 54.3753 -14/06/2006 12:49:14.131  000>> 90>>>>>>>>>>Part datagram received!
 54.3754 -14/06/2006 12:49:14.141  000>> 90>>>>>>>>>>Complete!
 54.3755 -14/06/2006 12:49:14.141  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30253
 54.3756 -14/06/2006 12:49:14.141  000>> Good datagram received!
 54.3757 -14/06/2006 12:49:14.141  000>> Listener:Received RIB
 54.3758 -14/06/2006 12:49:14.281  000>> 716>>>>>>>>>>Part datagram received!
 54.3759 -14/06/2006 12:49:14.281  000>> 716>>>>>>>>>>Complete!
 54.3760 -14/06/2006 12:49:14.281  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30254
 54.3761 -14/06/2006 12:49:14.281  000>> Good datagram received!
 54.3762 -14/06/2006 12:49:14.301  000>> Listener:Received Bundle Offer
 54.3763 -14/06/2006 12:49:14.301  000>> Listener:Sending Empty bundle request...
 54.3764 -14/06/2006 12:49:14.301  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3765 -14/06/2006 12:49:14.301  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29828
 54.3766 -14/06/2006 12:49:14.301  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30255
 54.3767 -14/06/2006 12:49:14.301  000>> Good datagram received!
 54.3768 -14/06/2006 12:49:14.301  000>> Initiator:No more requested bundles
 54.3769 -14/06/2006 12:49:14.301  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.3770 -14/06/2006 12:49:14.431  000>> 91>>>>>>>>>>Part datagram received!
 54.3771 -14/06/2006 12:49:14.431  000>> 91>>>>>>>>>>Complete!
 54.3772 -14/06/2006 12:49:14.431  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30256
 54.3773 -14/06/2006 12:49:14.431  000>> Good datagram received!
 54.3774 -14/06/2006 12:49:14.431  000>> Receive Hello:SYN
 54.3775 -14/06/2006 12:49:14.431  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29829
 54.3776 -14/06/2006 12:49:14.462  000>> 91>>>>>>>>>>Part datagram received!
 54.3777 -14/06/2006 12:49:14.462  000>> 91>>>>>>>>>>Complete!
 54.3778 -14/06/2006 12:49:14.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30257
 54.3779 -14/06/2006 12:49:14.472  000>> Good datagram received!
 54.3780 -14/06/2006 12:49:14.472  000>> Receive Hello:ACK
 54.3781 -14/06/2006 12:49:14.572  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3782 -14/06/2006 12:49:14.572  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29830
 54.3783 -14/06/2006 12:49:14.572  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29831
 54.3784 -14/06/2006 12:49:14.572  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29832
 54.3785 -14/06/2006 12:49:14.572  000>> 188>>>>>>>>>>Part datagram received!
 54.3786 -14/06/2006 12:49:14.572  000>> 188>>>>>>>>>>Complete!
 54.3787 -14/06/2006 12:49:14.572  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30258
 54.3788 -14/06/2006 12:49:14.572  000>> Good datagram received!
 54.3789 -14/06/2006 12:49:14.572  000>> Listener:Received dictionary
 54.3790 -14/06/2006 12:49:14.582  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30259
 54.3791 -14/06/2006 12:49:14.582  000>> Good datagram received!
 54.3792 -14/06/2006 12:49:14.582  000>> Listener:Received RIB
 54.3793 -14/06/2006 12:49:14.582  000>> 638>>>>>>>>>>Part datagram received!
 54.3794 -14/06/2006 12:49:14.582  000>> 638>>>>>>>>>>Complete!
 54.3795 -14/06/2006 12:49:14.582  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30260
 54.3796 -14/06/2006 12:49:14.582  000>> Good datagram received!
 54.3797 -14/06/2006 12:49:14.592  000>> Listener:Received Bundle Offer
 54.3798 -14/06/2006 12:49:14.602  000>> Listener:Sending Empty bundle request...
 54.3799 -14/06/2006 12:49:14.602  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3800 -14/06/2006 12:49:14.602  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29833
 54.3801 -14/06/2006 12:49:14.602  000>> 0>>>>>>>>>>Part datagram received!
 54.3802 -14/06/2006 12:49:14.602  000>> 0>>>>>>>>>>Part datagram received!
 54.3803 -14/06/2006 12:49:14.682  000>> 78>>>>>>>>>>Part datagram received!
 54.3804 -14/06/2006 12:49:14.682  000>> 78>>>>>>>>>>Complete!
 54.3805 -14/06/2006 12:49:14.682  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30261
 54.3806 -14/06/2006 12:49:14.682  000>> Good datagram received!
 54.3807 -14/06/2006 12:49:14.682  000>> Initiator:No more requested bundles
 54.3808 -14/06/2006 12:49:14.682  000>> Listener(receiveBundles):We can restart connection...
 54.3809 -14/06/2006 12:49:14.782  000>> Hello Procedure:SENDSYN
 54.3810 -14/06/2006 12:49:14.782  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29834
 54.3811 -14/06/2006 12:49:14.812  000>> 91>>>>>>>>>>Part datagram received!
 54.3812 -14/06/2006 12:49:14.812  000>> 91>>>>>>>>>>Complete!
 54.3813 -14/06/2006 12:49:14.812  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30262
 54.3814 -14/06/2006 12:49:14.812  000>> Good datagram received!
 54.3815 -14/06/2006 12:49:14.812  000>> Receive Hello:SYNACK
 54.3816 -14/06/2006 12:49:14.812  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29835
 54.3817 -14/06/2006 12:49:14.912  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3818 -14/06/2006 12:49:14.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29836
 54.3819 -14/06/2006 12:49:14.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29837
 54.3820 -14/06/2006 12:49:14.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29838
 54.3821 -14/06/2006 12:49:14.972  000>> 98>>>>>>>>>>Part datagram received!
 54.3822 -14/06/2006 12:49:14.972  000>> 98>>>>>>>>>>Complete!
 54.3823 -14/06/2006 12:49:14.982  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30263
 54.3824 -14/06/2006 12:49:14.982  000>> Good datagram received!
 54.3825 -14/06/2006 12:49:14.982  000>> Listener:Received dictionary
 54.3826 -14/06/2006 12:49:15.082  000>> 806>>>>>>>>>>Part datagram received!
 54.3827 -14/06/2006 12:49:15.082  000>> 806>>>>>>>>>>Complete!
 54.3828 -14/06/2006 12:49:15.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30264
 54.3829 -14/06/2006 12:49:15.082  000>> Good datagram received!
 54.3830 -14/06/2006 12:49:15.082  000>> Listener:Received RIB
 54.3831 -14/06/2006 12:49:15.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30265
 54.3832 -14/06/2006 12:49:15.092  000>> Good datagram received!
 54.3833 -14/06/2006 12:49:15.102  000>> Listener:Received Bundle Offer
 54.3834 -14/06/2006 12:49:15.102  000>> Listener:Sending Empty bundle request...
 54.3835 -14/06/2006 12:49:15.102  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3836 -14/06/2006 12:49:15.102  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29839
 54.3837 -14/06/2006 12:49:15.102  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30266
 54.3838 -14/06/2006 12:49:15.102  000>> Good datagram received!
 54.3839 -14/06/2006 12:49:15.102  000>> Initiator:No more requested bundles
 54.3840 -14/06/2006 12:49:15.102  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.3841 -14/06/2006 12:49:15.223  000>> 91>>>>>>>>>>Part datagram received!
 54.3842 -14/06/2006 12:49:15.223  000>> 91>>>>>>>>>>Complete!
 54.3843 -14/06/2006 12:49:15.223  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30267
 54.3844 -14/06/2006 12:49:15.233  000>> Good datagram received!
 54.3845 -14/06/2006 12:49:15.233  000>> Receive Hello:SYN
 54.3846 -14/06/2006 12:49:15.233  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29840
 54.3847 -14/06/2006 12:49:15.253  000>> 91>>>>>>>>>>Part datagram received!
 54.3848 -14/06/2006 12:49:15.253  000>> 91>>>>>>>>>>Complete!
 54.3849 -14/06/2006 12:49:15.253  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30268
 54.3850 -14/06/2006 12:49:15.253  000>> Good datagram received!
 54.3851 -14/06/2006 12:49:15.263  000>> Receive Hello:ACK
 54.3852 -14/06/2006 12:49:15.363  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3853 -14/06/2006 12:49:15.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29841
 54.3854 -14/06/2006 12:49:15.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29842
 54.3855 -14/06/2006 12:49:15.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29843
 54.3856 -14/06/2006 12:49:15.363  000>> 98>>>>>>>>>>Part datagram received!
 54.3857 -14/06/2006 12:49:15.363  000>> 98>>>>>>>>>>Complete!
 54.3858 -14/06/2006 12:49:15.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30269
 54.3859 -14/06/2006 12:49:15.363  000>> Good datagram received!
 54.3860 -14/06/2006 12:49:15.363  000>> Listener:Received dictionary
 54.3861 -14/06/2006 12:49:15.373  000>> 90>>>>>>>>>>Part datagram received!
 54.3862 -14/06/2006 12:49:15.373  000>> 90>>>>>>>>>>Complete!
 54.3863 -14/06/2006 12:49:15.373  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30270
 54.3864 -14/06/2006 12:49:15.373  000>> Good datagram received!
 54.3865 -14/06/2006 12:49:15.373  000>> Listener:Received RIB
 54.3866 -14/06/2006 12:49:15.373  000>> 0>>>>>>>>>>Part datagram received!
 54.3867 -14/06/2006 12:49:15.373  000>> 0>>>>>>>>>>Part datagram received!
 54.3868 -14/06/2006 12:49:15.373  000>> 638>>>>>>>>>>Part datagram received!
 54.3869 -14/06/2006 12:49:15.373  000>> 638>>>>>>>>>>Complete!
 54.3870 -14/06/2006 12:49:15.373  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30271
 54.3871 -14/06/2006 12:49:15.373  000>> Good datagram received!
 54.3872 -14/06/2006 12:49:15.393  000>> Listener:Received Bundle Offer
 54.3873 -14/06/2006 12:49:15.393  000>> Listener:Sending Empty bundle request...
 54.3874 -14/06/2006 12:49:15.393  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3875 -14/06/2006 12:49:15.393  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29844
 54.3876 -14/06/2006 12:49:15.473  000>> 78>>>>>>>>>>Part datagram received!
 54.3877 -14/06/2006 12:49:15.473  000>> 78>>>>>>>>>>Complete!
 54.3878 -14/06/2006 12:49:15.473  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30272
 54.3879 -14/06/2006 12:49:15.483  000>> Good datagram received!
 54.3880 -14/06/2006 12:49:15.483  000>> Initiator:No more requested bundles
 54.3881 -14/06/2006 12:49:15.483  000>> Listener(receiveBundles):We can restart connection...
 54.3882 -14/06/2006 12:49:15.583  000>> Hello Procedure:SENDSYN
 54.3883 -14/06/2006 12:49:15.583  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29845
 54.3884 -14/06/2006 12:49:15.613  000>> 91>>>>>>>>>>Part datagram received!
 54.3885 -14/06/2006 12:49:15.613  000>> 91>>>>>>>>>>Complete!
 54.3886 -14/06/2006 12:49:15.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30273
 54.3887 -14/06/2006 12:49:15.613  000>> Good datagram received!
 54.3888 -14/06/2006 12:49:15.613  000>> Receive Hello:SYNACK
 54.3889 -14/06/2006 12:49:15.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29846
 54.3890 -14/06/2006 12:49:15.713  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3891 -14/06/2006 12:49:15.713  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29847
 54.3892 -14/06/2006 12:49:15.713  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29848
 54.3893 -14/06/2006 12:49:15.713  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29849
 54.3894 -14/06/2006 12:49:15.844  000>> 78>>>>>>>>>>Part datagram received!
 54.3895 -14/06/2006 12:49:15.844  000>> 78>>>>>>>>>>Complete!
 54.3896 -14/06/2006 12:49:15.844  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30274
 54.3897 -14/06/2006 12:49:15.844  000>> Good datagram received!
 54.3898 -14/06/2006 12:49:15.844  000>> Initiator:No more requested bundles
 54.3899 -14/06/2006 12:49:15.844  000>> Initiator:But we can not restart connection...
 54.3900 -14/06/2006 12:49:15.984  000>> 826>>>>>>>>>>Part datagram received!
 54.3901 -14/06/2006 12:49:15.984  000>> 826>>>>>>>>>>Complete!
 54.3902 -14/06/2006 12:49:15.984  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30275
 54.3903 -14/06/2006 12:49:15.984  000>> Good datagram received!
 54.3904 -14/06/2006 12:49:15.994  000>> Listener:Received dictionary
 54.3905 -14/06/2006 12:49:15.994  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30276
 54.3906 -14/06/2006 12:49:15.994  000>> Good datagram received!
 54.3907 -14/06/2006 12:49:15.994  000>> Listener:Received RIB
 54.3908 -14/06/2006 12:49:15.994  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30277
 54.3909 -14/06/2006 12:49:15.994  000>> Good datagram received!
 54.3910 -14/06/2006 12:49:16.004  000>> Listener:Received Bundle Offer
 54.3911 -14/06/2006 12:49:16.004  000>> Listener:Sending Empty bundle request...
 54.3912 -14/06/2006 12:49:16.004  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.3913 -14/06/2006 12:49:16.004  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29850
 54.3914 -14/06/2006 12:49:16.134  000>> 91>>>>>>>>>>Part datagram received!
 54.3915 -14/06/2006 12:49:16.134  000>> 91>>>>>>>>>>Complete!
 54.3916 -14/06/2006 12:49:16.144  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30278
 54.3917 -14/06/2006 12:49:16.144  000>> Good datagram received!
 54.3918 -14/06/2006 12:49:16.144  000>> Receive Hello:SYN
 54.3919 -14/06/2006 12:49:16.144  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29851
 54.3920 -14/06/2006 12:49:16.224  000>> 91>>>>>>>>>>Part datagram received!
 54.3921 -14/06/2006 12:49:16.224  000>> 91>>>>>>>>>>Complete!
 54.3922 -14/06/2006 12:49:16.224  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30279
 54.3923 -14/06/2006 12:49:16.224  000>> Good datagram received!
 54.3924 -14/06/2006 12:49:16.224  000>> Receive Hello:ACK
 54.3925 -14/06/2006 12:49:16.334  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3926 -14/06/2006 12:49:16.334  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29852
 54.3927 -14/06/2006 12:49:16.334  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29853
 54.3928 -14/06/2006 12:49:16.344  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29854
 54.3929 -14/06/2006 12:49:16.344  000>> 98>>>>>>>>>>Part datagram received!
 54.3930 -14/06/2006 12:49:16.344  000>> 98>>>>>>>>>>Complete!
 54.3931 -14/06/2006 12:49:16.344  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30280
 54.3932 -14/06/2006 12:49:16.344  000>> Good datagram received!
 54.3933 -14/06/2006 12:49:16.344  000>> Listener:Received dictionary
 54.3934 -14/06/2006 12:49:16.354  000>> 90>>>>>>>>>>Part datagram received!
 54.3935 -14/06/2006 12:49:16.354  000>> 90>>>>>>>>>>Complete!
 54.3936 -14/06/2006 12:49:16.354  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30281
 54.3937 -14/06/2006 12:49:16.354  000>> Good datagram received!
 54.3938 -14/06/2006 12:49:16.354  000>> Listener:Received RIB
 54.3939 -14/06/2006 12:49:16.354  000>> 0>>>>>>>>>>Part datagram received!
 54.3940 -14/06/2006 12:49:16.354  000>> 0>>>>>>>>>>Part datagram received!
 54.3941 -14/06/2006 12:49:16.354  000>> 638>>>>>>>>>>Part datagram received!
 54.3942 -14/06/2006 12:49:16.354  000>> 638>>>>>>>>>>Complete!
 54.3943 -14/06/2006 12:49:16.354  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30282
 54.3944 -14/06/2006 12:49:16.354  000>> Good datagram received!
 54.3945 -14/06/2006 12:49:16.374  000>> Listener:Received Bundle Offer
 54.3946 -14/06/2006 12:49:16.374  000>> Listener:Sending Empty bundle request...
 54.3947 -14/06/2006 12:49:16.374  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3948 -14/06/2006 12:49:16.374  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29855
 54.3949 -14/06/2006 12:49:16.454  000>> 78>>>>>>>>>>Part datagram received!
 54.3950 -14/06/2006 12:49:16.454  000>> 78>>>>>>>>>>Complete!
 54.3951 -14/06/2006 12:49:16.454  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30283
 54.3952 -14/06/2006 12:49:16.454  000>> Good datagram received!
 54.3953 -14/06/2006 12:49:16.454  000>> Initiator:No more requested bundles
 54.3954 -14/06/2006 12:49:16.454  000>> Listener(receiveBundles):We can restart connection...
 54.3955 -14/06/2006 12:49:16.555  000>> Hello Procedure:SENDSYN
 54.3956 -14/06/2006 12:49:16.555  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29856
 54.3957 -14/06/2006 12:49:16.575  000>> 91>>>>>>>>>>Part datagram received!
 54.3958 -14/06/2006 12:49:16.575  000>> 91>>>>>>>>>>Complete!
 54.3959 -14/06/2006 12:49:16.575  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30284
 54.3960 -14/06/2006 12:49:16.575  000>> Good datagram received!
 54.3961 -14/06/2006 12:49:16.575  000>> Receive Hello:SYNACK
 54.3962 -14/06/2006 12:49:16.575  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29857
 54.3963 -14/06/2006 12:49:16.675  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.3964 -14/06/2006 12:49:16.675  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29858
 54.3965 -14/06/2006 12:49:16.675  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29859
 54.3966 -14/06/2006 12:49:16.675  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29860
 54.3967 -14/06/2006 12:49:16.705  000>> 98>>>>>>>>>>Part datagram received!
 54.3968 -14/06/2006 12:49:16.705  000>> 98>>>>>>>>>>Complete!
 54.3969 -14/06/2006 12:49:16.705  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30285
 54.3970 -14/06/2006 12:49:16.705  000>> Good datagram received!
 54.3971 -14/06/2006 12:49:16.705  000>> Listener:Received dictionary
 54.3972 -14/06/2006 12:49:16.735  000>> 90>>>>>>>>>>Part datagram received!
 54.3973 -14/06/2006 12:49:16.735  000>> 90>>>>>>>>>>Complete!
 54.3974 -14/06/2006 12:49:16.735  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30286
 54.3975 -14/06/2006 12:49:16.735  000>> Good datagram received!
 54.3976 -14/06/2006 12:49:16.735  000>> Listener:Received RIB
 54.3977 -14/06/2006 12:49:16.885  000>> 716>>>>>>>>>>Part datagram received!
 54.3978 -14/06/2006 12:49:16.885  000>> 716>>>>>>>>>>Complete!
 54.3979 -14/06/2006 12:49:16.885  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30287
 54.3980 -14/06/2006 12:49:16.885  000>> Good datagram received!
 54.3981 -14/06/2006 12:49:16.895  000>> Listener:Received Bundle Offer
 54.3982 -14/06/2006 12:49:16.895  000>> Listener:Sending Empty bundle request...
 54.3983 -14/06/2006 12:49:16.895  000>> Listener(receiveBOffer):But we can not restart connection...
 54.3984 -14/06/2006 12:49:16.895  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29861
 54.3985 -14/06/2006 12:49:16.895  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30288
 54.3986 -14/06/2006 12:49:16.895  000>> Good datagram received!
 54.3987 -14/06/2006 12:49:16.895  000>> Initiator:No more requested bundles
 54.3988 -14/06/2006 12:49:16.895  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.3989 -14/06/2006 12:49:17.085  000>> 91>>>>>>>>>>Part datagram received!
 54.3990 -14/06/2006 12:49:17.085  000>> 91>>>>>>>>>>Complete!
 54.3991 -14/06/2006 12:49:17.095  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30289
 54.3992 -14/06/2006 12:49:17.095  000>> Good datagram received!
 54.3993 -14/06/2006 12:49:17.095  000>> Receive Hello:SYN
 54.3994 -14/06/2006 12:49:17.095  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29862
 54.3995 -14/06/2006 12:49:17.125  000>> 91>>>>>>>>>>Part datagram received!
 54.3996 -14/06/2006 12:49:17.125  000>> 91>>>>>>>>>>Complete!
 54.3997 -14/06/2006 12:49:17.125  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30290
 54.3998 -14/06/2006 12:49:17.125  000>> Good datagram received!
 54.3999 -14/06/2006 12:49:17.135  000>> Receive Hello:ACK
 54.4000 -14/06/2006 12:49:17.236  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4001 -14/06/2006 12:49:17.236  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29863
 54.4002 -14/06/2006 12:49:17.236  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29864
 54.4003 -14/06/2006 12:49:17.236  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29865
 54.4004 -14/06/2006 12:49:17.236  000>> 98>>>>>>>>>>Part datagram received!
 54.4005 -14/06/2006 12:49:17.236  000>> 98>>>>>>>>>>Complete!
 54.4006 -14/06/2006 12:49:17.236  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30291
 54.4007 -14/06/2006 12:49:17.236  000>> Good datagram received!
 54.4008 -14/06/2006 12:49:17.236  000>> Listener:Received dictionary
 54.4009 -14/06/2006 12:49:17.246  000>> 0>>>>>>>>>>Part datagram received!
 54.4010 -14/06/2006 12:49:17.246  000>> 0>>>>>>>>>>Part datagram received!
 54.4011 -14/06/2006 12:49:17.256  000>> 90>>>>>>>>>>Part datagram received!
 54.4012 -14/06/2006 12:49:17.256  000>> 90>>>>>>>>>>Complete!
 54.4013 -14/06/2006 12:49:17.256  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30292
 54.4014 -14/06/2006 12:49:17.256  000>> Good datagram received!
 54.4015 -14/06/2006 12:49:17.256  000>> Listener:Received RIB
 54.4016 -14/06/2006 12:49:17.256  000>> 638>>>>>>>>>>Part datagram received!
 54.4017 -14/06/2006 12:49:17.256  000>> 638>>>>>>>>>>Complete!
 54.4018 -14/06/2006 12:49:17.256  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30293
 54.4019 -14/06/2006 12:49:17.256  000>> Good datagram received!
 54.4020 -14/06/2006 12:49:17.276  000>> Listener:Received Bundle Offer
 54.4021 -14/06/2006 12:49:17.276  000>> Listener:Sending Empty bundle request...
 54.4022 -14/06/2006 12:49:17.276  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4023 -14/06/2006 12:49:17.276  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29866
 54.4024 -14/06/2006 12:49:17.356  000>> 78>>>>>>>>>>Part datagram received!
 54.4025 -14/06/2006 12:49:17.356  000>> 78>>>>>>>>>>Complete!
 54.4026 -14/06/2006 12:49:17.356  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30294
 54.4027 -14/06/2006 12:49:17.356  000>> Good datagram received!
 54.4028 -14/06/2006 12:49:17.356  000>> Initiator:No more requested bundles
 54.4029 -14/06/2006 12:49:17.356  000>> Listener(receiveBundles):We can restart connection...
 54.4030 -14/06/2006 12:49:17.456  000>> Hello Procedure:SENDSYN
 54.4031 -14/06/2006 12:49:17.456  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29867
 54.4032 -14/06/2006 12:49:17.476  000>> 91>>>>>>>>>>Part datagram received!
 54.4033 -14/06/2006 12:49:17.476  000>> 91>>>>>>>>>>Complete!
 54.4034 -14/06/2006 12:49:17.476  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30295
 54.4035 -14/06/2006 12:49:17.476  000>> Good datagram received!
 54.4036 -14/06/2006 12:49:17.476  000>> Receive Hello:SYNACK
 54.4037 -14/06/2006 12:49:17.486  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29868
 54.4038 -14/06/2006 12:49:17.586  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4039 -14/06/2006 12:49:17.586  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29869
 54.4040 -14/06/2006 12:49:17.586  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29870
 54.4041 -14/06/2006 12:49:17.596  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29871
 54.4042 -14/06/2006 12:49:17.626  000>> 98>>>>>>>>>>Part datagram received!
 54.4043 -14/06/2006 12:49:17.626  000>> 98>>>>>>>>>>Complete!
 54.4044 -14/06/2006 12:49:17.636  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30296
 54.4045 -14/06/2006 12:49:17.636  000>> Good datagram received!
 54.4046 -14/06/2006 12:49:17.636  000>> Listener:Received dictionary
 54.4047 -14/06/2006 12:49:17.646  000>> 90>>>>>>>>>>Part datagram received!
 54.4048 -14/06/2006 12:49:17.646  000>> 90>>>>>>>>>>Complete!
 54.4049 -14/06/2006 12:49:17.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30297
 54.4050 -14/06/2006 12:49:17.646  000>> Good datagram received!
 54.4051 -14/06/2006 12:49:17.646  000>> Listener:Received RIB
 54.4052 -14/06/2006 12:49:17.796  000>> 716>>>>>>>>>>Part datagram received!
 54.4053 -14/06/2006 12:49:17.796  000>> 716>>>>>>>>>>Complete!
 54.4054 -14/06/2006 12:49:17.796  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30298
 54.4055 -14/06/2006 12:49:17.796  000>> Good datagram received!
 54.4056 -14/06/2006 12:49:17.806  000>> Listener:Received Bundle Offer
 54.4057 -14/06/2006 12:49:17.806  000>> Listener:Sending Empty bundle request...
 54.4058 -14/06/2006 12:49:17.806  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4059 -14/06/2006 12:49:17.806  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29872
 54.4060 -14/06/2006 12:49:17.816  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30299
 54.4061 -14/06/2006 12:49:17.816  000>> Good datagram received!
 54.4062 -14/06/2006 12:49:17.816  000>> Initiator:No more requested bundles
 54.4063 -14/06/2006 12:49:17.816  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.4064 -14/06/2006 12:49:17.987  000>> 91>>>>>>>>>>Part datagram received!
 54.4065 -14/06/2006 12:49:17.987  000>> 91>>>>>>>>>>Complete!
 54.4066 -14/06/2006 12:49:17.987  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30300
 54.4067 -14/06/2006 12:49:17.987  000>> Good datagram received!
 54.4068 -14/06/2006 12:49:17.987  000>> Receive Hello:SYN
 54.4069 -14/06/2006 12:49:17.987  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29873
 54.4070 -14/06/2006 12:49:18.007  000>> 91>>>>>>>>>>Part datagram received!
 54.4071 -14/06/2006 12:49:18.007  000>> 91>>>>>>>>>>Complete!
 54.4072 -14/06/2006 12:49:18.007  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30301
 54.4073 -14/06/2006 12:49:18.007  000>> Good datagram received!
 54.4074 -14/06/2006 12:49:18.007  000>> Receive Hello:ACK
 54.4075 -14/06/2006 12:49:18.107  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4076 -14/06/2006 12:49:18.107  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29874
 54.4077 -14/06/2006 12:49:18.107  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29875
 54.4078 -14/06/2006 12:49:18.107  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29876
 54.4079 -14/06/2006 12:49:18.107  000>> 98>>>>>>>>>>Part datagram received!
 54.4080 -14/06/2006 12:49:18.107  000>> 98>>>>>>>>>>Complete!
 54.4081 -14/06/2006 12:49:18.117  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30302
 54.4082 -14/06/2006 12:49:18.117  000>> Good datagram received!
 54.4083 -14/06/2006 12:49:18.117  000>> Listener:Received dictionary
 54.4084 -14/06/2006 12:49:18.117  000>> 90>>>>>>>>>>Part datagram received!
 54.4085 -14/06/2006 12:49:18.117  000>> 90>>>>>>>>>>Complete!
 54.4086 -14/06/2006 12:49:18.117  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30303
 54.4087 -14/06/2006 12:49:18.117  000>> Good datagram received!
 54.4088 -14/06/2006 12:49:18.117  000>> Listener:Received RIB
 54.4089 -14/06/2006 12:49:18.297  000>> 716>>>>>>>>>>Part datagram received!
 54.4090 -14/06/2006 12:49:18.297  000>> 716>>>>>>>>>>Complete!
 54.4091 -14/06/2006 12:49:18.297  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30304
 54.4092 -14/06/2006 12:49:18.297  000>> Good datagram received!
 54.4093 -14/06/2006 12:49:18.307  000>> Listener:Received Bundle Offer
 54.4094 -14/06/2006 12:49:18.307  000>> Listener:Sending Empty bundle request...
 54.4095 -14/06/2006 12:49:18.307  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4096 -14/06/2006 12:49:18.307  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29877
 54.4097 -14/06/2006 12:49:18.317  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30305
 54.4098 -14/06/2006 12:49:18.317  000>> Good datagram received!
 54.4099 -14/06/2006 12:49:18.317  000>> Initiator:No more requested bundles
 54.4100 -14/06/2006 12:49:18.317  000>> Listener(receiveBundles):We can restart connection...
 54.4101 -14/06/2006 12:49:18.437  000>> Hello Procedure:SENDSYN
 54.4102 -14/06/2006 12:49:18.437  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29878
 54.4103 -14/06/2006 12:49:18.497  000>> 91>>>>>>>>>>Part datagram received!
 54.4104 -14/06/2006 12:49:18.497  000>> 91>>>>>>>>>>Complete!
 54.4105 -14/06/2006 12:49:18.497  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30306
 54.4106 -14/06/2006 12:49:18.497  000>> Good datagram received!
 54.4107 -14/06/2006 12:49:18.497  000>> Receive Hello:SYNACK
 54.4108 -14/06/2006 12:49:18.497  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29879
 54.4109 -14/06/2006 12:49:18.597  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4110 -14/06/2006 12:49:18.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29880
 54.4111 -14/06/2006 12:49:18.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29881
 54.4112 -14/06/2006 12:49:18.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29882
 54.4113 -14/06/2006 12:49:18.607  000>> 98>>>>>>>>>>Part datagram received!
 54.4114 -14/06/2006 12:49:18.607  000>> 98>>>>>>>>>>Complete!
 54.4115 -14/06/2006 12:49:18.607  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30307
 54.4116 -14/06/2006 12:49:18.607  000>> Good datagram received!
 54.4117 -14/06/2006 12:49:18.618  000>> Listener:Received dictionary
 54.4118 -14/06/2006 12:49:18.618  000>> 90>>>>>>>>>>Part datagram received!
 54.4119 -14/06/2006 12:49:18.618  000>> 90>>>>>>>>>>Complete!
 54.4120 -14/06/2006 12:49:18.618  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30308
 54.4121 -14/06/2006 12:49:18.618  000>> Good datagram received!
 54.4122 -14/06/2006 12:49:18.618  000>> Listener:Received RIB
 54.4123 -14/06/2006 12:49:18.798  000>> 716>>>>>>>>>>Part datagram received!
 54.4124 -14/06/2006 12:49:18.798  000>> 716>>>>>>>>>>Complete!
 54.4125 -14/06/2006 12:49:18.798  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30309
 54.4126 -14/06/2006 12:49:18.798  000>> Good datagram received!
 54.4127 -14/06/2006 12:49:18.798  000>> Listener:Received Bundle Offer
 54.4128 -14/06/2006 12:49:18.798  000>> Listener:Sending Empty bundle request...
 54.4129 -14/06/2006 12:49:18.798  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4130 -14/06/2006 12:49:18.798  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29883
 54.4131 -14/06/2006 12:49:18.808  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30310
 54.4132 -14/06/2006 12:49:18.808  000>> Good datagram received!
 54.4133 -14/06/2006 12:49:18.808  000>> Initiator:No more requested bundles
 54.4134 -14/06/2006 12:49:18.808  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.4135 -14/06/2006 12:49:18.988  000>> 91>>>>>>>>>>Part datagram received!
 54.4136 -14/06/2006 12:49:18.988  000>> 91>>>>>>>>>>Complete!
 54.4137 -14/06/2006 12:49:18.988  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30311
 54.4138 -14/06/2006 12:49:18.988  000>> Good datagram received!
 54.4139 -14/06/2006 12:49:18.988  000>> Receive Hello:SYN
 54.4140 -14/06/2006 12:49:18.988  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29884
 54.4141 -14/06/2006 12:49:18.998  000>> 91>>>>>>>>>>Part datagram received!
 54.4142 -14/06/2006 12:49:19.008  000>> 91>>>>>>>>>>Complete!
 54.4143 -14/06/2006 12:49:19.008  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30312
 54.4144 -14/06/2006 12:49:19.008  000>> Good datagram received!
 54.4145 -14/06/2006 12:49:19.008  000>> Receive Hello:ACK
 54.4146 -14/06/2006 12:49:19.108  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4147 -14/06/2006 12:49:19.108  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29885
 54.4148 -14/06/2006 12:49:19.108  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29886
 54.4149 -14/06/2006 12:49:19.108  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29887
 54.4150 -14/06/2006 12:49:19.118  000>> 98>>>>>>>>>>Part datagram received!
 54.4151 -14/06/2006 12:49:19.118  000>> 98>>>>>>>>>>Complete!
 54.4152 -14/06/2006 12:49:19.118  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30313
 54.4153 -14/06/2006 12:49:19.118  000>> Good datagram received!
 54.4154 -14/06/2006 12:49:19.118  000>> Listener:Received dictionary
 54.4155 -14/06/2006 12:49:19.118  000>> 90>>>>>>>>>>Part datagram received!
 54.4156 -14/06/2006 12:49:19.118  000>> 90>>>>>>>>>>Complete!
 54.4157 -14/06/2006 12:49:19.118  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30314
 54.4158 -14/06/2006 12:49:19.118  000>> Good datagram received!
 54.4159 -14/06/2006 12:49:19.128  000>> Listener:Received RIB
 54.4160 -14/06/2006 12:49:19.298  000>> 716>>>>>>>>>>Part datagram received!
 54.4161 -14/06/2006 12:49:19.298  000>> 716>>>>>>>>>>Complete!
 54.4162 -14/06/2006 12:49:19.298  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30315
 54.4163 -14/06/2006 12:49:19.298  000>> Good datagram received!
 54.4164 -14/06/2006 12:49:19.309  000>> Listener:Received Bundle Offer
 54.4165 -14/06/2006 12:49:19.319  000>> Listener:Sending Empty bundle request...
 54.4166 -14/06/2006 12:49:19.319  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4167 -14/06/2006 12:49:19.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29888
 54.4168 -14/06/2006 12:49:19.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30316
 54.4169 -14/06/2006 12:49:19.319  000>> Good datagram received!
 54.4170 -14/06/2006 12:49:19.319  000>> Initiator:No more requested bundles
 54.4171 -14/06/2006 12:49:19.319  000>> Listener(receiveBundles):We can restart connection...
 54.4172 -14/06/2006 12:49:19.439  000>> Hello Procedure:SENDSYN
 54.4173 -14/06/2006 12:49:19.439  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29889
 54.4174 -14/06/2006 12:49:19.489  000>> 91>>>>>>>>>>Part datagram received!
 54.4175 -14/06/2006 12:49:19.499  000>> 91>>>>>>>>>>Complete!
 54.4176 -14/06/2006 12:49:19.499  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30317
 54.4177 -14/06/2006 12:49:19.499  000>> Good datagram received!
 54.4178 -14/06/2006 12:49:19.499  000>> Receive Hello:SYNACK
 54.4179 -14/06/2006 12:49:19.499  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29890
 54.4180 -14/06/2006 12:49:19.599  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4181 -14/06/2006 12:49:19.599  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29891
 54.4182 -14/06/2006 12:49:19.599  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29892
 54.4183 -14/06/2006 12:49:19.599  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29893
 54.4184 -14/06/2006 12:49:19.629  000>> 98>>>>>>>>>>Part datagram received!
 54.4185 -14/06/2006 12:49:19.629  000>> 98>>>>>>>>>>Complete!
 54.4186 -14/06/2006 12:49:19.629  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30318
 54.4187 -14/06/2006 12:49:19.629  000>> Good datagram received!
 54.4188 -14/06/2006 12:49:19.629  000>> Listener:Received dictionary
 54.4189 -14/06/2006 12:49:19.629  000>> 90>>>>>>>>>>Part datagram received!
 54.4190 -14/06/2006 12:49:19.629  000>> 90>>>>>>>>>>Complete!
 54.4191 -14/06/2006 12:49:19.629  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30319
 54.4192 -14/06/2006 12:49:19.639  000>> Good datagram received!
 54.4193 -14/06/2006 12:49:19.639  000>> Listener:Received RIB
 54.4194 -14/06/2006 12:49:19.799  000>> 716>>>>>>>>>>Part datagram received!
 54.4195 -14/06/2006 12:49:19.799  000>> 716>>>>>>>>>>Complete!
 54.4196 -14/06/2006 12:49:19.799  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30320
 54.4197 -14/06/2006 12:49:19.799  000>> Good datagram received!
 54.4198 -14/06/2006 12:49:19.819  000>> Listener:Received Bundle Offer
 54.4199 -14/06/2006 12:49:19.819  000>> Listener:Sending Empty bundle request...
 54.4200 -14/06/2006 12:49:19.819  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4201 -14/06/2006 12:49:19.819  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29894
 54.4202 -14/06/2006 12:49:19.819  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30321
 54.4203 -14/06/2006 12:49:19.819  000>> Good datagram received!
 54.4204 -14/06/2006 12:49:19.819  000>> Initiator:No more requested bundles
 54.4205 -14/06/2006 12:49:19.819  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.4206 -14/06/2006 12:49:19.989  000>> 91>>>>>>>>>>Part datagram received!
 54.4207 -14/06/2006 12:49:19.989  000>> 91>>>>>>>>>>Complete!
 54.4208 -14/06/2006 12:49:19.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30322
 54.4209 -14/06/2006 12:49:19.989  000>> Good datagram received!
 54.4210 -14/06/2006 12:49:19.989  000>> Receive Hello:SYN
 54.4211 -14/06/2006 12:49:19.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29895
 54.4212 -14/06/2006 12:49:20.010  000>> 91>>>>>>>>>>Part datagram received!
 54.4213 -14/06/2006 12:49:20.010  000>> 91>>>>>>>>>>Complete!
 54.4214 -14/06/2006 12:49:20.010  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30323
 54.4215 -14/06/2006 12:49:20.010  000>> Good datagram received!
 54.4216 -14/06/2006 12:49:20.010  000>> Receive Hello:ACK
 54.4217 -14/06/2006 12:49:20.110  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4218 -14/06/2006 12:49:20.110  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29896
 54.4219 -14/06/2006 12:49:20.110  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29897
 54.4220 -14/06/2006 12:49:20.110  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29898
 54.4221 -14/06/2006 12:49:20.120  000>> 98>>>>>>>>>>Part datagram received!
 54.4222 -14/06/2006 12:49:20.120  000>> 98>>>>>>>>>>Complete!
 54.4223 -14/06/2006 12:49:20.120  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30324
 54.4224 -14/06/2006 12:49:20.120  000>> Good datagram received!
 54.4225 -14/06/2006 12:49:20.120  000>> Listener:Received dictionary
 54.4226 -14/06/2006 12:49:20.130  000>> 90>>>>>>>>>>Part datagram received!
 54.4227 -14/06/2006 12:49:20.130  000>> 90>>>>>>>>>>Complete!
 54.4228 -14/06/2006 12:49:20.130  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30325
 54.4229 -14/06/2006 12:49:20.130  000>> Good datagram received!
 54.4230 -14/06/2006 12:49:20.130  000>> Listener:Received RIB
 54.4231 -14/06/2006 12:49:20.300  000>> 716>>>>>>>>>>Part datagram received!
 54.4232 -14/06/2006 12:49:20.300  000>> 716>>>>>>>>>>Complete!
 54.4233 -14/06/2006 12:49:20.300  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30326
 54.4234 -14/06/2006 12:49:20.300  000>> Good datagram received!
 54.4235 -14/06/2006 12:49:20.320  000>> Listener:Received Bundle Offer
 54.4236 -14/06/2006 12:49:20.320  000>> Listener:Sending Empty bundle request...
 54.4237 -14/06/2006 12:49:20.320  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4238 -14/06/2006 12:49:20.320  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29899
 54.4239 -14/06/2006 12:49:20.320  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30327
 54.4240 -14/06/2006 12:49:20.320  000>> Good datagram received!
 54.4241 -14/06/2006 12:49:20.320  000>> Initiator:No more requested bundles
 54.4242 -14/06/2006 12:49:20.320  000>> Listener(receiveBundles):We can restart connection...
 54.4243 -14/06/2006 12:49:20.420  000>> Hello Procedure:SENDSYN
 54.4244 -14/06/2006 12:49:20.420  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29900
 54.4245 -14/06/2006 12:49:20.510  000>> 91>>>>>>>>>>Part datagram received!
 54.4246 -14/06/2006 12:49:20.510  000>> 91>>>>>>>>>>Complete!
 54.4247 -14/06/2006 12:49:20.510  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30328
 54.4248 -14/06/2006 12:49:20.520  000>> Good datagram received!
 54.4249 -14/06/2006 12:49:20.520  000>> Receive Hello:SYNACK
 54.4250 -14/06/2006 12:49:20.520  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29901
 54.4251 -14/06/2006 12:49:20.620  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4252 -14/06/2006 12:49:20.620  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29902
 54.4253 -14/06/2006 12:49:20.620  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29903
 54.4254 -14/06/2006 12:49:20.620  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29904
 54.4255 -14/06/2006 12:49:20.650  000>> 98>>>>>>>>>>Part datagram received!
 54.4256 -14/06/2006 12:49:20.650  000>> 98>>>>>>>>>>Complete!
 54.4257 -14/06/2006 12:49:20.650  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30329
 54.4258 -14/06/2006 12:49:20.650  000>> Good datagram received!
 54.4259 -14/06/2006 12:49:20.650  000>> Listener:Received dictionary
 54.4260 -14/06/2006 12:49:20.650  000>> 90>>>>>>>>>>Part datagram received!
 54.4261 -14/06/2006 12:49:20.650  000>> 90>>>>>>>>>>Complete!
 54.4262 -14/06/2006 12:49:20.650  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30330
 54.4263 -14/06/2006 12:49:20.650  000>> Good datagram received!
 54.4264 -14/06/2006 12:49:20.650  000>> Listener:Received RIB
 54.4265 -14/06/2006 12:49:20.801  000>> 716>>>>>>>>>>Part datagram received!
 54.4266 -14/06/2006 12:49:20.801  000>> 716>>>>>>>>>>Complete!
 54.4267 -14/06/2006 12:49:20.801  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30331
 54.4268 -14/06/2006 12:49:20.801  000>> Good datagram received!
 54.4269 -14/06/2006 12:49:20.811  000>> Listener:Received Bundle Offer
 54.4270 -14/06/2006 12:49:20.811  000>> Listener:Sending Empty bundle request...
 54.4271 -14/06/2006 12:49:20.811  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4272 -14/06/2006 12:49:20.811  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29905
 54.4273 -14/06/2006 12:49:20.811  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30332
 54.4274 -14/06/2006 12:49:20.811  000>> Good datagram received!
 54.4275 -14/06/2006 12:49:20.811  000>> Initiator:No more requested bundles
 54.4276 -14/06/2006 12:49:20.811  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.4277 -14/06/2006 12:49:20.981  000>> 91>>>>>>>>>>Part datagram received!
 54.4278 -14/06/2006 12:49:20.981  000>> 91>>>>>>>>>>Complete!
 54.4279 -14/06/2006 12:49:20.981  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30333
 54.4280 -14/06/2006 12:49:20.991  000>> Good datagram received!
 54.4281 -14/06/2006 12:49:20.991  000>> Receive Hello:SYN
 54.4282 -14/06/2006 12:49:20.991  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29906
 54.4283 -14/06/2006 12:49:21.001  000>> 91>>>>>>>>>>Part datagram received!
 54.4284 -14/06/2006 12:49:21.001  000>> 91>>>>>>>>>>Complete!
 54.4285 -14/06/2006 12:49:21.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30334
 54.4286 -14/06/2006 12:49:21.001  000>> Good datagram received!
 54.4287 -14/06/2006 12:49:21.011  000>> Receive Hello:ACK
 54.4288 -14/06/2006 12:49:21.111  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4289 -14/06/2006 12:49:21.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29907
 54.4290 -14/06/2006 12:49:21.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29908
 54.4291 -14/06/2006 12:49:21.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29909
 54.4292 -14/06/2006 12:49:21.111  000>> 188>>>>>>>>>>Part datagram received!
 54.4293 -14/06/2006 12:49:21.111  000>> 188>>>>>>>>>>Complete!
 54.4294 -14/06/2006 12:49:21.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30335
 54.4295 -14/06/2006 12:49:21.111  000>> Good datagram received!
 54.4296 -14/06/2006 12:49:21.111  000>> Listener:Received dictionary
 54.4297 -14/06/2006 12:49:21.121  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30336
 54.4298 -14/06/2006 12:49:21.121  000>> Good datagram received!
 54.4299 -14/06/2006 12:49:21.121  000>> Listener:Received RIB
 54.4300 -14/06/2006 12:49:21.121  000>> 638>>>>>>>>>>Part datagram received!
 54.4301 -14/06/2006 12:49:21.121  000>> 638>>>>>>>>>>Complete!
 54.4302 -14/06/2006 12:49:21.121  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30337
 54.4303 -14/06/2006 12:49:21.121  000>> Good datagram received!
 54.4304 -14/06/2006 12:49:21.141  000>> Listener:Received Bundle Offer
 54.4305 -14/06/2006 12:49:21.141  000>> Listener:Sending Empty bundle request...
 54.4306 -14/06/2006 12:49:21.141  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4307 -14/06/2006 12:49:21.141  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29910
 54.4308 -14/06/2006 12:49:21.141  000>> 0>>>>>>>>>>Part datagram received!
 54.4309 -14/06/2006 12:49:21.141  000>> 0>>>>>>>>>>Part datagram received!
 54.4310 -14/06/2006 12:49:21.221  000>> 78>>>>>>>>>>Part datagram received!
 54.4311 -14/06/2006 12:49:21.221  000>> 78>>>>>>>>>>Complete!
 54.4312 -14/06/2006 12:49:21.221  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30338
 54.4313 -14/06/2006 12:49:21.231  000>> Good datagram received!
 54.4314 -14/06/2006 12:49:21.231  000>> Initiator:No more requested bundles
 54.4315 -14/06/2006 12:49:21.231  000>> Listener(receiveBundles):We can restart connection...
 54.4316 -14/06/2006 12:49:21.331  000>> Hello Procedure:SENDSYN
 54.4317 -14/06/2006 12:49:21.331  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29911
 54.4318 -14/06/2006 12:49:21.442  000>> 91>>>>>>>>>>Part datagram received!
 54.4319 -14/06/2006 12:49:21.442  000>> 91>>>>>>>>>>Complete!
 54.4320 -14/06/2006 12:49:21.442  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30339
 54.4321 -14/06/2006 12:49:21.442  000>> Good datagram received!
 54.4322 -14/06/2006 12:49:21.442  000>> Receive Hello:SYNACK
 54.4323 -14/06/2006 12:49:21.442  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29912
 54.4324 -14/06/2006 12:49:21.542  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4325 -14/06/2006 12:49:21.542  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29913
 54.4326 -14/06/2006 12:49:21.542  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29914
 54.4327 -14/06/2006 12:49:21.542  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29915
 54.4328 -14/06/2006 12:49:21.562  000>> 98>>>>>>>>>>Part datagram received!
 54.4329 -14/06/2006 12:49:21.562  000>> 98>>>>>>>>>>Complete!
 54.4330 -14/06/2006 12:49:21.572  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30340
 54.4331 -14/06/2006 12:49:21.572  000>> Good datagram received!
 54.4332 -14/06/2006 12:49:21.572  000>> Listener:Received dictionary
 54.4333 -14/06/2006 12:49:21.572  000>> 90>>>>>>>>>>Part datagram received!
 54.4334 -14/06/2006 12:49:21.572  000>> 90>>>>>>>>>>Complete!
 54.4335 -14/06/2006 12:49:21.572  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30341
 54.4336 -14/06/2006 12:49:21.572  000>> Good datagram received!
 54.4337 -14/06/2006 12:49:21.572  000>> Listener:Received RIB
 54.4338 -14/06/2006 12:49:21.702  000>> 716>>>>>>>>>>Part datagram received!
 54.4339 -14/06/2006 12:49:21.702  000>> 716>>>>>>>>>>Complete!
 54.4340 -14/06/2006 12:49:21.702  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30342
 54.4341 -14/06/2006 12:49:21.702  000>> Good datagram received!
 54.4342 -14/06/2006 12:49:21.722  000>> Listener:Received Bundle Offer
 54.4343 -14/06/2006 12:49:21.722  000>> Listener:Sending Empty bundle request...
 54.4344 -14/06/2006 12:49:21.722  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4345 -14/06/2006 12:49:21.722  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29916
 54.4346 -14/06/2006 12:49:21.722  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30343
 54.4347 -14/06/2006 12:49:21.722  000>> Good datagram received!
 54.4348 -14/06/2006 12:49:21.722  000>> Initiator:No more requested bundles
 54.4349 -14/06/2006 12:49:21.722  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.4350 -14/06/2006 12:49:21.852  000>> 91>>>>>>>>>>Part datagram received!
 54.4351 -14/06/2006 12:49:21.862  000>> 91>>>>>>>>>>Complete!
 54.4352 -14/06/2006 12:49:21.862  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30344
 54.4353 -14/06/2006 12:49:21.862  000>> Good datagram received!
 54.4354 -14/06/2006 12:49:21.862  000>> Receive Hello:SYN
 54.4355 -14/06/2006 12:49:21.862  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29917
 54.4356 -14/06/2006 12:49:21.882  000>> 91>>>>>>>>>>Part datagram received!
 54.4357 -14/06/2006 12:49:21.882  000>> 91>>>>>>>>>>Complete!
 54.4358 -14/06/2006 12:49:21.882  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30345
 54.4359 -14/06/2006 12:49:21.882  000>> Good datagram received!
 54.4360 -14/06/2006 12:49:21.882  000>> Receive Hello:ACK
 54.4361 -14/06/2006 12:49:21.982  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4362 -14/06/2006 12:49:21.982  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29918
 54.4363 -14/06/2006 12:49:21.992  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29919
 54.4364 -14/06/2006 12:49:21.992  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29920
 54.4365 -14/06/2006 12:49:21.992  000>> 98>>>>>>>>>>Part datagram received!
 54.4366 -14/06/2006 12:49:21.992  000>> 98>>>>>>>>>>Complete!
 54.4367 -14/06/2006 12:49:21.992  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30346
 54.4368 -14/06/2006 12:49:21.992  000>> Good datagram received!
 54.4369 -14/06/2006 12:49:21.992  000>> Listener:Received dictionary
 54.4370 -14/06/2006 12:49:22.002  000>> 90>>>>>>>>>>Part datagram received!
 54.4371 -14/06/2006 12:49:22.002  000>> 90>>>>>>>>>>Complete!
 54.4372 -14/06/2006 12:49:22.002  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30347
 54.4373 -14/06/2006 12:49:22.002  000>> Good datagram received!
 54.4374 -14/06/2006 12:49:22.002  000>> Listener:Received RIB
 54.4375 -14/06/2006 12:49:22.103  000>> 716>>>>>>>>>>Part datagram received!
 54.4376 -14/06/2006 12:49:22.103  000>> 716>>>>>>>>>>Complete!
 54.4377 -14/06/2006 12:49:22.103  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30348
 54.4378 -14/06/2006 12:49:22.103  000>> Good datagram received!
 54.4379 -14/06/2006 12:49:22.123  000>> Listener:Received Bundle Offer
 54.4380 -14/06/2006 12:49:22.123  000>> Listener:Sending Empty bundle request...
 54.4381 -14/06/2006 12:49:22.123  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4382 -14/06/2006 12:49:22.123  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29921
 54.4383 -14/06/2006 12:49:22.123  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30349
 54.4384 -14/06/2006 12:49:22.123  000>> Good datagram received!
 54.4385 -14/06/2006 12:49:22.123  000>> Initiator:No more requested bundles
 54.4386 -14/06/2006 12:49:22.123  000>> Listener(receiveBundles):We can restart connection...
 54.4387 -14/06/2006 12:49:22.223  000>> Hello Procedure:SENDSYN
 54.4388 -14/06/2006 12:49:22.223  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29922
 54.4389 -14/06/2006 12:49:22.303  000>> 91>>>>>>>>>>Part datagram received!
 54.4390 -14/06/2006 12:49:22.303  000>> 91>>>>>>>>>>Complete!
 54.4391 -14/06/2006 12:49:22.303  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30350
 54.4392 -14/06/2006 12:49:22.303  000>> Good datagram received!
 54.4393 -14/06/2006 12:49:22.303  000>> Receive Hello:SYNACK
 54.4394 -14/06/2006 12:49:22.303  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29923
 54.4395 -14/06/2006 12:49:22.403  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4396 -14/06/2006 12:49:22.403  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29924
 54.4397 -14/06/2006 12:49:22.403  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29925
 54.4398 -14/06/2006 12:49:22.413  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29926
 54.4399 -14/06/2006 12:49:22.453  000>> 98>>>>>>>>>>Part datagram received!
 54.4400 -14/06/2006 12:49:22.453  000>> 98>>>>>>>>>>Complete!
 54.4401 -14/06/2006 12:49:22.453  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30351
 54.4402 -14/06/2006 12:49:22.453  000>> Good datagram received!
 54.4403 -14/06/2006 12:49:22.453  000>> Listener:Received dictionary
 54.4404 -14/06/2006 12:49:22.463  000>> 90>>>>>>>>>>Part datagram received!
 54.4405 -14/06/2006 12:49:22.463  000>> 90>>>>>>>>>>Complete!
 54.4406 -14/06/2006 12:49:22.463  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30352
 54.4407 -14/06/2006 12:49:22.463  000>> Good datagram received!
 54.4408 -14/06/2006 12:49:22.463  000>> Listener:Received RIB
 54.4409 -14/06/2006 12:49:22.603  000>> 716>>>>>>>>>>Part datagram received!
 54.4410 -14/06/2006 12:49:22.603  000>> 716>>>>>>>>>>Complete!
 54.4411 -14/06/2006 12:49:22.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30353
 54.4412 -14/06/2006 12:49:22.613  000>> Good datagram received!
 54.4413 -14/06/2006 12:49:22.623  000>> Listener:Received Bundle Offer
 54.4414 -14/06/2006 12:49:22.623  000>> Listener:Sending Empty bundle request...
 54.4415 -14/06/2006 12:49:22.623  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4416 -14/06/2006 12:49:22.623  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29927
 54.4417 -14/06/2006 12:49:22.623  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30354
 54.4418 -14/06/2006 12:49:22.623  000>> Good datagram received!
 54.4419 -14/06/2006 12:49:22.633  000>> Initiator:No more requested bundles
 54.4420 -14/06/2006 12:49:22.633  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.4421 -14/06/2006 12:49:22.743  000>> 91>>>>>>>>>>Part datagram received!
 54.4422 -14/06/2006 12:49:22.743  000>> 91>>>>>>>>>>Complete!
 54.4423 -14/06/2006 12:49:22.743  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30355
 54.4424 -14/06/2006 12:49:22.753  000>> Good datagram received!
 54.4425 -14/06/2006 12:49:22.753  000>> Receive Hello:SYN
 54.4426 -14/06/2006 12:49:22.753  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29928
 54.4427 -14/06/2006 12:49:22.773  000>> 91>>>>>>>>>>Part datagram received!
 54.4428 -14/06/2006 12:49:22.773  000>> 91>>>>>>>>>>Complete!
 54.4429 -14/06/2006 12:49:22.773  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30356
 54.4430 -14/06/2006 12:49:22.773  000>> Good datagram received!
 54.4431 -14/06/2006 12:49:22.773  000>> Receive Hello:ACK
 54.4432 -14/06/2006 12:49:22.874  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4433 -14/06/2006 12:49:22.874  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29929
 54.4434 -14/06/2006 12:49:22.874  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29930
 54.4435 -14/06/2006 12:49:22.874  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29931
 54.4436 -14/06/2006 12:49:22.884  000>> 98>>>>>>>>>>Part datagram received!
 54.4437 -14/06/2006 12:49:22.884  000>> 98>>>>>>>>>>Complete!
 54.4438 -14/06/2006 12:49:22.884  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30357
 54.4439 -14/06/2006 12:49:22.884  000>> Good datagram received!
 54.4440 -14/06/2006 12:49:22.884  000>> Listener:Received dictionary
 54.4441 -14/06/2006 12:49:22.884  000>> 90>>>>>>>>>>Part datagram received!
 54.4442 -14/06/2006 12:49:22.884  000>> 90>>>>>>>>>>Complete!
 54.4443 -14/06/2006 12:49:22.884  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30358
 54.4444 -14/06/2006 12:49:22.884  000>> Good datagram received!
 54.4445 -14/06/2006 12:49:22.894  000>> Listener:Received RIB
 54.4446 -14/06/2006 12:49:23.004  000>> 716>>>>>>>>>>Part datagram received!
 54.4447 -14/06/2006 12:49:23.014  000>> 716>>>>>>>>>>Complete!
 54.4448 -14/06/2006 12:49:23.014  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30359
 54.4449 -14/06/2006 12:49:23.014  000>> Good datagram received!
 54.4450 -14/06/2006 12:49:23.024  000>> Listener:Received Bundle Offer
 54.4451 -14/06/2006 12:49:23.024  000>> Listener:Sending Empty bundle request...
 54.4452 -14/06/2006 12:49:23.024  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4453 -14/06/2006 12:49:23.024  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29932
 54.4454 -14/06/2006 12:49:23.024  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30360
 54.4455 -14/06/2006 12:49:23.024  000>> Good datagram received!
 54.4456 -14/06/2006 12:49:23.034  000>> Initiator:No more requested bundles
 54.4457 -14/06/2006 12:49:23.034  000>> Listener(receiveBundles):We can restart connection...
 54.4458 -14/06/2006 12:49:23.134  000>> Hello Procedure:SENDSYN
 54.4459 -14/06/2006 12:49:23.134  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29933
 54.4460 -14/06/2006 12:49:23.204  000>> 91>>>>>>>>>>Part datagram received!
 54.4461 -14/06/2006 12:49:23.204  000>> 91>>>>>>>>>>Complete!
 54.4462 -14/06/2006 12:49:23.204  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30361
 54.4463 -14/06/2006 12:49:23.204  000>> Good datagram received!
 54.4464 -14/06/2006 12:49:23.204  000>> Receive Hello:SYNACK
 54.4465 -14/06/2006 12:49:23.204  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29934
 54.4466 -14/06/2006 12:49:23.304  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4467 -14/06/2006 12:49:23.304  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29935
 54.4468 -14/06/2006 12:49:23.304  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29936
 54.4469 -14/06/2006 12:49:23.304  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29937
 54.4470 -14/06/2006 12:49:23.334  000>> 98>>>>>>>>>>Part datagram received!
 54.4471 -14/06/2006 12:49:23.344  000>> 98>>>>>>>>>>Complete!
 54.4472 -14/06/2006 12:49:23.344  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30362
 54.4473 -14/06/2006 12:49:23.344  000>> Good datagram received!
 54.4474 -14/06/2006 12:49:23.344  000>> Listener:Received dictionary
 54.4475 -14/06/2006 12:49:23.344  000>> 90>>>>>>>>>>Part datagram received!
 54.4476 -14/06/2006 12:49:23.344  000>> 90>>>>>>>>>>Complete!
 54.4477 -14/06/2006 12:49:23.344  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30363
 54.4478 -14/06/2006 12:49:23.344  000>> Good datagram received!
 54.4479 -14/06/2006 12:49:23.344  000>> Listener:Received RIB
 54.4480 -14/06/2006 12:49:23.515  000>> 716>>>>>>>>>>Part datagram received!
 54.4481 -14/06/2006 12:49:23.515  000>> 716>>>>>>>>>>Complete!
 54.4482 -14/06/2006 12:49:23.515  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30364
 54.4483 -14/06/2006 12:49:23.515  000>> Good datagram received!
 54.4484 -14/06/2006 12:49:23.525  000>> Listener:Received Bundle Offer
 54.4485 -14/06/2006 12:49:23.525  000>> Listener:Sending Empty bundle request...
 54.4486 -14/06/2006 12:49:23.525  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4487 -14/06/2006 12:49:23.525  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29938
 54.4488 -14/06/2006 12:49:23.535  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30365
 54.4489 -14/06/2006 12:49:23.535  000>> Good datagram received!
 54.4490 -14/06/2006 12:49:23.535  000>> Initiator:No more requested bundles
 54.4491 -14/06/2006 12:49:23.535  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.4492 -14/06/2006 12:49:23.645  000>> 91>>>>>>>>>>Part datagram received!
 54.4493 -14/06/2006 12:49:23.645  000>> 91>>>>>>>>>>Complete!
 54.4494 -14/06/2006 12:49:23.645  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30366
 54.4495 -14/06/2006 12:49:23.655  000>> Good datagram received!
 54.4496 -14/06/2006 12:49:23.655  000>> Receive Hello:SYN
 54.4497 -14/06/2006 12:49:23.655  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29939
 54.4498 -14/06/2006 12:49:23.675  000>> 91>>>>>>>>>>Part datagram received!
 54.4499 -14/06/2006 12:49:23.675  000>> 91>>>>>>>>>>Complete!
 54.4500 -14/06/2006 12:49:23.675  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30367
 54.4501 -14/06/2006 12:49:23.675  000>> Good datagram received!
 54.4502 -14/06/2006 12:49:23.675  000>> Receive Hello:ACK
 54.4503 -14/06/2006 12:49:23.775  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4504 -14/06/2006 12:49:23.775  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29940
 54.4505 -14/06/2006 12:49:23.775  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29941
 54.4506 -14/06/2006 12:49:23.775  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29942
 54.4507 -14/06/2006 12:49:23.785  000>> 98>>>>>>>>>>Part datagram received!
 54.4508 -14/06/2006 12:49:23.785  000>> 98>>>>>>>>>>Complete!
 54.4509 -14/06/2006 12:49:23.785  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30368
 54.4510 -14/06/2006 12:49:23.785  000>> Good datagram received!
 54.4511 -14/06/2006 12:49:23.785  000>> Listener:Received dictionary
 54.4512 -14/06/2006 12:49:23.785  000>> 90>>>>>>>>>>Part datagram received!
 54.4513 -14/06/2006 12:49:23.785  000>> 90>>>>>>>>>>Complete!
 54.4514 -14/06/2006 12:49:23.785  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30369
 54.4515 -14/06/2006 12:49:23.785  000>> Good datagram received!
 54.4516 -14/06/2006 12:49:23.785  000>> Listener:Received RIB
 54.4517 -14/06/2006 12:49:23.915  000>> 716>>>>>>>>>>Part datagram received!
 54.4518 -14/06/2006 12:49:23.915  000>> 716>>>>>>>>>>Complete!
 54.4519 -14/06/2006 12:49:23.915  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30370
 54.4520 -14/06/2006 12:49:23.915  000>> Good datagram received!
 54.4521 -14/06/2006 12:49:23.925  000>> Listener:Received Bundle Offer
 54.4522 -14/06/2006 12:49:23.925  000>> Listener:Sending Empty bundle request...
 54.4523 -14/06/2006 12:49:23.925  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4524 -14/06/2006 12:49:23.935  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29943
 54.4525 -14/06/2006 12:49:23.935  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30371
 54.4526 -14/06/2006 12:49:23.935  000>> Good datagram received!
 54.4527 -14/06/2006 12:49:23.935  000>> Initiator:No more requested bundles
 54.4528 -14/06/2006 12:49:23.935  000>> Listener(receiveBundles):We can restart connection...
 54.4529 -14/06/2006 12:49:24.035  000>> Hello Procedure:SENDSYN
 54.4530 -14/06/2006 12:49:24.035  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29944
 54.4531 -14/06/2006 12:49:24.105  000>> 91>>>>>>>>>>Part datagram received!
 54.4532 -14/06/2006 12:49:24.105  000>> 91>>>>>>>>>>Complete!
 54.4533 -14/06/2006 12:49:24.105  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30372
 54.4534 -14/06/2006 12:49:24.105  000>> Good datagram received!
 54.4535 -14/06/2006 12:49:24.105  000>> Receive Hello:SYNACK
 54.4536 -14/06/2006 12:49:24.105  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29945
 54.4537 -14/06/2006 12:49:24.206  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4538 -14/06/2006 12:49:24.206  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29946
 54.4539 -14/06/2006 12:49:24.206  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29947
 54.4540 -14/06/2006 12:49:24.206  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29948
 54.4541 -14/06/2006 12:49:24.226  000>> 98>>>>>>>>>>Part datagram received!
 54.4542 -14/06/2006 12:49:24.236  000>> 98>>>>>>>>>>Complete!
 54.4543 -14/06/2006 12:49:24.236  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30373
 54.4544 -14/06/2006 12:49:24.236  000>> Good datagram received!
 54.4545 -14/06/2006 12:49:24.236  000>> Listener:Received dictionary
 54.4546 -14/06/2006 12:49:24.236  000>> 90>>>>>>>>>>Part datagram received!
 54.4547 -14/06/2006 12:49:24.236  000>> 90>>>>>>>>>>Complete!
 54.4548 -14/06/2006 12:49:24.236  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30374
 54.4549 -14/06/2006 12:49:24.236  000>> Good datagram received!
 54.4550 -14/06/2006 12:49:24.246  000>> Listener:Received RIB
 54.4551 -14/06/2006 12:49:24.416  000>> 716>>>>>>>>>>Part datagram received!
 54.4552 -14/06/2006 12:49:24.416  000>> 716>>>>>>>>>>Complete!
 54.4553 -14/06/2006 12:49:24.416  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30375
 54.4554 -14/06/2006 12:49:24.416  000>> Good datagram received!
 54.4555 -14/06/2006 12:49:24.436  000>> Listener:Received Bundle Offer
 54.4556 -14/06/2006 12:49:24.436  000>> Listener:Sending Empty bundle request...
 54.4557 -14/06/2006 12:49:24.436  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4558 -14/06/2006 12:49:24.436  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29949
 54.4559 -14/06/2006 12:49:24.436  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30376
 54.4560 -14/06/2006 12:49:24.436  000>> Good datagram received!
 54.4561 -14/06/2006 12:49:24.436  000>> Initiator:No more requested bundles
 54.4562 -14/06/2006 12:49:24.436  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.4563 -14/06/2006 12:49:24.556  000>> 91>>>>>>>>>>Part datagram received!
 54.4564 -14/06/2006 12:49:24.556  000>> 91>>>>>>>>>>Complete!
 54.4565 -14/06/2006 12:49:24.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30377
 54.4566 -14/06/2006 12:49:24.566  000>> Good datagram received!
 54.4567 -14/06/2006 12:49:24.566  000>> Receive Hello:SYN
 54.4568 -14/06/2006 12:49:24.566  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29950
 54.4569 -14/06/2006 12:49:24.586  000>> 91>>>>>>>>>>Part datagram received!
 54.4570 -14/06/2006 12:49:24.586  000>> 91>>>>>>>>>>Complete!
 54.4571 -14/06/2006 12:49:24.586  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30378
 54.4572 -14/06/2006 12:49:24.586  000>> Good datagram received!
 54.4573 -14/06/2006 12:49:24.586  000>> Receive Hello:ACK
 54.4574 -14/06/2006 12:49:24.686  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4575 -14/06/2006 12:49:24.686  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29951
 54.4576 -14/06/2006 12:49:24.686  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29952
 54.4577 -14/06/2006 12:49:24.686  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29953
 54.4578 -14/06/2006 12:49:24.686  000>> 98>>>>>>>>>>Part datagram received!
 54.4579 -14/06/2006 12:49:24.696  000>> 98>>>>>>>>>>Complete!
 54.4580 -14/06/2006 12:49:24.696  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30379
 54.4581 -14/06/2006 12:49:24.696  000>> Good datagram received!
 54.4582 -14/06/2006 12:49:24.696  000>> Listener:Received dictionary
 54.4583 -14/06/2006 12:49:24.696  000>> 90>>>>>>>>>>Part datagram received!
 54.4584 -14/06/2006 12:49:24.696  000>> 90>>>>>>>>>>Complete!
 54.4585 -14/06/2006 12:49:24.696  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30380
 54.4586 -14/06/2006 12:49:24.706  000>> Good datagram received!
 54.4587 -14/06/2006 12:49:24.706  000>> Listener:Received RIB
 54.4588 -14/06/2006 12:49:24.816  000>> 716>>>>>>>>>>Part datagram received!
 54.4589 -14/06/2006 12:49:24.816  000>> 716>>>>>>>>>>Complete!
 54.4590 -14/06/2006 12:49:24.816  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30381
 54.4591 -14/06/2006 12:49:24.816  000>> Good datagram received!
 54.4592 -14/06/2006 12:49:24.826  000>> Listener:Received Bundle Offer
 54.4593 -14/06/2006 12:49:24.836  000>> Listener:Sending Empty bundle request...
 54.4594 -14/06/2006 12:49:24.836  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4595 -14/06/2006 12:49:24.836  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29954
 54.4596 -14/06/2006 12:49:24.836  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30382
 54.4597 -14/06/2006 12:49:24.836  000>> Good datagram received!
 54.4598 -14/06/2006 12:49:24.836  000>> Initiator:No more requested bundles
 54.4599 -14/06/2006 12:49:24.836  000>> Listener(receiveBundles):We can restart connection...
 54.4600 -14/06/2006 12:49:24.937  000>> Hello Procedure:SENDSYN
 54.4601 -14/06/2006 12:49:24.937  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29955
 54.4602 -14/06/2006 12:49:24.997  000>> 91>>>>>>>>>>Part datagram received!
 54.4603 -14/06/2006 12:49:24.997  000>> 91>>>>>>>>>>Complete!
 54.4604 -14/06/2006 12:49:25.007  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30383
 54.4605 -14/06/2006 12:49:25.007  000>> Good datagram received!
 54.4606 -14/06/2006 12:49:25.007  000>> Receive Hello:SYNACK
 54.4607 -14/06/2006 12:49:25.007  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29956
 54.4608 -14/06/2006 12:49:25.107  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4609 -14/06/2006 12:49:25.107  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29957
 54.4610 -14/06/2006 12:49:25.107  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29958
 54.4611 -14/06/2006 12:49:25.107  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29959
 54.4612 -14/06/2006 12:49:25.117  000>> 98>>>>>>>>>>Part datagram received!
 54.4613 -14/06/2006 12:49:25.127  000>> 98>>>>>>>>>>Complete!
 54.4614 -14/06/2006 12:49:25.127  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30384
 54.4615 -14/06/2006 12:49:25.127  000>> Good datagram received!
 54.4616 -14/06/2006 12:49:25.127  000>> Listener:Received dictionary
 54.4617 -14/06/2006 12:49:25.127  000>> 90>>>>>>>>>>Part datagram received!
 54.4618 -14/06/2006 12:49:25.127  000>> 90>>>>>>>>>>Complete!
 54.4619 -14/06/2006 12:49:25.127  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30385
 54.4620 -14/06/2006 12:49:25.127  000>> Good datagram received!
 54.4621 -14/06/2006 12:49:25.127  000>> Listener:Received RIB
 54.4622 -14/06/2006 12:49:25.317  000>> 716>>>>>>>>>>Part datagram received!
 54.4623 -14/06/2006 12:49:25.317  000>> 716>>>>>>>>>>Complete!
 54.4624 -14/06/2006 12:49:25.317  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30386
 54.4625 -14/06/2006 12:49:25.317  000>> Good datagram received!
 54.4626 -14/06/2006 12:49:25.337  000>> Listener:Received Bundle Offer
 54.4627 -14/06/2006 12:49:25.337  000>> Listener:Sending Empty bundle request...
 54.4628 -14/06/2006 12:49:25.337  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4629 -14/06/2006 12:49:25.337  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29960
 54.4630 -14/06/2006 12:49:25.337  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30387
 54.4631 -14/06/2006 12:49:25.337  000>> Good datagram received!
 54.4632 -14/06/2006 12:49:25.337  000>> Initiator:No more requested bundles
 54.4633 -14/06/2006 12:49:25.337  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.4634 -14/06/2006 12:49:25.457  000>> 91>>>>>>>>>>Part datagram received!
 54.4635 -14/06/2006 12:49:25.467  000>> 91>>>>>>>>>>Complete!
 54.4636 -14/06/2006 12:49:25.467  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30388
 54.4637 -14/06/2006 12:49:25.467  000>> Good datagram received!
 54.4638 -14/06/2006 12:49:25.467  000>> Receive Hello:SYN
 54.4639 -14/06/2006 12:49:25.467  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29961
 54.4640 -14/06/2006 12:49:25.487  000>> 91>>>>>>>>>>Part datagram received!
 54.4641 -14/06/2006 12:49:25.487  000>> 91>>>>>>>>>>Complete!
 54.4642 -14/06/2006 12:49:25.487  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30389
 54.4643 -14/06/2006 12:49:25.487  000>> Good datagram received!
 54.4644 -14/06/2006 12:49:25.487  000>> Receive Hello:ACK
 54.4645 -14/06/2006 12:49:25.588  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4646 -14/06/2006 12:49:25.588  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29962
 54.4647 -14/06/2006 12:49:25.588  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29963
 54.4648 -14/06/2006 12:49:25.588  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29964
 54.4649 -14/06/2006 12:49:25.588  000>> 98>>>>>>>>>>Part datagram received!
 54.4650 -14/06/2006 12:49:25.588  000>> 98>>>>>>>>>>Complete!
 54.4651 -14/06/2006 12:49:25.588  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30390
 54.4652 -14/06/2006 12:49:25.588  000>> Good datagram received!
 54.4653 -14/06/2006 12:49:25.588  000>> Listener:Received dictionary
 54.4654 -14/06/2006 12:49:25.598  000>> 90>>>>>>>>>>Part datagram received!
 54.4655 -14/06/2006 12:49:25.598  000>> 90>>>>>>>>>>Complete!
 54.4656 -14/06/2006 12:49:25.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30391
 54.4657 -14/06/2006 12:49:25.598  000>> Good datagram received!
 54.4658 -14/06/2006 12:49:25.598  000>> Listener:Received RIB
 54.4659 -14/06/2006 12:49:25.718  000>> 716>>>>>>>>>>Part datagram received!
 54.4660 -14/06/2006 12:49:25.718  000>> 716>>>>>>>>>>Complete!
 54.4661 -14/06/2006 12:49:25.718  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30392
 54.4662 -14/06/2006 12:49:25.718  000>> Good datagram received!
 54.4663 -14/06/2006 12:49:25.728  000>> Listener:Received Bundle Offer
 54.4664 -14/06/2006 12:49:25.728  000>> Listener:Sending Empty bundle request...
 54.4665 -14/06/2006 12:49:25.728  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4666 -14/06/2006 12:49:25.728  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29965
 54.4667 -14/06/2006 12:49:25.728  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30393
 54.4668 -14/06/2006 12:49:25.728  000>> Good datagram received!
 54.4669 -14/06/2006 12:49:25.728  000>> Initiator:No more requested bundles
 54.4670 -14/06/2006 12:49:25.728  000>> Listener(receiveBundles):We can restart connection...
 54.4671 -14/06/2006 12:49:25.828  000>> Hello Procedure:SENDSYN
 54.4672 -14/06/2006 12:49:25.828  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29966
 54.4673 -14/06/2006 12:49:25.918  000>> 91>>>>>>>>>>Part datagram received!
 54.4674 -14/06/2006 12:49:25.918  000>> 91>>>>>>>>>>Complete!
 54.4675 -14/06/2006 12:49:25.918  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30394
 54.4676 -14/06/2006 12:49:25.918  000>> Good datagram received!
 54.4677 -14/06/2006 12:49:25.918  000>> Receive Hello:SYNACK
 54.4678 -14/06/2006 12:49:25.918  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29967
 54.4679 -14/06/2006 12:49:26.018  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4680 -14/06/2006 12:49:26.018  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29968
 54.4681 -14/06/2006 12:49:26.018  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29969
 54.4682 -14/06/2006 12:49:26.018  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29970
 54.4683 -14/06/2006 12:49:26.158  000>> 78>>>>>>>>>>Part datagram received!
 54.4684 -14/06/2006 12:49:26.158  000>> 78>>>>>>>>>>Complete!
 54.4685 -14/06/2006 12:49:26.158  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30395
 54.4686 -14/06/2006 12:49:26.158  000>> Good datagram received!
 54.4687 -14/06/2006 12:49:26.158  000>> Initiator:No more requested bundles
 54.4688 -14/06/2006 12:49:26.158  000>> Initiator:But we can not restart connection...
 54.4689 -14/06/2006 12:49:26.319  000>> 826>>>>>>>>>>Part datagram received!
 54.4690 -14/06/2006 12:49:26.319  000>> 826>>>>>>>>>>Complete!
 54.4691 -14/06/2006 12:49:26.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30396
 54.4692 -14/06/2006 12:49:26.319  000>> Good datagram received!
 54.4693 -14/06/2006 12:49:26.319  000>> Listener:Received dictionary
 54.4694 -14/06/2006 12:49:26.329  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30397
 54.4695 -14/06/2006 12:49:26.329  000>> Good datagram received!
 54.4696 -14/06/2006 12:49:26.329  000>> Listener:Received RIB
 54.4697 -14/06/2006 12:49:26.329  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30398
 54.4698 -14/06/2006 12:49:26.329  000>> Good datagram received!
 54.4699 -14/06/2006 12:49:26.339  000>> Listener:Received Bundle Offer
 54.4700 -14/06/2006 12:49:26.339  000>> Listener:Sending Empty bundle request...
 54.4701 -14/06/2006 12:49:26.339  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.4702 -14/06/2006 12:49:26.349  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29971
 54.4703 -14/06/2006 12:49:26.479  000>> 91>>>>>>>>>>Part datagram received!
 54.4704 -14/06/2006 12:49:26.479  000>> 91>>>>>>>>>>Complete!
 54.4705 -14/06/2006 12:49:26.489  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30399
 54.4706 -14/06/2006 12:49:26.489  000>> Good datagram received!
 54.4707 -14/06/2006 12:49:26.489  000>> Receive Hello:SYN
 54.4708 -14/06/2006 12:49:26.489  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29972
 54.4709 -14/06/2006 12:49:26.519  000>> 91>>>>>>>>>>Part datagram received!
 54.4710 -14/06/2006 12:49:26.519  000>> 91>>>>>>>>>>Complete!
 54.4711 -14/06/2006 12:49:26.519  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30400
 54.4712 -14/06/2006 12:49:26.519  000>> Good datagram received!
 54.4713 -14/06/2006 12:49:26.519  000>> Receive Hello:ACK
 54.4714 -14/06/2006 12:49:26.619  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4715 -14/06/2006 12:49:26.619  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29973
 54.4716 -14/06/2006 12:49:26.619  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29974
 54.4717 -14/06/2006 12:49:26.619  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29975
 54.4718 -14/06/2006 12:49:26.639  000>> 98>>>>>>>>>>Part datagram received!
 54.4719 -14/06/2006 12:49:26.639  000>> 98>>>>>>>>>>Complete!
 54.4720 -14/06/2006 12:49:26.639  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30401
 54.4721 -14/06/2006 12:49:26.639  000>> Good datagram received!
 54.4722 -14/06/2006 12:49:26.639  000>> Listener:Received dictionary
 54.4723 -14/06/2006 12:49:26.639  000>> 90>>>>>>>>>>Part datagram received!
 54.4724 -14/06/2006 12:49:26.639  000>> 90>>>>>>>>>>Complete!
 54.4725 -14/06/2006 12:49:26.639  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30402
 54.4726 -14/06/2006 12:49:26.639  000>> Good datagram received!
 54.4727 -14/06/2006 12:49:26.639  000>> Listener:Received RIB
 54.4728 -14/06/2006 12:49:26.819  000>> 716>>>>>>>>>>Part datagram received!
 54.4729 -14/06/2006 12:49:26.819  000>> 716>>>>>>>>>>Complete!
 54.4730 -14/06/2006 12:49:26.819  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30403
 54.4731 -14/06/2006 12:49:26.819  000>> Good datagram received!
 54.4732 -14/06/2006 12:49:26.829  000>> Listener:Received Bundle Offer
 54.4733 -14/06/2006 12:49:26.829  000>> Listener:Sending Empty bundle request...
 54.4734 -14/06/2006 12:49:26.829  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4735 -14/06/2006 12:49:26.829  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29976
 54.4736 -14/06/2006 12:49:26.829  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30404
 54.4737 -14/06/2006 12:49:26.829  000>> Good datagram received!
 54.4738 -14/06/2006 12:49:26.829  000>> Initiator:No more requested bundles
 54.4739 -14/06/2006 12:49:26.829  000>> Listener(receiveBundles):We can restart connection...
 54.4740 -14/06/2006 12:49:26.929  000>> Hello Procedure:SENDSYN
 54.4741 -14/06/2006 12:49:26.929  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29977
 54.4742 -14/06/2006 12:49:27.020  000>> 91>>>>>>>>>>Part datagram received!
 54.4743 -14/06/2006 12:49:27.020  000>> 91>>>>>>>>>>Complete!
 54.4744 -14/06/2006 12:49:27.020  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30405
 54.4745 -14/06/2006 12:49:27.020  000>> Good datagram received!
 54.4746 -14/06/2006 12:49:27.030  000>> Receive Hello:SYNACK
 54.4747 -14/06/2006 12:49:27.030  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29978
 54.4748 -14/06/2006 12:49:27.130  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4749 -14/06/2006 12:49:27.130  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29979
 54.4750 -14/06/2006 12:49:27.130  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29980
 54.4751 -14/06/2006 12:49:27.130  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29981
 54.4752 -14/06/2006 12:49:27.140  000>> 98>>>>>>>>>>Part datagram received!
 54.4753 -14/06/2006 12:49:27.140  000>> 98>>>>>>>>>>Complete!
 54.4754 -14/06/2006 12:49:27.150  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30406
 54.4755 -14/06/2006 12:49:27.150  000>> Good datagram received!
 54.4756 -14/06/2006 12:49:27.150  000>> Listener:Received dictionary
 54.4757 -14/06/2006 12:49:27.160  000>> 90>>>>>>>>>>Part datagram received!
 54.4758 -14/06/2006 12:49:27.160  000>> 90>>>>>>>>>>Complete!
 54.4759 -14/06/2006 12:49:27.160  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30407
 54.4760 -14/06/2006 12:49:27.160  000>> Good datagram received!
 54.4761 -14/06/2006 12:49:27.160  000>> Listener:Received RIB
 54.4762 -14/06/2006 12:49:27.320  000>> 716>>>>>>>>>>Part datagram received!
 54.4763 -14/06/2006 12:49:27.320  000>> 716>>>>>>>>>>Complete!
 54.4764 -14/06/2006 12:49:27.320  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30408
 54.4765 -14/06/2006 12:49:27.320  000>> Good datagram received!
 54.4766 -14/06/2006 12:49:27.340  000>> Listener:Received Bundle Offer
 54.4767 -14/06/2006 12:49:27.340  000>> Listener:Sending Empty bundle request...
 54.4768 -14/06/2006 12:49:27.340  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4769 -14/06/2006 12:49:27.340  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29982
 54.4770 -14/06/2006 12:49:27.340  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30409
 54.4771 -14/06/2006 12:49:27.340  000>> Good datagram received!
 54.4772 -14/06/2006 12:49:27.340  000>> Initiator:No more requested bundles
 54.4773 -14/06/2006 12:49:27.340  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.4774 -14/06/2006 12:49:27.470  000>> 91>>>>>>>>>>Part datagram received!
 54.4775 -14/06/2006 12:49:27.470  000>> 91>>>>>>>>>>Complete!
 54.4776 -14/06/2006 12:49:27.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30410
 54.4777 -14/06/2006 12:49:27.470  000>> Good datagram received!
 54.4778 -14/06/2006 12:49:27.470  000>> Receive Hello:SYN
 54.4779 -14/06/2006 12:49:27.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29983
 54.4780 -14/06/2006 12:49:27.500  000>> 91>>>>>>>>>>Part datagram received!
 54.4781 -14/06/2006 12:49:27.500  000>> 91>>>>>>>>>>Complete!
 54.4782 -14/06/2006 12:49:27.500  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30411
 54.4783 -14/06/2006 12:49:27.500  000>> Good datagram received!
 54.4784 -14/06/2006 12:49:27.500  000>> Receive Hello:ACK
 54.4785 -14/06/2006 12:49:27.600  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4786 -14/06/2006 12:49:27.600  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29984
 54.4787 -14/06/2006 12:49:27.600  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29985
 54.4788 -14/06/2006 12:49:27.600  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29986
 54.4789 -14/06/2006 12:49:27.600  000>> 98>>>>>>>>>>Part datagram received!
 54.4790 -14/06/2006 12:49:27.600  000>> 98>>>>>>>>>>Complete!
 54.4791 -14/06/2006 12:49:27.600  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30412
 54.4792 -14/06/2006 12:49:27.610  000>> Good datagram received!
 54.4793 -14/06/2006 12:49:27.610  000>> Listener:Received dictionary
 54.4794 -14/06/2006 12:49:27.610  000>> 90>>>>>>>>>>Part datagram received!
 54.4795 -14/06/2006 12:49:27.610  000>> 90>>>>>>>>>>Complete!
 54.4796 -14/06/2006 12:49:27.610  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30413
 54.4797 -14/06/2006 12:49:27.610  000>> Good datagram received!
 54.4798 -14/06/2006 12:49:27.610  000>> Listener:Received RIB
 54.4799 -14/06/2006 12:49:27.721  000>> 716>>>>>>>>>>Part datagram received!
 54.4800 -14/06/2006 12:49:27.721  000>> 716>>>>>>>>>>Complete!
 54.4801 -14/06/2006 12:49:27.721  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30414
 54.4802 -14/06/2006 12:49:27.721  000>> Good datagram received!
 54.4803 -14/06/2006 12:49:27.731  000>> Listener:Received Bundle Offer
 54.4804 -14/06/2006 12:49:27.731  000>> Listener:Sending Empty bundle request...
 54.4805 -14/06/2006 12:49:27.731  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4806 -14/06/2006 12:49:27.731  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29987
 54.4807 -14/06/2006 12:49:27.731  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30415
 54.4808 -14/06/2006 12:49:27.731  000>> Good datagram received!
 54.4809 -14/06/2006 12:49:27.731  000>> Initiator:No more requested bundles
 54.4810 -14/06/2006 12:49:27.731  000>> Listener(receiveBundles):We can restart connection...
 54.4811 -14/06/2006 12:49:27.831  000>> Hello Procedure:SENDSYN
 54.4812 -14/06/2006 12:49:27.831  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29988
 54.4813 -14/06/2006 12:49:28.001  000>> 91>>>>>>>>>>Part datagram received!
 54.4814 -14/06/2006 12:49:28.001  000>> 91>>>>>>>>>>Complete!
 54.4815 -14/06/2006 12:49:28.011  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30416
 54.4816 -14/06/2006 12:49:28.011  000>> Good datagram received!
 54.4817 -14/06/2006 12:49:28.011  000>> Receive Hello:SYNACK
 54.4818 -14/06/2006 12:49:28.011  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29989
 54.4819 -14/06/2006 12:49:28.111  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4820 -14/06/2006 12:49:28.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29990
 54.4821 -14/06/2006 12:49:28.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29991
 54.4822 -14/06/2006 12:49:28.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29992
 54.4823 -14/06/2006 12:49:28.121  000>> 98>>>>>>>>>>Part datagram received!
 54.4824 -14/06/2006 12:49:28.121  000>> 98>>>>>>>>>>Complete!
 54.4825 -14/06/2006 12:49:28.131  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30417
 54.4826 -14/06/2006 12:49:28.131  000>> Good datagram received!
 54.4827 -14/06/2006 12:49:28.131  000>> Listener:Received dictionary
 54.4828 -14/06/2006 12:49:28.131  000>> 90>>>>>>>>>>Part datagram received!
 54.4829 -14/06/2006 12:49:28.131  000>> 90>>>>>>>>>>Complete!
 54.4830 -14/06/2006 12:49:28.131  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30418
 54.4831 -14/06/2006 12:49:28.131  000>> Good datagram received!
 54.4832 -14/06/2006 12:49:28.131  000>> Listener:Received RIB
 54.4833 -14/06/2006 12:49:28.321  000>> 716>>>>>>>>>>Part datagram received!
 54.4834 -14/06/2006 12:49:28.321  000>> 716>>>>>>>>>>Complete!
 54.4835 -14/06/2006 12:49:28.331  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30419
 54.4836 -14/06/2006 12:49:28.331  000>> Good datagram received!
 54.4837 -14/06/2006 12:49:28.341  000>> Listener:Received Bundle Offer
 54.4838 -14/06/2006 12:49:28.341  000>> Listener:Sending Empty bundle request...
 54.4839 -14/06/2006 12:49:28.341  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4840 -14/06/2006 12:49:28.341  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29993
 54.4841 -14/06/2006 12:49:28.341  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30420
 54.4842 -14/06/2006 12:49:28.341  000>> Good datagram received!
 54.4843 -14/06/2006 12:49:28.341  000>> Initiator:No more requested bundles
 54.4844 -14/06/2006 12:49:28.352  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.4845 -14/06/2006 12:49:28.472  000>> 91>>>>>>>>>>Part datagram received!
 54.4846 -14/06/2006 12:49:28.472  000>> 91>>>>>>>>>>Complete!
 54.4847 -14/06/2006 12:49:28.472  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30421
 54.4848 -14/06/2006 12:49:28.472  000>> Good datagram received!
 54.4849 -14/06/2006 12:49:28.482  000>> Receive Hello:SYN
 54.4850 -14/06/2006 12:49:28.482  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29994
 54.4851 -14/06/2006 12:49:28.502  000>> 91>>>>>>>>>>Part datagram received!
 54.4852 -14/06/2006 12:49:28.502  000>> 91>>>>>>>>>>Complete!
 54.4853 -14/06/2006 12:49:28.502  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30422
 54.4854 -14/06/2006 12:49:28.502  000>> Good datagram received!
 54.4855 -14/06/2006 12:49:28.502  000>> Receive Hello:ACK
 54.4856 -14/06/2006 12:49:28.602  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4857 -14/06/2006 12:49:28.602  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29995
 54.4858 -14/06/2006 12:49:28.602  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29996
 54.4859 -14/06/2006 12:49:28.602  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29997
 54.4860 -14/06/2006 12:49:28.612  000>> 98>>>>>>>>>>Part datagram received!
 54.4861 -14/06/2006 12:49:28.612  000>> 98>>>>>>>>>>Complete!
 54.4862 -14/06/2006 12:49:28.612  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30423
 54.4863 -14/06/2006 12:49:28.612  000>> Good datagram received!
 54.4864 -14/06/2006 12:49:28.612  000>> Listener:Received dictionary
 54.4865 -14/06/2006 12:49:28.612  000>> 90>>>>>>>>>>Part datagram received!
 54.4866 -14/06/2006 12:49:28.612  000>> 90>>>>>>>>>>Complete!
 54.4867 -14/06/2006 12:49:28.612  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30424
 54.4868 -14/06/2006 12:49:28.612  000>> Good datagram received!
 54.4869 -14/06/2006 12:49:28.612  000>> Listener:Received RIB
 54.4870 -14/06/2006 12:49:28.722  000>> 716>>>>>>>>>>Part datagram received!
 54.4871 -14/06/2006 12:49:28.722  000>> 716>>>>>>>>>>Complete!
 54.4872 -14/06/2006 12:49:28.732  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30425
 54.4873 -14/06/2006 12:49:28.732  000>> Good datagram received!
 54.4874 -14/06/2006 12:49:28.732  000>> Listener:Received Bundle Offer
 54.4875 -14/06/2006 12:49:28.732  000>> Listener:Sending Empty bundle request...
 54.4876 -14/06/2006 12:49:28.732  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4877 -14/06/2006 12:49:28.732  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29998
 54.4878 -14/06/2006 12:49:28.732  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30426
 54.4879 -14/06/2006 12:49:28.732  000>> Good datagram received!
 54.4880 -14/06/2006 12:49:28.732  000>> Initiator:No more requested bundles
 54.4881 -14/06/2006 12:49:28.732  000>> Listener(receiveBundles):We can restart connection...
 54.4882 -14/06/2006 12:49:28.832  000>> Hello Procedure:SENDSYN
 54.4883 -14/06/2006 12:49:28.832  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29999
 54.4884 -14/06/2006 12:49:28.912  000>> 91>>>>>>>>>>Part datagram received!
 54.4885 -14/06/2006 12:49:28.912  000>> 91>>>>>>>>>>Complete!
 54.4886 -14/06/2006 12:49:28.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30427
 54.4887 -14/06/2006 12:49:28.912  000>> Good datagram received!
 54.4888 -14/06/2006 12:49:28.912  000>> Receive Hello:SYNACK
 54.4889 -14/06/2006 12:49:28.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30000
 54.4890 -14/06/2006 12:49:29.012  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4891 -14/06/2006 12:49:29.012  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30001
 54.4892 -14/06/2006 12:49:29.012  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30002
 54.4893 -14/06/2006 12:49:29.012  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30003
 54.4894 -14/06/2006 12:49:29.153  000>> 78>>>>>>>>>>Part datagram received!
 54.4895 -14/06/2006 12:49:29.153  000>> 78>>>>>>>>>>Complete!
 54.4896 -14/06/2006 12:49:29.153  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30428
 54.4897 -14/06/2006 12:49:29.153  000>> Good datagram received!
 54.4898 -14/06/2006 12:49:29.153  000>> Initiator:No more requested bundles
 54.4899 -14/06/2006 12:49:29.153  000>> Initiator:But we can not restart connection...
 54.4900 -14/06/2006 12:49:29.333  000>> 826>>>>>>>>>>Part datagram received!
 54.4901 -14/06/2006 12:49:29.333  000>> 826>>>>>>>>>>Complete!
 54.4902 -14/06/2006 12:49:29.333  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30429
 54.4903 -14/06/2006 12:49:29.333  000>> Good datagram received!
 54.4904 -14/06/2006 12:49:29.333  000>> Listener:Received dictionary
 54.4905 -14/06/2006 12:49:29.333  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30430
 54.4906 -14/06/2006 12:49:29.333  000>> Good datagram received!
 54.4907 -14/06/2006 12:49:29.333  000>> Listener:Received RIB
 54.4908 -14/06/2006 12:49:29.333  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30431
 54.4909 -14/06/2006 12:49:29.333  000>> Good datagram received!
 54.4910 -14/06/2006 12:49:29.353  000>> Listener:Received Bundle Offer
 54.4911 -14/06/2006 12:49:29.353  000>> Listener:Sending Empty bundle request...
 54.4912 -14/06/2006 12:49:29.353  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.4913 -14/06/2006 12:49:29.353  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30004
 54.4914 -14/06/2006 12:49:29.483  000>> 91>>>>>>>>>>Part datagram received!
 54.4915 -14/06/2006 12:49:29.483  000>> 91>>>>>>>>>>Complete!
 54.4916 -14/06/2006 12:49:29.483  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30432
 54.4917 -14/06/2006 12:49:29.493  000>> Good datagram received!
 54.4918 -14/06/2006 12:49:29.493  000>> Receive Hello:SYN
 54.4919 -14/06/2006 12:49:29.493  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30005
 54.4920 -14/06/2006 12:49:29.513  000>> 91>>>>>>>>>>Part datagram received!
 54.4921 -14/06/2006 12:49:29.513  000>> 91>>>>>>>>>>Complete!
 54.4922 -14/06/2006 12:49:29.513  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30433
 54.4923 -14/06/2006 12:49:29.513  000>> Good datagram received!
 54.4924 -14/06/2006 12:49:29.523  000>> Receive Hello:ACK
 54.4925 -14/06/2006 12:49:29.623  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4926 -14/06/2006 12:49:29.623  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30006
 54.4927 -14/06/2006 12:49:29.623  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30007
 54.4928 -14/06/2006 12:49:29.623  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30008
 54.4929 -14/06/2006 12:49:29.643  000>> 826>>>>>>>>>>Part datagram received!
 54.4930 -14/06/2006 12:49:29.643  000>> 826>>>>>>>>>>Complete!
 54.4931 -14/06/2006 12:49:29.643  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30434
 54.4932 -14/06/2006 12:49:29.643  000>> Good datagram received!
 54.4933 -14/06/2006 12:49:29.643  000>> Listener:Received dictionary
 54.4934 -14/06/2006 12:49:29.653  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30435
 54.4935 -14/06/2006 12:49:29.653  000>> Good datagram received!
 54.4936 -14/06/2006 12:49:29.653  000>> Listener:Received RIB
 54.4937 -14/06/2006 12:49:29.653  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30436
 54.4938 -14/06/2006 12:49:29.653  000>> Good datagram received!
 54.4939 -14/06/2006 12:49:29.663  000>> Listener:Received Bundle Offer
 54.4940 -14/06/2006 12:49:29.663  000>> Listener:Sending Empty bundle request...
 54.4941 -14/06/2006 12:49:29.663  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4942 -14/06/2006 12:49:29.673  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30009
 54.4943 -14/06/2006 12:49:29.744  000>> 78>>>>>>>>>>Part datagram received!
 54.4944 -14/06/2006 12:49:29.744  000>> 78>>>>>>>>>>Complete!
 54.4945 -14/06/2006 12:49:29.754  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30437
 54.4946 -14/06/2006 12:49:29.754  000>> Good datagram received!
 54.4947 -14/06/2006 12:49:29.754  000>> Initiator:No more requested bundles
 54.4948 -14/06/2006 12:49:29.754  000>> Listener(receiveBundles):We can restart connection...
 54.4949 -14/06/2006 12:49:29.854  000>> Hello Procedure:SENDSYN
 54.4950 -14/06/2006 12:49:29.854  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30010
 54.4951 -14/06/2006 12:49:30.004  000>> 91>>>>>>>>>>Part datagram received!
 54.4952 -14/06/2006 12:49:30.014  000>> 91>>>>>>>>>>Complete!
 54.4953 -14/06/2006 12:49:30.014  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30438
 54.4954 -14/06/2006 12:49:30.014  000>> Good datagram received!
 54.4955 -14/06/2006 12:49:30.014  000>> Receive Hello:SYNACK
 54.4956 -14/06/2006 12:49:30.014  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30011
 54.4957 -14/06/2006 12:49:30.114  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4958 -14/06/2006 12:49:30.114  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30012
 54.4959 -14/06/2006 12:49:30.114  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30013
 54.4960 -14/06/2006 12:49:30.114  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30014
 54.4961 -14/06/2006 12:49:30.134  000>> 98>>>>>>>>>>Part datagram received!
 54.4962 -14/06/2006 12:49:30.144  000>> 98>>>>>>>>>>Complete!
 54.4963 -14/06/2006 12:49:30.144  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30439
 54.4964 -14/06/2006 12:49:30.144  000>> Good datagram received!
 54.4965 -14/06/2006 12:49:30.144  000>> Listener:Received dictionary
 54.4966 -14/06/2006 12:49:30.154  000>> 90>>>>>>>>>>Part datagram received!
 54.4967 -14/06/2006 12:49:30.154  000>> 90>>>>>>>>>>Complete!
 54.4968 -14/06/2006 12:49:30.154  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30440
 54.4969 -14/06/2006 12:49:30.154  000>> Good datagram received!
 54.4970 -14/06/2006 12:49:30.154  000>> Listener:Received RIB
 54.4971 -14/06/2006 12:49:30.354  000>> 716>>>>>>>>>>Part datagram received!
 54.4972 -14/06/2006 12:49:30.354  000>> 716>>>>>>>>>>Complete!
 54.4973 -14/06/2006 12:49:30.354  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30441
 54.4974 -14/06/2006 12:49:30.354  000>> Good datagram received!
 54.4975 -14/06/2006 12:49:30.374  000>> Listener:Received Bundle Offer
 54.4976 -14/06/2006 12:49:30.374  000>> Listener:Sending Empty bundle request...
 54.4977 -14/06/2006 12:49:30.374  000>> Listener(receiveBOffer):But we can not restart connection...
 54.4978 -14/06/2006 12:49:30.374  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30015
 54.4979 -14/06/2006 12:49:30.374  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30442
 54.4980 -14/06/2006 12:49:30.374  000>> Good datagram received!
 54.4981 -14/06/2006 12:49:30.374  000>> Initiator:No more requested bundles
 54.4982 -14/06/2006 12:49:30.374  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.4983 -14/06/2006 12:49:30.515  000>> 91>>>>>>>>>>Part datagram received!
 54.4984 -14/06/2006 12:49:30.515  000>> 91>>>>>>>>>>Complete!
 54.4985 -14/06/2006 12:49:30.515  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30443
 54.4986 -14/06/2006 12:49:30.515  000>> Good datagram received!
 54.4987 -14/06/2006 12:49:30.515  000>> Receive Hello:SYN
 54.4988 -14/06/2006 12:49:30.515  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30016
 54.4989 -14/06/2006 12:49:30.545  000>> 91>>>>>>>>>>Part datagram received!
 54.4990 -14/06/2006 12:49:30.545  000>> 91>>>>>>>>>>Complete!
 54.4991 -14/06/2006 12:49:30.545  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30444
 54.4992 -14/06/2006 12:49:30.545  000>> Good datagram received!
 54.4993 -14/06/2006 12:49:30.545  000>> Receive Hello:ACK
 54.4994 -14/06/2006 12:49:30.645  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.4995 -14/06/2006 12:49:30.645  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30017
 54.4996 -14/06/2006 12:49:30.645  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30018
 54.4997 -14/06/2006 12:49:30.645  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30019
 54.4998 -14/06/2006 12:49:30.645  000>> 98>>>>>>>>>>Part datagram received!
 54.4999 -14/06/2006 12:49:30.645  000>> 98>>>>>>>>>>Complete!
 54.5000 -14/06/2006 12:49:30.655  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30445
 54.5001 -14/06/2006 12:49:30.655  000>> Good datagram received!
 54.5002 -14/06/2006 12:49:30.655  000>> Listener:Received dictionary
 54.5003 -14/06/2006 12:49:30.655  000>> 90>>>>>>>>>>Part datagram received!
 54.5004 -14/06/2006 12:49:30.655  000>> 90>>>>>>>>>>Complete!
 54.5005 -14/06/2006 12:49:30.655  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30446
 54.5006 -14/06/2006 12:49:30.655  000>> Good datagram received!
 54.5007 -14/06/2006 12:49:30.655  000>> Listener:Received RIB
 54.5008 -14/06/2006 12:49:30.835  000>> 716>>>>>>>>>>Part datagram received!
 54.5009 -14/06/2006 12:49:30.835  000>> 716>>>>>>>>>>Complete!
 54.5010 -14/06/2006 12:49:30.835  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30447
 54.5011 -14/06/2006 12:49:30.835  000>> Good datagram received!
 54.5012 -14/06/2006 12:49:30.835  000>> Listener:Received Bundle Offer
 54.5013 -14/06/2006 12:49:30.835  000>> Listener:Sending Empty bundle request...
 54.5014 -14/06/2006 12:49:30.845  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5015 -14/06/2006 12:49:30.845  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30020
 54.5016 -14/06/2006 12:49:30.845  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30448
 54.5017 -14/06/2006 12:49:30.845  000>> Good datagram received!
 54.5018 -14/06/2006 12:49:30.845  000>> Initiator:No more requested bundles
 54.5019 -14/06/2006 12:49:30.845  000>> Listener(receiveBundles):We can restart connection...
 54.5020 -14/06/2006 12:49:30.945  000>> Hello Procedure:SENDSYN
 54.5021 -14/06/2006 12:49:30.945  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30021
 54.5022 -14/06/2006 12:49:31.015  000>> 91>>>>>>>>>>Part datagram received!
 54.5023 -14/06/2006 12:49:31.015  000>> 91>>>>>>>>>>Complete!
 54.5024 -14/06/2006 12:49:31.015  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30449
 54.5025 -14/06/2006 12:49:31.015  000>> Good datagram received!
 54.5026 -14/06/2006 12:49:31.015  000>> Receive Hello:SYNACK
 54.5027 -14/06/2006 12:49:31.015  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30022
 54.5028 -14/06/2006 12:49:31.115  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5029 -14/06/2006 12:49:31.115  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30023
 54.5030 -14/06/2006 12:49:31.115  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30024
 54.5031 -14/06/2006 12:49:31.115  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30025
 54.5032 -14/06/2006 12:49:31.125  000>> 98>>>>>>>>>>Part datagram received!
 54.5033 -14/06/2006 12:49:31.125  000>> 98>>>>>>>>>>Complete!
 54.5034 -14/06/2006 12:49:31.136  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30450
 54.5035 -14/06/2006 12:49:31.136  000>> Good datagram received!
 54.5036 -14/06/2006 12:49:31.136  000>> Listener:Received dictionary
 54.5037 -14/06/2006 12:49:31.136  000>> 90>>>>>>>>>>Part datagram received!
 54.5038 -14/06/2006 12:49:31.136  000>> 90>>>>>>>>>>Complete!
 54.5039 -14/06/2006 12:49:31.136  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30451
 54.5040 -14/06/2006 12:49:31.136  000>> Good datagram received!
 54.5041 -14/06/2006 12:49:31.136  000>> Listener:Received RIB
 54.5042 -14/06/2006 12:49:31.336  000>> 716>>>>>>>>>>Part datagram received!
 54.5043 -14/06/2006 12:49:31.336  000>> 716>>>>>>>>>>Complete!
 54.5044 -14/06/2006 12:49:31.336  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30452
 54.5045 -14/06/2006 12:49:31.336  000>> Good datagram received!
 54.5046 -14/06/2006 12:49:31.356  000>> Listener:Received Bundle Offer
 54.5047 -14/06/2006 12:49:31.356  000>> Listener:Sending Empty bundle request...
 54.5048 -14/06/2006 12:49:31.356  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5049 -14/06/2006 12:49:31.356  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30026
 54.5050 -14/06/2006 12:49:31.356  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30453
 54.5051 -14/06/2006 12:49:31.356  000>> Good datagram received!
 54.5052 -14/06/2006 12:49:31.356  000>> Initiator:No more requested bundles
 54.5053 -14/06/2006 12:49:31.356  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.5054 -14/06/2006 12:49:31.486  000>> 91>>>>>>>>>>Part datagram received!
 54.5055 -14/06/2006 12:49:31.486  000>> 91>>>>>>>>>>Complete!
 54.5056 -14/06/2006 12:49:31.486  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30454
 54.5057 -14/06/2006 12:49:31.486  000>> Good datagram received!
 54.5058 -14/06/2006 12:49:31.486  000>> Receive Hello:SYN
 54.5059 -14/06/2006 12:49:31.486  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30027
 54.5060 -14/06/2006 12:49:31.516  000>> 91>>>>>>>>>>Part datagram received!
 54.5061 -14/06/2006 12:49:31.516  000>> 91>>>>>>>>>>Complete!
 54.5062 -14/06/2006 12:49:31.516  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30455
 54.5063 -14/06/2006 12:49:31.516  000>> Good datagram received!
 54.5064 -14/06/2006 12:49:31.516  000>> Receive Hello:ACK
 54.5065 -14/06/2006 12:49:31.616  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5066 -14/06/2006 12:49:31.616  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30028
 54.5067 -14/06/2006 12:49:31.616  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30029
 54.5068 -14/06/2006 12:49:31.616  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30030
 54.5069 -14/06/2006 12:49:31.656  000>> 826>>>>>>>>>>Part datagram received!
 54.5070 -14/06/2006 12:49:31.656  000>> 826>>>>>>>>>>Complete!
 54.5071 -14/06/2006 12:49:31.656  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30456
 54.5072 -14/06/2006 12:49:31.656  000>> Good datagram received!
 54.5073 -14/06/2006 12:49:31.656  000>> Listener:Received dictionary
 54.5074 -14/06/2006 12:49:31.656  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30457
 54.5075 -14/06/2006 12:49:31.656  000>> Good datagram received!
 54.5076 -14/06/2006 12:49:31.656  000>> Listener:Received RIB
 54.5077 -14/06/2006 12:49:31.656  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30458
 54.5078 -14/06/2006 12:49:31.656  000>> Good datagram received!
 54.5079 -14/06/2006 12:49:31.666  000>> Listener:Received Bundle Offer
 54.5080 -14/06/2006 12:49:31.666  000>> Listener:Sending Empty bundle request...
 54.5081 -14/06/2006 12:49:31.666  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5082 -14/06/2006 12:49:31.666  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30031
 54.5083 -14/06/2006 12:49:31.746  000>> 78>>>>>>>>>>Part datagram received!
 54.5084 -14/06/2006 12:49:31.746  000>> 78>>>>>>>>>>Complete!
 54.5085 -14/06/2006 12:49:31.746  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30459
 54.5086 -14/06/2006 12:49:31.746  000>> Good datagram received!
 54.5087 -14/06/2006 12:49:31.746  000>> Initiator:No more requested bundles
 54.5088 -14/06/2006 12:49:31.746  000>> Listener(receiveBundles):We can restart connection...
 54.5089 -14/06/2006 12:49:31.847  000>> Hello Procedure:SENDSYN
 54.5090 -14/06/2006 12:49:31.847  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30032
 54.5091 -14/06/2006 12:49:31.917  000>> 91>>>>>>>>>>Part datagram received!
 54.5092 -14/06/2006 12:49:31.917  000>> 91>>>>>>>>>>Complete!
 54.5093 -14/06/2006 12:49:31.917  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30460
 54.5094 -14/06/2006 12:49:31.917  000>> Good datagram received!
 54.5095 -14/06/2006 12:49:31.917  000>> Receive Hello:SYNACK
 54.5096 -14/06/2006 12:49:31.917  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30033
 54.5097 -14/06/2006 12:49:32.017  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5098 -14/06/2006 12:49:32.017  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30034
 54.5099 -14/06/2006 12:49:32.017  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30035
 54.5100 -14/06/2006 12:49:32.027  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30036
 54.5101 -14/06/2006 12:49:32.147  000>> 78>>>>>>>>>>Part datagram received!
 54.5102 -14/06/2006 12:49:32.147  000>> 78>>>>>>>>>>Complete!
 54.5103 -14/06/2006 12:49:32.147  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30461
 54.5104 -14/06/2006 12:49:32.147  000>> Good datagram received!
 54.5105 -14/06/2006 12:49:32.147  000>> Initiator:No more requested bundles
 54.5106 -14/06/2006 12:49:32.147  000>> Initiator:But we can not restart connection...
 54.5107 -14/06/2006 12:49:32.337  000>> 826>>>>>>>>>>Part datagram received!
 54.5108 -14/06/2006 12:49:32.337  000>> 826>>>>>>>>>>Complete!
 54.5109 -14/06/2006 12:49:32.337  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30462
 54.5110 -14/06/2006 12:49:32.337  000>> Good datagram received!
 54.5111 -14/06/2006 12:49:32.337  000>> Listener:Received dictionary
 54.5112 -14/06/2006 12:49:32.337  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30463
 54.5113 -14/06/2006 12:49:32.347  000>> Good datagram received!
 54.5114 -14/06/2006 12:49:32.347  000>> Listener:Received RIB
 54.5115 -14/06/2006 12:49:32.347  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30464
 54.5116 -14/06/2006 12:49:32.347  000>> Good datagram received!
 54.5117 -14/06/2006 12:49:32.357  000>> Listener:Received Bundle Offer
 54.5118 -14/06/2006 12:49:32.357  000>> Listener:Sending Empty bundle request...
 54.5119 -14/06/2006 12:49:32.357  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.5120 -14/06/2006 12:49:32.357  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30037
 54.5121 -14/06/2006 12:49:32.487  000>> 91>>>>>>>>>>Part datagram received!
 54.5122 -14/06/2006 12:49:32.487  000>> 91>>>>>>>>>>Complete!
 54.5123 -14/06/2006 12:49:32.487  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30465
 54.5124 -14/06/2006 12:49:32.487  000>> Good datagram received!
 54.5125 -14/06/2006 12:49:32.487  000>> Receive Hello:SYN
 54.5126 -14/06/2006 12:49:32.497  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30038
 54.5127 -14/06/2006 12:49:32.517  000>> 91>>>>>>>>>>Part datagram received!
 54.5128 -14/06/2006 12:49:32.517  000>> 91>>>>>>>>>>Complete!
 54.5129 -14/06/2006 12:49:32.517  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30466
 54.5130 -14/06/2006 12:49:32.517  000>> Good datagram received!
 54.5131 -14/06/2006 12:49:32.517  000>> Receive Hello:ACK
 54.5132 -14/06/2006 12:49:32.618  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5133 -14/06/2006 12:49:32.618  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30039
 54.5134 -14/06/2006 12:49:32.618  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30040
 54.5135 -14/06/2006 12:49:32.618  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30041
 54.5136 -14/06/2006 12:49:32.628  000>> 98>>>>>>>>>>Part datagram received!
 54.5137 -14/06/2006 12:49:32.628  000>> 98>>>>>>>>>>Complete!
 54.5138 -14/06/2006 12:49:32.628  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30467
 54.5139 -14/06/2006 12:49:32.628  000>> Good datagram received!
 54.5140 -14/06/2006 12:49:32.628  000>> Listener:Received dictionary
 54.5141 -14/06/2006 12:49:32.628  000>> 90>>>>>>>>>>Part datagram received!
 54.5142 -14/06/2006 12:49:32.628  000>> 90>>>>>>>>>>Complete!
 54.5143 -14/06/2006 12:49:32.628  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30468
 54.5144 -14/06/2006 12:49:32.628  000>> Good datagram received!
 54.5145 -14/06/2006 12:49:32.628  000>> Listener:Received RIB
 54.5146 -14/06/2006 12:49:32.738  000>> 716>>>>>>>>>>Part datagram received!
 54.5147 -14/06/2006 12:49:32.738  000>> 716>>>>>>>>>>Complete!
 54.5148 -14/06/2006 12:49:32.738  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30469
 54.5149 -14/06/2006 12:49:32.738  000>> Good datagram received!
 54.5150 -14/06/2006 12:49:32.748  000>> Listener:Received Bundle Offer
 54.5151 -14/06/2006 12:49:32.748  000>> Listener:Sending Empty bundle request...
 54.5152 -14/06/2006 12:49:32.748  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5153 -14/06/2006 12:49:32.748  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30042
 54.5154 -14/06/2006 12:49:32.748  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30470
 54.5155 -14/06/2006 12:49:32.748  000>> Good datagram received!
 54.5156 -14/06/2006 12:49:32.748  000>> Initiator:No more requested bundles
 54.5157 -14/06/2006 12:49:32.748  000>> Listener(receiveBundles):We can restart connection...
 54.5158 -14/06/2006 12:49:32.848  000>> Hello Procedure:SENDSYN
 54.5159 -14/06/2006 12:49:32.848  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30043
 54.5160 -14/06/2006 12:49:32.918  000>> 91>>>>>>>>>>Part datagram received!
 54.5161 -14/06/2006 12:49:32.918  000>> 91>>>>>>>>>>Complete!
 54.5162 -14/06/2006 12:49:32.918  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30471
 54.5163 -14/06/2006 12:49:32.918  000>> Good datagram received!
 54.5164 -14/06/2006 12:49:32.918  000>> Receive Hello:SYNACK
 54.5165 -14/06/2006 12:49:32.918  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30044
 54.5166 -14/06/2006 12:49:33.018  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5167 -14/06/2006 12:49:33.018  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30045
 54.5168 -14/06/2006 12:49:33.018  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30046
 54.5169 -14/06/2006 12:49:33.028  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30047
 54.5170 -14/06/2006 12:49:33.048  000>> 98>>>>>>>>>>Part datagram received!
 54.5171 -14/06/2006 12:49:33.048  000>> 98>>>>>>>>>>Complete!
 54.5172 -14/06/2006 12:49:33.048  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30472
 54.5173 -14/06/2006 12:49:33.048  000>> Good datagram received!
 54.5174 -14/06/2006 12:49:33.048  000>> Listener:Received dictionary
 54.5175 -14/06/2006 12:49:33.048  000>> 90>>>>>>>>>>Part datagram received!
 54.5176 -14/06/2006 12:49:33.048  000>> 90>>>>>>>>>>Complete!
 54.5177 -14/06/2006 12:49:33.048  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30473
 54.5178 -14/06/2006 12:49:33.058  000>> Good datagram received!
 54.5179 -14/06/2006 12:49:33.058  000>> Listener:Received RIB
 54.5180 -14/06/2006 12:49:33.239  000>> 716>>>>>>>>>>Part datagram received!
 54.5181 -14/06/2006 12:49:33.239  000>> 716>>>>>>>>>>Complete!
 54.5182 -14/06/2006 12:49:33.239  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30474
 54.5183 -14/06/2006 12:49:33.249  000>> Good datagram received!
 54.5184 -14/06/2006 12:49:33.259  000>> Listener:Received Bundle Offer
 54.5185 -14/06/2006 12:49:33.259  000>> Listener:Sending Empty bundle request...
 54.5186 -14/06/2006 12:49:33.259  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5187 -14/06/2006 12:49:33.259  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30048
 54.5188 -14/06/2006 12:49:33.259  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30475
 54.5189 -14/06/2006 12:49:33.259  000>> Good datagram received!
 54.5190 -14/06/2006 12:49:33.259  000>> Initiator:No more requested bundles
 54.5191 -14/06/2006 12:49:33.259  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.5192 -14/06/2006 12:49:33.399  000>> 91>>>>>>>>>>Part datagram received!
 54.5193 -14/06/2006 12:49:33.399  000>> 91>>>>>>>>>>Complete!
 54.5194 -14/06/2006 12:49:33.399  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30476
 54.5195 -14/06/2006 12:49:33.399  000>> Good datagram received!
 54.5196 -14/06/2006 12:49:33.399  000>> Receive Hello:SYN
 54.5197 -14/06/2006 12:49:33.399  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30049
 54.5198 -14/06/2006 12:49:33.419  000>> 91>>>>>>>>>>Part datagram received!
 54.5199 -14/06/2006 12:49:33.419  000>> 91>>>>>>>>>>Complete!
 54.5200 -14/06/2006 12:49:33.419  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30477
 54.5201 -14/06/2006 12:49:33.419  000>> Good datagram received!
 54.5202 -14/06/2006 12:49:33.429  000>> Receive Hello:ACK
 54.5203 -14/06/2006 12:49:33.529  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5204 -14/06/2006 12:49:33.529  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30050
 54.5205 -14/06/2006 12:49:33.529  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30051
 54.5206 -14/06/2006 12:49:33.529  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30052
 54.5207 -14/06/2006 12:49:33.529  000>> 98>>>>>>>>>>Part datagram received!
 54.5208 -14/06/2006 12:49:33.529  000>> 98>>>>>>>>>>Complete!
 54.5209 -14/06/2006 12:49:33.529  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30478
 54.5210 -14/06/2006 12:49:33.529  000>> Good datagram received!
 54.5211 -14/06/2006 12:49:33.529  000>> Listener:Received dictionary
 54.5212 -14/06/2006 12:49:33.539  000>> 90>>>>>>>>>>Part datagram received!
 54.5213 -14/06/2006 12:49:33.539  000>> 90>>>>>>>>>>Complete!
 54.5214 -14/06/2006 12:49:33.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30479
 54.5215 -14/06/2006 12:49:33.539  000>> Good datagram received!
 54.5216 -14/06/2006 12:49:33.539  000>> Listener:Received RIB
 54.5217 -14/06/2006 12:49:33.539  000>> 0>>>>>>>>>>Part datagram received!
 54.5218 -14/06/2006 12:49:33.539  000>> 0>>>>>>>>>>Part datagram received!
 54.5219 -14/06/2006 12:49:33.549  000>> 638>>>>>>>>>>Part datagram received!
 54.5220 -14/06/2006 12:49:33.549  000>> 638>>>>>>>>>>Complete!
 54.5221 -14/06/2006 12:49:33.549  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30480
 54.5222 -14/06/2006 12:49:33.549  000>> Good datagram received!
 54.5223 -14/06/2006 12:49:33.559  000>> Listener:Received Bundle Offer
 54.5224 -14/06/2006 12:49:33.559  000>> Listener:Sending Empty bundle request...
 54.5225 -14/06/2006 12:49:33.569  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5226 -14/06/2006 12:49:33.569  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30053
 54.5227 -14/06/2006 12:49:33.649  000>> 78>>>>>>>>>>Part datagram received!
 54.5228 -14/06/2006 12:49:33.649  000>> 78>>>>>>>>>>Complete!
 54.5229 -14/06/2006 12:49:33.649  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30481
 54.5230 -14/06/2006 12:49:33.649  000>> Good datagram received!
 54.5231 -14/06/2006 12:49:33.649  000>> Initiator:No more requested bundles
 54.5232 -14/06/2006 12:49:33.649  000>> Listener(receiveBundles):We can restart connection...
 54.5233 -14/06/2006 12:49:33.749  000>> Hello Procedure:SENDSYN
 54.5234 -14/06/2006 12:49:33.749  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30054
 54.5235 -14/06/2006 12:49:33.789  000>> 91>>>>>>>>>>Part datagram received!
 54.5236 -14/06/2006 12:49:33.789  000>> 91>>>>>>>>>>Complete!
 54.5237 -14/06/2006 12:49:33.789  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30482
 54.5238 -14/06/2006 12:49:33.789  000>> Good datagram received!
 54.5239 -14/06/2006 12:49:33.789  000>> Receive Hello:SYNACK
 54.5240 -14/06/2006 12:49:33.789  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30055
 54.5241 -14/06/2006 12:49:33.889  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5242 -14/06/2006 12:49:33.889  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30056
 54.5243 -14/06/2006 12:49:33.889  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30057
 54.5244 -14/06/2006 12:49:33.889  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30058
 54.5245 -14/06/2006 12:49:34.060  000>> 78>>>>>>>>>>Part datagram received!
 54.5246 -14/06/2006 12:49:34.060  000>> 78>>>>>>>>>>Complete!
 54.5247 -14/06/2006 12:49:34.070  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30483
 54.5248 -14/06/2006 12:49:34.070  000>> Good datagram received!
 54.5249 -14/06/2006 12:49:34.070  000>> Initiator:No more requested bundles
 54.5250 -14/06/2006 12:49:34.070  000>> Initiator:But we can not restart connection...
 54.5251 -14/06/2006 12:49:34.250  000>> 826>>>>>>>>>>Part datagram received!
 54.5252 -14/06/2006 12:49:34.250  000>> 826>>>>>>>>>>Complete!
 54.5253 -14/06/2006 12:49:34.250  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30484
 54.5254 -14/06/2006 12:49:34.250  000>> Good datagram received!
 54.5255 -14/06/2006 12:49:34.250  000>> Listener:Received dictionary
 54.5256 -14/06/2006 12:49:34.250  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30485
 54.5257 -14/06/2006 12:49:34.250  000>> Good datagram received!
 54.5258 -14/06/2006 12:49:34.250  000>> Listener:Received RIB
 54.5259 -14/06/2006 12:49:34.250  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30486
 54.5260 -14/06/2006 12:49:34.250  000>> Good datagram received!
 54.5261 -14/06/2006 12:49:34.270  000>> Listener:Received Bundle Offer
 54.5262 -14/06/2006 12:49:34.270  000>> Listener:Sending Empty bundle request...
 54.5263 -14/06/2006 12:49:34.270  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.5264 -14/06/2006 12:49:34.270  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30059
 54.5265 -14/06/2006 12:49:34.410  000>> 91>>>>>>>>>>Part datagram received!
 54.5266 -14/06/2006 12:49:34.410  000>> 91>>>>>>>>>>Complete!
 54.5267 -14/06/2006 12:49:34.410  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30487
 54.5268 -14/06/2006 12:49:34.410  000>> Good datagram received!
 54.5269 -14/06/2006 12:49:34.410  000>> Receive Hello:SYN
 54.5270 -14/06/2006 12:49:34.410  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30060
 54.5271 -14/06/2006 12:49:34.470  000>> 91>>>>>>>>>>Part datagram received!
 54.5272 -14/06/2006 12:49:34.470  000>> 91>>>>>>>>>>Complete!
 54.5273 -14/06/2006 12:49:34.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30488
 54.5274 -14/06/2006 12:49:34.470  000>> Good datagram received!
 54.5275 -14/06/2006 12:49:34.470  000>> Receive Hello:ACK
 54.5276 -14/06/2006 12:49:34.570  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5277 -14/06/2006 12:49:34.570  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30061
 54.5278 -14/06/2006 12:49:34.570  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30062
 54.5279 -14/06/2006 12:49:34.570  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30063
 54.5280 -14/06/2006 12:49:34.570  000>> 98>>>>>>>>>>Part datagram received!
 54.5281 -14/06/2006 12:49:34.570  000>> 98>>>>>>>>>>Complete!
 54.5282 -14/06/2006 12:49:34.570  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30489
 54.5283 -14/06/2006 12:49:34.570  000>> Good datagram received!
 54.5284 -14/06/2006 12:49:34.580  000>> Listener:Received dictionary
 54.5285 -14/06/2006 12:49:34.580  000>> 90>>>>>>>>>>Part datagram received!
 54.5286 -14/06/2006 12:49:34.580  000>> 90>>>>>>>>>>Complete!
 54.5287 -14/06/2006 12:49:34.580  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30490
 54.5288 -14/06/2006 12:49:34.580  000>> Good datagram received!
 54.5289 -14/06/2006 12:49:34.580  000>> Listener:Received RIB
 54.5290 -14/06/2006 12:49:34.590  000>> 638>>>>>>>>>>Part datagram received!
 54.5291 -14/06/2006 12:49:34.590  000>> 638>>>>>>>>>>Complete!
 54.5292 -14/06/2006 12:49:34.590  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30491
 54.5293 -14/06/2006 12:49:34.590  000>> Good datagram received!
 54.5294 -14/06/2006 12:49:34.600  000>> Listener:Received Bundle Offer
 54.5295 -14/06/2006 12:49:34.600  000>> Listener:Sending Empty bundle request...
 54.5296 -14/06/2006 12:49:34.600  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5297 -14/06/2006 12:49:34.611  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30064
 54.5298 -14/06/2006 12:49:34.611  000>> 0>>>>>>>>>>Part datagram received!
 54.5299 -14/06/2006 12:49:34.611  000>> 0>>>>>>>>>>Part datagram received!
 54.5300 -14/06/2006 12:49:34.691  000>> 78>>>>>>>>>>Part datagram received!
 54.5301 -14/06/2006 12:49:34.691  000>> 78>>>>>>>>>>Complete!
 54.5302 -14/06/2006 12:49:34.691  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30492
 54.5303 -14/06/2006 12:49:34.691  000>> Good datagram received!
 54.5304 -14/06/2006 12:49:34.691  000>> Initiator:No more requested bundles
 54.5305 -14/06/2006 12:49:34.691  000>> Listener(receiveBundles):We can restart connection...
 54.5306 -14/06/2006 12:49:34.791  000>> Hello Procedure:SENDSYN
 54.5307 -14/06/2006 12:49:34.791  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30065
 54.5308 -14/06/2006 12:49:34.831  000>> 91>>>>>>>>>>Part datagram received!
 54.5309 -14/06/2006 12:49:34.831  000>> 91>>>>>>>>>>Complete!
 54.5310 -14/06/2006 12:49:34.831  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30493
 54.5311 -14/06/2006 12:49:34.831  000>> Good datagram received!
 54.5312 -14/06/2006 12:49:34.831  000>> Receive Hello:SYNACK
 54.5313 -14/06/2006 12:49:34.831  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30066
 54.5314 -14/06/2006 12:49:34.931  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5315 -14/06/2006 12:49:34.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30067
 54.5316 -14/06/2006 12:49:34.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30068
 54.5317 -14/06/2006 12:49:34.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30069
 54.5318 -14/06/2006 12:49:35.051  000>> 78>>>>>>>>>>Part datagram received!
 54.5319 -14/06/2006 12:49:35.051  000>> 78>>>>>>>>>>Complete!
 54.5320 -14/06/2006 12:49:35.051  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30494
 54.5321 -14/06/2006 12:49:35.051  000>> Good datagram received!
 54.5322 -14/06/2006 12:49:35.051  000>> Initiator:No more requested bundles
 54.5323 -14/06/2006 12:49:35.051  000>> Initiator:But we can not restart connection...
 54.5324 -14/06/2006 12:49:35.251  000>> 826>>>>>>>>>>Part datagram received!
 54.5325 -14/06/2006 12:49:35.251  000>> 826>>>>>>>>>>Complete!
 54.5326 -14/06/2006 12:49:35.251  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30495
 54.5327 -14/06/2006 12:49:35.251  000>> Good datagram received!
 54.5328 -14/06/2006 12:49:35.251  000>> Listener:Received dictionary
 54.5329 -14/06/2006 12:49:35.251  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30496
 54.5330 -14/06/2006 12:49:35.251  000>> Good datagram received!
 54.5331 -14/06/2006 12:49:35.251  000>> Listener:Received RIB
 54.5332 -14/06/2006 12:49:35.251  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30497
 54.5333 -14/06/2006 12:49:35.261  000>> Good datagram received!
 54.5334 -14/06/2006 12:49:35.271  000>> Listener:Received Bundle Offer
 54.5335 -14/06/2006 12:49:35.271  000>> Listener:Sending Empty bundle request...
 54.5336 -14/06/2006 12:49:35.271  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.5337 -14/06/2006 12:49:35.271  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30070
 54.5338 -14/06/2006 12:49:35.402  000>> 91>>>>>>>>>>Part datagram received!
 54.5339 -14/06/2006 12:49:35.402  000>> 91>>>>>>>>>>Complete!
 54.5340 -14/06/2006 12:49:35.402  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30498
 54.5341 -14/06/2006 12:49:35.402  000>> Good datagram received!
 54.5342 -14/06/2006 12:49:35.402  000>> Receive Hello:SYN
 54.5343 -14/06/2006 12:49:35.402  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30071
 54.5344 -14/06/2006 12:49:35.432  000>> 91>>>>>>>>>>Part datagram received!
 54.5345 -14/06/2006 12:49:35.432  000>> 91>>>>>>>>>>Complete!
 54.5346 -14/06/2006 12:49:35.432  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30499
 54.5347 -14/06/2006 12:49:35.432  000>> Good datagram received!
 54.5348 -14/06/2006 12:49:35.442  000>> Receive Hello:ACK
 54.5349 -14/06/2006 12:49:35.542  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5350 -14/06/2006 12:49:35.542  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30072
 54.5351 -14/06/2006 12:49:35.542  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30073
 54.5352 -14/06/2006 12:49:35.542  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30074
 54.5353 -14/06/2006 12:49:35.542  000>> 826>>>>>>>>>>Part datagram received!
 54.5354 -14/06/2006 12:49:35.552  000>> 826>>>>>>>>>>Complete!
 54.5355 -14/06/2006 12:49:35.552  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30500
 54.5356 -14/06/2006 12:49:35.552  000>> Good datagram received!
 54.5357 -14/06/2006 12:49:35.552  000>> Listener:Received dictionary
 54.5358 -14/06/2006 12:49:35.552  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30501
 54.5359 -14/06/2006 12:49:35.552  000>> Good datagram received!
 54.5360 -14/06/2006 12:49:35.552  000>> Listener:Received RIB
 54.5361 -14/06/2006 12:49:35.552  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30502
 54.5362 -14/06/2006 12:49:35.552  000>> Good datagram received!
 54.5363 -14/06/2006 12:49:35.572  000>> Listener:Received Bundle Offer
 54.5364 -14/06/2006 12:49:35.572  000>> Listener:Sending Empty bundle request...
 54.5365 -14/06/2006 12:49:35.572  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5366 -14/06/2006 12:49:35.572  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30075
 54.5367 -14/06/2006 12:49:35.582  000>> 0>>>>>>>>>>Part datagram received!
 54.5368 -14/06/2006 12:49:35.582  000>> 0>>>>>>>>>>Part datagram received!
 54.5369 -14/06/2006 12:49:35.772  000>> 78>>>>>>>>>>Part datagram received!
 54.5370 -14/06/2006 12:49:35.772  000>> 78>>>>>>>>>>Complete!
 54.5371 -14/06/2006 12:49:35.772  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30503
 54.5372 -14/06/2006 12:49:35.772  000>> Good datagram received!
 54.5373 -14/06/2006 12:49:35.772  000>> Initiator:No more requested bundles
 54.5374 -14/06/2006 12:49:35.772  000>> Listener(receiveBundles):We can restart connection...
 54.5375 -14/06/2006 12:49:35.872  000>> Hello Procedure:SENDSYN
 54.5376 -14/06/2006 12:49:35.872  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30076
 54.5377 -14/06/2006 12:49:35.912  000>> 91>>>>>>>>>>Part datagram received!
 54.5378 -14/06/2006 12:49:35.912  000>> 91>>>>>>>>>>Complete!
 54.5379 -14/06/2006 12:49:35.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30504
 54.5380 -14/06/2006 12:49:35.912  000>> Good datagram received!
 54.5381 -14/06/2006 12:49:35.912  000>> Receive Hello:SYNACK
 54.5382 -14/06/2006 12:49:35.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30077
 54.5383 -14/06/2006 12:49:36.013  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5384 -14/06/2006 12:49:36.013  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30078
 54.5385 -14/06/2006 12:49:36.013  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30079
 54.5386 -14/06/2006 12:49:36.013  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30080
 54.5387 -14/06/2006 12:49:36.173  000>> 78>>>>>>>>>>Part datagram received!
 54.5388 -14/06/2006 12:49:36.173  000>> 78>>>>>>>>>>Complete!
 54.5389 -14/06/2006 12:49:36.173  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30505
 54.5390 -14/06/2006 12:49:36.173  000>> Good datagram received!
 54.5391 -14/06/2006 12:49:36.173  000>> Initiator:No more requested bundles
 54.5392 -14/06/2006 12:49:36.173  000>> Initiator:But we can not restart connection...
 54.5393 -14/06/2006 12:49:36.363  000>> 826>>>>>>>>>>Part datagram received!
 54.5394 -14/06/2006 12:49:36.363  000>> 826>>>>>>>>>>Complete!
 54.5395 -14/06/2006 12:49:36.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30506
 54.5396 -14/06/2006 12:49:36.363  000>> Good datagram received!
 54.5397 -14/06/2006 12:49:36.363  000>> Listener:Received dictionary
 54.5398 -14/06/2006 12:49:36.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30507
 54.5399 -14/06/2006 12:49:36.363  000>> Good datagram received!
 54.5400 -14/06/2006 12:49:36.363  000>> Listener:Received RIB
 54.5401 -14/06/2006 12:49:36.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30508
 54.5402 -14/06/2006 12:49:36.373  000>> Good datagram received!
 54.5403 -14/06/2006 12:49:36.383  000>> Listener:Received Bundle Offer
 54.5404 -14/06/2006 12:49:36.383  000>> Listener:Sending Empty bundle request...
 54.5405 -14/06/2006 12:49:36.383  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.5406 -14/06/2006 12:49:36.383  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30081
 54.5407 -14/06/2006 12:49:36.523  000>> 91>>>>>>>>>>Part datagram received!
 54.5408 -14/06/2006 12:49:36.523  000>> 91>>>>>>>>>>Complete!
 54.5409 -14/06/2006 12:49:36.523  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30509
 54.5410 -14/06/2006 12:49:36.523  000>> Good datagram received!
 54.5411 -14/06/2006 12:49:36.523  000>> Receive Hello:SYN
 54.5412 -14/06/2006 12:49:36.523  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30082
 54.5413 -14/06/2006 12:49:36.543  000>> 91>>>>>>>>>>Part datagram received!
 54.5414 -14/06/2006 12:49:36.543  000>> 91>>>>>>>>>>Complete!
 54.5415 -14/06/2006 12:49:36.543  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30510
 54.5416 -14/06/2006 12:49:36.543  000>> Good datagram received!
 54.5417 -14/06/2006 12:49:36.543  000>> Receive Hello:ACK
 54.5418 -14/06/2006 12:49:36.643  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5419 -14/06/2006 12:49:36.643  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30083
 54.5420 -14/06/2006 12:49:36.643  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30084
 54.5421 -14/06/2006 12:49:36.643  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30085
 54.5422 -14/06/2006 12:49:36.653  000>> 98>>>>>>>>>>Part datagram received!
 54.5423 -14/06/2006 12:49:36.653  000>> 98>>>>>>>>>>Complete!
 54.5424 -14/06/2006 12:49:36.653  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30511
 54.5425 -14/06/2006 12:49:36.653  000>> Good datagram received!
 54.5426 -14/06/2006 12:49:36.653  000>> Listener:Received dictionary
 54.5427 -14/06/2006 12:49:36.653  000>> 90>>>>>>>>>>Part datagram received!
 54.5428 -14/06/2006 12:49:36.653  000>> 90>>>>>>>>>>Complete!
 54.5429 -14/06/2006 12:49:36.653  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30512
 54.5430 -14/06/2006 12:49:36.653  000>> Good datagram received!
 54.5431 -14/06/2006 12:49:36.653  000>> Listener:Received RIB
 54.5432 -14/06/2006 12:49:36.854  000>> 716>>>>>>>>>>Part datagram received!
 54.5433 -14/06/2006 12:49:36.854  000>> 716>>>>>>>>>>Complete!
 54.5434 -14/06/2006 12:49:36.854  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30513
 54.5435 -14/06/2006 12:49:36.854  000>> Good datagram received!
 54.5436 -14/06/2006 12:49:36.854  000>> Listener:Received Bundle Offer
 54.5437 -14/06/2006 12:49:36.864  000>> Listener:Sending Empty bundle request...
 54.5438 -14/06/2006 12:49:36.864  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5439 -14/06/2006 12:49:36.864  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30086
 54.5440 -14/06/2006 12:49:36.864  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30514
 54.5441 -14/06/2006 12:49:36.864  000>> Good datagram received!
 54.5442 -14/06/2006 12:49:36.864  000>> Initiator:No more requested bundles
 54.5443 -14/06/2006 12:49:36.864  000>> Listener(receiveBundles):We can restart connection...
 54.5444 -14/06/2006 12:49:36.964  000>> Hello Procedure:SENDSYN
 54.5445 -14/06/2006 12:49:36.964  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30087
 54.5446 -14/06/2006 12:49:37.034  000>> 91>>>>>>>>>>Part datagram received!
 54.5447 -14/06/2006 12:49:37.034  000>> 91>>>>>>>>>>Complete!
 54.5448 -14/06/2006 12:49:37.034  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30515
 54.5449 -14/06/2006 12:49:37.034  000>> Good datagram received!
 54.5450 -14/06/2006 12:49:37.034  000>> Receive Hello:SYNACK
 54.5451 -14/06/2006 12:49:37.034  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30088
 54.5452 -14/06/2006 12:49:37.134  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5453 -14/06/2006 12:49:37.134  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30089
 54.5454 -14/06/2006 12:49:37.134  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30090
 54.5455 -14/06/2006 12:49:37.134  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30091
 54.5456 -14/06/2006 12:49:37.154  000>> 98>>>>>>>>>>Part datagram received!
 54.5457 -14/06/2006 12:49:37.164  000>> 98>>>>>>>>>>Complete!
 54.5458 -14/06/2006 12:49:37.164  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30516
 54.5459 -14/06/2006 12:49:37.164  000>> Good datagram received!
 54.5460 -14/06/2006 12:49:37.164  000>> Listener:Received dictionary
 54.5461 -14/06/2006 12:49:37.164  000>> 90>>>>>>>>>>Part datagram received!
 54.5462 -14/06/2006 12:49:37.164  000>> 90>>>>>>>>>>Complete!
 54.5463 -14/06/2006 12:49:37.164  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30517
 54.5464 -14/06/2006 12:49:37.164  000>> Good datagram received!
 54.5465 -14/06/2006 12:49:37.164  000>> Listener:Received RIB
 54.5466 -14/06/2006 12:49:37.354  000>> 716>>>>>>>>>>Part datagram received!
 54.5467 -14/06/2006 12:49:37.354  000>> 716>>>>>>>>>>Complete!
 54.5468 -14/06/2006 12:49:37.354  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30518
 54.5469 -14/06/2006 12:49:37.354  000>> Good datagram received!
 54.5470 -14/06/2006 12:49:37.374  000>> Listener:Received Bundle Offer
 54.5471 -14/06/2006 12:49:37.374  000>> Listener:Sending Empty bundle request...
 54.5472 -14/06/2006 12:49:37.374  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5473 -14/06/2006 12:49:37.374  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30092
 54.5474 -14/06/2006 12:49:37.374  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30519
 54.5475 -14/06/2006 12:49:37.374  000>> Good datagram received!
 54.5476 -14/06/2006 12:49:37.374  000>> Initiator:No more requested bundles
 54.5477 -14/06/2006 12:49:37.374  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.5478 -14/06/2006 12:49:37.505  000>> 91>>>>>>>>>>Part datagram received!
 54.5479 -14/06/2006 12:49:37.505  000>> 91>>>>>>>>>>Complete!
 54.5480 -14/06/2006 12:49:37.505  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30520
 54.5481 -14/06/2006 12:49:37.505  000>> Good datagram received!
 54.5482 -14/06/2006 12:49:37.505  000>> Receive Hello:SYN
 54.5483 -14/06/2006 12:49:37.505  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30093
 54.5484 -14/06/2006 12:49:37.525  000>> 91>>>>>>>>>>Part datagram received!
 54.5485 -14/06/2006 12:49:37.525  000>> 91>>>>>>>>>>Complete!
 54.5486 -14/06/2006 12:49:37.525  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30521
 54.5487 -14/06/2006 12:49:37.525  000>> Good datagram received!
 54.5488 -14/06/2006 12:49:37.525  000>> Receive Hello:ACK
 54.5489 -14/06/2006 12:49:37.625  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5490 -14/06/2006 12:49:37.625  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30094
 54.5491 -14/06/2006 12:49:37.625  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30095
 54.5492 -14/06/2006 12:49:37.625  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30096
 54.5493 -14/06/2006 12:49:37.635  000>> 98>>>>>>>>>>Part datagram received!
 54.5494 -14/06/2006 12:49:37.635  000>> 98>>>>>>>>>>Complete!
 54.5495 -14/06/2006 12:49:37.635  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30522
 54.5496 -14/06/2006 12:49:37.635  000>> Good datagram received!
 54.5497 -14/06/2006 12:49:37.635  000>> Listener:Received dictionary
 54.5498 -14/06/2006 12:49:37.635  000>> 90>>>>>>>>>>Part datagram received!
 54.5499 -14/06/2006 12:49:37.635  000>> 90>>>>>>>>>>Complete!
 54.5500 -14/06/2006 12:49:37.635  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30523
 54.5501 -14/06/2006 12:49:37.635  000>> Good datagram received!
 54.5502 -14/06/2006 12:49:37.635  000>> Listener:Received RIB
 54.5503 -14/06/2006 12:49:37.755  000>> 716>>>>>>>>>>Part datagram received!
 54.5504 -14/06/2006 12:49:37.755  000>> 716>>>>>>>>>>Complete!
 54.5505 -14/06/2006 12:49:37.755  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30524
 54.5506 -14/06/2006 12:49:37.755  000>> Good datagram received!
 54.5507 -14/06/2006 12:49:37.765  000>> Listener:Received Bundle Offer
 54.5508 -14/06/2006 12:49:37.765  000>> Listener:Sending Empty bundle request...
 54.5509 -14/06/2006 12:49:37.765  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5510 -14/06/2006 12:49:37.765  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30097
 54.5511 -14/06/2006 12:49:37.765  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30525
 54.5512 -14/06/2006 12:49:37.765  000>> Good datagram received!
 54.5513 -14/06/2006 12:49:37.765  000>> Initiator:No more requested bundles
 54.5514 -14/06/2006 12:49:37.765  000>> Listener(receiveBundles):We can restart connection...
 54.5515 -14/06/2006 12:49:37.865  000>> Hello Procedure:SENDSYN
 54.5516 -14/06/2006 12:49:37.865  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30098
 54.5517 -14/06/2006 12:49:37.925  000>> 91>>>>>>>>>>Part datagram received!
 54.5518 -14/06/2006 12:49:37.925  000>> 91>>>>>>>>>>Complete!
 54.5519 -14/06/2006 12:49:37.925  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30526
 54.5520 -14/06/2006 12:49:37.925  000>> Good datagram received!
 54.5521 -14/06/2006 12:49:37.925  000>> Receive Hello:SYNACK
 54.5522 -14/06/2006 12:49:37.925  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30099
 54.5523 -14/06/2006 12:49:38.025  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5524 -14/06/2006 12:49:38.025  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30100
 54.5525 -14/06/2006 12:49:38.025  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30101
 54.5526 -14/06/2006 12:49:38.025  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30102
 54.5527 -14/06/2006 12:49:38.156  000>> 78>>>>>>>>>>Part datagram received!
 54.5528 -14/06/2006 12:49:38.156  000>> 78>>>>>>>>>>Complete!
 54.5529 -14/06/2006 12:49:38.156  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30527
 54.5530 -14/06/2006 12:49:38.166  000>> Good datagram received!
 54.5531 -14/06/2006 12:49:38.166  000>> Initiator:No more requested bundles
 54.5532 -14/06/2006 12:49:38.166  000>> Initiator:But we can not restart connection...
 54.5533 -14/06/2006 12:49:38.356  000>> 826>>>>>>>>>>Part datagram received!
 54.5534 -14/06/2006 12:49:38.356  000>> 826>>>>>>>>>>Complete!
 54.5535 -14/06/2006 12:49:38.356  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30528
 54.5536 -14/06/2006 12:49:38.356  000>> Good datagram received!
 54.5537 -14/06/2006 12:49:38.356  000>> Listener:Received dictionary
 54.5538 -14/06/2006 12:49:38.366  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30529
 54.5539 -14/06/2006 12:49:38.366  000>> Good datagram received!
 54.5540 -14/06/2006 12:49:38.366  000>> Listener:Received RIB
 54.5541 -14/06/2006 12:49:38.366  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30530
 54.5542 -14/06/2006 12:49:38.366  000>> Good datagram received!
 54.5543 -14/06/2006 12:49:38.376  000>> Listener:Received Bundle Offer
 54.5544 -14/06/2006 12:49:38.376  000>> Listener:Sending Empty bundle request...
 54.5545 -14/06/2006 12:49:38.376  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.5546 -14/06/2006 12:49:38.386  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30103
 54.5547 -14/06/2006 12:49:38.516  000>> 91>>>>>>>>>>Part datagram received!
 54.5548 -14/06/2006 12:49:38.526  000>> 91>>>>>>>>>>Complete!
 54.5549 -14/06/2006 12:49:38.526  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30531
 54.5550 -14/06/2006 12:49:38.526  000>> Good datagram received!
 54.5551 -14/06/2006 12:49:38.526  000>> Receive Hello:SYN
 54.5552 -14/06/2006 12:49:38.526  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30104
 54.5553 -14/06/2006 12:49:38.546  000>> 91>>>>>>>>>>Part datagram received!
 54.5554 -14/06/2006 12:49:38.546  000>> 91>>>>>>>>>>Complete!
 54.5555 -14/06/2006 12:49:38.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30532
 54.5556 -14/06/2006 12:49:38.546  000>> Good datagram received!
 54.5557 -14/06/2006 12:49:38.546  000>> Receive Hello:ACK
 54.5558 -14/06/2006 12:49:38.646  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5559 -14/06/2006 12:49:38.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30105
 54.5560 -14/06/2006 12:49:38.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30106
 54.5561 -14/06/2006 12:49:38.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30107
 54.5562 -14/06/2006 12:49:38.656  000>> 98>>>>>>>>>>Part datagram received!
 54.5563 -14/06/2006 12:49:38.656  000>> 98>>>>>>>>>>Complete!
 54.5564 -14/06/2006 12:49:38.656  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30533
 54.5565 -14/06/2006 12:49:38.656  000>> Good datagram received!
 54.5566 -14/06/2006 12:49:38.656  000>> Listener:Received dictionary
 54.5567 -14/06/2006 12:49:38.656  000>> 90>>>>>>>>>>Part datagram received!
 54.5568 -14/06/2006 12:49:38.656  000>> 90>>>>>>>>>>Complete!
 54.5569 -14/06/2006 12:49:38.656  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30534
 54.5570 -14/06/2006 12:49:38.656  000>> Good datagram received!
 54.5571 -14/06/2006 12:49:38.656  000>> Listener:Received RIB
 54.5572 -14/06/2006 12:49:38.857  000>> 716>>>>>>>>>>Part datagram received!
 54.5573 -14/06/2006 12:49:38.857  000>> 716>>>>>>>>>>Complete!
 54.5574 -14/06/2006 12:49:38.857  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30535
 54.5575 -14/06/2006 12:49:38.857  000>> Good datagram received!
 54.5576 -14/06/2006 12:49:38.867  000>> Listener:Received Bundle Offer
 54.5577 -14/06/2006 12:49:38.867  000>> Listener:Sending Empty bundle request...
 54.5578 -14/06/2006 12:49:38.867  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5579 -14/06/2006 12:49:38.867  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30108
 54.5580 -14/06/2006 12:49:38.867  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30536
 54.5581 -14/06/2006 12:49:38.867  000>> Good datagram received!
 54.5582 -14/06/2006 12:49:38.867  000>> Initiator:No more requested bundles
 54.5583 -14/06/2006 12:49:38.867  000>> Listener(receiveBundles):We can restart connection...
 54.5584 -14/06/2006 12:49:38.967  000>> Hello Procedure:SENDSYN
 54.5585 -14/06/2006 12:49:38.967  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30109
 54.5586 -14/06/2006 12:49:39.027  000>> 91>>>>>>>>>>Part datagram received!
 54.5587 -14/06/2006 12:49:39.027  000>> 91>>>>>>>>>>Complete!
 54.5588 -14/06/2006 12:49:39.027  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30537
 54.5589 -14/06/2006 12:49:39.027  000>> Good datagram received!
 54.5590 -14/06/2006 12:49:39.037  000>> Receive Hello:SYNACK
 54.5591 -14/06/2006 12:49:39.037  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30110
 54.5592 -14/06/2006 12:49:39.137  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5593 -14/06/2006 12:49:39.137  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30111
 54.5594 -14/06/2006 12:49:39.137  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30112
 54.5595 -14/06/2006 12:49:39.147  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30113
 54.5596 -14/06/2006 12:49:39.157  000>> 98>>>>>>>>>>Part datagram received!
 54.5597 -14/06/2006 12:49:39.157  000>> 98>>>>>>>>>>Complete!
 54.5598 -14/06/2006 12:49:39.157  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30538
 54.5599 -14/06/2006 12:49:39.157  000>> Good datagram received!
 54.5600 -14/06/2006 12:49:39.157  000>> Listener:Received dictionary
 54.5601 -14/06/2006 12:49:39.157  000>> 90>>>>>>>>>>Part datagram received!
 54.5602 -14/06/2006 12:49:39.157  000>> 90>>>>>>>>>>Complete!
 54.5603 -14/06/2006 12:49:39.157  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30539
 54.5604 -14/06/2006 12:49:39.157  000>> Good datagram received!
 54.5605 -14/06/2006 12:49:39.167  000>> Listener:Received RIB
 54.5606 -14/06/2006 12:49:39.357  000>> 716>>>>>>>>>>Part datagram received!
 54.5607 -14/06/2006 12:49:39.367  000>> 716>>>>>>>>>>Complete!
 54.5608 -14/06/2006 12:49:39.367  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30540
 54.5609 -14/06/2006 12:49:39.367  000>> Good datagram received!
 54.5610 -14/06/2006 12:49:39.377  000>> Listener:Received Bundle Offer
 54.5611 -14/06/2006 12:49:39.377  000>> Listener:Sending Empty bundle request...
 54.5612 -14/06/2006 12:49:39.377  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5613 -14/06/2006 12:49:39.377  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30114
 54.5614 -14/06/2006 12:49:39.377  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30541
 54.5615 -14/06/2006 12:49:39.387  000>> Good datagram received!
 54.5616 -14/06/2006 12:49:39.387  000>> Initiator:No more requested bundles
 54.5617 -14/06/2006 12:49:39.387  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.5618 -14/06/2006 12:49:39.518  000>> 91>>>>>>>>>>Part datagram received!
 54.5619 -14/06/2006 12:49:39.518  000>> 91>>>>>>>>>>Complete!
 54.5620 -14/06/2006 12:49:39.518  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30542
 54.5621 -14/06/2006 12:49:39.518  000>> Good datagram received!
 54.5622 -14/06/2006 12:49:39.518  000>> Receive Hello:SYN
 54.5623 -14/06/2006 12:49:39.518  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30115
 54.5624 -14/06/2006 12:49:39.538  000>> 91>>>>>>>>>>Part datagram received!
 54.5625 -14/06/2006 12:49:39.538  000>> 91>>>>>>>>>>Complete!
 54.5626 -14/06/2006 12:49:39.538  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30543
 54.5627 -14/06/2006 12:49:39.538  000>> Good datagram received!
 54.5628 -14/06/2006 12:49:39.538  000>> Receive Hello:ACK
 54.5629 -14/06/2006 12:49:39.638  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5630 -14/06/2006 12:49:39.638  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30116
 54.5631 -14/06/2006 12:49:39.638  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30117
 54.5632 -14/06/2006 12:49:39.638  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30118
 54.5633 -14/06/2006 12:49:39.658  000>> 98>>>>>>>>>>Part datagram received!
 54.5634 -14/06/2006 12:49:39.658  000>> 98>>>>>>>>>>Complete!
 54.5635 -14/06/2006 12:49:39.658  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30544
 54.5636 -14/06/2006 12:49:39.658  000>> Good datagram received!
 54.5637 -14/06/2006 12:49:39.658  000>> Listener:Received dictionary
 54.5638 -14/06/2006 12:49:39.658  000>> 90>>>>>>>>>>Part datagram received!
 54.5639 -14/06/2006 12:49:39.658  000>> 90>>>>>>>>>>Complete!
 54.5640 -14/06/2006 12:49:39.658  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30545
 54.5641 -14/06/2006 12:49:39.658  000>> Good datagram received!
 54.5642 -14/06/2006 12:49:39.658  000>> Listener:Received RIB
 54.5643 -14/06/2006 12:49:39.858  000>> 716>>>>>>>>>>Part datagram received!
 54.5644 -14/06/2006 12:49:39.858  000>> 716>>>>>>>>>>Complete!
 54.5645 -14/06/2006 12:49:39.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30546
 54.5646 -14/06/2006 12:49:39.868  000>> Good datagram received!
 54.5647 -14/06/2006 12:49:39.868  000>> Listener:Received Bundle Offer
 54.5648 -14/06/2006 12:49:39.868  000>> Listener:Sending Empty bundle request...
 54.5649 -14/06/2006 12:49:39.868  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5650 -14/06/2006 12:49:39.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30119
 54.5651 -14/06/2006 12:49:39.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30547
 54.5652 -14/06/2006 12:49:39.868  000>> Good datagram received!
 54.5653 -14/06/2006 12:49:39.868  000>> Initiator:No more requested bundles
 54.5654 -14/06/2006 12:49:39.868  000>> Listener(receiveBundles):We can restart connection...
 54.5655 -14/06/2006 12:49:39.968  000>> Hello Procedure:SENDSYN
 54.5656 -14/06/2006 12:49:39.968  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30120
 54.5657 -14/06/2006 12:49:40.038  000>> 91>>>>>>>>>>Part datagram received!
 54.5658 -14/06/2006 12:49:40.038  000>> 91>>>>>>>>>>Complete!
 54.5659 -14/06/2006 12:49:40.038  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30548
 54.5660 -14/06/2006 12:49:40.038  000>> Good datagram received!
 54.5661 -14/06/2006 12:49:40.038  000>> Receive Hello:SYNACK
 54.5662 -14/06/2006 12:49:40.038  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30121
 54.5663 -14/06/2006 12:49:40.138  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5664 -14/06/2006 12:49:40.138  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30122
 54.5665 -14/06/2006 12:49:40.138  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30123
 54.5666 -14/06/2006 12:49:40.138  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30124
 54.5667 -14/06/2006 12:49:40.168  000>> 98>>>>>>>>>>Part datagram received!
 54.5668 -14/06/2006 12:49:40.168  000>> 98>>>>>>>>>>Complete!
 54.5669 -14/06/2006 12:49:40.168  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30549
 54.5670 -14/06/2006 12:49:40.168  000>> Good datagram received!
 54.5671 -14/06/2006 12:49:40.168  000>> Listener:Received dictionary
 54.5672 -14/06/2006 12:49:40.179  000>> 90>>>>>>>>>>Part datagram received!
 54.5673 -14/06/2006 12:49:40.179  000>> 90>>>>>>>>>>Complete!
 54.5674 -14/06/2006 12:49:40.179  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30550
 54.5675 -14/06/2006 12:49:40.179  000>> Good datagram received!
 54.5676 -14/06/2006 12:49:40.179  000>> Listener:Received RIB
 54.5677 -14/06/2006 12:49:40.359  000>> 716>>>>>>>>>>Part datagram received!
 54.5678 -14/06/2006 12:49:40.369  000>> 716>>>>>>>>>>Complete!
 54.5679 -14/06/2006 12:49:40.369  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30551
 54.5680 -14/06/2006 12:49:40.369  000>> Good datagram received!
 54.5681 -14/06/2006 12:49:40.379  000>> Listener:Received Bundle Offer
 54.5682 -14/06/2006 12:49:40.379  000>> Listener:Sending Empty bundle request...
 54.5683 -14/06/2006 12:49:40.379  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5684 -14/06/2006 12:49:40.379  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30125
 54.5685 -14/06/2006 12:49:40.379  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30552
 54.5686 -14/06/2006 12:49:40.389  000>> Good datagram received!
 54.5687 -14/06/2006 12:49:40.389  000>> Initiator:No more requested bundles
 54.5688 -14/06/2006 12:49:40.389  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.5689 -14/06/2006 12:49:40.519  000>> 91>>>>>>>>>>Part datagram received!
 54.5690 -14/06/2006 12:49:40.519  000>> 91>>>>>>>>>>Complete!
 54.5691 -14/06/2006 12:49:40.519  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30553
 54.5692 -14/06/2006 12:49:40.519  000>> Good datagram received!
 54.5693 -14/06/2006 12:49:40.519  000>> Receive Hello:SYN
 54.5694 -14/06/2006 12:49:40.519  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30126
 54.5695 -14/06/2006 12:49:40.559  000>> 91>>>>>>>>>>Part datagram received!
 54.5696 -14/06/2006 12:49:40.559  000>> 91>>>>>>>>>>Complete!
 54.5697 -14/06/2006 12:49:40.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30554
 54.5698 -14/06/2006 12:49:40.559  000>> Good datagram received!
 54.5699 -14/06/2006 12:49:40.559  000>> Receive Hello:ACK
 54.5700 -14/06/2006 12:49:40.659  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5701 -14/06/2006 12:49:40.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30127
 54.5702 -14/06/2006 12:49:40.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30128
 54.5703 -14/06/2006 12:49:40.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30129
 54.5704 -14/06/2006 12:49:40.669  000>> 98>>>>>>>>>>Part datagram received!
 54.5705 -14/06/2006 12:49:40.669  000>> 98>>>>>>>>>>Complete!
 54.5706 -14/06/2006 12:49:40.669  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30555
 54.5707 -14/06/2006 12:49:40.669  000>> Good datagram received!
 54.5708 -14/06/2006 12:49:40.669  000>> Listener:Received dictionary
 54.5709 -14/06/2006 12:49:40.689  000>> 90>>>>>>>>>>Part datagram received!
 54.5710 -14/06/2006 12:49:40.689  000>> 90>>>>>>>>>>Complete!
 54.5711 -14/06/2006 12:49:40.689  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30556
 54.5712 -14/06/2006 12:49:40.689  000>> Good datagram received!
 54.5713 -14/06/2006 12:49:40.689  000>> Listener:Received RIB
 54.5714 -14/06/2006 12:49:40.870  000>> 716>>>>>>>>>>Part datagram received!
 54.5715 -14/06/2006 12:49:40.870  000>> 716>>>>>>>>>>Complete!
 54.5716 -14/06/2006 12:49:40.870  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30557
 54.5717 -14/06/2006 12:49:40.870  000>> Good datagram received!
 54.5718 -14/06/2006 12:49:40.870  000>> Listener:Received Bundle Offer
 54.5719 -14/06/2006 12:49:40.870  000>> Listener:Sending Empty bundle request...
 54.5720 -14/06/2006 12:49:40.870  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5721 -14/06/2006 12:49:40.870  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30130
 54.5722 -14/06/2006 12:49:40.870  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30558
 54.5723 -14/06/2006 12:49:40.870  000>> Good datagram received!
 54.5724 -14/06/2006 12:49:40.870  000>> Initiator:No more requested bundles
 54.5725 -14/06/2006 12:49:40.870  000>> Listener(receiveBundles):We can restart connection...
 54.5726 -14/06/2006 12:49:40.970  000>> Hello Procedure:SENDSYN
 54.5727 -14/06/2006 12:49:40.970  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30131
 54.5728 -14/06/2006 12:49:41.030  000>> 91>>>>>>>>>>Part datagram received!
 54.5729 -14/06/2006 12:49:41.030  000>> 91>>>>>>>>>>Complete!
 54.5730 -14/06/2006 12:49:41.030  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30559
 54.5731 -14/06/2006 12:49:41.030  000>> Good datagram received!
 54.5732 -14/06/2006 12:49:41.030  000>> Receive Hello:SYNACK
 54.5733 -14/06/2006 12:49:41.030  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30132
 54.5734 -14/06/2006 12:49:41.140  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5735 -14/06/2006 12:49:41.140  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30133
 54.5736 -14/06/2006 12:49:41.140  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30134
 54.5737 -14/06/2006 12:49:41.140  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30135
 54.5738 -14/06/2006 12:49:41.160  000>> 98>>>>>>>>>>Part datagram received!
 54.5739 -14/06/2006 12:49:41.160  000>> 98>>>>>>>>>>Complete!
 54.5740 -14/06/2006 12:49:41.160  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30560
 54.5741 -14/06/2006 12:49:41.160  000>> Good datagram received!
 54.5742 -14/06/2006 12:49:41.160  000>> Listener:Received dictionary
 54.5743 -14/06/2006 12:49:41.160  000>> 90>>>>>>>>>>Part datagram received!
 54.5744 -14/06/2006 12:49:41.160  000>> 90>>>>>>>>>>Complete!
 54.5745 -14/06/2006 12:49:41.160  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30561
 54.5746 -14/06/2006 12:49:41.170  000>> Good datagram received!
 54.5747 -14/06/2006 12:49:41.170  000>> Listener:Received RIB
 54.5748 -14/06/2006 12:49:41.270  000>> 716>>>>>>>>>>Part datagram received!
 54.5749 -14/06/2006 12:49:41.270  000>> 716>>>>>>>>>>Complete!
 54.5750 -14/06/2006 12:49:41.270  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30562
 54.5751 -14/06/2006 12:49:41.270  000>> Good datagram received!
 54.5752 -14/06/2006 12:49:41.280  000>> Listener:Received Bundle Offer
 54.5753 -14/06/2006 12:49:41.280  000>> Listener:Sending Empty bundle request...
 54.5754 -14/06/2006 12:49:41.280  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5755 -14/06/2006 12:49:41.290  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30136
 54.5756 -14/06/2006 12:49:41.290  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30563
 54.5757 -14/06/2006 12:49:41.290  000>> Good datagram received!
 54.5758 -14/06/2006 12:49:41.290  000>> Initiator:No more requested bundles
 54.5759 -14/06/2006 12:49:41.290  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.5760 -14/06/2006 12:49:41.420  000>> 91>>>>>>>>>>Part datagram received!
 54.5761 -14/06/2006 12:49:41.420  000>> 91>>>>>>>>>>Complete!
 54.5762 -14/06/2006 12:49:41.420  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30564
 54.5763 -14/06/2006 12:49:41.420  000>> Good datagram received!
 54.5764 -14/06/2006 12:49:41.420  000>> Receive Hello:SYN
 54.5765 -14/06/2006 12:49:41.420  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30137
 54.5766 -14/06/2006 12:49:41.440  000>> 91>>>>>>>>>>Part datagram received!
 54.5767 -14/06/2006 12:49:41.440  000>> 91>>>>>>>>>>Complete!
 54.5768 -14/06/2006 12:49:41.440  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30565
 54.5769 -14/06/2006 12:49:41.440  000>> Good datagram received!
 54.5770 -14/06/2006 12:49:41.450  000>> Receive Hello:ACK
 54.5771 -14/06/2006 12:49:41.550  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5772 -14/06/2006 12:49:41.550  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30138
 54.5773 -14/06/2006 12:49:41.550  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30139
 54.5774 -14/06/2006 12:49:41.550  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30140
 54.5775 -14/06/2006 12:49:41.550  000>> 188>>>>>>>>>>Part datagram received!
 54.5776 -14/06/2006 12:49:41.550  000>> 188>>>>>>>>>>Complete!
 54.5777 -14/06/2006 12:49:41.550  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30566
 54.5778 -14/06/2006 12:49:41.561  000>> Good datagram received!
 54.5779 -14/06/2006 12:49:41.561  000>> Listener:Received dictionary
 54.5780 -14/06/2006 12:49:41.561  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30567
 54.5781 -14/06/2006 12:49:41.561  000>> Good datagram received!
 54.5782 -14/06/2006 12:49:41.561  000>> Listener:Received RIB
 54.5783 -14/06/2006 12:49:41.561  000>> 638>>>>>>>>>>Part datagram received!
 54.5784 -14/06/2006 12:49:41.561  000>> 638>>>>>>>>>>Complete!
 54.5785 -14/06/2006 12:49:41.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30568
 54.5786 -14/06/2006 12:49:41.571  000>> Good datagram received!
 54.5787 -14/06/2006 12:49:41.581  000>> Listener:Received Bundle Offer
 54.5788 -14/06/2006 12:49:41.581  000>> Listener:Sending Empty bundle request...
 54.5789 -14/06/2006 12:49:41.581  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5790 -14/06/2006 12:49:41.581  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30141
 54.5791 -14/06/2006 12:49:41.581  000>> 0>>>>>>>>>>Part datagram received!
 54.5792 -14/06/2006 12:49:41.581  000>> 0>>>>>>>>>>Part datagram received!
 54.5793 -14/06/2006 12:49:41.661  000>> 78>>>>>>>>>>Part datagram received!
 54.5794 -14/06/2006 12:49:41.671  000>> 78>>>>>>>>>>Complete!
 54.5795 -14/06/2006 12:49:41.671  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30569
 54.5796 -14/06/2006 12:49:41.671  000>> Good datagram received!
 54.5797 -14/06/2006 12:49:41.671  000>> Initiator:No more requested bundles
 54.5798 -14/06/2006 12:49:41.671  000>> Listener(receiveBundles):We can restart connection...
 54.5799 -14/06/2006 12:49:41.771  000>> Hello Procedure:SENDSYN
 54.5800 -14/06/2006 12:49:41.771  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30142
 54.5801 -14/06/2006 12:49:41.831  000>> 91>>>>>>>>>>Part datagram received!
 54.5802 -14/06/2006 12:49:41.831  000>> 91>>>>>>>>>>Complete!
 54.5803 -14/06/2006 12:49:41.831  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30570
 54.5804 -14/06/2006 12:49:41.831  000>> Good datagram received!
 54.5805 -14/06/2006 12:49:41.831  000>> Receive Hello:SYNACK
 54.5806 -14/06/2006 12:49:41.831  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30143
 54.5807 -14/06/2006 12:49:41.931  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5808 -14/06/2006 12:49:41.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30144
 54.5809 -14/06/2006 12:49:41.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30145
 54.5810 -14/06/2006 12:49:41.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30146
 54.5811 -14/06/2006 12:49:42.061  000>> 78>>>>>>>>>>Part datagram received!
 54.5812 -14/06/2006 12:49:42.061  000>> 78>>>>>>>>>>Complete!
 54.5813 -14/06/2006 12:49:42.061  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30571
 54.5814 -14/06/2006 12:49:42.061  000>> Good datagram received!
 54.5815 -14/06/2006 12:49:42.071  000>> Initiator:No more requested bundles
 54.5816 -14/06/2006 12:49:42.071  000>> Initiator:But we can not restart connection...
 54.5817 -14/06/2006 12:49:42.171  000>> 826>>>>>>>>>>Part datagram received!
 54.5818 -14/06/2006 12:49:42.171  000>> 826>>>>>>>>>>Complete!
 54.5819 -14/06/2006 12:49:42.171  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30572
 54.5820 -14/06/2006 12:49:42.171  000>> Good datagram received!
 54.5821 -14/06/2006 12:49:42.171  000>> Listener:Received dictionary
 54.5822 -14/06/2006 12:49:42.171  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30573
 54.5823 -14/06/2006 12:49:42.171  000>> Good datagram received!
 54.5824 -14/06/2006 12:49:42.171  000>> Listener:Received RIB
 54.5825 -14/06/2006 12:49:42.181  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30574
 54.5826 -14/06/2006 12:49:42.181  000>> Good datagram received!
 54.5827 -14/06/2006 12:49:42.191  000>> Listener:Received Bundle Offer
 54.5828 -14/06/2006 12:49:42.191  000>> Listener:Sending Empty bundle request...
 54.5829 -14/06/2006 12:49:42.191  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.5830 -14/06/2006 12:49:42.191  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30147
 54.5831 -14/06/2006 12:49:42.322  000>> 91>>>>>>>>>>Part datagram received!
 54.5832 -14/06/2006 12:49:42.322  000>> 91>>>>>>>>>>Complete!
 54.5833 -14/06/2006 12:49:42.322  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30575
 54.5834 -14/06/2006 12:49:42.322  000>> Good datagram received!
 54.5835 -14/06/2006 12:49:42.322  000>> Receive Hello:SYN
 54.5836 -14/06/2006 12:49:42.322  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30148
 54.5837 -14/06/2006 12:49:42.342  000>> 91>>>>>>>>>>Part datagram received!
 54.5838 -14/06/2006 12:49:42.352  000>> 91>>>>>>>>>>Complete!
 54.5839 -14/06/2006 12:49:42.352  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30576
 54.5840 -14/06/2006 12:49:42.352  000>> Good datagram received!
 54.5841 -14/06/2006 12:49:42.352  000>> Receive Hello:ACK
 54.5842 -14/06/2006 12:49:42.452  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5843 -14/06/2006 12:49:42.452  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30149
 54.5844 -14/06/2006 12:49:42.452  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30150
 54.5845 -14/06/2006 12:49:42.452  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30151
 54.5846 -14/06/2006 12:49:42.452  000>> 98>>>>>>>>>>Part datagram received!
 54.5847 -14/06/2006 12:49:42.452  000>> 98>>>>>>>>>>Complete!
 54.5848 -14/06/2006 12:49:42.452  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30577
 54.5849 -14/06/2006 12:49:42.452  000>> Good datagram received!
 54.5850 -14/06/2006 12:49:42.452  000>> Listener:Received dictionary
 54.5851 -14/06/2006 12:49:42.462  000>> 90>>>>>>>>>>Part datagram received!
 54.5852 -14/06/2006 12:49:42.462  000>> 90>>>>>>>>>>Complete!
 54.5853 -14/06/2006 12:49:42.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30578
 54.5854 -14/06/2006 12:49:42.462  000>> Good datagram received!
 54.5855 -14/06/2006 12:49:42.462  000>> Listener:Received RIB
 54.5856 -14/06/2006 12:49:42.462  000>> 0>>>>>>>>>>Part datagram received!
 54.5857 -14/06/2006 12:49:42.462  000>> 0>>>>>>>>>>Part datagram received!
 54.5858 -14/06/2006 12:49:42.502  000>> 638>>>>>>>>>>Part datagram received!
 54.5859 -14/06/2006 12:49:42.502  000>> 638>>>>>>>>>>Complete!
 54.5860 -14/06/2006 12:49:42.502  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30579
 54.5861 -14/06/2006 12:49:42.502  000>> Good datagram received!
 54.5862 -14/06/2006 12:49:42.522  000>> Listener:Received Bundle Offer
 54.5863 -14/06/2006 12:49:42.522  000>> Listener:Sending Empty bundle request...
 54.5864 -14/06/2006 12:49:42.522  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5865 -14/06/2006 12:49:42.522  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30152
 54.5866 -14/06/2006 12:49:42.602  000>> 78>>>>>>>>>>Part datagram received!
 54.5867 -14/06/2006 12:49:42.602  000>> 78>>>>>>>>>>Complete!
 54.5868 -14/06/2006 12:49:42.602  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30580
 54.5869 -14/06/2006 12:49:42.602  000>> Good datagram received!
 54.5870 -14/06/2006 12:49:42.602  000>> Initiator:No more requested bundles
 54.5871 -14/06/2006 12:49:42.602  000>> Listener(receiveBundles):We can restart connection...
 54.5872 -14/06/2006 12:49:42.702  000>> Hello Procedure:SENDSYN
 54.5873 -14/06/2006 12:49:42.702  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30153
 54.5874 -14/06/2006 12:49:42.722  000>> 91>>>>>>>>>>Part datagram received!
 54.5875 -14/06/2006 12:49:42.722  000>> 91>>>>>>>>>>Complete!
 54.5876 -14/06/2006 12:49:42.722  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30581
 54.5877 -14/06/2006 12:49:42.722  000>> Good datagram received!
 54.5878 -14/06/2006 12:49:42.722  000>> Receive Hello:SYNACK
 54.5879 -14/06/2006 12:49:42.722  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30154
 54.5880 -14/06/2006 12:49:42.822  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5881 -14/06/2006 12:49:42.822  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30155
 54.5882 -14/06/2006 12:49:42.822  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30156
 54.5883 -14/06/2006 12:49:42.822  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30157
 54.5884 -14/06/2006 12:49:42.842  000>> 98>>>>>>>>>>Part datagram received!
 54.5885 -14/06/2006 12:49:42.842  000>> 98>>>>>>>>>>Complete!
 54.5886 -14/06/2006 12:49:42.852  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30582
 54.5887 -14/06/2006 12:49:42.852  000>> Good datagram received!
 54.5888 -14/06/2006 12:49:42.852  000>> Listener:Received dictionary
 54.5889 -14/06/2006 12:49:42.852  000>> 90>>>>>>>>>>Part datagram received!
 54.5890 -14/06/2006 12:49:42.852  000>> 90>>>>>>>>>>Complete!
 54.5891 -14/06/2006 12:49:42.852  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30583
 54.5892 -14/06/2006 12:49:42.852  000>> Good datagram received!
 54.5893 -14/06/2006 12:49:42.852  000>> Listener:Received RIB
 54.5894 -14/06/2006 12:49:42.973  000>> 716>>>>>>>>>>Part datagram received!
 54.5895 -14/06/2006 12:49:42.973  000>> 716>>>>>>>>>>Complete!
 54.5896 -14/06/2006 12:49:42.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30584
 54.5897 -14/06/2006 12:49:42.973  000>> Good datagram received!
 54.5898 -14/06/2006 12:49:42.983  000>> Listener:Received Bundle Offer
 54.5899 -14/06/2006 12:49:42.983  000>> Listener:Sending Empty bundle request...
 54.5900 -14/06/2006 12:49:42.983  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5901 -14/06/2006 12:49:42.983  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30158
 54.5902 -14/06/2006 12:49:42.983  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30585
 54.5903 -14/06/2006 12:49:42.983  000>> Good datagram received!
 54.5904 -14/06/2006 12:49:42.983  000>> Initiator:No more requested bundles
 54.5905 -14/06/2006 12:49:42.983  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.5906 -14/06/2006 12:49:43.123  000>> 91>>>>>>>>>>Part datagram received!
 54.5907 -14/06/2006 12:49:43.133  000>> 91>>>>>>>>>>Complete!
 54.5908 -14/06/2006 12:49:43.133  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30586
 54.5909 -14/06/2006 12:49:43.133  000>> Good datagram received!
 54.5910 -14/06/2006 12:49:43.133  000>> Receive Hello:SYN
 54.5911 -14/06/2006 12:49:43.133  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30159
 54.5912 -14/06/2006 12:49:43.163  000>> 91>>>>>>>>>>Part datagram received!
 54.5913 -14/06/2006 12:49:43.163  000>> 91>>>>>>>>>>Complete!
 54.5914 -14/06/2006 12:49:43.163  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30587
 54.5915 -14/06/2006 12:49:43.173  000>> Good datagram received!
 54.5916 -14/06/2006 12:49:43.173  000>> Receive Hello:ACK
 54.5917 -14/06/2006 12:49:43.273  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5918 -14/06/2006 12:49:43.273  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30160
 54.5919 -14/06/2006 12:49:43.273  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30161
 54.5920 -14/06/2006 12:49:43.273  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30162
 54.5921 -14/06/2006 12:49:43.273  000>> 98>>>>>>>>>>Part datagram received!
 54.5922 -14/06/2006 12:49:43.273  000>> 98>>>>>>>>>>Complete!
 54.5923 -14/06/2006 12:49:43.273  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30588
 54.5924 -14/06/2006 12:49:43.273  000>> Good datagram received!
 54.5925 -14/06/2006 12:49:43.273  000>> Listener:Received dictionary
 54.5926 -14/06/2006 12:49:43.283  000>> 0>>>>>>>>>>Part datagram received!
 54.5927 -14/06/2006 12:49:43.283  000>> 0>>>>>>>>>>Part datagram received!
 54.5928 -14/06/2006 12:49:43.293  000>> 90>>>>>>>>>>Part datagram received!
 54.5929 -14/06/2006 12:49:43.293  000>> 90>>>>>>>>>>Complete!
 54.5930 -14/06/2006 12:49:43.293  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30589
 54.5931 -14/06/2006 12:49:43.293  000>> Good datagram received!
 54.5932 -14/06/2006 12:49:43.293  000>> Listener:Received RIB
 54.5933 -14/06/2006 12:49:43.293  000>> 638>>>>>>>>>>Part datagram received!
 54.5934 -14/06/2006 12:49:43.293  000>> 638>>>>>>>>>>Complete!
 54.5935 -14/06/2006 12:49:43.293  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30590
 54.5936 -14/06/2006 12:49:43.293  000>> Good datagram received!
 54.5937 -14/06/2006 12:49:43.313  000>> Listener:Received Bundle Offer
 54.5938 -14/06/2006 12:49:43.313  000>> Listener:Sending Empty bundle request...
 54.5939 -14/06/2006 12:49:43.313  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5940 -14/06/2006 12:49:43.313  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30163
 54.5941 -14/06/2006 12:49:43.393  000>> 78>>>>>>>>>>Part datagram received!
 54.5942 -14/06/2006 12:49:43.393  000>> 78>>>>>>>>>>Complete!
 54.5943 -14/06/2006 12:49:43.393  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30591
 54.5944 -14/06/2006 12:49:43.393  000>> Good datagram received!
 54.5945 -14/06/2006 12:49:43.393  000>> Initiator:No more requested bundles
 54.5946 -14/06/2006 12:49:43.393  000>> Listener(receiveBundles):We can restart connection...
 54.5947 -14/06/2006 12:49:43.493  000>> Hello Procedure:SENDSYN
 54.5948 -14/06/2006 12:49:43.493  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30164
 54.5949 -14/06/2006 12:49:43.513  000>> 91>>>>>>>>>>Part datagram received!
 54.5950 -14/06/2006 12:49:43.513  000>> 91>>>>>>>>>>Complete!
 54.5951 -14/06/2006 12:49:43.513  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30592
 54.5952 -14/06/2006 12:49:43.513  000>> Good datagram received!
 54.5953 -14/06/2006 12:49:43.513  000>> Receive Hello:SYNACK
 54.5954 -14/06/2006 12:49:43.513  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30165
 54.5955 -14/06/2006 12:49:43.613  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5956 -14/06/2006 12:49:43.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30166
 54.5957 -14/06/2006 12:49:43.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30167
 54.5958 -14/06/2006 12:49:43.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30168
 54.5959 -14/06/2006 12:49:43.643  000>> 98>>>>>>>>>>Part datagram received!
 54.5960 -14/06/2006 12:49:43.654  000>> 98>>>>>>>>>>Complete!
 54.5961 -14/06/2006 12:49:43.654  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30593
 54.5962 -14/06/2006 12:49:43.654  000>> Good datagram received!
 54.5963 -14/06/2006 12:49:43.654  000>> Listener:Received dictionary
 54.5964 -14/06/2006 12:49:43.654  000>> 90>>>>>>>>>>Part datagram received!
 54.5965 -14/06/2006 12:49:43.654  000>> 90>>>>>>>>>>Complete!
 54.5966 -14/06/2006 12:49:43.654  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30594
 54.5967 -14/06/2006 12:49:43.654  000>> Good datagram received!
 54.5968 -14/06/2006 12:49:43.664  000>> Listener:Received RIB
 54.5969 -14/06/2006 12:49:43.774  000>> 716>>>>>>>>>>Part datagram received!
 54.5970 -14/06/2006 12:49:43.774  000>> 716>>>>>>>>>>Complete!
 54.5971 -14/06/2006 12:49:43.774  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30595
 54.5972 -14/06/2006 12:49:43.774  000>> Good datagram received!
 54.5973 -14/06/2006 12:49:43.794  000>> Listener:Received Bundle Offer
 54.5974 -14/06/2006 12:49:43.794  000>> Listener:Sending Empty bundle request...
 54.5975 -14/06/2006 12:49:43.794  000>> Listener(receiveBOffer):But we can not restart connection...
 54.5976 -14/06/2006 12:49:43.794  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30169
 54.5977 -14/06/2006 12:49:43.794  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30596
 54.5978 -14/06/2006 12:49:43.794  000>> Good datagram received!
 54.5979 -14/06/2006 12:49:43.794  000>> Initiator:No more requested bundles
 54.5980 -14/06/2006 12:49:43.794  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.5981 -14/06/2006 12:49:44.024  000>> 91>>>>>>>>>>Part datagram received!
 54.5982 -14/06/2006 12:49:44.024  000>> 91>>>>>>>>>>Complete!
 54.5983 -14/06/2006 12:49:44.034  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30597
 54.5984 -14/06/2006 12:49:44.034  000>> Good datagram received!
 54.5985 -14/06/2006 12:49:44.034  000>> Receive Hello:SYN
 54.5986 -14/06/2006 12:49:44.034  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30170
 54.5987 -14/06/2006 12:49:44.044  000>> 91>>>>>>>>>>Part datagram received!
 54.5988 -14/06/2006 12:49:44.044  000>> 91>>>>>>>>>>Complete!
 54.5989 -14/06/2006 12:49:44.044  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30598
 54.5990 -14/06/2006 12:49:44.054  000>> Good datagram received!
 54.5991 -14/06/2006 12:49:44.054  000>> Receive Hello:ACK
 54.5992 -14/06/2006 12:49:44.154  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.5993 -14/06/2006 12:49:44.154  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30171
 54.5994 -14/06/2006 12:49:44.154  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30172
 54.5995 -14/06/2006 12:49:44.154  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30173
 54.5996 -14/06/2006 12:49:44.154  000>> 188>>>>>>>>>>Part datagram received!
 54.5997 -14/06/2006 12:49:44.154  000>> 188>>>>>>>>>>Complete!
 54.5998 -14/06/2006 12:49:44.154  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30599
 54.5999 -14/06/2006 12:49:44.154  000>> Good datagram received!
 54.6000 -14/06/2006 12:49:44.164  000>> Listener:Received dictionary
 54.6001 -14/06/2006 12:49:44.164  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30600
 54.6002 -14/06/2006 12:49:44.164  000>> Good datagram received!
 54.6003 -14/06/2006 12:49:44.164  000>> Listener:Received RIB
 54.6004 -14/06/2006 12:49:44.164  000>> 638>>>>>>>>>>Part datagram received!
 54.6005 -14/06/2006 12:49:44.164  000>> 638>>>>>>>>>>Complete!
 54.6006 -14/06/2006 12:49:44.164  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30601
 54.6007 -14/06/2006 12:49:44.164  000>> Good datagram received!
 54.6008 -14/06/2006 12:49:44.184  000>> Listener:Received Bundle Offer
 54.6009 -14/06/2006 12:49:44.184  000>> Listener:Sending Empty bundle request...
 54.6010 -14/06/2006 12:49:44.184  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6011 -14/06/2006 12:49:44.184  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30174
 54.6012 -14/06/2006 12:49:44.264  000>> 78>>>>>>>>>>Part datagram received!
 54.6013 -14/06/2006 12:49:44.264  000>> 78>>>>>>>>>>Complete!
 54.6014 -14/06/2006 12:49:44.274  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30602
 54.6015 -14/06/2006 12:49:44.274  000>> Good datagram received!
 54.6016 -14/06/2006 12:49:44.274  000>> Initiator:No more requested bundles
 54.6017 -14/06/2006 12:49:44.274  000>> Listener(receiveBundles):We can restart connection...
 54.6018 -14/06/2006 12:49:44.375  000>> Hello Procedure:SENDSYN
 54.6019 -14/06/2006 12:49:44.375  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30175
 54.6020 -14/06/2006 12:49:44.395  000>> 91>>>>>>>>>>Part datagram received!
 54.6021 -14/06/2006 12:49:44.395  000>> 91>>>>>>>>>>Complete!
 54.6022 -14/06/2006 12:49:44.395  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30603
 54.6023 -14/06/2006 12:49:44.395  000>> Good datagram received!
 54.6024 -14/06/2006 12:49:44.395  000>> Receive Hello:SYNACK
 54.6025 -14/06/2006 12:49:44.405  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30176
 54.6026 -14/06/2006 12:49:44.505  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6027 -14/06/2006 12:49:44.505  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30177
 54.6028 -14/06/2006 12:49:44.505  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30178
 54.6029 -14/06/2006 12:49:44.505  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30179
 54.6030 -14/06/2006 12:49:44.525  000>> 98>>>>>>>>>>Part datagram received!
 54.6031 -14/06/2006 12:49:44.525  000>> 98>>>>>>>>>>Complete!
 54.6032 -14/06/2006 12:49:44.525  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30604
 54.6033 -14/06/2006 12:49:44.525  000>> Good datagram received!
 54.6034 -14/06/2006 12:49:44.525  000>> Listener:Received dictionary
 54.6035 -14/06/2006 12:49:44.675  000>> 806>>>>>>>>>>Part datagram received!
 54.6036 -14/06/2006 12:49:44.675  000>> 806>>>>>>>>>>Complete!
 54.6037 -14/06/2006 12:49:44.675  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30605
 54.6038 -14/06/2006 12:49:44.675  000>> Good datagram received!
 54.6039 -14/06/2006 12:49:44.685  000>> Listener:Received RIB
 54.6040 -14/06/2006 12:49:44.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30606
 54.6041 -14/06/2006 12:49:44.685  000>> Good datagram received!
 54.6042 -14/06/2006 12:49:44.695  000>> Listener:Received Bundle Offer
 54.6043 -14/06/2006 12:49:44.695  000>> Listener:Sending Empty bundle request...
 54.6044 -14/06/2006 12:49:44.695  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6045 -14/06/2006 12:49:44.695  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30180
 54.6046 -14/06/2006 12:49:44.695  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30607
 54.6047 -14/06/2006 12:49:44.705  000>> Good datagram received!
 54.6048 -14/06/2006 12:49:44.705  000>> Initiator:No more requested bundles
 54.6049 -14/06/2006 12:49:44.705  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.6050 -14/06/2006 12:49:44.845  000>> 91>>>>>>>>>>Part datagram received!
 54.6051 -14/06/2006 12:49:44.855  000>> 91>>>>>>>>>>Complete!
 54.6052 -14/06/2006 12:49:44.855  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30608
 54.6053 -14/06/2006 12:49:44.855  000>> Good datagram received!
 54.6054 -14/06/2006 12:49:44.855  000>> Receive Hello:SYN
 54.6055 -14/06/2006 12:49:44.855  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30181
 54.6056 -14/06/2006 12:49:44.875  000>> 91>>>>>>>>>>Part datagram received!
 54.6057 -14/06/2006 12:49:44.875  000>> 91>>>>>>>>>>Complete!
 54.6058 -14/06/2006 12:49:44.875  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30609
 54.6059 -14/06/2006 12:49:44.875  000>> Good datagram received!
 54.6060 -14/06/2006 12:49:44.885  000>> Receive Hello:ACK
 54.6061 -14/06/2006 12:49:44.985  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6062 -14/06/2006 12:49:44.985  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30182
 54.6063 -14/06/2006 12:49:44.985  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30183
 54.6064 -14/06/2006 12:49:44.985  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30184
 54.6065 -14/06/2006 12:49:45.046  000>> 98>>>>>>>>>>Part datagram received!
 54.6066 -14/06/2006 12:49:45.046  000>> 98>>>>>>>>>>Complete!
 54.6067 -14/06/2006 12:49:45.046  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30610
 54.6068 -14/06/2006 12:49:45.046  000>> Good datagram received!
 54.6069 -14/06/2006 12:49:45.046  000>> Listener:Received dictionary
 54.6070 -14/06/2006 12:49:45.106  000>> 728>>>>>>>>>>Part datagram received!
 54.6071 -14/06/2006 12:49:45.106  000>> 728>>>>>>>>>>Complete!
 54.6072 -14/06/2006 12:49:45.106  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30611
 54.6073 -14/06/2006 12:49:45.106  000>> Good datagram received!
 54.6074 -14/06/2006 12:49:45.116  000>> Listener:Received RIB
 54.6075 -14/06/2006 12:49:45.116  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30612
 54.6076 -14/06/2006 12:49:45.116  000>> Good datagram received!
 54.6077 -14/06/2006 12:49:45.126  000>> Listener:Received Bundle Offer
 54.6078 -14/06/2006 12:49:45.126  000>> Listener:Sending Empty bundle request...
 54.6079 -14/06/2006 12:49:45.126  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6080 -14/06/2006 12:49:45.126  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30185
 54.6081 -14/06/2006 12:49:45.206  000>> 78>>>>>>>>>>Part datagram received!
 54.6082 -14/06/2006 12:49:45.206  000>> 78>>>>>>>>>>Complete!
 54.6083 -14/06/2006 12:49:45.206  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30613
 54.6084 -14/06/2006 12:49:45.216  000>> Good datagram received!
 54.6085 -14/06/2006 12:49:45.216  000>> Initiator:No more requested bundles
 54.6086 -14/06/2006 12:49:45.216  000>> Listener(receiveBundles):We can restart connection...
 54.6087 -14/06/2006 12:49:45.316  000>> Hello Procedure:SENDSYN
 54.6088 -14/06/2006 12:49:45.316  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30186
 54.6089 -14/06/2006 12:49:45.336  000>> 91>>>>>>>>>>Part datagram received!
 54.6090 -14/06/2006 12:49:45.336  000>> 91>>>>>>>>>>Complete!
 54.6091 -14/06/2006 12:49:45.336  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30614
 54.6092 -14/06/2006 12:49:45.336  000>> Good datagram received!
 54.6093 -14/06/2006 12:49:45.336  000>> Receive Hello:SYNACK
 54.6094 -14/06/2006 12:49:45.336  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30187
 54.6095 -14/06/2006 12:49:45.436  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6096 -14/06/2006 12:49:45.436  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30188
 54.6097 -14/06/2006 12:49:45.436  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30189
 54.6098 -14/06/2006 12:49:45.436  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30190
 54.6099 -14/06/2006 12:49:45.466  000>> 98>>>>>>>>>>Part datagram received!
 54.6100 -14/06/2006 12:49:45.476  000>> 98>>>>>>>>>>Complete!
 54.6101 -14/06/2006 12:49:45.476  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30615
 54.6102 -14/06/2006 12:49:45.476  000>> Good datagram received!
 54.6103 -14/06/2006 12:49:45.476  000>> Listener:Received dictionary
 54.6104 -14/06/2006 12:49:45.506  000>> 728>>>>>>>>>>Part datagram received!
 54.6105 -14/06/2006 12:49:45.506  000>> 728>>>>>>>>>>Complete!
 54.6106 -14/06/2006 12:49:45.506  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30616
 54.6107 -14/06/2006 12:49:45.516  000>> Good datagram received!
 54.6108 -14/06/2006 12:49:45.516  000>> Listener:Received RIB
 54.6109 -14/06/2006 12:49:45.516  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30617
 54.6110 -14/06/2006 12:49:45.516  000>> Good datagram received!
 54.6111 -14/06/2006 12:49:45.526  000>> Listener:Received Bundle Offer
 54.6112 -14/06/2006 12:49:45.526  000>> Listener:Sending Empty bundle request...
 54.6113 -14/06/2006 12:49:45.526  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6114 -14/06/2006 12:49:45.536  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30191
 54.6115 -14/06/2006 12:49:45.616  000>> 78>>>>>>>>>>Part datagram received!
 54.6116 -14/06/2006 12:49:45.616  000>> 78>>>>>>>>>>Complete!
 54.6117 -14/06/2006 12:49:45.616  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30618
 54.6118 -14/06/2006 12:49:45.616  000>> Good datagram received!
 54.6119 -14/06/2006 12:49:45.616  000>> Initiator:No more requested bundles
 54.6120 -14/06/2006 12:49:45.616  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.6121 -14/06/2006 12:49:45.696  000>> 91>>>>>>>>>>Part datagram received!
 54.6122 -14/06/2006 12:49:45.696  000>> 91>>>>>>>>>>Complete!
 54.6123 -14/06/2006 12:49:45.696  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30619
 54.6124 -14/06/2006 12:49:45.696  000>> Good datagram received!
 54.6125 -14/06/2006 12:49:45.696  000>> Receive Hello:SYN
 54.6126 -14/06/2006 12:49:45.696  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30192
 54.6127 -14/06/2006 12:49:45.737  000>> 91>>>>>>>>>>Part datagram received!
 54.6128 -14/06/2006 12:49:45.737  000>> 91>>>>>>>>>>Complete!
 54.6129 -14/06/2006 12:49:45.737  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30620
 54.6130 -14/06/2006 12:49:45.737  000>> Good datagram received!
 54.6131 -14/06/2006 12:49:45.737  000>> Receive Hello:ACK
 54.6132 -14/06/2006 12:49:45.837  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6133 -14/06/2006 12:49:45.837  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30193
 54.6134 -14/06/2006 12:49:45.837  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30194
 54.6135 -14/06/2006 12:49:45.837  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30195
 54.6136 -14/06/2006 12:49:45.847  000>> 98>>>>>>>>>>Part datagram received!
 54.6137 -14/06/2006 12:49:45.847  000>> 98>>>>>>>>>>Complete!
 54.6138 -14/06/2006 12:49:45.847  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30621
 54.6139 -14/06/2006 12:49:45.847  000>> Good datagram received!
 54.6140 -14/06/2006 12:49:45.847  000>> Listener:Received dictionary
 54.6141 -14/06/2006 12:49:45.847  000>> 90>>>>>>>>>>Part datagram received!
 54.6142 -14/06/2006 12:49:45.847  000>> 90>>>>>>>>>>Complete!
 54.6143 -14/06/2006 12:49:45.847  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30622
 54.6144 -14/06/2006 12:49:45.847  000>> Good datagram received!
 54.6145 -14/06/2006 12:49:45.857  000>> Listener:Received RIB
 54.6146 -14/06/2006 12:49:45.977  000>> 716>>>>>>>>>>Part datagram received!
 54.6147 -14/06/2006 12:49:45.987  000>> 716>>>>>>>>>>Complete!
 54.6148 -14/06/2006 12:49:45.987  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30623
 54.6149 -14/06/2006 12:49:45.987  000>> Good datagram received!
 54.6150 -14/06/2006 12:49:45.997  000>> Listener:Received Bundle Offer
 54.6151 -14/06/2006 12:49:45.997  000>> Listener:Sending Empty bundle request...
 54.6152 -14/06/2006 12:49:45.997  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6153 -14/06/2006 12:49:45.997  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30196
 54.6154 -14/06/2006 12:49:45.997  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30624
 54.6155 -14/06/2006 12:49:45.997  000>> Good datagram received!
 54.6156 -14/06/2006 12:49:46.007  000>> Initiator:No more requested bundles
 54.6157 -14/06/2006 12:49:46.007  000>> Listener(receiveBundles):We can restart connection...
 54.6158 -14/06/2006 12:49:46.107  000>> Hello Procedure:SENDSYN
 54.6159 -14/06/2006 12:49:46.107  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30197
 54.6160 -14/06/2006 12:49:46.237  000>> 91>>>>>>>>>>Part datagram received!
 54.6161 -14/06/2006 12:49:46.237  000>> 91>>>>>>>>>>Complete!
 54.6162 -14/06/2006 12:49:46.237  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30625
 54.6163 -14/06/2006 12:49:46.237  000>> Good datagram received!
 54.6164 -14/06/2006 12:49:46.237  000>> Receive Hello:SYNACK
 54.6165 -14/06/2006 12:49:46.237  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30198
 54.6166 -14/06/2006 12:49:46.337  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6167 -14/06/2006 12:49:46.337  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30199
 54.6168 -14/06/2006 12:49:46.337  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30200
 54.6169 -14/06/2006 12:49:46.337  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30201
 54.6170 -14/06/2006 12:49:46.367  000>> 98>>>>>>>>>>Part datagram received!
 54.6171 -14/06/2006 12:49:46.367  000>> 98>>>>>>>>>>Complete!
 54.6172 -14/06/2006 12:49:46.367  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30626
 54.6173 -14/06/2006 12:49:46.367  000>> Good datagram received!
 54.6174 -14/06/2006 12:49:46.367  000>> Listener:Received dictionary
 54.6175 -14/06/2006 12:49:46.367  000>> 90>>>>>>>>>>Part datagram received!
 54.6176 -14/06/2006 12:49:46.367  000>> 90>>>>>>>>>>Complete!
 54.6177 -14/06/2006 12:49:46.367  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30627
 54.6178 -14/06/2006 12:49:46.367  000>> Good datagram received!
 54.6179 -14/06/2006 12:49:46.367  000>> Listener:Received RIB
 54.6180 -14/06/2006 12:49:46.498  000>> 716>>>>>>>>>>Part datagram received!
 54.6181 -14/06/2006 12:49:46.498  000>> 716>>>>>>>>>>Complete!
 54.6182 -14/06/2006 12:49:46.498  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30628
 54.6183 -14/06/2006 12:49:46.498  000>> Good datagram received!
 54.6184 -14/06/2006 12:49:46.518  000>> Listener:Received Bundle Offer
 54.6185 -14/06/2006 12:49:46.518  000>> Listener:Sending Empty bundle request...
 54.6186 -14/06/2006 12:49:46.518  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6187 -14/06/2006 12:49:46.518  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30202
 54.6188 -14/06/2006 12:49:46.518  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30629
 54.6189 -14/06/2006 12:49:46.518  000>> Good datagram received!
 54.6190 -14/06/2006 12:49:46.518  000>> Initiator:No more requested bundles
 54.6191 -14/06/2006 12:49:46.518  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.6192 -14/06/2006 12:49:46.668  000>> 91>>>>>>>>>>Part datagram received!
 54.6193 -14/06/2006 12:49:46.678  000>> 91>>>>>>>>>>Complete!
 54.6194 -14/06/2006 12:49:46.678  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30630
 54.6195 -14/06/2006 12:49:46.678  000>> Good datagram received!
 54.6196 -14/06/2006 12:49:46.678  000>> Receive Hello:SYN
 54.6197 -14/06/2006 12:49:46.678  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30203
 54.6198 -14/06/2006 12:49:46.698  000>> 91>>>>>>>>>>Part datagram received!
 54.6199 -14/06/2006 12:49:46.698  000>> 91>>>>>>>>>>Complete!
 54.6200 -14/06/2006 12:49:46.708  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30631
 54.6201 -14/06/2006 12:49:46.708  000>> Good datagram received!
 54.6202 -14/06/2006 12:49:46.708  000>> Receive Hello:ACK
 54.6203 -14/06/2006 12:49:46.808  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6204 -14/06/2006 12:49:46.808  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30204
 54.6205 -14/06/2006 12:49:46.808  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30205
 54.6206 -14/06/2006 12:49:46.808  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30206
 54.6207 -14/06/2006 12:49:46.808  000>> 188>>>>>>>>>>Part datagram received!
 54.6208 -14/06/2006 12:49:46.808  000>> 188>>>>>>>>>>Complete!
 54.6209 -14/06/2006 12:49:46.808  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30632
 54.6210 -14/06/2006 12:49:46.808  000>> Good datagram received!
 54.6211 -14/06/2006 12:49:46.818  000>> Listener:Received dictionary
 54.6212 -14/06/2006 12:49:46.818  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30633
 54.6213 -14/06/2006 12:49:46.818  000>> Good datagram received!
 54.6214 -14/06/2006 12:49:46.818  000>> Listener:Received RIB
 54.6215 -14/06/2006 12:49:46.818  000>> 638>>>>>>>>>>Part datagram received!
 54.6216 -14/06/2006 12:49:46.818  000>> 638>>>>>>>>>>Complete!
 54.6217 -14/06/2006 12:49:46.818  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30634
 54.6218 -14/06/2006 12:49:46.818  000>> Good datagram received!
 54.6219 -14/06/2006 12:49:46.838  000>> Listener:Received Bundle Offer
 54.6220 -14/06/2006 12:49:46.838  000>> Listener:Sending Empty bundle request...
 54.6221 -14/06/2006 12:49:46.838  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6222 -14/06/2006 12:49:46.838  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30207
 54.6223 -14/06/2006 12:49:46.838  000>> 0>>>>>>>>>>Part datagram received!
 54.6224 -14/06/2006 12:49:46.838  000>> 0>>>>>>>>>>Part datagram received!
 54.6225 -14/06/2006 12:49:46.918  000>> 78>>>>>>>>>>Part datagram received!
 54.6226 -14/06/2006 12:49:46.918  000>> 78>>>>>>>>>>Complete!
 54.6227 -14/06/2006 12:49:46.918  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30635
 54.6228 -14/06/2006 12:49:46.918  000>> Good datagram received!
 54.6229 -14/06/2006 12:49:46.918  000>> Initiator:No more requested bundles
 54.6230 -14/06/2006 12:49:46.918  000>> Listener(receiveBundles):We can restart connection...
 54.6231 -14/06/2006 12:49:47.018  000>> Hello Procedure:SENDSYN
 54.6232 -14/06/2006 12:49:47.018  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30208
 54.6233 -14/06/2006 12:49:47.028  000>> 91>>>>>>>>>>Part datagram received!
 54.6234 -14/06/2006 12:49:47.038  000>> 91>>>>>>>>>>Complete!
 54.6235 -14/06/2006 12:49:47.038  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30636
 54.6236 -14/06/2006 12:49:47.038  000>> Good datagram received!
 54.6237 -14/06/2006 12:49:47.038  000>> Receive Hello:SYNACK
 54.6238 -14/06/2006 12:49:47.038  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30209
 54.6239 -14/06/2006 12:49:47.139  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6240 -14/06/2006 12:49:47.139  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30210
 54.6241 -14/06/2006 12:49:47.139  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30211
 54.6242 -14/06/2006 12:49:47.139  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30212
 54.6243 -14/06/2006 12:49:47.169  000>> 98>>>>>>>>>>Part datagram received!
 54.6244 -14/06/2006 12:49:47.169  000>> 98>>>>>>>>>>Complete!
 54.6245 -14/06/2006 12:49:47.169  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30637
 54.6246 -14/06/2006 12:49:47.169  000>> Good datagram received!
 54.6247 -14/06/2006 12:49:47.169  000>> Listener:Received dictionary
 54.6248 -14/06/2006 12:49:47.169  000>> 90>>>>>>>>>>Part datagram received!
 54.6249 -14/06/2006 12:49:47.169  000>> 90>>>>>>>>>>Complete!
 54.6250 -14/06/2006 12:49:47.169  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30638
 54.6251 -14/06/2006 12:49:47.169  000>> Good datagram received!
 54.6252 -14/06/2006 12:49:47.169  000>> Listener:Received RIB
 54.6253 -14/06/2006 12:49:47.289  000>> 716>>>>>>>>>>Part datagram received!
 54.6254 -14/06/2006 12:49:47.289  000>> 716>>>>>>>>>>Complete!
 54.6255 -14/06/2006 12:49:47.289  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30639
 54.6256 -14/06/2006 12:49:47.289  000>> Good datagram received!
 54.6257 -14/06/2006 12:49:47.299  000>> Listener:Received Bundle Offer
 54.6258 -14/06/2006 12:49:47.299  000>> Listener:Sending Empty bundle request...
 54.6259 -14/06/2006 12:49:47.309  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6260 -14/06/2006 12:49:47.309  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30213
 54.6261 -14/06/2006 12:49:47.309  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30640
 54.6262 -14/06/2006 12:49:47.309  000>> Good datagram received!
 54.6263 -14/06/2006 12:49:47.309  000>> Initiator:No more requested bundles
 54.6264 -14/06/2006 12:49:47.309  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.6265 -14/06/2006 12:49:47.459  000>> 91>>>>>>>>>>Part datagram received!
 54.6266 -14/06/2006 12:49:47.459  000>> 91>>>>>>>>>>Complete!
 54.6267 -14/06/2006 12:49:47.459  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30641
 54.6268 -14/06/2006 12:49:47.459  000>> Good datagram received!
 54.6269 -14/06/2006 12:49:47.459  000>> Receive Hello:SYN
 54.6270 -14/06/2006 12:49:47.469  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30214
 54.6271 -14/06/2006 12:49:47.479  000>> 91>>>>>>>>>>Part datagram received!
 54.6272 -14/06/2006 12:49:47.489  000>> 91>>>>>>>>>>Complete!
 54.6273 -14/06/2006 12:49:47.489  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30642
 54.6274 -14/06/2006 12:49:47.489  000>> Good datagram received!
 54.6275 -14/06/2006 12:49:47.489  000>> Receive Hello:ACK
 54.6276 -14/06/2006 12:49:47.589  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6277 -14/06/2006 12:49:47.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30215
 54.6278 -14/06/2006 12:49:47.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30216
 54.6279 -14/06/2006 12:49:47.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30217
 54.6280 -14/06/2006 12:49:47.589  000>> 98>>>>>>>>>>Part datagram received!
 54.6281 -14/06/2006 12:49:47.589  000>> 98>>>>>>>>>>Complete!
 54.6282 -14/06/2006 12:49:47.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30643
 54.6283 -14/06/2006 12:49:47.599  000>> Good datagram received!
 54.6284 -14/06/2006 12:49:47.599  000>> Listener:Received dictionary
 54.6285 -14/06/2006 12:49:47.599  000>> 90>>>>>>>>>>Part datagram received!
 54.6286 -14/06/2006 12:49:47.599  000>> 90>>>>>>>>>>Complete!
 54.6287 -14/06/2006 12:49:47.599  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30644
 54.6288 -14/06/2006 12:49:47.599  000>> Good datagram received!
 54.6289 -14/06/2006 12:49:47.599  000>> Listener:Received RIB
 54.6290 -14/06/2006 12:49:47.789  000>> 716>>>>>>>>>>Part datagram received!
 54.6291 -14/06/2006 12:49:47.789  000>> 716>>>>>>>>>>Complete!
 54.6292 -14/06/2006 12:49:47.789  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30645
 54.6293 -14/06/2006 12:49:47.789  000>> Good datagram received!
 54.6294 -14/06/2006 12:49:47.799  000>> Listener:Received Bundle Offer
 54.6295 -14/06/2006 12:49:47.799  000>> Listener:Sending Empty bundle request...
 54.6296 -14/06/2006 12:49:47.809  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6297 -14/06/2006 12:49:47.809  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30218
 54.6298 -14/06/2006 12:49:47.809  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30646
 54.6299 -14/06/2006 12:49:47.809  000>> Good datagram received!
 54.6300 -14/06/2006 12:49:47.809  000>> Initiator:No more requested bundles
 54.6301 -14/06/2006 12:49:47.809  000>> Listener(receiveBundles):We can restart connection...
 54.6302 -14/06/2006 12:49:47.910  000>> Hello Procedure:SENDSYN
 54.6303 -14/06/2006 12:49:47.910  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30219
 54.6304 -14/06/2006 12:49:47.940  000>> 91>>>>>>>>>>Part datagram received!
 54.6305 -14/06/2006 12:49:47.940  000>> 91>>>>>>>>>>Complete!
 54.6306 -14/06/2006 12:49:47.940  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30647
 54.6307 -14/06/2006 12:49:47.940  000>> Good datagram received!
 54.6308 -14/06/2006 12:49:47.940  000>> Receive Hello:SYNACK
 54.6309 -14/06/2006 12:49:47.940  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30220
 54.6310 -14/06/2006 12:49:48.040  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6311 -14/06/2006 12:49:48.040  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30221
 54.6312 -14/06/2006 12:49:48.040  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30222
 54.6313 -14/06/2006 12:49:48.040  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30223
 54.6314 -14/06/2006 12:49:48.180  000>> 78>>>>>>>>>>Part datagram received!
 54.6315 -14/06/2006 12:49:48.180  000>> 78>>>>>>>>>>Complete!
 54.6316 -14/06/2006 12:49:48.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30648
 54.6317 -14/06/2006 12:49:48.180  000>> Good datagram received!
 54.6318 -14/06/2006 12:49:48.180  000>> Initiator:No more requested bundles
 54.6319 -14/06/2006 12:49:48.180  000>> Initiator:But we can not restart connection...
 54.6320 -14/06/2006 12:49:48.290  000>> 826>>>>>>>>>>Part datagram received!
 54.6321 -14/06/2006 12:49:48.290  000>> 826>>>>>>>>>>Complete!
 54.6322 -14/06/2006 12:49:48.290  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30649
 54.6323 -14/06/2006 12:49:48.290  000>> Good datagram received!
 54.6324 -14/06/2006 12:49:48.290  000>> Listener:Received dictionary
 54.6325 -14/06/2006 12:49:48.290  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30650
 54.6326 -14/06/2006 12:49:48.290  000>> Good datagram received!
 54.6327 -14/06/2006 12:49:48.300  000>> Listener:Received RIB
 54.6328 -14/06/2006 12:49:48.300  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30651
 54.6329 -14/06/2006 12:49:48.300  000>> Good datagram received!
 54.6330 -14/06/2006 12:49:48.310  000>> Listener:Received Bundle Offer
 54.6331 -14/06/2006 12:49:48.310  000>> Listener:Sending Empty bundle request...
 54.6332 -14/06/2006 12:49:48.310  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.6333 -14/06/2006 12:49:48.310  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30224
 54.6334 -14/06/2006 12:49:48.440  000>> 91>>>>>>>>>>Part datagram received!
 54.6335 -14/06/2006 12:49:48.440  000>> 91>>>>>>>>>>Complete!
 54.6336 -14/06/2006 12:49:48.440  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30652
 54.6337 -14/06/2006 12:49:48.440  000>> Good datagram received!
 54.6338 -14/06/2006 12:49:48.440  000>> Receive Hello:SYN
 54.6339 -14/06/2006 12:49:48.440  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30225
 54.6340 -14/06/2006 12:49:48.460  000>> 91>>>>>>>>>>Part datagram received!
 54.6341 -14/06/2006 12:49:48.460  000>> 91>>>>>>>>>>Complete!
 54.6342 -14/06/2006 12:49:48.460  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30653
 54.6343 -14/06/2006 12:49:48.470  000>> Good datagram received!
 54.6344 -14/06/2006 12:49:48.470  000>> Receive Hello:ACK
 54.6345 -14/06/2006 12:49:48.571  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6346 -14/06/2006 12:49:48.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30226
 54.6347 -14/06/2006 12:49:48.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30227
 54.6348 -14/06/2006 12:49:48.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30228
 54.6349 -14/06/2006 12:49:48.571  000>> 98>>>>>>>>>>Part datagram received!
 54.6350 -14/06/2006 12:49:48.571  000>> 98>>>>>>>>>>Complete!
 54.6351 -14/06/2006 12:49:48.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30654
 54.6352 -14/06/2006 12:49:48.571  000>> Good datagram received!
 54.6353 -14/06/2006 12:49:48.571  000>> Listener:Received dictionary
 54.6354 -14/06/2006 12:49:48.581  000>> 90>>>>>>>>>>Part datagram received!
 54.6355 -14/06/2006 12:49:48.581  000>> 90>>>>>>>>>>Complete!
 54.6356 -14/06/2006 12:49:48.581  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30655
 54.6357 -14/06/2006 12:49:48.581  000>> Good datagram received!
 54.6358 -14/06/2006 12:49:48.581  000>> Listener:Received RIB
 54.6359 -14/06/2006 12:49:48.581  000>> 0>>>>>>>>>>Part datagram received!
 54.6360 -14/06/2006 12:49:48.581  000>> 0>>>>>>>>>>Part datagram received!
 54.6361 -14/06/2006 12:49:48.581  000>> 638>>>>>>>>>>Part datagram received!
 54.6362 -14/06/2006 12:49:48.581  000>> 638>>>>>>>>>>Complete!
 54.6363 -14/06/2006 12:49:48.591  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30656
 54.6364 -14/06/2006 12:49:48.591  000>> Good datagram received!
 54.6365 -14/06/2006 12:49:48.601  000>> Listener:Received Bundle Offer
 54.6366 -14/06/2006 12:49:48.601  000>> Listener:Sending Empty bundle request...
 54.6367 -14/06/2006 12:49:48.601  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6368 -14/06/2006 12:49:48.601  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30229
 54.6369 -14/06/2006 12:49:48.691  000>> 78>>>>>>>>>>Part datagram received!
 54.6370 -14/06/2006 12:49:48.691  000>> 78>>>>>>>>>>Complete!
 54.6371 -14/06/2006 12:49:48.691  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30657
 54.6372 -14/06/2006 12:49:48.691  000>> Good datagram received!
 54.6373 -14/06/2006 12:49:48.691  000>> Initiator:No more requested bundles
 54.6374 -14/06/2006 12:49:48.691  000>> Listener(receiveBundles):We can restart connection...
 54.6375 -14/06/2006 12:49:48.791  000>> Hello Procedure:SENDSYN
 54.6376 -14/06/2006 12:49:48.791  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30230
 54.6377 -14/06/2006 12:49:48.811  000>> 91>>>>>>>>>>Part datagram received!
 54.6378 -14/06/2006 12:49:48.811  000>> 91>>>>>>>>>>Complete!
 54.6379 -14/06/2006 12:49:48.811  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30658
 54.6380 -14/06/2006 12:49:48.811  000>> Good datagram received!
 54.6381 -14/06/2006 12:49:48.811  000>> Receive Hello:SYNACK
 54.6382 -14/06/2006 12:49:48.811  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30231
 54.6383 -14/06/2006 12:49:48.911  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6384 -14/06/2006 12:49:48.911  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30232
 54.6385 -14/06/2006 12:49:48.911  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30233
 54.6386 -14/06/2006 12:49:48.921  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30234
 54.6387 -14/06/2006 12:49:49.051  000>> 98>>>>>>>>>>Part datagram received!
 54.6388 -14/06/2006 12:49:49.051  000>> 98>>>>>>>>>>Complete!
 54.6389 -14/06/2006 12:49:49.051  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30659
 54.6390 -14/06/2006 12:49:49.051  000>> Good datagram received!
 54.6391 -14/06/2006 12:49:49.051  000>> Listener:Received dictionary
 54.6392 -14/06/2006 12:49:49.051  000>> 90>>>>>>>>>>Part datagram received!
 54.6393 -14/06/2006 12:49:49.051  000>> 90>>>>>>>>>>Complete!
 54.6394 -14/06/2006 12:49:49.061  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30660
 54.6395 -14/06/2006 12:49:49.061  000>> Good datagram received!
 54.6396 -14/06/2006 12:49:49.061  000>> Listener:Received RIB
 54.6397 -14/06/2006 12:49:49.191  000>> 716>>>>>>>>>>Part datagram received!
 54.6398 -14/06/2006 12:49:49.191  000>> 716>>>>>>>>>>Complete!
 54.6399 -14/06/2006 12:49:49.191  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30661
 54.6400 -14/06/2006 12:49:49.191  000>> Good datagram received!
 54.6401 -14/06/2006 12:49:49.212  000>> Listener:Received Bundle Offer
 54.6402 -14/06/2006 12:49:49.212  000>> Listener:Sending Empty bundle request...
 54.6403 -14/06/2006 12:49:49.212  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6404 -14/06/2006 12:49:49.212  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30235
 54.6405 -14/06/2006 12:49:49.212  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30662
 54.6406 -14/06/2006 12:49:49.212  000>> Good datagram received!
 54.6407 -14/06/2006 12:49:49.212  000>> Initiator:No more requested bundles
 54.6408 -14/06/2006 12:49:49.212  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.6409 -14/06/2006 12:49:49.332  000>> 91>>>>>>>>>>Part datagram received!
 54.6410 -14/06/2006 12:49:49.342  000>> 91>>>>>>>>>>Complete!
 54.6411 -14/06/2006 12:49:49.342  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30663
 54.6412 -14/06/2006 12:49:49.342  000>> Good datagram received!
 54.6413 -14/06/2006 12:49:49.342  000>> Receive Hello:SYN
 54.6414 -14/06/2006 12:49:49.342  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30236
 54.6415 -14/06/2006 12:49:49.362  000>> 91>>>>>>>>>>Part datagram received!
 54.6416 -14/06/2006 12:49:49.362  000>> 91>>>>>>>>>>Complete!
 54.6417 -14/06/2006 12:49:49.362  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30664
 54.6418 -14/06/2006 12:49:49.362  000>> Good datagram received!
 54.6419 -14/06/2006 12:49:49.362  000>> Receive Hello:ACK
 54.6420 -14/06/2006 12:49:49.462  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6421 -14/06/2006 12:49:49.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30237
 54.6422 -14/06/2006 12:49:49.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30238
 54.6423 -14/06/2006 12:49:49.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30239
 54.6424 -14/06/2006 12:49:49.472  000>> 98>>>>>>>>>>Part datagram received!
 54.6425 -14/06/2006 12:49:49.472  000>> 98>>>>>>>>>>Complete!
 54.6426 -14/06/2006 12:49:49.472  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30665
 54.6427 -14/06/2006 12:49:49.472  000>> Good datagram received!
 54.6428 -14/06/2006 12:49:49.472  000>> Listener:Received dictionary
 54.6429 -14/06/2006 12:49:49.472  000>> 90>>>>>>>>>>Part datagram received!
 54.6430 -14/06/2006 12:49:49.472  000>> 90>>>>>>>>>>Complete!
 54.6431 -14/06/2006 12:49:49.482  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30666
 54.6432 -14/06/2006 12:49:49.482  000>> Good datagram received!
 54.6433 -14/06/2006 12:49:49.482  000>> Listener:Received RIB
 54.6434 -14/06/2006 12:49:49.592  000>> 716>>>>>>>>>>Part datagram received!
 54.6435 -14/06/2006 12:49:49.592  000>> 716>>>>>>>>>>Complete!
 54.6436 -14/06/2006 12:49:49.592  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30667
 54.6437 -14/06/2006 12:49:49.592  000>> Good datagram received!
 54.6438 -14/06/2006 12:49:49.612  000>> Listener:Received Bundle Offer
 54.6439 -14/06/2006 12:49:49.612  000>> Listener:Sending Empty bundle request...
 54.6440 -14/06/2006 12:49:49.612  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6441 -14/06/2006 12:49:49.612  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30240
 54.6442 -14/06/2006 12:49:49.612  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30668
 54.6443 -14/06/2006 12:49:49.612  000>> Good datagram received!
 54.6444 -14/06/2006 12:49:49.612  000>> Initiator:No more requested bundles
 54.6445 -14/06/2006 12:49:49.612  000>> Listener(receiveBundles):We can restart connection...
 54.6446 -14/06/2006 12:49:49.712  000>> Hello Procedure:SENDSYN
 54.6447 -14/06/2006 12:49:49.712  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30241
 54.6448 -14/06/2006 12:49:49.742  000>> 91>>>>>>>>>>Part datagram received!
 54.6449 -14/06/2006 12:49:49.742  000>> 91>>>>>>>>>>Complete!
 54.6450 -14/06/2006 12:49:49.742  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30669
 54.6451 -14/06/2006 12:49:49.742  000>> Good datagram received!
 54.6452 -14/06/2006 12:49:49.742  000>> Receive Hello:SYNACK
 54.6453 -14/06/2006 12:49:49.742  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30242
 54.6454 -14/06/2006 12:49:49.842  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6455 -14/06/2006 12:49:49.842  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30243
 54.6456 -14/06/2006 12:49:49.842  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30244
 54.6457 -14/06/2006 12:49:49.842  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30245
 54.6458 -14/06/2006 12:49:49.872  000>> 98>>>>>>>>>>Part datagram received!
 54.6459 -14/06/2006 12:49:49.872  000>> 98>>>>>>>>>>Complete!
 54.6460 -14/06/2006 12:49:49.872  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30670
 54.6461 -14/06/2006 12:49:49.872  000>> Good datagram received!
 54.6462 -14/06/2006 12:49:49.872  000>> Listener:Received dictionary
 54.6463 -14/06/2006 12:49:49.872  000>> 90>>>>>>>>>>Part datagram received!
 54.6464 -14/06/2006 12:49:49.872  000>> 90>>>>>>>>>>Complete!
 54.6465 -14/06/2006 12:49:49.872  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30671
 54.6466 -14/06/2006 12:49:49.872  000>> Good datagram received!
 54.6467 -14/06/2006 12:49:49.872  000>> Listener:Received RIB
 54.6468 -14/06/2006 12:49:49.993  000>> 716>>>>>>>>>>Part datagram received!
 54.6469 -14/06/2006 12:49:49.993  000>> 716>>>>>>>>>>Complete!
 54.6470 -14/06/2006 12:49:49.993  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30672
 54.6471 -14/06/2006 12:49:49.993  000>> Good datagram received!
 54.6472 -14/06/2006 12:49:50.013  000>> Listener:Received Bundle Offer
 54.6473 -14/06/2006 12:49:50.013  000>> Listener:Sending Empty bundle request...
 54.6474 -14/06/2006 12:49:50.013  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6475 -14/06/2006 12:49:50.013  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30246
 54.6476 -14/06/2006 12:49:50.013  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30673
 54.6477 -14/06/2006 12:49:50.013  000>> Good datagram received!
 54.6478 -14/06/2006 12:49:50.013  000>> Initiator:No more requested bundles
 54.6479 -14/06/2006 12:49:50.013  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.6480 -14/06/2006 12:49:50.173  000>> 91>>>>>>>>>>Part datagram received!
 54.6481 -14/06/2006 12:49:50.173  000>> 91>>>>>>>>>>Complete!
 54.6482 -14/06/2006 12:49:50.173  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30674
 54.6483 -14/06/2006 12:49:50.173  000>> Good datagram received!
 54.6484 -14/06/2006 12:49:50.173  000>> Receive Hello:SYN
 54.6485 -14/06/2006 12:49:50.173  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30247
 54.6486 -14/06/2006 12:49:50.203  000>> 91>>>>>>>>>>Part datagram received!
 54.6487 -14/06/2006 12:49:50.203  000>> 91>>>>>>>>>>Complete!
 54.6488 -14/06/2006 12:49:50.203  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30675
 54.6489 -14/06/2006 12:49:50.203  000>> Good datagram received!
 54.6490 -14/06/2006 12:49:50.203  000>> Receive Hello:ACK
 54.6491 -14/06/2006 12:49:50.303  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6492 -14/06/2006 12:49:50.303  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30248
 54.6493 -14/06/2006 12:49:50.303  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30249
 54.6494 -14/06/2006 12:49:50.303  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30250
 54.6495 -14/06/2006 12:49:50.343  000>> 98>>>>>>>>>>Part datagram received!
 54.6496 -14/06/2006 12:49:50.343  000>> 98>>>>>>>>>>Complete!
 54.6497 -14/06/2006 12:49:50.343  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30676
 54.6498 -14/06/2006 12:49:50.343  000>> Good datagram received!
 54.6499 -14/06/2006 12:49:50.343  000>> Listener:Received dictionary
 54.6500 -14/06/2006 12:49:50.343  000>> 90>>>>>>>>>>Part datagram received!
 54.6501 -14/06/2006 12:49:50.343  000>> 90>>>>>>>>>>Complete!
 54.6502 -14/06/2006 12:49:50.353  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30677
 54.6503 -14/06/2006 12:49:50.353  000>> Good datagram received!
 54.6504 -14/06/2006 12:49:50.353  000>> Listener:Received RIB
 54.6505 -14/06/2006 12:49:50.493  000>> 716>>>>>>>>>>Part datagram received!
 54.6506 -14/06/2006 12:49:50.493  000>> 716>>>>>>>>>>Complete!
 54.6507 -14/06/2006 12:49:50.493  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30678
 54.6508 -14/06/2006 12:49:50.493  000>> Good datagram received!
 54.6509 -14/06/2006 12:49:50.513  000>> Listener:Received Bundle Offer
 54.6510 -14/06/2006 12:49:50.513  000>> Listener:Sending Empty bundle request...
 54.6511 -14/06/2006 12:49:50.513  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6512 -14/06/2006 12:49:50.513  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30251
 54.6513 -14/06/2006 12:49:50.513  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30679
 54.6514 -14/06/2006 12:49:50.513  000>> Good datagram received!
 54.6515 -14/06/2006 12:49:50.513  000>> Initiator:No more requested bundles
 54.6516 -14/06/2006 12:49:50.513  000>> Listener(receiveBundles):We can restart connection...
 54.6517 -14/06/2006 12:49:50.614  000>> Hello Procedure:SENDSYN
 54.6518 -14/06/2006 12:49:50.614  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30252
 54.6519 -14/06/2006 12:49:50.644  000>> 91>>>>>>>>>>Part datagram received!
 54.6520 -14/06/2006 12:49:50.644  000>> 91>>>>>>>>>>Complete!
 54.6521 -14/06/2006 12:49:50.644  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30680
 54.6522 -14/06/2006 12:49:50.644  000>> Good datagram received!
 54.6523 -14/06/2006 12:49:50.644  000>> Receive Hello:SYNACK
 54.6524 -14/06/2006 12:49:50.644  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30253
 54.6525 -14/06/2006 12:49:50.744  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6526 -14/06/2006 12:49:50.744  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30254
 54.6527 -14/06/2006 12:49:50.744  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30255
 54.6528 -14/06/2006 12:49:50.744  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30256
 54.6529 -14/06/2006 12:49:50.774  000>> 98>>>>>>>>>>Part datagram received!
 54.6530 -14/06/2006 12:49:50.774  000>> 98>>>>>>>>>>Complete!
 54.6531 -14/06/2006 12:49:50.774  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30681
 54.6532 -14/06/2006 12:49:50.774  000>> Good datagram received!
 54.6533 -14/06/2006 12:49:50.774  000>> Listener:Received dictionary
 54.6534 -14/06/2006 12:49:50.774  000>> 90>>>>>>>>>>Part datagram received!
 54.6535 -14/06/2006 12:49:50.774  000>> 90>>>>>>>>>>Complete!
 54.6536 -14/06/2006 12:49:50.774  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30682
 54.6537 -14/06/2006 12:49:50.774  000>> Good datagram received!
 54.6538 -14/06/2006 12:49:50.774  000>> Listener:Received RIB
 54.6539 -14/06/2006 12:49:50.894  000>> 716>>>>>>>>>>Part datagram received!
 54.6540 -14/06/2006 12:49:50.894  000>> 716>>>>>>>>>>Complete!
 54.6541 -14/06/2006 12:49:50.904  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30683
 54.6542 -14/06/2006 12:49:50.904  000>> Good datagram received!
 54.6543 -14/06/2006 12:49:50.914  000>> Listener:Received Bundle Offer
 54.6544 -14/06/2006 12:49:50.914  000>> Listener:Sending Empty bundle request...
 54.6545 -14/06/2006 12:49:50.914  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6546 -14/06/2006 12:49:50.914  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30257
 54.6547 -14/06/2006 12:49:50.914  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30684
 54.6548 -14/06/2006 12:49:50.914  000>> Good datagram received!
 54.6549 -14/06/2006 12:49:50.914  000>> Initiator:No more requested bundles
 54.6550 -14/06/2006 12:49:50.924  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.6551 -14/06/2006 12:49:51.054  000>> 91>>>>>>>>>>Part datagram received!
 54.6552 -14/06/2006 12:49:51.054  000>> 91>>>>>>>>>>Complete!
 54.6553 -14/06/2006 12:49:51.054  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30685
 54.6554 -14/06/2006 12:49:51.054  000>> Good datagram received!
 54.6555 -14/06/2006 12:49:51.054  000>> Receive Hello:SYN
 54.6556 -14/06/2006 12:49:51.054  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30258
 54.6557 -14/06/2006 12:49:51.074  000>> 91>>>>>>>>>>Part datagram received!
 54.6558 -14/06/2006 12:49:51.074  000>> 91>>>>>>>>>>Complete!
 54.6559 -14/06/2006 12:49:51.074  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30686
 54.6560 -14/06/2006 12:49:51.074  000>> Good datagram received!
 54.6561 -14/06/2006 12:49:51.074  000>> Receive Hello:ACK
 54.6562 -14/06/2006 12:49:51.174  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6563 -14/06/2006 12:49:51.174  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30259
 54.6564 -14/06/2006 12:49:51.174  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30260
 54.6565 -14/06/2006 12:49:51.174  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30261
 54.6566 -14/06/2006 12:49:51.184  000>> 98>>>>>>>>>>Part datagram received!
 54.6567 -14/06/2006 12:49:51.184  000>> 98>>>>>>>>>>Complete!
 54.6568 -14/06/2006 12:49:51.184  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30687
 54.6569 -14/06/2006 12:49:51.184  000>> Good datagram received!
 54.6570 -14/06/2006 12:49:51.184  000>> Listener:Received dictionary
 54.6571 -14/06/2006 12:49:51.184  000>> 90>>>>>>>>>>Part datagram received!
 54.6572 -14/06/2006 12:49:51.184  000>> 90>>>>>>>>>>Complete!
 54.6573 -14/06/2006 12:49:51.184  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30688
 54.6574 -14/06/2006 12:49:51.184  000>> Good datagram received!
 54.6575 -14/06/2006 12:49:51.184  000>> Listener:Received RIB
 54.6576 -14/06/2006 12:49:51.294  000>> 716>>>>>>>>>>Part datagram received!
 54.6577 -14/06/2006 12:49:51.305  000>> 716>>>>>>>>>>Complete!
 54.6578 -14/06/2006 12:49:51.305  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30689
 54.6579 -14/06/2006 12:49:51.305  000>> Good datagram received!
 54.6580 -14/06/2006 12:49:51.315  000>> Listener:Received Bundle Offer
 54.6581 -14/06/2006 12:49:51.315  000>> Listener:Sending Empty bundle request...
 54.6582 -14/06/2006 12:49:51.315  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6583 -14/06/2006 12:49:51.315  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30262
 54.6584 -14/06/2006 12:49:51.315  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30690
 54.6585 -14/06/2006 12:49:51.325  000>> Good datagram received!
 54.6586 -14/06/2006 12:49:51.325  000>> Initiator:No more requested bundles
 54.6587 -14/06/2006 12:49:51.325  000>> Listener(receiveBundles):We can restart connection...
 54.6588 -14/06/2006 12:49:51.425  000>> Hello Procedure:SENDSYN
 54.6589 -14/06/2006 12:49:51.425  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30263
 54.6590 -14/06/2006 12:49:51.445  000>> 91>>>>>>>>>>Part datagram received!
 54.6591 -14/06/2006 12:49:51.445  000>> 91>>>>>>>>>>Complete!
 54.6592 -14/06/2006 12:49:51.445  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30691
 54.6593 -14/06/2006 12:49:51.445  000>> Good datagram received!
 54.6594 -14/06/2006 12:49:51.445  000>> Receive Hello:SYNACK
 54.6595 -14/06/2006 12:49:51.445  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30264
 54.6596 -14/06/2006 12:49:51.545  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6597 -14/06/2006 12:49:51.545  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30265
 54.6598 -14/06/2006 12:49:51.545  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30266
 54.6599 -14/06/2006 12:49:51.545  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30267
 54.6600 -14/06/2006 12:49:51.575  000>> 98>>>>>>>>>>Part datagram received!
 54.6601 -14/06/2006 12:49:51.575  000>> 98>>>>>>>>>>Complete!
 54.6602 -14/06/2006 12:49:51.575  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30692
 54.6603 -14/06/2006 12:49:51.575  000>> Good datagram received!
 54.6604 -14/06/2006 12:49:51.575  000>> Listener:Received dictionary
 54.6605 -14/06/2006 12:49:51.575  000>> 90>>>>>>>>>>Part datagram received!
 54.6606 -14/06/2006 12:49:51.575  000>> 90>>>>>>>>>>Complete!
 54.6607 -14/06/2006 12:49:51.575  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30693
 54.6608 -14/06/2006 12:49:51.575  000>> Good datagram received!
 54.6609 -14/06/2006 12:49:51.585  000>> Listener:Received RIB
 54.6610 -14/06/2006 12:49:51.695  000>> 716>>>>>>>>>>Part datagram received!
 54.6611 -14/06/2006 12:49:51.705  000>> 716>>>>>>>>>>Complete!
 54.6612 -14/06/2006 12:49:51.705  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30694
 54.6613 -14/06/2006 12:49:51.705  000>> Good datagram received!
 54.6614 -14/06/2006 12:49:51.715  000>> Listener:Received Bundle Offer
 54.6615 -14/06/2006 12:49:51.715  000>> Listener:Sending Empty bundle request...
 54.6616 -14/06/2006 12:49:51.715  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6617 -14/06/2006 12:49:51.715  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30268
 54.6618 -14/06/2006 12:49:51.715  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30695
 54.6619 -14/06/2006 12:49:51.715  000>> Good datagram received!
 54.6620 -14/06/2006 12:49:51.725  000>> Initiator:No more requested bundles
 54.6621 -14/06/2006 12:49:51.725  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.6622 -14/06/2006 12:49:51.865  000>> 91>>>>>>>>>>Part datagram received!
 54.6623 -14/06/2006 12:49:51.865  000>> 91>>>>>>>>>>Complete!
 54.6624 -14/06/2006 12:49:51.865  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30696
 54.6625 -14/06/2006 12:49:51.865  000>> Good datagram received!
 54.6626 -14/06/2006 12:49:51.865  000>> Receive Hello:SYN
 54.6627 -14/06/2006 12:49:51.865  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30269
 54.6628 -14/06/2006 12:49:51.895  000>> 91>>>>>>>>>>Part datagram received!
 54.6629 -14/06/2006 12:49:51.895  000>> 91>>>>>>>>>>Complete!
 54.6630 -14/06/2006 12:49:51.905  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30697
 54.6631 -14/06/2006 12:49:51.905  000>> Good datagram received!
 54.6632 -14/06/2006 12:49:51.905  000>> Receive Hello:ACK
 54.6633 -14/06/2006 12:49:52.006  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6634 -14/06/2006 12:49:52.006  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30270
 54.6635 -14/06/2006 12:49:52.006  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30271
 54.6636 -14/06/2006 12:49:52.016  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30272
 54.6637 -14/06/2006 12:49:52.056  000>> 98>>>>>>>>>>Part datagram received!
 54.6638 -14/06/2006 12:49:52.056  000>> 98>>>>>>>>>>Complete!
 54.6639 -14/06/2006 12:49:52.056  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30698
 54.6640 -14/06/2006 12:49:52.056  000>> Good datagram received!
 54.6641 -14/06/2006 12:49:52.056  000>> Listener:Received dictionary
 54.6642 -14/06/2006 12:49:52.056  000>> 90>>>>>>>>>>Part datagram received!
 54.6643 -14/06/2006 12:49:52.056  000>> 90>>>>>>>>>>Complete!
 54.6644 -14/06/2006 12:49:52.056  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30699
 54.6645 -14/06/2006 12:49:52.056  000>> Good datagram received!
 54.6646 -14/06/2006 12:49:52.066  000>> Listener:Received RIB
 54.6647 -14/06/2006 12:49:52.206  000>> 716>>>>>>>>>>Part datagram received!
 54.6648 -14/06/2006 12:49:52.206  000>> 716>>>>>>>>>>Complete!
 54.6649 -14/06/2006 12:49:52.206  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30700
 54.6650 -14/06/2006 12:49:52.206  000>> Good datagram received!
 54.6651 -14/06/2006 12:49:52.216  000>> Listener:Received Bundle Offer
 54.6652 -14/06/2006 12:49:52.216  000>> Listener:Sending Empty bundle request...
 54.6653 -14/06/2006 12:49:52.216  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6654 -14/06/2006 12:49:52.216  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30273
 54.6655 -14/06/2006 12:49:52.226  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30701
 54.6656 -14/06/2006 12:49:52.226  000>> Good datagram received!
 54.6657 -14/06/2006 12:49:52.226  000>> Initiator:No more requested bundles
 54.6658 -14/06/2006 12:49:52.226  000>> Listener(receiveBundles):We can restart connection...
 54.6659 -14/06/2006 12:49:52.326  000>> Hello Procedure:SENDSYN
 54.6660 -14/06/2006 12:49:52.326  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30274
 54.6661 -14/06/2006 12:49:52.446  000>> 91>>>>>>>>>>Part datagram received!
 54.6662 -14/06/2006 12:49:52.446  000>> 91>>>>>>>>>>Complete!
 54.6663 -14/06/2006 12:49:52.446  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30702
 54.6664 -14/06/2006 12:49:52.446  000>> Good datagram received!
 54.6665 -14/06/2006 12:49:52.446  000>> Receive Hello:SYNACK
 54.6666 -14/06/2006 12:49:52.446  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30275
 54.6667 -14/06/2006 12:49:52.546  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6668 -14/06/2006 12:49:52.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30276
 54.6669 -14/06/2006 12:49:52.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30277
 54.6670 -14/06/2006 12:49:52.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30278
 54.6671 -14/06/2006 12:49:52.576  000>> 98>>>>>>>>>>Part datagram received!
 54.6672 -14/06/2006 12:49:52.576  000>> 98>>>>>>>>>>Complete!
 54.6673 -14/06/2006 12:49:52.576  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30703
 54.6674 -14/06/2006 12:49:52.576  000>> Good datagram received!
 54.6675 -14/06/2006 12:49:52.576  000>> Listener:Received dictionary
 54.6676 -14/06/2006 12:49:52.576  000>> 90>>>>>>>>>>Part datagram received!
 54.6677 -14/06/2006 12:49:52.576  000>> 90>>>>>>>>>>Complete!
 54.6678 -14/06/2006 12:49:52.586  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30704
 54.6679 -14/06/2006 12:49:52.586  000>> Good datagram received!
 54.6680 -14/06/2006 12:49:52.586  000>> Listener:Received RIB
 54.6681 -14/06/2006 12:49:52.707  000>> 716>>>>>>>>>>Part datagram received!
 54.6682 -14/06/2006 12:49:52.707  000>> 716>>>>>>>>>>Complete!
 54.6683 -14/06/2006 12:49:52.707  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30705
 54.6684 -14/06/2006 12:49:52.707  000>> Good datagram received!
 54.6685 -14/06/2006 12:49:52.717  000>> Listener:Received Bundle Offer
 54.6686 -14/06/2006 12:49:52.717  000>> Listener:Sending Empty bundle request...
 54.6687 -14/06/2006 12:49:52.717  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6688 -14/06/2006 12:49:52.717  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30279
 54.6689 -14/06/2006 12:49:52.727  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30706
 54.6690 -14/06/2006 12:49:52.727  000>> Good datagram received!
 54.6691 -14/06/2006 12:49:52.727  000>> Initiator:No more requested bundles
 54.6692 -14/06/2006 12:49:52.727  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.6693 -14/06/2006 12:49:52.837  000>> 91>>>>>>>>>>Part datagram received!
 54.6694 -14/06/2006 12:49:52.847  000>> 91>>>>>>>>>>Complete!
 54.6695 -14/06/2006 12:49:52.847  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30707
 54.6696 -14/06/2006 12:49:52.847  000>> Good datagram received!
 54.6697 -14/06/2006 12:49:52.847  000>> Receive Hello:SYN
 54.6698 -14/06/2006 12:49:52.847  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30280
 54.6699 -14/06/2006 12:49:52.867  000>> 91>>>>>>>>>>Part datagram received!
 54.6700 -14/06/2006 12:49:52.867  000>> 91>>>>>>>>>>Complete!
 54.6701 -14/06/2006 12:49:52.867  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30708
 54.6702 -14/06/2006 12:49:52.867  000>> Good datagram received!
 54.6703 -14/06/2006 12:49:52.867  000>> Receive Hello:ACK
 54.6704 -14/06/2006 12:49:52.967  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6705 -14/06/2006 12:49:52.967  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30281
 54.6706 -14/06/2006 12:49:52.967  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30282
 54.6707 -14/06/2006 12:49:52.967  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30283
 54.6708 -14/06/2006 12:49:53.047  000>> 98>>>>>>>>>>Part datagram received!
 54.6709 -14/06/2006 12:49:53.047  000>> 98>>>>>>>>>>Complete!
 54.6710 -14/06/2006 12:49:53.047  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30709
 54.6711 -14/06/2006 12:49:53.057  000>> Good datagram received!
 54.6712 -14/06/2006 12:49:53.057  000>> Listener:Received dictionary
 54.6713 -14/06/2006 12:49:53.057  000>> 90>>>>>>>>>>Part datagram received!
 54.6714 -14/06/2006 12:49:53.057  000>> 90>>>>>>>>>>Complete!
 54.6715 -14/06/2006 12:49:53.057  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30710
 54.6716 -14/06/2006 12:49:53.057  000>> Good datagram received!
 54.6717 -14/06/2006 12:49:53.057  000>> Listener:Received RIB
 54.6718 -14/06/2006 12:49:53.207  000>> 716>>>>>>>>>>Part datagram received!
 54.6719 -14/06/2006 12:49:53.207  000>> 716>>>>>>>>>>Complete!
 54.6720 -14/06/2006 12:49:53.207  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30711
 54.6721 -14/06/2006 12:49:53.207  000>> Good datagram received!
 54.6722 -14/06/2006 12:49:53.217  000>> Listener:Received Bundle Offer
 54.6723 -14/06/2006 12:49:53.227  000>> Listener:Sending Empty bundle request...
 54.6724 -14/06/2006 12:49:53.227  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6725 -14/06/2006 12:49:53.227  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30284
 54.6726 -14/06/2006 12:49:53.227  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30712
 54.6727 -14/06/2006 12:49:53.227  000>> Good datagram received!
 54.6728 -14/06/2006 12:49:53.227  000>> Initiator:No more requested bundles
 54.6729 -14/06/2006 12:49:53.227  000>> Listener(receiveBundles):We can restart connection...
 54.6730 -14/06/2006 12:49:53.327  000>> Hello Procedure:SENDSYN
 54.6731 -14/06/2006 12:49:53.327  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30285
 54.6732 -14/06/2006 12:49:53.458  000>> 91>>>>>>>>>>Part datagram received!
 54.6733 -14/06/2006 12:49:53.458  000>> 91>>>>>>>>>>Complete!
 54.6734 -14/06/2006 12:49:53.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30713
 54.6735 -14/06/2006 12:49:53.468  000>> Good datagram received!
 54.6736 -14/06/2006 12:49:53.468  000>> Receive Hello:SYNACK
 54.6737 -14/06/2006 12:49:53.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30286
 54.6738 -14/06/2006 12:49:53.568  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6739 -14/06/2006 12:49:53.568  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30287
 54.6740 -14/06/2006 12:49:53.568  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30288
 54.6741 -14/06/2006 12:49:53.568  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30289
 54.6742 -14/06/2006 12:49:53.598  000>> 98>>>>>>>>>>Part datagram received!
 54.6743 -14/06/2006 12:49:53.598  000>> 98>>>>>>>>>>Complete!
 54.6744 -14/06/2006 12:49:53.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30714
 54.6745 -14/06/2006 12:49:53.598  000>> Good datagram received!
 54.6746 -14/06/2006 12:49:53.598  000>> Listener:Received dictionary
 54.6747 -14/06/2006 12:49:53.608  000>> 90>>>>>>>>>>Part datagram received!
 54.6748 -14/06/2006 12:49:53.608  000>> 90>>>>>>>>>>Complete!
 54.6749 -14/06/2006 12:49:53.608  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30715
 54.6750 -14/06/2006 12:49:53.608  000>> Good datagram received!
 54.6751 -14/06/2006 12:49:53.608  000>> Listener:Received RIB
 54.6752 -14/06/2006 12:49:53.708  000>> 716>>>>>>>>>>Part datagram received!
 54.6753 -14/06/2006 12:49:53.708  000>> 716>>>>>>>>>>Complete!
 54.6754 -14/06/2006 12:49:53.708  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30716
 54.6755 -14/06/2006 12:49:53.708  000>> Good datagram received!
 54.6756 -14/06/2006 12:49:53.718  000>> Listener:Received Bundle Offer
 54.6757 -14/06/2006 12:49:53.728  000>> Listener:Sending Empty bundle request...
 54.6758 -14/06/2006 12:49:53.728  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6759 -14/06/2006 12:49:53.728  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30290
 54.6760 -14/06/2006 12:49:53.728  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30717
 54.6761 -14/06/2006 12:49:53.728  000>> Good datagram received!
 54.6762 -14/06/2006 12:49:53.728  000>> Initiator:No more requested bundles
 54.6763 -14/06/2006 12:49:53.728  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.6764 -14/06/2006 12:49:53.848  000>> 91>>>>>>>>>>Part datagram received!
 54.6765 -14/06/2006 12:49:53.848  000>> 91>>>>>>>>>>Complete!
 54.6766 -14/06/2006 12:49:53.848  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30718
 54.6767 -14/06/2006 12:49:53.848  000>> Good datagram received!
 54.6768 -14/06/2006 12:49:53.848  000>> Receive Hello:SYN
 54.6769 -14/06/2006 12:49:53.848  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30291
 54.6770 -14/06/2006 12:49:53.868  000>> 91>>>>>>>>>>Part datagram received!
 54.6771 -14/06/2006 12:49:53.868  000>> 91>>>>>>>>>>Complete!
 54.6772 -14/06/2006 12:49:53.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30719
 54.6773 -14/06/2006 12:49:53.868  000>> Good datagram received!
 54.6774 -14/06/2006 12:49:53.868  000>> Receive Hello:ACK
 54.6775 -14/06/2006 12:49:53.968  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6776 -14/06/2006 12:49:53.968  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30292
 54.6777 -14/06/2006 12:49:53.978  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30293
 54.6778 -14/06/2006 12:49:53.978  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30294
 54.6779 -14/06/2006 12:49:54.058  000>> 98>>>>>>>>>>Part datagram received!
 54.6780 -14/06/2006 12:49:54.058  000>> 98>>>>>>>>>>Complete!
 54.6781 -14/06/2006 12:49:54.058  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30720
 54.6782 -14/06/2006 12:49:54.058  000>> Good datagram received!
 54.6783 -14/06/2006 12:49:54.058  000>> Listener:Received dictionary
 54.6784 -14/06/2006 12:49:54.068  000>> 90>>>>>>>>>>Part datagram received!
 54.6785 -14/06/2006 12:49:54.068  000>> 90>>>>>>>>>>Complete!
 54.6786 -14/06/2006 12:49:54.068  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30721
 54.6787 -14/06/2006 12:49:54.068  000>> Good datagram received!
 54.6788 -14/06/2006 12:49:54.068  000>> Listener:Received RIB
 54.6789 -14/06/2006 12:49:54.209  000>> 716>>>>>>>>>>Part datagram received!
 54.6790 -14/06/2006 12:49:54.209  000>> 716>>>>>>>>>>Complete!
 54.6791 -14/06/2006 12:49:54.209  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30722
 54.6792 -14/06/2006 12:49:54.209  000>> Good datagram received!
 54.6793 -14/06/2006 12:49:54.229  000>> Listener:Received Bundle Offer
 54.6794 -14/06/2006 12:49:54.229  000>> Listener:Sending Empty bundle request...
 54.6795 -14/06/2006 12:49:54.229  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6796 -14/06/2006 12:49:54.229  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30295
 54.6797 -14/06/2006 12:49:54.229  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30723
 54.6798 -14/06/2006 12:49:54.229  000>> Good datagram received!
 54.6799 -14/06/2006 12:49:54.229  000>> Initiator:No more requested bundles
 54.6800 -14/06/2006 12:49:54.229  000>> Listener(receiveBundles):We can restart connection...
 54.6801 -14/06/2006 12:49:54.329  000>> Hello Procedure:SENDSYN
 54.6802 -14/06/2006 12:49:54.329  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30296
 54.6803 -14/06/2006 12:49:54.459  000>> 91>>>>>>>>>>Part datagram received!
 54.6804 -14/06/2006 12:49:54.459  000>> 91>>>>>>>>>>Complete!
 54.6805 -14/06/2006 12:49:54.459  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30724
 54.6806 -14/06/2006 12:49:54.469  000>> Good datagram received!
 54.6807 -14/06/2006 12:49:54.469  000>> Receive Hello:SYNACK
 54.6808 -14/06/2006 12:49:54.469  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30297
 54.6809 -14/06/2006 12:49:54.569  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6810 -14/06/2006 12:49:54.569  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30298
 54.6811 -14/06/2006 12:49:54.569  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30299
 54.6812 -14/06/2006 12:49:54.579  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30300
 54.6813 -14/06/2006 12:49:54.589  000>> 98>>>>>>>>>>Part datagram received!
 54.6814 -14/06/2006 12:49:54.589  000>> 98>>>>>>>>>>Complete!
 54.6815 -14/06/2006 12:49:54.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30725
 54.6816 -14/06/2006 12:49:54.599  000>> Good datagram received!
 54.6817 -14/06/2006 12:49:54.599  000>> Listener:Received dictionary
 54.6818 -14/06/2006 12:49:54.619  000>> 90>>>>>>>>>>Part datagram received!
 54.6819 -14/06/2006 12:49:54.619  000>> 90>>>>>>>>>>Complete!
 54.6820 -14/06/2006 12:49:54.619  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30726
 54.6821 -14/06/2006 12:49:54.619  000>> Good datagram received!
 54.6822 -14/06/2006 12:49:54.619  000>> Listener:Received RIB
 54.6823 -14/06/2006 12:49:54.810  000>> 716>>>>>>>>>>Part datagram received!
 54.6824 -14/06/2006 12:49:54.810  000>> 716>>>>>>>>>>Complete!
 54.6825 -14/06/2006 12:49:54.810  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30727
 54.6826 -14/06/2006 12:49:54.810  000>> Good datagram received!
 54.6827 -14/06/2006 12:49:54.830  000>> Listener:Received Bundle Offer
 54.6828 -14/06/2006 12:49:54.830  000>> Listener:Sending Empty bundle request...
 54.6829 -14/06/2006 12:49:54.830  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6830 -14/06/2006 12:49:54.830  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30301
 54.6831 -14/06/2006 12:49:54.830  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30728
 54.6832 -14/06/2006 12:49:54.830  000>> Good datagram received!
 54.6833 -14/06/2006 12:49:54.830  000>> Initiator:No more requested bundles
 54.6834 -14/06/2006 12:49:54.830  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.6835 -14/06/2006 12:49:55.050  000>> 91>>>>>>>>>>Part datagram received!
 54.6836 -14/06/2006 12:49:55.050  000>> 91>>>>>>>>>>Complete!
 54.6837 -14/06/2006 12:49:55.050  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30729
 54.6838 -14/06/2006 12:49:55.050  000>> Good datagram received!
 54.6839 -14/06/2006 12:49:55.050  000>> Receive Hello:SYN
 54.6840 -14/06/2006 12:49:55.050  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30302
 54.6841 -14/06/2006 12:49:55.070  000>> 91>>>>>>>>>>Part datagram received!
 54.6842 -14/06/2006 12:49:55.070  000>> 91>>>>>>>>>>Complete!
 54.6843 -14/06/2006 12:49:55.070  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30730
 54.6844 -14/06/2006 12:49:55.070  000>> Good datagram received!
 54.6845 -14/06/2006 12:49:55.070  000>> Receive Hello:ACK
 54.6846 -14/06/2006 12:49:55.180  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6847 -14/06/2006 12:49:55.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30303
 54.6848 -14/06/2006 12:49:55.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30304
 54.6849 -14/06/2006 12:49:55.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30305
 54.6850 -14/06/2006 12:49:55.180  000>> 98>>>>>>>>>>Part datagram received!
 54.6851 -14/06/2006 12:49:55.180  000>> 98>>>>>>>>>>Complete!
 54.6852 -14/06/2006 12:49:55.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30731
 54.6853 -14/06/2006 12:49:55.180  000>> Good datagram received!
 54.6854 -14/06/2006 12:49:55.190  000>> Listener:Received dictionary
 54.6855 -14/06/2006 12:49:55.190  000>> 728>>>>>>>>>>Part datagram received!
 54.6856 -14/06/2006 12:49:55.190  000>> 728>>>>>>>>>>Complete!
 54.6857 -14/06/2006 12:49:55.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30732
 54.6858 -14/06/2006 12:49:55.190  000>> Good datagram received!
 54.6859 -14/06/2006 12:49:55.190  000>> Listener:Received RIB
 54.6860 -14/06/2006 12:49:55.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30733
 54.6861 -14/06/2006 12:49:55.190  000>> Good datagram received!
 54.6862 -14/06/2006 12:49:55.210  000>> Listener:Received Bundle Offer
 54.6863 -14/06/2006 12:49:55.210  000>> Listener:Sending Empty bundle request...
 54.6864 -14/06/2006 12:49:55.210  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6865 -14/06/2006 12:49:55.210  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30306
 54.6866 -14/06/2006 12:49:55.210  000>> 0>>>>>>>>>>Part datagram received!
 54.6867 -14/06/2006 12:49:55.210  000>> 0>>>>>>>>>>Part datagram received!
 54.6868 -14/06/2006 12:49:55.210  000>> 0>>>>>>>>>>Part datagram received!
 54.6869 -14/06/2006 12:49:55.290  000>> 78>>>>>>>>>>Part datagram received!
 54.6870 -14/06/2006 12:49:55.300  000>> 78>>>>>>>>>>Complete!
 54.6871 -14/06/2006 12:49:55.300  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30734
 54.6872 -14/06/2006 12:49:55.300  000>> Good datagram received!
 54.6873 -14/06/2006 12:49:55.300  000>> Initiator:No more requested bundles
 54.6874 -14/06/2006 12:49:55.300  000>> Listener(receiveBundles):We can restart connection...
 54.6875 -14/06/2006 12:49:55.400  000>> Hello Procedure:SENDSYN
 54.6876 -14/06/2006 12:49:55.400  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30307
 54.6877 -14/06/2006 12:49:55.410  000>> 91>>>>>>>>>>Part datagram received!
 54.6878 -14/06/2006 12:49:55.410  000>> 91>>>>>>>>>>Complete!
 54.6879 -14/06/2006 12:49:55.410  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30735
 54.6880 -14/06/2006 12:49:55.410  000>> Good datagram received!
 54.6881 -14/06/2006 12:49:55.420  000>> Receive Hello:SYNACK
 54.6882 -14/06/2006 12:49:55.420  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30308
 54.6883 -14/06/2006 12:49:55.521  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6884 -14/06/2006 12:49:55.521  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30309
 54.6885 -14/06/2006 12:49:55.521  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30310
 54.6886 -14/06/2006 12:49:55.521  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30311
 54.6887 -14/06/2006 12:49:55.531  000>> 98>>>>>>>>>>Part datagram received!
 54.6888 -14/06/2006 12:49:55.541  000>> 98>>>>>>>>>>Complete!
 54.6889 -14/06/2006 12:49:55.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30736
 54.6890 -14/06/2006 12:49:55.541  000>> Good datagram received!
 54.6891 -14/06/2006 12:49:55.541  000>> Listener:Received dictionary
 54.6892 -14/06/2006 12:49:55.711  000>> 806>>>>>>>>>>Part datagram received!
 54.6893 -14/06/2006 12:49:55.711  000>> 806>>>>>>>>>>Complete!
 54.6894 -14/06/2006 12:49:55.711  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30737
 54.6895 -14/06/2006 12:49:55.711  000>> Good datagram received!
 54.6896 -14/06/2006 12:49:55.721  000>> Listener:Received RIB
 54.6897 -14/06/2006 12:49:55.721  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30738
 54.6898 -14/06/2006 12:49:55.721  000>> Good datagram received!
 54.6899 -14/06/2006 12:49:55.731  000>> Listener:Received Bundle Offer
 54.6900 -14/06/2006 12:49:55.731  000>> Listener:Sending Empty bundle request...
 54.6901 -14/06/2006 12:49:55.731  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6902 -14/06/2006 12:49:55.731  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30312
 54.6903 -14/06/2006 12:49:55.731  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30739
 54.6904 -14/06/2006 12:49:55.731  000>> Good datagram received!
 54.6905 -14/06/2006 12:49:55.741  000>> Initiator:No more requested bundles
 54.6906 -14/06/2006 12:49:55.741  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.6907 -14/06/2006 12:49:55.861  000>> 91>>>>>>>>>>Part datagram received!
 54.6908 -14/06/2006 12:49:55.861  000>> 91>>>>>>>>>>Complete!
 54.6909 -14/06/2006 12:49:55.861  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30740
 54.6910 -14/06/2006 12:49:55.861  000>> Good datagram received!
 54.6911 -14/06/2006 12:49:55.861  000>> Receive Hello:SYN
 54.6912 -14/06/2006 12:49:55.861  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30313
 54.6913 -14/06/2006 12:49:55.891  000>> 91>>>>>>>>>>Part datagram received!
 54.6914 -14/06/2006 12:49:55.891  000>> 91>>>>>>>>>>Complete!
 54.6915 -14/06/2006 12:49:55.891  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30741
 54.6916 -14/06/2006 12:49:55.891  000>> Good datagram received!
 54.6917 -14/06/2006 12:49:55.891  000>> Receive Hello:ACK
 54.6918 -14/06/2006 12:49:55.991  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6919 -14/06/2006 12:49:55.991  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30314
 54.6920 -14/06/2006 12:49:55.991  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30315
 54.6921 -14/06/2006 12:49:55.991  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30316
 54.6922 -14/06/2006 12:49:56.061  000>> 98>>>>>>>>>>Part datagram received!
 54.6923 -14/06/2006 12:49:56.061  000>> 98>>>>>>>>>>Complete!
 54.6924 -14/06/2006 12:49:56.061  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30742
 54.6925 -14/06/2006 12:49:56.061  000>> Good datagram received!
 54.6926 -14/06/2006 12:49:56.061  000>> Listener:Received dictionary
 54.6927 -14/06/2006 12:49:56.071  000>> 90>>>>>>>>>>Part datagram received!
 54.6928 -14/06/2006 12:49:56.071  000>> 90>>>>>>>>>>Complete!
 54.6929 -14/06/2006 12:49:56.071  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30743
 54.6930 -14/06/2006 12:49:56.071  000>> Good datagram received!
 54.6931 -14/06/2006 12:49:56.071  000>> Listener:Received RIB
 54.6932 -14/06/2006 12:49:56.212  000>> 716>>>>>>>>>>Part datagram received!
 54.6933 -14/06/2006 12:49:56.212  000>> 716>>>>>>>>>>Complete!
 54.6934 -14/06/2006 12:49:56.212  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30744
 54.6935 -14/06/2006 12:49:56.212  000>> Good datagram received!
 54.6936 -14/06/2006 12:49:56.232  000>> Listener:Received Bundle Offer
 54.6937 -14/06/2006 12:49:56.232  000>> Listener:Sending Empty bundle request...
 54.6938 -14/06/2006 12:49:56.232  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6939 -14/06/2006 12:49:56.232  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30317
 54.6940 -14/06/2006 12:49:56.232  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30745
 54.6941 -14/06/2006 12:49:56.242  000>> Good datagram received!
 54.6942 -14/06/2006 12:49:56.242  000>> Initiator:No more requested bundles
 54.6943 -14/06/2006 12:49:56.242  000>> Listener(receiveBundles):We can restart connection...
 54.6944 -14/06/2006 12:49:56.342  000>> Hello Procedure:SENDSYN
 54.6945 -14/06/2006 12:49:56.342  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30318
 54.6946 -14/06/2006 12:49:56.462  000>> 91>>>>>>>>>>Part datagram received!
 54.6947 -14/06/2006 12:49:56.462  000>> 91>>>>>>>>>>Complete!
 54.6948 -14/06/2006 12:49:56.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30746
 54.6949 -14/06/2006 12:49:56.462  000>> Good datagram received!
 54.6950 -14/06/2006 12:49:56.462  000>> Receive Hello:SYNACK
 54.6951 -14/06/2006 12:49:56.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30319
 54.6952 -14/06/2006 12:49:56.562  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6953 -14/06/2006 12:49:56.562  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30320
 54.6954 -14/06/2006 12:49:56.562  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30321
 54.6955 -14/06/2006 12:49:56.572  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30322
 54.6956 -14/06/2006 12:49:56.582  000>> 98>>>>>>>>>>Part datagram received!
 54.6957 -14/06/2006 12:49:56.592  000>> 98>>>>>>>>>>Complete!
 54.6958 -14/06/2006 12:49:56.592  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30747
 54.6959 -14/06/2006 12:49:56.592  000>> Good datagram received!
 54.6960 -14/06/2006 12:49:56.592  000>> Listener:Received dictionary
 54.6961 -14/06/2006 12:49:56.592  000>> 90>>>>>>>>>>Part datagram received!
 54.6962 -14/06/2006 12:49:56.592  000>> 90>>>>>>>>>>Complete!
 54.6963 -14/06/2006 12:49:56.602  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30748
 54.6964 -14/06/2006 12:49:56.602  000>> Good datagram received!
 54.6965 -14/06/2006 12:49:56.602  000>> Listener:Received RIB
 54.6966 -14/06/2006 12:49:56.712  000>> 716>>>>>>>>>>Part datagram received!
 54.6967 -14/06/2006 12:49:56.712  000>> 716>>>>>>>>>>Complete!
 54.6968 -14/06/2006 12:49:56.712  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30749
 54.6969 -14/06/2006 12:49:56.722  000>> Good datagram received!
 54.6970 -14/06/2006 12:49:56.732  000>> Listener:Received Bundle Offer
 54.6971 -14/06/2006 12:49:56.732  000>> Listener:Sending Empty bundle request...
 54.6972 -14/06/2006 12:49:56.732  000>> Listener(receiveBOffer):But we can not restart connection...
 54.6973 -14/06/2006 12:49:56.732  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30323
 54.6974 -14/06/2006 12:49:56.732  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30750
 54.6975 -14/06/2006 12:49:56.732  000>> Good datagram received!
 54.6976 -14/06/2006 12:49:56.732  000>> Initiator:No more requested bundles
 54.6977 -14/06/2006 12:49:56.742  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.6978 -14/06/2006 12:49:56.852  000>> 91>>>>>>>>>>Part datagram received!
 54.6979 -14/06/2006 12:49:56.863  000>> 91>>>>>>>>>>Complete!
 54.6980 -14/06/2006 12:49:56.863  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30751
 54.6981 -14/06/2006 12:49:56.863  000>> Good datagram received!
 54.6982 -14/06/2006 12:49:56.863  000>> Receive Hello:SYN
 54.6983 -14/06/2006 12:49:56.863  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30324
 54.6984 -14/06/2006 12:49:56.883  000>> 91>>>>>>>>>>Part datagram received!
 54.6985 -14/06/2006 12:49:56.883  000>> 91>>>>>>>>>>Complete!
 54.6986 -14/06/2006 12:49:56.883  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30752
 54.6987 -14/06/2006 12:49:56.883  000>> Good datagram received!
 54.6988 -14/06/2006 12:49:56.883  000>> Receive Hello:ACK
 54.6989 -14/06/2006 12:49:56.993  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.6990 -14/06/2006 12:49:56.993  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30325
 54.6991 -14/06/2006 12:49:56.993  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30326
 54.6992 -14/06/2006 12:49:56.993  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30327
 54.6993 -14/06/2006 12:49:57.063  000>> 98>>>>>>>>>>Part datagram received!
 54.6994 -14/06/2006 12:49:57.063  000>> 98>>>>>>>>>>Complete!
 54.6995 -14/06/2006 12:49:57.063  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30753
 54.6996 -14/06/2006 12:49:57.063  000>> Good datagram received!
 54.6997 -14/06/2006 12:49:57.063  000>> Listener:Received dictionary
 54.6998 -14/06/2006 12:49:57.073  000>> 90>>>>>>>>>>Part datagram received!
 54.6999 -14/06/2006 12:49:57.073  000>> 90>>>>>>>>>>Complete!
 54.7000 -14/06/2006 12:49:57.073  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30754
 54.7001 -14/06/2006 12:49:57.073  000>> Good datagram received!
 54.7002 -14/06/2006 12:49:57.073  000>> Listener:Received RIB
 54.7003 -14/06/2006 12:49:57.213  000>> 716>>>>>>>>>>Part datagram received!
 54.7004 -14/06/2006 12:49:57.223  000>> 716>>>>>>>>>>Complete!
 54.7005 -14/06/2006 12:49:57.223  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30755
 54.7006 -14/06/2006 12:49:57.223  000>> Good datagram received!
 54.7007 -14/06/2006 12:49:57.233  000>> Listener:Received Bundle Offer
 54.7008 -14/06/2006 12:49:57.233  000>> Listener:Sending Empty bundle request...
 54.7009 -14/06/2006 12:49:57.233  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7010 -14/06/2006 12:49:57.243  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30328
 54.7011 -14/06/2006 12:49:57.243  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30756
 54.7012 -14/06/2006 12:49:57.243  000>> Good datagram received!
 54.7013 -14/06/2006 12:49:57.243  000>> Initiator:No more requested bundles
 54.7014 -14/06/2006 12:49:57.243  000>> Listener(receiveBundles):We can restart connection...
 54.7015 -14/06/2006 12:49:57.343  000>> Hello Procedure:SENDSYN
 54.7016 -14/06/2006 12:49:57.343  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30329
 54.7017 -14/06/2006 12:49:57.453  000>> 91>>>>>>>>>>Part datagram received!
 54.7018 -14/06/2006 12:49:57.453  000>> 91>>>>>>>>>>Complete!
 54.7019 -14/06/2006 12:49:57.453  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30757
 54.7020 -14/06/2006 12:49:57.453  000>> Good datagram received!
 54.7021 -14/06/2006 12:49:57.453  000>> Receive Hello:SYNACK
 54.7022 -14/06/2006 12:49:57.453  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30330
 54.7023 -14/06/2006 12:49:57.553  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7024 -14/06/2006 12:49:57.553  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30331
 54.7025 -14/06/2006 12:49:57.553  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30332
 54.7026 -14/06/2006 12:49:57.553  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30333
 54.7027 -14/06/2006 12:49:57.594  000>> 98>>>>>>>>>>Part datagram received!
 54.7028 -14/06/2006 12:49:57.594  000>> 98>>>>>>>>>>Complete!
 54.7029 -14/06/2006 12:49:57.594  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30758
 54.7030 -14/06/2006 12:49:57.594  000>> Good datagram received!
 54.7031 -14/06/2006 12:49:57.594  000>> Listener:Received dictionary
 54.7032 -14/06/2006 12:49:57.614  000>> 90>>>>>>>>>>Part datagram received!
 54.7033 -14/06/2006 12:49:57.614  000>> 90>>>>>>>>>>Complete!
 54.7034 -14/06/2006 12:49:57.614  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30759
 54.7035 -14/06/2006 12:49:57.614  000>> Good datagram received!
 54.7036 -14/06/2006 12:49:57.614  000>> Listener:Received RIB
 54.7037 -14/06/2006 12:49:57.834  000>> 716>>>>>>>>>>Part datagram received!
 54.7038 -14/06/2006 12:49:57.834  000>> 716>>>>>>>>>>Complete!
 54.7039 -14/06/2006 12:49:57.834  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30760
 54.7040 -14/06/2006 12:49:57.834  000>> Good datagram received!
 54.7041 -14/06/2006 12:49:57.844  000>> Listener:Received Bundle Offer
 54.7042 -14/06/2006 12:49:57.844  000>> Listener:Sending Empty bundle request...
 54.7043 -14/06/2006 12:49:57.854  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7044 -14/06/2006 12:49:57.854  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30334
 54.7045 -14/06/2006 12:49:57.854  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30761
 54.7046 -14/06/2006 12:49:57.854  000>> Good datagram received!
 54.7047 -14/06/2006 12:49:57.854  000>> Initiator:No more requested bundles
 54.7048 -14/06/2006 12:49:57.854  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.7049 -14/06/2006 12:49:58.054  000>> 91>>>>>>>>>>Part datagram received!
 54.7050 -14/06/2006 12:49:58.064  000>> 91>>>>>>>>>>Complete!
 54.7051 -14/06/2006 12:49:58.064  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30762
 54.7052 -14/06/2006 12:49:58.064  000>> Good datagram received!
 54.7053 -14/06/2006 12:49:58.064  000>> Receive Hello:SYN
 54.7054 -14/06/2006 12:49:58.064  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30335
 54.7055 -14/06/2006 12:49:58.084  000>> 91>>>>>>>>>>Part datagram received!
 54.7056 -14/06/2006 12:49:58.084  000>> 91>>>>>>>>>>Complete!
 54.7057 -14/06/2006 12:49:58.084  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30763
 54.7058 -14/06/2006 12:49:58.084  000>> Good datagram received!
 54.7059 -14/06/2006 12:49:58.084  000>> Receive Hello:ACK
 54.7060 -14/06/2006 12:49:58.184  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7061 -14/06/2006 12:49:58.184  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30336
 54.7062 -14/06/2006 12:49:58.184  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30337
 54.7063 -14/06/2006 12:49:58.184  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30338
 54.7064 -14/06/2006 12:49:58.194  000>> 98>>>>>>>>>>Part datagram received!
 54.7065 -14/06/2006 12:49:58.194  000>> 98>>>>>>>>>>Complete!
 54.7066 -14/06/2006 12:49:58.194  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30764
 54.7067 -14/06/2006 12:49:58.194  000>> Good datagram received!
 54.7068 -14/06/2006 12:49:58.194  000>> Listener:Received dictionary
 54.7069 -14/06/2006 12:49:58.204  000>> 90>>>>>>>>>>Part datagram received!
 54.7070 -14/06/2006 12:49:58.204  000>> 90>>>>>>>>>>Complete!
 54.7071 -14/06/2006 12:49:58.204  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30765
 54.7072 -14/06/2006 12:49:58.204  000>> Good datagram received!
 54.7073 -14/06/2006 12:49:58.204  000>> Listener:Received RIB
 54.7074 -14/06/2006 12:49:58.325  000>> 716>>>>>>>>>>Part datagram received!
 54.7075 -14/06/2006 12:49:58.325  000>> 716>>>>>>>>>>Complete!
 54.7076 -14/06/2006 12:49:58.325  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30766
 54.7077 -14/06/2006 12:49:58.325  000>> Good datagram received!
 54.7078 -14/06/2006 12:49:58.335  000>> Listener:Received Bundle Offer
 54.7079 -14/06/2006 12:49:58.335  000>> Listener:Sending Empty bundle request...
 54.7080 -14/06/2006 12:49:58.335  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7081 -14/06/2006 12:49:58.345  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30339
 54.7082 -14/06/2006 12:49:58.345  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30767
 54.7083 -14/06/2006 12:49:58.345  000>> Good datagram received!
 54.7084 -14/06/2006 12:49:58.345  000>> Initiator:No more requested bundles
 54.7085 -14/06/2006 12:49:58.345  000>> Listener(receiveBundles):We can restart connection...
 54.7086 -14/06/2006 12:49:58.445  000>> Hello Procedure:SENDSYN
 54.7087 -14/06/2006 12:49:58.445  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30340
 54.7088 -14/06/2006 12:49:58.555  000>> 91>>>>>>>>>>Part datagram received!
 54.7089 -14/06/2006 12:49:58.555  000>> 91>>>>>>>>>>Complete!
 54.7090 -14/06/2006 12:49:58.555  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30768
 54.7091 -14/06/2006 12:49:58.555  000>> Good datagram received!
 54.7092 -14/06/2006 12:49:58.555  000>> Receive Hello:SYNACK
 54.7093 -14/06/2006 12:49:58.555  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30341
 54.7094 -14/06/2006 12:49:58.655  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7095 -14/06/2006 12:49:58.655  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30342
 54.7096 -14/06/2006 12:49:58.655  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30343
 54.7097 -14/06/2006 12:49:58.655  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30344
 54.7098 -14/06/2006 12:49:58.685  000>> 98>>>>>>>>>>Part datagram received!
 54.7099 -14/06/2006 12:49:58.685  000>> 98>>>>>>>>>>Complete!
 54.7100 -14/06/2006 12:49:58.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30769
 54.7101 -14/06/2006 12:49:58.685  000>> Good datagram received!
 54.7102 -14/06/2006 12:49:58.685  000>> Listener:Received dictionary
 54.7103 -14/06/2006 12:49:58.695  000>> 90>>>>>>>>>>Part datagram received!
 54.7104 -14/06/2006 12:49:58.695  000>> 90>>>>>>>>>>Complete!
 54.7105 -14/06/2006 12:49:58.695  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30770
 54.7106 -14/06/2006 12:49:58.695  000>> Good datagram received!
 54.7107 -14/06/2006 12:49:58.695  000>> Listener:Received RIB
 54.7108 -14/06/2006 12:49:58.825  000>> 716>>>>>>>>>>Part datagram received!
 54.7109 -14/06/2006 12:49:58.825  000>> 716>>>>>>>>>>Complete!
 54.7110 -14/06/2006 12:49:58.825  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30771
 54.7111 -14/06/2006 12:49:58.825  000>> Good datagram received!
 54.7112 -14/06/2006 12:49:58.835  000>> Listener:Received Bundle Offer
 54.7113 -14/06/2006 12:49:58.835  000>> Listener:Sending Empty bundle request...
 54.7114 -14/06/2006 12:49:58.845  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7115 -14/06/2006 12:49:58.845  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30345
 54.7116 -14/06/2006 12:49:58.845  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30772
 54.7117 -14/06/2006 12:49:58.845  000>> Good datagram received!
 54.7118 -14/06/2006 12:49:58.845  000>> Initiator:No more requested bundles
 54.7119 -14/06/2006 12:49:58.845  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.7120 -14/06/2006 12:49:59.056  000>> 91>>>>>>>>>>Part datagram received!
 54.7121 -14/06/2006 12:49:59.056  000>> 91>>>>>>>>>>Complete!
 54.7122 -14/06/2006 12:49:59.056  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30773
 54.7123 -14/06/2006 12:49:59.056  000>> Good datagram received!
 54.7124 -14/06/2006 12:49:59.056  000>> Receive Hello:SYN
 54.7125 -14/06/2006 12:49:59.056  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30346
 54.7126 -14/06/2006 12:49:59.076  000>> 91>>>>>>>>>>Part datagram received!
 54.7127 -14/06/2006 12:49:59.076  000>> 91>>>>>>>>>>Complete!
 54.7128 -14/06/2006 12:49:59.076  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30774
 54.7129 -14/06/2006 12:49:59.076  000>> Good datagram received!
 54.7130 -14/06/2006 12:49:59.076  000>> Receive Hello:ACK
 54.7131 -14/06/2006 12:49:59.176  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7132 -14/06/2006 12:49:59.176  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30347
 54.7133 -14/06/2006 12:49:59.176  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30348
 54.7134 -14/06/2006 12:49:59.186  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30349
 54.7135 -14/06/2006 12:49:59.186  000>> 188>>>>>>>>>>Part datagram received!
 54.7136 -14/06/2006 12:49:59.186  000>> 188>>>>>>>>>>Complete!
 54.7137 -14/06/2006 12:49:59.186  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30775
 54.7138 -14/06/2006 12:49:59.186  000>> Good datagram received!
 54.7139 -14/06/2006 12:49:59.186  000>> Listener:Received dictionary
 54.7140 -14/06/2006 12:49:59.186  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30776
 54.7141 -14/06/2006 12:49:59.186  000>> Good datagram received!
 54.7142 -14/06/2006 12:49:59.186  000>> Listener:Received RIB
 54.7143 -14/06/2006 12:49:59.196  000>> 638>>>>>>>>>>Part datagram received!
 54.7144 -14/06/2006 12:49:59.196  000>> 638>>>>>>>>>>Complete!
 54.7145 -14/06/2006 12:49:59.196  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30777
 54.7146 -14/06/2006 12:49:59.196  000>> Good datagram received!
 54.7147 -14/06/2006 12:49:59.206  000>> Listener:Received Bundle Offer
 54.7148 -14/06/2006 12:49:59.206  000>> Listener:Sending Empty bundle request...
 54.7149 -14/06/2006 12:49:59.206  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7150 -14/06/2006 12:49:59.206  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30350
 54.7151 -14/06/2006 12:49:59.216  000>> 0>>>>>>>>>>Part datagram received!
 54.7152 -14/06/2006 12:49:59.216  000>> 0>>>>>>>>>>Part datagram received!
 54.7153 -14/06/2006 12:49:59.296  000>> 78>>>>>>>>>>Part datagram received!
 54.7154 -14/06/2006 12:49:59.296  000>> 78>>>>>>>>>>Complete!
 54.7155 -14/06/2006 12:49:59.296  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30778
 54.7156 -14/06/2006 12:49:59.296  000>> Good datagram received!
 54.7157 -14/06/2006 12:49:59.296  000>> Initiator:No more requested bundles
 54.7158 -14/06/2006 12:49:59.296  000>> Listener(receiveBundles):We can restart connection...
 54.7159 -14/06/2006 12:49:59.396  000>> Hello Procedure:SENDSYN
 54.7160 -14/06/2006 12:49:59.396  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30351
 54.7161 -14/06/2006 12:49:59.446  000>> 91>>>>>>>>>>Part datagram received!
 54.7162 -14/06/2006 12:49:59.456  000>> 91>>>>>>>>>>Complete!
 54.7163 -14/06/2006 12:49:59.456  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30779
 54.7164 -14/06/2006 12:49:59.456  000>> Good datagram received!
 54.7165 -14/06/2006 12:49:59.456  000>> Receive Hello:SYNACK
 54.7166 -14/06/2006 12:49:59.456  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30352
 54.7167 -14/06/2006 12:49:59.556  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7168 -14/06/2006 12:49:59.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30353
 54.7169 -14/06/2006 12:49:59.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30354
 54.7170 -14/06/2006 12:49:59.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30355
 54.7171 -14/06/2006 12:49:59.566  000>> 98>>>>>>>>>>Part datagram received!
 54.7172 -14/06/2006 12:49:59.566  000>> 98>>>>>>>>>>Complete!
 54.7173 -14/06/2006 12:49:59.566  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30780
 54.7174 -14/06/2006 12:49:59.576  000>> Good datagram received!
 54.7175 -14/06/2006 12:49:59.576  000>> Listener:Received dictionary
 54.7176 -14/06/2006 12:49:59.576  000>> 90>>>>>>>>>>Part datagram received!
 54.7177 -14/06/2006 12:49:59.576  000>> 90>>>>>>>>>>Complete!
 54.7178 -14/06/2006 12:49:59.576  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30781
 54.7179 -14/06/2006 12:49:59.576  000>> Good datagram received!
 54.7180 -14/06/2006 12:49:59.576  000>> Listener:Received RIB
 54.7181 -14/06/2006 12:49:59.727  000>> 716>>>>>>>>>>Part datagram received!
 54.7182 -14/06/2006 12:49:59.727  000>> 716>>>>>>>>>>Complete!
 54.7183 -14/06/2006 12:49:59.727  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30782
 54.7184 -14/06/2006 12:49:59.727  000>> Good datagram received!
 54.7185 -14/06/2006 12:49:59.747  000>> Listener:Received Bundle Offer
 54.7186 -14/06/2006 12:49:59.747  000>> Listener:Sending Empty bundle request...
 54.7187 -14/06/2006 12:49:59.747  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7188 -14/06/2006 12:49:59.747  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30356
 54.7189 -14/06/2006 12:49:59.747  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30783
 54.7190 -14/06/2006 12:49:59.747  000>> Good datagram received!
 54.7191 -14/06/2006 12:49:59.747  000>> Initiator:No more requested bundles
 54.7192 -14/06/2006 12:49:59.747  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.7193 -14/06/2006 12:49:59.877  000>> 91>>>>>>>>>>Part datagram received!
 54.7194 -14/06/2006 12:49:59.877  000>> 91>>>>>>>>>>Complete!
 54.7195 -14/06/2006 12:49:59.877  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30784
 54.7196 -14/06/2006 12:49:59.877  000>> Good datagram received!
 54.7197 -14/06/2006 12:49:59.877  000>> Receive Hello:SYN
 54.7198 -14/06/2006 12:49:59.877  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30357
 54.7199 -14/06/2006 12:49:59.897  000>> 91>>>>>>>>>>Part datagram received!
 54.7200 -14/06/2006 12:49:59.897  000>> 91>>>>>>>>>>Complete!
 54.7201 -14/06/2006 12:49:59.897  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30785
 54.7202 -14/06/2006 12:49:59.897  000>> Good datagram received!
 54.7203 -14/06/2006 12:49:59.897  000>> Receive Hello:ACK
 54.7204 -14/06/2006 12:49:59.997  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7205 -14/06/2006 12:49:59.997  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30358
 54.7206 -14/06/2006 12:49:59.997  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30359
 54.7207 -14/06/2006 12:49:59.997  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30360
 54.7208 -14/06/2006 12:50:00.077  000>> 98>>>>>>>>>>Part datagram received!
 54.7209 -14/06/2006 12:50:00.077  000>> 98>>>>>>>>>>Complete!
 54.7210 -14/06/2006 12:50:00.087  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30786
 54.7211 -14/06/2006 12:50:00.087  000>> Good datagram received!
 54.7212 -14/06/2006 12:50:00.087  000>> Listener:Received dictionary
 54.7213 -14/06/2006 12:50:00.087  000>> 90>>>>>>>>>>Part datagram received!
 54.7214 -14/06/2006 12:50:00.087  000>> 90>>>>>>>>>>Complete!
 54.7215 -14/06/2006 12:50:00.087  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30787
 54.7216 -14/06/2006 12:50:00.087  000>> Good datagram received!
 54.7217 -14/06/2006 12:50:00.087  000>> Listener:Received RIB
 54.7218 -14/06/2006 12:50:00.227  000>> 716>>>>>>>>>>Part datagram received!
 54.7219 -14/06/2006 12:50:00.227  000>> 716>>>>>>>>>>Complete!
 54.7220 -14/06/2006 12:50:00.227  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30788
 54.7221 -14/06/2006 12:50:00.227  000>> Good datagram received!
 54.7222 -14/06/2006 12:50:00.247  000>> Listener:Received Bundle Offer
 54.7223 -14/06/2006 12:50:00.247  000>> Listener:Sending Empty bundle request...
 54.7224 -14/06/2006 12:50:00.247  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7225 -14/06/2006 12:50:00.247  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30361
 54.7226 -14/06/2006 12:50:00.247  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30789
 54.7227 -14/06/2006 12:50:00.247  000>> Good datagram received!
 54.7228 -14/06/2006 12:50:00.247  000>> Initiator:No more requested bundles
 54.7229 -14/06/2006 12:50:00.247  000>> Listener(receiveBundles):We can restart connection...
 54.7230 -14/06/2006 12:50:00.348  000>> Hello Procedure:SENDSYN
 54.7231 -14/06/2006 12:50:00.348  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30362
 54.7232 -14/06/2006 12:50:00.458  000>> 91>>>>>>>>>>Part datagram received!
 54.7233 -14/06/2006 12:50:00.458  000>> 91>>>>>>>>>>Complete!
 54.7234 -14/06/2006 12:50:00.458  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30790
 54.7235 -14/06/2006 12:50:00.458  000>> Good datagram received!
 54.7236 -14/06/2006 12:50:00.458  000>> Receive Hello:SYNACK
 54.7237 -14/06/2006 12:50:00.458  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30363
 54.7238 -14/06/2006 12:50:00.558  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7239 -14/06/2006 12:50:00.558  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30364
 54.7240 -14/06/2006 12:50:00.558  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30365
 54.7241 -14/06/2006 12:50:00.558  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30366
 54.7242 -14/06/2006 12:50:00.598  000>> 98>>>>>>>>>>Part datagram received!
 54.7243 -14/06/2006 12:50:00.598  000>> 98>>>>>>>>>>Complete!
 54.7244 -14/06/2006 12:50:00.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30791
 54.7245 -14/06/2006 12:50:00.598  000>> Good datagram received!
 54.7246 -14/06/2006 12:50:00.598  000>> Listener:Received dictionary
 54.7247 -14/06/2006 12:50:00.598  000>> 90>>>>>>>>>>Part datagram received!
 54.7248 -14/06/2006 12:50:00.598  000>> 90>>>>>>>>>>Complete!
 54.7249 -14/06/2006 12:50:00.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30792
 54.7250 -14/06/2006 12:50:00.598  000>> Good datagram received!
 54.7251 -14/06/2006 12:50:00.598  000>> Listener:Received RIB
 54.7252 -14/06/2006 12:50:00.728  000>> 716>>>>>>>>>>Part datagram received!
 54.7253 -14/06/2006 12:50:00.728  000>> 716>>>>>>>>>>Complete!
 54.7254 -14/06/2006 12:50:00.728  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30793
 54.7255 -14/06/2006 12:50:00.728  000>> Good datagram received!
 54.7256 -14/06/2006 12:50:00.748  000>> Listener:Received Bundle Offer
 54.7257 -14/06/2006 12:50:00.748  000>> Listener:Sending Empty bundle request...
 54.7258 -14/06/2006 12:50:00.748  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7259 -14/06/2006 12:50:00.748  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30367
 54.7260 -14/06/2006 12:50:00.748  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30794
 54.7261 -14/06/2006 12:50:00.748  000>> Good datagram received!
 54.7262 -14/06/2006 12:50:00.748  000>> Initiator:No more requested bundles
 54.7263 -14/06/2006 12:50:00.748  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.7264 -14/06/2006 12:50:00.878  000>> 91>>>>>>>>>>Part datagram received!
 54.7265 -14/06/2006 12:50:00.878  000>> 91>>>>>>>>>>Complete!
 54.7266 -14/06/2006 12:50:00.878  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30795
 54.7267 -14/06/2006 12:50:00.878  000>> Good datagram received!
 54.7268 -14/06/2006 12:50:00.878  000>> Receive Hello:SYN
 54.7269 -14/06/2006 12:50:00.878  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30368
 54.7270 -14/06/2006 12:50:00.898  000>> 91>>>>>>>>>>Part datagram received!
 54.7271 -14/06/2006 12:50:00.898  000>> 91>>>>>>>>>>Complete!
 54.7272 -14/06/2006 12:50:00.898  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30796
 54.7273 -14/06/2006 12:50:00.908  000>> Good datagram received!
 54.7274 -14/06/2006 12:50:00.908  000>> Receive Hello:ACK
 54.7275 -14/06/2006 12:50:01.008  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7276 -14/06/2006 12:50:01.008  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30369
 54.7277 -14/06/2006 12:50:01.008  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30370
 54.7278 -14/06/2006 12:50:01.008  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30371
 54.7279 -14/06/2006 12:50:01.059  000>> 98>>>>>>>>>>Part datagram received!
 54.7280 -14/06/2006 12:50:01.059  000>> 98>>>>>>>>>>Complete!
 54.7281 -14/06/2006 12:50:01.059  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30797
 54.7282 -14/06/2006 12:50:01.059  000>> Good datagram received!
 54.7283 -14/06/2006 12:50:01.059  000>> Listener:Received dictionary
 54.7284 -14/06/2006 12:50:01.059  000>> 90>>>>>>>>>>Part datagram received!
 54.7285 -14/06/2006 12:50:01.059  000>> 90>>>>>>>>>>Complete!
 54.7286 -14/06/2006 12:50:01.059  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30798
 54.7287 -14/06/2006 12:50:01.059  000>> Good datagram received!
 54.7288 -14/06/2006 12:50:01.059  000>> Listener:Received RIB
 54.7289 -14/06/2006 12:50:01.229  000>> 716>>>>>>>>>>Part datagram received!
 54.7290 -14/06/2006 12:50:01.229  000>> 716>>>>>>>>>>Complete!
 54.7291 -14/06/2006 12:50:01.229  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30799
 54.7292 -14/06/2006 12:50:01.229  000>> Good datagram received!
 54.7293 -14/06/2006 12:50:01.249  000>> Listener:Received Bundle Offer
 54.7294 -14/06/2006 12:50:01.249  000>> Listener:Sending Empty bundle request...
 54.7295 -14/06/2006 12:50:01.249  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7296 -14/06/2006 12:50:01.249  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30372
 54.7297 -14/06/2006 12:50:01.249  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30800
 54.7298 -14/06/2006 12:50:01.249  000>> Good datagram received!
 54.7299 -14/06/2006 12:50:01.249  000>> Initiator:No more requested bundles
 54.7300 -14/06/2006 12:50:01.249  000>> Listener(receiveBundles):We can restart connection...
 54.7301 -14/06/2006 12:50:01.349  000>> Hello Procedure:SENDSYN
 54.7302 -14/06/2006 12:50:01.349  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30373
 54.7303 -14/06/2006 12:50:01.439  000>> 91>>>>>>>>>>Part datagram received!
 54.7304 -14/06/2006 12:50:01.439  000>> 91>>>>>>>>>>Complete!
 54.7305 -14/06/2006 12:50:01.439  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30801
 54.7306 -14/06/2006 12:50:01.439  000>> Good datagram received!
 54.7307 -14/06/2006 12:50:01.439  000>> Receive Hello:SYNACK
 54.7308 -14/06/2006 12:50:01.449  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30374
 54.7309 -14/06/2006 12:50:01.549  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7310 -14/06/2006 12:50:01.549  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30375
 54.7311 -14/06/2006 12:50:01.549  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30376
 54.7312 -14/06/2006 12:50:01.549  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30377
 54.7313 -14/06/2006 12:50:01.569  000>> 98>>>>>>>>>>Part datagram received!
 54.7314 -14/06/2006 12:50:01.569  000>> 98>>>>>>>>>>Complete!
 54.7315 -14/06/2006 12:50:01.569  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30802
 54.7316 -14/06/2006 12:50:01.569  000>> Good datagram received!
 54.7317 -14/06/2006 12:50:01.569  000>> Listener:Received dictionary
 54.7318 -14/06/2006 12:50:01.579  000>> 90>>>>>>>>>>Part datagram received!
 54.7319 -14/06/2006 12:50:01.579  000>> 90>>>>>>>>>>Complete!
 54.7320 -14/06/2006 12:50:01.579  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30803
 54.7321 -14/06/2006 12:50:01.579  000>> Good datagram received!
 54.7322 -14/06/2006 12:50:01.579  000>> Listener:Received RIB
 54.7323 -14/06/2006 12:50:01.730  000>> 716>>>>>>>>>>Part datagram received!
 54.7324 -14/06/2006 12:50:01.740  000>> 716>>>>>>>>>>Complete!
 54.7325 -14/06/2006 12:50:01.740  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30804
 54.7326 -14/06/2006 12:50:01.740  000>> Good datagram received!
 54.7327 -14/06/2006 12:50:01.750  000>> Listener:Received Bundle Offer
 54.7328 -14/06/2006 12:50:01.750  000>> Listener:Sending Empty bundle request...
 54.7329 -14/06/2006 12:50:01.750  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7330 -14/06/2006 12:50:01.750  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30378
 54.7331 -14/06/2006 12:50:01.750  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30805
 54.7332 -14/06/2006 12:50:01.760  000>> Good datagram received!
 54.7333 -14/06/2006 12:50:01.760  000>> Initiator:No more requested bundles
 54.7334 -14/06/2006 12:50:01.760  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.7335 -14/06/2006 12:50:01.890  000>> 91>>>>>>>>>>Part datagram received!
 54.7336 -14/06/2006 12:50:01.890  000>> 91>>>>>>>>>>Complete!
 54.7337 -14/06/2006 12:50:01.890  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30806
 54.7338 -14/06/2006 12:50:01.890  000>> Good datagram received!
 54.7339 -14/06/2006 12:50:01.890  000>> Receive Hello:SYN
 54.7340 -14/06/2006 12:50:01.890  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30379
 54.7341 -14/06/2006 12:50:01.920  000>> 91>>>>>>>>>>Part datagram received!
 54.7342 -14/06/2006 12:50:01.920  000>> 91>>>>>>>>>>Complete!
 54.7343 -14/06/2006 12:50:01.920  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30807
 54.7344 -14/06/2006 12:50:01.920  000>> Good datagram received!
 54.7345 -14/06/2006 12:50:01.920  000>> Receive Hello:ACK
 54.7346 -14/06/2006 12:50:02.020  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7347 -14/06/2006 12:50:02.020  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30380
 54.7348 -14/06/2006 12:50:02.030  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30381
 54.7349 -14/06/2006 12:50:02.030  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30382
 54.7350 -14/06/2006 12:50:02.050  000>> 98>>>>>>>>>>Part datagram received!
 54.7351 -14/06/2006 12:50:02.050  000>> 98>>>>>>>>>>Complete!
 54.7352 -14/06/2006 12:50:02.050  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30808
 54.7353 -14/06/2006 12:50:02.050  000>> Good datagram received!
 54.7354 -14/06/2006 12:50:02.050  000>> Listener:Received dictionary
 54.7355 -14/06/2006 12:50:02.050  000>> 90>>>>>>>>>>Part datagram received!
 54.7356 -14/06/2006 12:50:02.050  000>> 90>>>>>>>>>>Complete!
 54.7357 -14/06/2006 12:50:02.050  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30809
 54.7358 -14/06/2006 12:50:02.050  000>> Good datagram received!
 54.7359 -14/06/2006 12:50:02.050  000>> Listener:Received RIB
 54.7360 -14/06/2006 12:50:02.230  000>> 716>>>>>>>>>>Part datagram received!
 54.7361 -14/06/2006 12:50:02.240  000>> 716>>>>>>>>>>Complete!
 54.7362 -14/06/2006 12:50:02.240  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30810
 54.7363 -14/06/2006 12:50:02.240  000>> Good datagram received!
 54.7364 -14/06/2006 12:50:02.250  000>> Listener:Received Bundle Offer
 54.7365 -14/06/2006 12:50:02.250  000>> Listener:Sending Empty bundle request...
 54.7366 -14/06/2006 12:50:02.260  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7367 -14/06/2006 12:50:02.260  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30383
 54.7368 -14/06/2006 12:50:02.260  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30811
 54.7369 -14/06/2006 12:50:02.260  000>> Good datagram received!
 54.7370 -14/06/2006 12:50:02.260  000>> Initiator:No more requested bundles
 54.7371 -14/06/2006 12:50:02.260  000>> Listener(receiveBundles):We can restart connection...
 54.7372 -14/06/2006 12:50:02.360  000>> Hello Procedure:SENDSYN
 54.7373 -14/06/2006 12:50:02.360  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30384
 54.7374 -14/06/2006 12:50:02.441  000>> 91>>>>>>>>>>Part datagram received!
 54.7375 -14/06/2006 12:50:02.441  000>> 91>>>>>>>>>>Complete!
 54.7376 -14/06/2006 12:50:02.441  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30812
 54.7377 -14/06/2006 12:50:02.441  000>> Good datagram received!
 54.7378 -14/06/2006 12:50:02.441  000>> Receive Hello:SYNACK
 54.7379 -14/06/2006 12:50:02.441  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30385
 54.7380 -14/06/2006 12:50:02.541  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7381 -14/06/2006 12:50:02.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30386
 54.7382 -14/06/2006 12:50:02.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30387
 54.7383 -14/06/2006 12:50:02.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30388
 54.7384 -14/06/2006 12:50:02.571  000>> 98>>>>>>>>>>Part datagram received!
 54.7385 -14/06/2006 12:50:02.571  000>> 98>>>>>>>>>>Complete!
 54.7386 -14/06/2006 12:50:02.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30813
 54.7387 -14/06/2006 12:50:02.571  000>> Good datagram received!
 54.7388 -14/06/2006 12:50:02.571  000>> Listener:Received dictionary
 54.7389 -14/06/2006 12:50:02.581  000>> 90>>>>>>>>>>Part datagram received!
 54.7390 -14/06/2006 12:50:02.581  000>> 90>>>>>>>>>>Complete!
 54.7391 -14/06/2006 12:50:02.581  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30814
 54.7392 -14/06/2006 12:50:02.581  000>> Good datagram received!
 54.7393 -14/06/2006 12:50:02.581  000>> Listener:Received RIB
 54.7394 -14/06/2006 12:50:02.731  000>> 716>>>>>>>>>>Part datagram received!
 54.7395 -14/06/2006 12:50:02.741  000>> 716>>>>>>>>>>Complete!
 54.7396 -14/06/2006 12:50:02.741  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30815
 54.7397 -14/06/2006 12:50:02.741  000>> Good datagram received!
 54.7398 -14/06/2006 12:50:02.751  000>> Listener:Received Bundle Offer
 54.7399 -14/06/2006 12:50:02.751  000>> Listener:Sending Empty bundle request...
 54.7400 -14/06/2006 12:50:02.751  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7401 -14/06/2006 12:50:02.751  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30389
 54.7402 -14/06/2006 12:50:02.751  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30816
 54.7403 -14/06/2006 12:50:02.751  000>> Good datagram received!
 54.7404 -14/06/2006 12:50:02.761  000>> Initiator:No more requested bundles
 54.7405 -14/06/2006 12:50:02.761  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.7406 -14/06/2006 12:50:02.881  000>> 91>>>>>>>>>>Part datagram received!
 54.7407 -14/06/2006 12:50:02.881  000>> 91>>>>>>>>>>Complete!
 54.7408 -14/06/2006 12:50:02.881  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30817
 54.7409 -14/06/2006 12:50:02.881  000>> Good datagram received!
 54.7410 -14/06/2006 12:50:02.881  000>> Receive Hello:SYN
 54.7411 -14/06/2006 12:50:02.881  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30390
 54.7412 -14/06/2006 12:50:02.911  000>> 91>>>>>>>>>>Part datagram received!
 54.7413 -14/06/2006 12:50:02.911  000>> 91>>>>>>>>>>Complete!
 54.7414 -14/06/2006 12:50:02.911  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30818
 54.7415 -14/06/2006 12:50:02.911  000>> Good datagram received!
 54.7416 -14/06/2006 12:50:02.911  000>> Receive Hello:ACK
 54.7417 -14/06/2006 12:50:03.011  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7418 -14/06/2006 12:50:03.011  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30391
 54.7419 -14/06/2006 12:50:03.011  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30392
 54.7420 -14/06/2006 12:50:03.011  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30393
 54.7421 -14/06/2006 12:50:03.021  000>> 98>>>>>>>>>>Part datagram received!
 54.7422 -14/06/2006 12:50:03.021  000>> 98>>>>>>>>>>Complete!
 54.7423 -14/06/2006 12:50:03.021  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30819
 54.7424 -14/06/2006 12:50:03.021  000>> Good datagram received!
 54.7425 -14/06/2006 12:50:03.021  000>> Listener:Received dictionary
 54.7426 -14/06/2006 12:50:03.031  000>> 90>>>>>>>>>>Part datagram received!
 54.7427 -14/06/2006 12:50:03.031  000>> 90>>>>>>>>>>Complete!
 54.7428 -14/06/2006 12:50:03.031  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30820
 54.7429 -14/06/2006 12:50:03.031  000>> Good datagram received!
 54.7430 -14/06/2006 12:50:03.031  000>> Listener:Received RIB
 54.7431 -14/06/2006 12:50:03.132  000>> 716>>>>>>>>>>Part datagram received!
 54.7432 -14/06/2006 12:50:03.142  000>> 716>>>>>>>>>>Complete!
 54.7433 -14/06/2006 12:50:03.142  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30821
 54.7434 -14/06/2006 12:50:03.142  000>> Good datagram received!
 54.7435 -14/06/2006 12:50:03.152  000>> Listener:Received Bundle Offer
 54.7436 -14/06/2006 12:50:03.152  000>> Listener:Sending Empty bundle request...
 54.7437 -14/06/2006 12:50:03.152  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7438 -14/06/2006 12:50:03.152  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30394
 54.7439 -14/06/2006 12:50:03.152  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30822
 54.7440 -14/06/2006 12:50:03.152  000>> Good datagram received!
 54.7441 -14/06/2006 12:50:03.162  000>> Initiator:No more requested bundles
 54.7442 -14/06/2006 12:50:03.162  000>> Listener(receiveBundles):We can restart connection...
 54.7443 -14/06/2006 12:50:03.262  000>> Hello Procedure:SENDSYN
 54.7444 -14/06/2006 12:50:03.262  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30395
 54.7445 -14/06/2006 12:50:03.332  000>> 91>>>>>>>>>>Part datagram received!
 54.7446 -14/06/2006 12:50:03.332  000>> 91>>>>>>>>>>Complete!
 54.7447 -14/06/2006 12:50:03.342  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30823
 54.7448 -14/06/2006 12:50:03.342  000>> Good datagram received!
 54.7449 -14/06/2006 12:50:03.342  000>> Receive Hello:SYNACK
 54.7450 -14/06/2006 12:50:03.342  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30396
 54.7451 -14/06/2006 12:50:03.442  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7452 -14/06/2006 12:50:03.442  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30397
 54.7453 -14/06/2006 12:50:03.442  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30398
 54.7454 -14/06/2006 12:50:03.442  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30399
 54.7455 -14/06/2006 12:50:03.462  000>> 98>>>>>>>>>>Part datagram received!
 54.7456 -14/06/2006 12:50:03.462  000>> 98>>>>>>>>>>Complete!
 54.7457 -14/06/2006 12:50:03.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30824
 54.7458 -14/06/2006 12:50:03.462  000>> Good datagram received!
 54.7459 -14/06/2006 12:50:03.462  000>> Listener:Received dictionary
 54.7460 -14/06/2006 12:50:03.462  000>> 90>>>>>>>>>>Part datagram received!
 54.7461 -14/06/2006 12:50:03.462  000>> 90>>>>>>>>>>Complete!
 54.7462 -14/06/2006 12:50:03.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30825
 54.7463 -14/06/2006 12:50:03.462  000>> Good datagram received!
 54.7464 -14/06/2006 12:50:03.472  000>> Listener:Received RIB
 54.7465 -14/06/2006 12:50:03.642  000>> 716>>>>>>>>>>Part datagram received!
 54.7466 -14/06/2006 12:50:03.642  000>> 716>>>>>>>>>>Complete!
 54.7467 -14/06/2006 12:50:03.642  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30826
 54.7468 -14/06/2006 12:50:03.642  000>> Good datagram received!
 54.7469 -14/06/2006 12:50:03.652  000>> Listener:Received Bundle Offer
 54.7470 -14/06/2006 12:50:03.652  000>> Listener:Sending Empty bundle request...
 54.7471 -14/06/2006 12:50:03.652  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7472 -14/06/2006 12:50:03.652  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30400
 54.7473 -14/06/2006 12:50:03.662  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30827
 54.7474 -14/06/2006 12:50:03.662  000>> Good datagram received!
 54.7475 -14/06/2006 12:50:03.662  000>> Initiator:No more requested bundles
 54.7476 -14/06/2006 12:50:03.662  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.7477 -14/06/2006 12:50:03.782  000>> 91>>>>>>>>>>Part datagram received!
 54.7478 -14/06/2006 12:50:03.782  000>> 91>>>>>>>>>>Complete!
 54.7479 -14/06/2006 12:50:03.782  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30828
 54.7480 -14/06/2006 12:50:03.782  000>> Good datagram received!
 54.7481 -14/06/2006 12:50:03.782  000>> Receive Hello:SYN
 54.7482 -14/06/2006 12:50:03.782  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30401
 54.7483 -14/06/2006 12:50:03.812  000>> 91>>>>>>>>>>Part datagram received!
 54.7484 -14/06/2006 12:50:03.812  000>> 91>>>>>>>>>>Complete!
 54.7485 -14/06/2006 12:50:03.812  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30829
 54.7486 -14/06/2006 12:50:03.812  000>> Good datagram received!
 54.7487 -14/06/2006 12:50:03.812  000>> Receive Hello:ACK
 54.7488 -14/06/2006 12:50:03.913  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7489 -14/06/2006 12:50:03.913  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30402
 54.7490 -14/06/2006 12:50:03.913  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30403
 54.7491 -14/06/2006 12:50:03.913  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30404
 54.7492 -14/06/2006 12:50:03.913  000>> 98>>>>>>>>>>Part datagram received!
 54.7493 -14/06/2006 12:50:03.913  000>> 98>>>>>>>>>>Complete!
 54.7494 -14/06/2006 12:50:03.913  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30830
 54.7495 -14/06/2006 12:50:03.913  000>> Good datagram received!
 54.7496 -14/06/2006 12:50:03.923  000>> Listener:Received dictionary
 54.7497 -14/06/2006 12:50:03.923  000>> 90>>>>>>>>>>Part datagram received!
 54.7498 -14/06/2006 12:50:03.923  000>> 90>>>>>>>>>>Complete!
 54.7499 -14/06/2006 12:50:03.923  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30831
 54.7500 -14/06/2006 12:50:03.923  000>> Good datagram received!
 54.7501 -14/06/2006 12:50:03.923  000>> Listener:Received RIB
 54.7502 -14/06/2006 12:50:04.053  000>> 716>>>>>>>>>>Part datagram received!
 54.7503 -14/06/2006 12:50:04.053  000>> 716>>>>>>>>>>Complete!
 54.7504 -14/06/2006 12:50:04.053  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30832
 54.7505 -14/06/2006 12:50:04.053  000>> Good datagram received!
 54.7506 -14/06/2006 12:50:04.073  000>> Listener:Received Bundle Offer
 54.7507 -14/06/2006 12:50:04.073  000>> Listener:Sending Empty bundle request...
 54.7508 -14/06/2006 12:50:04.073  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7509 -14/06/2006 12:50:04.073  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30405
 54.7510 -14/06/2006 12:50:04.073  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30833
 54.7511 -14/06/2006 12:50:04.073  000>> Good datagram received!
 54.7512 -14/06/2006 12:50:04.073  000>> Initiator:No more requested bundles
 54.7513 -14/06/2006 12:50:04.073  000>> Listener(receiveBundles):We can restart connection...
 54.7514 -14/06/2006 12:50:04.173  000>> Hello Procedure:SENDSYN
 54.7515 -14/06/2006 12:50:04.173  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30406
 54.7516 -14/06/2006 12:50:04.243  000>> 91>>>>>>>>>>Part datagram received!
 54.7517 -14/06/2006 12:50:04.253  000>> 91>>>>>>>>>>Complete!
 54.7518 -14/06/2006 12:50:04.253  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30834
 54.7519 -14/06/2006 12:50:04.253  000>> Good datagram received!
 54.7520 -14/06/2006 12:50:04.253  000>> Receive Hello:SYNACK
 54.7521 -14/06/2006 12:50:04.253  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30407
 54.7522 -14/06/2006 12:50:04.353  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7523 -14/06/2006 12:50:04.353  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30408
 54.7524 -14/06/2006 12:50:04.353  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30409
 54.7525 -14/06/2006 12:50:04.353  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30410
 54.7526 -14/06/2006 12:50:04.373  000>> 98>>>>>>>>>>Part datagram received!
 54.7527 -14/06/2006 12:50:04.373  000>> 98>>>>>>>>>>Complete!
 54.7528 -14/06/2006 12:50:04.373  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30835
 54.7529 -14/06/2006 12:50:04.373  000>> Good datagram received!
 54.7530 -14/06/2006 12:50:04.373  000>> Listener:Received dictionary
 54.7531 -14/06/2006 12:50:04.373  000>> 90>>>>>>>>>>Part datagram received!
 54.7532 -14/06/2006 12:50:04.373  000>> 90>>>>>>>>>>Complete!
 54.7533 -14/06/2006 12:50:04.373  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30836
 54.7534 -14/06/2006 12:50:04.373  000>> Good datagram received!
 54.7535 -14/06/2006 12:50:04.383  000>> Listener:Received RIB
 54.7536 -14/06/2006 12:50:04.544  000>> 716>>>>>>>>>>Part datagram received!
 54.7537 -14/06/2006 12:50:04.544  000>> 716>>>>>>>>>>Complete!
 54.7538 -14/06/2006 12:50:04.544  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30837
 54.7539 -14/06/2006 12:50:04.544  000>> Good datagram received!
 54.7540 -14/06/2006 12:50:04.554  000>> Listener:Received Bundle Offer
 54.7541 -14/06/2006 12:50:04.554  000>> Listener:Sending Empty bundle request...
 54.7542 -14/06/2006 12:50:04.554  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7543 -14/06/2006 12:50:04.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30411
 54.7544 -14/06/2006 12:50:04.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30838
 54.7545 -14/06/2006 12:50:04.564  000>> Good datagram received!
 54.7546 -14/06/2006 12:50:04.564  000>> Initiator:No more requested bundles
 54.7547 -14/06/2006 12:50:04.564  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.7548 -14/06/2006 12:50:04.684  000>> 91>>>>>>>>>>Part datagram received!
 54.7549 -14/06/2006 12:50:04.684  000>> 91>>>>>>>>>>Complete!
 54.7550 -14/06/2006 12:50:04.684  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30839
 54.7551 -14/06/2006 12:50:04.684  000>> Good datagram received!
 54.7552 -14/06/2006 12:50:04.684  000>> Receive Hello:SYN
 54.7553 -14/06/2006 12:50:04.684  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30412
 54.7554 -14/06/2006 12:50:04.714  000>> 91>>>>>>>>>>Part datagram received!
 54.7555 -14/06/2006 12:50:04.714  000>> 91>>>>>>>>>>Complete!
 54.7556 -14/06/2006 12:50:04.714  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30840
 54.7557 -14/06/2006 12:50:04.714  000>> Good datagram received!
 54.7558 -14/06/2006 12:50:04.714  000>> Receive Hello:ACK
 54.7559 -14/06/2006 12:50:04.814  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7560 -14/06/2006 12:50:04.814  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30413
 54.7561 -14/06/2006 12:50:04.814  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30414
 54.7562 -14/06/2006 12:50:04.814  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30415
 54.7563 -14/06/2006 12:50:04.814  000>> 98>>>>>>>>>>Part datagram received!
 54.7564 -14/06/2006 12:50:04.814  000>> 98>>>>>>>>>>Complete!
 54.7565 -14/06/2006 12:50:04.814  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30841
 54.7566 -14/06/2006 12:50:04.814  000>> Good datagram received!
 54.7567 -14/06/2006 12:50:04.814  000>> Listener:Received dictionary
 54.7568 -14/06/2006 12:50:04.824  000>> 90>>>>>>>>>>Part datagram received!
 54.7569 -14/06/2006 12:50:04.824  000>> 90>>>>>>>>>>Complete!
 54.7570 -14/06/2006 12:50:04.824  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30842
 54.7571 -14/06/2006 12:50:04.824  000>> Good datagram received!
 54.7572 -14/06/2006 12:50:04.824  000>> Listener:Received RIB
 54.7573 -14/06/2006 12:50:04.824  000>> 0>>>>>>>>>>Part datagram received!
 54.7574 -14/06/2006 12:50:04.824  000>> 0>>>>>>>>>>Part datagram received!
 54.7575 -14/06/2006 12:50:04.824  000>> 638>>>>>>>>>>Part datagram received!
 54.7576 -14/06/2006 12:50:04.824  000>> 638>>>>>>>>>>Complete!
 54.7577 -14/06/2006 12:50:04.824  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30843
 54.7578 -14/06/2006 12:50:04.824  000>> Good datagram received!
 54.7579 -14/06/2006 12:50:04.844  000>> Listener:Received Bundle Offer
 54.7580 -14/06/2006 12:50:04.844  000>> Listener:Sending Empty bundle request...
 54.7581 -14/06/2006 12:50:04.844  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7582 -14/06/2006 12:50:04.844  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30416
 54.7583 -14/06/2006 12:50:04.924  000>> 78>>>>>>>>>>Part datagram received!
 54.7584 -14/06/2006 12:50:04.924  000>> 78>>>>>>>>>>Complete!
 54.7585 -14/06/2006 12:50:04.924  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30844
 54.7586 -14/06/2006 12:50:04.924  000>> Good datagram received!
 54.7587 -14/06/2006 12:50:04.924  000>> Initiator:No more requested bundles
 54.7588 -14/06/2006 12:50:04.924  000>> Listener(receiveBundles):We can restart connection...
 54.7589 -14/06/2006 12:50:05.024  000>> Hello Procedure:SENDSYN
 54.7590 -14/06/2006 12:50:05.024  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30417
 54.7591 -14/06/2006 12:50:05.044  000>> 91>>>>>>>>>>Part datagram received!
 54.7592 -14/06/2006 12:50:05.044  000>> 91>>>>>>>>>>Complete!
 54.7593 -14/06/2006 12:50:05.044  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30845
 54.7594 -14/06/2006 12:50:05.044  000>> Good datagram received!
 54.7595 -14/06/2006 12:50:05.044  000>> Receive Hello:SYNACK
 54.7596 -14/06/2006 12:50:05.044  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30418
 54.7597 -14/06/2006 12:50:05.144  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7598 -14/06/2006 12:50:05.144  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30419
 54.7599 -14/06/2006 12:50:05.144  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30420
 54.7600 -14/06/2006 12:50:05.144  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30421
 54.7601 -14/06/2006 12:50:05.164  000>> 98>>>>>>>>>>Part datagram received!
 54.7602 -14/06/2006 12:50:05.164  000>> 98>>>>>>>>>>Complete!
 54.7603 -14/06/2006 12:50:05.164  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30846
 54.7604 -14/06/2006 12:50:05.164  000>> Good datagram received!
 54.7605 -14/06/2006 12:50:05.164  000>> Listener:Received dictionary
 54.7606 -14/06/2006 12:50:05.164  000>> 90>>>>>>>>>>Part datagram received!
 54.7607 -14/06/2006 12:50:05.164  000>> 90>>>>>>>>>>Complete!
 54.7608 -14/06/2006 12:50:05.164  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30847
 54.7609 -14/06/2006 12:50:05.164  000>> Good datagram received!
 54.7610 -14/06/2006 12:50:05.174  000>> Listener:Received RIB
 54.7611 -14/06/2006 12:50:05.345  000>> 716>>>>>>>>>>Part datagram received!
 54.7612 -14/06/2006 12:50:05.345  000>> 716>>>>>>>>>>Complete!
 54.7613 -14/06/2006 12:50:05.345  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30848
 54.7614 -14/06/2006 12:50:05.345  000>> Good datagram received!
 54.7615 -14/06/2006 12:50:05.365  000>> Listener:Received Bundle Offer
 54.7616 -14/06/2006 12:50:05.365  000>> Listener:Sending Empty bundle request...
 54.7617 -14/06/2006 12:50:05.365  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7618 -14/06/2006 12:50:05.365  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30422
 54.7619 -14/06/2006 12:50:05.365  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30849
 54.7620 -14/06/2006 12:50:05.365  000>> Good datagram received!
 54.7621 -14/06/2006 12:50:05.365  000>> Initiator:No more requested bundles
 54.7622 -14/06/2006 12:50:05.365  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.7623 -14/06/2006 12:50:05.485  000>> 91>>>>>>>>>>Part datagram received!
 54.7624 -14/06/2006 12:50:05.485  000>> 91>>>>>>>>>>Complete!
 54.7625 -14/06/2006 12:50:05.485  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30850
 54.7626 -14/06/2006 12:50:05.485  000>> Good datagram received!
 54.7627 -14/06/2006 12:50:05.485  000>> Receive Hello:SYN
 54.7628 -14/06/2006 12:50:05.485  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30423
 54.7629 -14/06/2006 12:50:05.515  000>> 91>>>>>>>>>>Part datagram received!
 54.7630 -14/06/2006 12:50:05.515  000>> 91>>>>>>>>>>Complete!
 54.7631 -14/06/2006 12:50:05.515  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30851
 54.7632 -14/06/2006 12:50:05.515  000>> Good datagram received!
 54.7633 -14/06/2006 12:50:05.515  000>> Receive Hello:ACK
 54.7634 -14/06/2006 12:50:05.615  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7635 -14/06/2006 12:50:05.615  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30424
 54.7636 -14/06/2006 12:50:05.615  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30425
 54.7637 -14/06/2006 12:50:05.615  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30426
 54.7638 -14/06/2006 12:50:05.615  000>> 98>>>>>>>>>>Part datagram received!
 54.7639 -14/06/2006 12:50:05.615  000>> 98>>>>>>>>>>Complete!
 54.7640 -14/06/2006 12:50:05.615  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30852
 54.7641 -14/06/2006 12:50:05.615  000>> Good datagram received!
 54.7642 -14/06/2006 12:50:05.615  000>> Listener:Received dictionary
 54.7643 -14/06/2006 12:50:05.625  000>> 0>>>>>>>>>>Part datagram received!
 54.7644 -14/06/2006 12:50:05.625  000>> 0>>>>>>>>>>Part datagram received!
 54.7645 -14/06/2006 12:50:05.625  000>> 90>>>>>>>>>>Part datagram received!
 54.7646 -14/06/2006 12:50:05.625  000>> 90>>>>>>>>>>Complete!
 54.7647 -14/06/2006 12:50:05.625  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30853
 54.7648 -14/06/2006 12:50:05.625  000>> Good datagram received!
 54.7649 -14/06/2006 12:50:05.625  000>> Listener:Received RIB
 54.7650 -14/06/2006 12:50:05.625  000>> 638>>>>>>>>>>Part datagram received!
 54.7651 -14/06/2006 12:50:05.625  000>> 638>>>>>>>>>>Complete!
 54.7652 -14/06/2006 12:50:05.625  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30854
 54.7653 -14/06/2006 12:50:05.625  000>> Good datagram received!
 54.7654 -14/06/2006 12:50:05.645  000>> Listener:Received Bundle Offer
 54.7655 -14/06/2006 12:50:05.645  000>> Listener:Sending Empty bundle request...
 54.7656 -14/06/2006 12:50:05.645  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7657 -14/06/2006 12:50:05.645  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30427
 54.7658 -14/06/2006 12:50:05.725  000>> 78>>>>>>>>>>Part datagram received!
 54.7659 -14/06/2006 12:50:05.725  000>> 78>>>>>>>>>>Complete!
 54.7660 -14/06/2006 12:50:05.725  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30855
 54.7661 -14/06/2006 12:50:05.725  000>> Good datagram received!
 54.7662 -14/06/2006 12:50:05.735  000>> Initiator:No more requested bundles
 54.7663 -14/06/2006 12:50:05.735  000>> Listener(receiveBundles):We can restart connection...
 54.7664 -14/06/2006 12:50:05.835  000>> Hello Procedure:SENDSYN
 54.7665 -14/06/2006 12:50:05.835  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30428
 54.7666 -14/06/2006 12:50:05.895  000>> 91>>>>>>>>>>Part datagram received!
 54.7667 -14/06/2006 12:50:05.895  000>> 91>>>>>>>>>>Complete!
 54.7668 -14/06/2006 12:50:05.895  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30856
 54.7669 -14/06/2006 12:50:05.895  000>> Good datagram received!
 54.7670 -14/06/2006 12:50:05.895  000>> Receive Hello:SYNACK
 54.7671 -14/06/2006 12:50:05.906  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30429
 54.7672 -14/06/2006 12:50:06.006  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7673 -14/06/2006 12:50:06.006  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30430
 54.7674 -14/06/2006 12:50:06.006  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30431
 54.7675 -14/06/2006 12:50:06.006  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30432
 54.7676 -14/06/2006 12:50:06.096  000>> 78>>>>>>>>>>Part datagram received!
 54.7677 -14/06/2006 12:50:06.096  000>> 78>>>>>>>>>>Complete!
 54.7678 -14/06/2006 12:50:06.096  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30857
 54.7679 -14/06/2006 12:50:06.096  000>> Good datagram received!
 54.7680 -14/06/2006 12:50:06.096  000>> Initiator:No more requested bundles
 54.7681 -14/06/2006 12:50:06.096  000>> Initiator:But we can not restart connection...
 54.7682 -14/06/2006 12:50:06.246  000>> 826>>>>>>>>>>Part datagram received!
 54.7683 -14/06/2006 12:50:06.246  000>> 826>>>>>>>>>>Complete!
 54.7684 -14/06/2006 12:50:06.246  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30858
 54.7685 -14/06/2006 12:50:06.246  000>> Good datagram received!
 54.7686 -14/06/2006 12:50:06.246  000>> Listener:Received dictionary
 54.7687 -14/06/2006 12:50:06.256  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30859
 54.7688 -14/06/2006 12:50:06.256  000>> Good datagram received!
 54.7689 -14/06/2006 12:50:06.256  000>> Listener:Received RIB
 54.7690 -14/06/2006 12:50:06.256  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30860
 54.7691 -14/06/2006 12:50:06.256  000>> Good datagram received!
 54.7692 -14/06/2006 12:50:06.266  000>> Listener:Received Bundle Offer
 54.7693 -14/06/2006 12:50:06.276  000>> Listener:Sending Empty bundle request...
 54.7694 -14/06/2006 12:50:06.276  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.7695 -14/06/2006 12:50:06.276  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30433
 54.7696 -14/06/2006 12:50:06.396  000>> 91>>>>>>>>>>Part datagram received!
 54.7697 -14/06/2006 12:50:06.396  000>> 91>>>>>>>>>>Complete!
 54.7698 -14/06/2006 12:50:06.396  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30861
 54.7699 -14/06/2006 12:50:06.396  000>> Good datagram received!
 54.7700 -14/06/2006 12:50:06.396  000>> Receive Hello:SYN
 54.7701 -14/06/2006 12:50:06.396  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30434
 54.7702 -14/06/2006 12:50:06.446  000>> 91>>>>>>>>>>Part datagram received!
 54.7703 -14/06/2006 12:50:06.446  000>> 91>>>>>>>>>>Complete!
 54.7704 -14/06/2006 12:50:06.446  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30862
 54.7705 -14/06/2006 12:50:06.446  000>> Good datagram received!
 54.7706 -14/06/2006 12:50:06.446  000>> Receive Hello:ACK
 54.7707 -14/06/2006 12:50:06.546  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7708 -14/06/2006 12:50:06.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30435
 54.7709 -14/06/2006 12:50:06.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30436
 54.7710 -14/06/2006 12:50:06.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30437
 54.7711 -14/06/2006 12:50:06.546  000>> 98>>>>>>>>>>Part datagram received!
 54.7712 -14/06/2006 12:50:06.546  000>> 98>>>>>>>>>>Complete!
 54.7713 -14/06/2006 12:50:06.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30863
 54.7714 -14/06/2006 12:50:06.546  000>> Good datagram received!
 54.7715 -14/06/2006 12:50:06.556  000>> Listener:Received dictionary
 54.7716 -14/06/2006 12:50:06.556  000>> 90>>>>>>>>>>Part datagram received!
 54.7717 -14/06/2006 12:50:06.556  000>> 90>>>>>>>>>>Complete!
 54.7718 -14/06/2006 12:50:06.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30864
 54.7719 -14/06/2006 12:50:06.556  000>> Good datagram received!
 54.7720 -14/06/2006 12:50:06.556  000>> Listener:Received RIB
 54.7721 -14/06/2006 12:50:06.556  000>> 0>>>>>>>>>>Part datagram received!
 54.7722 -14/06/2006 12:50:06.556  000>> 0>>>>>>>>>>Part datagram received!
 54.7723 -14/06/2006 12:50:06.576  000>> 638>>>>>>>>>>Part datagram received!
 54.7724 -14/06/2006 12:50:06.576  000>> 638>>>>>>>>>>Complete!
 54.7725 -14/06/2006 12:50:06.576  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30865
 54.7726 -14/06/2006 12:50:06.576  000>> Good datagram received!
 54.7727 -14/06/2006 12:50:06.586  000>> Listener:Received Bundle Offer
 54.7728 -14/06/2006 12:50:06.597  000>> Listener:Sending Empty bundle request...
 54.7729 -14/06/2006 12:50:06.597  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7730 -14/06/2006 12:50:06.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30438
 54.7731 -14/06/2006 12:50:06.677  000>> 78>>>>>>>>>>Part datagram received!
 54.7732 -14/06/2006 12:50:06.677  000>> 78>>>>>>>>>>Complete!
 54.7733 -14/06/2006 12:50:06.677  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30866
 54.7734 -14/06/2006 12:50:06.677  000>> Good datagram received!
 54.7735 -14/06/2006 12:50:06.677  000>> Initiator:No more requested bundles
 54.7736 -14/06/2006 12:50:06.677  000>> Listener(receiveBundles):We can restart connection...
 54.7737 -14/06/2006 12:50:06.777  000>> Hello Procedure:SENDSYN
 54.7738 -14/06/2006 12:50:06.777  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30439
 54.7739 -14/06/2006 12:50:06.797  000>> 91>>>>>>>>>>Part datagram received!
 54.7740 -14/06/2006 12:50:06.797  000>> 91>>>>>>>>>>Complete!
 54.7741 -14/06/2006 12:50:06.797  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30867
 54.7742 -14/06/2006 12:50:06.797  000>> Good datagram received!
 54.7743 -14/06/2006 12:50:06.797  000>> Receive Hello:SYNACK
 54.7744 -14/06/2006 12:50:06.797  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30440
 54.7745 -14/06/2006 12:50:06.897  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7746 -14/06/2006 12:50:06.897  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30441
 54.7747 -14/06/2006 12:50:06.897  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30442
 54.7748 -14/06/2006 12:50:06.897  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30443
 54.7749 -14/06/2006 12:50:06.917  000>> 98>>>>>>>>>>Part datagram received!
 54.7750 -14/06/2006 12:50:06.917  000>> 98>>>>>>>>>>Complete!
 54.7751 -14/06/2006 12:50:06.917  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30868
 54.7752 -14/06/2006 12:50:06.917  000>> Good datagram received!
 54.7753 -14/06/2006 12:50:06.917  000>> Listener:Received dictionary
 54.7754 -14/06/2006 12:50:06.917  000>> 90>>>>>>>>>>Part datagram received!
 54.7755 -14/06/2006 12:50:06.927  000>> 90>>>>>>>>>>Complete!
 54.7756 -14/06/2006 12:50:06.927  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30869
 54.7757 -14/06/2006 12:50:06.927  000>> Good datagram received!
 54.7758 -14/06/2006 12:50:06.927  000>> Listener:Received RIB
 54.7759 -14/06/2006 12:50:07.047  000>> 716>>>>>>>>>>Part datagram received!
 54.7760 -14/06/2006 12:50:07.047  000>> 716>>>>>>>>>>Complete!
 54.7761 -14/06/2006 12:50:07.047  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30870
 54.7762 -14/06/2006 12:50:07.047  000>> Good datagram received!
 54.7763 -14/06/2006 12:50:07.067  000>> Listener:Received Bundle Offer
 54.7764 -14/06/2006 12:50:07.067  000>> Listener:Sending Empty bundle request...
 54.7765 -14/06/2006 12:50:07.067  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7766 -14/06/2006 12:50:07.067  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30444
 54.7767 -14/06/2006 12:50:07.067  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30871
 54.7768 -14/06/2006 12:50:07.067  000>> Good datagram received!
 54.7769 -14/06/2006 12:50:07.077  000>> Initiator:No more requested bundles
 54.7770 -14/06/2006 12:50:07.077  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.7771 -14/06/2006 12:50:07.217  000>> 91>>>>>>>>>>Part datagram received!
 54.7772 -14/06/2006 12:50:07.217  000>> 91>>>>>>>>>>Complete!
 54.7773 -14/06/2006 12:50:07.217  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30872
 54.7774 -14/06/2006 12:50:07.217  000>> Good datagram received!
 54.7775 -14/06/2006 12:50:07.217  000>> Receive Hello:SYN
 54.7776 -14/06/2006 12:50:07.217  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30445
 54.7777 -14/06/2006 12:50:07.247  000>> 91>>>>>>>>>>Part datagram received!
 54.7778 -14/06/2006 12:50:07.247  000>> 91>>>>>>>>>>Complete!
 54.7779 -14/06/2006 12:50:07.247  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30873
 54.7780 -14/06/2006 12:50:07.247  000>> Good datagram received!
 54.7781 -14/06/2006 12:50:07.247  000>> Receive Hello:ACK
 54.7782 -14/06/2006 12:50:07.348  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7783 -14/06/2006 12:50:07.348  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30446
 54.7784 -14/06/2006 12:50:07.348  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30447
 54.7785 -14/06/2006 12:50:07.348  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30448
 54.7786 -14/06/2006 12:50:07.378  000>> 98>>>>>>>>>>Part datagram received!
 54.7787 -14/06/2006 12:50:07.378  000>> 98>>>>>>>>>>Complete!
 54.7788 -14/06/2006 12:50:07.378  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30874
 54.7789 -14/06/2006 12:50:07.378  000>> Good datagram received!
 54.7790 -14/06/2006 12:50:07.388  000>> Listener:Received dictionary
 54.7791 -14/06/2006 12:50:07.388  000>> 90>>>>>>>>>>Part datagram received!
 54.7792 -14/06/2006 12:50:07.388  000>> 90>>>>>>>>>>Complete!
 54.7793 -14/06/2006 12:50:07.388  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30875
 54.7794 -14/06/2006 12:50:07.388  000>> Good datagram received!
 54.7795 -14/06/2006 12:50:07.388  000>> Listener:Received RIB
 54.7796 -14/06/2006 12:50:07.548  000>> 716>>>>>>>>>>Part datagram received!
 54.7797 -14/06/2006 12:50:07.548  000>> 716>>>>>>>>>>Complete!
 54.7798 -14/06/2006 12:50:07.548  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30876
 54.7799 -14/06/2006 12:50:07.558  000>> Good datagram received!
 54.7800 -14/06/2006 12:50:07.568  000>> Listener:Received Bundle Offer
 54.7801 -14/06/2006 12:50:07.568  000>> Listener:Sending Empty bundle request...
 54.7802 -14/06/2006 12:50:07.568  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7803 -14/06/2006 12:50:07.568  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30449
 54.7804 -14/06/2006 12:50:07.568  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30877
 54.7805 -14/06/2006 12:50:07.568  000>> Good datagram received!
 54.7806 -14/06/2006 12:50:07.568  000>> Initiator:No more requested bundles
 54.7807 -14/06/2006 12:50:07.568  000>> Listener(receiveBundles):We can restart connection...
 54.7808 -14/06/2006 12:50:07.668  000>> Hello Procedure:SENDSYN
 54.7809 -14/06/2006 12:50:07.668  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30450
 54.7810 -14/06/2006 12:50:07.768  000>> 91>>>>>>>>>>Part datagram received!
 54.7811 -14/06/2006 12:50:07.768  000>> 91>>>>>>>>>>Complete!
 54.7812 -14/06/2006 12:50:07.768  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30878
 54.7813 -14/06/2006 12:50:07.768  000>> Good datagram received!
 54.7814 -14/06/2006 12:50:07.768  000>> Receive Hello:SYNACK
 54.7815 -14/06/2006 12:50:07.768  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30451
 54.7816 -14/06/2006 12:50:07.868  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7817 -14/06/2006 12:50:07.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30452
 54.7818 -14/06/2006 12:50:07.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30453
 54.7819 -14/06/2006 12:50:07.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30454
 54.7820 -14/06/2006 12:50:07.888  000>> 98>>>>>>>>>>Part datagram received!
 54.7821 -14/06/2006 12:50:07.888  000>> 98>>>>>>>>>>Complete!
 54.7822 -14/06/2006 12:50:07.888  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30879
 54.7823 -14/06/2006 12:50:07.888  000>> Good datagram received!
 54.7824 -14/06/2006 12:50:07.898  000>> Listener:Received dictionary
 54.7825 -14/06/2006 12:50:07.898  000>> 90>>>>>>>>>>Part datagram received!
 54.7826 -14/06/2006 12:50:07.898  000>> 90>>>>>>>>>>Complete!
 54.7827 -14/06/2006 12:50:07.898  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30880
 54.7828 -14/06/2006 12:50:07.898  000>> Good datagram received!
 54.7829 -14/06/2006 12:50:07.898  000>> Listener:Received RIB
 54.7830 -14/06/2006 12:50:08.049  000>> 716>>>>>>>>>>Part datagram received!
 54.7831 -14/06/2006 12:50:08.049  000>> 716>>>>>>>>>>Complete!
 54.7832 -14/06/2006 12:50:08.049  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30881
 54.7833 -14/06/2006 12:50:08.059  000>> Good datagram received!
 54.7834 -14/06/2006 12:50:08.069  000>> Listener:Received Bundle Offer
 54.7835 -14/06/2006 12:50:08.069  000>> Listener:Sending Empty bundle request...
 54.7836 -14/06/2006 12:50:08.069  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7837 -14/06/2006 12:50:08.069  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30455
 54.7838 -14/06/2006 12:50:08.069  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30882
 54.7839 -14/06/2006 12:50:08.069  000>> Good datagram received!
 54.7840 -14/06/2006 12:50:08.069  000>> Initiator:No more requested bundles
 54.7841 -14/06/2006 12:50:08.079  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.7842 -14/06/2006 12:50:08.189  000>> 91>>>>>>>>>>Part datagram received!
 54.7843 -14/06/2006 12:50:08.189  000>> 91>>>>>>>>>>Complete!
 54.7844 -14/06/2006 12:50:08.189  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30883
 54.7845 -14/06/2006 12:50:08.189  000>> Good datagram received!
 54.7846 -14/06/2006 12:50:08.189  000>> Receive Hello:SYN
 54.7847 -14/06/2006 12:50:08.189  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30456
 54.7848 -14/06/2006 12:50:08.209  000>> 91>>>>>>>>>>Part datagram received!
 54.7849 -14/06/2006 12:50:08.219  000>> 91>>>>>>>>>>Complete!
 54.7850 -14/06/2006 12:50:08.219  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30884
 54.7851 -14/06/2006 12:50:08.219  000>> Good datagram received!
 54.7852 -14/06/2006 12:50:08.219  000>> Receive Hello:ACK
 54.7853 -14/06/2006 12:50:08.319  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7854 -14/06/2006 12:50:08.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30457
 54.7855 -14/06/2006 12:50:08.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30458
 54.7856 -14/06/2006 12:50:08.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30459
 54.7857 -14/06/2006 12:50:08.319  000>> 98>>>>>>>>>>Part datagram received!
 54.7858 -14/06/2006 12:50:08.319  000>> 98>>>>>>>>>>Complete!
 54.7859 -14/06/2006 12:50:08.329  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30885
 54.7860 -14/06/2006 12:50:08.329  000>> Good datagram received!
 54.7861 -14/06/2006 12:50:08.329  000>> Listener:Received dictionary
 54.7862 -14/06/2006 12:50:08.329  000>> 90>>>>>>>>>>Part datagram received!
 54.7863 -14/06/2006 12:50:08.329  000>> 90>>>>>>>>>>Complete!
 54.7864 -14/06/2006 12:50:08.329  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30886
 54.7865 -14/06/2006 12:50:08.329  000>> Good datagram received!
 54.7866 -14/06/2006 12:50:08.339  000>> Listener:Received RIB
 54.7867 -14/06/2006 12:50:08.339  000>> 0>>>>>>>>>>Part datagram received!
 54.7868 -14/06/2006 12:50:08.339  000>> 0>>>>>>>>>>Part datagram received!
 54.7869 -14/06/2006 12:50:08.339  000>> 638>>>>>>>>>>Part datagram received!
 54.7870 -14/06/2006 12:50:08.339  000>> 638>>>>>>>>>>Complete!
 54.7871 -14/06/2006 12:50:08.339  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30887
 54.7872 -14/06/2006 12:50:08.339  000>> Good datagram received!
 54.7873 -14/06/2006 12:50:08.359  000>> Listener:Received Bundle Offer
 54.7874 -14/06/2006 12:50:08.359  000>> Listener:Sending Empty bundle request...
 54.7875 -14/06/2006 12:50:08.359  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7876 -14/06/2006 12:50:08.359  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30460
 54.7877 -14/06/2006 12:50:08.439  000>> 78>>>>>>>>>>Part datagram received!
 54.7878 -14/06/2006 12:50:08.439  000>> 78>>>>>>>>>>Complete!
 54.7879 -14/06/2006 12:50:08.439  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30888
 54.7880 -14/06/2006 12:50:08.439  000>> Good datagram received!
 54.7881 -14/06/2006 12:50:08.439  000>> Initiator:No more requested bundles
 54.7882 -14/06/2006 12:50:08.439  000>> Listener(receiveBundles):We can restart connection...
 54.7883 -14/06/2006 12:50:08.539  000>> Hello Procedure:SENDSYN
 54.7884 -14/06/2006 12:50:08.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30461
 54.7885 -14/06/2006 12:50:08.549  000>> 91>>>>>>>>>>Part datagram received!
 54.7886 -14/06/2006 12:50:08.559  000>> 91>>>>>>>>>>Complete!
 54.7887 -14/06/2006 12:50:08.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30889
 54.7888 -14/06/2006 12:50:08.559  000>> Good datagram received!
 54.7889 -14/06/2006 12:50:08.559  000>> Receive Hello:SYNACK
 54.7890 -14/06/2006 12:50:08.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30462
 54.7891 -14/06/2006 12:50:08.659  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7892 -14/06/2006 12:50:08.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30463
 54.7893 -14/06/2006 12:50:08.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30464
 54.7894 -14/06/2006 12:50:08.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30465
 54.7895 -14/06/2006 12:50:08.679  000>> 98>>>>>>>>>>Part datagram received!
 54.7896 -14/06/2006 12:50:08.679  000>> 98>>>>>>>>>>Complete!
 54.7897 -14/06/2006 12:50:08.679  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30890
 54.7898 -14/06/2006 12:50:08.679  000>> Good datagram received!
 54.7899 -14/06/2006 12:50:08.679  000>> Listener:Received dictionary
 54.7900 -14/06/2006 12:50:08.679  000>> 90>>>>>>>>>>Part datagram received!
 54.7901 -14/06/2006 12:50:08.679  000>> 90>>>>>>>>>>Complete!
 54.7902 -14/06/2006 12:50:08.679  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30891
 54.7903 -14/06/2006 12:50:08.690  000>> Good datagram received!
 54.7904 -14/06/2006 12:50:08.690  000>> Listener:Received RIB
 54.7905 -14/06/2006 12:50:08.850  000>> 716>>>>>>>>>>Part datagram received!
 54.7906 -14/06/2006 12:50:08.860  000>> 716>>>>>>>>>>Complete!
 54.7907 -14/06/2006 12:50:08.860  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30892
 54.7908 -14/06/2006 12:50:08.860  000>> Good datagram received!
 54.7909 -14/06/2006 12:50:08.870  000>> Listener:Received Bundle Offer
 54.7910 -14/06/2006 12:50:08.870  000>> Listener:Sending Empty bundle request...
 54.7911 -14/06/2006 12:50:08.870  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7912 -14/06/2006 12:50:08.870  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30466
 54.7913 -14/06/2006 12:50:08.870  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30893
 54.7914 -14/06/2006 12:50:08.880  000>> Good datagram received!
 54.7915 -14/06/2006 12:50:08.880  000>> Initiator:No more requested bundles
 54.7916 -14/06/2006 12:50:08.880  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.7917 -14/06/2006 12:50:09.060  000>> 91>>>>>>>>>>Part datagram received!
 54.7918 -14/06/2006 12:50:09.060  000>> 91>>>>>>>>>>Complete!
 54.7919 -14/06/2006 12:50:09.060  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30894
 54.7920 -14/06/2006 12:50:09.060  000>> Good datagram received!
 54.7921 -14/06/2006 12:50:09.060  000>> Receive Hello:SYN
 54.7922 -14/06/2006 12:50:09.060  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30467
 54.7923 -14/06/2006 12:50:09.080  000>> 91>>>>>>>>>>Part datagram received!
 54.7924 -14/06/2006 12:50:09.080  000>> 91>>>>>>>>>>Complete!
 54.7925 -14/06/2006 12:50:09.080  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30895
 54.7926 -14/06/2006 12:50:09.080  000>> Good datagram received!
 54.7927 -14/06/2006 12:50:09.080  000>> Receive Hello:ACK
 54.7928 -14/06/2006 12:50:09.180  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7929 -14/06/2006 12:50:09.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30468
 54.7930 -14/06/2006 12:50:09.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30469
 54.7931 -14/06/2006 12:50:09.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30470
 54.7932 -14/06/2006 12:50:09.180  000>> 98>>>>>>>>>>Part datagram received!
 54.7933 -14/06/2006 12:50:09.180  000>> 98>>>>>>>>>>Complete!
 54.7934 -14/06/2006 12:50:09.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30896
 54.7935 -14/06/2006 12:50:09.180  000>> Good datagram received!
 54.7936 -14/06/2006 12:50:09.180  000>> Listener:Received dictionary
 54.7937 -14/06/2006 12:50:09.190  000>> 90>>>>>>>>>>Part datagram received!
 54.7938 -14/06/2006 12:50:09.190  000>> 90>>>>>>>>>>Complete!
 54.7939 -14/06/2006 12:50:09.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30897
 54.7940 -14/06/2006 12:50:09.190  000>> Good datagram received!
 54.7941 -14/06/2006 12:50:09.190  000>> Listener:Received RIB
 54.7942 -14/06/2006 12:50:09.190  000>> 0>>>>>>>>>>Part datagram received!
 54.7943 -14/06/2006 12:50:09.190  000>> 0>>>>>>>>>>Part datagram received!
 54.7944 -14/06/2006 12:50:09.190  000>> 638>>>>>>>>>>Part datagram received!
 54.7945 -14/06/2006 12:50:09.190  000>> 638>>>>>>>>>>Complete!
 54.7946 -14/06/2006 12:50:09.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30898
 54.7947 -14/06/2006 12:50:09.190  000>> Good datagram received!
 54.7948 -14/06/2006 12:50:09.210  000>> Listener:Received Bundle Offer
 54.7949 -14/06/2006 12:50:09.210  000>> Listener:Sending Empty bundle request...
 54.7950 -14/06/2006 12:50:09.210  000>> Listener(receiveBOffer):But we can not restart connection...
 54.7951 -14/06/2006 12:50:09.210  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30471
 54.7952 -14/06/2006 12:50:09.290  000>> 78>>>>>>>>>>Part datagram received!
 54.7953 -14/06/2006 12:50:09.290  000>> 78>>>>>>>>>>Complete!
 54.7954 -14/06/2006 12:50:09.290  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30899
 54.7955 -14/06/2006 12:50:09.290  000>> Good datagram received!
 54.7956 -14/06/2006 12:50:09.290  000>> Initiator:No more requested bundles
 54.7957 -14/06/2006 12:50:09.290  000>> Listener(receiveBundles):We can restart connection...
 54.7958 -14/06/2006 12:50:09.391  000>> Hello Procedure:SENDSYN
 54.7959 -14/06/2006 12:50:09.391  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30472
 54.7960 -14/06/2006 12:50:09.411  000>> 91>>>>>>>>>>Part datagram received!
 54.7961 -14/06/2006 12:50:09.411  000>> 91>>>>>>>>>>Complete!
 54.7962 -14/06/2006 12:50:09.411  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30900
 54.7963 -14/06/2006 12:50:09.411  000>> Good datagram received!
 54.7964 -14/06/2006 12:50:09.411  000>> Receive Hello:SYNACK
 54.7965 -14/06/2006 12:50:09.411  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30473
 54.7966 -14/06/2006 12:50:09.511  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.7967 -14/06/2006 12:50:09.511  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30474
 54.7968 -14/06/2006 12:50:09.511  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30475
 54.7969 -14/06/2006 12:50:09.511  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30476
 54.7970 -14/06/2006 12:50:09.601  000>> 78>>>>>>>>>>Part datagram received!
 54.7971 -14/06/2006 12:50:09.601  000>> 78>>>>>>>>>>Complete!
 54.7972 -14/06/2006 12:50:09.601  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30901
 54.7973 -14/06/2006 12:50:09.601  000>> Good datagram received!
 54.7974 -14/06/2006 12:50:09.611  000>> Initiator:No more requested bundles
 54.7975 -14/06/2006 12:50:09.611  000>> Initiator:But we can not restart connection...
 54.7976 -14/06/2006 12:50:09.761  000>> 826>>>>>>>>>>Part datagram received!
 54.7977 -14/06/2006 12:50:09.761  000>> 826>>>>>>>>>>Complete!
 54.7978 -14/06/2006 12:50:09.761  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30902
 54.7979 -14/06/2006 12:50:09.761  000>> Good datagram received!
 54.7980 -14/06/2006 12:50:09.761  000>> Listener:Received dictionary
 54.7981 -14/06/2006 12:50:09.761  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30903
 54.7982 -14/06/2006 12:50:09.761  000>> Good datagram received!
 54.7983 -14/06/2006 12:50:09.761  000>> Listener:Received RIB
 54.7984 -14/06/2006 12:50:09.761  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30904
 54.7985 -14/06/2006 12:50:09.761  000>> Good datagram received!
 54.7986 -14/06/2006 12:50:09.781  000>> Listener:Received Bundle Offer
 54.7987 -14/06/2006 12:50:09.781  000>> Listener:Sending Empty bundle request...
 54.7988 -14/06/2006 12:50:09.781  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.7989 -14/06/2006 12:50:09.781  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30477
 54.7990 -14/06/2006 12:50:09.911  000>> 91>>>>>>>>>>Part datagram received!
 54.7991 -14/06/2006 12:50:09.911  000>> 91>>>>>>>>>>Complete!
 54.7992 -14/06/2006 12:50:09.911  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30905
 54.7993 -14/06/2006 12:50:09.911  000>> Good datagram received!
 54.7994 -14/06/2006 12:50:09.911  000>> Receive Hello:SYN
 54.7995 -14/06/2006 12:50:09.911  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30478
 54.7996 -14/06/2006 12:50:09.941  000>> 91>>>>>>>>>>Part datagram received!
 54.7997 -14/06/2006 12:50:09.941  000>> 91>>>>>>>>>>Complete!
 54.7998 -14/06/2006 12:50:09.941  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30906
 54.7999 -14/06/2006 12:50:09.941  000>> Good datagram received!
 54.8000 -14/06/2006 12:50:09.941  000>> Receive Hello:ACK
 54.8001 -14/06/2006 12:50:10.041  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8002 -14/06/2006 12:50:10.041  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30479
 54.8003 -14/06/2006 12:50:10.041  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30480
 54.8004 -14/06/2006 12:50:10.041  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30481
 54.8005 -14/06/2006 12:50:10.071  000>> 98>>>>>>>>>>Part datagram received!
 54.8006 -14/06/2006 12:50:10.071  000>> 98>>>>>>>>>>Complete!
 54.8007 -14/06/2006 12:50:10.071  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30907
 54.8008 -14/06/2006 12:50:10.071  000>> Good datagram received!
 54.8009 -14/06/2006 12:50:10.071  000>> Listener:Received dictionary
 54.8010 -14/06/2006 12:50:10.082  000>> 90>>>>>>>>>>Part datagram received!
 54.8011 -14/06/2006 12:50:10.082  000>> 90>>>>>>>>>>Complete!
 54.8012 -14/06/2006 12:50:10.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30908
 54.8013 -14/06/2006 12:50:10.082  000>> Good datagram received!
 54.8014 -14/06/2006 12:50:10.092  000>> Listener:Received RIB
 54.8015 -14/06/2006 12:50:10.262  000>> 716>>>>>>>>>>Part datagram received!
 54.8016 -14/06/2006 12:50:10.262  000>> 716>>>>>>>>>>Complete!
 54.8017 -14/06/2006 12:50:10.262  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30909
 54.8018 -14/06/2006 12:50:10.262  000>> Good datagram received!
 54.8019 -14/06/2006 12:50:10.272  000>> Listener:Received Bundle Offer
 54.8020 -14/06/2006 12:50:10.272  000>> Listener:Sending Empty bundle request...
 54.8021 -14/06/2006 12:50:10.282  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8022 -14/06/2006 12:50:10.282  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30482
 54.8023 -14/06/2006 12:50:10.282  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30910
 54.8024 -14/06/2006 12:50:10.282  000>> Good datagram received!
 54.8025 -14/06/2006 12:50:10.282  000>> Initiator:No more requested bundles
 54.8026 -14/06/2006 12:50:10.282  000>> Listener(receiveBundles):We can restart connection...
 54.8027 -14/06/2006 12:50:10.382  000>> Hello Procedure:SENDSYN
 54.8028 -14/06/2006 12:50:10.382  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30483
 54.8029 -14/06/2006 12:50:10.452  000>> 91>>>>>>>>>>Part datagram received!
 54.8030 -14/06/2006 12:50:10.452  000>> 91>>>>>>>>>>Complete!
 54.8031 -14/06/2006 12:50:10.452  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30911
 54.8032 -14/06/2006 12:50:10.452  000>> Good datagram received!
 54.8033 -14/06/2006 12:50:10.452  000>> Receive Hello:SYNACK
 54.8034 -14/06/2006 12:50:10.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30484
 54.8035 -14/06/2006 12:50:10.562  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8036 -14/06/2006 12:50:10.562  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30485
 54.8037 -14/06/2006 12:50:10.562  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30486
 54.8038 -14/06/2006 12:50:10.562  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30487
 54.8039 -14/06/2006 12:50:10.612  000>> 98>>>>>>>>>>Part datagram received!
 54.8040 -14/06/2006 12:50:10.622  000>> 98>>>>>>>>>>Complete!
 54.8041 -14/06/2006 12:50:10.622  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30912
 54.8042 -14/06/2006 12:50:10.622  000>> Good datagram received!
 54.8043 -14/06/2006 12:50:10.622  000>> Listener:Received dictionary
 54.8044 -14/06/2006 12:50:10.622  000>> 90>>>>>>>>>>Part datagram received!
 54.8045 -14/06/2006 12:50:10.622  000>> 90>>>>>>>>>>Complete!
 54.8046 -14/06/2006 12:50:10.622  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30913
 54.8047 -14/06/2006 12:50:10.622  000>> Good datagram received!
 54.8048 -14/06/2006 12:50:10.622  000>> Listener:Received RIB
 54.8049 -14/06/2006 12:50:10.762  000>> 716>>>>>>>>>>Part datagram received!
 54.8050 -14/06/2006 12:50:10.762  000>> 716>>>>>>>>>>Complete!
 54.8051 -14/06/2006 12:50:10.762  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30914
 54.8052 -14/06/2006 12:50:10.762  000>> Good datagram received!
 54.8053 -14/06/2006 12:50:10.783  000>> Listener:Received Bundle Offer
 54.8054 -14/06/2006 12:50:10.783  000>> Listener:Sending Empty bundle request...
 54.8055 -14/06/2006 12:50:10.783  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8056 -14/06/2006 12:50:10.783  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30488
 54.8057 -14/06/2006 12:50:10.783  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30915
 54.8058 -14/06/2006 12:50:10.783  000>> Good datagram received!
 54.8059 -14/06/2006 12:50:10.783  000>> Initiator:No more requested bundles
 54.8060 -14/06/2006 12:50:10.783  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.8061 -14/06/2006 12:50:10.933  000>> 91>>>>>>>>>>Part datagram received!
 54.8062 -14/06/2006 12:50:10.933  000>> 91>>>>>>>>>>Complete!
 54.8063 -14/06/2006 12:50:10.933  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30916
 54.8064 -14/06/2006 12:50:10.933  000>> Good datagram received!
 54.8065 -14/06/2006 12:50:10.933  000>> Receive Hello:SYN
 54.8066 -14/06/2006 12:50:10.933  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30489
 54.8067 -14/06/2006 12:50:10.953  000>> 91>>>>>>>>>>Part datagram received!
 54.8068 -14/06/2006 12:50:10.963  000>> 91>>>>>>>>>>Complete!
 54.8069 -14/06/2006 12:50:10.963  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30917
 54.8070 -14/06/2006 12:50:10.963  000>> Good datagram received!
 54.8071 -14/06/2006 12:50:10.963  000>> Receive Hello:ACK
 54.8072 -14/06/2006 12:50:11.063  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8073 -14/06/2006 12:50:11.063  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30490
 54.8074 -14/06/2006 12:50:11.063  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30491
 54.8075 -14/06/2006 12:50:11.063  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30492
 54.8076 -14/06/2006 12:50:11.063  000>> 98>>>>>>>>>>Part datagram received!
 54.8077 -14/06/2006 12:50:11.063  000>> 98>>>>>>>>>>Complete!
 54.8078 -14/06/2006 12:50:11.063  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30918
 54.8079 -14/06/2006 12:50:11.063  000>> Good datagram received!
 54.8080 -14/06/2006 12:50:11.073  000>> Listener:Received dictionary
 54.8081 -14/06/2006 12:50:11.073  000>> 90>>>>>>>>>>Part datagram received!
 54.8082 -14/06/2006 12:50:11.073  000>> 90>>>>>>>>>>Complete!
 54.8083 -14/06/2006 12:50:11.073  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30919
 54.8084 -14/06/2006 12:50:11.073  000>> Good datagram received!
 54.8085 -14/06/2006 12:50:11.073  000>> Listener:Received RIB
 54.8086 -14/06/2006 12:50:11.263  000>> 716>>>>>>>>>>Part datagram received!
 54.8087 -14/06/2006 12:50:11.263  000>> 716>>>>>>>>>>Complete!
 54.8088 -14/06/2006 12:50:11.263  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30920
 54.8089 -14/06/2006 12:50:11.263  000>> Good datagram received!
 54.8090 -14/06/2006 12:50:11.283  000>> Listener:Received Bundle Offer
 54.8091 -14/06/2006 12:50:11.283  000>> Listener:Sending Empty bundle request...
 54.8092 -14/06/2006 12:50:11.283  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8093 -14/06/2006 12:50:11.283  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30493
 54.8094 -14/06/2006 12:50:11.283  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30921
 54.8095 -14/06/2006 12:50:11.283  000>> Good datagram received!
 54.8096 -14/06/2006 12:50:11.283  000>> Initiator:No more requested bundles
 54.8097 -14/06/2006 12:50:11.283  000>> Listener(receiveBundles):We can restart connection...
 54.8098 -14/06/2006 12:50:11.383  000>> Hello Procedure:SENDSYN
 54.8099 -14/06/2006 12:50:11.383  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30494
 54.8100 -14/06/2006 12:50:11.453  000>> 91>>>>>>>>>>Part datagram received!
 54.8101 -14/06/2006 12:50:11.453  000>> 91>>>>>>>>>>Complete!
 54.8102 -14/06/2006 12:50:11.453  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30922
 54.8103 -14/06/2006 12:50:11.453  000>> Good datagram received!
 54.8104 -14/06/2006 12:50:11.463  000>> Receive Hello:SYNACK
 54.8105 -14/06/2006 12:50:11.463  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30495
 54.8106 -14/06/2006 12:50:11.564  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8107 -14/06/2006 12:50:11.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30496
 54.8108 -14/06/2006 12:50:11.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30497
 54.8109 -14/06/2006 12:50:11.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30498
 54.8110 -14/06/2006 12:50:11.584  000>> 98>>>>>>>>>>Part datagram received!
 54.8111 -14/06/2006 12:50:11.584  000>> 98>>>>>>>>>>Complete!
 54.8112 -14/06/2006 12:50:11.584  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30923
 54.8113 -14/06/2006 12:50:11.584  000>> Good datagram received!
 54.8114 -14/06/2006 12:50:11.584  000>> Listener:Received dictionary
 54.8115 -14/06/2006 12:50:11.604  000>> 728>>>>>>>>>>Part datagram received!
 54.8116 -14/06/2006 12:50:11.604  000>> 728>>>>>>>>>>Complete!
 54.8117 -14/06/2006 12:50:11.604  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30924
 54.8118 -14/06/2006 12:50:11.604  000>> Good datagram received!
 54.8119 -14/06/2006 12:50:11.614  000>> Listener:Received RIB
 54.8120 -14/06/2006 12:50:11.614  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30925
 54.8121 -14/06/2006 12:50:11.614  000>> Good datagram received!
 54.8122 -14/06/2006 12:50:11.624  000>> Listener:Received Bundle Offer
 54.8123 -14/06/2006 12:50:11.624  000>> Listener:Sending Empty bundle request...
 54.8124 -14/06/2006 12:50:11.624  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8125 -14/06/2006 12:50:11.624  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30499
 54.8126 -14/06/2006 12:50:11.704  000>> 78>>>>>>>>>>Part datagram received!
 54.8127 -14/06/2006 12:50:11.704  000>> 78>>>>>>>>>>Complete!
 54.8128 -14/06/2006 12:50:11.704  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30926
 54.8129 -14/06/2006 12:50:11.704  000>> Good datagram received!
 54.8130 -14/06/2006 12:50:11.704  000>> Initiator:No more requested bundles
 54.8131 -14/06/2006 12:50:11.714  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.8132 -14/06/2006 12:50:11.864  000>> 91>>>>>>>>>>Part datagram received!
 54.8133 -14/06/2006 12:50:11.864  000>> 91>>>>>>>>>>Complete!
 54.8134 -14/06/2006 12:50:11.864  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30927
 54.8135 -14/06/2006 12:50:11.864  000>> Good datagram received!
 54.8136 -14/06/2006 12:50:11.864  000>> Receive Hello:SYN
 54.8137 -14/06/2006 12:50:11.864  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30500
 54.8138 -14/06/2006 12:50:11.894  000>> 91>>>>>>>>>>Part datagram received!
 54.8139 -14/06/2006 12:50:11.894  000>> 91>>>>>>>>>>Complete!
 54.8140 -14/06/2006 12:50:11.894  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30928
 54.8141 -14/06/2006 12:50:11.894  000>> Good datagram received!
 54.8142 -14/06/2006 12:50:11.894  000>> Receive Hello:ACK
 54.8143 -14/06/2006 12:50:11.994  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8144 -14/06/2006 12:50:11.994  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30501
 54.8145 -14/06/2006 12:50:11.994  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30502
 54.8146 -14/06/2006 12:50:11.994  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30503
 54.8147 -14/06/2006 12:50:12.074  000>> 98>>>>>>>>>>Part datagram received!
 54.8148 -14/06/2006 12:50:12.074  000>> 98>>>>>>>>>>Complete!
 54.8149 -14/06/2006 12:50:12.074  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30929
 54.8150 -14/06/2006 12:50:12.074  000>> Good datagram received!
 54.8151 -14/06/2006 12:50:12.074  000>> Listener:Received dictionary
 54.8152 -14/06/2006 12:50:12.074  000>> 90>>>>>>>>>>Part datagram received!
 54.8153 -14/06/2006 12:50:12.074  000>> 90>>>>>>>>>>Complete!
 54.8154 -14/06/2006 12:50:12.084  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30930
 54.8155 -14/06/2006 12:50:12.084  000>> Good datagram received!
 54.8156 -14/06/2006 12:50:12.084  000>> Listener:Received RIB
 54.8157 -14/06/2006 12:50:12.265  000>> 716>>>>>>>>>>Part datagram received!
 54.8158 -14/06/2006 12:50:12.265  000>> 716>>>>>>>>>>Complete!
 54.8159 -14/06/2006 12:50:12.265  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30931
 54.8160 -14/06/2006 12:50:12.265  000>> Good datagram received!
 54.8161 -14/06/2006 12:50:12.285  000>> Listener:Received Bundle Offer
 54.8162 -14/06/2006 12:50:12.285  000>> Listener:Sending Empty bundle request...
 54.8163 -14/06/2006 12:50:12.285  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8164 -14/06/2006 12:50:12.285  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30504
 54.8165 -14/06/2006 12:50:12.285  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30932
 54.8166 -14/06/2006 12:50:12.285  000>> Good datagram received!
 54.8167 -14/06/2006 12:50:12.285  000>> Initiator:No more requested bundles
 54.8168 -14/06/2006 12:50:12.285  000>> Listener(receiveBundles):We can restart connection...
 54.8169 -14/06/2006 12:50:12.385  000>> Hello Procedure:SENDSYN
 54.8170 -14/06/2006 12:50:12.385  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30505
 54.8171 -14/06/2006 12:50:12.455  000>> 91>>>>>>>>>>Part datagram received!
 54.8172 -14/06/2006 12:50:12.455  000>> 91>>>>>>>>>>Complete!
 54.8173 -14/06/2006 12:50:12.465  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30933
 54.8174 -14/06/2006 12:50:12.465  000>> Good datagram received!
 54.8175 -14/06/2006 12:50:12.465  000>> Receive Hello:SYNACK
 54.8176 -14/06/2006 12:50:12.465  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30506
 54.8177 -14/06/2006 12:50:12.565  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8178 -14/06/2006 12:50:12.565  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30507
 54.8179 -14/06/2006 12:50:12.565  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30508
 54.8180 -14/06/2006 12:50:12.565  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30509
 54.8181 -14/06/2006 12:50:12.585  000>> 98>>>>>>>>>>Part datagram received!
 54.8182 -14/06/2006 12:50:12.585  000>> 98>>>>>>>>>>Complete!
 54.8183 -14/06/2006 12:50:12.585  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30934
 54.8184 -14/06/2006 12:50:12.585  000>> Good datagram received!
 54.8185 -14/06/2006 12:50:12.585  000>> Listener:Received dictionary
 54.8186 -14/06/2006 12:50:12.595  000>> 90>>>>>>>>>>Part datagram received!
 54.8187 -14/06/2006 12:50:12.595  000>> 90>>>>>>>>>>Complete!
 54.8188 -14/06/2006 12:50:12.595  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30935
 54.8189 -14/06/2006 12:50:12.595  000>> Good datagram received!
 54.8190 -14/06/2006 12:50:12.595  000>> Listener:Received RIB
 54.8191 -14/06/2006 12:50:12.765  000>> 716>>>>>>>>>>Part datagram received!
 54.8192 -14/06/2006 12:50:12.765  000>> 716>>>>>>>>>>Complete!
 54.8193 -14/06/2006 12:50:12.765  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30936
 54.8194 -14/06/2006 12:50:12.765  000>> Good datagram received!
 54.8195 -14/06/2006 12:50:12.785  000>> Listener:Received Bundle Offer
 54.8196 -14/06/2006 12:50:12.785  000>> Listener:Sending Empty bundle request...
 54.8197 -14/06/2006 12:50:12.785  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8198 -14/06/2006 12:50:12.785  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30510
 54.8199 -14/06/2006 12:50:12.785  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30937
 54.8200 -14/06/2006 12:50:12.785  000>> Good datagram received!
 54.8201 -14/06/2006 12:50:12.785  000>> Initiator:No more requested bundles
 54.8202 -14/06/2006 12:50:12.785  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.8203 -14/06/2006 12:50:12.906  000>> 91>>>>>>>>>>Part datagram received!
 54.8204 -14/06/2006 12:50:12.906  000>> 91>>>>>>>>>>Complete!
 54.8205 -14/06/2006 12:50:12.906  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30938
 54.8206 -14/06/2006 12:50:12.906  000>> Good datagram received!
 54.8207 -14/06/2006 12:50:12.906  000>> Receive Hello:SYN
 54.8208 -14/06/2006 12:50:12.906  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30511
 54.8209 -14/06/2006 12:50:12.936  000>> 91>>>>>>>>>>Part datagram received!
 54.8210 -14/06/2006 12:50:12.936  000>> 91>>>>>>>>>>Complete!
 54.8211 -14/06/2006 12:50:12.936  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30939
 54.8212 -14/06/2006 12:50:12.936  000>> Good datagram received!
 54.8213 -14/06/2006 12:50:12.936  000>> Receive Hello:ACK
 54.8214 -14/06/2006 12:50:13.036  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8215 -14/06/2006 12:50:13.036  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30512
 54.8216 -14/06/2006 12:50:13.036  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30513
 54.8217 -14/06/2006 12:50:13.046  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30514
 54.8218 -14/06/2006 12:50:13.086  000>> 98>>>>>>>>>>Part datagram received!
 54.8219 -14/06/2006 12:50:13.086  000>> 98>>>>>>>>>>Complete!
 54.8220 -14/06/2006 12:50:13.086  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30940
 54.8221 -14/06/2006 12:50:13.086  000>> Good datagram received!
 54.8222 -14/06/2006 12:50:13.086  000>> Listener:Received dictionary
 54.8223 -14/06/2006 12:50:13.086  000>> 90>>>>>>>>>>Part datagram received!
 54.8224 -14/06/2006 12:50:13.086  000>> 90>>>>>>>>>>Complete!
 54.8225 -14/06/2006 12:50:13.086  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30941
 54.8226 -14/06/2006 12:50:13.096  000>> Good datagram received!
 54.8227 -14/06/2006 12:50:13.096  000>> Listener:Received RIB
 54.8228 -14/06/2006 12:50:13.266  000>> 716>>>>>>>>>>Part datagram received!
 54.8229 -14/06/2006 12:50:13.266  000>> 716>>>>>>>>>>Complete!
 54.8230 -14/06/2006 12:50:13.266  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30942
 54.8231 -14/06/2006 12:50:13.266  000>> Good datagram received!
 54.8232 -14/06/2006 12:50:13.286  000>> Listener:Received Bundle Offer
 54.8233 -14/06/2006 12:50:13.286  000>> Listener:Sending Empty bundle request...
 54.8234 -14/06/2006 12:50:13.286  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8235 -14/06/2006 12:50:13.286  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30515
 54.8236 -14/06/2006 12:50:13.286  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30943
 54.8237 -14/06/2006 12:50:13.286  000>> Good datagram received!
 54.8238 -14/06/2006 12:50:13.286  000>> Initiator:No more requested bundles
 54.8239 -14/06/2006 12:50:13.286  000>> Listener(receiveBundles):We can restart connection...
 54.8240 -14/06/2006 12:50:13.386  000>> Hello Procedure:SENDSYN
 54.8241 -14/06/2006 12:50:13.386  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30516
 54.8242 -14/06/2006 12:50:13.476  000>> 91>>>>>>>>>>Part datagram received!
 54.8243 -14/06/2006 12:50:13.476  000>> 91>>>>>>>>>>Complete!
 54.8244 -14/06/2006 12:50:13.476  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30944
 54.8245 -14/06/2006 12:50:13.476  000>> Good datagram received!
 54.8246 -14/06/2006 12:50:13.476  000>> Receive Hello:SYNACK
 54.8247 -14/06/2006 12:50:13.476  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30517
 54.8248 -14/06/2006 12:50:13.577  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8249 -14/06/2006 12:50:13.577  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30518
 54.8250 -14/06/2006 12:50:13.577  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30519
 54.8251 -14/06/2006 12:50:13.577  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30520
 54.8252 -14/06/2006 12:50:13.617  000>> 98>>>>>>>>>>Part datagram received!
 54.8253 -14/06/2006 12:50:13.617  000>> 98>>>>>>>>>>Complete!
 54.8254 -14/06/2006 12:50:13.617  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30945
 54.8255 -14/06/2006 12:50:13.617  000>> Good datagram received!
 54.8256 -14/06/2006 12:50:13.617  000>> Listener:Received dictionary
 54.8257 -14/06/2006 12:50:13.627  000>> 90>>>>>>>>>>Part datagram received!
 54.8258 -14/06/2006 12:50:13.627  000>> 90>>>>>>>>>>Complete!
 54.8259 -14/06/2006 12:50:13.627  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30946
 54.8260 -14/06/2006 12:50:13.627  000>> Good datagram received!
 54.8261 -14/06/2006 12:50:13.627  000>> Listener:Received RIB
 54.8262 -14/06/2006 12:50:13.767  000>> 716>>>>>>>>>>Part datagram received!
 54.8263 -14/06/2006 12:50:13.777  000>> 716>>>>>>>>>>Complete!
 54.8264 -14/06/2006 12:50:13.777  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30947
 54.8265 -14/06/2006 12:50:13.777  000>> Good datagram received!
 54.8266 -14/06/2006 12:50:13.787  000>> Listener:Received Bundle Offer
 54.8267 -14/06/2006 12:50:13.787  000>> Listener:Sending Empty bundle request...
 54.8268 -14/06/2006 12:50:13.787  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8269 -14/06/2006 12:50:13.787  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30521
 54.8270 -14/06/2006 12:50:13.787  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30948
 54.8271 -14/06/2006 12:50:13.797  000>> Good datagram received!
 54.8272 -14/06/2006 12:50:13.797  000>> Initiator:No more requested bundles
 54.8273 -14/06/2006 12:50:13.797  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.8274 -14/06/2006 12:50:13.917  000>> 91>>>>>>>>>>Part datagram received!
 54.8275 -14/06/2006 12:50:13.917  000>> 91>>>>>>>>>>Complete!
 54.8276 -14/06/2006 12:50:13.917  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30949
 54.8277 -14/06/2006 12:50:13.917  000>> Good datagram received!
 54.8278 -14/06/2006 12:50:13.917  000>> Receive Hello:SYN
 54.8279 -14/06/2006 12:50:13.917  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30522
 54.8280 -14/06/2006 12:50:13.957  000>> 91>>>>>>>>>>Part datagram received!
 54.8281 -14/06/2006 12:50:13.957  000>> 91>>>>>>>>>>Complete!
 54.8282 -14/06/2006 12:50:13.957  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30950
 54.8283 -14/06/2006 12:50:13.957  000>> Good datagram received!
 54.8284 -14/06/2006 12:50:13.957  000>> Receive Hello:ACK
 54.8285 -14/06/2006 12:50:14.057  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8286 -14/06/2006 12:50:14.057  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30523
 54.8287 -14/06/2006 12:50:14.057  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30524
 54.8288 -14/06/2006 12:50:14.057  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30525
 54.8289 -14/06/2006 12:50:14.087  000>> 98>>>>>>>>>>Part datagram received!
 54.8290 -14/06/2006 12:50:14.087  000>> 98>>>>>>>>>>Complete!
 54.8291 -14/06/2006 12:50:14.087  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30951
 54.8292 -14/06/2006 12:50:14.087  000>> Good datagram received!
 54.8293 -14/06/2006 12:50:14.087  000>> Listener:Received dictionary
 54.8294 -14/06/2006 12:50:14.097  000>> 90>>>>>>>>>>Part datagram received!
 54.8295 -14/06/2006 12:50:14.097  000>> 90>>>>>>>>>>Complete!
 54.8296 -14/06/2006 12:50:14.097  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30952
 54.8297 -14/06/2006 12:50:14.097  000>> Good datagram received!
 54.8298 -14/06/2006 12:50:14.097  000>> Listener:Received RIB
 54.8299 -14/06/2006 12:50:14.268  000>> 716>>>>>>>>>>Part datagram received!
 54.8300 -14/06/2006 12:50:14.278  000>> 716>>>>>>>>>>Complete!
 54.8301 -14/06/2006 12:50:14.278  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30953
 54.8302 -14/06/2006 12:50:14.278  000>> Good datagram received!
 54.8303 -14/06/2006 12:50:14.288  000>> Listener:Received Bundle Offer
 54.8304 -14/06/2006 12:50:14.288  000>> Listener:Sending Empty bundle request...
 54.8305 -14/06/2006 12:50:14.288  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8306 -14/06/2006 12:50:14.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30526
 54.8307 -14/06/2006 12:50:14.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30954
 54.8308 -14/06/2006 12:50:14.298  000>> Good datagram received!
 54.8309 -14/06/2006 12:50:14.298  000>> Initiator:No more requested bundles
 54.8310 -14/06/2006 12:50:14.298  000>> Listener(receiveBundles):We can restart connection...
 54.8311 -14/06/2006 12:50:14.398  000>> Hello Procedure:SENDSYN
 54.8312 -14/06/2006 12:50:14.398  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30527
 54.8313 -14/06/2006 12:50:14.458  000>> 91>>>>>>>>>>Part datagram received!
 54.8314 -14/06/2006 12:50:14.458  000>> 91>>>>>>>>>>Complete!
 54.8315 -14/06/2006 12:50:14.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30955
 54.8316 -14/06/2006 12:50:14.468  000>> Good datagram received!
 54.8317 -14/06/2006 12:50:14.468  000>> Receive Hello:SYNACK
 54.8318 -14/06/2006 12:50:14.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30528
 54.8319 -14/06/2006 12:50:14.568  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8320 -14/06/2006 12:50:14.568  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30529
 54.8321 -14/06/2006 12:50:14.568  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30530
 54.8322 -14/06/2006 12:50:14.568  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30531
 54.8323 -14/06/2006 12:50:14.588  000>> 98>>>>>>>>>>Part datagram received!
 54.8324 -14/06/2006 12:50:14.588  000>> 98>>>>>>>>>>Complete!
 54.8325 -14/06/2006 12:50:14.588  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30956
 54.8326 -14/06/2006 12:50:14.588  000>> Good datagram received!
 54.8327 -14/06/2006 12:50:14.588  000>> Listener:Received dictionary
 54.8328 -14/06/2006 12:50:14.598  000>> 90>>>>>>>>>>Part datagram received!
 54.8329 -14/06/2006 12:50:14.598  000>> 90>>>>>>>>>>Complete!
 54.8330 -14/06/2006 12:50:14.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30957
 54.8331 -14/06/2006 12:50:14.598  000>> Good datagram received!
 54.8332 -14/06/2006 12:50:14.598  000>> Listener:Received RIB
 54.8333 -14/06/2006 12:50:14.778  000>> 716>>>>>>>>>>Part datagram received!
 54.8334 -14/06/2006 12:50:14.778  000>> 716>>>>>>>>>>Complete!
 54.8335 -14/06/2006 12:50:14.778  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30958
 54.8336 -14/06/2006 12:50:14.778  000>> Good datagram received!
 54.8337 -14/06/2006 12:50:14.788  000>> Listener:Received Bundle Offer
 54.8338 -14/06/2006 12:50:14.788  000>> Listener:Sending Empty bundle request...
 54.8339 -14/06/2006 12:50:14.788  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8340 -14/06/2006 12:50:14.788  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30532
 54.8341 -14/06/2006 12:50:14.798  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30959
 54.8342 -14/06/2006 12:50:14.798  000>> Good datagram received!
 54.8343 -14/06/2006 12:50:14.798  000>> Initiator:No more requested bundles
 54.8344 -14/06/2006 12:50:14.798  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.8345 -14/06/2006 12:50:14.918  000>> 91>>>>>>>>>>Part datagram received!
 54.8346 -14/06/2006 12:50:14.918  000>> 91>>>>>>>>>>Complete!
 54.8347 -14/06/2006 12:50:14.918  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30960
 54.8348 -14/06/2006 12:50:14.918  000>> Good datagram received!
 54.8349 -14/06/2006 12:50:14.918  000>> Receive Hello:SYN
 54.8350 -14/06/2006 12:50:14.918  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30533
 54.8351 -14/06/2006 12:50:14.938  000>> 91>>>>>>>>>>Part datagram received!
 54.8352 -14/06/2006 12:50:14.938  000>> 91>>>>>>>>>>Complete!
 54.8353 -14/06/2006 12:50:14.938  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30961
 54.8354 -14/06/2006 12:50:14.938  000>> Good datagram received!
 54.8355 -14/06/2006 12:50:14.949  000>> Receive Hello:ACK
 54.8356 -14/06/2006 12:50:15.049  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8357 -14/06/2006 12:50:15.049  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30534
 54.8358 -14/06/2006 12:50:15.049  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30535
 54.8359 -14/06/2006 12:50:15.049  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30536
 54.8360 -14/06/2006 12:50:15.069  000>> 98>>>>>>>>>>Part datagram received!
 54.8361 -14/06/2006 12:50:15.069  000>> 98>>>>>>>>>>Complete!
 54.8362 -14/06/2006 12:50:15.069  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30962
 54.8363 -14/06/2006 12:50:15.069  000>> Good datagram received!
 54.8364 -14/06/2006 12:50:15.069  000>> Listener:Received dictionary
 54.8365 -14/06/2006 12:50:15.079  000>> 90>>>>>>>>>>Part datagram received!
 54.8366 -14/06/2006 12:50:15.079  000>> 90>>>>>>>>>>Complete!
 54.8367 -14/06/2006 12:50:15.079  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30963
 54.8368 -14/06/2006 12:50:15.079  000>> Good datagram received!
 54.8369 -14/06/2006 12:50:15.079  000>> Listener:Received RIB
 54.8370 -14/06/2006 12:50:15.279  000>> 716>>>>>>>>>>Part datagram received!
 54.8371 -14/06/2006 12:50:15.279  000>> 716>>>>>>>>>>Complete!
 54.8372 -14/06/2006 12:50:15.279  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30964
 54.8373 -14/06/2006 12:50:15.279  000>> Good datagram received!
 54.8374 -14/06/2006 12:50:15.289  000>> Listener:Received Bundle Offer
 54.8375 -14/06/2006 12:50:15.289  000>> Listener:Sending Empty bundle request...
 54.8376 -14/06/2006 12:50:15.289  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8377 -14/06/2006 12:50:15.299  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30537
 54.8378 -14/06/2006 12:50:15.299  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30965
 54.8379 -14/06/2006 12:50:15.299  000>> Good datagram received!
 54.8380 -14/06/2006 12:50:15.299  000>> Initiator:No more requested bundles
 54.8381 -14/06/2006 12:50:15.299  000>> Listener(receiveBundles):We can restart connection...
 54.8382 -14/06/2006 12:50:15.399  000>> Hello Procedure:SENDSYN
 54.8383 -14/06/2006 12:50:15.399  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30538
 54.8384 -14/06/2006 12:50:15.459  000>> 91>>>>>>>>>>Part datagram received!
 54.8385 -14/06/2006 12:50:15.459  000>> 91>>>>>>>>>>Complete!
 54.8386 -14/06/2006 12:50:15.459  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30966
 54.8387 -14/06/2006 12:50:15.459  000>> Good datagram received!
 54.8388 -14/06/2006 12:50:15.459  000>> Receive Hello:SYNACK
 54.8389 -14/06/2006 12:50:15.459  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30539
 54.8390 -14/06/2006 12:50:15.559  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8391 -14/06/2006 12:50:15.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30540
 54.8392 -14/06/2006 12:50:15.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30541
 54.8393 -14/06/2006 12:50:15.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30542
 54.8394 -14/06/2006 12:50:15.589  000>> 98>>>>>>>>>>Part datagram received!
 54.8395 -14/06/2006 12:50:15.589  000>> 98>>>>>>>>>>Complete!
 54.8396 -14/06/2006 12:50:15.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30967
 54.8397 -14/06/2006 12:50:15.589  000>> Good datagram received!
 54.8398 -14/06/2006 12:50:15.589  000>> Listener:Received dictionary
 54.8399 -14/06/2006 12:50:15.599  000>> 728>>>>>>>>>>Part datagram received!
 54.8400 -14/06/2006 12:50:15.599  000>> 728>>>>>>>>>>Complete!
 54.8401 -14/06/2006 12:50:15.599  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30968
 54.8402 -14/06/2006 12:50:15.599  000>> Good datagram received!
 54.8403 -14/06/2006 12:50:15.599  000>> Listener:Received RIB
 54.8404 -14/06/2006 12:50:15.609  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30969
 54.8405 -14/06/2006 12:50:15.609  000>> Good datagram received!
 54.8406 -14/06/2006 12:50:15.629  000>> Listener:Received Bundle Offer
 54.8407 -14/06/2006 12:50:15.629  000>> Listener:Sending Empty bundle request...
 54.8408 -14/06/2006 12:50:15.629  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8409 -14/06/2006 12:50:15.629  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30543
 54.8410 -14/06/2006 12:50:15.730  000>> 78>>>>>>>>>>Part datagram received!
 54.8411 -14/06/2006 12:50:15.740  000>> 78>>>>>>>>>>Complete!
 54.8412 -14/06/2006 12:50:15.740  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30970
 54.8413 -14/06/2006 12:50:15.740  000>> Good datagram received!
 54.8414 -14/06/2006 12:50:15.740  000>> Initiator:No more requested bundles
 54.8415 -14/06/2006 12:50:15.740  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.8416 -14/06/2006 12:50:15.790  000>> 91>>>>>>>>>>Part datagram received!
 54.8417 -14/06/2006 12:50:15.790  000>> 91>>>>>>>>>>Complete!
 54.8418 -14/06/2006 12:50:15.790  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30971
 54.8419 -14/06/2006 12:50:15.790  000>> Good datagram received!
 54.8420 -14/06/2006 12:50:15.790  000>> Receive Hello:SYN
 54.8421 -14/06/2006 12:50:15.790  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30544
 54.8422 -14/06/2006 12:50:15.850  000>> 91>>>>>>>>>>Part datagram received!
 54.8423 -14/06/2006 12:50:15.850  000>> 91>>>>>>>>>>Complete!
 54.8424 -14/06/2006 12:50:15.850  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30972
 54.8425 -14/06/2006 12:50:15.850  000>> Good datagram received!
 54.8426 -14/06/2006 12:50:15.850  000>> Receive Hello:ACK
 54.8427 -14/06/2006 12:50:15.950  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8428 -14/06/2006 12:50:15.950  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30545
 54.8429 -14/06/2006 12:50:15.950  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30546
 54.8430 -14/06/2006 12:50:15.950  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30547
 54.8431 -14/06/2006 12:50:15.970  000>> 98>>>>>>>>>>Part datagram received!
 54.8432 -14/06/2006 12:50:15.970  000>> 98>>>>>>>>>>Complete!
 54.8433 -14/06/2006 12:50:15.970  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30973
 54.8434 -14/06/2006 12:50:15.970  000>> Good datagram received!
 54.8435 -14/06/2006 12:50:15.970  000>> Listener:Received dictionary
 54.8436 -14/06/2006 12:50:15.970  000>> 728>>>>>>>>>>Part datagram received!
 54.8437 -14/06/2006 12:50:15.970  000>> 728>>>>>>>>>>Complete!
 54.8438 -14/06/2006 12:50:15.970  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30974
 54.8439 -14/06/2006 12:50:15.970  000>> Good datagram received!
 54.8440 -14/06/2006 12:50:15.970  000>> Listener:Received RIB
 54.8441 -14/06/2006 12:50:15.970  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30975
 54.8442 -14/06/2006 12:50:15.970  000>> Good datagram received!
 54.8443 -14/06/2006 12:50:15.980  000>> Listener:Received Bundle Offer
 54.8444 -14/06/2006 12:50:15.980  000>> Listener:Sending Empty bundle request...
 54.8445 -14/06/2006 12:50:15.980  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8446 -14/06/2006 12:50:15.980  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30548
 54.8447 -14/06/2006 12:50:16.030  000>> 78>>>>>>>>>>Part datagram received!
 54.8448 -14/06/2006 12:50:16.030  000>> 78>>>>>>>>>>Complete!
 54.8449 -14/06/2006 12:50:16.030  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30976
 54.8450 -14/06/2006 12:50:16.030  000>> Good datagram received!
 54.8451 -14/06/2006 12:50:16.030  000>> Initiator:No more requested bundles
 54.8452 -14/06/2006 12:50:16.030  000>> Listener(receiveBundles):We can restart connection...
 54.8453 -14/06/2006 12:50:16.130  000>> Hello Procedure:SENDSYN
 54.8454 -14/06/2006 12:50:16.130  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30549
 54.8455 -14/06/2006 12:50:16.160  000>> 91>>>>>>>>>>Part datagram received!
 54.8456 -14/06/2006 12:50:16.160  000>> 91>>>>>>>>>>Complete!
 54.8457 -14/06/2006 12:50:16.160  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30977
 54.8458 -14/06/2006 12:50:16.160  000>> Good datagram received!
 54.8459 -14/06/2006 12:50:16.160  000>> Receive Hello:SYNACK
 54.8460 -14/06/2006 12:50:16.160  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30550
 54.8461 -14/06/2006 12:50:16.260  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8462 -14/06/2006 12:50:16.260  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30551
 54.8463 -14/06/2006 12:50:16.260  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30552
 54.8464 -14/06/2006 12:50:16.260  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30553
 54.8465 -14/06/2006 12:50:16.280  000>> 98>>>>>>>>>>Part datagram received!
 54.8466 -14/06/2006 12:50:16.280  000>> 98>>>>>>>>>>Complete!
 54.8467 -14/06/2006 12:50:16.280  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30978
 54.8468 -14/06/2006 12:50:16.280  000>> Good datagram received!
 54.8469 -14/06/2006 12:50:16.280  000>> Listener:Received dictionary
 54.8470 -14/06/2006 12:50:16.290  000>> 90>>>>>>>>>>Part datagram received!
 54.8471 -14/06/2006 12:50:16.290  000>> 90>>>>>>>>>>Complete!
 54.8472 -14/06/2006 12:50:16.290  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30979
 54.8473 -14/06/2006 12:50:16.290  000>> Good datagram received!
 54.8474 -14/06/2006 12:50:16.290  000>> Listener:Received RIB
 54.8475 -14/06/2006 12:50:16.481  000>> 716>>>>>>>>>>Part datagram received!
 54.8476 -14/06/2006 12:50:16.481  000>> 716>>>>>>>>>>Complete!
 54.8477 -14/06/2006 12:50:16.481  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30980
 54.8478 -14/06/2006 12:50:16.481  000>> Good datagram received!
 54.8479 -14/06/2006 12:50:16.501  000>> Listener:Received Bundle Offer
 54.8480 -14/06/2006 12:50:16.501  000>> Listener:Sending Empty bundle request...
 54.8481 -14/06/2006 12:50:16.501  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8482 -14/06/2006 12:50:16.501  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30554
 54.8483 -14/06/2006 12:50:16.501  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30981
 54.8484 -14/06/2006 12:50:16.501  000>> Good datagram received!
 54.8485 -14/06/2006 12:50:16.501  000>> Initiator:No more requested bundles
 54.8486 -14/06/2006 12:50:16.501  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.8487 -14/06/2006 12:50:16.621  000>> 91>>>>>>>>>>Part datagram received!
 54.8488 -14/06/2006 12:50:16.621  000>> 91>>>>>>>>>>Complete!
 54.8489 -14/06/2006 12:50:16.621  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30982
 54.8490 -14/06/2006 12:50:16.621  000>> Good datagram received!
 54.8491 -14/06/2006 12:50:16.621  000>> Receive Hello:SYN
 54.8492 -14/06/2006 12:50:16.621  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30555
 54.8493 -14/06/2006 12:50:16.641  000>> 91>>>>>>>>>>Part datagram received!
 54.8494 -14/06/2006 12:50:16.641  000>> 91>>>>>>>>>>Complete!
 54.8495 -14/06/2006 12:50:16.641  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30983
 54.8496 -14/06/2006 12:50:16.641  000>> Good datagram received!
 54.8497 -14/06/2006 12:50:16.641  000>> Receive Hello:ACK
 54.8498 -14/06/2006 12:50:16.741  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8499 -14/06/2006 12:50:16.741  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30556
 54.8500 -14/06/2006 12:50:16.741  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30557
 54.8501 -14/06/2006 12:50:16.741  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30558
 54.8502 -14/06/2006 12:50:16.761  000>> 98>>>>>>>>>>Part datagram received!
 54.8503 -14/06/2006 12:50:16.771  000>> 98>>>>>>>>>>Complete!
 54.8504 -14/06/2006 12:50:16.771  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30984
 54.8505 -14/06/2006 12:50:16.771  000>> Good datagram received!
 54.8506 -14/06/2006 12:50:16.771  000>> Listener:Received dictionary
 54.8507 -14/06/2006 12:50:16.771  000>> 90>>>>>>>>>>Part datagram received!
 54.8508 -14/06/2006 12:50:16.771  000>> 90>>>>>>>>>>Complete!
 54.8509 -14/06/2006 12:50:16.771  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30985
 54.8510 -14/06/2006 12:50:16.771  000>> Good datagram received!
 54.8511 -14/06/2006 12:50:16.771  000>> Listener:Received RIB
 54.8512 -14/06/2006 12:50:16.881  000>> 716>>>>>>>>>>Part datagram received!
 54.8513 -14/06/2006 12:50:16.881  000>> 716>>>>>>>>>>Complete!
 54.8514 -14/06/2006 12:50:16.881  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30986
 54.8515 -14/06/2006 12:50:16.881  000>> Good datagram received!
 54.8516 -14/06/2006 12:50:16.901  000>> Listener:Received Bundle Offer
 54.8517 -14/06/2006 12:50:16.901  000>> Listener:Sending Empty bundle request...
 54.8518 -14/06/2006 12:50:16.901  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8519 -14/06/2006 12:50:16.901  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30559
 54.8520 -14/06/2006 12:50:16.901  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30987
 54.8521 -14/06/2006 12:50:16.901  000>> Good datagram received!
 54.8522 -14/06/2006 12:50:16.901  000>> Initiator:No more requested bundles
 54.8523 -14/06/2006 12:50:16.901  000>> Listener(receiveBundles):We can restart connection...
 54.8524 -14/06/2006 12:50:17.001  000>> Hello Procedure:SENDSYN
 54.8525 -14/06/2006 12:50:17.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30560
 54.8526 -14/06/2006 12:50:17.082  000>> 91>>>>>>>>>>Part datagram received!
 54.8527 -14/06/2006 12:50:17.082  000>> 91>>>>>>>>>>Complete!
 54.8528 -14/06/2006 12:50:17.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30988
 54.8529 -14/06/2006 12:50:17.082  000>> Good datagram received!
 54.8530 -14/06/2006 12:50:17.082  000>> Receive Hello:SYNACK
 54.8531 -14/06/2006 12:50:17.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30561
 54.8532 -14/06/2006 12:50:17.182  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8533 -14/06/2006 12:50:17.182  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30562
 54.8534 -14/06/2006 12:50:17.182  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30563
 54.8535 -14/06/2006 12:50:17.192  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30564
 54.8536 -14/06/2006 12:50:17.202  000>> 98>>>>>>>>>>Part datagram received!
 54.8537 -14/06/2006 12:50:17.202  000>> 98>>>>>>>>>>Complete!
 54.8538 -14/06/2006 12:50:17.202  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30989
 54.8539 -14/06/2006 12:50:17.202  000>> Good datagram received!
 54.8540 -14/06/2006 12:50:17.202  000>> Listener:Received dictionary
 54.8541 -14/06/2006 12:50:17.212  000>> 90>>>>>>>>>>Part datagram received!
 54.8542 -14/06/2006 12:50:17.212  000>> 90>>>>>>>>>>Complete!
 54.8543 -14/06/2006 12:50:17.212  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30990
 54.8544 -14/06/2006 12:50:17.212  000>> Good datagram received!
 54.8545 -14/06/2006 12:50:17.212  000>> Listener:Received RIB
 54.8546 -14/06/2006 12:50:17.382  000>> 716>>>>>>>>>>Part datagram received!
 54.8547 -14/06/2006 12:50:17.382  000>> 716>>>>>>>>>>Complete!
 54.8548 -14/06/2006 12:50:17.382  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30991
 54.8549 -14/06/2006 12:50:17.382  000>> Good datagram received!
 54.8550 -14/06/2006 12:50:17.402  000>> Listener:Received Bundle Offer
 54.8551 -14/06/2006 12:50:17.402  000>> Listener:Sending Empty bundle request...
 54.8552 -14/06/2006 12:50:17.402  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8553 -14/06/2006 12:50:17.402  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30565
 54.8554 -14/06/2006 12:50:17.402  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30992
 54.8555 -14/06/2006 12:50:17.402  000>> Good datagram received!
 54.8556 -14/06/2006 12:50:17.402  000>> Initiator:No more requested bundles
 54.8557 -14/06/2006 12:50:17.402  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.8558 -14/06/2006 12:50:17.522  000>> 91>>>>>>>>>>Part datagram received!
 54.8559 -14/06/2006 12:50:17.522  000>> 91>>>>>>>>>>Complete!
 54.8560 -14/06/2006 12:50:17.522  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30993
 54.8561 -14/06/2006 12:50:17.522  000>> Good datagram received!
 54.8562 -14/06/2006 12:50:17.522  000>> Receive Hello:SYN
 54.8563 -14/06/2006 12:50:17.522  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30566
 54.8564 -14/06/2006 12:50:17.542  000>> 91>>>>>>>>>>Part datagram received!
 54.8565 -14/06/2006 12:50:17.542  000>> 91>>>>>>>>>>Complete!
 54.8566 -14/06/2006 12:50:17.542  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30994
 54.8567 -14/06/2006 12:50:17.542  000>> Good datagram received!
 54.8568 -14/06/2006 12:50:17.542  000>> Receive Hello:ACK
 54.8569 -14/06/2006 12:50:17.642  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8570 -14/06/2006 12:50:17.642  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30567
 54.8571 -14/06/2006 12:50:17.642  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30568
 54.8572 -14/06/2006 12:50:17.642  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30569
 54.8573 -14/06/2006 12:50:17.652  000>> 98>>>>>>>>>>Part datagram received!
 54.8574 -14/06/2006 12:50:17.652  000>> 98>>>>>>>>>>Complete!
 54.8575 -14/06/2006 12:50:17.652  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30995
 54.8576 -14/06/2006 12:50:17.652  000>> Good datagram received!
 54.8577 -14/06/2006 12:50:17.652  000>> Listener:Received dictionary
 54.8578 -14/06/2006 12:50:17.652  000>> 90>>>>>>>>>>Part datagram received!
 54.8579 -14/06/2006 12:50:17.652  000>> 90>>>>>>>>>>Complete!
 54.8580 -14/06/2006 12:50:17.652  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30996
 54.8581 -14/06/2006 12:50:17.662  000>> Good datagram received!
 54.8582 -14/06/2006 12:50:17.662  000>> Listener:Received RIB
 54.8583 -14/06/2006 12:50:17.783  000>> 716>>>>>>>>>>Part datagram received!
 54.8584 -14/06/2006 12:50:17.783  000>> 716>>>>>>>>>>Complete!
 54.8585 -14/06/2006 12:50:17.783  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30997
 54.8586 -14/06/2006 12:50:17.783  000>> Good datagram received!
 54.8587 -14/06/2006 12:50:17.803  000>> Listener:Received Bundle Offer
 54.8588 -14/06/2006 12:50:17.803  000>> Listener:Sending Empty bundle request...
 54.8589 -14/06/2006 12:50:17.803  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8590 -14/06/2006 12:50:17.803  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30570
 54.8591 -14/06/2006 12:50:17.803  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30998
 54.8592 -14/06/2006 12:50:17.803  000>> Good datagram received!
 54.8593 -14/06/2006 12:50:17.803  000>> Initiator:No more requested bundles
 54.8594 -14/06/2006 12:50:17.803  000>> Listener(receiveBundles):We can restart connection...
 54.8595 -14/06/2006 12:50:17.903  000>> Hello Procedure:SENDSYN
 54.8596 -14/06/2006 12:50:17.903  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30571
 54.8597 -14/06/2006 12:50:17.973  000>> 91>>>>>>>>>>Part datagram received!
 54.8598 -14/06/2006 12:50:17.973  000>> 91>>>>>>>>>>Complete!
 54.8599 -14/06/2006 12:50:17.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30999
 54.8600 -14/06/2006 12:50:17.973  000>> Good datagram received!
 54.8601 -14/06/2006 12:50:17.973  000>> Receive Hello:SYNACK
 54.8602 -14/06/2006 12:50:17.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30572
 54.8603 -14/06/2006 12:50:18.073  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8604 -14/06/2006 12:50:18.073  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30573
 54.8605 -14/06/2006 12:50:18.073  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30574
 54.8606 -14/06/2006 12:50:18.073  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30575
 54.8607 -14/06/2006 12:50:18.213  000>> 78>>>>>>>>>>Part datagram received!
 54.8608 -14/06/2006 12:50:18.213  000>> 78>>>>>>>>>>Complete!
 54.8609 -14/06/2006 12:50:18.213  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31000
 54.8610 -14/06/2006 12:50:18.213  000>> Good datagram received!
 54.8611 -14/06/2006 12:50:18.213  000>> Initiator:No more requested bundles
 54.8612 -14/06/2006 12:50:18.213  000>> Initiator:But we can not restart connection...
 54.8613 -14/06/2006 12:50:18.383  000>> 826>>>>>>>>>>Part datagram received!
 54.8614 -14/06/2006 12:50:18.383  000>> 826>>>>>>>>>>Complete!
 54.8615 -14/06/2006 12:50:18.383  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31001
 54.8616 -14/06/2006 12:50:18.383  000>> Good datagram received!
 54.8617 -14/06/2006 12:50:18.393  000>> Listener:Received dictionary
 54.8618 -14/06/2006 12:50:18.393  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31002
 54.8619 -14/06/2006 12:50:18.393  000>> Good datagram received!
 54.8620 -14/06/2006 12:50:18.393  000>> Listener:Received RIB
 54.8621 -14/06/2006 12:50:18.393  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31003
 54.8622 -14/06/2006 12:50:18.393  000>> Good datagram received!
 54.8623 -14/06/2006 12:50:18.403  000>> Listener:Received Bundle Offer
 54.8624 -14/06/2006 12:50:18.403  000>> Listener:Sending Empty bundle request...
 54.8625 -14/06/2006 12:50:18.403  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.8626 -14/06/2006 12:50:18.413  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30576
 54.8627 -14/06/2006 12:50:18.554  000>> 91>>>>>>>>>>Part datagram received!
 54.8628 -14/06/2006 12:50:18.554  000>> 91>>>>>>>>>>Complete!
 54.8629 -14/06/2006 12:50:18.554  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31004
 54.8630 -14/06/2006 12:50:18.554  000>> Good datagram received!
 54.8631 -14/06/2006 12:50:18.554  000>> Receive Hello:SYN
 54.8632 -14/06/2006 12:50:18.554  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30577
 54.8633 -14/06/2006 12:50:18.574  000>> 91>>>>>>>>>>Part datagram received!
 54.8634 -14/06/2006 12:50:18.574  000>> 91>>>>>>>>>>Complete!
 54.8635 -14/06/2006 12:50:18.574  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31005
 54.8636 -14/06/2006 12:50:18.574  000>> Good datagram received!
 54.8637 -14/06/2006 12:50:18.584  000>> Receive Hello:ACK
 54.8638 -14/06/2006 12:50:18.684  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8639 -14/06/2006 12:50:18.684  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30578
 54.8640 -14/06/2006 12:50:18.684  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30579
 54.8641 -14/06/2006 12:50:18.684  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30580
 54.8642 -14/06/2006 12:50:18.684  000>> 98>>>>>>>>>>Part datagram received!
 54.8643 -14/06/2006 12:50:18.684  000>> 98>>>>>>>>>>Complete!
 54.8644 -14/06/2006 12:50:18.684  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31006
 54.8645 -14/06/2006 12:50:18.684  000>> Good datagram received!
 54.8646 -14/06/2006 12:50:18.694  000>> Listener:Received dictionary
 54.8647 -14/06/2006 12:50:18.694  000>> 0>>>>>>>>>>Part datagram received!
 54.8648 -14/06/2006 12:50:18.694  000>> 0>>>>>>>>>>Part datagram received!
 54.8649 -14/06/2006 12:50:18.694  000>> 90>>>>>>>>>>Part datagram received!
 54.8650 -14/06/2006 12:50:18.694  000>> 90>>>>>>>>>>Complete!
 54.8651 -14/06/2006 12:50:18.694  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31007
 54.8652 -14/06/2006 12:50:18.694  000>> Good datagram received!
 54.8653 -14/06/2006 12:50:18.694  000>> Listener:Received RIB
 54.8654 -14/06/2006 12:50:18.714  000>> 638>>>>>>>>>>Part datagram received!
 54.8655 -14/06/2006 12:50:18.714  000>> 638>>>>>>>>>>Complete!
 54.8656 -14/06/2006 12:50:18.714  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31008
 54.8657 -14/06/2006 12:50:18.714  000>> Good datagram received!
 54.8658 -14/06/2006 12:50:18.724  000>> Listener:Received Bundle Offer
 54.8659 -14/06/2006 12:50:18.724  000>> Listener:Sending Empty bundle request...
 54.8660 -14/06/2006 12:50:18.724  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8661 -14/06/2006 12:50:18.724  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30581
 54.8662 -14/06/2006 12:50:18.804  000>> 78>>>>>>>>>>Part datagram received!
 54.8663 -14/06/2006 12:50:18.804  000>> 78>>>>>>>>>>Complete!
 54.8664 -14/06/2006 12:50:18.804  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31009
 54.8665 -14/06/2006 12:50:18.804  000>> Good datagram received!
 54.8666 -14/06/2006 12:50:18.804  000>> Initiator:No more requested bundles
 54.8667 -14/06/2006 12:50:18.814  000>> Listener(receiveBundles):We can restart connection...
 54.8668 -14/06/2006 12:50:18.914  000>> Hello Procedure:SENDSYN
 54.8669 -14/06/2006 12:50:18.914  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30582
 54.8670 -14/06/2006 12:50:18.954  000>> 91>>>>>>>>>>Part datagram received!
 54.8671 -14/06/2006 12:50:18.954  000>> 91>>>>>>>>>>Complete!
 54.8672 -14/06/2006 12:50:18.954  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31010
 54.8673 -14/06/2006 12:50:18.954  000>> Good datagram received!
 54.8674 -14/06/2006 12:50:18.954  000>> Receive Hello:SYNACK
 54.8675 -14/06/2006 12:50:18.954  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30583
 54.8676 -14/06/2006 12:50:19.054  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8677 -14/06/2006 12:50:19.054  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30584
 54.8678 -14/06/2006 12:50:19.054  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30585
 54.8679 -14/06/2006 12:50:19.054  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30586
 54.8680 -14/06/2006 12:50:19.215  000>> 78>>>>>>>>>>Part datagram received!
 54.8681 -14/06/2006 12:50:19.215  000>> 78>>>>>>>>>>Complete!
 54.8682 -14/06/2006 12:50:19.215  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31011
 54.8683 -14/06/2006 12:50:19.215  000>> Good datagram received!
 54.8684 -14/06/2006 12:50:19.215  000>> Initiator:No more requested bundles
 54.8685 -14/06/2006 12:50:19.215  000>> Initiator:But we can not restart connection...
 54.8686 -14/06/2006 12:50:19.385  000>> 826>>>>>>>>>>Part datagram received!
 54.8687 -14/06/2006 12:50:19.385  000>> 826>>>>>>>>>>Complete!
 54.8688 -14/06/2006 12:50:19.395  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31012
 54.8689 -14/06/2006 12:50:19.395  000>> Good datagram received!
 54.8690 -14/06/2006 12:50:19.395  000>> Listener:Received dictionary
 54.8691 -14/06/2006 12:50:19.395  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31013
 54.8692 -14/06/2006 12:50:19.395  000>> Good datagram received!
 54.8693 -14/06/2006 12:50:19.395  000>> Listener:Received RIB
 54.8694 -14/06/2006 12:50:19.395  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31014
 54.8695 -14/06/2006 12:50:19.395  000>> Good datagram received!
 54.8696 -14/06/2006 12:50:19.415  000>> Listener:Received Bundle Offer
 54.8697 -14/06/2006 12:50:19.415  000>> Listener:Sending Empty bundle request...
 54.8698 -14/06/2006 12:50:19.415  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.8699 -14/06/2006 12:50:19.415  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30587
 54.8700 -14/06/2006 12:50:19.535  000>> 91>>>>>>>>>>Part datagram received!
 54.8701 -14/06/2006 12:50:19.535  000>> 91>>>>>>>>>>Complete!
 54.8702 -14/06/2006 12:50:19.535  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31015
 54.8703 -14/06/2006 12:50:19.535  000>> Good datagram received!
 54.8704 -14/06/2006 12:50:19.535  000>> Receive Hello:SYN
 54.8705 -14/06/2006 12:50:19.535  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30588
 54.8706 -14/06/2006 12:50:19.555  000>> 91>>>>>>>>>>Part datagram received!
 54.8707 -14/06/2006 12:50:19.555  000>> 91>>>>>>>>>>Complete!
 54.8708 -14/06/2006 12:50:19.555  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31016
 54.8709 -14/06/2006 12:50:19.565  000>> Good datagram received!
 54.8710 -14/06/2006 12:50:19.565  000>> Receive Hello:ACK
 54.8711 -14/06/2006 12:50:19.665  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8712 -14/06/2006 12:50:19.665  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30589
 54.8713 -14/06/2006 12:50:19.665  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30590
 54.8714 -14/06/2006 12:50:19.665  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30591
 54.8715 -14/06/2006 12:50:19.665  000>> 98>>>>>>>>>>Part datagram received!
 54.8716 -14/06/2006 12:50:19.665  000>> 98>>>>>>>>>>Complete!
 54.8717 -14/06/2006 12:50:19.665  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31017
 54.8718 -14/06/2006 12:50:19.665  000>> Good datagram received!
 54.8719 -14/06/2006 12:50:19.675  000>> Listener:Received dictionary
 54.8720 -14/06/2006 12:50:19.675  000>> 90>>>>>>>>>>Part datagram received!
 54.8721 -14/06/2006 12:50:19.675  000>> 90>>>>>>>>>>Complete!
 54.8722 -14/06/2006 12:50:19.675  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31018
 54.8723 -14/06/2006 12:50:19.675  000>> Good datagram received!
 54.8724 -14/06/2006 12:50:19.675  000>> Listener:Received RIB
 54.8725 -14/06/2006 12:50:19.675  000>> 0>>>>>>>>>>Part datagram received!
 54.8726 -14/06/2006 12:50:19.675  000>> 0>>>>>>>>>>Part datagram received!
 54.8727 -14/06/2006 12:50:19.675  000>> 638>>>>>>>>>>Part datagram received!
 54.8728 -14/06/2006 12:50:19.675  000>> 638>>>>>>>>>>Complete!
 54.8729 -14/06/2006 12:50:19.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31019
 54.8730 -14/06/2006 12:50:19.685  000>> Good datagram received!
 54.8731 -14/06/2006 12:50:19.695  000>> Listener:Received Bundle Offer
 54.8732 -14/06/2006 12:50:19.695  000>> Listener:Sending Empty bundle request...
 54.8733 -14/06/2006 12:50:19.695  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8734 -14/06/2006 12:50:19.695  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30592
 54.8735 -14/06/2006 12:50:19.785  000>> 78>>>>>>>>>>Part datagram received!
 54.8736 -14/06/2006 12:50:19.785  000>> 78>>>>>>>>>>Complete!
 54.8737 -14/06/2006 12:50:19.785  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31020
 54.8738 -14/06/2006 12:50:19.785  000>> Good datagram received!
 54.8739 -14/06/2006 12:50:19.785  000>> Initiator:No more requested bundles
 54.8740 -14/06/2006 12:50:19.785  000>> Listener(receiveBundles):We can restart connection...
 54.8741 -14/06/2006 12:50:19.886  000>> Hello Procedure:SENDSYN
 54.8742 -14/06/2006 12:50:19.886  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30593
 54.8743 -14/06/2006 12:50:19.906  000>> 91>>>>>>>>>>Part datagram received!
 54.8744 -14/06/2006 12:50:19.906  000>> 91>>>>>>>>>>Complete!
 54.8745 -14/06/2006 12:50:19.906  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31021
 54.8746 -14/06/2006 12:50:19.906  000>> Good datagram received!
 54.8747 -14/06/2006 12:50:19.916  000>> Receive Hello:SYNACK
 54.8748 -14/06/2006 12:50:19.916  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30594
 54.8749 -14/06/2006 12:50:20.016  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8750 -14/06/2006 12:50:20.016  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30595
 54.8751 -14/06/2006 12:50:20.016  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30596
 54.8752 -14/06/2006 12:50:20.016  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30597
 54.8753 -14/06/2006 12:50:20.126  000>> 78>>>>>>>>>>Part datagram received!
 54.8754 -14/06/2006 12:50:20.126  000>> 78>>>>>>>>>>Complete!
 54.8755 -14/06/2006 12:50:20.126  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31022
 54.8756 -14/06/2006 12:50:20.126  000>> Good datagram received!
 54.8757 -14/06/2006 12:50:20.126  000>> Initiator:No more requested bundles
 54.8758 -14/06/2006 12:50:20.126  000>> Initiator:But we can not restart connection...
 54.8759 -14/06/2006 12:50:20.296  000>> 826>>>>>>>>>>Part datagram received!
 54.8760 -14/06/2006 12:50:20.296  000>> 826>>>>>>>>>>Complete!
 54.8761 -14/06/2006 12:50:20.296  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31023
 54.8762 -14/06/2006 12:50:20.296  000>> Good datagram received!
 54.8763 -14/06/2006 12:50:20.296  000>> Listener:Received dictionary
 54.8764 -14/06/2006 12:50:20.296  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31024
 54.8765 -14/06/2006 12:50:20.296  000>> Good datagram received!
 54.8766 -14/06/2006 12:50:20.296  000>> Listener:Received RIB
 54.8767 -14/06/2006 12:50:20.296  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31025
 54.8768 -14/06/2006 12:50:20.296  000>> Good datagram received!
 54.8769 -14/06/2006 12:50:20.316  000>> Listener:Received Bundle Offer
 54.8770 -14/06/2006 12:50:20.316  000>> Listener:Sending Empty bundle request...
 54.8771 -14/06/2006 12:50:20.316  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.8772 -14/06/2006 12:50:20.316  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30598
 54.8773 -14/06/2006 12:50:20.436  000>> 91>>>>>>>>>>Part datagram received!
 54.8774 -14/06/2006 12:50:20.436  000>> 91>>>>>>>>>>Complete!
 54.8775 -14/06/2006 12:50:20.436  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31026
 54.8776 -14/06/2006 12:50:20.436  000>> Good datagram received!
 54.8777 -14/06/2006 12:50:20.436  000>> Receive Hello:SYN
 54.8778 -14/06/2006 12:50:20.436  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30599
 54.8779 -14/06/2006 12:50:20.466  000>> 91>>>>>>>>>>Part datagram received!
 54.8780 -14/06/2006 12:50:20.466  000>> 91>>>>>>>>>>Complete!
 54.8781 -14/06/2006 12:50:20.466  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31027
 54.8782 -14/06/2006 12:50:20.466  000>> Good datagram received!
 54.8783 -14/06/2006 12:50:20.466  000>> Receive Hello:ACK
 54.8784 -14/06/2006 12:50:20.567  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8785 -14/06/2006 12:50:20.567  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30600
 54.8786 -14/06/2006 12:50:20.567  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30601
 54.8787 -14/06/2006 12:50:20.567  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30602
 54.8788 -14/06/2006 12:50:20.567  000>> 98>>>>>>>>>>Part datagram received!
 54.8789 -14/06/2006 12:50:20.567  000>> 98>>>>>>>>>>Complete!
 54.8790 -14/06/2006 12:50:20.567  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31028
 54.8791 -14/06/2006 12:50:20.567  000>> Good datagram received!
 54.8792 -14/06/2006 12:50:20.577  000>> Listener:Received dictionary
 54.8793 -14/06/2006 12:50:20.577  000>> 90>>>>>>>>>>Part datagram received!
 54.8794 -14/06/2006 12:50:20.577  000>> 90>>>>>>>>>>Complete!
 54.8795 -14/06/2006 12:50:20.577  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31029
 54.8796 -14/06/2006 12:50:20.577  000>> Good datagram received!
 54.8797 -14/06/2006 12:50:20.577  000>> Listener:Received RIB
 54.8798 -14/06/2006 12:50:20.577  000>> 0>>>>>>>>>>Part datagram received!
 54.8799 -14/06/2006 12:50:20.577  000>> 0>>>>>>>>>>Part datagram received!
 54.8800 -14/06/2006 12:50:20.587  000>> 638>>>>>>>>>>Part datagram received!
 54.8801 -14/06/2006 12:50:20.587  000>> 638>>>>>>>>>>Complete!
 54.8802 -14/06/2006 12:50:20.587  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31030
 54.8803 -14/06/2006 12:50:20.587  000>> Good datagram received!
 54.8804 -14/06/2006 12:50:20.597  000>> Listener:Received Bundle Offer
 54.8805 -14/06/2006 12:50:20.597  000>> Listener:Sending Empty bundle request...
 54.8806 -14/06/2006 12:50:20.597  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8807 -14/06/2006 12:50:20.607  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30603
 54.8808 -14/06/2006 12:50:20.677  000>> 78>>>>>>>>>>Part datagram received!
 54.8809 -14/06/2006 12:50:20.677  000>> 78>>>>>>>>>>Complete!
 54.8810 -14/06/2006 12:50:20.687  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31031
 54.8811 -14/06/2006 12:50:20.687  000>> Good datagram received!
 54.8812 -14/06/2006 12:50:20.687  000>> Initiator:No more requested bundles
 54.8813 -14/06/2006 12:50:20.687  000>> Listener(receiveBundles):We can restart connection...
 54.8814 -14/06/2006 12:50:20.787  000>> Hello Procedure:SENDSYN
 54.8815 -14/06/2006 12:50:20.787  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30604
 54.8816 -14/06/2006 12:50:20.807  000>> 91>>>>>>>>>>Part datagram received!
 54.8817 -14/06/2006 12:50:20.807  000>> 91>>>>>>>>>>Complete!
 54.8818 -14/06/2006 12:50:20.807  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31032
 54.8819 -14/06/2006 12:50:20.807  000>> Good datagram received!
 54.8820 -14/06/2006 12:50:20.807  000>> Receive Hello:SYNACK
 54.8821 -14/06/2006 12:50:20.807  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30605
 54.8822 -14/06/2006 12:50:20.907  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8823 -14/06/2006 12:50:20.907  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30606
 54.8824 -14/06/2006 12:50:20.907  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30607
 54.8825 -14/06/2006 12:50:20.907  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30608
 54.8826 -14/06/2006 12:50:20.937  000>> 98>>>>>>>>>>Part datagram received!
 54.8827 -14/06/2006 12:50:20.937  000>> 98>>>>>>>>>>Complete!
 54.8828 -14/06/2006 12:50:20.937  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31033
 54.8829 -14/06/2006 12:50:20.937  000>> Good datagram received!
 54.8830 -14/06/2006 12:50:20.937  000>> Listener:Received dictionary
 54.8831 -14/06/2006 12:50:20.937  000>> 90>>>>>>>>>>Part datagram received!
 54.8832 -14/06/2006 12:50:20.947  000>> 90>>>>>>>>>>Complete!
 54.8833 -14/06/2006 12:50:20.947  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31034
 54.8834 -14/06/2006 12:50:20.947  000>> Good datagram received!
 54.8835 -14/06/2006 12:50:20.947  000>> Listener:Received RIB
 54.8836 -14/06/2006 12:50:21.097  000>> 716>>>>>>>>>>Part datagram received!
 54.8837 -14/06/2006 12:50:21.097  000>> 716>>>>>>>>>>Complete!
 54.8838 -14/06/2006 12:50:21.097  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31035
 54.8839 -14/06/2006 12:50:21.097  000>> Good datagram received!
 54.8840 -14/06/2006 12:50:21.107  000>> Listener:Received Bundle Offer
 54.8841 -14/06/2006 12:50:21.107  000>> Listener:Sending Empty bundle request...
 54.8842 -14/06/2006 12:50:21.107  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8843 -14/06/2006 12:50:21.117  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30609
 54.8844 -14/06/2006 12:50:21.117  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31036
 54.8845 -14/06/2006 12:50:21.117  000>> Good datagram received!
 54.8846 -14/06/2006 12:50:21.117  000>> Initiator:No more requested bundles
 54.8847 -14/06/2006 12:50:21.117  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.8848 -14/06/2006 12:50:21.258  000>> 91>>>>>>>>>>Part datagram received!
 54.8849 -14/06/2006 12:50:21.258  000>> 91>>>>>>>>>>Complete!
 54.8850 -14/06/2006 12:50:21.258  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31037
 54.8851 -14/06/2006 12:50:21.258  000>> Good datagram received!
 54.8852 -14/06/2006 12:50:21.258  000>> Receive Hello:SYN
 54.8853 -14/06/2006 12:50:21.258  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30610
 54.8854 -14/06/2006 12:50:21.298  000>> 91>>>>>>>>>>Part datagram received!
 54.8855 -14/06/2006 12:50:21.298  000>> 91>>>>>>>>>>Complete!
 54.8856 -14/06/2006 12:50:21.298  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31038
 54.8857 -14/06/2006 12:50:21.298  000>> Good datagram received!
 54.8858 -14/06/2006 12:50:21.298  000>> Receive Hello:ACK
 54.8859 -14/06/2006 12:50:21.398  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8860 -14/06/2006 12:50:21.398  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30611
 54.8861 -14/06/2006 12:50:21.398  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30612
 54.8862 -14/06/2006 12:50:21.398  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30613
 54.8863 -14/06/2006 12:50:21.438  000>> 98>>>>>>>>>>Part datagram received!
 54.8864 -14/06/2006 12:50:21.438  000>> 98>>>>>>>>>>Complete!
 54.8865 -14/06/2006 12:50:21.438  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31039
 54.8866 -14/06/2006 12:50:21.438  000>> Good datagram received!
 54.8867 -14/06/2006 12:50:21.438  000>> Listener:Received dictionary
 54.8868 -14/06/2006 12:50:21.438  000>> 90>>>>>>>>>>Part datagram received!
 54.8869 -14/06/2006 12:50:21.438  000>> 90>>>>>>>>>>Complete!
 54.8870 -14/06/2006 12:50:21.448  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31040
 54.8871 -14/06/2006 12:50:21.448  000>> Good datagram received!
 54.8872 -14/06/2006 12:50:21.448  000>> Listener:Received RIB
 54.8873 -14/06/2006 12:50:21.598  000>> 716>>>>>>>>>>Part datagram received!
 54.8874 -14/06/2006 12:50:21.598  000>> 716>>>>>>>>>>Complete!
 54.8875 -14/06/2006 12:50:21.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31041
 54.8876 -14/06/2006 12:50:21.598  000>> Good datagram received!
 54.8877 -14/06/2006 12:50:21.608  000>> Listener:Received Bundle Offer
 54.8878 -14/06/2006 12:50:21.608  000>> Listener:Sending Empty bundle request...
 54.8879 -14/06/2006 12:50:21.618  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8880 -14/06/2006 12:50:21.618  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30614
 54.8881 -14/06/2006 12:50:21.618  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31042
 54.8882 -14/06/2006 12:50:21.618  000>> Good datagram received!
 54.8883 -14/06/2006 12:50:21.618  000>> Initiator:No more requested bundles
 54.8884 -14/06/2006 12:50:21.618  000>> Listener(receiveBundles):We can restart connection...
 54.8885 -14/06/2006 12:50:21.718  000>> Hello Procedure:SENDSYN
 54.8886 -14/06/2006 12:50:21.718  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30615
 54.8887 -14/06/2006 12:50:21.768  000>> 91>>>>>>>>>>Part datagram received!
 54.8888 -14/06/2006 12:50:21.768  000>> 91>>>>>>>>>>Complete!
 54.8889 -14/06/2006 12:50:21.768  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31043
 54.8890 -14/06/2006 12:50:21.768  000>> Good datagram received!
 54.8891 -14/06/2006 12:50:21.768  000>> Receive Hello:SYNACK
 54.8892 -14/06/2006 12:50:21.768  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30616
 54.8893 -14/06/2006 12:50:21.878  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8894 -14/06/2006 12:50:21.878  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30617
 54.8895 -14/06/2006 12:50:21.878  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30618
 54.8896 -14/06/2006 12:50:21.878  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30619
 54.8897 -14/06/2006 12:50:21.919  000>> 98>>>>>>>>>>Part datagram received!
 54.8898 -14/06/2006 12:50:21.919  000>> 98>>>>>>>>>>Complete!
 54.8899 -14/06/2006 12:50:21.919  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31044
 54.8900 -14/06/2006 12:50:21.919  000>> Good datagram received!
 54.8901 -14/06/2006 12:50:21.919  000>> Listener:Received dictionary
 54.8902 -14/06/2006 12:50:21.939  000>> 90>>>>>>>>>>Part datagram received!
 54.8903 -14/06/2006 12:50:21.939  000>> 90>>>>>>>>>>Complete!
 54.8904 -14/06/2006 12:50:21.939  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31045
 54.8905 -14/06/2006 12:50:21.939  000>> Good datagram received!
 54.8906 -14/06/2006 12:50:21.949  000>> Listener:Received RIB
 54.8907 -14/06/2006 12:50:22.099  000>> 716>>>>>>>>>>Part datagram received!
 54.8908 -14/06/2006 12:50:22.099  000>> 716>>>>>>>>>>Complete!
 54.8909 -14/06/2006 12:50:22.099  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31046
 54.8910 -14/06/2006 12:50:22.099  000>> Good datagram received!
 54.8911 -14/06/2006 12:50:22.109  000>> Listener:Received Bundle Offer
 54.8912 -14/06/2006 12:50:22.119  000>> Listener:Sending Empty bundle request...
 54.8913 -14/06/2006 12:50:22.119  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8914 -14/06/2006 12:50:22.119  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30620
 54.8915 -14/06/2006 12:50:22.119  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31047
 54.8916 -14/06/2006 12:50:22.119  000>> Good datagram received!
 54.8917 -14/06/2006 12:50:22.119  000>> Initiator:No more requested bundles
 54.8918 -14/06/2006 12:50:22.119  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.8919 -14/06/2006 12:50:22.249  000>> 91>>>>>>>>>>Part datagram received!
 54.8920 -14/06/2006 12:50:22.249  000>> 91>>>>>>>>>>Complete!
 54.8921 -14/06/2006 12:50:22.249  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31048
 54.8922 -14/06/2006 12:50:22.249  000>> Good datagram received!
 54.8923 -14/06/2006 12:50:22.249  000>> Receive Hello:SYN
 54.8924 -14/06/2006 12:50:22.249  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30621
 54.8925 -14/06/2006 12:50:22.269  000>> 91>>>>>>>>>>Part datagram received!
 54.8926 -14/06/2006 12:50:22.279  000>> 91>>>>>>>>>>Complete!
 54.8927 -14/06/2006 12:50:22.279  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31049
 54.8928 -14/06/2006 12:50:22.279  000>> Good datagram received!
 54.8929 -14/06/2006 12:50:22.279  000>> Receive Hello:ACK
 54.8930 -14/06/2006 12:50:22.379  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8931 -14/06/2006 12:50:22.379  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30622
 54.8932 -14/06/2006 12:50:22.379  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30623
 54.8933 -14/06/2006 12:50:22.379  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30624
 54.8934 -14/06/2006 12:50:22.379  000>> 98>>>>>>>>>>Part datagram received!
 54.8935 -14/06/2006 12:50:22.379  000>> 98>>>>>>>>>>Complete!
 54.8936 -14/06/2006 12:50:22.379  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31050
 54.8937 -14/06/2006 12:50:22.379  000>> Good datagram received!
 54.8938 -14/06/2006 12:50:22.389  000>> Listener:Received dictionary
 54.8939 -14/06/2006 12:50:22.389  000>> 90>>>>>>>>>>Part datagram received!
 54.8940 -14/06/2006 12:50:22.389  000>> 90>>>>>>>>>>Complete!
 54.8941 -14/06/2006 12:50:22.389  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31051
 54.8942 -14/06/2006 12:50:22.389  000>> Good datagram received!
 54.8943 -14/06/2006 12:50:22.389  000>> Listener:Received RIB
 54.8944 -14/06/2006 12:50:22.389  000>> 0>>>>>>>>>>Part datagram received!
 54.8945 -14/06/2006 12:50:22.389  000>> 0>>>>>>>>>>Part datagram received!
 54.8946 -14/06/2006 12:50:22.389  000>> 638>>>>>>>>>>Part datagram received!
 54.8947 -14/06/2006 12:50:22.389  000>> 638>>>>>>>>>>Complete!
 54.8948 -14/06/2006 12:50:22.399  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31052
 54.8949 -14/06/2006 12:50:22.399  000>> Good datagram received!
 54.8950 -14/06/2006 12:50:22.409  000>> Listener:Received Bundle Offer
 54.8951 -14/06/2006 12:50:22.409  000>> Listener:Sending Empty bundle request...
 54.8952 -14/06/2006 12:50:22.409  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8953 -14/06/2006 12:50:22.409  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30625
 54.8954 -14/06/2006 12:50:22.489  000>> 78>>>>>>>>>>Part datagram received!
 54.8955 -14/06/2006 12:50:22.489  000>> 78>>>>>>>>>>Complete!
 54.8956 -14/06/2006 12:50:22.489  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31053
 54.8957 -14/06/2006 12:50:22.499  000>> Good datagram received!
 54.8958 -14/06/2006 12:50:22.499  000>> Initiator:No more requested bundles
 54.8959 -14/06/2006 12:50:22.499  000>> Listener(receiveBundles):We can restart connection...
 54.8960 -14/06/2006 12:50:22.600  000>> Hello Procedure:SENDSYN
 54.8961 -14/06/2006 12:50:22.600  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30626
 54.8962 -14/06/2006 12:50:22.620  000>> 91>>>>>>>>>>Part datagram received!
 54.8963 -14/06/2006 12:50:22.620  000>> 91>>>>>>>>>>Complete!
 54.8964 -14/06/2006 12:50:22.620  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31054
 54.8965 -14/06/2006 12:50:22.620  000>> Good datagram received!
 54.8966 -14/06/2006 12:50:22.620  000>> Receive Hello:SYNACK
 54.8967 -14/06/2006 12:50:22.630  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30627
 54.8968 -14/06/2006 12:50:22.730  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.8969 -14/06/2006 12:50:22.730  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30628
 54.8970 -14/06/2006 12:50:22.730  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30629
 54.8971 -14/06/2006 12:50:22.730  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30630
 54.8972 -14/06/2006 12:50:22.750  000>> 98>>>>>>>>>>Part datagram received!
 54.8973 -14/06/2006 12:50:22.750  000>> 98>>>>>>>>>>Complete!
 54.8974 -14/06/2006 12:50:22.750  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31055
 54.8975 -14/06/2006 12:50:22.750  000>> Good datagram received!
 54.8976 -14/06/2006 12:50:22.750  000>> Listener:Received dictionary
 54.8977 -14/06/2006 12:50:22.770  000>> 728>>>>>>>>>>Part datagram received!
 54.8978 -14/06/2006 12:50:22.770  000>> 728>>>>>>>>>>Complete!
 54.8979 -14/06/2006 12:50:22.770  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31056
 54.8980 -14/06/2006 12:50:22.770  000>> Good datagram received!
 54.8981 -14/06/2006 12:50:22.770  000>> Listener:Received RIB
 54.8982 -14/06/2006 12:50:22.770  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31057
 54.8983 -14/06/2006 12:50:22.770  000>> Good datagram received!
 54.8984 -14/06/2006 12:50:22.790  000>> Listener:Received Bundle Offer
 54.8985 -14/06/2006 12:50:22.790  000>> Listener:Sending Empty bundle request...
 54.8986 -14/06/2006 12:50:22.790  000>> Listener(receiveBOffer):But we can not restart connection...
 54.8987 -14/06/2006 12:50:22.790  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30631
 54.8988 -14/06/2006 12:50:22.870  000>> 78>>>>>>>>>>Part datagram received!
 54.8989 -14/06/2006 12:50:22.870  000>> 78>>>>>>>>>>Complete!
 54.8990 -14/06/2006 12:50:22.870  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31058
 54.8991 -14/06/2006 12:50:22.870  000>> Good datagram received!
 54.8992 -14/06/2006 12:50:22.870  000>> Initiator:No more requested bundles
 54.8993 -14/06/2006 12:50:22.870  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.8994 -14/06/2006 12:50:23.000  000>> 91>>>>>>>>>>Part datagram received!
 54.8995 -14/06/2006 12:50:23.000  000>> 91>>>>>>>>>>Complete!
 54.8996 -14/06/2006 12:50:23.000  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31059
 54.8997 -14/06/2006 12:50:23.000  000>> Good datagram received!
 54.8998 -14/06/2006 12:50:23.000  000>> Receive Hello:SYN
 54.8999 -14/06/2006 12:50:23.000  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30632
 54.9000 -14/06/2006 12:50:23.080  000>> 91>>>>>>>>>>Part datagram received!
 54.9001 -14/06/2006 12:50:23.080  000>> 91>>>>>>>>>>Complete!
 54.9002 -14/06/2006 12:50:23.090  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31060
 54.9003 -14/06/2006 12:50:23.090  000>> Good datagram received!
 54.9004 -14/06/2006 12:50:23.090  000>> Receive Hello:ACK
 54.9005 -14/06/2006 12:50:23.190  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9006 -14/06/2006 12:50:23.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30633
 54.9007 -14/06/2006 12:50:23.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30634
 54.9008 -14/06/2006 12:50:23.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30635
 54.9009 -14/06/2006 12:50:23.190  000>> 98>>>>>>>>>>Part datagram received!
 54.9010 -14/06/2006 12:50:23.190  000>> 98>>>>>>>>>>Complete!
 54.9011 -14/06/2006 12:50:23.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31061
 54.9012 -14/06/2006 12:50:23.190  000>> Good datagram received!
 54.9013 -14/06/2006 12:50:23.200  000>> Listener:Received dictionary
 54.9014 -14/06/2006 12:50:23.200  000>> 90>>>>>>>>>>Part datagram received!
 54.9015 -14/06/2006 12:50:23.200  000>> 90>>>>>>>>>>Complete!
 54.9016 -14/06/2006 12:50:23.200  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31062
 54.9017 -14/06/2006 12:50:23.200  000>> Good datagram received!
 54.9018 -14/06/2006 12:50:23.200  000>> Listener:Received RIB
 54.9019 -14/06/2006 12:50:23.200  000>> 0>>>>>>>>>>Part datagram received!
 54.9020 -14/06/2006 12:50:23.200  000>> 638>>>>>>>>>>Part datagram received!
 54.9021 -14/06/2006 12:50:23.210  000>> 638>>>>>>>>>>Complete!
 54.9022 -14/06/2006 12:50:23.210  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31063
 54.9023 -14/06/2006 12:50:23.210  000>> Good datagram received!
 54.9024 -14/06/2006 12:50:23.220  000>> Listener:Received Bundle Offer
 54.9025 -14/06/2006 12:50:23.220  000>> Listener:Sending Empty bundle request...
 54.9026 -14/06/2006 12:50:23.220  000>> Listener(receiveBOffer):But we can not restart connection...
 54.9027 -14/06/2006 12:50:23.230  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30636
 54.9028 -14/06/2006 12:50:23.230  000>> 0>>>>>>>>>>Part datagram received!
 54.9029 -14/06/2006 12:50:23.311  000>> 78>>>>>>>>>>Part datagram received!
 54.9030 -14/06/2006 12:50:23.311  000>> 78>>>>>>>>>>Complete!
 54.9031 -14/06/2006 12:50:23.311  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31064
 54.9032 -14/06/2006 12:50:23.311  000>> Good datagram received!
 54.9033 -14/06/2006 12:50:23.311  000>> Initiator:No more requested bundles
 54.9034 -14/06/2006 12:50:23.311  000>> Listener(receiveBundles):We can restart connection...
 54.9035 -14/06/2006 12:50:23.411  000>> Hello Procedure:SENDSYN
 54.9036 -14/06/2006 12:50:23.411  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30637
 54.9037 -14/06/2006 12:50:23.431  000>> 91>>>>>>>>>>Part datagram received!
 54.9038 -14/06/2006 12:50:23.431  000>> 91>>>>>>>>>>Complete!
 54.9039 -14/06/2006 12:50:23.441  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31065
 54.9040 -14/06/2006 12:50:23.441  000>> Good datagram received!
 54.9041 -14/06/2006 12:50:23.441  000>> Receive Hello:SYNACK
 54.9042 -14/06/2006 12:50:23.441  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30638
 54.9043 -14/06/2006 12:50:23.541  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9044 -14/06/2006 12:50:23.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30639
 54.9045 -14/06/2006 12:50:23.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30640
 54.9046 -14/06/2006 12:50:23.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30641
 54.9047 -14/06/2006 12:50:23.611  000>> 78>>>>>>>>>>Part datagram received!
 54.9048 -14/06/2006 12:50:23.611  000>> 78>>>>>>>>>>Complete!
 54.9049 -14/06/2006 12:50:23.611  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31066
 54.9050 -14/06/2006 12:50:23.611  000>> Good datagram received!
 54.9051 -14/06/2006 12:50:23.611  000>> Initiator:No more requested bundles
 54.9052 -14/06/2006 12:50:23.611  000>> Initiator:But we can not restart connection...
 54.9053 -14/06/2006 12:50:23.801  000>> 826>>>>>>>>>>Part datagram received!
 54.9054 -14/06/2006 12:50:23.801  000>> 826>>>>>>>>>>Complete!
 54.9055 -14/06/2006 12:50:23.801  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31067
 54.9056 -14/06/2006 12:50:23.801  000>> Good datagram received!
 54.9057 -14/06/2006 12:50:23.801  000>> Listener:Received dictionary
 54.9058 -14/06/2006 12:50:23.811  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31068
 54.9059 -14/06/2006 12:50:23.811  000>> Good datagram received!
 54.9060 -14/06/2006 12:50:23.811  000>> Listener:Received RIB
 54.9061 -14/06/2006 12:50:23.811  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31069
 54.9062 -14/06/2006 12:50:23.811  000>> Good datagram received!
 54.9063 -14/06/2006 12:50:23.821  000>> Listener:Received Bundle Offer
 54.9064 -14/06/2006 12:50:23.821  000>> Listener:Sending Empty bundle request...
 54.9065 -14/06/2006 12:50:23.821  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.9066 -14/06/2006 12:50:23.821  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30642
 54.9067 -14/06/2006 12:50:23.951  000>> 91>>>>>>>>>>Part datagram received!
 54.9068 -14/06/2006 12:50:23.951  000>> 91>>>>>>>>>>Complete!
 54.9069 -14/06/2006 12:50:23.951  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31070
 54.9070 -14/06/2006 12:50:23.951  000>> Good datagram received!
 54.9071 -14/06/2006 12:50:23.951  000>> Receive Hello:SYN
 54.9072 -14/06/2006 12:50:23.951  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30643
 54.9073 -14/06/2006 12:50:23.971  000>> 91>>>>>>>>>>Part datagram received!
 54.9074 -14/06/2006 12:50:23.971  000>> 91>>>>>>>>>>Complete!
 54.9075 -14/06/2006 12:50:23.981  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31071
 54.9076 -14/06/2006 12:50:23.981  000>> Good datagram received!
 54.9077 -14/06/2006 12:50:23.981  000>> Receive Hello:ACK
 54.9078 -14/06/2006 12:50:24.082  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9079 -14/06/2006 12:50:24.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30644
 54.9080 -14/06/2006 12:50:24.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30645
 54.9081 -14/06/2006 12:50:24.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30646
 54.9082 -14/06/2006 12:50:24.102  000>> 98>>>>>>>>>>Part datagram received!
 54.9083 -14/06/2006 12:50:24.102  000>> 98>>>>>>>>>>Complete!
 54.9084 -14/06/2006 12:50:24.102  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31072
 54.9085 -14/06/2006 12:50:24.102  000>> Good datagram received!
 54.9086 -14/06/2006 12:50:24.102  000>> Listener:Received dictionary
 54.9087 -14/06/2006 12:50:24.112  000>> 90>>>>>>>>>>Part datagram received!
 54.9088 -14/06/2006 12:50:24.112  000>> 90>>>>>>>>>>Complete!
 54.9089 -14/06/2006 12:50:24.112  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31073
 54.9090 -14/06/2006 12:50:24.112  000>> Good datagram received!
 54.9091 -14/06/2006 12:50:24.112  000>> Listener:Received RIB
 54.9092 -14/06/2006 12:50:24.302  000>> 716>>>>>>>>>>Part datagram received!
 54.9093 -14/06/2006 12:50:24.302  000>> 716>>>>>>>>>>Complete!
 54.9094 -14/06/2006 12:50:24.302  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31074
 54.9095 -14/06/2006 12:50:24.312  000>> Good datagram received!
 54.9096 -14/06/2006 12:50:24.322  000>> Listener:Received Bundle Offer
 54.9097 -14/06/2006 12:50:24.322  000>> Listener:Sending Empty bundle request...
 54.9098 -14/06/2006 12:50:24.322  000>> Listener(receiveBOffer):But we can not restart connection...
 54.9099 -14/06/2006 12:50:24.322  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30647
 54.9100 -14/06/2006 12:50:24.322  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31075
 54.9101 -14/06/2006 12:50:24.322  000>> Good datagram received!
 54.9102 -14/06/2006 12:50:24.322  000>> Initiator:No more requested bundles
 54.9103 -14/06/2006 12:50:24.322  000>> Listener(receiveBundles):We can restart connection...
 54.9104 -14/06/2006 12:50:24.422  000>> Hello Procedure:SENDSYN
 54.9105 -14/06/2006 12:50:24.422  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30648
 54.9106 -14/06/2006 12:50:24.472  000>> 91>>>>>>>>>>Part datagram received!
 54.9107 -14/06/2006 12:50:24.472  000>> 91>>>>>>>>>>Complete!
 54.9108 -14/06/2006 12:50:24.472  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31076
 54.9109 -14/06/2006 12:50:24.472  000>> Good datagram received!
 54.9110 -14/06/2006 12:50:24.472  000>> Receive Hello:SYNACK
 54.9111 -14/06/2006 12:50:24.482  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30649
 54.9112 -14/06/2006 12:50:24.582  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9113 -14/06/2006 12:50:24.582  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30650
 54.9114 -14/06/2006 12:50:24.582  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30651
 54.9115 -14/06/2006 12:50:24.582  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30652
 54.9116 -14/06/2006 12:50:24.592  000>> 98>>>>>>>>>>Part datagram received!
 54.9117 -14/06/2006 12:50:24.592  000>> 98>>>>>>>>>>Complete!
 54.9118 -14/06/2006 12:50:24.592  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31077
 54.9119 -14/06/2006 12:50:24.592  000>> Good datagram received!
 54.9120 -14/06/2006 12:50:24.592  000>> Listener:Received dictionary
 54.9121 -14/06/2006 12:50:24.602  000>> 90>>>>>>>>>>Part datagram received!
 54.9122 -14/06/2006 12:50:24.602  000>> 90>>>>>>>>>>Complete!
 54.9123 -14/06/2006 12:50:24.602  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31078
 54.9124 -14/06/2006 12:50:24.602  000>> Good datagram received!
 54.9125 -14/06/2006 12:50:24.602  000>> Listener:Received RIB
 54.9126 -14/06/2006 12:50:24.703  000>> 716>>>>>>>>>>Part datagram received!
 54.9127 -14/06/2006 12:50:24.703  000>> 716>>>>>>>>>>Complete!
 54.9128 -14/06/2006 12:50:24.703  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31079
 54.9129 -14/06/2006 12:50:24.703  000>> Good datagram received!
 54.9130 -14/06/2006 12:50:24.723  000>> Listener:Received Bundle Offer
 54.9131 -14/06/2006 12:50:24.723  000>> Listener:Sending Empty bundle request...
 54.9132 -14/06/2006 12:50:24.723  000>> Listener(receiveBOffer):But we can not restart connection...
 54.9133 -14/06/2006 12:50:24.723  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30653
 54.9134 -14/06/2006 12:50:24.723  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31080
 54.9135 -14/06/2006 12:50:24.723  000>> Good datagram received!
 54.9136 -14/06/2006 12:50:24.723  000>> Initiator:No more requested bundles
 54.9137 -14/06/2006 12:50:24.723  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.9138 -14/06/2006 12:50:24.843  000>> 91>>>>>>>>>>Part datagram received!
 54.9139 -14/06/2006 12:50:24.843  000>> 91>>>>>>>>>>Complete!
 54.9140 -14/06/2006 12:50:24.843  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31081
 54.9141 -14/06/2006 12:50:24.843  000>> Good datagram received!
 54.9142 -14/06/2006 12:50:24.843  000>> Receive Hello:SYN
 54.9143 -14/06/2006 12:50:24.843  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30654
 54.9144 -14/06/2006 12:50:24.863  000>> 91>>>>>>>>>>Part datagram received!
 54.9145 -14/06/2006 12:50:24.863  000>> 91>>>>>>>>>>Complete!
 54.9146 -14/06/2006 12:50:24.863  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31082
 54.9147 -14/06/2006 12:50:24.863  000>> Good datagram received!
 54.9148 -14/06/2006 12:50:24.873  000>> Receive Hello:ACK
 54.9149 -14/06/2006 12:50:24.973  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9150 -14/06/2006 12:50:24.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30655
 54.9151 -14/06/2006 12:50:24.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30656
 54.9152 -14/06/2006 12:50:24.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30657
 54.9153 -14/06/2006 12:50:25.093  000>> 98>>>>>>>>>>Part datagram received!
 54.9154 -14/06/2006 12:50:25.103  000>> 98>>>>>>>>>>Complete!
 54.9155 -14/06/2006 12:50:25.103  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31083
 54.9156 -14/06/2006 12:50:25.103  000>> Good datagram received!
 54.9157 -14/06/2006 12:50:25.103  000>> Listener:Received dictionary
 54.9158 -14/06/2006 12:50:25.103  000>> 90>>>>>>>>>>Part datagram received!
 54.9159 -14/06/2006 12:50:25.103  000>> 90>>>>>>>>>>Complete!
 54.9160 -14/06/2006 12:50:25.103  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31084
 54.9161 -14/06/2006 12:50:25.103  000>> Good datagram received!
 54.9162 -14/06/2006 12:50:25.113  000>> Listener:Received RIB
 54.9163 -14/06/2006 12:50:25.203  000>> 716>>>>>>>>>>Part datagram received!
 54.9164 -14/06/2006 12:50:25.203  000>> 716>>>>>>>>>>Complete!
 54.9165 -14/06/2006 12:50:25.203  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31085
 54.9166 -14/06/2006 12:50:25.213  000>> Good datagram received!
 54.9167 -14/06/2006 12:50:25.223  000>> Listener:Received Bundle Offer
 54.9168 -14/06/2006 12:50:25.223  000>> Listener:Sending Empty bundle request...
 54.9169 -14/06/2006 12:50:25.223  000>> Listener(receiveBOffer):But we can not restart connection...
 54.9170 -14/06/2006 12:50:25.223  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30658
 54.9171 -14/06/2006 12:50:25.223  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31086
 54.9172 -14/06/2006 12:50:25.223  000>> Good datagram received!
 54.9173 -14/06/2006 12:50:25.223  000>> Initiator:No more requested bundles
 54.9174 -14/06/2006 12:50:25.233  000>> Listener(receiveBundles):We can restart connection...
 54.9175 -14/06/2006 12:50:25.333  000>> Hello Procedure:SENDSYN
 54.9176 -14/06/2006 12:50:25.333  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30659
 54.9177 -14/06/2006 12:50:25.374  000>> 91>>>>>>>>>>Part datagram received!
 54.9178 -14/06/2006 12:50:25.374  000>> 91>>>>>>>>>>Complete!
 54.9179 -14/06/2006 12:50:25.374  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31087
 54.9180 -14/06/2006 12:50:25.374  000>> Good datagram received!
 54.9181 -14/06/2006 12:50:25.374  000>> Receive Hello:SYNACK
 54.9182 -14/06/2006 12:50:25.384  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30660
 54.9183 -14/06/2006 12:50:25.484  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9184 -14/06/2006 12:50:25.484  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30661
 54.9185 -14/06/2006 12:50:25.484  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30662
 54.9186 -14/06/2006 12:50:25.484  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30663
 54.9187 -14/06/2006 12:50:25.514  000>> 98>>>>>>>>>>Part datagram received!
 54.9188 -14/06/2006 12:50:25.514  000>> 98>>>>>>>>>>Complete!
 54.9189 -14/06/2006 12:50:25.514  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31088
 54.9190 -14/06/2006 12:50:25.514  000>> Good datagram received!
 54.9191 -14/06/2006 12:50:25.524  000>> Listener:Received dictionary
 54.9192 -14/06/2006 12:50:25.534  000>> 728>>>>>>>>>>Part datagram received!
 54.9193 -14/06/2006 12:50:25.534  000>> 728>>>>>>>>>>Complete!
 54.9194 -14/06/2006 12:50:25.534  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31089
 54.9195 -14/06/2006 12:50:25.534  000>> Good datagram received!
 54.9196 -14/06/2006 12:50:25.534  000>> Listener:Received RIB
 54.9197 -14/06/2006 12:50:25.534  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31090
 54.9198 -14/06/2006 12:50:25.534  000>> Good datagram received!
 54.9199 -14/06/2006 12:50:25.554  000>> Listener:Received Bundle Offer
 54.9200 -14/06/2006 12:50:25.554  000>> Listener:Sending Empty bundle request...
 54.9201 -14/06/2006 12:50:25.554  000>> Listener(receiveBOffer):But we can not restart connection...
 54.9202 -14/06/2006 12:50:25.554  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30664
 54.9203 -14/06/2006 12:50:25.634  000>> 78>>>>>>>>>>Part datagram received!
 54.9204 -14/06/2006 12:50:25.634  000>> 78>>>>>>>>>>Complete!
 54.9205 -14/06/2006 12:50:25.634  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31091
 54.9206 -14/06/2006 12:50:25.634  000>> Good datagram received!
 54.9207 -14/06/2006 12:50:25.644  000>> Initiator:No more requested bundles
 54.9208 -14/06/2006 12:50:25.644  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.9209 -14/06/2006 12:50:25.724  000>> 91>>>>>>>>>>Part datagram received!
 54.9210 -14/06/2006 12:50:25.724  000>> 91>>>>>>>>>>Complete!
 54.9211 -14/06/2006 12:50:25.724  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31092
 54.9212 -14/06/2006 12:50:25.724  000>> Good datagram received!
 54.9213 -14/06/2006 12:50:25.724  000>> Receive Hello:SYN
 54.9214 -14/06/2006 12:50:25.724  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30665
 54.9215 -14/06/2006 12:50:25.744  000>> 91>>>>>>>>>>Part datagram received!
 54.9216 -14/06/2006 12:50:25.744  000>> 91>>>>>>>>>>Complete!
 54.9217 -14/06/2006 12:50:25.744  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31093
 54.9218 -14/06/2006 12:50:25.744  000>> Good datagram received!
 54.9219 -14/06/2006 12:50:25.744  000>> Receive Hello:ACK
 54.9220 -14/06/2006 12:50:25.844  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9221 -14/06/2006 12:50:25.844  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30666
 54.9222 -14/06/2006 12:50:25.844  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30667
 54.9223 -14/06/2006 12:50:25.844  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30668
 54.9224 -14/06/2006 12:50:25.864  000>> 98>>>>>>>>>>Part datagram received!
 54.9225 -14/06/2006 12:50:25.864  000>> 98>>>>>>>>>>Complete!
 54.9226 -14/06/2006 12:50:25.864  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31094
 54.9227 -14/06/2006 12:50:25.874  000>> Good datagram received!
 54.9228 -14/06/2006 12:50:25.874  000>> Listener:Received dictionary
 54.9229 -14/06/2006 12:50:25.874  000>> 90>>>>>>>>>>Part datagram received!
 54.9230 -14/06/2006 12:50:25.874  000>> 90>>>>>>>>>>Complete!
 54.9231 -14/06/2006 12:50:25.874  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31095
 54.9232 -14/06/2006 12:50:25.874  000>> Good datagram received!
 54.9233 -14/06/2006 12:50:25.874  000>> Listener:Received RIB
 54.9234 -14/06/2006 12:50:26.004  000>> 716>>>>>>>>>>Part datagram received!
 54.9235 -14/06/2006 12:50:26.014  000>> 716>>>>>>>>>>Complete!
 54.9236 -14/06/2006 12:50:26.014  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31096
 54.9237 -14/06/2006 12:50:26.014  000>> Good datagram received!
 54.9238 -14/06/2006 12:50:26.024  000>> Listener:Received Bundle Offer
 54.9239 -14/06/2006 12:50:26.024  000>> Listener:Sending Empty bundle request...
 54.9240 -14/06/2006 12:50:26.024  000>> Listener(receiveBOffer):But we can not restart connection...
 54.9241 -14/06/2006 12:50:26.024  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30669
 54.9242 -14/06/2006 12:50:26.024  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31097
 54.9243 -14/06/2006 12:50:26.034  000>> Good datagram received!
 54.9244 -14/06/2006 12:50:26.034  000>> Initiator:No more requested bundles
 54.9245 -14/06/2006 12:50:26.034  000>> Listener(receiveBundles):We can restart connection...
 54.9246 -14/06/2006 12:50:26.135  000>> Hello Procedure:SENDSYN
 54.9247 -14/06/2006 12:50:26.135  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30670
 54.9248 -14/06/2006 12:50:26.175  000>> 91>>>>>>>>>>Part datagram received!
 54.9249 -14/06/2006 12:50:26.175  000>> 91>>>>>>>>>>Complete!
 54.9250 -14/06/2006 12:50:26.175  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31098
 54.9251 -14/06/2006 12:50:26.175  000>> Good datagram received!
 54.9252 -14/06/2006 12:50:26.175  000>> Receive Hello:SYNACK
 54.9253 -14/06/2006 12:50:26.175  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30671
 54.9254 -14/06/2006 12:50:26.275  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9255 -14/06/2006 12:50:26.275  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30672
 54.9256 -14/06/2006 12:50:26.275  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30673
 54.9257 -14/06/2006 12:50:26.275  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30674
 54.9258 -14/06/2006 12:50:26.295  000>> 98>>>>>>>>>>Part datagram received!
 54.9259 -14/06/2006 12:50:26.295  000>> 98>>>>>>>>>>Complete!
 54.9260 -14/06/2006 12:50:26.295  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31099
 54.9261 -14/06/2006 12:50:26.295  000>> Good datagram received!
 54.9262 -14/06/2006 12:50:26.295  000>> Listener:Received dictionary
 54.9263 -14/06/2006 12:50:26.305  000>> 90>>>>>>>>>>Part datagram received!
 54.9264 -14/06/2006 12:50:26.305  000>> 90>>>>>>>>>>Complete!
 54.9265 -14/06/2006 12:50:26.305  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31100
 54.9266 -14/06/2006 12:50:26.305  000>> Good datagram received!
 54.9267 -14/06/2006 12:50:26.305  000>> Listener:Received RIB
 54.9268 -14/06/2006 12:50:26.415  000>> 716>>>>>>>>>>Part datagram received!
 54.9269 -14/06/2006 12:50:26.415  000>> 716>>>>>>>>>>Complete!
 54.9270 -14/06/2006 12:50:26.415  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31101
 54.9271 -14/06/2006 12:50:26.415  000>> Good datagram received!
 54.9272 -14/06/2006 12:50:26.425  000>> Listener:Received Bundle Offer
 54.9273 -14/06/2006 12:50:26.425  000>> Listener:Sending Empty bundle request...
 54.9274 -14/06/2006 12:50:26.425  000>> Listener(receiveBOffer):But we can not restart connection...
 54.9275 -14/06/2006 12:50:26.425  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30675
 54.9276 -14/06/2006 12:50:26.435  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31102
 54.9277 -14/06/2006 12:50:26.435  000>> Good datagram received!
 54.9278 -14/06/2006 12:50:26.435  000>> Initiator:No more requested bundles
 54.9279 -14/06/2006 12:50:26.435  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.9280 -14/06/2006 12:50:26.555  000>> 91>>>>>>>>>>Part datagram received!
 54.9281 -14/06/2006 12:50:26.555  000>> 91>>>>>>>>>>Complete!
 54.9282 -14/06/2006 12:50:26.555  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31103
 54.9283 -14/06/2006 12:50:26.555  000>> Good datagram received!
 54.9284 -14/06/2006 12:50:26.555  000>> Receive Hello:SYN
 54.9285 -14/06/2006 12:50:26.555  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30676
 54.9286 -14/06/2006 12:50:26.585  000>> 91>>>>>>>>>>Part datagram received!
 54.9287 -14/06/2006 12:50:26.585  000>> 91>>>>>>>>>>Complete!
 54.9288 -14/06/2006 12:50:26.585  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31104
 54.9289 -14/06/2006 12:50:26.585  000>> Good datagram received!
 54.9290 -14/06/2006 12:50:26.585  000>> Receive Hello:ACK
 54.9291 -14/06/2006 12:50:26.685  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9292 -14/06/2006 12:50:26.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30677
 54.9293 -14/06/2006 12:50:26.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30678
 54.9294 -14/06/2006 12:50:26.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30679
 54.9295 -14/06/2006 12:50:26.685  000>> 98>>>>>>>>>>Part datagram received!
 54.9296 -14/06/2006 12:50:26.685  000>> 98>>>>>>>>>>Complete!
 54.9297 -14/06/2006 12:50:26.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31105
 54.9298 -14/06/2006 12:50:26.685  000>> Good datagram received!
 54.9299 -14/06/2006 12:50:26.695  000>> Listener:Received dictionary
 54.9300 -14/06/2006 12:50:26.695  000>> 90>>>>>>>>>>Part datagram received!
 54.9301 -14/06/2006 12:50:26.695  000>> 90>>>>>>>>>>Complete!
 54.9302 -14/06/2006 12:50:26.695  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31106
 54.9303 -14/06/2006 12:50:26.695  000>> Good datagram received!
 54.9304 -14/06/2006 12:50:26.695  000>> Listener:Received RIB
 54.9305 -14/06/2006 12:50:26.695  000>> 0>>>>>>>>>>Part datagram received!
 54.9306 -14/06/2006 12:50:26.695  000>> 0>>>>>>>>>>Part datagram received!
 54.9307 -14/06/2006 12:50:26.695  000>> 638>>>>>>>>>>Part datagram received!
 54.9308 -14/06/2006 12:50:26.695  000>> 638>>>>>>>>>>Complete!
 54.9309 -14/06/2006 12:50:26.705  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31107
 54.9310 -14/06/2006 12:50:26.705  000>> Good datagram received!
 54.9311 -14/06/2006 12:50:26.715  000>> Listener:Received Bundle Offer
 54.9312 -14/06/2006 12:50:26.715  000>> Listener:Sending Empty bundle request...
 54.9313 -14/06/2006 12:50:26.715  000>> Listener(receiveBOffer):But we can not restart connection...
 54.9314 -14/06/2006 12:50:26.715  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30680
 54.9315 -14/06/2006 12:50:26.796  000>> 78>>>>>>>>>>Part datagram received!
 54.9316 -14/06/2006 12:50:26.796  000>> 78>>>>>>>>>>Complete!
 54.9317 -14/06/2006 12:50:26.796  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31108
 54.9318 -14/06/2006 12:50:26.796  000>> Good datagram received!
 54.9319 -14/06/2006 12:50:26.806  000>> Initiator:No more requested bundles
 54.9320 -14/06/2006 12:50:26.806  000>> Listener(receiveBundles):We can restart connection...
 54.9321 -14/06/2006 12:50:26.906  000>> Hello Procedure:SENDSYN
 54.9322 -14/06/2006 12:50:26.906  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30681
 54.9323 -14/06/2006 12:50:26.926  000>> 91>>>>>>>>>>Part datagram received!
 54.9324 -14/06/2006 12:50:26.926  000>> 91>>>>>>>>>>Complete!
 54.9325 -14/06/2006 12:50:26.926  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31109
 54.9326 -14/06/2006 12:50:26.926  000>> Good datagram received!
 54.9327 -14/06/2006 12:50:26.926  000>> Receive Hello:SYNACK
 54.9328 -14/06/2006 12:50:26.926  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30682
 54.9329 -14/06/2006 12:50:27.026  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9330 -14/06/2006 12:50:27.026  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30683
 54.9331 -14/06/2006 12:50:27.026  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30684
 54.9332 -14/06/2006 12:50:27.026  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30685
 54.9333 -14/06/2006 12:50:27.136  000>> 78>>>>>>>>>>Part datagram received!
 54.9334 -14/06/2006 12:50:27.136  000>> 78>>>>>>>>>>Complete!
 54.9335 -14/06/2006 12:50:27.136  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31110
 54.9336 -14/06/2006 12:50:27.146  000>> Good datagram received!
 54.9337 -14/06/2006 12:50:27.146  000>> Initiator:No more requested bundles
 54.9338 -14/06/2006 12:50:27.146  000>> Initiator:But we can not restart connection...
 54.9339 -14/06/2006 12:50:27.316  000>> 826>>>>>>>>>>Part datagram received!
 54.9340 -14/06/2006 12:50:27.316  000>> 826>>>>>>>>>>Complete!
 54.9341 -14/06/2006 12:50:27.316  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31111
 54.9342 -14/06/2006 12:50:27.316  000>> Good datagram received!
 54.9343 -14/06/2006 12:50:27.316  000>> Listener:Received dictionary
 54.9344 -14/06/2006 12:50:27.316  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31112
 54.9345 -14/06/2006 12:50:27.316  000>> Good datagram received!
 54.9346 -14/06/2006 12:50:27.316  000>> Listener:Received RIB
 54.9347 -14/06/2006 12:50:27.326  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31113
 54.9348 -14/06/2006 12:50:27.326  000>> Good datagram received!
 54.9349 -14/06/2006 12:50:27.336  000>> Listener:Received Bundle Offer
 54.9350 -14/06/2006 12:50:27.336  000>> Listener:Sending Empty bundle request...
 54.9351 -14/06/2006 12:50:27.336  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.9352 -14/06/2006 12:50:27.336  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30686
 54.9353 -14/06/2006 12:50:27.467  000>> 91>>>>>>>>>>Part datagram received!
 54.9354 -14/06/2006 12:50:27.467  000>> 91>>>>>>>>>>Complete!
 54.9355 -14/06/2006 12:50:27.467  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31114
 54.9356 -14/06/2006 12:50:27.467  000>> Good datagram received!
 54.9357 -14/06/2006 12:50:27.467  000>> Receive Hello:SYN
 54.9358 -14/06/2006 12:50:27.467  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30687
 54.9359 -14/06/2006 12:50:27.487  000>> 91>>>>>>>>>>Part datagram received!
 54.9360 -14/06/2006 12:50:27.487  000>> 91>>>>>>>>>>Complete!
 54.9361 -14/06/2006 12:50:27.497  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31115
 54.9362 -14/06/2006 12:50:27.497  000>> Good datagram received!
 54.9363 -14/06/2006 12:50:27.497  000>> Receive Hello:ACK
 54.9364 -14/06/2006 12:50:27.597  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9365 -14/06/2006 12:50:27.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30688
 54.9366 -14/06/2006 12:50:27.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30689
 54.9367 -14/06/2006 12:50:27.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30690
 54.9368 -14/06/2006 12:50:27.597  000>> 98>>>>>>>>>>Part datagram received!
 54.9369 -14/06/2006 12:50:27.597  000>> 98>>>>>>>>>>Complete!
 54.9370 -14/06/2006 12:50:27.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31116
 54.9371 -14/06/2006 12:50:27.607  000>> Good datagram received!
 54.9372 -14/06/2006 12:50:27.607  000>> Listener:Received dictionary
 54.9373 -14/06/2006 12:50:27.607  000>> 90>>>>>>>>>>Part datagram received!
 54.9374 -14/06/2006 12:50:27.607  000>> 90>>>>>>>>>>Complete!
 54.9375 -14/06/2006 12:50:27.607  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31117
 54.9376 -14/06/2006 12:50:27.607  000>> Good datagram received!
 54.9377 -14/06/2006 12:50:27.607  000>> Listener:Received RIB
 54.9378 -14/06/2006 12:50:27.717  000>> 716>>>>>>>>>>Part datagram received!
 54.9379 -14/06/2006 12:50:27.717  000>> 716>>>>>>>>>>Complete!
 54.9380 -14/06/2006 12:50:27.717  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31118
 54.9381 -14/06/2006 12:50:27.717  000>> Good datagram received!
 54.9382 -14/06/2006 12:50:27.727  000>> Listener:Received Bundle Offer
 54.9383 -14/06/2006 12:50:27.727  000>> Listener:Sending Empty bundle request...
 54.9384 -14/06/2006 12:50:27.727  000>> Listener(receiveBOffer):But we can not restart connection...
 54.9385 -14/06/2006 12:50:27.737  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30691
 54.9386 -14/06/2006 12:50:27.737  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31119
 54.9387 -14/06/2006 12:50:27.737  000>> Good datagram received!
 54.9388 -14/06/2006 12:50:27.737  000>> Initiator:No more requested bundles
 54.9389 -14/06/2006 12:50:27.737  000>> Listener(receiveBundles):We can restart connection...
 54.9390 -14/06/2006 12:50:27.837  000>> Hello Procedure:SENDSYN
 54.9391 -14/06/2006 12:50:27.837  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30692
 54.9392 -14/06/2006 12:50:27.877  000>> 91>>>>>>>>>>Part datagram received!
 54.9393 -14/06/2006 12:50:27.877  000>> 91>>>>>>>>>>Complete!
 54.9394 -14/06/2006 12:50:27.877  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31120
 54.9395 -14/06/2006 12:50:27.877  000>> Good datagram received!
 54.9396 -14/06/2006 12:50:27.877  000>> Receive Hello:SYNACK
 54.9397 -14/06/2006 12:50:27.887  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30693
 54.9398 -14/06/2006 12:50:27.987  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9399 -14/06/2006 12:50:27.987  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30694
 54.9400 -14/06/2006 12:50:27.987  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30695
 54.9401 -14/06/2006 12:50:27.987  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30696
 54.9402 -14/06/2006 12:50:28.137  000>> 78>>>>>>>>>>Part datagram received!
 54.9403 -14/06/2006 12:50:28.137  000>> 78>>>>>>>>>>Complete!
 54.9404 -14/06/2006 12:50:28.137  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31121
 54.9405 -14/06/2006 12:50:28.137  000>> Good datagram received!
 54.9406 -14/06/2006 12:50:28.137  000>> Initiator:No more requested bundles
 54.9407 -14/06/2006 12:50:28.137  000>> Initiator:But we can not restart connection...
 54.9408 -14/06/2006 12:50:28.318  000>> 826>>>>>>>>>>Part datagram received!
 54.9409 -14/06/2006 12:50:28.318  000>> 826>>>>>>>>>>Complete!
 54.9410 -14/06/2006 12:50:28.318  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31122
 54.9411 -14/06/2006 12:50:28.318  000>> Good datagram received!
 54.9412 -14/06/2006 12:50:28.318  000>> Listener:Received dictionary
 54.9413 -14/06/2006 12:50:28.318  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31123
 54.9414 -14/06/2006 12:50:28.318  000>> Good datagram received!
 54.9415 -14/06/2006 12:50:28.318  000>> Listener:Received RIB
 54.9416 -14/06/2006 12:50:28.328  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31124
 54.9417 -14/06/2006 12:50:28.328  000>> Good datagram received!
 54.9418 -14/06/2006 12:50:28.338  000>> Listener:Received Bundle Offer
 54.9419 -14/06/2006 12:50:28.338  000>> Listener:Sending Empty bundle request...
 54.9420 -14/06/2006 12:50:28.338  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.9421 -14/06/2006 12:50:28.338  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30697
 54.9422 -14/06/2006 12:50:28.468  000>> 91>>>>>>>>>>Part datagram received!
 54.9423 -14/06/2006 12:50:28.468  000>> 91>>>>>>>>>>Complete!
 54.9424 -14/06/2006 12:50:28.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31125
 54.9425 -14/06/2006 12:50:28.468  000>> Good datagram received!
 54.9426 -14/06/2006 12:50:28.468  000>> Receive Hello:SYN
 54.9427 -14/06/2006 12:50:28.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30698
 54.9428 -14/06/2006 12:50:28.488  000>> 91>>>>>>>>>>Part datagram received!
 54.9429 -14/06/2006 12:50:28.488  000>> 91>>>>>>>>>>Complete!
 54.9430 -14/06/2006 12:50:28.488  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31126
 54.9431 -14/06/2006 12:50:28.488  000>> Good datagram received!
 54.9432 -14/06/2006 12:50:28.498  000>> Receive Hello:ACK
 54.9433 -14/06/2006 12:50:28.598  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9434 -14/06/2006 12:50:28.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30699
 54.9435 -14/06/2006 12:50:28.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30700
 54.9436 -14/06/2006 12:50:28.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30701
 54.9437 -14/06/2006 12:50:28.598  000>> 98>>>>>>>>>>Part datagram received!
 54.9438 -14/06/2006 12:50:28.598  000>> 98>>>>>>>>>>Complete!
 54.9439 -14/06/2006 12:50:28.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31127
 54.9440 -14/06/2006 12:50:28.608  000>> Good datagram received!
 54.9441 -14/06/2006 12:50:28.608  000>> Listener:Received dictionary
 54.9442 -14/06/2006 12:50:28.608  000>> 90>>>>>>>>>>Part datagram received!
 54.9443 -14/06/2006 12:50:28.608  000>> 90>>>>>>>>>>Complete!
 54.9444 -14/06/2006 12:50:28.608  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31128
 54.9445 -14/06/2006 12:50:28.608  000>> Good datagram received!
 54.9446 -14/06/2006 12:50:28.608  000>> Listener:Received RIB
 54.9447 -14/06/2006 12:50:28.718  000>> 716>>>>>>>>>>Part datagram received!
 54.9448 -14/06/2006 12:50:28.718  000>> 716>>>>>>>>>>Complete!
 54.9449 -14/06/2006 12:50:28.718  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31129
 54.9450 -14/06/2006 12:50:28.718  000>> Good datagram received!
 54.9451 -14/06/2006 12:50:28.738  000>> Listener:Received Bundle Offer
 54.9452 -14/06/2006 12:50:28.738  000>> Listener:Sending Empty bundle request...
 54.9453 -14/06/2006 12:50:28.738  000>> Listener(receiveBOffer):But we can not restart connection...
 54.9454 -14/06/2006 12:50:28.738  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30702
 54.9455 -14/06/2006 12:50:28.738  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31130
 54.9456 -14/06/2006 12:50:28.738  000>> Good datagram received!
 54.9457 -14/06/2006 12:50:28.738  000>> Initiator:No more requested bundles
 54.9458 -14/06/2006 12:50:28.738  000>> Listener(receiveBundles):We can restart connection...
 54.9459 -14/06/2006 12:50:28.838  000>> Hello Procedure:SENDSYN
 54.9460 -14/06/2006 12:50:28.838  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30703
 54.9461 -14/06/2006 12:50:28.879  000>> 91>>>>>>>>>>Part datagram received!
 54.9462 -14/06/2006 12:50:28.879  000>> 91>>>>>>>>>>Complete!
 54.9463 -14/06/2006 12:50:28.879  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31131
 54.9464 -14/06/2006 12:50:28.879  000>> Good datagram received!
 54.9465 -14/06/2006 12:50:28.879  000>> Receive Hello:SYNACK
 54.9466 -14/06/2006 12:50:28.889  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30704
 54.9467 -14/06/2006 12:50:28.989  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9468 -14/06/2006 12:50:28.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30705
 54.9469 -14/06/2006 12:50:28.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30706
 54.9470 -14/06/2006 12:50:28.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30707
 54.9471 -14/06/2006 12:50:29.139  000>> 78>>>>>>>>>>Part datagram received!
 54.9472 -14/06/2006 12:50:29.139  000>> 78>>>>>>>>>>Complete!
 54.9473 -14/06/2006 12:50:29.139  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31132
 54.9474 -14/06/2006 12:50:29.139  000>> Good datagram received!
 54.9475 -14/06/2006 12:50:29.139  000>> Initiator:No more requested bundles
 54.9476 -14/06/2006 12:50:29.139  000>> Initiator:But we can not restart connection...
 54.9477 -14/06/2006 12:50:29.319  000>> 826>>>>>>>>>>Part datagram received!
 54.9478 -14/06/2006 12:50:29.319  000>> 826>>>>>>>>>>Complete!
 54.9479 -14/06/2006 12:50:29.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31133
 54.9480 -14/06/2006 12:50:29.319  000>> Good datagram received!
 54.9481 -14/06/2006 12:50:29.319  000>> Listener:Received dictionary
 54.9482 -14/06/2006 12:50:29.329  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31134
 54.9483 -14/06/2006 12:50:29.329  000>> Good datagram received!
 54.9484 -14/06/2006 12:50:29.329  000>> Listener:Received RIB
 54.9485 -14/06/2006 12:50:29.329  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31135
 54.9486 -14/06/2006 12:50:29.329  000>> Good datagram received!
 54.9487 -14/06/2006 12:50:29.339  000>> Listener:Received Bundle Offer
 54.9488 -14/06/2006 12:50:29.339  000>> Listener:Sending Empty bundle request...
 54.9489 -14/06/2006 12:50:29.339  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
 54.9490 -14/06/2006 12:50:29.339  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30708
 54.9491 -14/06/2006 12:50:29.499  000>> 91>>>>>>>>>>Part datagram received!
 54.9492 -14/06/2006 12:50:29.499  000>> 91>>>>>>>>>>Complete!
 54.9493 -14/06/2006 12:50:29.499  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31136
 54.9494 -14/06/2006 12:50:29.499  000>> Good datagram received!
 54.9495 -14/06/2006 12:50:29.499  000>> Receive Hello:SYN
 54.9496 -14/06/2006 12:50:29.499  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30709
 54.9497 -14/06/2006 12:50:29.519  000>> 91>>>>>>>>>>Part datagram received!
 54.9498 -14/06/2006 12:50:29.519  000>> 91>>>>>>>>>>Complete!
 54.9499 -14/06/2006 12:50:29.519  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31137
 54.9500 -14/06/2006 12:50:29.529  000>> Good datagram received!
 54.9501 -14/06/2006 12:50:29.529  000>> Receive Hello:ACK
 54.9502 -14/06/2006 12:50:29.630  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9503 -14/06/2006 12:50:29.630  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30710
 54.9504 -14/06/2006 12:50:29.630  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30711
 54.9505 -14/06/2006 12:50:29.630  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30712
 54.9506 -14/06/2006 12:50:29.640  000>> 98>>>>>>>>>>Part datagram received!
 54.9507 -14/06/2006 12:50:29.640  000>> 98>>>>>>>>>>Complete!
 54.9508 -14/06/2006 12:50:29.640  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31138
 54.9509 -14/06/2006 12:50:29.640  000>> Good datagram received!
 54.9510 -14/06/2006 12:50:29.640  000>> Listener:Received dictionary
 54.9511 -14/06/2006 12:50:29.650  000>> 90>>>>>>>>>>Part datagram received!
 54.9512 -14/06/2006 12:50:29.650  000>> 90>>>>>>>>>>Complete!
 54.9513 -14/06/2006 12:50:29.650  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31139
 54.9514 -14/06/2006 12:50:29.650  000>> Good datagram received!
 54.9515 -14/06/2006 12:50:29.650  000>> Listener:Received RIB
 54.9516 -14/06/2006 12:50:29.870  000>> 716>>>>>>>>>>Part datagram received!
 54.9517 -14/06/2006 12:50:29.870  000>> 716>>>>>>>>>>Complete!
 54.9518 -14/06/2006 12:50:29.870  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31140
 54.9519 -14/06/2006 12:50:29.870  000>> Good datagram received!
 54.9520 -14/06/2006 12:50:29.880  000>> Listener:Received Bundle Offer
 54.9521 -14/06/2006 12:50:29.880  000>> Listener:Sending Empty bundle request...
 54.9522 -14/06/2006 12:50:29.880  000>> Listener(receiveBOffer):But we can not restart connection...
 54.9523 -14/06/2006 12:50:29.880  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30713
 54.9524 -14/06/2006 12:50:29.890  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31141
 54.9525 -14/06/2006 12:50:29.890  000>> Good datagram received!
 54.9526 -14/06/2006 12:50:29.890  000>> Initiator:No more requested bundles
 54.9527 -14/06/2006 12:50:29.890  000>> Listener(receiveBundles):We can restart connection...
 54.9528 -14/06/2006 12:50:29.990  000>> Hello Procedure:SENDSYN
 54.9529 -14/06/2006 12:50:29.990  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30714
 54.9530 -14/06/2006 12:50:30.110  000>> 91>>>>>>>>>>Part datagram received!
 54.9531 -14/06/2006 12:50:30.110  000>> 91>>>>>>>>>>Complete!
 54.9532 -14/06/2006 12:50:30.110  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31142
 54.9533 -14/06/2006 12:50:30.110  000>> Good datagram received!
 54.9534 -14/06/2006 12:50:30.110  000>> Receive Hello:SYNACK
 54.9535 -14/06/2006 12:50:30.110  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30715
 54.9536 -14/06/2006 12:50:30.210  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9537 -14/06/2006 12:50:30.210  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30716
 54.9538 -14/06/2006 12:50:30.210  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30717
 54.9539 -14/06/2006 12:50:30.210  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30718
 54.9540 -14/06/2006 12:50:30.240  000>> 98>>>>>>>>>>Part datagram received!
 54.9541 -14/06/2006 12:50:30.240  000>> 98>>>>>>>>>>Complete!
 54.9542 -14/06/2006 12:50:30.240  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31143
 54.9543 -14/06/2006 12:50:30.240  000>> Good datagram received!
 54.9544 -14/06/2006 12:50:30.240  000>> Listener:Received dictionary
 54.9545 -14/06/2006 12:50:30.251  000>> 90>>>>>>>>>>Part datagram received!
 54.9546 -14/06/2006 12:50:30.251  000>> 90>>>>>>>>>>Complete!
 54.9547 -14/06/2006 12:50:30.251  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31144
 54.9548 -14/06/2006 12:50:30.251  000>> Good datagram received!
 54.9549 -14/06/2006 12:50:30.251  000>> Listener:Received RIB
 54.9550 -14/06/2006 12:50:30.421  000>> 716>>>>>>>>>>Part datagram received!
 54.9551 -14/06/2006 12:50:30.421  000>> 716>>>>>>>>>>Complete!
 54.9552 -14/06/2006 12:50:30.421  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31145
 54.9553 -14/06/2006 12:50:30.431  000>> Good datagram received!
 54.9554 -14/06/2006 12:50:30.441  000>> Listener:Received Bundle Offer
 54.9555 -14/06/2006 12:50:30.441  000>> Listener:Sending Empty bundle request...
 54.9556 -14/06/2006 12:50:30.441  000>> Listener(receiveBOffer):But we can not restart connection...
 54.9557 -14/06/2006 12:50:30.441  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30719
 54.9558 -14/06/2006 12:50:30.441  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31146
 54.9559 -14/06/2006 12:50:30.441  000>> Good datagram received!
 54.9560 -14/06/2006 12:50:30.441  000>> Initiator:No more requested bundles
 54.9561 -14/06/2006 12:50:30.441  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 54.9562 -14/06/2006 12:50:30.571  000>> 91>>>>>>>>>>Part datagram received!
 54.9563 -14/06/2006 12:50:30.571  000>> 91>>>>>>>>>>Complete!
 54.9564 -14/06/2006 12:50:30.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31147
 54.9565 -14/06/2006 12:50:30.571  000>> Good datagram received!
 54.9566 -14/06/2006 12:50:30.571  000>> Receive Hello:SYN
 54.9567 -14/06/2006 12:50:30.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30720
 54.9568 -14/06/2006 12:50:30.591  000>> 91>>>>>>>>>>Part datagram received!
 54.9569 -14/06/2006 12:50:30.591  000>> 91>>>>>>>>>>Complete!
 54.9570 -14/06/2006 12:50:30.601  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31148
 54.9571 -14/06/2006 12:50:30.601  000>> Good datagram received!
 54.9572 -14/06/2006 12:50:30.601  000>> Receive Hello:ACK
 54.9573 -14/06/2006 12:50:30.701  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 54.9574 -14/06/2006 12:50:30.701  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30721
 54.9575 -14/06/2006 12:50:30.701  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30722
 54.9576 -14/06/2006 12:50:30.701  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30723
 54.9577 -14/06/2006 12:50:30.701  000>> 98>>>>>>>>>>Part datagram received!
 54.9578 -14/06/2006 12:50:30.701  000>> 98>>>>>>>>>>Complete!
 54.9579 -14/06/2006 12:50:30.701  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31149
 54.9580 -14/06/2006 12:50:30.701  000>> Good datagram received!
 54.9581 -14/06/2006 12:50:30.701  000>> Listener:Received dictionary
 54.9582 -14/06/2006 12:50:30.711  000>> >>>>>>>>>>>>Error:1
 54.9583 -14/06/2006 12:50:30.711  000>> >>>>>>>>>>>>Disconected!
 54.9584 -14/06/2006 12:50:30.751  888>> 0
 54.9585 -14/06/2006 12:50:59.833  000>> Connection removed:192.168.10.50Deleting connectinon!
 54.9586 -14/06/2006 12:50:59.833  888>> Destructor
    55.1 Binary file Win32/prophet.ncb has changed
    56.1 Binary file Win32/prophet.opt has changed
    57.1 --- a/Win32/prophet.plg	Wed Jan 03 09:17:10 2007 +0000
    57.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    57.3 @@ -1,54 +0,0 @@
    57.4 -<html>
    57.5 -<body>
    57.6 -<pre>
    57.7 -<h1>Build Log</h1>
    57.8 -<h3>
    57.9 ---------------------Configuration: prophet - Win32 Release--------------------
   57.10 -</h3>
   57.11 -<h3>Command Lines</h3>
   57.12 -Creating temporary file "C:\DOCUME~1\Samo\LOCALS~1\Temp\RSP503.tmp" with contents
   57.13 -[
   57.14 -"C:\Qt\4.0.1\lib\qtmain.lib" "C:\Qt\4.0.1\lib\QtCore4.lib" "C:\Qt\4.0.1\lib\QtGui4.lib" "C:\Qt\4.0.1\lib\QtNetwork4.lib" /nologo /subsystem:windows /incremental:yes /pdb:"release/prophet.pdb" /machine:IX86 /out:"release/prophet.exe" /libpath:"C:\Qt\4.0.1\lib" 
   57.15 -.\release\DTNInterface.obj
   57.16 -.\release\bundle.obj
   57.17 -.\release\bundleManager.obj
   57.18 -.\release\connection.obj
   57.19 -.\release\dataPacket.obj
   57.20 -.\release\debugWidget.obj
   57.21 -.\release\hello.obj
   57.22 -.\release\main.obj
   57.23 -.\release\messageFile.obj
   57.24 -.\release\msgWidget.obj
   57.25 -.\release\neighbourAwareness.obj
   57.26 -.\release\node.obj
   57.27 -.\release\nodeManager.obj
   57.28 -.\release\readFile.obj
   57.29 -.\release\tcpClient.obj
   57.30 -.\release\tlv.obj
   57.31 -.\release\moc_DTNInterface.obj
   57.32 -.\release\moc_bundle.obj
   57.33 -.\release\moc_bundleManager.obj
   57.34 -.\release\moc_connection.obj
   57.35 -.\release\moc_dataPacket.obj
   57.36 -.\release\moc_debugWidget.obj
   57.37 -.\release\moc_hello.obj
   57.38 -.\release\moc_messageFile.obj
   57.39 -.\release\moc_msgWidget.obj
   57.40 -.\release\moc_neighbourAwareness.obj
   57.41 -.\release\moc_node.obj
   57.42 -.\release\moc_nodeManager.obj
   57.43 -.\release\moc_readFile.obj
   57.44 -.\release\moc_tcpClient.obj
   57.45 -.\release\moc_tlv.obj
   57.46 -]
   57.47 -Creating command line "link.exe @C:\DOCUME~1\Samo\LOCALS~1\Temp\RSP503.tmp"
   57.48 -<h3>Output Window</h3>
   57.49 -Linking...
   57.50 -
   57.51 -
   57.52 -
   57.53 -<h3>Results</h3>
   57.54 -prophet.exe - 0 error(s), 0 warning(s)
   57.55 -</pre>
   57.56 -</body>
   57.57 -</html>
    58.1 --- a/Win32/prophet.pro	Wed Jan 03 09:17:10 2007 +0000
    58.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    58.3 @@ -1,45 +0,0 @@
    58.4 -######################################################################
    58.5 -# Automatically generated by qmake (2.00a) Mon May 8 16:48:24 2006
    58.6 -######################################################################
    58.7 -TEMPLATE = app
    58.8 -QT+=gui network
    58.9 -QT-=
   58.10 -TARGET += 
   58.11 -DEPENDPATH += .
   58.12 -INCLUDEPATH += .
   58.13 -CONFIG += qt release
   58.14 -# Input
   58.15 -HEADERS += 	neighbourAwareness.h\
   58.16 -			bundle.h \
   58.17 -        		msgWidget.h \
   58.18 -			bundleManager.h \
   58.19 -			debugWidget.h \
   58.20 -			node.h \
   58.21 -			nodeManager.h \
   58.22 -			connection.h \
   58.23 -			tlv.h \
   58.24 -			messageFile.h \
   58.25 -			hello.h \				
   58.26 -			main.h \	   
   58.27 -			dataPacket.h \
   58.28 -			readFile.h \
   58.29 -			DTNInterface.h\
   58.30 -			tcpClient.h\
   58.31 -			
   58.32 -			
   58.33 -SOURCES += 	main.cpp \
   58.34 -			bundle.cpp \
   58.35 -			msgWidget.cpp \
   58.36 -			bundleManager.cpp \
   58.37 -			debugWidget.cpp \
   58.38 -			node.cpp \
   58.39 -			nodeManager.cpp \
   58.40 -			connection.cpp \
   58.41 -			hello.cpp \
   58.42 -			tlv.cpp \
   58.43 -			dataPacket.cpp \
   58.44 -			messageFile.cpp\
   58.45 -			neighbourAwareness.cpp\
   58.46 -			readFile.cpp \
   58.47 -			DTNInterface.cpp\
   58.48 -			tcpClient.cpp\
    59.1 --- a/Win32/readFile.cpp	Wed Jan 03 09:17:10 2007 +0000
    59.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    59.3 @@ -1,660 +0,0 @@
    59.4 -#include <QFile>
    59.5 -#include <QString>
    59.6 -#include <QHostAddress>
    59.7 -#include <readFile.h>
    59.8 -
    59.9 -ReadFile::ReadFile()
   59.10 -{
   59.11 -	QFile configuration("prophet.ini");
   59.12 -}
   59.13 -
   59.14 -float ReadFile::getBeta()
   59.15 -{
   59.16 -	QFile configuration("prophet.ini");
   59.17 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
   59.18 -	QString line;
   59.19 -	QString search="BETA=";
   59.20 -	line=configuration.readLine();
   59.21 -	while(line.size()>0)
   59.22 -	{
   59.23 -		if(line.indexOf(search)!=-1)
   59.24 -		{
   59.25 -			line.remove(search,Qt::CaseInsensitive);
   59.26 -			return line.toFloat();
   59.27 -		}
   59.28 -		line=configuration.readLine();
   59.29 -		
   59.30 -	}
   59.31 -	configuration.close();
   59.32 -	return (float)0.25;
   59.33 -}
   59.34 -
   59.35 -float ReadFile::getGamma()
   59.36 -{
   59.37 -	QFile configuration("prophet.ini");
   59.38 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
   59.39 -	QString line;
   59.40 -	QString search="GAMMA=";
   59.41 -	line=configuration.readLine();
   59.42 -	while(line.size()>0)
   59.43 -	{
   59.44 -		if(line.indexOf(search)!=-1)
   59.45 -		{
   59.46 -			line.remove(search,Qt::CaseInsensitive);
   59.47 -			return line.toFloat();
   59.48 -		}
   59.49 -		line=configuration.readLine();
   59.50 -		
   59.51 -	}
   59.52 -		configuration.close();
   59.53 -
   59.54 -	return (float)0.99;
   59.55 -}
   59.56 -
   59.57 -float ReadFile::getPEncounter()
   59.58 -{
   59.59 -	QFile configuration("prophet.ini");
   59.60 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
   59.61 -	QString line;
   59.62 -	QString search="PENCOUNTER=";
   59.63 -	line=configuration.readLine();
   59.64 -	while(line.size()>0)
   59.65 -	{
   59.66 -		if(line.indexOf(search)!=-1)
   59.67 -		{
   59.68 -			line.remove(search,Qt::CaseInsensitive);
   59.69 -			return line.toFloat();
   59.70 -		}
   59.71 -		line=configuration.readLine();
   59.72 -		
   59.73 -	}
   59.74 -		configuration.close();
   59.75 -
   59.76 -	return (float)0.75;
   59.77 -}
   59.78 -
   59.79 -int ReadFile::getListenerTimer()
   59.80 -{
   59.81 -	QFile configuration("prophet.ini");
   59.82 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
   59.83 -	QString line;
   59.84 -	QString search="LISTENERTIMER=";
   59.85 -	line=configuration.readLine();
   59.86 -	while(line.size()>0)
   59.87 -	{
   59.88 -		if(line.indexOf(search)!=-1)
   59.89 -		{
   59.90 -			line.remove(search,Qt::CaseInsensitive);
   59.91 -			return line.toInt();
   59.92 -		}
   59.93 -		line=configuration.readLine();
   59.94 -		
   59.95 -	}
   59.96 -		configuration.close();
   59.97 -
   59.98 -	return 1000;
   59.99 -}
  59.100 -
  59.101 -
  59.102 -
  59.103 -int ReadFile::getInitiatorTimer()
  59.104 -{
  59.105 -	QFile configuration("prophet.ini");
  59.106 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.107 -	QString line;
  59.108 -	QString search="INITIATORTIMER=";
  59.109 -	line=configuration.readLine();
  59.110 -	while(line.size()>0)
  59.111 -	{
  59.112 -		if(line.indexOf(search)!=-1)
  59.113 -		{
  59.114 -			line.remove(search,Qt::CaseInsensitive);
  59.115 -			return line.toInt();
  59.116 -		}
  59.117 -		line=configuration.readLine();
  59.118 -		
  59.119 -	}
  59.120 -		configuration.close();
  59.121 -
  59.122 -	return 1000;
  59.123 -}
  59.124 -
  59.125 -int ReadFile::getHelloTimer()
  59.126 -{
  59.127 -	QFile configuration("prophet.ini");
  59.128 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.129 -	QString line;
  59.130 -	QString search="HELLOTIMER=";
  59.131 -	line=configuration.readLine();
  59.132 -	while(line.size()>0)
  59.133 -	{
  59.134 -		if(line.indexOf(search)!=-1)
  59.135 -		{
  59.136 -			line.remove(search,Qt::CaseInsensitive);
  59.137 -			return line.toInt();
  59.138 -		}
  59.139 -		line=configuration.readLine();
  59.140 -		
  59.141 -	}
  59.142 -		configuration.close();
  59.143 -
  59.144 -	return 1000;
  59.145 -}
  59.146 -
  59.147 -int ReadFile::getAgingTimer()
  59.148 -{
  59.149 -	QFile configuration("prophet.ini");
  59.150 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.151 -	QString line;
  59.152 -	QString search="AGINGTIMER=";
  59.153 -	line=configuration.readLine();
  59.154 -	while(line.size()>0)
  59.155 -	{
  59.156 -		if(line.indexOf(search)!=-1)
  59.157 -		{
  59.158 -			line.remove(search,Qt::CaseInsensitive);
  59.159 -			return line.toInt();
  59.160 -		}
  59.161 -		line=configuration.readLine();
  59.162 -		
  59.163 -	}
  59.164 -		configuration.close();
  59.165 -
  59.166 -	return 1000;
  59.167 -}
  59.168 -
  59.169 -int ReadFile::getDTNHostPort()
  59.170 -{
  59.171 -	QFile configuration("prophet.ini");
  59.172 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.173 -	QString line;
  59.174 -	QString search="DTNHOSTPORT=";
  59.175 -	line=configuration.readLine();
  59.176 -	while(line.size()>0)
  59.177 -	{
  59.178 -		if(line.indexOf(search)!=-1)
  59.179 -		{
  59.180 -			line.remove(search,Qt::CaseInsensitive);
  59.181 -			return line.toInt();
  59.182 -		}
  59.183 -		line=configuration.readLine();
  59.184 -		
  59.185 -	}
  59.186 -		configuration.close();
  59.187 -
  59.188 -	return 21;
  59.189 -
  59.190 -}	
  59.191 -
  59.192 -int ReadFile::getStorageSize()
  59.193 -{
  59.194 -	QFile configuration("prophet.ini");
  59.195 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.196 -	QString line;
  59.197 -	QString search="STORAGESIZE=";
  59.198 -	line=configuration.readLine();
  59.199 -	while(line.size()>0)
  59.200 -	{
  59.201 -		if(line.indexOf(search)!=-1)
  59.202 -		{
  59.203 -			line.remove(search,Qt::CaseInsensitive);
  59.204 -			return line.toInt();
  59.205 -		}
  59.206 -		line=configuration.readLine();
  59.207 -		
  59.208 -	}
  59.209 -		configuration.close();
  59.210 -
  59.211 -	return 1000;
  59.212 -
  59.213 -}	
  59.214 -
  59.215 -int ReadFile::getAlive()
  59.216 -{
  59.217 -	QFile configuration("prophet.ini");
  59.218 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.219 -	QString line;
  59.220 -	QString search="ALIVE=";
  59.221 -	line=configuration.readLine();
  59.222 -	while(line.size()>0)
  59.223 -	{
  59.224 -		if(line.indexOf(search)!=-1)
  59.225 -		{
  59.226 -			line.remove(search,Qt::CaseInsensitive);
  59.227 -			return line.toInt();
  59.228 -		}
  59.229 -		line=configuration.readLine();
  59.230 -		
  59.231 -	}
  59.232 -		configuration.close();
  59.233 -
  59.234 -	return 15;
  59.235 -
  59.236 -}	
  59.237 -
  59.238 -
  59.239 -int ReadFile::getBroadcastTimer()
  59.240 -{
  59.241 -	QFile configuration("prophet.ini");
  59.242 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.243 -	QString line;
  59.244 -	QString search="BROADCAST=";
  59.245 -	line=configuration.readLine();
  59.246 -	while(line.size()>0)
  59.247 -	{
  59.248 -		if(line.indexOf(search)!=-1)
  59.249 -		{
  59.250 -			line.remove(search,Qt::CaseInsensitive);
  59.251 -			return line.toInt();
  59.252 -		}
  59.253 -		line=configuration.readLine();
  59.254 -		
  59.255 -	}
  59.256 -		configuration.close();
  59.257 -
  59.258 -	return 1;
  59.259 -
  59.260 -}
  59.261 -
  59.262 -
  59.263 -int ReadFile::getHello()
  59.264 -{
  59.265 -	QFile configuration("prophet.ini");
  59.266 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.267 -	QString line;
  59.268 -	QString search="HELLO=";
  59.269 -	line=configuration.readLine();
  59.270 -	while(line.size()>0)
  59.271 -	{
  59.272 -		if(line.indexOf(search)!=-1)
  59.273 -		{
  59.274 -			line.remove(search,Qt::CaseInsensitive);
  59.275 -			return line.toInt();
  59.276 -		}
  59.277 -		line=configuration.readLine();
  59.278 -		
  59.279 -	}
  59.280 -		configuration.close();
  59.281 -
  59.282 -	return 1;
  59.283 -
  59.284 -}
  59.285 -
  59.286 -
  59.287 -int ReadFile::getRouting()
  59.288 -{
  59.289 -	QFile configuration("prophet.ini");
  59.290 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.291 -	QString line;
  59.292 -	QString search="ROUTING=";
  59.293 -	line=configuration.readLine();
  59.294 -	while(line.size()>0)
  59.295 -	{
  59.296 -		if(line.indexOf(search)!=-1)
  59.297 -		{
  59.298 -			line.remove(search,Qt::CaseInsensitive);
  59.299 -			return line.toInt();
  59.300 -		}
  59.301 -		line=configuration.readLine();
  59.302 -		
  59.303 -	}
  59.304 -		configuration.close();
  59.305 -
  59.306 -	return 1;
  59.307 -}
  59.308 -
  59.309 -
  59.310 -
  59.311 -int ReadFile::getAgeFileNodes()
  59.312 -{
  59.313 -	QFile configuration("prophet.ini");
  59.314 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.315 -	QString line;
  59.316 -	QString search="AGEFILENODES=";
  59.317 -	line=configuration.readLine();
  59.318 -	while(line.size()>0)
  59.319 -	{
  59.320 -		if(line.indexOf(search)!=-1)
  59.321 -		{
  59.322 -			line.remove(search,Qt::CaseInsensitive);
  59.323 -			return line.toInt();
  59.324 -		}
  59.325 -		line=configuration.readLine();
  59.326 -		
  59.327 -	}
  59.328 -		configuration.close();
  59.329 -
  59.330 -	return 1;
  59.331 -}
  59.332 -
  59.333 -int ReadFile::getContiniusUpdate()
  59.334 -{
  59.335 -	QFile configuration("prophet.ini");
  59.336 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.337 -	QString line;
  59.338 -	QString search="CONTINIUSUPDATE=";
  59.339 -	line=configuration.readLine();
  59.340 -	while(line.size()>0)
  59.341 -	{
  59.342 -		if(line.indexOf(search)!=-1)
  59.343 -		{
  59.344 -			line.remove(search,Qt::CaseInsensitive);
  59.345 -			return line.toInt();
  59.346 -		}
  59.347 -		line=configuration.readLine();
  59.348 -		
  59.349 -	}
  59.350 -		configuration.close();
  59.351 -
  59.352 -	return 1;
  59.353 -}
  59.354 -
  59.355 -
  59.356 -int ReadFile::getNodeId()
  59.357 -{
  59.358 -	QFile configuration("prophet.ini");
  59.359 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.360 -	QString line;
  59.361 -	QString search="NODEID=";
  59.362 -	line=configuration.readLine();
  59.363 -	while(line.size()>0)
  59.364 -	{
  59.365 -		if(line.indexOf(search)!=-1)
  59.366 -		{
  59.367 -			line.remove(search,Qt::CaseInsensitive);
  59.368 -			return line.toInt();
  59.369 -		}
  59.370 -		line=configuration.readLine();
  59.371 -		
  59.372 -	}
  59.373 -		configuration.close();
  59.374 -
  59.375 -	return 0;
  59.376 -}
  59.377 -
  59.378 -int ReadFile::getUseFileBundles()
  59.379 -{
  59.380 -	QFile configuration("prophet.ini");
  59.381 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.382 -	QString line;
  59.383 -	QString search="USEFILEBUNDLES=";
  59.384 -	line=configuration.readLine();
  59.385 -	while(line.size()>0)
  59.386 -	{
  59.387 -		if(line.indexOf(search)!=-1)
  59.388 -		{
  59.389 -			line.remove(search,Qt::CaseInsensitive);
  59.390 -			return line.toInt();
  59.391 -		}
  59.392 -		line=configuration.readLine();
  59.393 -		
  59.394 -	}
  59.395 -		configuration.close();
  59.396 -
  59.397 -	return 1;
  59.398 -}
  59.399 -
  59.400 -
  59.401 -int ReadFile::getWriteToFileTimer()
  59.402 -{
  59.403 -	QFile configuration("prophet.ini");
  59.404 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.405 -	QString line;
  59.406 -	QString search="WRITETOFILETIMER=";
  59.407 -	line=configuration.readLine();
  59.408 -	while(line.size()>0)
  59.409 -	{
  59.410 -		if(line.indexOf(search)!=-1)
  59.411 -		{
  59.412 -			line.remove(search,Qt::CaseInsensitive);
  59.413 -			return line.toInt();
  59.414 -		}
  59.415 -		line=configuration.readLine();
  59.416 -		
  59.417 -	}
  59.418 -		configuration.close();
  59.419 -
  59.420 -	return 60;
  59.421 -}
  59.422 -
  59.423 -
  59.424 -int ReadFile::getLogOption()
  59.425 -{
  59.426 -	QFile configuration("prophet.ini");
  59.427 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.428 -	QString line;
  59.429 -	QString search="LOGING=";
  59.430 -	line=configuration.readLine();
  59.431 -	while(line.size()>0)
  59.432 -	{
  59.433 -		if(line.indexOf(search)!=-1)
  59.434 -		{
  59.435 -			line.remove(search,Qt::CaseInsensitive);
  59.436 -			return line.toInt();
  59.437 -		}
  59.438 -		line=configuration.readLine();
  59.439 -		
  59.440 -	}
  59.441 -		configuration.close();
  59.442 -
  59.443 -	return 60;
  59.444 -}	
  59.445 -
  59.446 -int ReadFile::getUseFileNodes()
  59.447 -{
  59.448 -	QFile configuration("prophet.ini");
  59.449 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.450 -	QString line;
  59.451 -	QString search="USEFILENODES=";
  59.452 -	line=configuration.readLine();
  59.453 -	while(line.size()>0)
  59.454 -	{
  59.455 -		if(line.indexOf(search)!=-1)
  59.456 -		{
  59.457 -			line.remove(search,Qt::CaseInsensitive);
  59.458 -			return line.toInt();
  59.459 -		}
  59.460 -		line=configuration.readLine();
  59.461 -		
  59.462 -	}
  59.463 -		configuration.close();
  59.464 -
  59.465 -	return 0;
  59.466 -}	
  59.467 -
  59.468 -QString ReadFile::getNodeName()
  59.469 -{
  59.470 -	QFile configuration("prophet.ini");
  59.471 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.472 -	QString line;
  59.473 -	QString search="NODENAME=";
  59.474 -	line=configuration.readLine();
  59.475 -	while(line.size()>0)
  59.476 -	{
  59.477 -		if(line.indexOf(search)!=-1)
  59.478 -		{
  59.479 -			line.remove(search,Qt::CaseInsensitive);
  59.480 -			line.chop(1);
  59.481 -			return line;
  59.482 -		}
  59.483 -		line=configuration.readLine();
  59.484 -		
  59.485 -	}
  59.486 -		configuration.close();
  59.487 -
  59.488 -	QString ret="unknown";
  59.489 -	return ret;
  59.490 -}
  59.491 -
  59.492 -QString ReadFile::getStoragePath()
  59.493 -{
  59.494 -	QFile configuration("prophet.ini");
  59.495 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.496 -	QString line;
  59.497 -	QString search="STORAGEPATH=";
  59.498 -	line=configuration.readLine();
  59.499 -	while(line.size()>0)
  59.500 -	{
  59.501 -		if(line.indexOf(search)!=-1)
  59.502 -		{
  59.503 -			line.remove(search,Qt::CaseInsensitive);
  59.504 -			line.chop(1);
  59.505 -			return line;
  59.506 -		}
  59.507 -		line=configuration.readLine();
  59.508 -		
  59.509 -	}
  59.510 -	QString ret="";
  59.511 -		configuration.close();
  59.512 -
  59.513 -	return ret;
  59.514 -}
  59.515 -
  59.516 -QString ReadFile::getLogPath()
  59.517 -{
  59.518 -	QFile configuration("prophet.ini");
  59.519 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.520 -	QString line;
  59.521 -	QString search="LOGPATH=";
  59.522 -	line=configuration.readLine();
  59.523 -	while(line.size()>0)
  59.524 -	{
  59.525 -		if(line.indexOf(search)!=-1)
  59.526 -		{
  59.527 -			line.remove(search,Qt::CaseInsensitive);
  59.528 -			line.chop(1);
  59.529 -			return line;
  59.530 -		}
  59.531 -		line=configuration.readLine();
  59.532 -		
  59.533 -	}
  59.534 -	QString ret="";
  59.535 -			configuration.close();
  59.536 -
  59.537 -	return ret;
  59.538 -}
  59.539 -QString ReadFile::getMsgPath()
  59.540 -{
  59.541 -	QFile configuration("prophet.ini");
  59.542 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.543 -	QString line;
  59.544 -	QString search="MSGPATH=";
  59.545 -	line=configuration.readLine();
  59.546 -	while(line.size()>0)
  59.547 -	{
  59.548 -		if(line.indexOf(search)!=-1)
  59.549 -		{
  59.550 -			line.remove(search,Qt::CaseInsensitive);
  59.551 -			line.chop(1);
  59.552 -			return line;
  59.553 -		}
  59.554 -		line=configuration.readLine();
  59.555 -		
  59.556 -	}
  59.557 -	QString ret="";
  59.558 -		configuration.close();
  59.559 -
  59.560 -	return ret;
  59.561 -}
  59.562 -
  59.563 -QHostAddress ReadFile::getNodeIp()
  59.564 -{
  59.565 -	QFile configuration("prophet.ini");
  59.566 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.567 -	QString line;
  59.568 -	QString search="NODEIP=";
  59.569 -	line=configuration.readLine();
  59.570 -	while(line.size()>0)
  59.571 -	{
  59.572 -		if(line.indexOf(search)!=-1)
  59.573 -		{
  59.574 -			line.remove(search,Qt::CaseInsensitive);
  59.575 -			QHostAddress ip(line);
  59.576 -			return ip;
  59.577 -
  59.578 -		}
  59.579 -		line=configuration.readLine();
  59.580 -	
  59.581 -	}
  59.582 -		configuration.close();
  59.583 -
  59.584 -	QHostAddress ret("192.168.10.1");
  59.585 -	return ret;
  59.586 -}
  59.587 -
  59.588 -QHostAddress ReadFile::getBroadcast()
  59.589 -{
  59.590 -	QFile configuration("prophet.ini");
  59.591 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.592 -	QString line;
  59.593 -	QString search="NODEBROADCAST=";
  59.594 -	line=configuration.readLine();
  59.595 -	while(line.size()>0)
  59.596 -	{
  59.597 -		if(line.indexOf(search)!=-1)
  59.598 -		{
  59.599 -			line.remove(search,Qt::CaseInsensitive);
  59.600 -			QHostAddress ip(line);
  59.601 -			return ip;
  59.602 -
  59.603 -		}
  59.604 -		line=configuration.readLine();
  59.605 -	}
  59.606 -	QHostAddress ret("255.255.255.255");
  59.607 -		configuration.close();
  59.608 -
  59.609 -	return ret;
  59.610 -
  59.611 -}
  59.612 -
  59.613 -QHostAddress ReadFile::getNodeIp2()
  59.614 -{
  59.615 -	QFile configuration("prophet.ini");
  59.616 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.617 -	QString line;
  59.618 -	QString search="NODEIP2=";
  59.619 -	line=configuration.readLine();
  59.620 -	while(line.size()>0)
  59.621 -	{
  59.622 -		if(line.indexOf(search)!=-1)
  59.623 -		{
  59.624 -			line.remove(search,Qt::CaseInsensitive);
  59.625 -			QHostAddress ip(line);
  59.626 -			return ip;
  59.627 -
  59.628 -		}
  59.629 -		line=configuration.readLine();
  59.630 -	
  59.631 -	}
  59.632 -	QHostAddress ret("192.168.10.1");
  59.633 -		configuration.close();
  59.634 -
  59.635 -	return ret;
  59.636 -
  59.637 -}
  59.638 -
  59.639 -QHostAddress ReadFile::getDTNHostName()
  59.640 -{
  59.641 -	QFile configuration("prophet.ini");
  59.642 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  59.643 -	QString line;
  59.644 -	QString search="DTNHOSTNAME=";
  59.645 -	line=configuration.readLine();
  59.646 -	while(line.size()>0)
  59.647 -	{
  59.648 -		if(line.indexOf(search)!=-1)
  59.649 -		{
  59.650 -			line.remove(search,Qt::CaseInsensitive);
  59.651 -			QHostAddress ip(line);
  59.652 -			return ip;
  59.653 -
  59.654 -		}
  59.655 -		line=configuration.readLine();
  59.656 -	
  59.657 -	}
  59.658 -	QHostAddress ret("192.168.10.1");
  59.659 -		configuration.close();
  59.660 -
  59.661 -	return ret;
  59.662 -
  59.663 -}
    60.1 --- a/Win32/readFile.h	Wed Jan 03 09:17:10 2007 +0000
    60.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    60.3 @@ -1,49 +0,0 @@
    60.4 -#ifndef READFILE_H
    60.5 -#define READFILE_H
    60.6 -
    60.7 -#include <QtCore>
    60.8 -#include <QtNetwork>
    60.9 -
   60.10 -
   60.11 -
   60.12 -class ReadFile: public QObject
   60.13 -{
   60.14 -	Q_OBJECT
   60.15 -
   60.16 -	public:
   60.17 -
   60.18 -	QFile configuration;
   60.19 -
   60.20 -	ReadFile();
   60.21 -	float getGamma();
   60.22 -	float getBeta();
   60.23 -	float getPEncounter();
   60.24 -	int getNodeId();
   60.25 -	int getAgingTimer();
   60.26 -	int getHelloTimer();
   60.27 -	int getInitiatorTimer();
   60.28 -	int getListenerTimer();
   60.29 -	int getDTNHostPort();
   60.30 -	int getStorageSize();
   60.31 -	int getAlive();
   60.32 -	int getBroadcastTimer();
   60.33 -	int getHello();
   60.34 -	int getContiniusUpdate();
   60.35 -	int getRouting();
   60.36 -	int getUseFileNodes();
   60.37 -	int getWriteToFileTimer();
   60.38 -	int getAgeFileNodes();
   60.39 -	int getUseFileBundles();
   60.40 -	int getLogOption();
   60.41 -	QString getStoragePath();
   60.42 -	QString getMsgPath();
   60.43 -	QString getLogPath();
   60.44 -
   60.45 -	QString getNodeName();
   60.46 -	QHostAddress getNodeIp();
   60.47 -	QHostAddress getNodeIp2();
   60.48 -	QHostAddress getDTNHostName();
   60.49 -	QHostAddress getBroadcast();
   60.50 -};
   60.51 -
   60.52 -#endif
    61.1 --- a/Win32/tcpClient.cpp	Wed Jan 03 09:17:10 2007 +0000
    61.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    61.3 @@ -1,101 +0,0 @@
    61.4 -#include "tcpClient.h"
    61.5 -
    61.6 -TcpClient::TcpClient(QObject* parent) : QTcpSocket(parent)
    61.7 -{
    61.8 -
    61.9 -	timer = new QTimer;
   61.10 -	timer->setSingleShot(true);
   61.11 -	connect(timer, SIGNAL(timeout()), this, SLOT(reconnectToHost()));
   61.12 -	connect(this, SIGNAL(stateChanged(QAbstractSocket::SocketState)), this, SLOT(hostStateChanged(QAbstractSocket::SocketState)));
   61.13 -	connect(this, SIGNAL(error(QAbstractSocket::SocketError)), this, SLOT(hostError(QAbstractSocket::SocketError)));
   61.14 -	connect(this, SIGNAL(readyRead()), this, SLOT(hostReadyRead()));
   61.15 -	int i = readBufferSize();
   61.16 -	setReadBufferSize(0);
   61.17 -	currentHostIndex = 0;
   61.18 -}
   61.19 -
   61.20 -TcpClient::~TcpClient()
   61.21 -{
   61.22 -}
   61.23 -
   61.24 -void TcpClient::addHost(QString hn, int hp)
   61.25 -{
   61.26 -	hostNames << hn;
   61.27 -	hostPorts << hp;
   61.28 -	currentHostIndex = hostNames.count()-1;
   61.29 -	if ((state() == QAbstractSocket::UnconnectedState) && (hostNames.count() == 1))
   61.30 -		connectToHost(hostNames[currentHostIndex], hostPorts[currentHostIndex]);
   61.31 -}
   61.32 -
   61.33 -void TcpClient::reconnectToHost()
   61.34 -{
   61.35 -	if (hostNames.count() == 0)
   61.36 -		return;
   61.37 -	currentHostIndex++;
   61.38 -	currentHostIndex = currentHostIndex % hostNames.count();
   61.39 -	connectToHost(hostNames[currentHostIndex], hostPorts[currentHostIndex]);
   61.40 -}
   61.41 -
   61.42 -void TcpClient::hostStateChanged(QAbstractSocket::SocketState state)
   61.43 -{
   61.44 -	switch (state)
   61.45 -	{
   61.46 -	case QAbstractSocket::ConnectedState:
   61.47 -		{
   61.48 -			QList<QString>::iterator it;
   61.49 -			it = commands.begin();
   61.50 -			while (it != commands.end())
   61.51 -			{
   61.52 -				write((*it).toAscii());
   61.53 -				it++;
   61.54 -			}
   61.55 -			emit connected();
   61.56 -		}
   61.57 -		break;
   61.58 -	case QAbstractSocket::UnconnectedState:
   61.59 -		timer->start(2000);
   61.60 -		emit disconnected();
   61.61 -		break;
   61.62 -	}
   61.63 -}
   61.64 -
   61.65 -void TcpClient::hostError(QAbstractSocket::SocketError error)
   61.66 -{
   61.67 -	abort();
   61.68 -	timer->start(2000);
   61.69 -	emit disconnected();
   61.70 -}
   61.71 -
   61.72 -void TcpClient::hostReadyRead()
   61.73 -{
   61.74 -	buffer += readAll();
   61.75 -	int from = 0;
   61.76 -	int idx;
   61.77 -	int size = buffer.size();
   61.78 -	QByteArray end=buffer.mid(size-5);
   61.79 -	idx = end.indexOf("dtn%", from);
   61.80 -	if (idx != -1)
   61.81 -	{
   61.82 -		QByteArray oddan;
   61.83 -		oddan.append(buffer);
   61.84 -		int velikos = oddan.size();
   61.85 -		emit newAnswer(oddan);
   61.86 -		buffer.clear();
   61.87 -	}
   61.88 -}
   61.89 -
   61.90 -void TcpClient::appendCommand(int id, QString cmd)
   61.91 -{
   61.92 -	cmd += QString("\r");
   61.93 -	commands.append(cmd);
   61.94 -	if (state() == QAbstractSocket::ConnectedState)
   61.95 -		write(cmd.toAscii());
   61.96 -}
   61.97 -
   61.98 -bool TcpClient::isConnected()
   61.99 -{
  61.100 -	if (state() == QAbstractSocket::ConnectedState)
  61.101 -		return true;
  61.102 -	else
  61.103 -		return false;
  61.104 -}
    62.1 --- a/Win32/tcpClient.h	Wed Jan 03 09:17:10 2007 +0000
    62.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    62.3 @@ -1,40 +0,0 @@
    62.4 -#ifndef TCPCLIENT_H
    62.5 -#define TCPCLIENT_H
    62.6 -
    62.7 -#include <QtCore>
    62.8 -#include <QTcpSocket>
    62.9 -#include <QTextCodec>
   62.10 -
   62.11 -class TcpClient : public QTcpSocket
   62.12 -{
   62.13 -	Q_OBJECT
   62.14 -
   62.15 -public:
   62.16 -	TcpClient(QObject* parent = 0);
   62.17 -	~TcpClient();
   62.18 -	virtual void addHost(QString hn, int hp);
   62.19 -	virtual void appendCommand(int id, QString cmd);
   62.20 -	virtual bool isConnected();
   62.21 -
   62.22 -public slots:
   62.23 -	virtual void reconnectToHost();
   62.24 -	virtual void hostStateChanged(QAbstractSocket::SocketState state);
   62.25 -	virtual void hostError(QAbstractSocket::SocketError error);
   62.26 -	virtual void hostReadyRead();
   62.27 -
   62.28 -signals:
   62.29 -	void newAnswer(QByteArray answ);
   62.30 -	void connected();
   62.31 -	void disconnected();
   62.32 -	
   62.33 -private:
   62.34 -	QList<QString> commands;
   62.35 -	QList<int> ids;
   62.36 -	QByteArray buffer;
   62.37 -	QTimer* timer;
   62.38 -	QList<QString> hostNames;
   62.39 -	QList<int> hostPorts;
   62.40 -	int currentHostIndex;
   62.41 -};
   62.42 -
   62.43 -#endif
    63.1 --- a/Win32/tlv.cpp	Wed Jan 03 09:17:10 2007 +0000
    63.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    63.3 @@ -1,500 +0,0 @@
    63.4 -#include <QtCore>
    63.5 -#include <tlv.h>
    63.6 -#include <hello.h>
    63.7 -#include <messageFile.h>
    63.8 -#include <readFile.h>
    63.9 -
   63.10 -
   63.11 -
   63.12 -//WARNING: SOME OF THE STRUCTURES HAS BEEN MODIFIED AND ARE NOT THE SAME AS IN DRAFT!
   63.13 -struct HelloHeader
   63.14 -{
   63.15 -	qint32 type;
   63.16 -	qint32 function;
   63.17 -	qint32 timer;
   63.18 -	qint32 nameLenght;
   63.19 -	qint32 nodeId;
   63.20 -	qint32 nodeType;
   63.21 -};
   63.22 -
   63.23 -struct DictionaryHeader 
   63.24 -{
   63.25 -	qint32 type;
   63.26 -	qint32 flags;
   63.27 -	qint32 lenght;
   63.28 -	qint32 entryCount;
   63.29 -	qint32 reserved;
   63.30 -};
   63.31 -
   63.32 -struct BundleListHeader 
   63.33 -{
   63.34 -	qint32 type;
   63.35 -	qint32 flags;
   63.36 -	qint32 lenght;
   63.37 -	qint32 entryCount;
   63.38 -	qint32 reserved;
   63.39 -};
   63.40 -
   63.41 -struct BundleListItem 
   63.42 -{
   63.43 -	qint32 destinationId;
   63.44 -	qint32 BFlags;
   63.45 -	qint32 reserved;
   63.46 -	qint32 bundleId;
   63.47 -};
   63.48 -
   63.49 -struct BundleDataHeader 
   63.50 -{
   63.51 -	qint32 sourceId;
   63.52 -	qint32 destinationId;
   63.53 -	qint32 bundleId;
   63.54 -	qint32 BFlags;
   63.55 -	qint32 reserved;
   63.56 -	qint32 dataLenght;	
   63.57 -	qint32 sourceStringLenght;
   63.58 -	qint32 destinationStringLenght;
   63.59 -	uint time;
   63.60 -};
   63.61 -
   63.62 -
   63.63 -struct DictionaryNodeHeader 
   63.64 -{
   63.65 -	qint32 stringId;
   63.66 -	qint32 lenght;
   63.67 -	qint32 reserved;
   63.68 -};
   63.69 -
   63.70 -struct RIBNodeHeader 
   63.71 -{
   63.72 -	qint32 stringId;
   63.73 -	float probability;
   63.74 -	qint32 RIBFlag;
   63.75 -};
   63.76 -
   63.77 -struct Header 
   63.78 -{
   63.79 -	qint32 type;
   63.80 -
   63.81 -};
   63.82 -
   63.83 -
   63.84 -
   63.85 -TLV::TLV(QObject *parent)
   63.86 -{
   63.87 -	ReadFile conf;
   63.88 -	fileOption=conf.getUseFileBundles();
   63.89 -	if(fileOption==1)
   63.90 -	{
   63.91 -		QString storagePath=conf.getStoragePath();
   63.92 -		dir.setPath(storagePath);
   63.93 -	}
   63.94 -}
   63.95 -
   63.96 -
   63.97 -
   63.98 -void TLV::receiveDatagram(QByteArray datagram)
   63.99 -{
  63.100 -	Header* TLVType;
  63.101 -	TLVType= (Header*) datagram.constData();
  63.102 -	qint32 datagramIndex;
  63.103 -	//Read out TLV Type
  63.104 -	QByteArray temp;
  63.105 -	Hello newHello;
  63.106 -	QList<Node> receivedNodes;
  63.107 -	QList<Bundle> receivedBundles;
  63.108 -	QString name;
  63.109 -	struct DictionaryHeader *dictionaryHeader; //It is the same for RIB
  63.110 -	struct BundleListHeader *bundleHeader;
  63.111 -	struct HelloHeader *hello;
  63.112 -	qint32 entryCount;	
  63.113 -	qint32 lenght;
  63.114 -	switch(TLVType->type)
  63.115 -	{
  63.116 -		//Hello massage forming
  63.117 -		case 0x01:	//////log->addLog(0,(QString)"TLV receiving Hello datagram...");
  63.118 -					hello= (HelloHeader*) datagram.constData();
  63.119 - 					newHello.HFunction=(qint32)hello->function;
  63.120 -					newHello.timer =(qint32)hello->timer;
  63.121 -					newHello.senderId=(qint32)hello->nodeId;
  63.122 -					newHello.senderType =(qint32)hello->nodeType;
  63.123 -					lenght = (qint32)hello->nameLenght;
  63.124 -					datagram.remove(0,sizeof(HelloHeader));
  63.125 -					name=datagram.mid(0,lenght);
  63.126 -					newHello.setSenderName(name);
  63.127 -					emit sendHello(newHello);
  63.128 -		break;
  63.129 -		//RIB
  63.130 -		case 0xA1:	//////log->addLog(0,(QString)"TLV receiving RIB datagram...");
  63.131 -					dictionaryHeader = (DictionaryHeader*) datagram.constData();
  63.132 -					entryCount=dictionaryHeader->entryCount;
  63.133 -					datagram.remove(0,sizeof(DictionaryHeader));
  63.134 -					for (ushort i = 0; i < entryCount; ++i) 
  63.135 -					{
  63.136 -						//Resolving data from datagram
  63.137 -						struct RIBNodeHeader *nodeHeader = (RIBNodeHeader*) datagram.constData();
  63.138 -						qint32 stringId = (qint32)nodeHeader->stringId;
  63.139 -						qint32 flag = (qint32)nodeHeader->RIBFlag;
  63.140 -						float probability = (float)nodeHeader->probability;
  63.141 -						datagram.remove(0,sizeof(RIBNodeHeader));
  63.142 -						//Setting node variables
  63.143 -						Node tempNode;
  63.144 -						tempNode.setContent(stringId,probability,flag,"X");
  63.145 -						//Adding variables in the list
  63.146 -						receivedNodes.append(tempNode);
  63.147 -					}
  63.148 -					emit sendRIB(receivedNodes);
  63.149 -		break;
  63.150 -		//BUNDLE OFFER RECEIVED
  63.151 -		case 0xA2:	//////log->addLog(0,(QString)"TLV receiving Bundle offer datagram...");
  63.152 -					bundleHeader = (BundleListHeader*) datagram.constData();
  63.153 -					entryCount=(qint32)bundleHeader->entryCount;
  63.154 -					datagramIndex=sizeof(BundleListHeader);
  63.155 -					datagram.remove(0,datagramIndex);
  63.156 -					for (ushort i = 0; i < entryCount; ++i) 
  63.157 -					{
  63.158 -						//Resolving data from datagram
  63.159 -						struct BundleListItem *bundleItem;
  63.160 -						bundleItem = (BundleListItem*) datagram.constData();
  63.161 -						
  63.162 -						qint32 destId = (qint32)bundleItem->destinationId;
  63.163 -						qint32 bundId = (qint32)bundleItem->bundleId;
  63.164 -						qint32 BFlags = (qint32)bundleItem->BFlags;
  63.165 -						qint32 reserved = (qint32)bundleItem->reserved;
  63.166 -						datagram.remove(0,sizeof(BundleListItem));
  63.167 -						//Setting Bundle variables
  63.168 -						Bundle tempBundle;
  63.169 -						tempBundle.destinationId = destId;
  63.170 -						tempBundle.id = bundId;
  63.171 -						tempBundle.options = BFlags;
  63.172 -						//Adding variables in the list
  63.173 -						receivedBundles.append(tempBundle);
  63.174 -					}
  63.175 -					emit sendBundleOffer(receivedBundles);
  63.176 -		break;
  63.177 -		//BUNDLE REQUEST RECEIVED
  63.178 -		case 0xA3:	//////log->addLog(0,(QString)"TLV receiving Bundle Request datagram...");
  63.179 -					bundleHeader = (BundleListHeader*) datagram.constData();
  63.180 -					entryCount=bundleHeader->entryCount;
  63.181 -					datagramIndex=sizeof(BundleListHeader);
  63.182 -					datagram.remove(0,datagramIndex);
  63.183 -					for (ushort i = 0; i < entryCount; ++i) 
  63.184 -					{
  63.185 -						//Resolving data from datagram
  63.186 -						struct BundleListItem *bundleItem;
  63.187 -						bundleItem = (BundleListItem*) datagram.constData();
  63.188 -						
  63.189 -						qint32 destId = (qint32)bundleItem->destinationId;
  63.190 -						qint32 bundId = (qint32)bundleItem->bundleId;
  63.191 -						qint32 BFlags = (qint32)bundleItem->BFlags;
  63.192 -						qint32 reserved = (qint32)bundleItem->reserved;
  63.193 -						datagram.remove(0,sizeof(BundleListItem));
  63.194 -						//Setting Bundle variables
  63.195 -						Bundle tempBundle;
  63.196 -						tempBundle.destinationId = destId;
  63.197 -						tempBundle.id = bundId;
  63.198 -						tempBundle.options = BFlags;
  63.199 -						//Adding variables in the list
  63.200 -						receivedBundles.append(tempBundle);
  63.201 -					}
  63.202 -					emit sendBundleRequest(receivedBundles);
  63.203 -		break;
  63.204 -		//Dictionary
  63.205 -		case 0xA0:	//////log->addLog(0,(QString)"TLV receiving Dictionary datagram...");
  63.206 -					dictionaryHeader = (DictionaryHeader*) datagram.constData();
  63.207 -					entryCount=dictionaryHeader->entryCount;
  63.208 -					datagram.remove(0,sizeof(DictionaryHeader));
  63.209 -					for (ushort i = 0; i < entryCount; ++i) 
  63.210 -					{
  63.211 -						QString nodeName;
  63.212 -						//Resolving data from datagram
  63.213 -						struct DictionaryNodeHeader * nodeHeader = (DictionaryNodeHeader*) datagram.constData();
  63.214 -						qint32 stringId = (qint32)nodeHeader->stringId;
  63.215 -						qint32 lenght = (qint32)nodeHeader->lenght;
  63.216 -						datagram.remove(0,sizeof(DictionaryNodeHeader)); //Because stings terminator
  63.217 -						nodeName=datagram.mid(0,lenght);
  63.218 -						datagram.remove(0,lenght);
  63.219 -						//Setting node variables
  63.220 -						Node tempNode;
  63.221 -						tempNode.setContent(stringId,0.0,-1,nodeName);
  63.222 -						//Adding variables in the list
  63.223 -						receivedNodes.append(tempNode);
  63.224 -					}
  63.225 -					emit sendDictionary(receivedNodes);
  63.226 -		break;		
  63.227 -		//BUNDLE DATA RECEIVED
  63.228 -		case 0xA4:	//////log->addLog(0,(QString)"TLV receiving Bundle data datagram...");
  63.229 -					bundleHeader = (BundleListHeader*) datagram.constData();
  63.230 -					entryCount=bundleHeader->entryCount;
  63.231 -					datagramIndex=sizeof(BundleListHeader);
  63.232 -					datagram.remove(0,datagramIndex);
  63.233 -					for (ushort i = 0; i < entryCount; ++i) 
  63.234 -					{
  63.235 -						//Resolving data from datagram
  63.236 -						struct BundleDataHeader *bundleItem;
  63.237 -						bundleItem = (BundleDataHeader*) datagram.constData();
  63.238 -						
  63.239 -						qint32 destId = (qint32)bundleItem->destinationId;
  63.240 -						qint32 srcId = (qint32)bundleItem->sourceId;
  63.241 -						qint32 bundId = (qint32)bundleItem->bundleId;
  63.242 -						qint32 BFlags = (qint32)bundleItem->BFlags;
  63.243 -						qint32 reserved = (qint32)bundleItem->reserved;
  63.244 -						qint32 lenght = (qint32)bundleItem->dataLenght;
  63.245 -						qint32 srclenght = (qint32)bundleItem->sourceStringLenght;
  63.246 -						qint32 dstlenght = (qint32)bundleItem->destinationStringLenght;
  63.247 -						
  63.248 -						QDateTime time;
  63.249 -						time.setTime_t(bundleItem->time);
  63.250 -						datagram.remove(0,sizeof(BundleDataHeader));
  63.251 -						//Setting Bundle variables
  63.252 -						Bundle tempBundle;
  63.253 -						tempBundle.destinationId = destId;
  63.254 -						tempBundle.sourceId = srcId;
  63.255 -						tempBundle.id = bundId;
  63.256 -						tempBundle.options = BFlags;
  63.257 -						tempBundle.timeStamp = time;
  63.258 -						QByteArray datagramPart;
  63.259 -						datagramPart=datagram.mid(0,lenght);
  63.260 -						tempBundle.data=datagramPart;
  63.261 -						datagram.remove(0,lenght);
  63.262 -						
  63.263 -						datagramPart=datagram.mid(0,srclenght);
  63.264 -						tempBundle.sourceString=datagramPart;
  63.265 -						datagram.remove(0,srclenght);
  63.266 -						datagramPart=datagram.mid(0,dstlenght);
  63.267 -						tempBundle.destinationString=datagramPart;
  63.268 -						datagram.remove(0,dstlenght);
  63.269 -						//Adding variables in the list
  63.270 -						receivedBundles.append(tempBundle);
  63.271 -					}
  63.272 -					emit sendBundleData(receivedBundles);
  63.273 -		break;
  63.274 -		default:	//////log->addLog(0,(QString)"TLV receiving Unknown datagram...");
  63.275 -					//QString name;
  63.276 -					temp = datagram.mid(2,1);
  63.277 -//					function = temp.toushort();
  63.278 -					temp = datagram.mid(32,1);
  63.279 -//					timer = temp.toushort();
  63.280 -					temp = datagram.mid(40,1);
  63.281 -//					nameLenght = temp.toushort();
  63.282 -					temp = datagram.mid(48,0);
  63.283 -					newHello.setFunction(0);
  63.284 -					newHello.setTimer(0);
  63.285 -					newHello.setSenderName(0);
  63.286 -
  63.287 -		break;
  63.288 -	}
  63.289 -
  63.290 -}
  63.291 -
  63.292 -
  63.293 -void TLV::receiveHello(Hello hello)
  63.294 -{
  63.295 -	//Setting up variables
  63.296 -	struct HelloHeader header;
  63.297 -	QString nodeName = hello.getSenderName();
  63.298 -	header.type = 0x01;//Hello 
  63.299 -	header.function = (qint32)hello.getFunction();
  63.300 -	header.timer = (qint32)hello.getTimer();
  63.301 -	header.nodeId = (qint32)hello.senderId;
  63.302 -	header.nodeType = (qint32)hello.senderType;
  63.303 -	header.nameLenght = (qint32)nodeName.size();
  63.304 -	//Preparing heder
  63.305 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(HelloHeader));	
  63.306 -	//Adding Addres Strings
  63.307 -	newDatagram.append(nodeName.toAscii());
  63.308 -	//Sending our TLV datagram
  63.309 -	//////log->addLog(0,(QString)"TLV sending Hello datagram...");
  63.310 -	emit sendDatagram(newDatagram);
  63.311 -}
  63.312 -
  63.313 -
  63.314 -//Create Dictionary
  63.315 -void TLV::createDictionary(QList<Node> nodeList)
  63.316 -{
  63.317 -	//Setting up variables
  63.318 -	struct DictionaryHeader header;
  63.319 -	header.type = 0xA0;//Dictionary 
  63.320 -	header.flags = 0x00;
  63.321 -	header.lenght = 0x00;
  63.322 -	header.entryCount=(qint32)(nodeList.size());
  63.323 -	header.reserved = 0x00;
  63.324 -	//Preparing heder
  63.325 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(DictionaryHeader));	
  63.326 -	//Adding Addres Strings
  63.327 -	Node tempNode;
  63.328 -	for (ushort i = 0; i < nodeList.size(); ++i) 
  63.329 -	{
  63.330 -		struct DictionaryNodeHeader newNodeHeader;
  63.331 -		//Resolving data from list
  63.332 -        tempNode = nodeList.at(i);
  63.333 -		newNodeHeader.stringId = (qint32)tempNode.getId();
  63.334 -		newNodeHeader.reserved=0x00;
  63.335 -		newNodeHeader.lenght= (qint32)tempNode.nodeName.size();
  63.336 -		//Puting data to datagram
  63.337 -		QByteArray nodeDatagram = QByteArray::fromRawData((char *)&newNodeHeader, sizeof(newNodeHeader));	
  63.338 -		nodeDatagram.append(tempNode.nodeName);
  63.339 -		newDatagram.append(nodeDatagram);
  63.340 -    }
  63.341 -	//////log->addLog(0,(QString)"TLV Sending dictionary datagram...");
  63.342 -	emit sendDatagram(newDatagram);
  63.343 -
  63.344 -}
  63.345 -
  63.346 -//Create RIB
  63.347 -void TLV::createRIB(QList<Node> nodeList)
  63.348 -{
  63.349 -	//Setting up variables
  63.350 -	struct DictionaryHeader header; //It is the same as Dictionary
  63.351 -	header.type = 0xA1;//RIB Type
  63.352 -	header.flags = 0x00;
  63.353 -	header.lenght = 0x00;
  63.354 -	header.entryCount=(qint32)nodeList.size();
  63.355 -	header.reserved = 0x00;
  63.356 -	//Preparing heder
  63.357 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(DictionaryHeader));	
  63.358 -	for (ushort i = 0; i < nodeList.size(); ++i) 
  63.359 -	{
  63.360 -		Node tempNode;
  63.361 -		struct RIBNodeHeader  newNodeHeader;
  63.362 -		//Resolving data from list
  63.363 -        tempNode = nodeList.at(i);
  63.364 -		newNodeHeader.stringId = (qint32)tempNode.getId();
  63.365 -		newNodeHeader.probability = tempNode.getProbability();
  63.366 -		newNodeHeader.RIBFlag = (qint32)tempNode.getFlag();
  63.367 -		//Puting data to datagram
  63.368 -		QByteArray nodeDatagram = QByteArray::fromRawData((char *)&newNodeHeader, sizeof(newNodeHeader));	
  63.369 -		newDatagram.append(nodeDatagram);
  63.370 -    }
  63.371 -	//////log->addLog(0,(QString)"TLV Sending RIB datagram...");
  63.372 -	emit sendDatagram(newDatagram);
  63.373 -
  63.374 -}
  63.375 -
  63.376 -
  63.377 -//Create BundleOffer
  63.378 -void TLV::createBundleOffer(QList<Bundle> bundleList)
  63.379 -{
  63.380 -	//Setting up variables
  63.381 -	struct BundleListHeader header;
  63.382 -	header.type = 0xA2;//Offer
  63.383 -	header.flags = 0x22;
  63.384 -	header.lenght = 0x00;
  63.385 -	header.entryCount=(qint32)bundleList.size();
  63.386 -	header.reserved = 0x00;
  63.387 -	//Preparing heder
  63.388 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(BundleListHeader));	
  63.389 -	//Adding bundles
  63.390 -	for (ushort i = 0; i < bundleList.size(); ++i) 
  63.391 -	{
  63.392 -		struct BundleListItem newBundleItem;
  63.393 -		//Resolving data from list
  63.394 -        Bundle tempBundle = bundleList.at(i);
  63.395 -		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
  63.396 -		newBundleItem.bundleId=(qint32)tempBundle.id;
  63.397 -		newBundleItem.BFlags=(qint32)tempBundle.options;
  63.398 -		newBundleItem.reserved=0xaa;
  63.399 -		//Puting data to datagram
  63.400 -		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(newBundleItem));	
  63.401 -		newDatagram.append(bundleDatagram);
  63.402 -    }
  63.403 -	//////log->addLog(0,(QString)"TLV Sending bundle offer...");
  63.404 -	emit sendDatagram(newDatagram);
  63.405 -
  63.406 -}
  63.407 -
  63.408 -//Create BundleOffer
  63.409 -void TLV::createBundleRequest(QList<Bundle> bundleList)
  63.410 -{
  63.411 -	//Setting up variables
  63.412 -	struct BundleListHeader header;
  63.413 -	header.type = 0xA3;//Request
  63.414 -	header.flags = 0x22;
  63.415 -	header.lenght = 0x00;
  63.416 -	header.entryCount=bundleList.size();
  63.417 -	header.reserved = 0x00;
  63.418 -	//Preparing heder
  63.419 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(BundleListHeader));	
  63.420 -	//Adding bundles
  63.421 -	for (ushort i = 0; i < bundleList.size(); ++i) 
  63.422 -	{
  63.423 -		struct BundleListItem newBundleItem;
  63.424 -		//Resolving data from list
  63.425 -        Bundle tempBundle = bundleList.at(i);
  63.426 -		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
  63.427 -		newBundleItem.bundleId=(qint32)tempBundle.id;
  63.428 -		newBundleItem.BFlags=(qint32)tempBundle.options;
  63.429 -		newBundleItem.reserved=0xaa;
  63.430 -		//Puting data to datagram
  63.431 -		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(BundleListItem));	
  63.432 -		newDatagram.append(bundleDatagram);
  63.433 -    }
  63.434 -	//////log->addLog(0,(QString)"TLV Sending bundle request...");
  63.435 -	emit sendDatagram(newDatagram);
  63.436 -
  63.437 -}
  63.438 -
  63.439 -
  63.440 -///Create BundleOffer
  63.441 -void TLV::createBundleData(QList<Bundle> bundleList)
  63.442 -{
  63.443 -
  63.444 -	
  63.445 -	//Setting up variables
  63.446 -	struct BundleListHeader header;
  63.447 -	header.type = 0xA4;//Bundle Data
  63.448 -	header.flags = 0x22;
  63.449 -	header.lenght = 0x00;
  63.450 -	header.entryCount=bundleList.size();
  63.451 -	header.reserved = 0x00;
  63.452 -	//Preparing heder
  63.453 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(header));	
  63.454 -	//Adding bundles
  63.455 -	for (ushort i = 0; i < bundleList.size(); ++i) 
  63.456 -	{
  63.457 -		struct BundleDataHeader newBundleItem;
  63.458 -		//Resolving data from list
  63.459 -        Bundle tempBundle = bundleList.at(i);
  63.460 -		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
  63.461 -		newBundleItem.sourceId=(qint32)tempBundle.sourceId;
  63.462 -		newBundleItem.bundleId=(qint32)tempBundle.id;
  63.463 -		newBundleItem.BFlags=(qint32)tempBundle.options;
  63.464 -		newBundleItem.reserved=0xaa;
  63.465 -		newBundleItem.time = tempBundle.timeStamp.toTime_t ();
  63.466 -		//Get bundle data
  63.467 -		QByteArray data;
  63.468 -		if(fileOption==1)
  63.469 -		{
  63.470 -			QString filename;
  63.471 -			filename=QString("%1").arg((int)tempBundle.id);
  63.472 -			QFile file(dir.filePath(filename));
  63.473 -			if (file.open(QIODevice::ReadOnly))
  63.474 -			{
  63.475 -			    data=file.readAll();
  63.476 -			    file.close();
  63.477 -			}
  63.478 -
  63.479 -		}
  63.480 -		else
  63.481 -			data = tempBundle.data;
  63.482 -		newBundleItem.dataLenght=(qint32)data.size();
  63.483 -		//Get bundle source string
  63.484 -		QByteArray srcData = tempBundle.sourceString;
  63.485 -		newBundleItem.sourceStringLenght=(qint32)srcData.size();
  63.486 -		//Get bundle destination string
  63.487 -		QByteArray dstData = tempBundle.destinationString;
  63.488 -		newBundleItem.destinationStringLenght=(qint32)dstData.size();
  63.489 -		//Puting item header to datagram
  63.490 -		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(newBundleItem));	
  63.491 -		//Puting item data to datagram
  63.492 -		bundleDatagram.append(data);
  63.493 -		bundleDatagram.append(srcData);
  63.494 -		bundleDatagram.append(dstData);
  63.495 -		//Adding it to main datagram
  63.496 -		newDatagram.append(bundleDatagram);
  63.497 -
  63.498 -    }
  63.499 -	//////log->addLog(0,(QString)"TLV Sending bundle data...");
  63.500 -	emit sendDatagram(newDatagram);
  63.501 -}
  63.502 -
  63.503 -
    64.1 --- a/Win32/tlv.h	Wed Jan 03 09:17:10 2007 +0000
    64.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    64.3 @@ -1,37 +0,0 @@
    64.4 -#ifndef TLV_H
    64.5 -#define TLV_H
    64.6 -
    64.7 -#include <QtCore>
    64.8 -#include <hello.h>
    64.9 -#include <node.h>
   64.10 -#include <bundle.h>
   64.11 -
   64.12 -class TLV : public QObject
   64.13 -{
   64.14 -
   64.15 -Q_OBJECT 
   64.16 -	public:
   64.17 -		TLV(QObject *parent = 0);
   64.18 -		int fileOption;
   64.19 -		QDir dir;
   64.20 -
   64.21 -	signals:
   64.22 -		void sendDatagram(QByteArray);
   64.23 -		void sendHello(Hello);
   64.24 -		void sendDictionary(QList<Node>);
   64.25 -		void sendRIB(QList<Node>);
   64.26 -		void sendBundleOffer(QList<Bundle>);
   64.27 -		void sendBundleRequest(QList<Bundle>);
   64.28 -		void sendBundleData(QList<Bundle>);
   64.29 -		
   64.30 -	public slots:
   64.31 -		void receiveHello(Hello);
   64.32 -		void receiveDatagram(QByteArray);
   64.33 -		void createDictionary(QList<Node>);
   64.34 -		void createRIB(QList<Node>);
   64.35 -		void createBundleOffer(QList<Bundle>);
   64.36 -		void createBundleRequest(QList<Bundle>);
   64.37 -		void createBundleData(QList<Bundle>);
   64.38 -};
   64.39 -
   64.40 -#endif
   64.41 \ No newline at end of file
    65.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    65.2 +++ b/doc/logging.txt	Thu Jun 26 17:39:40 2008 +0100
    65.3 @@ -0,0 +1,55 @@
    65.4 +I went through the old PRoPHET code and I check up what and when something is logged.
    65.5 +
    65.6 +Every event is logged in the folowing form (as one line in log file):
    65.7 +
    65.8 +DATE       TIME          INTERNAL ID (used to id when we have multiple connections)	Text
    65.9 +06/02/2008 11:59:47.982  000>> Starting Prophet!
   65.10 +
   65.11 +Currently there are three type of log files and these are the logging events:
   65.12 +
   65.13 +
   65.14 +STARTUP.LOG:
   65.15 +-PRoPHET startups
   65.16 +
   65.17 +TRANSFER.LOG:
   65.18 +-result of reading hash file at startup
   65.19 +-when creating bundle offer, we log which bundels are added to the offer, including encountering node Id
   65.20 +-when receiving smart bundle offer (hash table) we log when we add certian bundle in to the hash table
   65.21 +-when new bundle is received, bundle ID, src ID, des ID and bundle size is logged
   65.22 +-when new bundle injected to the DTN, bundle ID, src ID, des ID and bundle size is logged
   65.23 +
   65.24 +CONNECTIONS.LOG:
   65.25 +-new connection event (IP)
   65.26 +-dropped connection event (IP)
   65.27 +-when tcp socked state is changed, new state is logged
   65.28 +-tcp socked error  
   65.29 +
   65.30 +
   65.31 +I think that we should change/add more information about routing itself. Right now we don't have any information about probabilty tabels used in routing deceisions. One of the biggest challange that I see is how to sync log files (inpossible to synchronise RTC of all the nodes to miliseconds). I allready had lots of problems with this when I was debugging the PRoPHET code. I would souggest that the node which initiates connection generate a random nubmer which is exchanged with peering node and added to log. I would implement this after the summer test, because some protocol changes would be needed.
   65.32 +
   65.33 +My idea of new loggig files (needs to be discoused):
   65.34 +STARTUP.LOG:
   65.35 +-PRoPHET startups
   65.36 +-PRoPHET shutdown 
   65.37 +-manual single/all bundle erase
   65.38 +
   65.39 +ROUTING.LOG:
   65.40 +-new node ID
   65.41 +-when RIB is exchanged I would log old and updated probability table + bundle list
   65.42 +-bundle offer and bundle request list
   65.43 +
   65.44 +TRANSFER.LOG:
   65.45 +-begging and end time of bundle transffer (to check if bundle was actually transffered)
   65.46 +-when new bundle injected to the DTN
   65.47 +-when bundle is erased from the list (because of expired TTL or received ACK)
   65.48 +
   65.49 +CONNECTIONS.LOG:
   65.50 +-new connection event (IP)
   65.51 +-dropped connection event (IP)
   65.52 +-when tcp socked state is changed, new state (+ IP) is logged
   65.53 +
   65.54 +Comments on this issue are more than welcome...
   65.55 +
   65.56 +Regards,
   65.57 +Samo Grasic
   65.58 +
    66.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    66.2 +++ b/doc/vozlisca.txt	Thu Jun 26 17:39:40 2008 +0100
    66.3 @@ -0,0 +1,16 @@
    66.4 +Seznam vozlišè v MedoNet omrežju:
    66.5 +
    66.6 +WEP Geslo: medonet8
    66.7 +WEP HEX:6d65646f6e657438
    66.8 +
    66.9 +P	IP				NodeId	NodeName	OS		Owner
   66.10 +
   66.11 +webcam		192.168.2.2		2		webcam		Linux	MEIS
   66.12 +solonote	192.168.2.3		3		Samonote	XP		Samo
   66.13 +iiads		192.168.2.4		4		iiads		Linux	Samo	
   66.14 +worf		192.168.2.5		5		worf		Linux	MEIS
   66.15 +lisa		192.168.2.10	10		lisa		Linux	Samo
   66.16 +bart		192.168.2.11	11		bart		Linux	Samo
   66.17 +marge		192.168.2.6		6		marge		XP		Marija
   66.18 +
   66.19 +
    67.1 --- a/x86/2.7/DTN/HexDumpBuffer.cc	Wed Jan 03 09:17:10 2007 +0000
    67.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    67.3 @@ -1,63 +0,0 @@
    67.4 -/*
    67.5 - * IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. By
    67.6 - * downloading, copying, installing or using the software you agree to
    67.7 - * this license. If you do not agree to this license, do not download,
    67.8 - * install, copy or use the software.
    67.9 - * 
   67.10 - * Intel Open Source License 
   67.11 - * 
   67.12 - * Copyright (c) 2004 Intel Corporation. All rights reserved. 
   67.13 - * 
   67.14 - * Redistribution and use in source and binary forms, with or without
   67.15 - * modification, are permitted provided that the following conditions are
   67.16 - * met:
   67.17 - * 
   67.18 - *   Redistributions of source code must retain the above copyright
   67.19 - *   notice, this list of conditions and the following disclaimer.
   67.20 - * 
   67.21 - *   Redistributions in binary form must reproduce the above copyright
   67.22 - *   notice, this list of conditions and the following disclaimer in the
   67.23 - *   documentation and/or other materials provided with the distribution.
   67.24 - * 
   67.25 - *   Neither the name of the Intel Corporation nor the names of its
   67.26 - *   contributors may be used to endorse or promote products derived from
   67.27 - *   this software without specific prior written permission.
   67.28 - *  
   67.29 - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
   67.30 - * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
   67.31 - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
   67.32 - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE INTEL OR
   67.33 - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   67.34 - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   67.35 - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
   67.36 - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
   67.37 - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
   67.38 - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
   67.39 - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   67.40 - */
   67.41 -
   67.42 -#include <ctype.h>
   67.43 -#include "HexDumpBuffer.h"
   67.44 -
   67.45 -namespace oasys {
   67.46 -
   67.47 -void
   67.48 -HexDumpBuffer::hexify()
   67.49 -{
   67.50 -    // make a copy of the current data
   67.51 -    size_t len = length();
   67.52 -    std::string contents(data(), len);
   67.53 -    // rewind the string buffer backwards
   67.54 -    trim(length());
   67.55 -
   67.56 -    // generate the dump
   67.57 -    u_char* bp = (u_char*)contents.data();
   67.58 -    appendf("Size:%d\n",len);
   67.59 -    for (size_t i = 0; i < len; ++i, ++bp)
   67.60 -    {
   67.61 -        // print the hex character
   67.62 -        appendf("%02x", *bp);
   67.63 -    }
   67.64 -}
   67.65 -
   67.66 -} // namespace oasys
    68.1 --- a/x86/2.7/DTNInterface.cpp	Wed Jan 03 09:17:10 2007 +0000
    68.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    68.3 @@ -1,284 +0,0 @@
    68.4 -#include <QtCore>
    68.5 -#include <QtNetwork>
    68.6 -#include <readFile.h>
    68.7 -#include <bundleManager.h>
    68.8 -#include <DTNInterface.h>
    68.9 -#include <tcpClient.h>
   68.10 -
   68.11 -#define DTNTIMER 500
   68.12 -
   68.13 -
   68.14 -#define INIT 0
   68.15 -#define DTNLIST 1
   68.16 -#define IDLE 2
   68.17 -#define PARSE 3
   68.18 -
   68.19 -DTNInterface::DTNInterface(BundleManager* bundleMng, NodeManager* nodeMng)
   68.20 -{
   68.21 -	ReadFile conf;
   68.22 -	hostPort=conf.getDTNHostPort();
   68.23 -	hostAddress=conf.getDTNHostName();
   68.24 -	ourName=conf.getNodeName();
   68.25 -	ourId=conf.getNodeId();
   68.26 -	bundleManager = bundleMng;
   68.27 -	nodeManager = nodeMng;
   68.28 -	//Create and connect Hello Timer
   68.29 -	timer = new QTimer(this);
   68.30 -    connect(timer, SIGNAL(timeout()), this, SLOT(getBundles()));
   68.31 -    timer->start(DTNTIMER);
   68.32 -	client = new TcpClient(this);
   68.33 -    sender = new TcpClient(this);
   68.34 -	connect(client, SIGNAL(newAnswer(QByteArray)), this, SLOT(getResponse(QByteArray)));
   68.35 -	client->addHost(hostAddress.toString(),hostPort);
   68.36 -	sender->addHost(hostAddress.toString(),hostPort);
   68.37 -	dtnState=INIT;
   68.38 -	bundlesToParse=0;
   68.39 -	parsedList.clear();
   68.40 -	bundleList.clear();
   68.41 -	ackOption=conf.getUseACKS();
   68.42 -
   68.43 -}
   68.44 -
   68.45 -void DTNInterface::receiveBundle(Bundle bundle)
   68.46 -{
   68.47 -	QString command;
   68.48 -	if(bundle.data.size()>0)
   68.49 -	{
   68.50 -		command.append("bundle inject ");
   68.51 -		command.append(bundle.sourceString);
   68.52 -		command.append(" ");
   68.53 -		command.append(bundle.destinationString);
   68.54 -		command.append(" \"");
   68.55 -		for (int m = 0; m < bundle.data.size(); ++m)
   68.56 -		{
   68.57 -			QString ch;
   68.58 -			ch.append("\\x");
   68.59 -			ch.append(QString("%1").arg((unsigned char)bundle.data.at(m),0,16)  );
   68.60 -			command.append(ch);
   68.61 -		}	
   68.62 -		command.append("\"");
   68.63 -		sender->appendCommand(0,command);
   68.64 -		QFile file("inject.txt");
   68.65 -		if(file.open(QIODevice::WriteOnly))
   68.66 -		{
   68.67 -		    file.write(command.toAscii());
   68.68 -		    file.close();
   68.69 -		
   68.70 -		}
   68.71 -		
   68.72 -		emit sendLog("Adding bundle to DTN...");
   68.73 -	}
   68.74 -	else
   68.75 -		emit sendLog("Zero bundle not sent to DTN...");
   68.76 -
   68.77 -}
   68.78 -
   68.79 -
   68.80 -void DTNInterface::getBundles()
   68.81 -{
   68.82 -	if(dtnState==IDLE)
   68.83 -	{
   68.84 -		dtnState=INIT;
   68.85 -		client->appendCommand(0,(QString)"");
   68.86 -	}
   68.87 -}
   68.88 -
   68.89 -
   68.90 -void DTNInterface::getResponse(QByteArray response)
   68.91 -{
   68.92 -	QString log;
   68.93 -	switch(dtnState)
   68.94 -	{
   68.95 -		case INIT:log.append("INIT:");break;
   68.96 -		case DTNLIST:log.append("DTNLIST:");break;
   68.97 -		case IDLE:log.append("IDLE:");break;
   68.98 -		case PARSE:log.append("PARSE:");break;
   68.99 -	}
  68.100 -	int size=response.size();
  68.101 -	if(size<500)
  68.102 -		log.append(response);
  68.103 -	else
  68.104 -		log.append("Long response...");
  68.105 -	emit sendLog(log);
  68.106 -	QString temp;
  68.107 -	int pos;
  68.108 -	int pos2;
  68.109 -	int inTheList=-1;
  68.110 -	int flag;
  68.111 -	
  68.112 -
  68.113 - 	switch(dtnState)
  68.114 -	{
  68.115 -		case INIT:	bundleIndex=0;
  68.116 -					bundleList.clear();
  68.117 -					client->appendCommand(0,(QString)"bundle list");
  68.118 -					dtnState=DTNLIST;
  68.119 -			break;
  68.120 -		case DTNLIST:	//we get the nuber of bundles
  68.121 -						pos = response.indexOf("(",0);
  68.122 -						pos2 = response.indexOf(")",0);
  68.123 -						temp=response.mid(pos+1,pos2-pos-1);
  68.124 -						bundlesToParse=temp.toInt(0,10);
  68.125 -						response.remove(0,pos2+6);
  68.126 -						emit sendLog("NR BUNDLES:");
  68.127 -	   				    emit sendLog(QString("%1").arg(bundlesToParse));
  68.128 -						while(bundlesToParse>0)
  68.129 -						{
  68.130 -							Bundle tempBundle;
  68.131 -							//If acking is enabled
  68.132 -							tempBundle.setContent(bundleManager->getSeq(),ourId,0,"",0);
  68.133 -							pos2 = response.indexOf(":",0);
  68.134 -							temp=response.mid(0,pos2);
  68.135 -							//Parse bundle ID
  68.136 -							tempBundle.options=temp.toInt(0,10);
  68.137 -							response.remove(0,pos2+2);
  68.138 -							//Parse source name
  68.139 -							pos2= response.indexOf("->",0);
  68.140 -							temp=response.mid(0,pos2-1);
  68.141 -							tempBundle.sourceString=temp.toAscii();
  68.142 -							response.remove(0,pos2+3);
  68.143 -							//Parse destination name
  68.144 -							pos2= response.indexOf("length",0);
  68.145 -							temp=response.mid(0,pos2-1);
  68.146 -							tempBundle.destinationString=temp.toAscii();
  68.147 -							//Parse data length
  68.148 -							response.remove(0,pos2+7);
  68.149 -							pos2= response.indexOf("\r",0);
  68.150 -							temp=response.mid(0,pos2);
  68.151 -							tempBundle.dataLength=temp.toInt(0,10);
  68.152 -							//Removing last part
  68.153 -							pos2= response.indexOf("\r",0);
  68.154 -							response.remove(0,pos2+3);
  68.155 -							bundleList.append(tempBundle);
  68.156 -							bundlesToParse--;
  68.157 -						}
  68.158 -						//Checking for unused bundles in parsed list
  68.159 -						for (int m = 0; m < parsedList.size(); ++m)
  68.160 -						{
  68.161 -							inTheList=-1;
  68.162 -							for (int n = 0; n < bundleList.size(); ++n)
  68.163 -							{
  68.164 -								if(parsedList.at(m)==bundleList.at(n).options)
  68.165 -									inTheList=m;
  68.166 -							}
  68.167 -							if(inTheList==-1)
  68.168 -							{
  68.169 -								parsedList.removeAt(m);
  68.170 -								m=0;
  68.171 -							}
  68.172 -						}
  68.173 -						//Check if it is some of the bundles are already on the parsed list
  68.174 -						for (int m = 0; m < parsedList.size(); ++m)
  68.175 -						{
  68.176 -							inTheList=-1;
  68.177 -							for (int n = 0; n < bundleList.size(); ++n)
  68.178 -							{
  68.179 -								if(parsedList.at(m)==bundleList.at(n).options)
  68.180 -									inTheList=n;
  68.181 -							}
  68.182 -							if(inTheList!=-1)
  68.183 -								bundleList.removeAt(inTheList);
  68.184 -						}
  68.185 -						if(bundleList.size()>0)
  68.186 -						{
  68.187 -							QString command;
  68.188 -							command.append("bundle dump ");
  68.189 -							command.append(QString("%1").arg(bundleList.at(bundleIndex).options));
  68.190 -							client->appendCommand(0,command);
  68.191 -							dtnState=PARSE;
  68.192 -							
  68.193 -						}
  68.194 -						else
  68.195 -						{
  68.196 -							dtnState=IDLE;
  68.197 -						}
  68.198 -			break;
  68.199 -		case PARSE:	client->appendCommand(0,(QString)"bundle list");
  68.200 -						//First we extract the bundle payload size
  68.201 -						temp=response.mid(0,20);
  68.202 -						pos=temp.indexOf("Size:",0);			
  68.203 -						int payloadSize;					
  68.204 -						flag=0;
  68.205 -						pos2=temp.indexOf("\n",0);
  68.206 -						temp=temp.mid(pos+5,pos2-(pos+6));
  68.207 -						payloadSize=temp.toInt(0,10);
  68.208 -						if(payloadSize>0)
  68.209 -						{
  68.210 -							
  68.211 -							QByteArray tempData;
  68.212 -							QString hexValue;
  68.213 -							char decValue;
  68.214 -							response.remove(0,pos2+1);
  68.215 -							pos=0;
  68.216 -							while(pos<(2*payloadSize))
  68.217 -							{
  68.218 -								//Decode hex value
  68.219 -								hexValue=response.mid(pos,2);
  68.220 -								decValue=hexValue.toShort(0,16);
  68.221 -								tempData.append(decValue);
  68.222 -								//Move to next value
  68.223 -								pos=pos+2;
  68.224 -
  68.225 -							}							
  68.226 -							
  68.227 -								
  68.228 -							Bundle tempBundle=bundleList.at(bundleIndex);
  68.229 -							tempBundle.data=tempData;
  68.230 -
  68.231 -						//Removing from the list
  68.232 -							parsedList.append(tempBundle.options);
  68.233 -			
  68.234 -							
  68.235 -							
  68.236 -							
  68.237 -							
  68.238 -							//Checking if this is not our bundle
  68.239 -							QString temp;
  68.240 -							QString destination;
  68.241 -							temp=tempBundle.destinationString;
  68.242 -							pos=temp.indexOf("://",0);
  68.243 -							temp.remove(0,pos+3);
  68.244 -							pos=temp.indexOf("/",0);
  68.245 -							destination=temp.mid(0,pos);
  68.246 -							if(destination!=ourName)
  68.247 -							{
  68.248 -								emit sendLog("Bundle parsed...\r\n");
  68.249 -								tempBundle.options=0;
  68.250 -								//If acking is enabled
  68.251 -								int option=0;
  68.252 -								if(ackOption==1)
  68.253 -								{
  68.254 -									//We set the ACKOption bit and set the ACK bit 
  68.255 -									option=option|0x01;
  68.256 -								}
  68.257 -								tempBundle.options=option;
  68.258 -								if(tempBundle.data.size()>0)
  68.259 -									emit sendBundle(tempBundle);
  68.260 -								bundleManager->updateBundlesDestinations(nodeManager);
  68.261 -							}
  68.262 -							else
  68.263 -							{
  68.264 -								emit sendLog("Bundle parsed but it is for us...\r\n");
  68.265 -							}
  68.266 -						
  68.267 -						}
  68.268 -						bundleIndex++;
  68.269 -						if(bundleIndex<bundleList.size())
  68.270 -						{
  68.271 -							QString command;
  68.272 -							//We need to use bundle dump_tcl command here as well
  68.273 -							command.append("bundle dump_tcl ");
  68.274 -							command.append(QString("%1").arg(bundleList.at(bundleIndex).options));
  68.275 -							client->appendCommand(0,command);
  68.276 -							dtnState=PARSE;
  68.277 -						}
  68.278 -						else
  68.279 -						{
  68.280 -							dtnState=IDLE;
  68.281 -						}
  68.282 -			break;
  68.283 -		case IDLE:		dtnState=IDLE;
  68.284 -			break;
  68.285 -	}
  68.286 -
  68.287 -}
    69.1 --- a/x86/2.7/DTNInterface.h	Wed Jan 03 09:17:10 2007 +0000
    69.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    69.3 @@ -1,73 +0,0 @@
    69.4 -#ifndef DTNINTERFACE_H
    69.5 -#define DTNINTERFACE_H
    69.6 -
    69.7 -//#include <iostream.h>
    69.8 -#include <QtCore>
    69.9 -#include <QtNetwork>
   69.10 -#include <connection.h>
   69.11 -#include <dataPacket.h>
   69.12 -#include <neighbourAwareness.h>
   69.13 -#include <bundleManager.h>
   69.14 -#include <nodeManager.h>
   69.15 -#include <tcpClient.h>
   69.16 -
   69.17 -/*! \brief This class handles the communication between PRoPHET and DTN.
   69.18 - *
   69.19 - * That is passing bundles between the BundleManager and DTN.<BR>
   69.20 - * DTN States:<BR>
   69.21 - * INIT - ???<BR>
   69.22 - * DTNLIST - ???<BR>
   69.23 - * IDLE - ???<BR>
   69.24 - * PARSE - ???<BR>
   69.25 - */
   69.26 -class DTNInterface : public QObject 
   69.27 -{
   69.28 -
   69.29 -	Q_OBJECT
   69.30 -	public:
   69.31 -	int dtnState;
   69.32 -	int bundlesToParse;
   69.33 -	QList<Bundle> bundleList;
   69.34 -	QList<int> parsedList;
   69.35 -	DTNInterface(BundleManager*,NodeManager* nodeMng);
   69.36 -	BundleManager *bundleManager;
   69.37 -	NodeManager* nodeManager;
   69.38 -	int bundleIndex; 
   69.39 -	int hostPort;
   69.40 -	QHostAddress hostAddress;
   69.41 -	TcpClient *client;
   69.42 -	TcpClient *sender;
   69.43 -	QString ourName;
   69.44 -	int ourId;
   69.45 -	QTimer *timer;
   69.46 -	int ackOption;
   69.47 -		
   69.48 -	public slots:
   69.49 -	/*!
   69.50 -	 * Fetches bundles from DTN???
   69.51 -	 */
   69.52 -	void getBundles();
   69.53 -	
   69.54 -	void getResponse(QByteArray response);
   69.55 -	
   69.56 -	/*!
   69.57 -	 * Injects the specified bundle into DTN.
   69.58 -	 */
   69.59 -	void receiveBundle(Bundle);
   69.60 -	signals:
   69.61 -	
   69.62 -	/*!
   69.63 -	 * Emit the specified QString to the DTN-interface log.
   69.64 -	 */
   69.65 -	void sendLog(QString);
   69.66 -	
   69.67 -	/*!
   69.68 -	 * Emit the specified QString to the DTN-interface log.
   69.69 -	 */
   69.70 -	void sendBundle(Bundle);
   69.71 -
   69.72 -
   69.73 -
   69.74 -};
   69.75 -
   69.76 -#endif
    70.1 --- a/x86/2.7/Doxyfile	Wed Jan 03 09:17:10 2007 +0000
    70.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    70.3 @@ -1,1252 +0,0 @@
    70.4 -# Doxyfile 1.5.0
    70.5 -
    70.6 -# This file describes the settings to be used by the documentation system
    70.7 -# doxygen (www.doxygen.org) for a project
    70.8 -#
    70.9 -# All text after a hash (#) is considered a comment and will be ignored
   70.10 -# The format is:
   70.11 -#       TAG = value [value, ...]
   70.12 -# For lists items can also be appended using:
   70.13 -#       TAG += value [value, ...]
   70.14 -# Values that contain spaces should be placed between quotes (" ")
   70.15 -
   70.16 -#---------------------------------------------------------------------------
   70.17 -# Project related configuration options
   70.18 -#---------------------------------------------------------------------------
   70.19 -
   70.20 -# The PROJECT_NAME tag is a single word (or a sequence of words surrounded 
   70.21 -# by quotes) that should identify the project.
   70.22 -
   70.23 -PROJECT_NAME           = PRoPHET
   70.24 -
   70.25 -# The PROJECT_NUMBER tag can be used to enter a project or revision number. 
   70.26 -# This could be handy for archiving the generated documentation or 
   70.27 -# if some version control system is used.
   70.28 -
   70.29 -PROJECT_NUMBER         = 
   70.30 -
   70.31 -# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) 
   70.32 -# base path where the generated documentation will be put. 
   70.33 -# If a relative path is entered, it will be relative to the location 
   70.34 -# where doxygen was started. If left blank the current directory will be used.
   70.35 -
   70.36 -OUTPUT_DIRECTORY       = docs
   70.37 -
   70.38 -# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 
   70.39 -# 4096 sub-directories (in 2 levels) under the output directory of each output 
   70.40 -# format and will distribute the generated files over these directories. 
   70.41 -# Enabling this option can be useful when feeding doxygen a huge amount of 
   70.42 -# source files, where putting all generated files in the same directory would 
   70.43 -# otherwise cause performance problems for the file system.
   70.44 -
   70.45 -CREATE_SUBDIRS         = NO
   70.46 -
   70.47 -# The OUTPUT_LANGUAGE tag is used to specify the language in which all 
   70.48 -# documentation generated by doxygen is written. Doxygen will use this 
   70.49 -# information to generate all constant output in the proper language. 
   70.50 -# The default language is English, other supported languages are: 
   70.51 -# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, 
   70.52 -# Croatian, Czech, Danish, Dutch, Finnish, French, German, Greek, Hungarian, 
   70.53 -# Italian, Japanese, Japanese-en (Japanese with English messages), Korean, 
   70.54 -# Korean-en, Lithuanian, Norwegian, Polish, Portuguese, Romanian, Russian, 
   70.55 -# Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
   70.56 -
   70.57 -OUTPUT_LANGUAGE        = English
   70.58 -
   70.59 -# This tag can be used to specify the encoding used in the generated output. 
   70.60 -# The encoding is not always determined by the language that is chosen, 
   70.61 -# but also whether or not the output is meant for Windows or non-Windows users. 
   70.62 -# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES 
   70.63 -# forces the Windows encoding (this is the default for the Windows binary), 
   70.64 -# whereas setting the tag to NO uses a Unix-style encoding (the default for 
   70.65 -# all platforms other than Windows).
   70.66 -
   70.67 -USE_WINDOWS_ENCODING   = YES
   70.68 -
   70.69 -# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will 
   70.70 -# include brief member descriptions after the members that are listed in 
   70.71 -# the file and class documentation (similar to JavaDoc). 
   70.72 -# Set to NO to disable this.
   70.73 -
   70.74 -BRIEF_MEMBER_DESC      = YES
   70.75 -
   70.76 -# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend 
   70.77 -# the brief description of a member or function before the detailed description. 
   70.78 -# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the 
   70.79 -# brief descriptions will be completely suppressed.
   70.80 -
   70.81 -REPEAT_BRIEF           = YES
   70.82 -
   70.83 -# This tag implements a quasi-intelligent brief description abbreviator 
   70.84 -# that is used to form the text in various listings. Each string 
   70.85 -# in this list, if found as the leading text of the brief description, will be 
   70.86 -# stripped from the text and the result after processing the whole list, is 
   70.87 -# used as the annotated text. Otherwise, the brief description is used as-is. 
   70.88 -# If left blank, the following values are used ("$name" is automatically 
   70.89 -# replaced with the name of the entity): "The $name class" "The $name widget" 
   70.90 -# "The $name file" "is" "provides" "specifies" "contains" 
   70.91 -# "represents" "a" "an" "the"
   70.92 -
   70.93 -ABBREVIATE_BRIEF       = 
   70.94 -
   70.95 -# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then 
   70.96 -# Doxygen will generate a detailed section even if there is only a brief 
   70.97 -# description.
   70.98 -
   70.99 -ALWAYS_DETAILED_SEC    = YES
  70.100 -
  70.101 -# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all 
  70.102 -# inherited members of a class in the documentation of that class as if those 
  70.103 -# members were ordinary class members. Constructors, destructors and assignment 
  70.104 -# operators of the base classes will not be shown.
  70.105 -
  70.106 -INLINE_INHERITED_MEMB  = NO
  70.107 -
  70.108 -# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full 
  70.109 -# path before files name in the file list and in the header files. If set 
  70.110 -# to NO the shortest path that makes the file name unique will be used.
  70.111 -
  70.112 -FULL_PATH_NAMES        = YES
  70.113 -
  70.114 -# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag 
  70.115 -# can be used to strip a user-defined part of the path. Stripping is 
  70.116 -# only done if one of the specified strings matches the left-hand part of 
  70.117 -# the path. The tag can be used to show relative paths in the file list. 
  70.118 -# If left blank the directory from which doxygen is run is used as the 
  70.119 -# path to strip.
  70.120 -
  70.121 -STRIP_FROM_PATH        = 
  70.122 -
  70.123 -# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of 
  70.124 -# the path mentioned in the documentation of a class, which tells 
  70.125 -# the reader which header file to include in order to use a class. 
  70.126 -# If left blank only the name of the header file containing the class 
  70.127 -# definition is used. Otherwise one should specify the include paths that 
  70.128 -# are normally passed to the compiler using the -I flag.
  70.129 -
  70.130 -STRIP_FROM_INC_PATH    = 
  70.131 -
  70.132 -# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter 
  70.133 -# (but less readable) file names. This can be useful is your file systems 
  70.134 -# doesn't support long names like on DOS, Mac, or CD-ROM.
  70.135 -
  70.136 -SHORT_NAMES            = NO
  70.137 -
  70.138 -# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen 
  70.139 -# will interpret the first line (until the first dot) of a JavaDoc-style 
  70.140 -# comment as the brief description. If set to NO, the JavaDoc 
  70.141 -# comments will behave just like the Qt-style comments (thus requiring an 
  70.142 -# explicit @brief command for a brief description.
  70.143 -
  70.144 -JAVADOC_AUTOBRIEF      = NO
  70.145 -
  70.146 -# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen 
  70.147 -# treat a multi-line C++ special comment block (i.e. a block of //! or /// 
  70.148 -# comments) as a brief description. This used to be the default behaviour. 
  70.149 -# The new default is to treat a multi-line C++ comment block as a detailed 
  70.150 -# description. Set this tag to YES if you prefer the old behaviour instead.
  70.151 -
  70.152 -MULTILINE_CPP_IS_BRIEF = NO
  70.153 -
  70.154 -# If the DETAILS_AT_TOP tag is set to YES then Doxygen 
  70.155 -# will output the detailed description near the top, like JavaDoc.
  70.156 -# If set to NO, the detailed description appears after the member 
  70.157 -# documentation.
  70.158 -
  70.159 -DETAILS_AT_TOP         = YES
  70.160 -
  70.161 -# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented 
  70.162 -# member inherits the documentation from any documented member that it 
  70.163 -# re-implements.
  70.164 -
  70.165 -INHERIT_DOCS           = YES
  70.166 -
  70.167 -# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce 
  70.168 -# a new page for each member. If set to NO, the documentation of a member will 
  70.169 -# be part of the file/class/namespace that contains it.
  70.170 -
  70.171 -SEPARATE_MEMBER_PAGES  = NO
  70.172 -
  70.173 -# The TAB_SIZE tag can be used to set the number of spaces in a tab. 
  70.174 -# Doxygen uses this value to replace tabs by spaces in code fragments.
  70.175 -
  70.176 -TAB_SIZE               = 8
  70.177 -
  70.178 -# This tag can be used to specify a number of aliases that acts 
  70.179 -# as commands in the documentation. An alias has the form "name=value". 
  70.180 -# For example adding "sideeffect=\par Side Effects:\n" will allow you to 
  70.181 -# put the command \sideeffect (or @sideeffect) in the documentation, which 
  70.182 -# will result in a user-defined paragraph with heading "Side Effects:". 
  70.183 -# You can put \n's in the value part of an alias to insert newlines.
  70.184 -
  70.185 -ALIASES                = 
  70.186 -
  70.187 -# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C 
  70.188 -# sources only. Doxygen will then generate output that is more tailored for C. 
  70.189 -# For instance, some of the names that are used will be different. The list 
  70.190 -# of all members will be omitted, etc.
  70.191 -
  70.192 -OPTIMIZE_OUTPUT_FOR_C  = NO
  70.193 -
  70.194 -# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java 
  70.195 -# sources only. Doxygen will then generate output that is more tailored for Java. 
  70.196 -# For instance, namespaces will be presented as packages, qualified scopes 
  70.197 -# will look different, etc.
  70.198 -
  70.199 -OPTIMIZE_OUTPUT_JAVA   = NO
  70.200 -
  70.201 -# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want to 
  70.202 -# include (a tag file for) the STL sources as input, then you should 
  70.203 -# set this tag to YES in order to let doxygen match functions declarations and 
  70.204 -# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. 
  70.205 -# func(std::string) {}). This also make the inheritance and collaboration 
  70.206 -# diagrams that involve STL classes more complete and accurate.
  70.207 -
  70.208 -BUILTIN_STL_SUPPORT    = NO
  70.209 -
  70.210 -# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC 
  70.211 -# tag is set to YES, then doxygen will reuse the documentation of the first 
  70.212 -# member in the group (if any) for the other members of the group. By default 
  70.213 -# all members of a group must be documented explicitly.
  70.214 -
  70.215 -DISTRIBUTE_GROUP_DOC   = NO
  70.216 -
  70.217 -# Set the SUBGROUPING tag to YES (the default) to allow class member groups of 
  70.218 -# the same type (for instance a group of public functions) to be put as a 
  70.219 -# subgroup of that type (e.g. under the Public Functions section). Set it to 
  70.220 -# NO to prevent subgrouping. Alternatively, this can be done per class using 
  70.221 -# the \nosubgrouping command.
  70.222 -
  70.223 -SUBGROUPING            = YES
  70.224 -
  70.225 -#---------------------------------------------------------------------------
  70.226 -# Build related configuration options
  70.227 -#---------------------------------------------------------------------------
  70.228 -
  70.229 -# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in 
  70.230 -# documentation are documented, even if no documentation was available. 
  70.231 -# Private class members and static file members will be hidden unless 
  70.232 -# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
  70.233 -
  70.234 -EXTRACT_ALL            = NO
  70.235 -
  70.236 -# If the EXTRACT_PRIVATE tag is set to YES all private members of a class 
  70.237 -# will be included in the documentation.
  70.238 -
  70.239 -EXTRACT_PRIVATE        = NO
  70.240 -
  70.241 -# If the EXTRACT_STATIC tag is set to YES all static members of a file 
  70.242 -# will be included in the documentation.
  70.243 -
  70.244 -EXTRACT_STATIC         = NO
  70.245 -
  70.246 -# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) 
  70.247 -# defined locally in source files will be included in the documentation. 
  70.248 -# If set to NO only classes defined in header files are included.
  70.249 -
  70.250 -EXTRACT_LOCAL_CLASSES  = YES
  70.251 -
  70.252 -# This flag is only useful for Objective-C code. When set to YES local 
  70.253 -# methods, which are defined in the implementation section but not in 
  70.254 -# the interface are included in the documentation. 
  70.255 -# If set to NO (the default) only methods in the interface are included.
  70.256 -
  70.257 -EXTRACT_LOCAL_METHODS  = NO
  70.258 -
  70.259 -# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all 
  70.260 -# undocumented members of documented classes, files or namespaces. 
  70.261 -# If set to NO (the default) these members will be included in the 
  70.262 -# various overviews, but no documentation section is generated. 
  70.263 -# This option has no effect if EXTRACT_ALL is enabled.
  70.264 -
  70.265 -HIDE_UNDOC_MEMBERS     = NO
  70.266 -
  70.267 -# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all 
  70.268 -# undocumented classes that are normally visible in the class hierarchy. 
  70.269 -# If set to NO (the default) these classes will be included in the various 
  70.270 -# overviews. This option has no effect if EXTRACT_ALL is enabled.
  70.271 -
  70.272 -HIDE_UNDOC_CLASSES     = NO
  70.273 -
  70.274 -# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all 
  70.275 -# friend (class|struct|union) declarations. 
  70.276 -# If set to NO (the default) these declarations will be included in the 
  70.277 -# documentation.
  70.278 -
  70.279 -HIDE_FRIEND_COMPOUNDS  = NO
  70.280 -
  70.281 -# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any 
  70.282 -# documentation blocks found inside the body of a function. 
  70.283 -# If set to NO (the default) these blocks will be appended to the 
  70.284 -# function's detailed documentation block.
  70.285 -
  70.286 -HIDE_IN_BODY_DOCS      = NO
  70.287 -
  70.288 -# The INTERNAL_DOCS tag determines if documentation 
  70.289 -# that is typed after a \internal command is included. If the tag is set 
  70.290 -# to NO (the default) then the documentation will be excluded. 
  70.291 -# Set it to YES to include the internal documentation.
  70.292 -
  70.293 -INTERNAL_DOCS          = NO
  70.294 -
  70.295 -# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate 
  70.296 -# file names in lower-case letters. If set to YES upper-case letters are also 
  70.297 -# allowed. This is useful if you have classes or files whose names only differ 
  70.298 -# in case and if your file system supports case sensitive file names. Windows 
  70.299 -# and Mac users are advised to set this option to NO.
  70.300 -
  70.301 -CASE_SENSE_NAMES       = NO
  70.302 -
  70.303 -# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen 
  70.304 -# will show members with their full class and namespace scopes in the 
  70.305 -# documentation. If set to YES the scope will be hidden.
  70.306 -
  70.307 -HIDE_SCOPE_NAMES       = NO
  70.308 -
  70.309 -# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen 
  70.310 -# will put a list of the files that are included by a file in the documentation 
  70.311 -# of that file.
  70.312 -
  70.313 -SHOW_INCLUDE_FILES     = YES
  70.314 -
  70.315 -# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] 
  70.316 -# is inserted in the documentation for inline members.
  70.317 -
  70.318 -INLINE_INFO            = YES
  70.319 -
  70.320 -# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen 
  70.321 -# will sort the (detailed) documentation of file and class members 
  70.322 -# alphabetically by member name. If set to NO the members will appear in 
  70.323 -# declaration order.
  70.324 -
  70.325 -SORT_MEMBER_DOCS       = YES
  70.326 -
  70.327 -# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the 
  70.328 -# brief documentation of file, namespace and class members alphabetically 
  70.329 -# by member name. If set to NO (the default) the members will appear in 
  70.330 -# declaration order.
  70.331 -
  70.332 -SORT_BRIEF_DOCS        = NO
  70.333 -
  70.334 -# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be 
  70.335 -# sorted by fully-qualified names, including namespaces. If set to 
  70.336 -# NO (the default), the class list will be sorted only by class name, 
  70.337 -# not including the namespace part. 
  70.338 -# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
  70.339 -# Note: This option applies only to the class list, not to the 
  70.340 -# alphabetical list.
  70.341 -
  70.342 -SORT_BY_SCOPE_NAME     = NO
  70.343 -
  70.344 -# The GENERATE_TODOLIST tag can be used to enable (YES) or 
  70.345 -# disable (NO) the todo list. This list is created by putting \todo 
  70.346 -# commands in the documentation.
  70.347 -
  70.348 -GENERATE_TODOLIST      = YES
  70.349 -
  70.350 -# The GENERATE_TESTLIST tag can be used to enable (YES) or 
  70.351 -# disable (NO) the test list. This list is created by putting \test 
  70.352 -# commands in the documentation.
  70.353 -
  70.354 -GENERATE_TESTLIST      = YES
  70.355 -
  70.356 -# The GENERATE_BUGLIST tag can be used to enable (YES) or 
  70.357 -# disable (NO) the bug list. This list is created by putting \bug 
  70.358 -# commands in the documentation.
  70.359 -
  70.360 -GENERATE_BUGLIST       = YES
  70.361 -
  70.362 -# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or 
  70.363 -# disable (NO) the deprecated list. This list is created by putting 
  70.364 -# \deprecated commands in the documentation.
  70.365 -
  70.366 -GENERATE_DEPRECATEDLIST= YES
  70.367 -
  70.368 -# The ENABLED_SECTIONS tag can be used to enable conditional 
  70.369 -# documentation sections, marked by \if sectionname ... \endif.
  70.370 -
  70.371 -ENABLED_SECTIONS       = 
  70.372 -
  70.373 -# The MAX_INITIALIZER_LINES tag determines the maximum number of lines 
  70.374 -# the initial value of a variable or define consists of for it to appear in 
  70.375 -# the documentation. If the initializer consists of more lines than specified 
  70.376 -# here it will be hidden. Use a value of 0 to hide initializers completely. 
  70.377 -# The appearance of the initializer of individual variables and defines in the 
  70.378 -# documentation can be controlled using \showinitializer or \hideinitializer 
  70.379 -# command in the documentation regardless of this setting.
  70.380 -
  70.381 -MAX_INITIALIZER_LINES  = 30
  70.382 -
  70.383 -# Set the SHOW_USED_FILES tag to NO to disable the list of files generated 
  70.384 -# at the bottom of the documentation of classes and structs. If set to YES the 
  70.385 -# list will mention the files that were used to generate the documentation.
  70.386 -
  70.387 -SHOW_USED_FILES        = YES
  70.388 -
  70.389 -# If the sources in your project are distributed over multiple directories 
  70.390 -# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy 
  70.391 -# in the documentation. The default is NO.
  70.392 -
  70.393 -SHOW_DIRECTORIES       = NO
  70.394 -
  70.395 -# The FILE_VERSION_FILTER tag can be used to specify a program or script that 
  70.396 -# doxygen should invoke to get the current version for each file (typically from the 
  70.397 -# version control system). Doxygen will invoke the program by executing (via 
  70.398 -# popen()) the command <command> <input-file>, where <command> is the value of 
  70.399 -# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file 
  70.400 -# provided by doxygen. Whatever the program writes to standard output 
  70.401 -# is used as the file version. See the manual for examples.
  70.402 -
  70.403 -FILE_VERSION_FILTER    = 
  70.404 -
  70.405 -#---------------------------------------------------------------------------
  70.406 -# configuration options related to warning and progress messages
  70.407 -#---------------------------------------------------------------------------
  70.408 -
  70.409 -# The QUIET tag can be used to turn on/off the messages that are generated 
  70.410 -# by doxygen. Possible values are YES and NO. If left blank NO is used.
  70.411 -
  70.412 -QUIET                  = NO
  70.413 -
  70.414 -# The WARNINGS tag can be used to turn on/off the warning messages that are 
  70.415 -# generated by doxygen. Possible values are YES and NO. If left blank 
  70.416 -# NO is used.
  70.417 -
  70.418 -WARNINGS               = YES
  70.419 -
  70.420 -# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings 
  70.421 -# for undocumented members. If EXTRACT_ALL is set to YES then this flag will 
  70.422 -# automatically be disabled.
  70.423 -
  70.424 -WARN_IF_UNDOCUMENTED   = YES
  70.425 -
  70.426 -# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for 
  70.427 -# potential errors in the documentation, such as not documenting some 
  70.428 -# parameters in a documented function, or documenting parameters that 
  70.429 -# don't exist or using markup commands wrongly.
  70.430 -
  70.431 -WARN_IF_DOC_ERROR      = YES
  70.432 -
  70.433 -# This WARN_NO_PARAMDOC option can be abled to get warnings for 
  70.434 -# functions that are documented, but have no documentation for their parameters 
  70.435 -# or return value. If set to NO (the default) doxygen will only warn about 
  70.436 -# wrong or incomplete parameter documentation, but not about the absence of 
  70.437 -# documentation.
  70.438 -
  70.439 -WARN_NO_PARAMDOC       = NO
  70.440 -
  70.441 -# The WARN_FORMAT tag determines the format of the warning messages that 
  70.442 -# doxygen can produce. The string should contain the $file, $line, and $text 
  70.443 -# tags, which will be replaced by the file and line number from which the 
  70.444 -# warning originated and the warning text. Optionally the format may contain 
  70.445 -# $version, which will be replaced by the version of the file (if it could 
  70.446 -# be obtained via FILE_VERSION_FILTER)
  70.447 -
  70.448 -WARN_FORMAT            = "$file:$line: $text"
  70.449 -
  70.450 -# The WARN_LOGFILE tag can be used to specify a file to which warning 
  70.451 -# and error messages should be written. If left blank the output is written 
  70.452 -# to stderr.
  70.453 -
  70.454 -WARN_LOGFILE           = 
  70.455 -
  70.456 -#---------------------------------------------------------------------------
  70.457 -# configuration options related to the input files
  70.458 -#---------------------------------------------------------------------------
  70.459 -
  70.460 -# The INPUT tag can be used to specify the files and/or directories that contain 
  70.461 -# documented source files. You may enter file names like "myfile.cpp" or 
  70.462 -# directories like "/usr/src/myproject". Separate the files or directories 
  70.463 -# with spaces.
  70.464 -
  70.465 -INPUT                  =
  70.466 -
  70.467 -# If the value of the INPUT tag contains directories, you can use the 
  70.468 -# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
  70.469 -# and *.h) to filter out the source-files in the directories. If left 
  70.470 -# blank the following patterns are tested: 
  70.471 -# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx 
  70.472 -# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py
  70.473 -
  70.474 -FILE_PATTERNS          = *.h *.cpp
  70.475 -
  70.476 -# The RECURSIVE tag can be used to turn specify whether or not subdirectories 
  70.477 -# should be searched for input files as well. Possible values are YES and NO. 
  70.478 -# If left blank NO is used.
  70.479 -
  70.480 -RECURSIVE              = NO
  70.481 -
  70.482 -# The EXCLUDE tag can be used to specify files and/or directories that should 
  70.483 -# excluded from the INPUT source files. This way you can easily exclude a 
  70.484 -# subdirectory from a directory tree whose root is specified with the INPUT tag.
  70.485 -
  70.486 -EXCLUDE                = 
  70.487 -
  70.488 -# The EXCLUDE_SYMLINKS tag can be used select whether or not files or 
  70.489 -# directories that are symbolic links (a Unix filesystem feature) are excluded 
  70.490 -# from the input.
  70.491 -
  70.492 -EXCLUDE_SYMLINKS       = NO
  70.493 -
  70.494 -# If the value of the INPUT tag contains directories, you can use the 
  70.495 -# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude 
  70.496 -# certain files from those directories. Note that the wildcards are matched 
  70.497 -# against the file with absolute path, so to exclude all test directories 
  70.498 -# for example use the pattern */test/*
  70.499 -
  70.500 -EXCLUDE_PATTERNS       = 
  70.501 -
  70.502 -# The EXAMPLE_PATH tag can be used to specify one or more files or 
  70.503 -# directories that contain example code fragments that are included (see 
  70.504 -# the \include command).
  70.505 -
  70.506 -EXAMPLE_PATH           = 
  70.507 -
  70.508 -# If the value of the EXAMPLE_PATH tag contains directories, you can use the 
  70.509 -# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
  70.510 -# and *.h) to filter out the source-files in the directories. If left 
  70.511 -# blank all files are included.
  70.512 -
  70.513 -EXAMPLE_PATTERNS       = 
  70.514 -
  70.515 -# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be 
  70.516 -# searched for input files to be used with the \include or \dontinclude 
  70.517 -# commands irrespective of the value of the RECURSIVE tag. 
  70.518 -# Possible values are YES and NO. If left blank NO is used.
  70.519 -
  70.520 -EXAMPLE_RECURSIVE      = NO
  70.521 -
  70.522 -# The IMAGE_PATH tag can be used to specify one or more files or 
  70.523 -# directories that contain image that are included in the documentation (see 
  70.524 -# the \image command).
  70.525 -
  70.526 -IMAGE_PATH             = 
  70.527 -
  70.528 -# The INPUT_FILTER tag can be used to specify a program that doxygen should 
  70.529 -# invoke to filter for each input file. Doxygen will invoke the filter program 
  70.530 -# by executing (via popen()) the command <filter> <input-file>, where <filter> 
  70.531 -# is the value of the INPUT_FILTER tag, and <input-file> is the name of an 
  70.532 -# input file. Doxygen will then use the output that the filter program writes 
  70.533 -# to standard output.  If FILTER_PATTERNS is specified, this tag will be 
  70.534 -# ignored.
  70.535 -
  70.536 -INPUT_FILTER           = 
  70.537 -
  70.538 -# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern 
  70.539 -# basis.  Doxygen will compare the file name with each pattern and apply the 
  70.540 -# filter if there is a match.  The filters are a list of the form: 
  70.541 -# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further 
  70.542 -# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER 
  70.543 -# is applied to all files.
  70.544 -
  70.545 -FILTER_PATTERNS        = 
  70.546 -
  70.547 -# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using 
  70.548 -# INPUT_FILTER) will be used to filter the input files when producing source 
  70.549 -# files to browse (i.e. when SOURCE_BROWSER is set to YES).
  70.550 -
  70.551 -FILTER_SOURCE_FILES    = NO
  70.552 -
  70.553 -#---------------------------------------------------------------------------
  70.554 -# configuration options related to source browsing
  70.555 -#---------------------------------------------------------------------------
  70.556 -
  70.557 -# If the SOURCE_BROWSER tag is set to YES then a list of source files will 
  70.558 -# be generated. Documented entities will be cross-referenced with these sources. 
  70.559 -# Note: To get rid of all source code in the generated output, make sure also 
  70.560 -# VERBATIM_HEADERS is set to NO.
  70.561 -
  70.562 -SOURCE_BROWSER         = NO
  70.563 -
  70.564 -# Setting the INLINE_SOURCES tag to YES will include the body 
  70.565 -# of functions and classes directly in the documentation.
  70.566 -
  70.567 -INLINE_SOURCES         = NO
  70.568 -
  70.569 -# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct 
  70.570 -# doxygen to hide any special comment blocks from generated source code 
  70.571 -# fragments. Normal C and C++ comments will always remain visible.
  70.572 -
  70.573 -STRIP_CODE_COMMENTS    = YES
  70.574 -
  70.575 -# If the REFERENCED_BY_RELATION tag is set to YES (the default) 
  70.576 -# then for each documented function all documented 
  70.577 -# functions referencing it will be listed.
  70.578 -
  70.579 -REFERENCED_BY_RELATION = YES
  70.580 -
  70.581 -# If the REFERENCES_RELATION tag is set to YES (the default) 
  70.582 -# then for each documented function all documented entities 
  70.583 -# called/used by that function will be listed.
  70.584 -
  70.585 -REFERENCES_RELATION    = YES
  70.586 -
  70.587 -# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
  70.588 -# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
  70.589 -# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
  70.590 -# link to the source code.  Otherwise they will link to the documentstion.
  70.591 -
  70.592 -REFERENCES_LINK_SOURCE = YES
  70.593 -
  70.594 -# If the USE_HTAGS tag is set to YES then the references to source code 
  70.595 -# will point to the HTML generated by the htags(1) tool instead of doxygen 
  70.596 -# built-in source browser. The htags tool is part of GNU's global source 
  70.597 -# tagging system (see http://www.gnu.org/software/global/global.html). You 
  70.598 -# will need version 4.8.6 or higher.
  70.599 -
  70.600 -USE_HTAGS              = NO
  70.601 -
  70.602 -# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen 
  70.603 -# will generate a verbatim copy of the header file for each class for 
  70.604 -# which an include is specified. Set to NO to disable this.
  70.605 -
  70.606 -VERBATIM_HEADERS       = YES
  70.607 -
  70.608 -#---------------------------------------------------------------------------
  70.609 -# configuration options related to the alphabetical class index
  70.610 -#---------------------------------------------------------------------------
  70.611 -
  70.612 -# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index 
  70.613 -# of all compounds will be generated. Enable this if the project 
  70.614 -# contains a lot of classes, structs, unions or interfaces.
  70.615 -
  70.616 -ALPHABETICAL_INDEX     = NO
  70.617 -
  70.618 -# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then 
  70.619 -# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns 
  70.620 -# in which this list will be split (can be a number in the range [1..20])
  70.621 -
  70.622 -COLS_IN_ALPHA_INDEX    = 5
  70.623 -
  70.624 -# In case all classes in a project start with a common prefix, all 
  70.625 -# classes will be put under the same header in the alphabetical index. 
  70.626 -# The IGNORE_PREFIX tag can be used to specify one or more prefixes that 
  70.627 -# should be ignored while generating the index headers.
  70.628 -
  70.629 -IGNORE_PREFIX          = 
  70.630 -
  70.631 -#---------------------------------------------------------------------------
  70.632 -# configuration options related to the HTML output
  70.633 -#---------------------------------------------------------------------------
  70.634 -
  70.635 -# If the GENERATE_HTML tag is set to YES (the default) Doxygen will 
  70.636 -# generate HTML output.
  70.637 -
  70.638 -GENERATE_HTML          = YES
  70.639 -
  70.640 -# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. 
  70.641 -# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
  70.642 -# put in front of it. If left blank `html' will be used as the default path.
  70.643 -
  70.644 -HTML_OUTPUT            = html
  70.645 -
  70.646 -# The HTML_FILE_EXTENSION tag can be used to specify the file extension for 
  70.647 -# each generated HTML page (for example: .htm,.php,.asp). If it is left blank 
  70.648 -# doxygen will generate files with .html extension.
  70.649 -
  70.650 -HTML_FILE_EXTENSION    = .html
  70.651 -
  70.652 -# The HTML_HEADER tag can be used to specify a personal HTML header for 
  70.653 -# each generated HTML page. If it is left blank doxygen will generate a 
  70.654 -# standard header.
  70.655 -
  70.656 -HTML_HEADER            = 
  70.657 -
  70.658 -# The HTML_FOOTER tag can be used to specify a personal HTML footer for 
  70.659 -# each generated HTML page. If it is left blank doxygen will generate a 
  70.660 -# standard footer.
  70.661 -
  70.662 -HTML_FOOTER            = 
  70.663 -
  70.664 -# The HTML_STYLESHEET tag can be used to specify a user-defined cascading 
  70.665 -# style sheet that is used by each HTML page. It can be used to 
  70.666 -# fine-tune the look of the HTML output. If the tag is left blank doxygen 
  70.667 -# will generate a default style sheet. Note that doxygen will try to copy 
  70.668 -# the style sheet file to the HTML output directory, so don't put your own 
  70.669 -# stylesheet in the HTML output directory as well, or it will be erased!
  70.670 -
  70.671 -HTML_STYLESHEET        = 
  70.672 -
  70.673 -# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, 
  70.674 -# files or namespaces will be aligned in HTML using tables. If set to 
  70.675 -# NO a bullet list will be used.
  70.676 -
  70.677 -HTML_ALIGN_MEMBERS     = YES
  70.678 -
  70.679 -# If the GENERATE_HTMLHELP tag is set to YES, additional index files 
  70.680 -# will be generated that can be used as input for tools like the 
  70.681 -# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) 
  70.682 -# of the generated HTML documentation.
  70.683 -
  70.684 -GENERATE_HTMLHELP      = NO
  70.685 -
  70.686 -# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can 
  70.687 -# be used to specify the file name of the resulting .chm file. You 
  70.688 -# can add a path in front of the file if the result should not be 
  70.689 -# written to the html output directory.
  70.690 -
  70.691 -CHM_FILE               = 
  70.692 -
  70.693 -# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can 
  70.694 -# be used to specify the location (absolute path including file name) of 
  70.695 -# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run 
  70.696 -# the HTML help compiler on the generated index.hhp.
  70.697 -
  70.698 -HHC_LOCATION           = 
  70.699 -
  70.700 -# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag 
  70.701 -# controls if a separate .chi index file is generated (YES) or that 
  70.702 -# it should be included in the master .chm file (NO).
  70.703 -
  70.704 -GENERATE_CHI           = NO
  70.705 -
  70.706 -# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag 
  70.707 -# controls whether a binary table of contents is generated (YES) or a 
  70.708 -# normal table of contents (NO) in the .chm file.
  70.709 -
  70.710 -BINARY_TOC             = NO
  70.711 -
  70.712 -# The TOC_EXPAND flag can be set to YES to add extra items for group members 
  70.713 -# to the contents of the HTML help documentation and to the tree view.
  70.714 -
  70.715 -TOC_EXPAND             = NO
  70.716 -
  70.717 -# The DISABLE_INDEX tag can be used to turn on/off the condensed index at 
  70.718 -# top of each HTML page. The value NO (the default) enables the index and 
  70.719 -# the value YES disables it.
  70.720 -
  70.721 -DISABLE_INDEX          = NO
  70.722 -
  70.723 -# This tag can be used to set the number of enum values (range [1..20]) 
  70.724 -# that doxygen will group on one line in the generated HTML documentation.
  70.725 -
  70.726 -ENUM_VALUES_PER_LINE   = 4
  70.727 -
  70.728 -# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
  70.729 -# generated containing a tree-like index structure (just like the one that 
  70.730 -# is generated for HTML Help). For this to work a browser that supports 
  70.731 -# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, 
  70.732 -# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are 
  70.733 -# probably better off using the HTML help feature.
  70.734 -
  70.735 -GENERATE_TREEVIEW      = NO
  70.736 -
  70.737 -# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be 
  70.738 -# used to set the initial width (in pixels) of the frame in which the tree 
  70.739 -# is shown.
  70.740 -
  70.741 -TREEVIEW_WIDTH         = 250
  70.742 -
  70.743 -#---------------------------------------------------------------------------
  70.744 -# configuration options related to the LaTeX output
  70.745 -#---------------------------------------------------------------------------
  70.746 -
  70.747 -# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will 
  70.748 -# generate Latex output.
  70.749 -
  70.750 -GENERATE_LATEX         = YES
  70.751 -
  70.752 -# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. 
  70.753 -# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
  70.754 -# put in front of it. If left blank `latex' will be used as the default path.
  70.755 -
  70.756 -LATEX_OUTPUT           = latex
  70.757 -
  70.758 -# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be 
  70.759 -# invoked. If left blank `latex' will be used as the default command name.
  70.760 -
  70.761 -LATEX_CMD_NAME         = latex
  70.762 -
  70.763 -# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to 
  70.764 -# generate index for LaTeX. If left blank `makeindex' will be used as the 
  70.765 -# default command name.
  70.766 -
  70.767 -MAKEINDEX_CMD_NAME     = makeindex
  70.768 -
  70.769 -# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact 
  70.770 -# LaTeX documents. This may be useful for small projects and may help to 
  70.771 -# save some trees in general.
  70.772 -
  70.773 -COMPACT_LATEX          = NO
  70.774 -
  70.775 -# The PAPER_TYPE tag can be used to set the paper type that is used 
  70.776 -# by the printer. Possible values are: a4, a4wide, letter, legal and 
  70.777 -# executive. If left blank a4wide will be used.
  70.778 -
  70.779 -PAPER_TYPE             = a4wide
  70.780 -
  70.781 -# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX 
  70.782 -# packages that should be included in the LaTeX output.
  70.783 -
  70.784 -EXTRA_PACKAGES         = 
  70.785 -
  70.786 -# The LATEX_HEADER tag can be used to specify a personal LaTeX header for 
  70.787 -# the generated latex document. The header should contain everything until 
  70.788 -# the first chapter. If it is left blank doxygen will generate a 
  70.789 -# standard header. Notice: only use this tag if you know what you are doing!
  70.790 -
  70.791 -LATEX_HEADER           = 
  70.792 -
  70.793 -# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated 
  70.794 -# is prepared for conversion to pdf (using ps2pdf). The pdf file will 
  70.795 -# contain links (just like the HTML output) instead of page references 
  70.796 -# This makes the output suitable for online browsing using a pdf viewer.
  70.797 -
  70.798 -PDF_HYPERLINKS         = NO
  70.799 -
  70.800 -# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of 
  70.801 -# plain latex in the generated Makefile. Set this option to YES to get a 
  70.802 -# higher quality PDF documentation.
  70.803 -
  70.804 -USE_PDFLATEX           = NO
  70.805 -
  70.806 -# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. 
  70.807 -# command to the generated LaTeX files. This will instruct LaTeX to keep 
  70.808 -# running if errors occur, instead of asking the user for help. 
  70.809 -# This option is also used when generating formulas in HTML.
  70.810 -
  70.811 -LATEX_BATCHMODE        = NO
  70.812 -
  70.813 -# If LATEX_HIDE_INDICES is set to YES then doxygen will not 
  70.814 -# include the index chapters (such as File Index, Compound Index, etc.) 
  70.815 -# in the output.
  70.816 -
  70.817 -LATEX_HIDE_INDICES     = NO
  70.818 -
  70.819 -#---------------------------------------------------------------------------
  70.820 -# configuration options related to the RTF output
  70.821 -#---------------------------------------------------------------------------
  70.822 -
  70.823 -# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output 
  70.824 -# The RTF output is optimized for Word 97 and may not look very pretty with 
  70.825 -# other RTF readers or editors.
  70.826 -
  70.827 -GENERATE_RTF           = NO
  70.828 -
  70.829 -# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. 
  70.830 -# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
  70.831 -# put in front of it. If left blank `rtf' will be used as the default path.
  70.832 -
  70.833 -RTF_OUTPUT             = rtf
  70.834 -
  70.835 -# If the COMPACT_RTF tag is set to YES Doxygen generates more compact 
  70.836 -# RTF documents. This may be useful for small projects and may help to 
  70.837 -# save some trees in general.
  70.838 -
  70.839 -COMPACT_RTF            = NO
  70.840 -
  70.841 -# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated 
  70.842 -# will contain hyperlink fields. The RTF file will 
  70.843 -# contain links (just like the HTML output) instead of page references. 
  70.844 -# This makes the output suitable for online browsing using WORD or other 
  70.845 -# programs which support those fields. 
  70.846 -# Note: wordpad (write) and others do not support links.
  70.847 -
  70.848 -RTF_HYPERLINKS         = NO
  70.849 -
  70.850 -# Load stylesheet definitions from file. Syntax is similar to doxygen's 
  70.851 -# config file, i.e. a series of assignments. You only have to provide 
  70.852 -# replacements, missing definitions are set to their default value.
  70.853 -
  70.854 -RTF_STYLESHEET_FILE    = 
  70.855 -
  70.856 -# Set optional variables used in the generation of an rtf document. 
  70.857 -# Syntax is similar to doxygen's config file.
  70.858 -
  70.859 -RTF_EXTENSIONS_FILE    = 
  70.860 -
  70.861 -#---------------------------------------------------------------------------
  70.862 -# configuration options related to the man page output
  70.863 -#---------------------------------------------------------------------------
  70.864 -
  70.865 -# If the GENERATE_MAN tag is set to YES (the default) Doxygen will 
  70.866 -# generate man pages
  70.867 -
  70.868 -GENERATE_MAN           = NO
  70.869 -
  70.870 -# The MAN_OUTPUT tag is used to specify where the man pages will be put. 
  70.871 -# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
  70.872 -# put in front of it. If left blank `man' will be used as the default path.
  70.873 -
  70.874 -MAN_OUTPUT             = man
  70.875 -
  70.876 -# The MAN_EXTENSION tag determines the extension that is added to 
  70.877 -# the generated man pages (default is the subroutine's section .3)
  70.878 -
  70.879 -MAN_EXTENSION          = .3
  70.880 -
  70.881 -# If the MAN_LINKS tag is set to YES and Doxygen generates man output, 
  70.882 -# then it will generate one additional man file for each entity 
  70.883 -# documented in the real man page(s). These additional files 
  70.884 -# only source the real man page, but without them the man command 
  70.885 -# would be unable to find the correct page. The default is NO.
  70.886 -
  70.887 -MAN_LINKS              = NO
  70.888 -
  70.889 -#---------------------------------------------------------------------------
  70.890 -# configuration options related to the XML output
  70.891 -#---------------------------------------------------------------------------
  70.892 -
  70.893 -# If the GENERATE_XML tag is set to YES Doxygen will 
  70.894 -# generate an XML file that captures the structure of 
  70.895 -# the code including all documentation.
  70.896 -
  70.897 -GENERATE_XML           = NO
  70.898 -
  70.899 -# The XML_OUTPUT tag is used to specify where the XML pages will be put. 
  70.900 -# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
  70.901 -# put in front of it. If left blank `xml' will be used as the default path.
  70.902 -
  70.903 -XML_OUTPUT             = xml
  70.904 -
  70.905 -# The XML_SCHEMA tag can be used to specify an XML schema, 
  70.906 -# which can be used by a validating XML parser to check the 
  70.907 -# syntax of the XML files.
  70.908 -
  70.909 -XML_SCHEMA             = 
  70.910 -
  70.911 -# The XML_DTD tag can be used to specify an XML DTD, 
  70.912 -# which can be used by a validating XML parser to check the 
  70.913 -# syntax of the XML files.
  70.914 -
  70.915 -XML_DTD                = 
  70.916 -
  70.917 -# If the XML_PROGRAMLISTING tag is set to YES Doxygen will 
  70.918 -# dump the program listings (including syntax highlighting 
  70.919 -# and cross-referencing information) to the XML output. Note that 
  70.920 -# enabling this will significantly increase the size of the XML output.
  70.921 -
  70.922 -XML_PROGRAMLISTING     = YES
  70.923 -
  70.924 -#---------------------------------------------------------------------------
  70.925 -# configuration options for the AutoGen Definitions output
  70.926 -#---------------------------------------------------------------------------
  70.927 -
  70.928 -# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will 
  70.929 -# generate an AutoGen Definitions (see autogen.sf.net) file 
  70.930 -# that captures the structure of the code including all 
  70.931 -# documentation. Note that this feature is still experimental 
  70.932 -# and incomplete at the moment.
  70.933 -
  70.934 -GENERATE_AUTOGEN_DEF   = NO
  70.935 -
  70.936 -#---------------------------------------------------------------------------
  70.937 -# configuration options related to the Perl module output
  70.938 -#---------------------------------------------------------------------------
  70.939 -
  70.940 -# If the GENERATE_PERLMOD tag is set to YES Doxygen will 
  70.941 -# generate a Perl module file that captures the structure of 
  70.942 -# the code including all documentation. Note that this 
  70.943 -# feature is still experimental and incomplete at the 
  70.944 -# moment.
  70.945 -
  70.946 -GENERATE_PERLMOD       = NO
  70.947 -
  70.948 -# If the PERLMOD_LATEX tag is set to YES Doxygen will generate 
  70.949 -# the necessary Makefile rules, Perl scripts and LaTeX code to be able 
  70.950 -# to generate PDF and DVI output from the Perl module output.
  70.951 -
  70.952 -PERLMOD_LATEX          = NO
  70.953 -
  70.954 -# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be 
  70.955 -# nicely formatted so it can be parsed by a human reader.  This is useful 
  70.956 -# if you want to understand what is going on.  On the other hand, if this 
  70.957 -# tag is set to NO the size of the Perl module output will be much smaller 
  70.958 -# and Perl will parse it just the same.
  70.959 -
  70.960 -PERLMOD_PRETTY         = YES
  70.961 -
  70.962 -# The names of the make variables in the generated doxyrules.make file 
  70.963 -# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. 
  70.964 -# This is useful so different doxyrules.make files included by the same 
  70.965 -# Makefile don't overwrite each other's variables.
  70.966 -
  70.967 -PERLMOD_MAKEVAR_PREFIX = 
  70.968 -
  70.969 -#---------------------------------------------------------------------------
  70.970 -# Configuration options related to the preprocessor   
  70.971 -#---------------------------------------------------------------------------
  70.972 -
  70.973 -# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will 
  70.974 -# evaluate all C-preprocessor directives found in the sources and include 
  70.975 -# files.
  70.976 -
  70.977 -ENABLE_PREPROCESSING   = YES
  70.978 -
  70.979 -# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro 
  70.980 -# names in the source code. If set to NO (the default) only conditional 
  70.981 -# compilation will be performed. Macro expansion can be done in a controlled 
  70.982 -# way by setting EXPAND_ONLY_PREDEF to YES.
  70.983 -
  70.984 -MACRO_EXPANSION        = NO
  70.985 -
  70.986 -# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES 
  70.987 -# then the macro expansion is limited to the macros specified with the 
  70.988 -# PREDEFINED and EXPAND_AS_DEFINED tags.
  70.989 -
  70.990 -EXPAND_ONLY_PREDEF     = NO
  70.991 -
  70.992 -# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files 
  70.993 -# in the INCLUDE_PATH (see below) will be search if a #include is found.
  70.994 -
  70.995 -SEARCH_INCLUDES        = YES
  70.996 -
  70.997 -# The INCLUDE_PATH tag can be used to specify one or more directories that 
  70.998 -# contain include files that are not input files but should be processed by 
  70.999 -# the preprocessor.
 70.1000 -
 70.1001 -INCLUDE_PATH           = 
 70.1002 -
 70.1003 -# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard 
 70.1004 -# patterns (like *.h and *.hpp) to filter out the header-files in the 
 70.1005 -# directories. If left blank, the patterns specified with FILE_PATTERNS will 
 70.1006 -# be used.
 70.1007 -
 70.1008 -INCLUDE_FILE_PATTERNS  = 
 70.1009 -
 70.1010 -# The PREDEFINED tag can be used to specify one or more macro names that 
 70.1011 -# are defined before the preprocessor is started (similar to the -D option of 
 70.1012 -# gcc). The argument of the tag is a list of macros of the form: name 
 70.1013 -# or name=definition (no spaces). If the definition and the = are 
 70.1014 -# omitted =1 is assumed. To prevent a macro definition from being 
 70.1015 -# undefined via #undef or recursively expanded use the := operator 
 70.1016 -# instead of the = operator.
 70.1017 -
 70.1018 -PREDEFINED             = 
 70.1019 -
 70.1020 -# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then 
 70.1021 -# this tag can be used to specify a list of macro names that should be expanded. 
 70.1022 -# The macro definition that is found in the sources will be used. 
 70.1023 -# Use the PREDEFINED tag if you want to use a different macro definition.
 70.1024 -
 70.1025 -EXPAND_AS_DEFINED      = 
 70.1026 -
 70.1027 -# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then 
 70.1028 -# doxygen's preprocessor will remove all function-like macros that are alone 
 70.1029 -# on a line, have an all uppercase name, and do not end with a semicolon. Such 
 70.1030 -# function macros are typically used for boiler-plate code, and will confuse 
 70.1031 -# the parser if not removed.
 70.1032 -
 70.1033 -SKIP_FUNCTION_MACROS   = YES
 70.1034 -
 70.1035 -#---------------------------------------------------------------------------
 70.1036 -# Configuration::additions related to external references   
 70.1037 -#---------------------------------------------------------------------------
 70.1038 -
 70.1039 -# The TAGFILES option can be used to specify one or more tagfiles. 
 70.1040 -# Optionally an initial location of the external documentation 
 70.1041 -# can be added for each tagfile. The format of a tag file without 
 70.1042 -# this location is as follows: 
 70.1043 -#   TAGFILES = file1 file2 ... 
 70.1044 -# Adding location for the tag files is done as follows: 
 70.1045 -#   TAGFILES = file1=loc1 "file2 = loc2" ... 
 70.1046 -# where "loc1" and "loc2" can be relative or absolute paths or 
 70.1047 -# URLs. If a location is present for each tag, the installdox tool 
 70.1048 -# does not have to be run to correct the links.
 70.1049 -# Note that each tag file must have a unique name
 70.1050 -# (where the name does NOT include the path)
 70.1051 -# If a tag file is not located in the directory in which doxygen 
 70.1052 -# is run, you must also specify the path to the tagfile here.
 70.1053 -
 70.1054 -TAGFILES               = 
 70.1055 -
 70.1056 -# When a file name is specified after GENERATE_TAGFILE, doxygen will create 
 70.1057 -# a tag file that is based on the input files it reads.
 70.1058 -
 70.1059 -GENERATE_TAGFILE       = 
 70.1060 -
 70.1061 -# If the ALLEXTERNALS tag is set to YES all external classes will be listed 
 70.1062 -# in the class index. If set to NO only the inherited external classes 
 70.1063 -# will be listed.
 70.1064 -
 70.1065 -ALLEXTERNALS           = NO
 70.1066 -
 70.1067 -# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed 
 70.1068 -# in the modules index. If set to NO, only the current project's groups will 
 70.1069 -# be listed.
 70.1070 -
 70.1071 -EXTERNAL_GROUPS        = YES
 70.1072 -
 70.1073 -# The PERL_PATH should be the absolute path and name of the perl script 
 70.1074 -# interpreter (i.e. the result of `which perl').
 70.1075 -
 70.1076 -PERL_PATH              = /usr/bin/perl
 70.1077 -
 70.1078 -#---------------------------------------------------------------------------
 70.1079 -# Configuration options related to the dot tool   
 70.1080 -#---------------------------------------------------------------------------
 70.1081 -
 70.1082 -# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will 
 70.1083 -# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base 
 70.1084 -# or super classes. Setting the tag to NO turns the diagrams off. Note that 
 70.1085 -# this option is superseded by the HAVE_DOT option below. This is only a 
 70.1086 -# fallback. It is recommended to install and use dot, since it yields more 
 70.1087 -# powerful graphs.
 70.1088 -
 70.1089 -CLASS_DIAGRAMS         = YES
 70.1090 -
 70.1091 -# If set to YES, the inheritance and collaboration graphs will hide 
 70.1092 -# inheritance and usage relations if the target is undocumented 
 70.1093 -# or is not a class.
 70.1094 -
 70.1095 -HIDE_UNDOC_RELATIONS   = YES
 70.1096 -
 70.1097 -# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is 
 70.1098 -# available from the path. This tool is part of Graphviz, a graph visualization 
 70.1099 -# toolkit from AT&T and Lucent Bell Labs. The other options in this section 
 70.1100 -# have no effect if this option is set to NO (the default)
 70.1101 -
 70.1102 -HAVE_DOT               = YES
 70.1103 -
 70.1104 -# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen 
 70.1105 -# will generate a graph for each documented class showing the direct and 
 70.1106 -# indirect inheritance relations. Setting this tag to YES will force the 
 70.1107 -# the CLASS_DIAGRAMS tag to NO.
 70.1108 -
 70.1109 -CLASS_GRAPH            = YES
 70.1110 -
 70.1111 -# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen 
 70.1112 -# will generate a graph for each documented class showing the direct and 
 70.1113 -# indirect implementation dependencies (inheritance, containment, and 
 70.1114 -# class references variables) of the class with other documented classes.
 70.1115 -
 70.1116 -COLLABORATION_GRAPH    = YES
 70.1117 -
 70.1118 -# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen 
 70.1119 -# will generate a graph for groups, showing the direct groups dependencies
 70.1120 -
 70.1121 -GROUP_GRAPHS           = YES
 70.1122 -
 70.1123 -# If the UML_LOOK tag is set to YES doxygen will generate inheritance and 
 70.1124 -# collaboration diagrams in a style similar to the OMG's Unified Modeling 
 70.1125 -# Language.
 70.1126 -
 70.1127 -UML_LOOK               = NO
 70.1128 -
 70.1129 -# If set to YES, the inheritance and collaboration graphs will show the 
 70.1130 -# relations between templates and their instances.
 70.1131 -
 70.1132 -TEMPLATE_RELATIONS     = NO
 70.1133 -
 70.1134 -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT 
 70.1135 -# tags are set to YES then doxygen will generate a graph for each documented 
 70.1136 -# file showing the direct and indirect include dependencies of the file with 
 70.1137 -# other documented files.
 70.1138 -
 70.1139 -INCLUDE_GRAPH          = YES
 70.1140 -
 70.1141 -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and 
 70.1142 -# HAVE_DOT tags are set to YES then doxygen will generate a graph for each 
 70.1143 -# documented header file showing the documented files that directly or 
 70.1144 -# indirectly include this file.
 70.1145 -
 70.1146 -INCLUDED_BY_GRAPH      = YES
 70.1147 -
 70.1148 -# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will 
 70.1149 -# generate a call dependency graph for every global function or class method. 
 70.1150 -# Note that enabling this option will significantly increase the time of a run. 
 70.1151 -# So in most cases it will be better to enable call graphs for selected 
 70.1152 -# functions only using the \callgraph command.
 70.1153 -
 70.1154 -CALL_GRAPH             = YES
 70.1155 -
 70.1156 -# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then doxygen will 
 70.1157 -# generate a caller dependency graph for every global function or class method. 
 70.1158 -# Note that enabling this option will significantly increase the time of a run. 
 70.1159 -# So in most cases it will be better to enable caller graphs for selected 
 70.1160 -# functions only using the \callergraph command.
 70.1161 -
 70.1162 -CALLER_GRAPH           = YES
 70.1163 -
 70.1164 -# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen 
 70.1165 -# will graphical hierarchy of all classes instead of a textual one.
 70.1166 -
 70.1167 -GRAPHICAL_HIERARCHY    = YES
 70.1168 -
 70.1169 -# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES 
 70.1170 -# then doxygen will show the dependencies a directory has on other directories 
 70.1171 -# in a graphical way. The dependency relations are determined by the #include
 70.1172 -# relations between the files in the directories.
 70.1173 -
 70.1174 -DIRECTORY_GRAPH        = YES
 70.1175 -
 70.1176 -# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images 
 70.1177 -# generated by dot. Possible values are png, jpg, or gif
 70.1178 -# If left blank png will be used.
 70.1179 -
 70.1180 -DOT_IMAGE_FORMAT       = png
 70.1181 -
 70.1182 -# The tag DOT_PATH can be used to specify the path where the dot tool can be 
 70.1183 -# found. If left blank, it is assumed the dot tool can be found in the path.
 70.1184 -
 70.1185 -DOT_PATH               = 
 70.1186 -
 70.1187 -# The DOTFILE_DIRS tag can be used to specify one or more directories that 
 70.1188 -# contain dot files that are included in the documentation (see the 
 70.1189 -# \dotfile command).
 70.1190 -
 70.1191 -DOTFILE_DIRS           = 
 70.1192 -
 70.1193 -# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width 
 70.1194 -# (in pixels) of the graphs generated by dot. If a graph becomes larger than 
 70.1195 -# this value, doxygen will try to truncate the graph, so that it fits within 
 70.1196 -# the specified constraint. Beware that most browsers cannot cope with very 
 70.1197 -# large images.
 70.1198 -
 70.1199 -MAX_DOT_GRAPH_WIDTH    = 1024
 70.1200 -
 70.1201 -# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height 
 70.1202 -# (in pixels) of the graphs generated by dot. If a graph becomes larger than 
 70.1203 -# this value, doxygen will try to truncate the graph, so that it fits within 
 70.1204 -# the specified constraint. Beware that most browsers cannot cope with very 
 70.1205 -# large images.
 70.1206 -
 70.1207 -MAX_DOT_GRAPH_HEIGHT   = 1024
 70.1208 -
 70.1209 -# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the 
 70.1210 -# graphs generated by dot. A depth value of 3 means that only nodes reachable 
 70.1211 -# from the root by following a path via at most 3 edges will be shown. Nodes 
 70.1212 -# that lay further from the root node will be omitted. Note that setting this 
 70.1213 -# option to 1 or 2 may greatly reduce the computation time needed for large 
 70.1214 -# code bases. Also note that a graph may be further truncated if the graph's 
 70.1215 -# image dimensions are not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH 
 70.1216 -# and MAX_DOT_GRAPH_HEIGHT). If 0 is used for the depth value (the default), 
 70.1217 -# the graph is not depth-constrained.
 70.1218 -
 70.1219 -MAX_DOT_GRAPH_DEPTH    = 0
 70.1220 -
 70.1221 -# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent 
 70.1222 -# background. This is disabled by default, which results in a white background. 
 70.1223 -# Warning: Depending on the platform used, enabling this option may lead to 
 70.1224 -# badly anti-aliased labels on the edges of a graph (i.e. they become hard to 
 70.1225 -# read).
 70.1226 -
 70.1227 -DOT_TRANSPARENT        = NO
 70.1228 -
 70.1229 -# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output 
 70.1230 -# files in one run (i.e. multiple -o and -T options on the command line). This 
 70.1231 -# makes dot run faster, but since only newer versions of dot (>1.8.10) 
 70.1232 -# support this, this feature is disabled by default.
 70.1233 -
 70.1234 -DOT_MULTI_TARGETS      = NO
 70.1235 -
 70.1236 -# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will 
 70.1237 -# generate a legend page explaining the meaning of the various boxes and 
 70.1238 -# arrows in the dot generated graphs.
 70.1239 -
 70.1240 -GENERATE_LEGEND        = YES
 70.1241 -
 70.1242 -# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will 
 70.1243 -# remove the intermediate dot files that are used to generate 
 70.1244 -# the various graphs.
 70.1245 -
 70.1246 -DOT_CLEANUP            = YES
 70.1247 -
 70.1248 -#---------------------------------------------------------------------------
 70.1249 -# Configuration::additions related to the search engine   
 70.1250 -#---------------------------------------------------------------------------
 70.1251 -
 70.1252 -# The SEARCHENGINE tag specifies whether or not a search engine should be 
 70.1253 -# used. If set to NO the values of all tags below this one will be ignored.
 70.1254 -
 70.1255 -SEARCHENGINE           = NO
    71.1 --- a/x86/2.7/bundle.cpp	Wed Jan 03 09:17:10 2007 +0000
    71.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    71.3 @@ -1,125 +0,0 @@
    71.4 -#include <QtCore>
    71.5 -#include <bundle.h>
    71.6 -
    71.7 -///////////////////////////////////////
    71.8 -//Bundle options:
    71.9 -//BIT 0: Send ACK to this bundle option
   71.10 -//BIT 1: ACK Bundle
   71.11 -//BIT 2: PRoPHET Message
   71.12 -//BIT 3: This bundle is an ack (used in bundle requests for letting the other 
   71.13 -//		 node know that the bundle was received. NOT THE PRoPHET ACK!)
   71.14 -//////////////////////////////////////
   71.15 -
   71.16 -
   71.17 -Bundle::Bundle(QObject *parent)
   71.18 -{
   71.19 -			id=0;
   71.20 -			sourceId=0;
   71.21 -			destinationId=0;
   71.22 -			data.clear();
   71.23 -			options=0;
   71.24 -			sourceString.clear();
   71.25 -			destinationString.clear();
   71.26 -			dataLength=0;
   71.27 -}
   71.28 -
   71.29 -
   71.30 -Bundle& Bundle::operator=(const Bundle& other)
   71.31 -{
   71.32 - id = other.id;
   71.33 - sourceId = other.sourceId;
   71.34 - destinationId = other.destinationId;
   71.35 - data = other.data;
   71.36 - timeStamp = other.timeStamp;
   71.37 - options = other.options;
   71.38 - sourceString = other.sourceString;
   71.39 - destinationString = other.destinationString;
   71.40 - dataLength = other.dataLength;
   71.41 - return *this;
   71.42 -}
   71.43 -
   71.44 -Bundle::Bundle(const Bundle& other)
   71.45 -{
   71.46 - id = other.id;
   71.47 - sourceId = other.sourceId;
   71.48 - destinationId = other.destinationId;
   71.49 - data = other.data;
   71.50 - timeStamp = other.timeStamp;
   71.51 - options = other.options;
   71.52 - sourceString = other.sourceString;
   71.53 - destinationString = other.destinationString;
   71.54 - dataLength = other.dataLength;
   71.55 -}	
   71.56 -	
   71.57 -void Bundle::setContent(int seq,int s,int d,QByteArray m,int opt,QByteArray src,QByteArray dst)
   71.58 -{
   71.59 -	timeStamp=timeStamp.currentDateTime();
   71.60 -	id=((seq%10000)+(d*10000)+(s*10000000));
   71.61 -	sourceId=s;
   71.62 -	destinationId=d;
   71.63 -	data=m; 
   71.64 -	options=opt;
   71.65 -	sourceString = src;
   71.66 -	destinationString = dst;
   71.67 -	dataLength=data.size();
   71.68 -
   71.69 -
   71.70 -}
   71.71 -void Bundle::setContent(int seq,int s,int d,QByteArray m,int opt)
   71.72 -{
   71.73 -	timeStamp=timeStamp.currentDateTime();
   71.74 -	id=((seq%10000)+(d*10000)+(s*10000000));
   71.75 -	sourceId=s;
   71.76 -	destinationId=d;
   71.77 -	data=m;
   71.78 -	sourceString.clear();
   71.79 -	destinationString.clear();
   71.80 -	options=opt;
   71.81 -	dataLength=data.size();
   71.82 -
   71.83 -}
   71.84 -
   71.85 -void Bundle::setAck(){
   71.86 -	options |= 0x8; //set ack-bit
   71.87 -}
   71.88 -
   71.89 -void Bundle::unSetAck(){
   71.90 -	options &= 0xF7; //un-set ack-bit
   71.91 -}
   71.92 -
   71.93 -bool Bundle::isAck(){
   71.94 -	if((options & 0x08)==0x08)
   71.95 -		return 1;
   71.96 -	else
   71.97 -		return 0;
   71.98 -}
   71.99 -int Bundle::getId()
  71.100 -{
  71.101 -	return id;
  71.102 -}
  71.103 -
  71.104 -int Bundle::getSourceId()
  71.105 -{
  71.106 -	return sourceId;
  71.107 -}
  71.108 -
  71.109 -int Bundle::getDestinationId()
  71.110 -{
  71.111 -	return destinationId;
  71.112 -}
  71.113 -
  71.114 -QByteArray Bundle::getData()
  71.115 -{
  71.116 -	return data;
  71.117 -}
  71.118 -
  71.119 -QDateTime Bundle::getTime()
  71.120 -{
  71.121 -	return timeStamp;
  71.122 -}
  71.123 -
  71.124 -
  71.125 -int Bundle::getOptions()
  71.126 -{
  71.127 -	return options;
  71.128 -}
    72.1 --- a/x86/2.7/bundle.h	Wed Jan 03 09:17:10 2007 +0000
    72.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    72.3 @@ -1,151 +0,0 @@
    72.4 -#ifndef BUNDLE_H
    72.5 -#define BUNDLE_H
    72.6 -
    72.7 -#include <QtCore>
    72.8 -
    72.9 -/*! \brief This class represents a bundle within PRoPHET.
   72.10 - */
   72.11 -class Bundle : public QObject
   72.12 -{
   72.13 -
   72.14 -Q_OBJECT 
   72.15 -	public:
   72.16 -	int id;
   72.17 -	int sourceId;
   72.18 -	int destinationId;
   72.19 -	QByteArray data;
   72.20 -	QByteArray sourceString;
   72.21 -	QByteArray destinationString;
   72.22 -	QDateTime timeStamp;
   72.23 -	int options;
   72.24 -	int dataLength;
   72.25 -	// The id of the last node that sent the bundle.
   72.26 -	// Used for keeping track of which bundles have been sent to which nodes.
   72.27 -	int lastSender;
   72.28 -
   72.29 -
   72.30 -	Bundle(QObject *parent = 0);
   72.31 -	Bundle(const Bundle& other);
   72.32 -	Bundle& operator=(const Bundle& other);
   72.33 -
   72.34 -	/*! \brief Sets the content of this Bundle.
   72.35 -	 * @param seq The sequence number of this Bundle??? Used for 
   72.36 -	 * calculating the id.
   72.37 -	 * @param s The id of the source node this Bundle originated from.
   72.38 -	 * @param d The id of the destination node of this Bundle.
   72.39 -	 * @param m The data payload of this Bundle.
   72.40 -	 * @param opt The options for this bundle. Only the three LSBits are used
   72.41 -	 * \verbatim
   72.42 -	           3                2                   1              0
   72.43 -	  -------------------------------------------------------------------
   72.44 -	  ... | 1=Ack     | 0 = PRoPHET bundle | 1 = Ack me       | Not used |
   72.45 -	      | 0=Non-ack | 1 = DTN bundle     | 0 = Don't ack me |          |
   72.46 -	  -------------------------------------------------------------------
   72.47 -	  \endverbatim
   72.48 -	 * @param src The string name of the source node.
   72.49 -	 * @param dst The string name of the destination node.
   72.50 -	 */void setContent(int,int s,int d,QByteArray m,int opt,QByteArray src,QByteArray dst);
   72.51 -	
   72.52 -	/*!
   72.53 -	 * Sets the content of this Bundle.
   72.54 -	 * @param seq The sequence number of this Bundle??? Used for 
   72.55 -	 * calculating the id.
   72.56 -	 * @param s The id of the source node this Bundle originated from.
   72.57 -	 * @param d The id of the destination node of this Bundle.
   72.58 -	 * @param m The data payload of this Bundle.
   72.59 -	 * @param opt The options for this bundle. Only the three LSBits are used
   72.60 -	 * \verbatim
   72.61 -	          3                2                   1              0
   72.62 -	  -------------------------------------------------------------------
   72.63 -	  ... | 1=Ack     | 0 = PRoPHET bundle | 1 = Ack me       | Not used |
   72.64 -	      | 0=Non-ack | 1 = DTN bundle     | 0 = Don't ack me |          |
   72.65 -	  -------------------------------------------------------------------
   72.66 -	  \endverbatim
   72.67 -	 */
   72.68 -	void setContent(int,int,int,QByteArray,int);
   72.69 -	
   72.70 -	//! Sets the (non-PRoPHET) ack bit of this bundle.
   72.71 -	/*!
   72.72 -	 * This is used for ackin bundles on the connection level, so that each 
   72.73 -	 * bundle is only sent once in bundle offers.
   72.74 -	 */
   72.75 -	void setAck();
   72.76 -	
   72.77 -	//! Resets the (non-PRoPHET) ack bit of this bundle.
   72.78 -	/*!
   72.79 -	 * This is used for ackin bundles on the connection level, so that each 
   72.80 -	 * bundle is only sent once in bundle offers.
   72.81 -	 */
   72.82 -	void unSetAck();
   72.83 -
   72.84 -	//! Checks whether this bundle has the (non PRoPHET) ack bit set.
   72.85 -	/*!
   72.86 -	 * @return true if the (non PRoPHET) ack bit is set, false otherwise.
   72.87 -	 */
   72.88 -	bool isAck();
   72.89 -
   72.90 -	//! Sets the last sender of this bundle.
   72.91 -	/*!
   72.92 -	 * Used for keeping track of which bundles have already been sent to 
   72.93 -	 * certains nodes.
   72.94 -	 * @param sender the id of the last sender.
   72.95 -	 */
   72.96 -	void setLastSender(int sender){
   72.97 -		lastSender = sender;
   72.98 -	}
   72.99 -
  72.100 -	//! Returns the id if the last sender
  72.101 -	/*!
  72.102 -	 * Used for keeping track of which bundles have already been sent to 
  72.103 -	 * certain nodes.
  72.104 -	 * @return the id of the last sender
  72.105 -	 */
  72.106 -	int getLastSender(){
  72.107 -		return lastSender;
  72.108 -	}
  72.109 -
  72.110 -	/*!
  72.111 -	 * Returns the id of the Bundle.
  72.112 -	 * @return The id of this Bundle.
  72.113 -	 */
  72.114 -	int getId(); 
  72.115 -	
  72.116 -	/*!
  72.117 -	 * Returns the source id of this Bundle.
  72.118 -	 * @return The source id of this Bundle.
  72.119 -	 */
  72.120 -	int getSourceId();
  72.121 -	
  72.122 -	/*!
  72.123 -	 * Returns the destination id of this Bundle.
  72.124 -	 * @return The destination id of this Bundle.
  72.125 -	 */
  72.126 -	int getDestinationId();
  72.127 -	
  72.128 -	/*!
  72.129 -	 * Returns the timestamp of when this Bundle was created.
  72.130 -	 * @return The timestamp of when this Bundle was created.
  72.131 -	 */
  72.132 -	QDateTime getTime();
  72.133 -	
  72.134 -	/*!
  72.135 -	 * Returns the data payload of this Bundle.
  72.136 -	 * @return The data payload of this Bundle.
  72.137 -	 */
  72.138 -	QByteArray getData();
  72.139 -	
  72.140 -	/*!
  72.141 -	 * Returns the options of this Bundle. Only the three LSBits are used.
  72.142 -	 * \verbatim
  72.143 -	          3                2                   1              0
  72.144 -	  -------------------------------------------------------------------
  72.145 -	  ... | 1=Ack     | 0 = PRoPHET bundle | 1 = Ack me       | Not used |
  72.146 -	      | 0=Non-ack | 1 = DTN bundle     | 0 = Don't ack me |          |
  72.147 -	  -------------------------------------------------------------------
  72.148 -	  \endverbatim
  72.149 -	 */
  72.150 -	int getOptions();
  72.151 -	
  72.152 -};
  72.153 -
  72.154 -#endif
    73.1 --- a/x86/2.7/bundleListFileIO.cpp	Wed Jan 03 09:17:10 2007 +0000
    73.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    73.3 @@ -1,111 +0,0 @@
    73.4 -#include <QtCore>
    73.5 -#include <bundleListFileIO.h>
    73.6 -#include <readFile.h>
    73.7 -
    73.8 -BundleListFileIO::BundleListFileIO(QHash<int,int> *h, QDir storageDir, QString fileName)
    73.9 -{
   73.10 -	hash = h;
   73.11 -	file = new QFile(storageDir.filePath(fileName));
   73.12 -	ReadFile conf;
   73.13 -	fileOption=conf.getUseFileHash();
   73.14 -	int WRITETIMER =conf.getWriteToFileTimer();
   73.15 -	if(fileOption==1)
   73.16 -	{
   73.17 -		timer = new QTimer();
   73.18 -		connect(timer, SIGNAL(timeout()), this, SLOT(writeAll()));
   73.19 -		timer->start(WRITETIMER);
   73.20 -	}
   73.21 -
   73.22 -}
   73.23 -
   73.24 -int BundleListFileIO::writeItem(int key)
   73.25 -{
   73.26 -	if(file->open(QIODevice::WriteOnly |QIODevice::Append| QIODevice::Text))
   73.27 -	{
   73.28 -		//add the key
   73.29 -		QString s = QString("%1").arg((int)key);
   73.30 -		//a tab to make things look nice
   73.31 -		s.append("\t");
   73.32 -		//add the values of the key
   73.33 -		QList<int> l = hash->values(key);
   73.34 -		for(int i=0; i<l.size(); i++)
   73.35 -		{
   73.36 -			s.append(QString("%1").arg((int)l.at(i)));
   73.37 -			s.append(";");	//we use ; as separator
   73.38 -		}
   73.39 -		s.remove(s.size()-1,1); //remove the last ;
   73.40 -		s.append("\n");
   73.41 -		file->write(s.toAscii());
   73.42 -		file->close();
   73.43 -		return 0;
   73.44 -	}else
   73.45 -	{
   73.46 -		//file IO error
   73.47 -		return -1;
   73.48 -	}
   73.49 -}
   73.50 -
   73.51 -int BundleListFileIO::writeAll()
   73.52 -{
   73.53 -	//erase anything in the file
   73.54 -	file->open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text);
   73.55 -	file->close();
   73.56 -	//then write each key and its values
   73.57 -	//QList<int> l = hash->uniqueKeys(); //!!This method doesn't exist
   73.58 -	QList<int> keys = hash->keys();
   73.59 -	QList<int> uniqueKeys;
   73.60 -	for(int i=0; i<keys.size(); i++)
   73.61 -	{
   73.62 -		if(!uniqueKeys.contains(keys.at(i)))
   73.63 -		{
   73.64 -			uniqueKeys.append(keys.at(i));
   73.65 -		}
   73.66 -	}
   73.67 -	int ret = 0;
   73.68 -	for(int i=0; i<uniqueKeys.size(); i++)
   73.69 -	{
   73.70 -		int status = writeItem(uniqueKeys.at(i));
   73.71 -		if(status < 0)
   73.72 -			ret = status;
   73.73 -	}
   73.74 -	return ret;
   73.75 -}
   73.76 -
   73.77 -int BundleListFileIO::readAll()
   73.78 -{
   73.79 -	if (file->open(QIODevice::ReadOnly|QIODevice::Text))
   73.80 -	{
   73.81 -		QString line = file->readLine();
   73.82 -		while(line.size() > 0)
   73.83 -		{
   73.84 -			bool ok;
   73.85 -			QRegExp sep("[\t ]+");	//all tabs and spaces
   73.86 -			int key = line.section(sep, 0, 0).toInt(&ok, 10);
   73.87 -			if(!ok)
   73.88 -			{
   73.89 -				file->close();
   73.90 -				return -2;
   73.91 -			}
   73.92 -			QString values = line.section(sep, -1, -1);
   73.93 -			QStringList valuesList = values.split(";");
   73.94 -			for(int i=0; i<valuesList.size(); i++)
   73.95 -			{
   73.96 -				int value = valuesList.at(i).toInt();
   73.97 -				if(!ok)
   73.98 -				{
   73.99 -					file->close();
  73.100 -					return -2;
  73.101 -				}
  73.102 -				hash->insertMulti(key, value);
  73.103 -			}
  73.104 -			line = file->readLine();
  73.105 -		}
  73.106 -		file->close();
  73.107 -		return 0;
  73.108 -	}else
  73.109 -	{
  73.110 -		//file IO error
  73.111 -		return -1;
  73.112 -	}
  73.113 -}
  73.114 -
    74.1 --- a/x86/2.7/bundleListFileIO.h	Wed Jan 03 09:17:10 2007 +0000
    74.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    74.3 @@ -1,54 +0,0 @@
    74.4 -#ifndef BUNDLELISTFILEIO_H
    74.5 -#define BUNDLELISTFILEIO_H
    74.6 -#include <QtCore>
    74.7 -
    74.8 -//! Handles the file IO for the QMultiHash that keeps track of which nodes have received certain bundles.
    74.9 -/*! The QMultiHash should have integer bundle ids as keys and a list of 
   74.10 - * integer node ids as values.
   74.11 - */
   74.12 -class BundleListFileIO : public QObject
   74.13 -{
   74.14 -	Q_OBJECT
   74.15 -
   74.16 -	public:
   74.17 -		BundleListFileIO(QObject *parent = 0);
   74.18 -		BundleListFileIO(const BundleListFileIO& other);
   74.19 -		BundleListFileIO& operator=(const BundleListFileIO& other);;
   74.20 -
   74.21 -		//!Creates a new BundleListFileIO object.
   74.22 -		/*!
   74.23 -		 * @param hash the QMultiHash used for storing bundle->node mappings.
   74.24 -		 * @param fileName the name of the file used for storing the hash.
   74.25 -		 */
   74.26 -		BundleListFileIO(QHash<int,int> *hash, QDir storageDir, QString fileName);
   74.27 -
   74.28 -		//! Writes the specified item to the file.
   74.29 -		/*! If the key already exists in the file, the old one is overwritten.
   74.30 -		 * @param key the key od what should be written to file.
   74.31 -		 * @return 0 if success, -1 otherwise
   74.32 -		 */
   74.33 -		int writeItem(int key);
   74.34 -
   74.35 -		//! Reads all keys and values from file and inserts them into the hash.
   74.36 -		/*! If keys read from file already exist in the hash the values from 
   74.37 -		 * file are appended to the values in the hash.
   74.38 -		 * @return 0 if successful reading file, -1 if file IO error, -2 if parse error.
   74.39 -		 */
   74.40 -		int readAll();
   74.41 -
   74.42 -		//! Writes all items in the hash to file
   74.43 -		/*!
   74.44 -		 * @return 0 if all items were written successfully, -1 otherwise. 
   74.45 -		 * Even if -1 is returned, as many items as possible are written to 
   74.46 -		 * file.
   74.47 -		 */
   74.48 -private slots:
   74.49 -		int writeAll();
   74.50 -
   74.51 -	private:
   74.52 -		QHash<int,int> *hash;
   74.53 -		QFile* file;
   74.54 -		QTimer* timer;
   74.55 -		int fileOption;
   74.56 -};
   74.57 -#endif
    75.1 --- a/x86/2.7/bundleManager.cpp	Wed Jan 03 09:17:10 2007 +0000
    75.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    75.3 @@ -1,767 +0,0 @@
    75.4 -#include <QtCore>
    75.5 -#include <bundleManager.h>
    75.6 -#include <bundle.h>
    75.7 -#include <readFile.h>
    75.8 -#include <nodeManager.h>
    75.9 -#include <bundleListFileIO.h>
   75.10 -#include <stdlib.h>
   75.11 -
   75.12 -#define BUNDLEDESTUPDATE 1000
   75.13 -#define TTLTIMER 1000
   75.14 -
   75.15 -BundleManager::BundleManager(int id)
   75.16 -{
   75.17 -	ourId=id;
   75.18 -	ReadFile conf;
   75.19 -	memoryStorageSize=conf.getMemoryStorageSize();
   75.20 -	fileStorageSize=conf.getStorageSize();
   75.21 -	fileOption=conf.getUseFileBundles();
   75.22 -	TTLOption=conf.getUseTTL();
   75.23 -	TTLValue=conf.getTTL();
   75.24 -	smartOffer=conf.getSmartOffer();
   75.25 -	if(TTLOption==1)
   75.26 -	{
   75.27 -		TTLTimer = new QTimer();
   75.28 -		TTLTimer->start(TTLTIMER);
   75.29 -		connect(TTLTimer, SIGNAL(timeout()), this, SLOT(checkTTL()));
   75.30 -	}
   75.31 -	routing=conf.getRouting();
   75.32 -	int WRITETIMER =conf.getWriteToFileTimer();
   75.33 -	storagePath=conf.getStoragePath();
   75.34 -	dir.setPath(storagePath);
   75.35 -	//Create the dir if it does not exist
   75.36 -	if(!dir.exists())
   75.37 -		dir.mkpath(dir.path());
   75.38 -	QString msgDirPath=conf.getMsgPath();
   75.39 -	msgDir.setPath(msgDirPath);
   75.40 -	option=conf.getUseFileBundles();
   75.41 -	logOption=conf.getLogOption();
   75.42 -	if(fileOption==1)
   75.43 -	{
   75.44 -		readFromFile();
   75.45 -		writeToFileTimer = new QTimer();
   75.46 -		connect(writeToFileTimer, SIGNAL(timeout()), this, SLOT(saveToFile()));
   75.47 -		writeToFileTimer->start(WRITETIMER);
   75.48 -		emit sendDebugBundleList(bundleList);
   75.49 -	}
   75.50 -	else
   75.51 -	{
   75.52 -		int seed = 10000;		/* choose a seed value */
   75.53 -		srand(seed);		/*initialize random number generator*/
   75.54 -		seq = (int)(rand()*1000000);
   75.55 -	}
   75.56 -
   75.57 -
   75.58 -	timer = new QTimer();
   75.59 -	showFirstTime=0;
   75.60 -	timer->start(5000);
   75.61 -	connect(timer, SIGNAL(timeout()), this, SLOT(emitDebugList()));
   75.62 -	if(logOption==1)
   75.63 -	{
   75.64 -		log = new MessageFile;
   75.65 -		log->set("transfer.log", 1000000, 5);
   75.66 -	}
   75.67 -	QString fileName = "bundleHash.txt";
   75.68 -	hashFile = new BundleListFileIO(&transferredBundleHash,
   75.69 -													 dir,
   75.70 -													 fileName);
   75.71 -	//get all bundle->node mappings from file
   75.72 -
   75.73 -	int res; 
   75.74 -	if(conf.getUseFileHash()==1)
   75.75 -		res= hashFile->readAll();
   75.76 -	if(logOption==1)
   75.77 -	{
   75.78 -	    QString logString;
   75.79 -	    logString.append("Imported to hash from file, result(0=ok): ");	
   75.80 -	    logString.append(QString("%1").arg((int)res));
   75.81 -	    log->addLog(0,logString);
   75.82 -	}
   75.83 -}
   75.84 -
   75.85 -void BundleManager::emitDebugList()
   75.86 -{
   75.87 -	if(showFirstTime==0)
   75.88 -	{
   75.89 -		emit sendDebugBundleList(bundleList);
   75.90 -		showFirstTime=1;
   75.91 -	}
   75.92 -
   75.93 -}
   75.94 -void BundleManager::saveToFile()
   75.95 -{
   75.96 -	QFile file(dir.filePath("bundles.txt"));
   75.97 -	if(file.open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text))
   75.98 -	{
   75.99 -	    QDateTime realTime;
  75.100 -	    realTime=realTime.currentDateTime ();
  75.101 -	    QString time=realTime.toString("MM/dd/yyyy hh:mm:ss");
  75.102 -	    time.append("\n");
  75.103 -	    file.write(time.toAscii ());
  75.104 -	    QString seqString;
  75.105 -	    seqString.append(QString("%1").arg((int)seq));
  75.106 -	    seqString.append("\n");
  75.107 -	    file.write(seqString.toAscii ());
  75.108 -	    for (ushort i = 0; i < bundleList.size(); ++i) 
  75.109 -	    {
  75.110 -		QString bundleString;
  75.111 -		bundleString.append(QString("%1").arg((int)bundleList.at(i).id));
  75.112 -		bundleString.append("\t");
  75.113 -		bundleString.append(QString("%1").arg((int)bundleList.at(i).sourceId));
  75.114 -		bundleString.append("\t");
  75.115 -		bundleString.append(QString("%1").arg((int)bundleList.at(i).destinationId));
  75.116 -		bundleString.append("\t");
  75.117 -		bundleString.append(bundleList.at(i).sourceString);
  75.118 -		bundleString.append("\t");
  75.119 -		bundleString.append(bundleList.at(i).destinationString);
  75.120 -		bundleString.append("\t");
  75.121 -		QDateTime Dtime = bundleList.at(i).timeStamp;
  75.122 -		QString time=Dtime.toString("MM/dd/yyyy hh:mm:ss");
  75.123 -		bundleString.append(time);
  75.124 -		bundleString.append("\t");
  75.125 -		bundleString.append(QString("%1").arg((int)bundleList.at(i).options));
  75.126 -		bundleString.append("\t");
  75.127 -		bundleString.append(QString("%1").arg((int)bundleList.at(i).dataLength));
  75.128 -		bundleString.append("\n");
  75.129 -		file.write(bundleString.toAscii ());
  75.130 -	    }
  75.131 -	    file.close();
  75.132 -	}
  75.133 -}
  75.134 -
  75.135 -void BundleManager::readFromFile()
  75.136 -{
  75.137 -	QFile file(dir.filePath("bundles.txt"));
  75.138 -	if (file.open(QIODevice::ReadOnly|QIODevice::Text))
  75.139 -	{
  75.140 -		QString firstLine;
  75.141 -		QString seqLine;
  75.142 -		QString line;
  75.143 -		//First we read date and time
  75.144 -		firstLine=file.readLine();
  75.145 -		//Then we read bundle sequence number
  75.146 -		seqLine=file.readLine();
  75.147 -		seq=seqLine.toInt(0,10);
  75.148 -		//Then we add nodes
  75.149 -		line=file.readLine();
  75.150 -		while(line.size()>0)
  75.151 -		{
  75.152 -			//Parsing node
  75.153 -			int pos;
  75.154 -			QString temp;
  75.155 -			Bundle newBundle;
  75.156 -			//Bundle ID
  75.157 -			pos=line.indexOf("\t",0);
  75.158 -			temp=line.mid(0,pos);
  75.159 -			newBundle.id=temp.toInt(0,10);
  75.160 -			line.remove(0,pos+1);
  75.161 -			//Bundle source ID
  75.162 -			pos=line.indexOf("\t",0);
  75.163 -			temp=line.mid(0,pos);
  75.164 -			newBundle.sourceId=temp.toInt(0,10);
  75.165 -			line.remove(0,pos+1);
  75.166 -			//Bundle destination ID
  75.167 -			pos=line.indexOf("\t",0);
  75.168 -			temp=line.mid(0,pos);
  75.169 -			newBundle.destinationId=temp.toInt(0,10);
  75.170 -			line.remove(0,pos+1);
  75.171 -			//Bundle source string
  75.172 -			pos=line.indexOf("\t",0);
  75.173 -			temp=line.mid(0,pos);
  75.174 -			newBundle.sourceString=temp.toAscii();
  75.175 -			line.remove(0,pos+1);
  75.176 -			//Bundle destination string
  75.177 -			pos=line.indexOf("\t",0);
  75.178 -			temp=line.mid(0,pos);
  75.179 -			newBundle.destinationString=temp.toAscii();
  75.180 -			line.remove(0,pos+1);
  75.181 -			//Bundle timestamp
  75.182 -			pos=line.indexOf("\t",0);
  75.183 -			temp=line.mid(0,pos);
  75.184 -			QDateTime time;
  75.185 -			time=time.fromString(temp,"MM/dd/yyyy hh:mm:ss");
  75.186 -			newBundle.timeStamp=time;
  75.187 -			line.remove(0,pos+1);
  75.188 -			//Bundle options
  75.189 -			pos=line.indexOf("\t",0);
  75.190 -			temp=line.mid(0,pos);
  75.191 -			newBundle.options=temp.toInt(0,10);
  75.192 -			line.remove(0,pos+1);
  75.193 -			//Bundle datalength
  75.194 -			pos=line.indexOf("\t",0);
  75.195 -			temp=line.mid(0,pos);
  75.196 -			newBundle.dataLength=temp.toInt(0,10);
  75.197 -			line.remove(0,pos+1);
  75.198 -			//Adding Node
  75.199 -			QString bundlefilename;
  75.200 -			bundlefilename=QString("%1").arg((int)newBundle.id);
  75.201 -			QFile bundleFile(dir.filePath(bundlefilename));
  75.202 -			if (bundleFile.open(QIODevice::ReadOnly))
  75.203 -			{
  75.204 -			    int size=bundleFile.size();
  75.205 -			    bundleFile.close();
  75.206 -				if(bundleFile.size()>0)
  75.207 -				{
  75.208 -					bundleList.append(newBundle);
  75.209 -				}
  75.210 -			}
  75.211 -
  75.212 -
  75.213 -			line=file.readLine();
  75.214 -		}
  75.215 -		file.close();
  75.216 -	}
  75.217 -	//DEBUG
  75.218 -	emit sendDebugBundleList(bundleList);
  75.219 -	emit sendMemoryStorage(getMemoryStorageSize());
  75.220 -	emit sendFileStorage(getFileStorageSize());
  75.221 -
  75.222 -}
  75.223 -
  75.224 -QList<Bundle> BundleManager::getBundleList()
  75.225 -{	
  75.226 -	return bundleList;
  75.227 -}
  75.228 -
  75.229 -int BundleManager::getMemoryStorageSize()
  75.230 -{	
  75.231 -	int size=0;
  75.232 -	for (ushort i = 0; i < bundleList.size(); ++i) 
  75.233 -	{
  75.234 -		size+=getMemoryBundleSize(bundleList.at(i));
  75.235 -	}
  75.236 -	return size;
  75.237 -}
  75.238 -
  75.239 -int BundleManager::getFileStorageSize()
  75.240 -{	
  75.241 -	int size=0;
  75.242 -	for (ushort i = 0; i < bundleList.size(); ++i) 
  75.243 -	{
  75.244 -		size+=getFileBundleSize(bundleList.at(i));
  75.245 -	}
  75.246 -	return size;
  75.247 -}
  75.248 -
  75.249 -int BundleManager::getMemoryBundleSize(Bundle bundle)
  75.250 -{	
  75.251 -	int size=0;
  75.252 -	size+=sizeof(Bundle);
  75.253 -	size+=bundle.data.size();
  75.254 -	size+=bundle.destinationString.size();
  75.255 -	size+=bundle.sourceString.size();
  75.256 -	return size;
  75.257 -}
  75.258 -
  75.259 -int BundleManager::getFileBundleSize(Bundle bundle)
  75.260 -{	
  75.261 -	if(fileOption==1)
  75.262 -	{
  75.263 -		QString filename;
  75.264 -		filename=QString("%1").arg((int)bundle.id);
  75.265 -		QFile file(dir.filePath(filename));
  75.266 -		return file.size();
  75.267 -	}
  75.268 -	return 0;
  75.269 -}
  75.270 -
  75.271 -
  75.272 -QList<Bundle> BundleManager::getBundleOffer(QList<Node> ourList,QList<Node> encoutnerList,int encounterId)
  75.273 -{
  75.274 -	QList<Bundle> newBundleList;
  75.275 -//	return bundleList;
  75.276 -
  75.277 -	switch(routing)
  75.278 -	{
  75.279 -		case 0:	//EPIDEMIC ROUTING - I like it.. ;)	
  75.280 -			//We have to check for each bundle
  75.281 -			for (ushort i = 0; i < bundleList.size(); ++i) 
  75.282 -			{
  75.283 -				//We have to exclude our own bundles
  75.284 -				if(bundleList.at(i).destinationId!=ourId)
  75.285 -				{		
  75.286 -					if(smartOffer==1)
  75.287 -					{
  75.288 -					    // only offer the bundle if it was not already sent to the 
  75.289 -					    // encountered node.
  75.290 -					    QList<int> l = transferredBundleHash.values(bundleList.at(i).id);
  75.291 -					    if(!l.contains(encounterId))
  75.292 -					    {
  75.293 -							Bundle tempBundle;
  75.294 -							tempBundle=bundleList.at(i);
  75.295 -							newBundleList.append(tempBundle);
  75.296 -							if(logOption==1)
  75.297 -							{
  75.298 -							    QString logString;
  75.299 -		    					logString.append("Bundle: ");	
  75.300 -							    logString.append(QString("%1").arg((int)tempBundle.id));
  75.301 -		    					logString.append(" with encounterId: ");	
  75.302 -							    logString.append(QString("%1").arg((int)encounterId));
  75.303 -		    					logString.append(" not in hash, adding it to offer.");	
  75.304 -		    					log->addLog(0,logString);
  75.305 -							}
  75.306 -						}else
  75.307 -						{
  75.308 -							if(logOption==1)
  75.309 -							{
  75.310 -							    QString logString;
  75.311 -		    					logString.append("Bundle: ");	
  75.312 -							    logString.append(QString("%1").arg((int)bundleList.at(i).id));
  75.313 -		    					logString.append(" with encounterId: ");	
  75.314 -							    logString.append(QString("%1").arg((int)encounterId));
  75.315 -		    					logString.append(" is in hash, not adding it to offer.");	
  75.316 -		    					log->addLog(0,logString);
  75.317 -							}
  75.318 -						}
  75.319 -					}
  75.320 -					else // no smartOffer
  75.321 -					{
  75.322 -					    Bundle tempBundle;
  75.323 -					    tempBundle=bundleList.at(i);
  75.324 -					    newBundleList.append(tempBundle);	
  75.325 -    				}
  75.326 -					
  75.327 -				}
  75.328 -			}
  75.329 -			return newBundleList;
  75.330 -				return bundleList; break;	//this does nothing, probably should be removed
  75.331 -		case 1: //PROPHET ROUTING: GRTR  P_(B,D)>P_(A,D) - A bit more advanced
  75.332 -		//We have to check for each bundle
  75.333 -			for (ushort i = 0; i < bundleList.size(); ++i) 
  75.334 -			{
  75.335 -				//We have to exclude our own bundles
  75.336 -				if(bundleList.at(i).destinationId!=ourId)
  75.337 -				{		
  75.338 -					float ourProbability = -1.0;
  75.339 -					float encounterProbability = -1.0;
  75.340 -					int bundleDestination = bundleList.at(i).destinationId;
  75.341 -					//First we get our probability
  75.342 -					for (ushort n = 0; n < ourList.size(); ++n) 
  75.343 -					{
  75.344 -						int nodeId=ourList.at(n).nodeId;
  75.345 -						if(nodeId==bundleDestination)
  75.346 -							ourProbability = ourList.at(n).probability;
  75.347 -						}
  75.348 -					//Then we get encouter probability
  75.349 -					for (ushort n = 0; n < encoutnerList.size(); ++n) 
  75.350 -					{
  75.351 -						int nodeId=encoutnerList.at(n).nodeId;
  75.352 -						if(encoutnerList.at(n).nodeId==bundleDestination)
  75.353 -							encounterProbability = encoutnerList.at(n).probability;
  75.354 -					}
  75.355 -					//GTRT and Epidemic for ACKS
  75.356 -					if((((encounterProbability>ourProbability)||(bundleDestination==encounterId))&&(bundleDestination!=0)))//||(((bundleList.at(i).options&0x02)==0x02)))
  75.357 -					{		
  75.358 -					    if(smartOffer==1)
  75.359 -			    	    {
  75.360 -							// only send the bundle if it was not already sent to the 
  75.361 -							// encountered node.
  75.362 -							QList<int> l = transferredBundleHash.values(bundleList.at(i).id);
  75.363 -							if(!l.contains(encounterId))
  75.364 -							{
  75.365 -							    Bundle tempBundle;
  75.366 -							    tempBundle=bundleList.at(i);
  75.367 -							    newBundleList.append(tempBundle);
  75.368 -								if(logOption==1)
  75.369 -								{
  75.370 -								    QString logString;
  75.371 -			    					logString.append("Bundle: ");	
  75.372 -								    logString.append(QString("%1").arg((int)tempBundle.id));
  75.373 -		    						logString.append(" with encounterId: ");	
  75.374 -								    logString.append(QString("%1").arg((int)encounterId));
  75.375 -		    						logString.append(" not in hash, adding it to offer.");	
  75.376 -		    						log->addLog(0,logString);
  75.377 -								}
  75.378 -    						}else
  75.379 -							{
  75.380 -								if(logOption==1)
  75.381 -								{
  75.382 -							    	QString logString;
  75.383 -		    						logString.append("Bundle: ");	
  75.384 -								    logString.append(QString("%1").arg((int)bundleList.at(i).id));
  75.385 -		    						logString.append(" with encounterId: ");	
  75.386 -								    logString.append(QString("%1").arg((int)encounterId));
  75.387 -		    						logString.append(" is in hash, not adding it to offer.");	
  75.388 -		    						log->addLog(0,logString);
  75.389 -								}
  75.390 -							}
  75.391 -					    }
  75.392 -					    else	//no smartOffer
  75.393 -					    {
  75.394 -					        Bundle tempBundle;
  75.395 -					        tempBundle=bundleList.at(i);
  75.396 -					        newBundleList.append(tempBundle);
  75.397 -    					    }
  75.398 -					}
  75.399 -				}
  75.400 -			}
  75.401 -			return newBundleList;
  75.402 -			break;
  75.403 -	}
  75.404 -	return bundleList;
  75.405 -}
  75.406 -
  75.407 -void BundleManager::updateBundlesDestinations(NodeManager* nodeManager)
  75.408 -{
  75.409 -	for (ushort i = 0; i < bundleList.size(); ++i) 
  75.410 -	{
  75.411 -		Bundle tempBundle;
  75.412 -		if(bundleList.at(i).destinationId==0)
  75.413 -		{
  75.414 -			QString source;
  75.415 -			QString destination;
  75.416 -			QString temp;
  75.417 -			int pos;
  75.418 -			tempBundle=bundleList.at(i);
  75.419 -/*			temp=tempBundle.sourceString;
  75.420 -			pos=temp.indexOf("://",0);
  75.421 -			temp.remove(0,pos+3);
  75.422 -			pos=temp.indexOf("/",0);
  75.423 -			source=temp.mid(0,pos);*/
  75.424 -			temp=tempBundle.destinationString;
  75.425 -			pos=temp.indexOf("://",0);
  75.426 -			temp.remove(0,pos+3);
  75.427 -			pos=temp.indexOf("/",0);
  75.428 -			destination=temp.mid(0,pos);
  75.429 -			tempBundle.destinationId=nodeManager->getId(destination);
  75.430 -			bundleList.replace(i,tempBundle);
  75.431 -			emit sendDebugBundleList(bundleList);
  75.432 -		}
  75.433 -	} 
  75.434 -
  75.435 -}
  75.436 -
  75.437 -QList<Bundle> BundleManager::prepareBundels(QList<Bundle> receivedList, int senderId)
  75.438 -{
  75.439 -	//Add any acked bundles to the hash with bundle->node mappings, then remove 
  75.440 -	//it from the received list.
  75.441 -	for(int i=0; i<receivedList.size(); i++)
  75.442 -	{
  75.443 -		Bundle b = receivedList.at(i);
  75.444 -		if(b.isAck())
  75.445 -		{
  75.446 -			//Only add the sender to the hash if not alrady in it
  75.447 -			QList<int> l = transferredBundleHash.values(b.id);
  75.448 -			if(!l.contains(senderId)){
  75.449 -				transferredBundleHash.insertMulti(b.id,senderId);
  75.450 -				if(logOption==1){
  75.451 -					QString logString;
  75.452 -					logString.append("Received smart-offer ack for Bundle: ");	
  75.453 -					logString.append(QString("%1").arg((int)b.id));
  75.454 -					logString.append(", adding it to hash. Sender: ");	
  75.455 -					logString.append(QString("%1").arg((int)senderId));
  75.456 -					log->addLog(0,logString);
  75.457 -				}
  75.458 -			}
  75.459 -			receivedList.removeAt(i);
  75.460 -		}
  75.461 -	}
  75.462 -	
  75.463 -	QList<Bundle> newBundleList;
  75.464 -	//We have to find and add all the bundles with data to the list
  75.465 -	for (ushort i = 0; i < bundleList.size(); ++i) 
  75.466 -	{
  75.467 -		for (ushort j = 0; j < receivedList.size(); ++j) 
  75.468 -		{
  75.469 -			if(bundleList.at(i).id==receivedList.at(j).id)
  75.470 -				newBundleList.append(bundleList.at(i));
  75.471 -		}	
  75.472 -	}
  75.473 -	return newBundleList; 
  75.474 -}
  75.475 -
  75.476 -
  75.477 -QList<Bundle> BundleManager::prepareBundelRequest(QList<Bundle> receivedList)
  75.478 -{
  75.479 -	//We take only bundles that we don't have
  75.480 -	//Currently no memory restrictions!!!
  75.481 -	for (ushort i = 0; i < bundleList.size(); ++i) 
  75.482 -	{
  75.483 -		for (ushort j = 0; j < receivedList.size(); ++j) 
  75.484 -		{
  75.485 -			if((bundleList.at(i).id==receivedList.at(j).id))//||(bundleList.at(i).options==receivedList.at(j).id))
  75.486 -			{
  75.487 -				receivedList.removeAt(j);
  75.488 -				j=0;
  75.489 -			}
  75.490 -		}	
  75.491 -	}
  75.492 -
  75.493 -	return receivedList; //We have to add some memory restrictions
  75.494 -}
  75.495 -
  75.496 -
  75.497 -
  75.498 -void BundleManager::addBundleList(QList<Bundle> receivedList)
  75.499 -{
  75.500 -	for (ushort n = 0; n < receivedList.size(); ++n)
  75.501 -	{
  75.502 -		Bundle newBundle;
  75.503 -		newBundle=receivedList.at(n);
  75.504 -		addBundle(newBundle);
  75.505 -	}	
  75.506 -}
  75.507 -
  75.508 -
  75.509 -//This is internal slot for adding bundles to the list
  75.510 -void BundleManager::storeBundle(Bundle newBundle)
  75.511 -{
  75.512 -
  75.513 -	//we obtain space for bundle
  75.514 -	//FIFO 
  75.515 -	while( 
  75.516 -		 (((getMemoryStorageSize()+getMemoryBundleSize(newBundle))>memoryStorageSize)||
  75.517 -		 ((getFileStorageSize()+getFileBundleSize(newBundle))>fileStorageSize))&&
  75.518 -		 (bundleList.size()>0)
  75.519 -		 )
  75.520 -	{
  75.521 -		if(fileOption==1)
  75.522 -		{
  75.523 -			Bundle firstBundle;
  75.524 -			firstBundle=bundleList.first();
  75.525 -			QString filename;
  75.526 -			filename=QString("%1").arg((int)firstBundle.id);
  75.527 -			QFile file(dir.filePath(filename));
  75.528 -			file.remove();
  75.529 -		}
  75.530 -		bundleList.removeFirst();
  75.531 -	}
  75.532 -	//Then we add it to the list
  75.533 -	if(fileOption==1)
  75.534 -	{
  75.535 -		QString filename;
  75.536 -		filename=QString("%1").arg((int)newBundle.id);
  75.537 -		QFile file(dir.filePath(filename));
  75.538 -		if (file.open(QIODevice::WriteOnly))
  75.539 -		{
  75.540 -			file.write(newBundle.data);
  75.541 -			newBundle.data.clear();
  75.542 -			file.close();
  75.543 -		}
  75.544 -	}
  75.545 -	bundleList.append(newBundle);
  75.546 -
  75.547 -		
  75.548 -	//DEBUG
  75.549 -	emit sendDebugBundleList(bundleList);
  75.550 -	emit sendMemoryStorage(getMemoryStorageSize());
  75.551 -	emit sendFileStorage(getFileStorageSize());
  75.552 -
  75.553 -
  75.554 -
  75.555 -}
  75.556 -
  75.557 -//This is external slot for receivng bundles
  75.558 -void BundleManager::addBundle(Bundle newBundle)
  75.559 -{
  75.560 -	int isInTheList=0;
  75.561 - 	Bundle tempBundle=newBundle;
  75.562 -	//Checking that we don't have the same bundle
  75.563 -	//or that wedidn't get any ACK for this bundle sofar
  75.564 -	for (ushort n = 0; n < bundleList.size(); ++n)
  75.565 -	{
  75.566 -		if(tempBundle.id==bundleList.at(n).id)
  75.567 -			isInTheList++;
  75.568 -		//Is there allready an ack for this bundle
  75.569 -		if((bundleList.at(n).options&0x02)==0x02)
  75.570 -		{		
  75.571 -			QByteArray data;
  75.572 -			if(fileOption==1)
  75.573 -			{
  75.574 -				QString filename;
  75.575 -				filename=QString("%1").arg((int)bundleList.at(n).id);
  75.576 -				QFile file(dir.filePath(filename));
  75.577 -				if(file.exists()==1)
  75.578 -				{
  75.579 -					if (file.open(QIODevice::ReadOnly))
  75.580 -					{
  75.581 -						data=file.readAll();
  75.582 -			    			file.close();
  75.583 -					}
  75.584 -				}
  75.585 -			}
  75.586 -			else
  75.587 -			{
  75.588 -				data = tempBundle.data;
  75.589 -			}
  75.590 -			if(tempBundle.id==data.toInt(0,10))   //Checking the bundle ACK bit
  75.591 -				isInTheList++;
  75.592 -		}
  75.593 -	}	
  75.594 -	if(isInTheList==0)
  75.595 -	{
  75.596 -		//We add a new bundle record to log file
  75.597 - 		if(logOption==1)
  75.598 -		{
  75.599 -		    QString logString;
  75.600 -		    logString.append("Bundle ID:");	
  75.601 -		    logString.append(QString("%1").arg((int)tempBundle.id));
  75.602 -		    logString.append(" SRC:");
  75.603 -		    logString.append(QString("%1").arg((int)tempBundle.sourceId));
  75.604 -		    logString.append(" ");
  75.605 -		    logString.append(tempBundle.sourceString);
  75.606 -		    logString.append(" DST:");
  75.607 -		    logString.append(QString("%1").arg((int)tempBundle.destinationId));
  75.608 -		    logString.append(" ");
  75.609 -		    logString.append(" Size:");
  75.610 -		    logString.append(QString("%1").arg((int)tempBundle.data.size()));
  75.611 -		    logString.append(tempBundle.destinationString);
  75.612 -		    log->addLog(0,logString);
  75.613 -		}
  75.614 -		//If this is a bundle endpoint we add it	
  75.615 -		if(tempBundle.destinationId==ourId)
  75.616 -		{
  75.617 -			//First we check if the Bundle is not ACK
  75.618 -			if((tempBundle.options&0x02)!=0x02)//Checking the bundle ACK bit
  75.619 -			{
  75.620 -				//We pass the bundle to Application layer
  75.621 -				//If this is a PRoPHET message...
  75.622 -				if((tempBundle.options&0x04)==0x04)//Checking the "PRoPHET" message bit
  75.623 -				{
  75.624 -					//We add a new msg
  75.625 -					QString filename;
  75.626 -					filename.append(tempBundle.timeStamp.toString("MM-dd_hh-mm"));
  75.627 -					filename.append("_ID_");
  75.628 -					filename.append(QString("%1").arg((int)tempBundle.id));
  75.629 -					filename.append("_FROM_");
  75.630 -					filename.append(tempBundle.sourceString);
  75.631 -					QFile file(msgDir.filePath(filename));
  75.632 -					if(file.open(QIODevice::WriteOnly|QIODevice::Truncate))
  75.633 -					{
  75.634 -						file.write(tempBundle.data);
  75.635 -						file.close();
  75.636 -					}
  75.637 -				}
  75.638 -				//Otherwise we pass it to the DTN
  75.639 -				else
  75.640 -				{
  75.641 -					QString logString;
  75.642 -					logString.append("Adding bundle to DTN  ID:");	
  75.643 -					logString.append(QString("%1").arg((int)tempBundle.id));
  75.644 -					logString.append(" SRC:");
  75.645 -					logString.append(QString("%1").arg((int)tempBundle.sourceId));
  75.646 -					logString.append(" ");
  75.647 -					logString.append(tempBundle.sourceString);
  75.648 -					logString.append(" DST:");
  75.649 -					logString.append(QString("%1").arg((int)tempBundle.destinationId));
  75.650 -					logString.append(" ");
  75.651 -					logString.append(tempBundle.destinationString);
  75.652 -					logString.append(" Size:");
  75.653 -					logString.append(QString("%1").arg((int)tempBundle.data.size()));
  75.654 -				    log->addLog(0,logString);
  75.655 -					emit sendDeliveredBundle(tempBundle);
  75.656 -				}
  75.657 -				//We store the bundle to our list
  75.658 -				//Adding recived bundle to storage if we are the ENDPOINT!!!!!!!!!!!!!
  75.659 -				storeBundle(tempBundle);
  75.660 -				//Then we check if we need to ACK this bundle
  75.661 -				if((tempBundle.options&0x01)==0x01)
  75.662 -				{
  75.663 -					//We create ACK
  75.664 -					Bundle ACKBundle;
  75.665 -					//And put the ACKed bundle ID to data field
  75.666 -					QByteArray ACKData;
  75.667 -					ACKData.setNum(tempBundle.id);
  75.668 -					int ACKOption;
  75.669 -					ACKOption = tempBundle.options;
  75.670 -					//We clear the ACKOption bit and set the ACK bit 
  75.671 -					ACKOption=ACKOption|0x02;
  75.672 -					ACKOption=ACKOption&0xFFFE;
  75.673 -					ACKBundle.setContent(seq,tempBundle.destinationId,tempBundle.sourceId,ACKData,ACKOption,tempBundle.destinationString,tempBundle.sourceString);
  75.674 -					seq++;
  75.675 -					//and add it to the list
  75.676 -					storeBundle(ACKBundle);
  75.677 -				}
  75.678 -			}
  75.679 -			//This is the ACK Bundle for us
  75.680 -			else
  75.681 -			{
  75.682 -				//Adding recived bundle to storage
  75.683 -				storeBundle(tempBundle);
  75.684 -				//Here can we pass some ACK inforation for application layer
  75.685 -				qint32 bundleId=tempBundle.data.toInt(0,10);
  75.686 -				removeBundle(bundleId);
  75.687 -			}
  75.688 -		}
  75.689 -		//This is not bundle's endpoint
  75.690 -		else
  75.691 -		{
  75.692 -			//If this is ACK of one of bundle that we have we remove it 
  75.693 -			if((tempBundle.options&0x02)==0x02)//Checking the bundle ACK bit
  75.694 -			{
  75.695 -				qint32 bundleId=tempBundle.data.toInt(0,10);
  75.696 -				removeBundle(bundleId);
  75.697 -			}
  75.698 -			storeBundle(tempBundle);
  75.699 -		}
  75.700 -
  75.701 -	}
  75.702 -}
  75.703 -
  75.704 -bool BundleManager::removeBundle(int bundleID)
  75.705 -{
  75.706 -	//First we search for the bundle
  75.707 -	for (ushort i = 0; i < bundleList.size(); ++i) 
  75.708 -	{
  75.709 -		if(bundleID==bundleList.at(i).id)
  75.710 -		{
  75.711 -			//Then we dele it
  75.712 -			if(fileOption==1)
  75.713 -			{
  75.714 -				QString filename;
  75.715 -				filename=QString("%1").arg((int)bundleList.at(i).id);
  75.716 -				QFile file(dir.filePath(filename));
  75.717 -				if(file.exists()==1)
  75.718 -				{
  75.719 -					file.remove();
  75.720 -				}
  75.721 -			}
  75.722 -			bundleList.removeAt(i);			
  75.723 -			//DEBUG
  75.724 -			emit sendDebugBundleList(bundleList);
  75.725 -			emit sendMemoryStorage(getMemoryStorageSize());
  75.726 -			emit sendFileStorage(getFileStorageSize());
  75.727 -			return 1;
  75.728 -		}
  75.729 -	}
  75.730 -	return 0;
  75.731 -
  75.732 -}
  75.733 -
  75.734 -
  75.735 -void BundleManager::checkTTL()
  75.736 -{
  75.737 -	if(TTLOption==1)
  75.738 -	{
  75.739 -		QDateTime currentTime;
  75.740 -		currentTime=currentTime.currentDateTime();
  75.741 -		int currentTimeInSeconds=currentTime.toTime_t();
  75.742 -		for (ushort i = 0; i < bundleList.size(); ++i) 
  75.743 -		{
  75.744 -			int bundleTime=bundleList.at(i).timeStamp.toTime_t();
  75.745 -			if((bundleList.at(i).timeStamp.toTime_t()+TTLValue)<currentTimeInSeconds)
  75.746 -			{
  75.747 -				//Then we delete it
  75.748 -				removeBundle(bundleList.at(i).id);
  75.749 -				i=0;
  75.750 -			}
  75.751 -		}
  75.752 -	}
  75.753 -}
  75.754 -
  75.755 -void BundleManager::removeAllBundles()
  75.756 -{
  75.757 -	while(bundleList.size()>0)
  75.758 -	{
  75.759 -		removeBundle(bundleList.first().id);
  75.760 -	}
  75.761 -}
  75.762 -
  75.763 -int BundleManager::getSeq()
  75.764 -{
  75.765 -	seq++;
  75.766 -	seq%=1000000;
  75.767 -	return seq;
  75.768 -}
  75.769 -
  75.770 -
    76.1 --- a/x86/2.7/bundleManager.h	Wed Jan 03 09:17:10 2007 +0000
    76.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    76.3 @@ -1,172 +0,0 @@
    76.4 -#ifndef BUNDLEMANAGER_H
    76.5 -#define BUNDLEMANAGER_H
    76.6 -#include <QtCore>
    76.7 -#include <bundle.h>
    76.8 -#include <node.h>
    76.9 -#include <nodeManager.h>
   76.10 -#include <messageFile.h>
   76.11 -#include <bundleListFileIO.h>
   76.12 -
   76.13 -/*! \brief This class keeps track of bundles and handles bundle storage, both 
   76.14 - * in memory and on disk. 
   76.15 - *
   76.16 - * PRoPHET routing is also done in this class (but should be moved 
   76.17 - * to its own object.
   76.18 - */
   76.19 -class BundleManager : public QObject
   76.20 -{
   76.21 -	Q_OBJECT
   76.22 -
   76.23 -public:
   76.24 -	BundleManager(int);
   76.25 -	int getMemoryStorageSize();
   76.26 -	int getMemoryBundleSize(Bundle);
   76.27 -	int getFileStorageSize();
   76.28 -	int getFileBundleSize(Bundle);
   76.29 -	QList<Bundle> getBundleList();
   76.30 -
   76.31 -	//Returns the list of bundles that are to be offered to the encountered node.
   76.32 -	/*!
   76.33 -	 * Returns the list of bundles that are to be offered to the encountered 
   76.34 -	 * node.
   76.35 -	 * @param ourList our list of known nodes (from node manager).
   76.36 -	 * @param encoutnerlist the node list of the encountered node.
   76.37 -	 * @param encounterId the node id of the encountered node.
   76.38 -	 * @return the list of bundles that are to be offered to the encountered 
   76.39 -	 * node.
   76.40 -	 */
   76.41 -	QList<Bundle> getBundleOffer(QList<Node> ourList,QList<Node> encoutnerList,int encounterId);
   76.42 -	QList<Bundle> prepareBundelRequest(QList<Bundle>);
   76.43 -
   76.44 -	// Builds the list of bundles that are to be transferred to the encountered node.
   76.45 -	/*!
   76.46 -	 * @param receivedList the list of requested bundles.
   76.47 -	 * @param senderId the id of the node this Bundle was received from. 
   76.48 -	 * Note: This is NOT the source id.
   76.49 -	 * @return the list of bundles that will be sent to the other node.
   76.50 -	 */
   76.51 -	QList<Bundle> prepareBundels(QList<Bundle>, int senderId);
   76.52 -
   76.53 -private:
   76.54 -	QTimer *timer;
   76.55 -	QTimer *TTLTimer;
   76.56 -	int routing;	//0=epidemic, 1=GRTR
   76.57 -	int fileOption;
   76.58 -	int TTLOption;
   76.59 -	int TTLValue;
   76.60 -	int ACKOption;
   76.61 -	int memoryStorageSize;
   76.62 -	int fileStorageSize;
   76.63 -	int ourId;
   76.64 -	int seq;
   76.65 -	int smartOffer;
   76.66 -
   76.67 -	// keeps track of which nodes each bundle was sent to
   76.68 -	// key = bundle id, value = list of node ids
   76.69 -	// (should be declared private)
   76.70 -	QMultiHash<int, int> transferredBundleHash;
   76.71 -    BundleListFileIO* hashFile;
   76.72 -
   76.73 -	QTimer *writeToFileTimer;
   76.74 -	QList<Bundle> bundleList;
   76.75 -
   76.76 -	QDir dir;
   76.77 -	QDir msgDir;
   76.78 -	QString storagePath;
   76.79 -	int option;
   76.80 -	int logOption;
   76.81 -	MessageFile *log;
   76.82 -	bool showFirstTime;
   76.83 -
   76.84 -signals:
   76.85 -	/*!
   76.86 -	 * Emits the specified Bundle. (Used for passing bundles to DTN)
   76.87 -	 */
   76.88 -	void sendDeliveredBundle(Bundle);
   76.89 -	
   76.90 -		/*!
   76.91 -	 * Emits the memory usage of the bundle list in bytes(?).
   76.92 -	 */
   76.93 -	void sendMemoryStorage(int);
   76.94 -	
   76.95 -	/*!
   76.96 -	 * Emits the size (in bytes?) of the file storage.
   76.97 -	 */
   76.98 -	void sendFileStorage(int);
   76.99 -	
  76.100 -	/*!
  76.101 -	 * Emits the bundle list (to the GUI).
  76.102 -	 */
  76.103 -	void sendDebugBundleList(QList<Bundle>);
  76.104 -
  76.105 -public slots:
  76.106 -	/*!
  76.107 -	 * External method to get a  bundle sequence number.
  76.108 -	 */
  76.109 -	int getSeq();
  76.110 -
  76.111 -	/*!
  76.112 -	 * External slot for receiving bundles. Received bundles are 
  76.113 -	 * appropriately dispatched to either the application layer (an NSIM 
  76.114 -	 * bundle) or to DTN.
  76.115 -	 */
  76.116 -	void addBundle(Bundle);
  76.117 -	
  76.118 -	/*!
  76.119 -	 * Goes through the bundle list searching for bundles who's destination 
  76.120 -	 * id=0 and assigning the correct destination for any such bundles. 
  76.121 -	 * This function is a workaround for the situation when bundles are 
  76.122 -	 * received before this client is aware of (has a probability for) the 
  76.123 -	 * destination node.
  76.124 -	 */
  76.125 -	void updateBundlesDestinations(NodeManager*);
  76.126 -	
  76.127 -	/*!
  76.128 -	 * Inserts all bundles in the list to the list of this bundleManager.
  76.129 -	 * @param receivedList a list of bundles to be added to this 
  76.130 -	 * bundleManagers list.
  76.131 -	 */
  76.132 -	void addBundleList(QList<Bundle>);
  76.133 -	
  76.134 -private slots:
  76.135 -	/*!
  76.136 -	 * Saves the bundle list to the file bundles.txt.
  76.137 -	 */
  76.138 -	void saveToFile();
  76.139 -	
  76.140 -	/*!
  76.141 -	 * Updates the bundle list in memory to match the one stored on disk in 
  76.142 -	 * bundles.txt.
  76.143 -	 */
  76.144 -	void readFromFile();
  76.145 -	
  76.146 -	/*!
  76.147 -	 * Removes the specified bundle from the list.
  76.148 -	 * @param bundleID the id of the bundle to be removed.
  76.149 -	 */
  76.150 -	bool removeBundle(int);
  76.151 -	
  76.152 -	/*!
  76.153 -	 * Triggers sending the bundle list to the GUI.
  76.154 -	 */	
  76.155 -	void emitDebugList();
  76.156 -	
  76.157 -	/*!
  76.158 -	 * Iterates through the bundle list and removes any bundles which have 
  76.159 -	 * an outdated timestamp.
  76.160 -	 */
  76.161 -	void checkTTL();
  76.162 -	
  76.163 -	/*!
  76.164 -	 * Removes all bundles from the list.
  76.165 -	 */
  76.166 -	void removeAllBundles();
  76.167 -	
  76.168 -	/*!
  76.169 -	 * Internal slot for adding a bundle to the list.
  76.170 -	 */
  76.171 -	void storeBundle(Bundle);
  76.172 -
  76.173 -
  76.174 -};
  76.175 -#endif
    77.1 --- a/x86/2.7/bundleWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
    77.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    77.3 @@ -1,176 +0,0 @@
    77.4 -#include <QtGui>
    77.5 -#include <bundleWidget.h>
    77.6 -#include <readFile.h>
    77.7 -
    77.8 -
    77.9 -BundleWidget::BundleWidget(QWidget *parent)
   77.10 -        : QWidget(parent)
   77.11 -{
   77.12 -#ifdef PDAGUI
   77.13 -//	setFixedSize(230, 300);
   77.14 -#else
   77.15 -	setFixedSize(990, 660);
   77.16 -#endif //PDAGUI
   77.17 -	
   77.18 -	ReadFile conf;
   77.19 -
   77.20 -#ifndef PDAGUI
   77.21 -	//List group
   77.22 -	QGroupBox *bundleBox = new QGroupBox("Bundle list");
   77.23 -#endif //PDAGUI
   77.24 -
   77.25 -	//Bundle table
   77.26 -	table = new QTableWidget(200, 9, this);
   77.27 -    QStringList horizontalLabels;
   77.28 -    horizontalLabels << "ID" << "TimeStamp" << "SrcStr" << "DestStr"<< "Source" << "Dest" << "Data" << "Options" << "Size";
   77.29 -	table->setHorizontalHeaderLabels(horizontalLabels); 
   77.30 -
   77.31 -
   77.32 -	//Final grid layout
   77.33 -    QGridLayout *bundleGroup = new QGridLayout;
   77.34 -	bundleGroup->addWidget(table, 0, 0);
   77.35 -#ifdef PDAGUI
   77.36 -	bundleGroup->setMargin(0);
   77.37 -	bundleGroup->setSpacing(0);
   77.38 -//	bundleBox->setFixedSize(230, 270);
   77.39 -#else
   77.40 -	bundleBox->setFixedSize(950, 550);
   77.41 -	bundleBox->setLayout(bundleGroup);
   77.42 -#endif //PDAGUI
   77.43 -
   77.44 -#ifndef PDAGUI
   77.45 -	QGroupBox *buttonBox = new QGroupBox("Administration");
   77.46 -#endif //PDAGUI
   77.47 -#ifdef PDAGUI
   77.48 -	removeSelected = new QPushButton("Remove Selected");
   77.49 -	removeAll = new QPushButton("Remove All");
   77.50 -#else
   77.51 -	removeSelected = new QPushButton("Remove Selected One");
   77.52 -	removeAll = new QPushButton("Remove All Bundles");
   77.53 -#endif //PDAGUI
   77.54 -	connect(removeSelected, SIGNAL(pressed()), this, SLOT(removeSelectedSlot()));
   77.55 -	connect(removeAll, SIGNAL(pressed()), this, SLOT(removeAllSlot()));
   77.56 -
   77.57 -
   77.58 -	//Final grid layout
   77.59 -    QGridLayout *administrationGroup = new QGridLayout;
   77.60 -
   77.61 -	administrationGroup->addWidget(removeSelected, 0, 0);
   77.62 -	administrationGroup->addWidget(removeAll, 0, 1);
   77.63 -
   77.64 -#ifdef PDAGUI
   77.65 -	administrationGroup->setMargin(0);
   77.66 -	administrationGroup->setSpacing(0);
   77.67 -// 	buttonBox->setFixedSize(230, 30);
   77.68 -//	buttonBox->setLayout(administrationGroup);
   77.69 -	//Define final layout
   77.70 -	QVBoxLayout *layout = new QVBoxLayout;
   77.71 -	layout->setMargin(0);
   77.72 -	layout->setSpacing(0);
   77.73 -	QWidget *tempWidget1 = new QWidget(this);
   77.74 -//	table->setFixedSize(230,260);
   77.75 -//	tempWidget1->setFixedSize(230,260);
   77.76 -	tempWidget1->setLayout(bundleGroup);
   77.77 -    layout->addWidget(tempWidget1);
   77.78 -	QWidget *tempWidget2 = new QWidget(this);
   77.79 -//	tempWidget2->setFixedSize(230,40);
   77.80 -	tempWidget2->setLayout(administrationGroup);
   77.81 -	layout->addWidget(tempWidget2);
   77.82 -    setLayout(layout);
   77.83 -#else
   77.84 - 	buttonBox->setFixedSize(950, 60);
   77.85 -	buttonBox->setLayout(administrationGroup);
   77.86 -	//Define final layout
   77.87 -	QVBoxLayout *layout = new QVBoxLayout;
   77.88 -    layout->addWidget(bundleBox);    
   77.89 -	layout->addWidget(buttonBox);    
   77.90 -    setLayout(layout);
   77.91 -#endif //PDAGUI
   77.92 -}
   77.93 -
   77.94 -
   77.95 -void BundleWidget::removeSelectedSlot()
   77.96 -{
   77.97 -
   77.98 -	QList<QTableWidgetItem*> list; 
   77.99 -	list = table->selectedItems ();
  77.100 -	if(list.size()==1)
  77.101 -	for (int i = 0; i < list.size(); ++i) 
  77.102 -	{
  77.103 -		QTableWidgetItem* item = list[i];
  77.104 -		int bundleId = item->text().toInt(0,10);
  77.105 -		emit removeBundle(bundleId);
  77.106 -	}
  77.107 -}
  77.108 -
  77.109 -void BundleWidget::removeAllSlot()
  77.110 -{
  77.111 -	 if(
  77.112 -	QMessageBox::question(
  77.113 -		this,
  77.114 -		 "Warning",
  77.115 -		"Are you really sure to remove all bundles?\n",
  77.116 -		"No","Yes",
  77.117 -		QString(),1,0)
  77.118 -	  )
  77.119 -		emit removeAllBundles();
  77.120 -}
  77.121 -
  77.122 -void BundleWidget::getBundleList(QList<Bundle> list)
  77.123 -{
  77.124 -	Bundle newBundle;
  77.125 -	table->clear();
  77.126 -	QStringList horizontalLabels;
  77.127 -    horizontalLabels << "ID" << "TimeStamp" << "SrcStr" << "DestStr"<< "Source" << "Dest" << "Data" << "Options" << "Size";
  77.128 -	table->setHorizontalHeaderLabels(horizontalLabels);
  77.129 -	table->setColumnWidth(0, 70);	//ID
  77.130 -	table->setColumnWidth(2, 70);	//time
  77.131 -	table->setColumnWidth(3, 70);	//srcstr
  77.132 -	table->setColumnWidth(4, 70);	//dststr
  77.133 -	table->setColumnWidth(5, 30);	//src
  77.134 -	table->setColumnWidth(6, 30);	//dst
  77.135 -	table->setColumnWidth(7, 70);	//data
  77.136 -	table->setColumnWidth(8, 40);	//opt
  77.137 -	table->setColumnWidth(9, 40);	//size
  77.138 -   for (int i = 0; i < list.size(); ++i) 
  77.139 -	{
  77.140 -		newBundle=list.at(i);
  77.141 -		QString text = QString("%1").arg((int)newBundle.getId());
  77.142 -		QTableWidgetItem *newItem = new QTableWidgetItem(text);
  77.143 -		table->setItem(i, 0, newItem);
  77.144 -	
  77.145 -		QDateTime time= newBundle.getTime();
  77.146 -		text = time.toString("MM/dd/yyyy hh:mm:ss");
  77.147 -		newItem = new QTableWidgetItem(text);
  77.148 -		table->setItem(i, 1, newItem);
  77.149 -
  77.150 -	
  77.151 -		newItem = new QTableWidgetItem((QString)newBundle.sourceString);
  77.152 -		table->setItem(i, 2, newItem);
  77.153 -		
  77.154 -		newItem = new QTableWidgetItem((QString)newBundle.destinationString);
  77.155 -		table->setItem(i, 3, newItem);
  77.156 -		
  77.157 -		text = QString("%1").arg((int)newBundle.getSourceId());
  77.158 -		newItem = new QTableWidgetItem(text);
  77.159 -		table->setItem(i, 4, newItem);
  77.160 -
  77.161 -		text = QString("%1").arg((int)newBundle.getDestinationId());
  77.162 -		newItem = new QTableWidgetItem(text);
  77.163 -		table->setItem(i, 5, newItem);
  77.164 -	
  77.165 -		newItem = new QTableWidgetItem((QString)newBundle.getData());
  77.166 -		table->setItem(i, 6, newItem);
  77.167 -
  77.168 -		text = QString("%1").arg((int)newBundle.getOptions());
  77.169 -		newItem = new QTableWidgetItem(text);
  77.170 -		table->setItem(i, 7, newItem);
  77.171 -
  77.172 -		text = QString("%1").arg((int)newBundle.dataLength);
  77.173 -		newItem = new QTableWidgetItem(text);
  77.174 -		table->setItem(i, 8, newItem);
  77.175 -
  77.176 -
  77.177 -	}
  77.178 -
  77.179 - }
    78.1 --- a/x86/2.7/bundleWidget.h	Wed Jan 03 09:17:10 2007 +0000
    78.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    78.3 @@ -1,34 +0,0 @@
    78.4 -#ifndef BUNDLEWIDGET_H
    78.5 -#define BUNDLEWIDGET_H
    78.6 -#include <QtGui>
    78.7 -#include <QtNetwork>
    78.8 -#include <bundle.h>
    78.9 -
   78.10 -
   78.11 -class BundleWidget : public QWidget
   78.12 -{
   78.13 -
   78.14 -	Q_OBJECT
   78.15 -
   78.16 -public:
   78.17 -
   78.18 -	BundleWidget(QWidget *parent = 0);
   78.19 -	QTableWidget *table;
   78.20 -	QPushButton *removeSelected;
   78.21 -	QPushButton *removeAll;
   78.22 -
   78.23 -signals:
   78.24 -	void removeBundle(int);
   78.25 -	void removeAllBundles();
   78.26 -public slots:
   78.27 -	void removeSelectedSlot();
   78.28 -	void removeAllSlot();
   78.29 -	void getBundleList(QList<Bundle>);
   78.30 -
   78.31 -
   78.32 -
   78.33 -};
   78.34 -
   78.35 -#endif
   78.36 -
   78.37 -
    79.1 --- a/x86/2.7/configWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
    79.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    79.3 @@ -1,257 +0,0 @@
    79.4 -#include <QtGui>
    79.5 -#include <configWidget.h>
    79.6 -#include <readFile.h>
    79.7 -
    79.8 -ConfigWidget::ConfigWidget(QWidget *parent)
    79.9 -        : QWidget(parent)
   79.10 -{
   79.11 -	ReadFile conf;
   79.12 -
   79.13 -	//Reading configuration
   79.14 -	loadConfiguration();
   79.15 -	//Final grid layout
   79.16 -	QGridLayout *readGroup = new QGridLayout;
   79.17 -	readGroup->setMargin(2);
   79.18 -	readGroup->setSpacing(0);
   79.19 -
   79.20 -	QLabel *labelNODEID = new QLabel("NodeID:");
   79.21 -	readGroup->addWidget(labelNODEID, 0, 0);
   79.22 -	readGroup->addWidget(lineNODEID, 0, 1);
   79.23 -	QLabel *labelNODENAME = new QLabel("Node Name:");
   79.24 -	readGroup->addWidget(labelNODENAME, 1, 0);
   79.25 -	readGroup->addWidget(lineNODENAME, 1, 1);
   79.26 -	QLabel *labelNODEIP = new QLabel("Node IP:");
   79.27 -	readGroup->addWidget(labelNODEIP, 2, 0);
   79.28 -	readGroup->addWidget(lineNODEIP, 2, 1);
   79.29 -	QLabel *labelNODEIP2 = new QLabel("Node IP2:");
   79.30 -	readGroup->addWidget(labelNODEIP2, 3, 0);
   79.31 -	readGroup->addWidget(lineNODEIP2, 3, 1);
   79.32 -	QLabel *labelNODEBROADCAST = new QLabel("Broadcast Address:");
   79.33 -	readGroup->addWidget(labelNODEBROADCAST, 4, 0);
   79.34 -	readGroup->addWidget(lineNODEBROADCAST, 4, 1);
   79.35 -	QLabel *labelBROADCAST = new QLabel("Broadcast Timer:");
   79.36 -	readGroup->addWidget(labelBROADCAST, 5, 0);
   79.37 -	readGroup->addWidget(lineBROADCAST, 5, 1);
   79.38 -	QLabel *labelAGINGTIMER = new QLabel("Aging Timer:");
   79.39 -	readGroup->addWidget(labelAGINGTIMER, 6, 0);
   79.40 -	readGroup->addWidget(lineAGINGTIMER, 6, 1);
   79.41 -	QLabel *labelPENCOUNTER = new QLabel("PEcounter:");
   79.42 -	readGroup->addWidget(labelPENCOUNTER, 7, 0);
   79.43 -	readGroup->addWidget(linePENCOUNTER, 7, 1);
   79.44 -	QLabel *labelBETA = new QLabel("Beta:");
   79.45 -	readGroup->addWidget(labelBETA, 8, 0);
   79.46 -	readGroup->addWidget(lineBETA, 8, 1);
   79.47 -	QLabel *labelGAMMA = new QLabel("Gamma:");
   79.48 -	readGroup->addWidget(labelGAMMA, 9, 0);
   79.49 -	readGroup->addWidget(lineGAMMA, 9, 1);
   79.50 -	QLabel *labelHELLO = new QLabel("Hello Timer:");
   79.51 -	readGroup->addWidget(labelHELLO, 10, 0);
   79.52 -	readGroup->addWidget(lineHELLO, 10, 1);
   79.53 -
   79.54 -	QLabel *labelALIVE = new QLabel("Alive Timer:");
   79.55 -	readGroup->addWidget(labelALIVE, 11, 0);
   79.56 -	readGroup->addWidget(lineALIVE, 11, 1);
   79.57 -
   79.58 -	QLabel *labelHELLOTIMER = new QLabel("Hello Timer:");
   79.59 -	readGroup->addWidget(labelHELLOTIMER, 12, 0);
   79.60 -	readGroup->addWidget(lineHELLOTIMER, 12, 1);
   79.61 -
   79.62 -//	QLabel *laberINITIATORTIMER = new QLabel("Initiator Timer:");
   79.63 -//	readGroup->addWidget(laberINITIATORTIMER, 13, 0);
   79.64 -//	readGroup->addWidget(lineINITIATORTIMER, 13, 1);
   79.65 -
   79.66 -//	QLabel *labelLISTENERTIMER = new QLabel("Listener Timer:");
   79.67 -//	readGroup->addWidget(labelLISTENERTIMER, 14, 0);
   79.68 -//	readGroup->addWidget(lineLISTENERTIMER, 14, 1);
   79.69 -
   79.70 -	QLabel *labelDTNHOSTNAME = new QLabel("DTN Host Name:");
   79.71 -	readGroup->addWidget(labelDTNHOSTNAME, 13, 0);
   79.72 -	readGroup->addWidget(lineDTNHOSTNAME, 13, 1);
   79.73 -
   79.74 -	QLabel *labelDNTTIMER = new QLabel("DTN Timer:");
   79.75 -	readGroup->addWidget(labelDNTTIMER, 14, 0);
   79.76 -	readGroup->addWidget(lineDNTTIMER, 14, 1);
   79.77 -
   79.78 -	QLabel *labelSTORAGESIZE = new QLabel("File Storge size:");
   79.79 -	readGroup->addWidget(labelSTORAGESIZE, 15, 0);
   79.80 -	readGroup->addWidget(lineSTORAGESIZE, 15, 1);
   79.81 -
   79.82 -	QLabel *labelMEMORYSIZE = new QLabel("Memory Storge size:");
   79.83 -	readGroup->addWidget(labelMEMORYSIZE, 16, 0);
   79.84 -	readGroup->addWidget(lineMEMORYSIZE, 16, 1);
   79.85 -
   79.86 -	QLabel *labelROUTING = new QLabel("Routing Type:");
   79.87 -	readGroup->addWidget(labelROUTING, 17, 0);
   79.88 -	readGroup->addWidget(lineROUTING, 17, 1);
   79.89 -
   79.90 -	QLabel *labelQUEUE = new QLabel("Queue Type:");
   79.91 -	readGroup->addWidget(labelQUEUE, 18, 0);
   79.92 -	readGroup->addWidget(lineQUEUE, 18, 1);
   79.93 -
   79.94 -	QLabel *labelCONTINIUSUPDATE = new QLabel("Continius update:");
   79.95 -	readGroup->addWidget(labelCONTINIUSUPDATE, 19, 0);
   79.96 -	readGroup->addWidget(lineCONTINIUSUPDATE, 19, 1);
   79.97 -
   79.98 -	QLabel *labelSTORAGEPATH = new QLabel("Storage Path:");
   79.99 -	readGroup->addWidget(labelSTORAGEPATH, 20, 0);
  79.100 -	readGroup->addWidget(lineSTORAGEPATH, 20, 1);
  79.101 -
  79.102 -	QLabel *labelLOGPATH = new QLabel("Log Path:");
  79.103 -	readGroup->addWidget(labelLOGPATH, 21, 0);
  79.104 -	readGroup->addWidget(lineLOGPATH, 21, 1);
  79.105 -
  79.106 -	QLabel *labelMSGPATH = new QLabel("Messages Path:");
  79.107 -	readGroup->addWidget(labelMSGPATH, 22, 0);
  79.108 -	readGroup->addWidget(lineMSGPATH, 22, 1);
  79.109 -
  79.110 -	QLabel *labelAGEFILENODES = new QLabel("Age Nodes on Startup:");
  79.111 -	readGroup->addWidget(labelAGEFILENODES, 23, 0);
  79.112 -	readGroup->addWidget(lineAGEFILENODES, 23, 1);
  79.113 -
  79.114 -	QLabel *labelUSEFILENODES = new QLabel("Store Nodes To File:");
  79.115 -	readGroup->addWidget(labelUSEFILENODES, 24, 0);
  79.116 -	readGroup->addWidget(lineUSEFILENODES, 24, 1);
  79.117 -
  79.118 -	QLabel *labelWRITETOFILETIMER = new QLabel("File Writing Timer:");
  79.119 -	readGroup->addWidget(labelWRITETOFILETIMER, 25, 0);
  79.120 -	readGroup->addWidget(lineWRITETOFILETIMER, 25, 1);
  79.121 -
  79.122 -	QLabel *labelUSEFILEBUNDLES = new QLabel("Store Bundels To Files:");
  79.123 -	readGroup->addWidget(labelUSEFILEBUNDLES, 26, 0);
  79.124 -	readGroup->addWidget(lineUSEFILEBUNDLES, 26, 1);
  79.125 -
  79.126 -
  79.127 -	QLabel *labelLOGGING = new QLabel("Logging:");
  79.128 -	readGroup->addWidget(labelLOGGING, 27, 0);
  79.129 -	readGroup->addWidget(lineLOGGING, 27, 1);
  79.130 -
  79.131 -	QLabel *labelUSETTL = new QLabel("Use TTL:");
  79.132 -	readGroup->addWidget(labelUSETTL, 28, 0);
  79.133 -	readGroup->addWidget(lineUSETTL, 28, 1);
  79.134 -
  79.135 -	QLabel *labelTTL = new QLabel("TTL:");
  79.136 -	readGroup->addWidget(labelTTL, 29, 0);
  79.137 -	readGroup->addWidget(lineTTL, 29, 1);
  79.138 -
  79.139 -	QLabel *labelACKS = new QLabel("Use ACKs:");
  79.140 -	readGroup->addWidget(labelACKS, 30, 0);
  79.141 -	readGroup->addWidget(lineACKS, 30, 1);
  79.142 -
  79.143 -	//Define final layout
  79.144 -	QWidget *tempWidget = new QWidget();
  79.145 -	tempWidget->setLayout(readGroup);
  79.146 -	QScrollArea *scrollArea = new QScrollArea();
  79.147 -	scrollArea->setWidget(tempWidget);
  79.148 -	scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
  79.149 -	QGridLayout *layout = new QGridLayout();
  79.150 -	layout->setMargin(2);
  79.151 -	layout->setSpacing(2);
  79.152 -	layout->addWidget(scrollArea, 0, 0);
  79.153 -    setLayout(layout);
  79.154 -}
  79.155 -
  79.156 -void ConfigWidget::loadConfiguration()
  79.157 -{
  79.158 -	ReadFile conf;
  79.159 -	lineNODEID = new QLineEdit();
  79.160 -	lineNODEID->setText(QString("%1").arg(conf.getNodeId()));
  79.161 -
  79.162 -	lineNODENAME = new QLineEdit();
  79.163 -	lineNODENAME->setText(conf.getNodeName());
  79.164 -
  79.165 -	lineNODEIP = new QLineEdit();
  79.166 -	lineNODEIP->setText(conf.getNodeIp().toString());
  79.167 -
  79.168 -	lineNODEIP2 = new QLineEdit();
  79.169 -	lineNODEIP2->setText(conf.getNodeIp2().toString());
  79.170 -
  79.171 -	lineNODEBROADCAST = new QLineEdit();
  79.172 -	lineNODEBROADCAST->setText(conf.getBroadcast().toString());
  79.173 -
  79.174 -	lineBROADCAST = new QLineEdit();
  79.175 -	lineBROADCAST->setText(QString("%1").arg(conf.getBroadcastTimer()));
  79.176 -
  79.177 -	lineAGINGTIMER = new QLineEdit();
  79.178 -	lineAGINGTIMER->setText(QString("%1").arg(conf.getAgingTimer()));
  79.179 -
  79.180 -	linePENCOUNTER = new QLineEdit();
  79.181 -	linePENCOUNTER->setText(QString("%1").arg(conf.getPEncounter()));
  79.182 -
  79.183 -	lineBETA = new QLineEdit();
  79.184 -	lineBETA->setText(QString("%1").arg(conf.getBeta()));
  79.185 -
  79.186 -	lineGAMMA = new QLineEdit();
  79.187 -	lineGAMMA->setText(QString("%1").arg(conf.getGamma()));
  79.188 -	
  79.189 -	lineHELLO = new QLineEdit();
  79.190 -	lineHELLO->setText(QString("%1").arg(conf.getHello()));
  79.191 -	
  79.192 -	lineALIVE = new QLineEdit();
  79.193 -	lineALIVE->setText(QString("%1").arg(conf.getAlive()));
  79.194 -	
  79.195 -	lineHELLOTIMER = new QLineEdit();
  79.196 -	lineHELLOTIMER->setText(QString("%1").arg(conf.getHello()));
  79.197 -	
  79.198 -	lineINITIATORTIMER = new QLineEdit();
  79.199 -	lineINITIATORTIMER->setText(QString("%1").arg(conf.getInitiatorTimer()));
  79.200 -	
  79.201 -	lineLISTENERTIMER = new QLineEdit();
  79.202 -	lineLISTENERTIMER->setText(QString("%1").arg(conf.getListenerTimer()));
  79.203 -	
  79.204 -	lineDTNHOSTNAME = new QLineEdit();
  79.205 -	lineDTNHOSTNAME->setText(conf.getDTNHostName().toString());
  79.206 -	
  79.207 -	lineDNTTIMER = new QLineEdit();
  79.208 -	lineDNTTIMER->setText(QString("%1").arg(conf.getDTNTimer()));
  79.209 -
  79.210 -	lineSTORAGESIZE = new QLineEdit();
  79.211 -	lineSTORAGESIZE->setText(QString("%1").arg(conf.getStorageSize()));
  79.212 -
  79.213 -	lineMEMORYSIZE = new QLineEdit();
  79.214 -	lineMEMORYSIZE->setText(QString("%1").arg(conf.getMemoryStorageSize()));
  79.215 -
  79.216 -	lineROUTING = new QLineEdit();
  79.217 -	lineROUTING->setText(QString("%1").arg(conf.getRouting()));
  79.218 -
  79.219 -	lineQUEUE = new QLineEdit();
  79.220 -	lineQUEUE->setText(QString("%1").arg(conf.getQueue()));
  79.221 -
  79.222 -	lineCONTINIUSUPDATE = new QLineEdit();
  79.223 -	lineCONTINIUSUPDATE->setText(QString("%1").arg(conf.getContiniusUpdate()));
  79.224 -
  79.225 -	lineSTORAGEPATH = new QLineEdit();
  79.226 -	lineSTORAGEPATH->setText(QString("%1").arg(conf.getStoragePath()));
  79.227 -
  79.228 -	lineLOGPATH = new QLineEdit();
  79.229 -	lineLOGPATH->setText(QString("%1").arg(conf.getLogPath()));
  79.230 -
  79.231 -	lineMSGPATH = new QLineEdit();
  79.232 -	lineMSGPATH->setText(QString("%1").arg(conf.getMsgPath()));
  79.233 -
  79.234 -	lineAGEFILENODES = new QLineEdit();
  79.235 -	lineAGEFILENODES->setText(QString("%1").arg(conf.getAgeFileNodes()));
  79.236 -
  79.237 -	lineUSEFILENODES = new QLineEdit();
  79.238 -	lineUSEFILENODES->setText(QString("%1").arg(conf.getUseFileNodes()));
  79.239 -
  79.240 -	lineWRITETOFILETIMER = new QLineEdit();
  79.241 -	lineWRITETOFILETIMER->setText(QString("%1").arg(conf.getWriteToFileTimer()));
  79.242 -
  79.243 -	lineUSEFILEBUNDLES = new QLineEdit();
  79.244 -	lineUSEFILEBUNDLES->setText(QString("%1").arg(conf.getUseFileBundles()));
  79.245 -
  79.246 -	lineLOGGING = new QLineEdit();
  79.247 -	lineLOGGING->setText(QString("%1").arg(conf.getLogOption()));
  79.248 -
  79.249 -	
  79.250 -	lineUSETTL = new QLineEdit();
  79.251 -	lineUSETTL->setText(QString("%1").arg(conf.getUseTTL()));
  79.252 -
  79.253 -	lineTTL = new QLineEdit();
  79.254 -	lineTTL->setText(QString("%1").arg(conf.getTTL()));
  79.255 -
  79.256 -	lineACKS = new QLineEdit();
  79.257 -	lineACKS->setText(QString("%1").arg(conf.getUseACKS()));
  79.258 -
  79.259 -}
  79.260 -
    80.1 --- a/x86/2.7/configWidget.h	Wed Jan 03 09:17:10 2007 +0000
    80.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    80.3 @@ -1,94 +0,0 @@
    80.4 -#ifndef CONFIGWIDGET_H
    80.5 -#define CONFIGWIDGET_H
    80.6 -#include <QtGui>
    80.7 -#include <QtNetwork>
    80.8 -
    80.9 -class ConfigWidget : public QWidget
   80.10 -{
   80.11 -
   80.12 -	Q_OBJECT
   80.13 -
   80.14 -private:
   80.15 -	QLineEdit *label;
   80.16 -	
   80.17 -public:
   80.18 -	QTextBrowser *readText;
   80.19 -	QFileDialog *file;
   80.20 -	ConfigWidget(QWidget *parent = 0);
   80.21 -	QDir dir;
   80.22 -	
   80.23 -	//Configuration variables
   80.24 -	int NODEID;
   80.25 -	QString NODENAME;
   80.26 -	QHostAddress NODEIP;
   80.27 -	QHostAddress NODEIP2;
   80.28 -	QHostAddress NODEBROADCAST;
   80.29 -	int BROADCAST;
   80.30 -	int AGINGTIMER;
   80.31 -	float PENCOUNTER;
   80.32 -	float BETA;
   80.33 -	float GAMMA;
   80.34 -	int HELLO;
   80.35 -	int ALIVE;
   80.36 -	int HELLOTIMER;
   80.37 -	int INITIATORTIMER;
   80.38 -	int LISTENERTIMER;
   80.39 -	QHostAddress DTNHOSTNAME;
   80.40 -	int DNTTIMER;
   80.41 -	int STORAGESIZE;
   80.42 -	int MEMORYSIZE;
   80.43 -	int ROUTING;
   80.44 -	int QUEUE;
   80.45 -	int CONTINIUSUPDATE;
   80.46 -	QString STORAGEPATH;
   80.47 -	QString LOGPATH;
   80.48 -	QString MSGPATH;
   80.49 -	int AGEFILENODES;
   80.50 -	int USEFILENODES;
   80.51 -	int WRITETOFILETIMER;
   80.52 -	int USEFILEBUNDLES;
   80.53 -	int LOGGING;
   80.54 -
   80.55 -
   80.56 -	QLineEdit * lineNODEID;
   80.57 -	QLineEdit * lineNODENAME;
   80.58 -	QLineEdit * lineNODEIP;
   80.59 -	QLineEdit * lineNODEIP2;
   80.60 -	QLineEdit * lineNODEBROADCAST;
   80.61 -	QLineEdit * lineBROADCAST;
   80.62 -	QLineEdit * lineAGINGTIMER;
   80.63 -	QLineEdit * linePENCOUNTER;
   80.64 -	QLineEdit * lineBETA;
   80.65 -	QLineEdit * lineGAMMA;
   80.66 -	QLineEdit * lineHELLO;
   80.67 -	QLineEdit * lineALIVE;
   80.68 -	QLineEdit * lineHELLOTIMER;
   80.69 -	QLineEdit * lineINITIATORTIMER;
   80.70 -	QLineEdit * lineLISTENERTIMER;
   80.71 -	QLineEdit * lineDTNHOSTNAME;
   80.72 -	QLineEdit * lineDNTTIMER;
   80.73 -	QLineEdit * lineSTORAGESIZE;
   80.74 -	QLineEdit * lineMEMORYSIZE;
   80.75 -	QLineEdit * lineROUTING;
   80.76 -	QLineEdit * lineQUEUE;
   80.77 -	QLineEdit * lineCONTINIUSUPDATE;
   80.78 -	QLineEdit * lineSTORAGEPATH;
   80.79 -	QLineEdit * lineLOGPATH;
   80.80 -	QLineEdit * lineMSGPATH;
   80.81 -	QLineEdit * lineAGEFILENODES;
   80.82 -	QLineEdit * lineUSEFILENODES;
   80.83 -	QLineEdit * lineWRITETOFILETIMER;
   80.84 -	QLineEdit * lineUSEFILEBUNDLES;
   80.85 -	QLineEdit * lineLOGGING;
   80.86 -	QLineEdit * lineUSETTL;
   80.87 -	QLineEdit * lineTTL;
   80.88 -	QLineEdit * lineACKS;
   80.89 -
   80.90 -
   80.91 -public slots:
   80.92 -	void loadConfiguration();
   80.93 -};
   80.94 -
   80.95 -#endif
   80.96 -
   80.97 -
    81.1 --- a/x86/2.7/connection.cpp	Wed Jan 03 09:17:10 2007 +0000
    81.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    81.3 @@ -1,709 +0,0 @@
    81.4 -#include <QtCore>
    81.5 -#include <connection.h>
    81.6 -#include <tlv.h>
    81.7 -#include <messageFile.h>
    81.8 -#include <dataPacket.h>
    81.9 -#include <readFile.h>
   81.10 -
   81.11 -#define NOW 100
   81.12 -
   81.13 -//#define HELLO_TIMER 60000
   81.14 -//#define INITIATOR_TIMER 60000
   81.15 -//#define LISTENER_TIMER 60000
   81.16 -//#define HELLOT 10000
   81.17 -//#define BROADCAST 1000
   81.18 -
   81.19 -//Connections states for GUI
   81.20 -#define STATE_SYN 1
   81.21 -#define STATE_SYNACK 2
   81.22 -#define STATE_ACK 3
   81.23 -#define STATE_DICT 4
   81.24 -#define STATE_RIB 5
   81.25 -#define STATE_BOFF 6
   81.26 -#define STATE_BREQ 7
   81.27 -#define STATE_BUNDLE 8
   81.28 -#define STATE_ERROR 9
   81.29 -
   81.30 -//Connection states
   81.31 -#define WAIT_NB 0
   81.32 -#define HELLO 1
   81.33 -#define INFO_EXCH 2
   81.34 -#define WAIT_INFO 2
   81.35 -
   81.36 -
   81.37 -//Hello procedure states
   81.38 -#define SENDSYN 1
   81.39 -#define WAITSYNACK 2
   81.40 -#define WAITACK 4
   81.41 -#define ESTABLISHED 3
   81.42 -#define MASTER 4
   81.43 -#define SLAVE 5
   81.44 -
   81.45 -//Initiator states
   81.46 -#define SENDDICTIONARY 1
   81.47 -#define SENDRIB 2
   81.48 -#define SENDBOFFER 4
   81.49 -#define WAITBREQ 5
   81.50 -#define TIMEOUT 16
   81.51 -#define SENDBUNDLE 7
   81.52 -#define WAITFORBREQUEST 8
   81.53 -#define RESETLINK 19
   81.54 -#define IDLESTATE 110
   81.55 -
   81.56 -//Listener states
   81.57 -#define WAITFORDICTIONARY 1
   81.58 -#define WAITFORRIB 2
   81.59 -#define WAITFORBOFFER 3
   81.60 -#define SENDBREQUEST 4
   81.61 -#define WAITFORBUNDLES 5
   81.62 -
   81.63 -
   81.64 -
   81.65 -Connection::Connection(int connectId,int nodeId,QString nodeName,NodeManager* nodeManager,BundleManager* bundleManager,QObject *parent)
   81.66 -
   81.67 -{
   81.68 -	ReadFile init;
   81.69 -	HELLO_TIMER=init.getHelloTimer();
   81.70 -	INITIATOR_TIMER=init.getInitiatorTimer();
   81.71 -	LISTENER_TIMER=init.getListenerTimer();
   81.72 -	HELLOT=init.getHello();
   81.73 -	BROADCAST=init.getBroadcastTimer();
   81.74 -	continiusUpdate=init.getContiniusUpdate();
   81.75 -	update=0;
   81.76 -	updateRIB=0;
   81.77 -	encounterNodeId=0;
   81.78 -	//State variables
   81.79 -	connectionState=HELLO;
   81.80 -	helloState=SENDSYN;
   81.81 -	initiatorState=IDLESTATE;
   81.82 -	listenerState=IDLESTATE;
   81.83 -	//Define our node manager
   81.84 -	connectionNodeManager=nodeManager;
   81.85 -	//Define our bundle manager
   81.86 -	connectionBundleManager=bundleManager;
   81.87 -	//Set up unique connection ID
   81.88 -//	connectionId=rand();
   81.89 -//	connectionId=connectionId%1000;
   81.90 -	connectionId=connectId;
   81.91 -	//Set up connectionNodeName
   81.92 -	connectionNodeName=nodeName;
   81.93 -	//Set up connectionNodeName
   81.94 -	connectionNodeId=nodeId;
   81.95 -	//Create and connect Hello Timer
   81.96 -    helloTimer = new QTimer(this);
   81.97 -    connect(helloTimer, SIGNAL(timeout()), this, SLOT(helloProcedure()));
   81.98 -    helloTimer->start(rand()%HELLO);
   81.99 -
  81.100 -	//Create and connect Initiator Timer
  81.101 -    initiatorTimer = new QTimer(this);
  81.102 -    connect(initiatorTimer, SIGNAL(timeout()), this, SLOT(initiatorProcedure()));
  81.103 -    //initiatorTimer->start(INITIATOR_TIMER);
  81.104 -
  81.105 -	//Create and connect Listener Timer
  81.106 -    listenerTimer = new QTimer(this);
  81.107 -    connect(listenerTimer, SIGNAL(timeout()), this, SLOT(listenerProcedure()));
  81.108 -    //listenerTimer->start(LISTENER_TIMER);
  81.109 -
  81.110 -
  81.111 -
  81.112 -
  81.113 -	//Create and connect TLV translator
  81.114 -	TLVTranslator = new TLV;
  81.115 -
  81.116 -	//Main external datastreams
  81.117 -	connect(TLVTranslator,SIGNAL(sendDatagram(QByteArray)),this,SLOT(forwardSlotDatagram(QByteArray)));
  81.118 -	connect(this,SIGNAL(forwardSignalDatagram(QByteArray)),TLVTranslator,SLOT(receiveDatagram(QByteArray)));
  81.119 -
  81.120 -	//Hello procedure connections
  81.121 -    connect(this, SIGNAL(sendHello(Hello)),TLVTranslator,SLOT(receiveHello(Hello)));
  81.122 -    connect(TLVTranslator, SIGNAL(sendHello(Hello)),this,SLOT(receiveHello(Hello)));
  81.123 -
  81.124 -	//Initiators procedure connections
  81.125 -    connect(this, SIGNAL(sendDictionary(QList<Node>)),TLVTranslator,SLOT(createDictionary(QList<Node>)));
  81.126 -    connect(this, SIGNAL(sendRIB(QList<Node>)),TLVTranslator,SLOT(createRIB(QList<Node>)));
  81.127 -    connect(this, SIGNAL(sendBundleOffer(QList<Bundle>)),TLVTranslator,SLOT(createBundleOffer(QList<Bundle>)));
  81.128 -    connect(TLVTranslator, SIGNAL(sendBundleRequest(QList<Bundle>)),this,SLOT(receiveBundleRequest(QList<Bundle>)));
  81.129 -	connect(this, SIGNAL(sendBundles(QList<Bundle>)),TLVTranslator,SLOT(createBundleData(QList<Bundle>)));
  81.130 -
  81.131 -
  81.132 -	//Listener procedure connections
  81.133 -    connect(TLVTranslator, SIGNAL(sendDictionary(QList<Node>)),this,SLOT(receiveDictionary(QList<Node>)));
  81.134 -    connect(TLVTranslator, SIGNAL(sendRIB(QList<Node>)),this,SLOT(receiveRIB(QList<Node>)));
  81.135 -    connect(TLVTranslator, SIGNAL(sendBundleOffer(QList<Bundle>)),this,SLOT(receiveBundleOffer(QList<Bundle>)));
  81.136 -    connect(this, SIGNAL(sendBundleRequest(QList<Bundle>)),TLVTranslator,SLOT(createBundleRequest(QList<Bundle>)));
  81.137 -    connect(TLVTranslator, SIGNAL(sendBundleData(QList<Bundle>)),this,SLOT(receiveBundles(QList<Bundle>)));
  81.138 -	//GUI state
  81.139 -	emit newConnectionStatus(STATE_SYN);
  81.140 -
  81.141 -}
  81.142 -
  81.143 -
  81.144 -Connection::~Connection(void)
  81.145 -{
  81.146 -	if(helloTimer!=NULL)
  81.147 -	{
  81.148 -		helloTimer->stop();
  81.149 -		delete helloTimer;
  81.150 -	}
  81.151 -		if(initiatorTimer!=NULL)
  81.152 -	{
  81.153 -		initiatorTimer->stop();
  81.154 -		delete initiatorTimer;
  81.155 -	}
  81.156 -			if(listenerTimer!=NULL)
  81.157 -	{
  81.158 -		listenerTimer->stop();
  81.159 -		delete listenerTimer;
  81.160 -	}	
  81.161 -	if(TLVTranslator!=NULL)
  81.162 -	{
  81.163 -		delete TLVTranslator; 
  81.164 -	} 
  81.165 -
  81.166 -}
  81.167 -
  81.168 -
  81.169 -void Connection::helloProcedure()
  81.170 -{
  81.171 -	helloTimer->stop();
  81.172 -	//Prepare new Hello Object
  81.173 -	Hello newHello;
  81.174 -	switch(helloState)
  81.175 -	{
  81.176 -		case SENDSYN:	//log->addLog(connectionId,(QString)"Hello Procedure:SENDSYN");
  81.177 -						newHello.setFunction(SYN);
  81.178 -						newHello.setTimer(HELLO_TIMER);
  81.179 -						newHello.setSenderName(connectionNodeName);
  81.180 -						newHello.senderId=connectionNodeId;
  81.181 -						newHello.senderType=0;
  81.182 -						helloState=WAITSYNACK;
  81.183 -						emit sendHello(newHello);
  81.184 -						//GUI state
  81.185 -						emit newConnectionStatus(STATE_SYNACK);
  81.186 -			
  81.187 -		break;			
  81.188 -		default	:		//log->addLog(connectionId,(QString)"Hello Procedure:Default");
  81.189 -						helloState=SENDSYN;
  81.190 -						connectionState=HELLO;
  81.191 -						initiatorState=IDLESTATE;
  81.192 -						listenerState=IDLESTATE;
  81.193 -						listenerTimer->stop();
  81.194 -						initiatorTimer->stop();	
  81.195 -						//GUI state
  81.196 -						emit newConnectionStatus(STATE_ERROR);
  81.197 -	
  81.198 -		break;
  81.199 -		}	
  81.200 -		helloTimer->start(HELLO_TIMER);
  81.201 -}
  81.202 -
  81.203 -
  81.204 -
  81.205 -void Connection::receiveHello(Hello receivedHello)
  81.206 -{
  81.207 -	int helloType=receivedHello.getFunction();
  81.208 -	helloTimer->stop();
  81.209 -	
  81.210 -	//Prepare new Hello object
  81.211 -	Hello newHello;
  81.212 -	
  81.213 -	switch(helloType)
  81.214 -	{
  81.215 -	case SYNACK:	//log->addLog(connectionId,(QString)"Receive Hello:SYNACK");
  81.216 -					//Resolving a ID form encountered node
  81.217 -					encounterNodeId=receivedHello.senderId;
  81.218 -					encounterNodeName=receivedHello.senderName;
  81.219 -					encounterNodeType=receivedHello.senderType;
  81.220 -					if(update==0)
  81.221 -					{
  81.222 -						connectionNodeManager->encounterNode(encounterNodeId,encounterNodeType,encounterNodeName);
  81.223 -						if(continiusUpdate==0)
  81.224 -							update=1;
  81.225 -					}
  81.226 -
  81.227 -					//Setting our own ID
  81.228 -					newHello.setFunction(ACK);
  81.229 -					newHello.setTimer(HELLO_TIMER);
  81.230 -					newHello.setSenderName(connectionNodeName);
  81.231 -					newHello.senderId=connectionNodeId;
  81.232 -					newHello.senderType=0;
  81.233 -					emit sendHello(newHello);
  81.234 -					helloState=SLAVE;
  81.235 -					//Invoke Initiator and Listener
  81.236 -					helloTimer->stop();
  81.237 -					initiatorState=SENDDICTIONARY;
  81.238 -					listenerState=WAITFORDICTIONARY;
  81.239 -					initiatorTimer->start(NOW);
  81.240 -					listenerTimer->start(LISTENER_TIMER);
  81.241 -					///initiatorProcedure();
  81.242 -					//////////////////////////////
  81.243 -					//GUI state
  81.244 -					emit newConnectionStatus(STATE_DICT);
  81.245 -					
  81.246 -	break;
  81.247 -	case SYN:		//log->addLog(connectionId,(QString)"Receive Hello:SYN");
  81.248 -					newHello.setFunction(SYNACK);
  81.249 -					newHello.setTimer(HELLO_TIMER);
  81.250 -					newHello.setSenderName(connectionNodeName);
  81.251 -					newHello.senderId=connectionNodeId;
  81.252 -					newHello.senderType=0;
  81.253 -					helloState=WAITACK;helloTimer->start(HELLO_TIMER);
  81.254 -					emit sendHello(newHello);
  81.255 -					//GUI state
  81.256 -					emit newConnectionStatus(STATE_SYNACK);
  81.257 -
  81.258 -	break;
  81.259 -	case ACK:		//log->addLog(connectionId,(QString)"Receive Hello:ACK");
  81.260 -					//Resolving a ID form encountered node
  81.261 -					encounterNodeId=receivedHello.senderId;
  81.262 -					encounterNodeName=receivedHello.senderName;
  81.263 -					encounterNodeType=receivedHello.senderType;
  81.264 -					if(update==0)
  81.265 -					{
  81.266 -						connectionNodeManager->encounterNode(encounterNodeId,encounterNodeType,encounterNodeName);
  81.267 -						if(continiusUpdate==0)
  81.268 -							update=1;
  81.269 -					}
  81.270 -					helloState=MASTER;
  81.271 -					//Invoke Initiator and Listener
  81.272 -					helloTimer->stop();
  81.273 -					initiatorState=SENDDICTIONARY;
  81.274 -					listenerState=WAITFORDICTIONARY;
  81.275 -					initiatorTimer->start(NOW);
  81.276 -					listenerTimer->start(LISTENER_TIMER);
  81.277 -					//GUI state
  81.278 -					emit newConnectionStatus(STATE_DICT);
  81.279 -	break;
  81.280 -	case RSTACK:	//log->addLog(connectionId,(QString)"Receive Hello:RSTACK");
  81.281 -					helloState=SENDSYN;
  81.282 -					//GUI state
  81.283 -					emit newConnectionStatus(STATE_ERROR);
  81.284 -					connectionState=HELLO;helloTimer->start(HELLO_TIMER);
  81.285 -	break;
  81.286 -	default:		//log->addLog(connectionId,(QString)"Receive Hello:Default");
  81.287 -					helloState=SENDSYN;
  81.288 -					connectionState=HELLO;helloTimer->start(HELLO_TIMER);
  81.289 -					//GUI state
  81.290 -					emit newConnectionStatus(STATE_ERROR);
  81.291 -	break;
  81.292 -	}
  81.293 -	
  81.294 -
  81.295 -}
  81.296 -
  81.297 -void Connection::listenerProcedure()
  81.298 -{
  81.299 -	listenerTimer->stop();
  81.300 -	switch(initiatorState)
  81.301 -		{
  81.302 -		case WAITFORDICTIONARY://log->addLog(connectionId,(QString)"Listener:DICTIONARY timeout...");
  81.303 -							//we reset the link
  81.304 -							initiatorState=IDLESTATE;
  81.305 -							listenerState=IDLESTATE;
  81.306 -							connectionState=HELLO;
  81.307 -							helloState=SENDSYN;
  81.308 -							listenerTimer->stop();
  81.309 -							initiatorTimer->stop();
  81.310 -							helloTimer->start(HELLO_TIMER);
  81.311 -							//GUI state
  81.312 -							emit newConnectionStatus(STATE_ERROR);
  81.313 -
  81.314 -							
  81.315 -			
  81.316 -		break;			
  81.317 -		case WAITFORRIB:	//log->addLog(connectionId,(QString)"Listener:RIB timeout...");
  81.318 -							//we reset the link
  81.319 -							initiatorState=IDLESTATE;
  81.320 -							listenerState=IDLESTATE;
  81.321 -							connectionState=HELLO;
  81.322 -							helloState=SENDSYN;
  81.323 -							listenerTimer->stop();
  81.324 -							initiatorTimer->stop();
  81.325 -							helloTimer->start(HELLO_TIMER);
  81.326 -							//GUI state
  81.327 -							emit newConnectionStatus(STATE_ERROR);
  81.328 -			
  81.329 -		break;
  81.330 -		case WAITFORBOFFER:	//log->addLog(connectionId,(QString)"Listener:BOFFER timeout...");
  81.331 -							//we reset the link
  81.332 -							initiatorState=IDLESTATE;
  81.333 -							listenerState=IDLESTATE;
  81.334 -							connectionState=HELLO;
  81.335 -							helloState=SENDSYN;
  81.336 -							listenerTimer->stop();
  81.337 -							initiatorTimer->stop();
  81.338 -							helloTimer->start(HELLO_TIMER);
  81.339 -							//GUI state
  81.340 -							emit newConnectionStatus(STATE_ERROR);
  81.341 -
  81.342 -			
  81.343 -		break;
  81.344 -		case WAITFORBREQUEST://log->addLog(connectionId,(QString)"Listener:BREQ Timeout...");
  81.345 -							//we reset the link
  81.346 -							initiatorState=IDLESTATE;
  81.347 -							listenerState=IDLESTATE;
  81.348 -							connectionState=HELLO;
  81.349 -							helloState=SENDSYN;
  81.350 -							listenerTimer->stop();
  81.351 -							initiatorTimer->stop();
  81.352 -							helloTimer->start(HELLO_TIMER);
  81.353 -							//GUI state
  81.354 -							emit newConnectionStatus(STATE_ERROR);
  81.355 -
  81.356 -			
  81.357 -		break;
  81.358 -		case WAITFORBUNDLES://log->addLog(connectionId,(QString)"Listener:BUNDLES Timeout...");
  81.359 -							//we reset the link
  81.360 -							initiatorState=IDLESTATE;
  81.361 -							listenerState=IDLESTATE;
  81.362 -							connectionState=HELLO;
  81.363 -							helloState=SENDSYN;
  81.364 -							listenerTimer->stop();
  81.365 -							initiatorTimer->stop();
  81.366 -							helloTimer->start(HELLO_TIMER);
  81.367 -							listenerState=RESETLINK;
  81.368 -							//GUI state
  81.369 -							emit newConnectionStatus(STATE_ERROR);
  81.370 -
  81.371 -			
  81.372 -		break;
  81.373 -		case IDLESTATE:		//log->addLog(connectionId,(QString)"Listener:Idle state...");
  81.374 -							//we reset the link
  81.375 -							initiatorState=IDLESTATE;
  81.376 -							listenerState=IDLESTATE;
  81.377 -							connectionState=HELLO;
  81.378 -							helloState=SENDSYN;
  81.379 -							listenerTimer->stop();
  81.380 -							initiatorTimer->stop();
  81.381 -							helloTimer->start(HELLO_TIMER);
  81.382 -							//GUI state
  81.383 -							emit newConnectionStatus(STATE_ERROR);
  81.384 -														
  81.385 -							
  81.386 -		break;
  81.387 -		case RESETLINK:		//log->addLog(connectionId,(QString)"Listener:Link problem...");
  81.388 -							//we reset the link
  81.389 -							initiatorState=IDLESTATE;
  81.390 -							listenerState=IDLESTATE;
  81.391 -							connectionState=HELLO;
  81.392 -							helloState=SENDSYN;
  81.393 -							listenerTimer->stop();
  81.394 -							initiatorTimer->stop();
  81.395 -							helloTimer->start(HELLO_TIMER);
  81.396 -							//GUI state
  81.397 -							emit newConnectionStatus(STATE_ERROR);
  81.398 -			
  81.399 -		break;
  81.400 -		default	://log->addLog(connectionId,(QString)"Hm Listener Timeout default...");		
  81.401 -		break;
  81.402 -		}	
  81.403 -}
  81.404 -
  81.405 -
  81.406 -void Connection::initiatorProcedure()
  81.407 -{
  81.408 -	initiatorTimer->stop();
  81.409 -	QList<Node> nodeList;
  81.410 -	QList<Bundle> bundleList;
  81.411 -	switch(initiatorState)
  81.412 -		{
  81.413 -		case SENDDICTIONARY://log->addLog(connectionId,(QString)"Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER");
  81.414 -							nodeList = connectionNodeManager->getNodeList();
  81.415 -							initiatorState=SENDRIB;
  81.416 -							emit sendDictionary(nodeList);
  81.417 -							nodeList = connectionNodeManager->getRIBNodeList();//We have to use only nodes with RIB
  81.418 -							initiatorState=SENDBOFFER;
  81.419 -							emit sendRIB(nodeList);
  81.420 -							bundleList = connectionBundleManager->getBundleOffer(connectionNodeManager->getNodeList(),lastReceivedRIB,encounterNodeId);
  81.421 -							emit sendBundleOffer(bundleList);
  81.422 -							initiatorState=WAITBREQ;
  81.423 -							initiatorTimer->start(INITIATOR_TIMER);
  81.424 -							//GUI state
  81.425 -							emit newConnectionStatus(STATE_BREQ);
  81.426 -		
  81.427 -		break;
  81.428 -		case WAITFORBREQUEST://log->addLog(connectionId,(QString)"Initiator:BREQ Timeout");
  81.429 -							//we reset the link
  81.430 -							initiatorState=IDLESTATE;
  81.431 -							listenerState=IDLESTATE;
  81.432 -							connectionState=HELLO;
  81.433 -							helloState=SENDSYN;
  81.434 -							listenerTimer->stop();
  81.435 -							initiatorTimer->stop();
  81.436 -							helloTimer->start(HELLO_TIMER);
  81.437 -							//GUI state
  81.438 -							emit newConnectionStatus(STATE_ERROR);
  81.439 -			
  81.440 -		break;
  81.441 -		case IDLESTATE:		//log->addLog(connectionId,(QString)"Initiator:Idle state...");
  81.442 -							//we reset the link
  81.443 -							initiatorState=IDLESTATE;
  81.444 -							listenerState=IDLESTATE;
  81.445 -							connectionState=HELLO;
  81.446 -							helloState=SENDSYN;
  81.447 -							listenerTimer->stop();
  81.448 -							initiatorTimer->stop();
  81.449 -							helloTimer->start(HELLO_TIMER);
  81.450 -							//GUI state
  81.451 -							emit newConnectionStatus(STATE_ERROR);
  81.452 -
  81.453 -			
  81.454 -		break;
  81.455 -		case RESETLINK:		//log->addLog(connectionId,(QString)"Initiator:Link problem...");
  81.456 -							//we reset the link
  81.457 -							initiatorState=IDLESTATE;
  81.458 -							listenerState=IDLESTATE;
  81.459 -							connectionState=HELLO;
  81.460 -							helloState=SENDSYN;
  81.461 -							listenerTimer->stop();
  81.462 -							initiatorTimer->stop();
  81.463 -							helloTimer->start(HELLO_TIMER);
  81.464 -							//GUI state
  81.465 -							emit newConnectionStatus(STATE_ERROR);
  81.466 -			
  81.467 -		break;
  81.468 -		default	://log->addLog(connectionId,(QString)"Hm default timeout initiator...");		
  81.469 -		break;
  81.470 -		}	
  81.471 - }
  81.472 -
  81.473 -
  81.474 -void Connection::receiveBundleOffer(QList<Bundle> receivedList) //LISTENER
  81.475 -{
  81.476 -	listenerTimer->stop();
  81.477 -	bundleRequestList=connectionBundleManager->prepareBundelRequest(receivedList);
  81.478 -	//log->addLog(connectionId,(QString)"Listener:Received Bundle Offer");
  81.479 -//	we send only one bundle request
  81.480 -	if(bundleRequestList.size()>0)
  81.481 -	{
  81.482 -		//log->addLog(connectionId,(QString)"Listener:Sending Full bundle request...");
  81.483 -		QList<Bundle> dummyList;
  81.484 -		dummyList.append(bundleRequestList.first());
  81.485 -		bundleRequestList.removeFirst();
  81.486 -		listenerState=WAITFORBUNDLES;
  81.487 -		listenerTimer->start(LISTENER_TIMER);
  81.488 -		emit sendBundleRequest(dummyList);
  81.489 -		//GUI state
  81.490 -		emit newConnectionStatus(STATE_BUNDLE);
  81.491 -
  81.492 -	}
  81.493 -	else 
  81.494 -	{
  81.495 -		//log->addLog(connectionId,(QString)"Listener:Sending Empty bundle request...");
  81.496 -		if(initiatorState==IDLESTATE)
  81.497 -		{	
  81.498 -			//we reset the link
  81.499 -			initiatorState=IDLESTATE;
  81.500 -			listenerState=IDLESTATE;
  81.501 -			listenerTimer->stop();
  81.502 -			initiatorTimer->stop();
  81.503 -
  81.504 -			if(helloState==MASTER)
  81.505 -			{
  81.506 -				helloState=SENDSYN;
  81.507 -				helloTimer->start(NOW);
  81.508 -				//log->addLog(connectionId,(QString)"Listener(receiveBOffer):We can restart connection...(MASTER)");
  81.509 -				//GUI state
  81.510 -				emit newConnectionStatus(STATE_SYN);
  81.511 -
  81.512 -			}
  81.513 -			else
  81.514 -			{
  81.515 -				helloState=SENDSYN;
  81.516 -				helloTimer->start(HELLO_TIMER);
  81.517 -				//GUI state
  81.518 -				emit newConnectionStatus(STATE_SYN);
  81.519 -
  81.520 -				//log->addLog(connectionId,(QString)"Listener(receiveBOffer):We can not restart connection(SLAVE)");
  81.521 -
  81.522 -			}
  81.523 -		}
  81.524 -		else
  81.525 -		{
  81.526 -			//log->addLog(connectionId,(QString)"Listener(receiveBOffer):But we can not restart connection...");
  81.527 -			listenerState=IDLESTATE;
  81.528 -			listenerTimer->stop();
  81.529 -		}
  81.530 -		emit sendBundleRequest(bundleRequestList);
  81.531 -		
  81.532 -	}
  81.533 -
  81.534 -}
  81.535 -
  81.536 -void Connection::receiveBundles(QList<Bundle> receivedList) //LISTENER
  81.537 -{
  81.538 -	//log->addLog(connectionId,(QString)"Listener:Received Bundles...");
  81.539 -	listenerTimer->stop();
  81.540 -	connectionBundleManager->addBundleList(receivedList);
  81.541 -//	we send only one bundle request
  81.542 -	if(bundleRequestList.size()>0)
  81.543 -	{
  81.544 -		//log->addLog(connectionId,(QString)"Listener:Requesting Bundles...");
  81.545 -		QList<Bundle> dummyList;
  81.546 -		for(int i=0; i<receivedList.size(); i++)
  81.547 -		{
  81.548 -			Bundle b = receivedList.at(i);
  81.549 -			b.setAck();
  81.550 -			//should we reset the ack-bit afterwards?
  81.551 -			dummyList.prepend(b);
  81.552 -			//do some logging here
  81.553 -		}
  81.554 -		dummyList.append(bundleRequestList.first());
  81.555 -		bundleRequestList.removeFirst();
  81.556 -		listenerState=WAITFORBUNDLES;
  81.557 -		listenerTimer->start(LISTENER_TIMER);
  81.558 -		emit sendBundleRequest(dummyList);
  81.559 -		//GUI state
  81.560 -		emit newConnectionStatus(STATE_BUNDLE);
  81.561 -
  81.562 -	}
  81.563 -	else //we finish comunication by sending empty bundle request
  81.564 -	{
  81.565 -		//log->addLog(connectionId,(QString)"Listener:No more needed Bundles...");
  81.566 -		if(initiatorState==IDLESTATE)
  81.567 -		{	
  81.568 -			//we reset the link
  81.569 -			initiatorState=IDLESTATE;
  81.570 -			listenerState=IDLESTATE;
  81.571 -			listenerTimer->stop();
  81.572 -			initiatorTimer->stop();
  81.573 -
  81.574 -			if(helloState==MASTER)
  81.575 -			{
  81.576 -				helloState=SENDSYN;
  81.577 -				helloTimer->start(HELLOT);
  81.578 -				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can restart connection...(MASTER)");
  81.579 -				//GUI state
  81.580 -				emit newConnectionStatus(STATE_SYN);
  81.581 -
  81.582 -			}
  81.583 -			else
  81.584 -			{
  81.585 -				//helloState=SENDSYN;
  81.586 -				//helloTimer->start(HELLO_TIMER);
  81.587 -				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can not restart connection(SLAVE)");
  81.588 -
  81.589 -			}
  81.590 -		}
  81.591 -		else
  81.592 -		{
  81.593 -			//log->addLog(connectionId,(QString)"Listener(receiveBundles):But we can not restart connection...");
  81.594 -			listenerState=IDLESTATE;
  81.595 -			listenerTimer->stop();
  81.596 -		
  81.597 -		}
  81.598 -		//append the received bundles (as acks) to the next request.
  81.599 -		//TODO: Should this be moved to the bundle manager???
  81.600 -		for(int i=0; i<receivedList.size(); i++)
  81.601 -		{
  81.602 -			Bundle b = receivedList.at(i);
  81.603 -			b.setAck();
  81.604 -			//should we reset the ack-bit afterwards?
  81.605 -			bundleRequestList.prepend(b);
  81.606 -			//do some logging here
  81.607 -		}
  81.608 -		emit sendBundleRequest(bundleRequestList);
  81.609 -		
  81.610 -	}
  81.611 -		
  81.612 -}
  81.613 -
  81.614 -void Connection::receiveBundleRequest(QList<Bundle> receivedList) //INITIATOR
  81.615 -{
  81.616 -	initiatorTimer->stop();
  81.617 -	QList<Bundle> bundleList;
  81.618 -	if(receivedList.size()>0)
  81.619 -	{
  81.620 -		bundleList=connectionBundleManager->prepareBundels(receivedList, encounterNodeId);
  81.621 -		initiatorState=WAITBREQ;
  81.622 -		//log->addLog(connectionId,(QString)"Initiator:Sending bundles");
  81.623 -		initiatorTimer->start(INITIATOR_TIMER);
  81.624 -		emit sendBundles(bundleList);
  81.625 -		//GUI state
  81.626 -		emit newConnectionStatus(STATE_BREQ);
  81.627 -
  81.628 -	}
  81.629 -	else
  81.630 -	{
  81.631 -		//log->addLog(connectionId,(QString)"Initiator:No more requested bundles");
  81.632 -		if(listenerState==IDLESTATE)
  81.633 -		{	
  81.634 -			//we reset the link
  81.635 -			if(helloState==MASTER)
  81.636 -			{
  81.637 -				helloState=SENDSYN;
  81.638 -				helloTimer->start(HELLOT);
  81.639 -				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can restart connection...");
  81.640 -				//GUI state
  81.641 -				emit newConnectionStatus(STATE_SYN);
  81.642 -
  81.643 -			}
  81.644 -			else
  81.645 -			{
  81.646 -				helloState=SENDSYN;
  81.647 -				helloTimer->start(HELLO_TIMER);
  81.648 -				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can not restart connection(SLAVE)");
  81.649 -				//GUI state
  81.650 -				emit newConnectionStatus(STATE_SYN);
  81.651 -
  81.652 -			}
  81.653 -		}
  81.654 -		else
  81.655 -		{
  81.656 -			//log->addLog(connectionId,(QString)"Initiator:But we can not restart connection...");
  81.657 -			initiatorState=IDLESTATE;
  81.658 -			initiatorTimer->stop();
  81.659 -		}
  81.660 -	}
  81.661 -	
  81.662 -}
  81.663 -
  81.664 -
  81.665 -void Connection::receiveDictionary(QList<Node> receivedList)
  81.666 -{
  81.667 -	listenerTimer->stop();
  81.668 -	connectionNodeManager->addDictionary(connectionNodeId,receivedList);
  81.669 -	listenerState=WAITFORRIB;
  81.670 -	//log->addLog(connectionId,(QString)"Listener:Received dictionary");
  81.671 -	listenerTimer->start(LISTENER_TIMER);
  81.672 -	//GUI state
  81.673 -	emit newConnectionStatus(STATE_RIB);
  81.674 -
  81.675 -}
  81.676 -
  81.677 -void Connection::receiveRIB(QList<Node> receivedList)
  81.678 -{
  81.679 -	listenerTimer->stop();
  81.680 -	if(updateRIB==0)
  81.681 -	{		
  81.682 -		connectionNodeManager->addRIB(receivedList,encounterNodeId);
  81.683 -		if(continiusUpdate==0)
  81.684 -			updateRIB=1;
  81.685 -	}		
  81.686 -	listenerState=WAITFORBOFFER;
  81.687 -	//Needed for Routing
  81.688 -	lastReceivedRIB=receivedList;
  81.689 -	//log->addLog(connectionId,(QString)"Listener:Received RIB");
  81.690 -	listenerTimer->start(LISTENER_TIMER);
  81.691 -	//GUI state
  81.692 -	emit newConnectionStatus(STATE_BOFF);
  81.693 -
  81.694 -}
  81.695 -
  81.696 -
  81.697 -
  81.698 -void Connection::receiveDatagram(DataPacket dataPacket)
  81.699 -{
  81.700 -	////log->addLog(connectionId,(QString)"Received datagram...");
  81.701 -	emit forwardSignalDatagram(dataPacket.data);
  81.702 -}
  81.703 -
  81.704 -
  81.705 -void Connection::forwardSlotDatagram(QByteArray datagram)
  81.706 -{
  81.707 -	DataPacket dataPacket;
  81.708 -	////log->addLog(connectionId,(QString)"Sended datagram...");
  81.709 -	dataPacket.data = datagram;
  81.710 -	dataPacket.id = connectionId;
  81.711 -	emit sendDataPacket(dataPacket);
  81.712 -}
    82.1 --- a/x86/2.7/connection.h	Wed Jan 03 09:17:10 2007 +0000
    82.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    82.3 @@ -1,228 +0,0 @@
    82.4 -#ifndef CONNECTION_H
    82.5 -#define CONNECTION_H
    82.6 -#include <QtCore>
    82.7 -#include <hello.h>
    82.8 -#include <tlv.h>
    82.9 -#include <nodeManager.h>
   82.10 -#include <bundleManager.h>
   82.11 -#include <dataPacket.h>
   82.12 -
   82.13 -
   82.14 -/*! \brief This class is instantiated for each connection between two nodes. 
   82.15 - * It contains the PRoPHET state machine.
   82.16 - *
   82.17 - * <PRE>
   82.18 - * Connection states
   82.19 - * WAIT_NB   - Start state, node waiting for a neighbour to connect to.
   82.20 - * HELLO     - Performs a three-way handshake to set up the connection. Also 
   82.21 - *             assigns a MASTER and a SLAVE for the communication.
   82.22 - * INFO_EXCH - Entered once the Hello procedure has set up the link. In this 
   82.23 - *             state routing information and bundles are exchanged.
   82.24 - * WAIT_INFO - Entered once the INFO_EXCH is completed. Nodes remain in this 
   82.25 - *             state until a timer expires or they are notified that the 
   82.26 - *             neighbor is out of range. WAIT_NB is then entered.
   82.27 - *
   82.28 - * Hello procedure states
   82.29 - * SENDSYN     - Initiation of the Hello procedure. First part of the 
   82.30 - *                three-way handshake.
   82.31 - * WAITSYNACK  - Second part of the three-way handshake.
   82.32 - * WAITACK     - Last part of the three-way handshake.
   82.33 - * ESTABLISHED
   82.34 - * MASTER      - One node is assigned to be MASTER, this node will enter the 
   82.35 - *                initiator states.
   82.36 - * SLAVE       - The other node will be assigned SLAVE, and will enter the 
   82.37 - *                listener states.
   82.38 - * 
   82.39 - * Initiator states (MASTER)
   82.40 - * SENDDICTIONARY
   82.41 - * SENDRIB
   82.42 - * SENDBOFFER
   82.43 - * WAITBREQ
   82.44 - * TIMEOUT
   82.45 - * SENDBUNDLE
   82.46 - * WAITFORBREQUEST
   82.47 - * RESETLINK
   82.48 - * IDLESTATE
   82.49 - * 
   82.50 - * Listener states (SLAVE)
   82.51 - * WAITFORDICTIONARY
   82.52 - * WAITFORRIB
   82.53 - * WAITFORBOFFER
   82.54 - * SENDBREQUEST
   82.55 - * WAITFORBUNDLES
   82.56 - * </PRE>
   82.57 - */
   82.58 -class Connection: public QObject
   82.59 -{
   82.60 -	Q_OBJECT 
   82.61 -	public:
   82.62 -		Connection(int,int ,QString ,NodeManager* ,BundleManager* ,QObject *parent = 0);
   82.63 -		~Connection(void);
   82.64 -
   82.65 -	private:
   82.66 -		int HELLO_TIMER;
   82.67 -		int INITIATOR_TIMER;
   82.68 -		int LISTENER_TIMER;
   82.69 -		int HELLOT;
   82.70 -		int BROADCAST;
   82.71 -		bool update;
   82.72 -		bool updateRIB;
   82.73 -		int continiusUpdate;
   82.74 -
   82.75 -		int connectionState;
   82.76 -		int helloState;
   82.77 -		int initiatorState;
   82.78 -		int listenerState;
   82.79 -		int encounterNodeId;
   82.80 -		int encounterNodeType;
   82.81 -		QString encounterNodeName;
   82.82 -		QTimer *helloTimer; 		
   82.83 -		QTimer *initiatorTimer; 		
   82.84 -		QTimer *listenerTimer; 		
   82.85 -		//TLV
   82.86 -		TLV *TLVTranslator; 
   82.87 -		QString connectionNodeName;
   82.88 -		QList<Node> lastReceivedRIB;
   82.89 -		QList<Bundle> bundleRequestList;
   82.90 -		int connectionId;
   82.91 -		int connectionNodeId;
   82.92 -		NodeManager* connectionNodeManager;
   82.93 -		BundleManager* connectionBundleManager;
   82.94 -
   82.95 -		
   82.96 -
   82.97 -	signals:
   82.98 -
   82.99 -		//! Sends a datapacket to neighAware.
  82.100 -		/*! Connected to NeighAware::sendDatagram
  82.101 -		 * @param packet the DataPacket to send.
  82.102 -		 */
  82.103 -		void sendDataPacket(DataPacket);
  82.104 -		
  82.105 -		//! Sends a Hello to the TLV.
  82.106 -		/*! Connected to TLV::receiveHello
  82.107 -		 * @param hello the Hello to be sent.
  82.108 -		 */
  82.109 -		void sendHello(Hello);
  82.110 -
  82.111 -		//! Sends a dictionary to tht TLV.
  82.112 -		/*! Connected to TLV::createDictionary
  82.113 -		 * @param nodes the list of nodes to be included in the dictionary.
  82.114 -		 */
  82.115 -		void sendDictionary(QList<Node>);
  82.116 -
  82.117 -		//! Sends a RIB to the TLV.
  82.118 -		/*! Connected to TLV::createRIB
  82.119 -		 * @param nodes the list of nodes to be included in the RIB.
  82.120 -		 */
  82.121 -		void sendRIB(QList<Node>);
  82.122 -
  82.123 -		//! Sends a datagram to the TLV.
  82.124 -		/*! Connected to TLV::receiveDatagram
  82.125 -		 * @param datagram the datagram to be sent.
  82.126 -		 */
  82.127 -		void forwardSignalDatagram(QByteArray);
  82.128 -
  82.129 -		//! Sends a bundle offer to the TLV.
  82.130 -		/*! Connected to TLV::createBundleOffer
  82.131 -		 * @param the list of bundles to be included in the offer.
  82.132 -		 */
  82.133 -		void sendBundleOffer(QList<Bundle>);
  82.134 -
  82.135 -		//! Sends a bundle request to the TLV.
  82.136 -		/*! Connected to TLV::createBundleRequest.
  82.137 -		 * @param the list of bundles to be requested. (?)
  82.138 -		 */
  82.139 -		void sendBundleRequest(QList<Bundle>);
  82.140 -
  82.141 -		//! Sends a list of bundles to the TLV.
  82.142 -		/*! Connected to TLV::createBundleData.
  82.143 -		 * @param the bundles to be sent.
  82.144 -		 */
  82.145 -		void sendBundles(QList<Bundle>);
  82.146 -
  82.147 -		//! Sends the status of this connection.
  82.148 -		/*! Connected to NeighAware::getNewConnectionStatus. (Is this only 
  82.149 -		 * used for GUI???)
  82.150 -		 * @param the connection state(?).
  82.151 -		 * <PRE>
  82.152 -		 *	WAIT_NB   = 0
  82.153 -		 *	HELLO     = 1
  82.154 -		 *	INFO_EXCH = 2
  82.155 -		 *	WAIT_INFO = 2
  82.156 -		 * </PRE>
  82.157 -		 */
  82.158 -		void newConnectionStatus(int);
  82.159 -	public slots:
  82.160 -
  82.161 -		//! Internal slot for receiving packets.
  82.162 -		/*! Extracts the data from the datagram and emits forwardSignalDatagram.
  82.163 -		 * @param dataPacket the datapacket received from the network. 
  82.164 -		 */
  82.165 -		void receiveDatagram(DataPacket);
  82.166 -
  82.167 -	private slots:
  82.168 -		//! Internal(?) slot for sending packets.
  82.169 -		/*! Inserts the data into a DataPacket and emits sendDataPacket.
  82.170 -		 * @param datagram the data to be sent.
  82.171 -		 */
  82.172 -		void forwardSlotDatagram(QByteArray);
  82.173 -
  82.174 -		//! Called every time the hello timer expires, initiates a new hello procedure.
  82.175 -		void helloProcedure();
  82.176 -
  82.177 -		//! Called when the Hello procedure is completed if this node was given the SLAVE role.
  82.178 -		void listenerProcedure();
  82.179 -
  82.180 -		//! Called when the Hello procedure is completed if this node was given the MASTER role.
  82.181 -		void initiatorProcedure();
  82.182 -
  82.183 -		//! Slot for reception of hello messages.  
  82.184 -		/*! Checks the type of the hello and reacts accordingly by changing 
  82.185 -		 * state, and possibly sending a response.
  82.186 -		 */
  82.187 -		void receiveHello(Hello);
  82.188 -
  82.189 -		//! Slot for handling the reception of a dictionary.
  82.190 -		/*! When a dictionary (node id, name mappings) is received it is 
  82.191 -		 * dispatched to the node manager.
  82.192 -		 * @param receivedList the list of (node id, name mappings)
  82.193 -		 */
  82.194 -		void receiveDictionary(QList<Node>);
  82.195 -
  82.196 -		//! Slot for handling the reception of the RIB.
  82.197 -		/*! The RIB (Routing Information Base) contains node id -> delivery 
  82.198 -		 * predictability mappings.
  82.199 -		 * @param receivedList the RIB table.
  82.200 -		 */
  82.201 -		void receiveRIB(QList<Node>);
  82.202 -
  82.203 -		//! Handles reception of bundle requests.
  82.204 -		/*! Prepares a bundle request based on the offer, and sends out a 
  82.205 -		 * request for the first bundle in the list. If no more bundles are to 
  82.206 -		 * be sent the connection is reset to the hello state and an empty 
  82.207 -		 * bundle request is sent to the other node to indicate this.
  82.208 -		 * @param receivedList the list of bundles that were offered by the 
  82.209 -		 * other node.
  82.210 -		 */
  82.211 -		void receiveBundleOffer(QList<Bundle>);
  82.212 -
  82.213 -		//! This function is where the initiator handles bundle requests.
  82.214 -		/*! When a request for a list of bundles is received the appropriate 
  82.215 -		 * bundles are sent to the other node.
  82.216 -		 * @param receivedList the list of bundles the other node requested.
  82.217 -		 */
  82.218 -		void receiveBundleRequest(QList<Bundle>);
  82.219 -
  82.220 -		//! This function is where the listener handles reception of bundles.
  82.221 -		/*! When a list of bundles is received (currently only one bundle at a 
  82.222 -		 * time) it is dispatched to the bundle manager and a new request is 
  82.223 -		 * sent out. If the bundle request list is empty an empty bundle 
  82.224 -		 * request is sent out to indicate this to the other node.
  82.225 -		 * @param receivedList the list of bundles received.
  82.226 -		 */
  82.227 -		void receiveBundles(QList<Bundle>);
  82.228 -
  82.229 -
  82.230 -};
  82.231 -#endif
    83.1 --- a/x86/2.7/connectionWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
    83.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    83.3 @@ -1,64 +0,0 @@
    83.4 -#include <QtGui>
    83.5 -#include <connectionWidget.h>
    83.6 -#include <readFile.h>
    83.7 -
    83.8 -ConnectionWidget::ConnectionWidget(QWidget *parent)
    83.9 -        : QWidget(parent)
   83.10 -{
   83.11 -#ifdef PDAGUI
   83.12 -//	setFixedSize(230,300);
   83.13 -#else
   83.14 -	setFixedSize(990, 660);
   83.15 -#endif //PDAGUI
   83.16 -
   83.17 -//	QGroupBox *connectionBox = new QGroupBox("Active Connections");
   83.18 -
   83.19 -	//ConnectionsTable
   83.20 -	conTable = new QTableWidget(9, 4, this);
   83.21 -    QStringList horizontalConLabels;
   83.22 -    horizontalConLabels << "ID" << "IP" << "Alive" << "State" ;
   83.23 -	conTable->setHorizontalHeaderLabels(horizontalConLabels);
   83.24 -	conTable->setColumnWidth(0, 30);	//ID
   83.25 -	conTable->setColumnWidth(1, 70);	//IP
   83.26 -	conTable->setColumnWidth(2, 40);	//Alive
   83.27 -	conTable->setColumnWidth(3, 40);	//State
   83.28 -
   83.29 -	QGridLayout *layout = new QGridLayout();
   83.30 -	layout->setMargin(0);
   83.31 -	layout->setSpacing(0);
   83.32 -	layout->addWidget(conTable, 0, 0);
   83.33 -	setLayout(layout);
   83.34 -
   83.35 -
   83.36 -}
   83.37 -
   83.38 -//Receives a list of active connection and add them to the list
   83.39 -void ConnectionWidget:: getConnectionList(QList <ConnectionInfo> list)
   83.40 -{
   83.41 -	ConnectionInfo tempNode;
   83.42 -	conTable->clear();
   83.43 -        QStringList horizontalConLabels;
   83.44 -	horizontalConLabels << "ID" << "IP" << "Alive" << "State";
   83.45 -	conTable->setHorizontalHeaderLabels(horizontalConLabels);
   83.46 -	for (int i = 0; i < list.size(); ++i)
   83.47 -	{
   83.48 -		tempNode=list.at(i);
   83.49 -		//Adding ID
   83.50 -		QString text = QString("%1").arg((int)tempNode.id);
   83.51 -		QTableWidgetItem *newItem = new QTableWidgetItem(text);
   83.52 -		conTable->setItem(i, 0, newItem);
   83.53 -		//Adding IP
   83.54 -		text = tempNode.ip.toString();
   83.55 -		newItem = new QTableWidgetItem(text);
   83.56 -		conTable->setItem(i, 1, newItem);
   83.57 -		//Adding Alive variable
   83.58 -		text = QString("%1").arg((int)tempNode.alive);
   83.59 -		newItem = new QTableWidgetItem(text);
   83.60 -		conTable->setItem(i, 2, newItem);
   83.61 -		//Adding State of the TCP Connection
   83.62 -		int x = tempNode.tcpSocket->state();
   83.63 -		text = QString("%1").arg((int)x);
   83.64 -		newItem = new QTableWidgetItem(text);
   83.65 -		conTable->setItem(i, 3, newItem);
   83.66 -	}
   83.67 - }
    84.1 --- a/x86/2.7/connectionWidget.h	Wed Jan 03 09:17:10 2007 +0000
    84.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    84.3 @@ -1,25 +0,0 @@
    84.4 -#ifndef CONNECTIONWIDGET_H
    84.5 -#define CONNECTIONWIDGET_H
    84.6 -#include <QtGui>
    84.7 -#include <QtNetwork>
    84.8 -#include <bundle.h>
    84.9 -#include <nodeManager.h>
   84.10 -#include <neighbourAwareness.h>
   84.11 -
   84.12 -class ConnectionWidget: public QWidget
   84.13 -{
   84.14 -
   84.15 -	Q_OBJECT
   84.16 -
   84.17 -public:
   84.18 -	ConnectionWidget(QWidget *parent = 0);
   84.19 -private:
   84.20 -	QTableWidget* conTable;
   84.21 -
   84.22 -public slots:
   84.23 -	void getConnectionList(QList <ConnectionInfo>);
   84.24 -};
   84.25 -
   84.26 -#endif
   84.27 -
   84.28 -
    85.1 --- a/x86/2.7/dataPacket.cpp	Wed Jan 03 09:17:10 2007 +0000
    85.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    85.3 @@ -1,21 +0,0 @@
    85.4 -#include <QtCore>
    85.5 -#include <dataPacket.h>
    85.6 -
    85.7 -DataPacket::DataPacket(QObject *parent)
    85.8 -{
    85.9 -	id=0;
   85.10 -	data.clear();
   85.11 -}
   85.12 -
   85.13 -DataPacket& DataPacket::operator=(const DataPacket& other)
   85.14 -{
   85.15 - id = other.id;
   85.16 - data = other.data;
   85.17 - return *this;
   85.18 -}
   85.19 -
   85.20 -DataPacket::DataPacket(const DataPacket& other)
   85.21 -{
   85.22 - id = other.id;
   85.23 - data = other.data;
   85.24 -}	
    86.1 --- a/x86/2.7/dataPacket.h	Wed Jan 03 09:17:10 2007 +0000
    86.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    86.3 @@ -1,21 +0,0 @@
    86.4 -#ifndef DATAPACKET_H
    86.5 -#define DATAPACKET_H
    86.6 -#include <QtCore>
    86.7 -
    86.8 -/*! \brief This class represents a DataPacket. It is used when transfering 
    86.9 - * datagrams between the NeighAware and Connection classes.
   86.10 - */
   86.11 -class DataPacket: public QObject
   86.12 -{
   86.13 -
   86.14 -	Q_OBJECT 
   86.15 -	public:
   86.16 -	QByteArray data;
   86.17 -	int id;
   86.18 -	DataPacket(QObject *parent= 0);
   86.19 -	DataPacket(const DataPacket& other);
   86.20 -	DataPacket& operator=(const DataPacket& other);
   86.21 -
   86.22 -};
   86.23 -
   86.24 -#endif
    87.1 --- a/x86/2.7/debugWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
    87.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    87.3 @@ -1,242 +0,0 @@
    87.4 -#include <debugWidget.h>
    87.5 -#include <QtGui>
    87.6 -#include <QtCore>
    87.7 -#include <readFile.h>
    87.8 -
    87.9 -
   87.10 -#define DTN 500
   87.11 -
   87.12 -DebugWidget::DebugWidget(NodeManager *nodeMng,BundleManager *bundleMng,QWidget *parent)
   87.13 -		: QWidget(parent)
   87.14 -{
   87.15 -#ifdef PDAGUI
   87.16 -	setFixedSize(240,320);
   87.17 -#else
   87.18 -	setFixedSize(1000,700);
   87.19 -#endif //PDAGUI
   87.20 -	ReadFile conf;
   87.21 -	QString mainText = "Prophet Window - ";
   87.22 -	mainText.append(conf.getNodeName());
   87.23 -	setWindowTitle(mainText);
   87.24 -	bundleManager=bundleMng;
   87.25 -
   87.26 -#ifdef PDAGUI
   87.27 -	//Connection list tab
   87.28 -	connectionWidget = new ConnectionWidget(this);
   87.29 -	
   87.30 -	//Read Messages Tab
   87.31 -	messageRead = new MsgReadWidget(nodeMng,bundleMng);
   87.32 -
   87.33 -	//Configuration Tab
   87.34 -	configWidget = new ConfigWidget(this);
   87.35 -#endif //PDAGUI
   87.36 -
   87.37 -	//Message Widget Tag
   87.38 -	message = new MsgWidget(nodeMng,bundleMng);
   87.39 -	connect(message, SIGNAL(sendBundle(Bundle)), this, SLOT(forwardAppBundle(Bundle)));
   87.40 -
   87.41 -	//Node Table Tag
   87.42 -	nodeTable = new QTableWidget(40, 4, this);
   87.43 -    QStringList horizontalNodeLabels;
   87.44 -    horizontalNodeLabels << "ID" << "Name" << "Probability" << "RIB Flag";
   87.45 -	nodeTable->setHorizontalHeaderLabels(horizontalNodeLabels); 
   87.46 -
   87.47 -	//Info tag
   87.48 -	infoWidget = new InfoWidget(nodeMng);
   87.49 -	connect(this, SIGNAL(traffic(int)), infoWidget, SLOT(getTraffic(int)));
   87.50 -	connect(this, SIGNAL(newConnectionStatus(int)), infoWidget, SLOT(getNewConnectionStatus(int)));
   87.51 -	connect(this, SIGNAL(newConnection(int)), infoWidget, SLOT(getNewConnection(int)));
   87.52 -	connect(this, SIGNAL(newRemovedConnection(int)), infoWidget, SLOT(getRemovedConnection(int)));
   87.53 -	connect(this, SIGNAL(usedFileStorage(int)), infoWidget, SLOT(getUsedFileStorage(int)));
   87.54 -	connect(this, SIGNAL(usedMemoryStorage(int)), infoWidget, SLOT(getUsedMemoryStorage(int)));
   87.55 -	connect(this, SIGNAL(forwardConnectionList(QList <ConnectionInfo>)), infoWidget, SLOT(getConnectionList(QList <ConnectionInfo>)));
   87.56 -#ifdef PDAGUI
   87.57 -	connect(infoWidget, SIGNAL(sendConnectionList(QList <ConnectionInfo>)), 
   87.58 -			connectionWidget, SLOT(getConnectionList(QList <ConnectionInfo>)));
   87.59 -#endif //PDAGUI
   87.60 -	
   87.61 -	//Bundle List Tag
   87.62 -	bundleWidget = new BundleWidget(this);
   87.63 -	connect(this, SIGNAL(sendBundleList(QList<Bundle>)), bundleWidget, SLOT(getBundleList(QList<Bundle>)));
   87.64 -	connect(bundleWidget, SIGNAL(removeBundle(int)), this, SLOT(removeBundleSlot(int)));
   87.65 -	connect(bundleWidget, SIGNAL(removeAllBundles()), this, SLOT(removeAllBundlesSlot()));
   87.66 -
   87.67 -	#ifdef DTN_INTERFACE
   87.68 -	//DTN Interface Tag
   87.69 -	dtnInfo = new QTextEdit;
   87.70 -	dtnInfo->setReadOnly(true);
   87.71 -	dtnEntery = 0;
   87.72 -	#endif /*DNT_INTERFACE*/
   87.73 -	
   87.74 -	//About Tag
   87.75 -	info = new QListWidget;
   87.76 -	//info->setSelectionMode(QAbstractItemView::NoSelection);
   87.77 -	QString itemText;
   87.78 -	itemText.append("http://prophet.snc.sapmi.net");
   87.79 -    QListWidgetItem *newItem = new QListWidgetItem;
   87.80 -    newItem->setText(itemText);
   87.81 -    info->insertItem(0, newItem);
   87.82 -	itemText.clear();
   87.83 -	itemText.append("PRoPHET Version: 2.6.0");
   87.84 -	newItem = new QListWidgetItem;
   87.85 -    newItem->setText(itemText);
   87.86 -    info->insertItem(0, newItem);
   87.87 -	itemText.clear();
   87.88 -	itemText.append("Protocol Authors: Anders Lindgren, Avri Doria");
   87.89 -	newItem = new QListWidgetItem;
   87.90 -    newItem->setText(itemText);
   87.91 -    info->insertItem(0, newItem);
   87.92 -	itemText.clear();
   87.93 -	itemText.append("Code Author: Samo Grasic, Mattias Ek");
   87.94 -	newItem = new QListWidgetItem;
   87.95 -    newItem->setText(itemText);
   87.96 -    info->insertItem(0, newItem);
   87.97 -	itemText.clear();
   87.98 -	itemText.append("Lulea University Of Technology, Center For Distance-Spanning Technology");
   87.99 -	newItem = new QListWidgetItem;
  87.100 -    newItem->setText(itemText);
  87.101 -    info->insertItem(0, newItem);
  87.102 -
  87.103 -
  87.104 -	//Tab Widget
  87.105 -	tabWidget = new QTabWidget;
  87.106 -	tabWidget->addTab(infoWidget,tr("Node info"));
  87.107 -	#ifdef PDAGUI
  87.108 -	tabWidget->addTab(connectionWidget,tr("Connections"));
  87.109 -	#endif //PDAGUI
  87.110 -	tabWidget->addTab(bundleWidget,tr("Bundle list"));
  87.111 -	#ifdef PDAGUI
  87.112 -	tabWidget->addTab(message, tr("NSIM - Send"));
  87.113 -	tabWidget->addTab(messageRead, tr("NSIM - Read"));
  87.114 -	#else
  87.115 -	tabWidget->addTab(message, tr("NSIM"));
  87.116 -	#endif //PDAGUI
  87.117 -	#ifdef DTN_INTERFACE
  87.118 -	tabWidget->addTab(dtnInfo,tr("DTN Interface"));
  87.119 -	#endif /*DTN_INTERFACE*/
  87.120 -	#ifdef PDAGUI
  87.121 -	tabWidget->addTab(configWidget, tr("Config"));
  87.122 -	#endif //PDAGUI
  87.123 -	tabWidget->addTab(nodeTable, tr("Node list"));
  87.124 -	tabWidget->addTab(info, tr("About"));
  87.125 -
  87.126 -	
  87.127 -	//Define final layout
  87.128 -	QVBoxLayout *layout = new QVBoxLayout;
  87.129 -#ifdef PDAGUI
  87.130 -	layout->setMargin(0);
  87.131 -	layout->setSpacing(0);
  87.132 -#endif //PDAGUI
  87.133 -    layout->addWidget(tabWidget);    
  87.134 -    setLayout(layout);
  87.135 -
  87.136 -}
  87.137 -
  87.138 -void DebugWidget::getBundleList(QList<Bundle> list)
  87.139 -{
  87.140 -	emit sendBundleList(list);
  87.141 -}
  87.142 -
  87.143 -void DebugWidget::getNodeList(QList<Node> list)
  87.144 -{
  87.145 -	Node tempNode;
  87.146 -	nodeTable->clear();
  87.147 -    QStringList horizontalNodeLabels;
  87.148 -    horizontalNodeLabels << "ID" << "Name" << "Probability" << "RIB Flag";
  87.149 -	nodeTable->setHorizontalHeaderLabels(horizontalNodeLabels); 
  87.150 -    for (int i = 0; i < list.size(); ++i) 
  87.151 -	{
  87.152 -		tempNode=list.at(i);
  87.153 -
  87.154 -		QString text = QString("%1").arg((int)tempNode.nodeId);
  87.155 -		QTableWidgetItem *newItem = new QTableWidgetItem(text);
  87.156 -		nodeTable->setItem(i, 0, newItem);
  87.157 -
  87.158 -		text = tempNode.getName();
  87.159 -		newItem = new QTableWidgetItem(text);
  87.160 -		nodeTable->setItem(i, 1, newItem);
  87.161 -
  87.162 -		text = QString("%1").arg((float)tempNode.probability);
  87.163 -		newItem = new QTableWidgetItem(text);
  87.164 -		nodeTable->setItem(i, 2, newItem);
  87.165 -
  87.166 -		text = QString("%1").arg((int)tempNode.flag);
  87.167 -		newItem = new QTableWidgetItem(text);
  87.168 -		nodeTable->setItem(i, 3, newItem);
  87.169 -		//table->resizeRowToContents(i);
  87.170 -	}
  87.171 -}
  87.172 -
  87.173 -void DebugWidget::getConnectionList(QList<ConnectionInfo> list)
  87.174 -{
  87.175 -	emit forwardConnectionList(list);
  87.176 -}
  87.177 -
  87.178 -void DebugWidget::getStorageSize(int size)
  87.179 -{
  87.180 -
  87.181 -}
  87.182 -
  87.183 -void DebugWidget::getLog(QString log)
  87.184 -{
  87.185 -	#ifdef DTN_INTERFACE
  87.186 -	if(dtnEntery>DTN)
  87.187 -	{
  87.188 -		dtnInfo->clear();
  87.189 -		dtnEntery=0;
  87.190 -	}
  87.191 -	dtnInfo->append(log);
  87.192 -	dtnEntery++; 
  87.193 -	#endif /*DTN_INTERFACE*/
  87.194 -}
  87.195 -
  87.196 -void DebugWidget::forwardAppBundle(Bundle newBundle)
  87.197 -{
  87.198 -	emit sendAppBundle(newBundle);
  87.199 -}
  87.200 -
  87.201 -void DebugWidget::getAppBundle(Bundle newBundle)
  87.202 -{
  87.203 -	message->getBundle(newBundle);
  87.204 -}
  87.205 -
  87.206 -void DebugWidget::getTraffic(int t)
  87.207 -{
  87.208 -	emit traffic(t);
  87.209 -}
  87.210 -
  87.211 -void DebugWidget::getNewConnection(int c)
  87.212 -{
  87.213 -	emit newConnection(c);
  87.214 -}
  87.215 -
  87.216 -void DebugWidget::getNewConnectionStatus(int c)
  87.217 -{
  87.218 -	emit newConnectionStatus(c);
  87.219 -}
  87.220 -
  87.221 -void DebugWidget::getRemovedConnection(int c)
  87.222 -{
  87.223 -	emit newRemovedConnection(c);
  87.224 -}
  87.225 -
  87.226 -void DebugWidget::getUsedMemoryStorage(int s)
  87.227 -{
  87.228 -	emit usedMemoryStorage(s);
  87.229 -}
  87.230 -
  87.231 -void DebugWidget::getUsedFileStorage(int s)
  87.232 -{
  87.233 -	emit usedFileStorage(s);
  87.234 -}
  87.235 -
  87.236 -void DebugWidget::removeBundleSlot(int s)
  87.237 -{
  87.238 -	emit removeBundle(s);
  87.239 -}
  87.240 -
  87.241 -void DebugWidget::removeAllBundlesSlot()
  87.242 -{
  87.243 -	emit removeAllBundles();
  87.244 -}
  87.245 -
    88.1 --- a/x86/2.7/debugWidget.h	Wed Jan 03 09:17:10 2007 +0000
    88.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    88.3 @@ -1,73 +0,0 @@
    88.4 -#ifndef DEBUGWIDGET_H
    88.5 -#define DEBUGWIDGET_H
    88.6 -
    88.7 -
    88.8 -#include <QtGui>
    88.9 -#include <bundle.h>
   88.10 -#include <node.h>
   88.11 -#include <connectionWidget.h>
   88.12 -#include <msgWidget.h>
   88.13 -#include <msgReadWidget.h>
   88.14 -#include <configWidget.h>
   88.15 -#include <infoWidget.h>
   88.16 -#include <bundleWidget.h>
   88.17 -#include <neighbourAwareness.h>
   88.18 -#include <bundleManager.h>
   88.19 -
   88.20 -class DebugWidget : public QWidget
   88.21 -{
   88.22 -	Q_OBJECT 
   88.23 -
   88.24 -	public:
   88.25 -		DebugWidget(NodeManager*,BundleManager*,QWidget *parent = 0);
   88.26 -		QTableWidget *table;
   88.27 -		QTableWidget *nodeTable;
   88.28 -		QTableWidget *conTable;
   88.29 -		ConnectionWidget *connectionWidget;
   88.30 -		MsgWidget *message;
   88.31 -		MsgReadWidget *messageRead;
   88.32 -		ConfigWidget *configWidget;
   88.33 -		QTabWidget *tabWidget;
   88.34 -		QListWidget *info;
   88.35 -		QTextEdit *dtnInfo;
   88.36 -		InfoWidget *infoWidget;
   88.37 -		BundleWidget *bundleWidget;
   88.38 -		BundleManager *bundleManager;	
   88.39 -	int dtnEntery;
   88.40 -	 signals:
   88.41 -		void sendAppBundle(Bundle);
   88.42 -		void traffic(int);
   88.43 -		void newConnectionStatus(int);
   88.44 -		void newConnection(int);
   88.45 -		void newRemovedConnection(int);
   88.46 -		void usedFileStorage(int);
   88.47 -		void usedMemoryStorage(int);
   88.48 -		void sendBundleList(QList<Bundle>);
   88.49 -		void forwardConnectionList(QList <ConnectionInfo>);
   88.50 -		void removeBundle(int);
   88.51 -		void removeAllBundles();
   88.52 -
   88.53 -	public slots:
   88.54 -	void getLog(QString);
   88.55 -	void getStorageSize(int);
   88.56 -	void getConnectionList(QList<ConnectionInfo> list);
   88.57 -	void getBundleList(QList<Bundle>);
   88.58 -	void forwardAppBundle(Bundle);
   88.59 -	void getAppBundle(Bundle);
   88.60 -	void getNodeList(QList<Node>);
   88.61 -
   88.62 -	void getTraffic(int);
   88.63 -	void getNewConnection(int);
   88.64 -	void getNewConnectionStatus(int);
   88.65 -	void getRemovedConnection(int);
   88.66 -	void getUsedFileStorage(int);
   88.67 -	void getUsedMemoryStorage(int);
   88.68 -	void removeBundleSlot(int);
   88.69 -	void removeAllBundlesSlot();
   88.70 -
   88.71 -
   88.72 -};
   88.73 -
   88.74 -#endif
   88.75 -
   88.76 -
    89.1 Binary file x86/2.7/dia/signals.dia has changed
    90.1 Binary file x86/2.7/green_off.png has changed
    91.1 Binary file x86/2.7/green_on.png has changed
    92.1 --- a/x86/2.7/hello.cpp	Wed Jan 03 09:17:10 2007 +0000
    92.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    92.3 @@ -1,65 +0,0 @@
    92.4 -#include <QtCore>
    92.5 -#include <hello.h>
    92.6 -
    92.7 -Hello::Hello(QObject *parent)
    92.8 -{
    92.9 -	reserved=0;
   92.10 -	HFunction=0;
   92.11 -	timer=0;
   92.12 -	senderId=0;
   92.13 -	senderType=0;
   92.14 -	senderName.clear();
   92.15 -}
   92.16 -
   92.17 -
   92.18 -Hello& Hello::operator=(const Hello& other)
   92.19 -{
   92.20 - reserved = other.reserved;
   92.21 - HFunction = other.HFunction;
   92.22 - timer = other.timer;
   92.23 - senderName = other.senderName;
   92.24 - senderId = other.senderId;
   92.25 - senderType = other.senderType;
   92.26 - return *this;
   92.27 -}
   92.28 -
   92.29 -Hello::Hello(const Hello& other)
   92.30 -{
   92.31 - reserved = other.reserved;
   92.32 - HFunction = other.HFunction;
   92.33 - timer = other.timer;
   92.34 - senderName = other.senderName;
   92.35 -  senderId = other.senderId;
   92.36 - senderType = other.senderType;
   92.37 -
   92.38 -}	
   92.39 -	
   92.40 -void Hello::setFunction(int function)
   92.41 -{
   92.42 -	HFunction=function;
   92.43 -}
   92.44 -
   92.45 -void Hello::setSenderName(QString name)
   92.46 -{
   92.47 -	senderName=name;
   92.48 -}
   92.49 -
   92.50 -int Hello::getFunction()
   92.51 -{
   92.52 -	return HFunction;
   92.53 -}
   92.54 -
   92.55 -QString Hello::getSenderName()
   92.56 -{
   92.57 -	return senderName;
   92.58 -}
   92.59 -
   92.60 -void Hello::setTimer(int t)
   92.61 -{
   92.62 -	timer=t;
   92.63 -}
   92.64 -
   92.65 -int Hello::getTimer()
   92.66 -{
   92.67 -	return timer;
   92.68 -}
   92.69 \ No newline at end of file
    93.1 --- a/x86/2.7/hello.h	Wed Jan 03 09:17:10 2007 +0000
    93.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    93.3 @@ -1,82 +0,0 @@
    93.4 -#ifndef HELLO_H
    93.5 -#define HELLO_H
    93.6 -
    93.7 -#define SYN 1
    93.8 -#define SYNACK 2
    93.9 -#define ACK 3
   93.10 -#define RSTACK 4
   93.11 -
   93.12 -
   93.13 -
   93.14 -#include <QtCore>
   93.15 -
   93.16 -//!Object used during the PRoPHET hello procedure. 
   93.17 -/*!
   93.18 - * The different functions (HFs) of Hello messages:
   93.19 - * <PRE>
   93.20 - * SYN    - Beacon Hello, used for allowing other nodes to see us.
   93.21 - * SYNACK - Response to a SYN Hello.
   93.22 - * ACK    - Acknowledgement of the SYNACK.
   93.23 - * RSTACK - ???
   93.24 - * </PRE>
   93.25 - */
   93.26 -class Hello : public QObject
   93.27 -{
   93.28 -
   93.29 -Q_OBJECT 
   93.30 -	public:
   93.31 -	int reserved;
   93.32 -	int HFunction;
   93.33 -	int timer;
   93.34 -	int senderId;
   93.35 -	int senderType;
   93.36 -	QString senderName;
   93.37 -
   93.38 -	Hello(QObject *parent = 0);
   93.39 -	Hello(const Hello& other);
   93.40 -	Hello& operator=(const Hello& other);
   93.41 -
   93.42 -
   93.43 -	//! Sets the HF of this Hello.
   93.44 -	/*!
   93.45 -	 * @param function the HF of this Hello.
   93.46 -	 */
   93.47 -	void setFunction(int);
   93.48 -
   93.49 -	//! Sets the HF of this Hello.
   93.50 -	/*!
   93.51 -	 * @param function the HF of this Hello.
   93.52 -	 */
   93.53 -	int getFunction(); 
   93.54 -
   93.55 -	//! Returns the routable DTN name of the sender.
   93.56 -	/*!
   93.57 -	 * Used for updating routing information and making forwarding 
   93.58 -	 * decisions.
   93.59 -	 * @return the routable DTN name of the sender.
   93.60 -	 */
   93.61 -	QString getSenderName();	
   93.62 -
   93.63 -	//! Sets the routable DTN name of the sender.
   93.64 -	/*!
   93.65 -	 * Used for updating routing information and making forwarding 
   93.66 -	 * decisions.
   93.67 -	 * @param name a QString containing the senders name.
   93.68 -	 */	
   93.69 -	void setSenderName(QString);
   93.70 -
   93.71 -	//! Sets the Hello timer of this Hello.
   93.72 -	/*!
   93.73 -	 * @param t the interval between periodic Hello messages in units of 
   93.74 -	 * 100 ms.
   93.75 -	 */
   93.76 -	void setTimer(int);
   93.77 -
   93.78 -	//! Returns the interval (in 100 ms) this Hello is sent out.
   93.79 -	/*!
   93.80 -	 * @return the interval (in 100 ms) that periodic hellos are sent out.
   93.81 -	 */
   93.82 -	int getTimer(); 
   93.83 -};
   93.84 -
   93.85 -#endif
    94.1 --- a/x86/2.7/infoWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
    94.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    94.3 @@ -1,518 +0,0 @@
    94.4 -#include <QtGui>
    94.5 -#include <infoWidget.h>
    94.6 -#include <readFile.h>
    94.7 -
    94.8 -
    94.9 -#define AVRTIME 1000
   94.10 -#define MAXRATE 100
   94.11 -#define YELLOWONTIME 1000
   94.12 -#define REDONTIME 4000
   94.13 -
   94.14 -//Connections states for GUI
   94.15 -#define STATE_SYN 1
   94.16 -#define STATE_SYNACK 2
   94.17 -#define STATE_ACK 3
   94.18 -#define STATE_DICT 4
   94.19 -#define STATE_RIB 5
   94.20 -#define STATE_BOFF 6
   94.21 -#define STATE_BREQ 7
   94.22 -#define STATE_BUNDLE 8
   94.23 -#define STATE_ERROR 9
   94.24 -
   94.25 -
   94.26 -InfoWidget::InfoWidget(NodeManager* nodeMng,QWidget *parent)
   94.27 -        : QWidget(parent)
   94.28 -{
   94.29 -#ifdef PDAGUI
   94.30 -//	setFixedSize(230,300);
   94.31 -#else
   94.32 -	setFixedSize(990, 660);
   94.33 -#endif //PDAGUI
   94.34 -	ReadFile conf;
   94.35 -	//Traffic timer and variables
   94.36 -	trafficRate=0;
   94.37 -	trafficSum=0;
   94.38 -	trafficTimer = new QTimer();
   94.39 -	yellowTimer = new QTimer();
   94.40 -	yellowTimer->setSingleShot(true);
   94.41 -	redTimer = new QTimer();
   94.42 -	redTimer->setSingleShot(true);
   94.43 -
   94.44 -	trafficTimer->start(AVRTIME);
   94.45 -	connect(trafficTimer, SIGNAL(timeout()), this, SLOT(calculateTraffic()));
   94.46 -	connect(yellowTimer, SIGNAL(timeout()), this, SLOT(yellowLedOff()));
   94.47 -	connect(redTimer, SIGNAL(timeout()), this, SLOT(redLedOff()));
   94.48 -
   94.49 -	//Load graphic
   94.50 -	redOn = new QPixmap("red_on.png");
   94.51 -	redOff= new QPixmap("red_off.png");
   94.52 -	yellowOn= new QPixmap("yellow_on.png");
   94.53 -	yellowOff= new QPixmap("yellow_off.png");
   94.54 -	greenOn= new QPixmap("green_on.png");
   94.55 -	greenOff= new QPixmap("green_off.png");
   94.56 -
   94.57 -#ifndef PDAGUI
   94.58 -	//ConnectionsTable
   94.59 -    QLabel *labelConnections = new QLabel(this);
   94.60 -    labelConnections->setText("Active connections:");
   94.61 -	conTable = new QTableWidget(9, 4, this);
   94.62 -    QStringList horizontalConLabels;
   94.63 -    horizontalConLabels << "ID" << "IP" << "Alive" << "State" ;
   94.64 -	conTable->setHorizontalHeaderLabels(horizontalConLabels); 
   94.65 -#endif //PDAGUI
   94.66 -
   94.67 -#ifndef PDAGUI
   94.68 -	//Status group
   94.69 -	QGroupBox *sendBox = new QGroupBox("Status");
   94.70 -#endif //PDAGUI
   94.71 -    //Memory resources
   94.72 -    QLabel *labelMemory = new QLabel(this);
   94.73 -    labelMemory->setText("Memory storage:");
   94.74 -	memoryBar= new QProgressBar;
   94.75 -	memoryBar->setMaximum (conf.getStorageSize());
   94.76 -	memoryBar->setMinimum (0);
   94.77 -	memoryBar->setValue (0);
   94.78 -	memoryBar->setTextVisible(true);
   94.79 -    //File resources
   94.80 -    QLabel *labelFile = new QLabel(this);
   94.81 -    labelFile->setText("File storage:");
   94.82 -	fileBar= new QProgressBar;
   94.83 -	fileBar->setMaximum (conf.getMemoryStorageSize());
   94.84 -	fileBar->setMinimum (0);
   94.85 -	fileBar->setValue (0);
   94.86 -	fileBar->setTextVisible(true);
   94.87 -	//Transfer speed
   94.88 -    QLabel *labelSpeed = new QLabel(this);
   94.89 -    labelSpeed->setText("Transfer speed:");
   94.90 -	speedBar= new QProgressBar;
   94.91 -	speedBar->setMaximum (MAXRATE);
   94.92 -	speedBar->setMinimum (0);
   94.93 -	speedBar->setValue (0);
   94.94 -	speedBar->setTextVisible(true);
   94.95 -	//Red label
   94.96 -	labelRed = new QLabel(this);
   94.97 -    labelRed->setPixmap(*redOff);
   94.98 -	redLine = new QLineEdit(this);
   94.99 -	redLine->setText("No error...");
  94.100 -
  94.101 -	//Green label
  94.102 -	labelGreen = new QLabel(this);
  94.103 -    labelGreen->setPixmap(*greenOff);
  94.104 -	greenLine = new QLineEdit(this);
  94.105 -	greenLine->setText("No connection...");
  94.106 -
  94.107 -	//Yellow label
  94.108 -	labelYellow = new QLabel(this);
  94.109 -    labelYellow->setPixmap(*yellowOff);
  94.110 -	yellowLine = new QLineEdit(this);
  94.111 -	yellowLine->setText("No transmission...");
  94.112 -
  94.113 -
  94.114 -
  94.115 -
  94.116 -	//Final grid layout
  94.117 -    QGridLayout *sendGroup = new QGridLayout;
  94.118 -#ifdef PDAGUI
  94.119 -	sendGroup->setMargin(5);
  94.120 -	sendGroup->setSpacing(3);
  94.121 -
  94.122 -	sendGroup->addWidget(labelMemory, 0, 0, 1, 3);
  94.123 -    sendGroup->addWidget(memoryBar, 0, 1, 1, -1);
  94.124 -	sendGroup->addWidget(labelFile, 1, 0, 1, 3);
  94.125 -    sendGroup->addWidget(fileBar, 1, 1, 1, -1);
  94.126 -	sendGroup->addWidget(labelSpeed, 2, 0, 1, 3);
  94.127 -	sendGroup->addWidget(speedBar, 2, 1, 1, -1);
  94.128 -	sendGroup->addWidget(labelRed, 3, 0, 1, 1);	sendGroup->addWidget(redLine, 3, 1, 1, -1);
  94.129 -	sendGroup->addWidget(labelGreen, 4, 0, 1, 1); sendGroup->addWidget(greenLine, 4, 1, 1, -1);
  94.130 -	sendGroup->addWidget(labelYellow, 5, 0, 1, 1); sendGroup->addWidget(yellowLine, 5, 1, 1, -1);
  94.131 -#else
  94.132 -	sendGroup->addWidget(labelMemory, 0, 0);
  94.133 -    sendGroup->addWidget(memoryBar, 1, 0, 1,2);
  94.134 -
  94.135 -	sendGroup->addWidget(labelFile, 2, 0);
  94.136 -    sendGroup->addWidget(fileBar, 3, 0, 1,2);
  94.137 -	sendGroup->addWidget(labelSpeed, 4, 0);
  94.138 -	sendGroup->addWidget(speedBar, 5, 0, 1,2);
  94.139 -	sendGroup->addWidget(labelRed, 6, 0);	sendGroup->addWidget(redLine, 6, 1);
  94.140 -	sendGroup->addWidget(labelGreen, 7, 0); sendGroup->addWidget(greenLine, 7, 1 );
  94.141 -	sendGroup->addWidget(labelYellow, 8, 0); sendGroup->addWidget(yellowLine, 8, 1);
  94.142 -
  94.143 -#endif //PDAGUI
  94.144 -
  94.145 -#ifndef PDAGUI
  94.146 -	sendGroup->addWidget(labelConnections, 9, 0);
  94.147 -	sendGroup->addWidget(conTable, 10, 0,1,2);
  94.148 -#endif //PDAGUI
  94.149 -
  94.150 -#ifdef PDAGUI
  94.151 -	//sendGroup->setFixedSize(240, 320);
  94.152 -#else
  94.153 -	sendBox->setFixedSize(450, 635);
  94.154 -	sendBox->setLayout(sendGroup);
  94.155 -#endif //PDAGUI
  94.156 -	///////////////////////////////////////////////////
  94.157 -	QGroupBox *readBox = new QGroupBox("Configuration");
  94.158 -
  94.159 -	//Reading configurations
  94.160 -	loadConfiguration();
  94.161 -	//Final grid layout
  94.162 -	QGridLayout *readGroup = new QGridLayout;
  94.163 -	QLabel *labelNODEID = new QLabel("NodeID:");
  94.164 -	readGroup->addWidget(labelNODEID, 0, 0);
  94.165 -	readGroup->addWidget(lineNODEID, 0, 1);
  94.166 -	QLabel *labelNODENAME = new QLabel("Node Name:");
  94.167 -	readGroup->addWidget(labelNODENAME, 1, 0);
  94.168 -	readGroup->addWidget(lineNODENAME, 1, 1);
  94.169 -	QLabel *labelNODEIP = new QLabel("Node IP:");
  94.170 -	readGroup->addWidget(labelNODEIP, 2, 0);
  94.171 -	readGroup->addWidget(lineNODEIP, 2, 1);
  94.172 -	QLabel *labelNODEIP2 = new QLabel("Node IP2:");
  94.173 -	readGroup->addWidget(labelNODEIP2, 3, 0);
  94.174 -	readGroup->addWidget(lineNODEIP2, 3, 1);
  94.175 -	QLabel *labelNODEBROADCAST = new QLabel("Broadcast Address:");
  94.176 -	readGroup->addWidget(labelNODEBROADCAST, 4, 0);
  94.177 -	readGroup->addWidget(lineNODEBROADCAST, 4, 1);
  94.178 -	QLabel *labelBROADCAST = new QLabel("Broadcast Timer:");
  94.179 -	readGroup->addWidget(labelBROADCAST, 5, 0);
  94.180 -	readGroup->addWidget(lineBROADCAST, 5, 1);
  94.181 -	QLabel *labelAGINGTIMER = new QLabel("Aging Timer:");
  94.182 -	readGroup->addWidget(labelAGINGTIMER, 6, 0);
  94.183 -	readGroup->addWidget(lineAGINGTIMER, 6, 1);
  94.184 -	QLabel *labelPENCOUNTER = new QLabel("PEcounter:");
  94.185 -	readGroup->addWidget(labelPENCOUNTER, 7, 0);
  94.186 -	readGroup->addWidget(linePENCOUNTER, 7, 1);
  94.187 -	QLabel *labelBETA = new QLabel("Beta:");
  94.188 -	readGroup->addWidget(labelBETA, 8, 0);
  94.189 -	readGroup->addWidget(lineBETA, 8, 1);
  94.190 -	QLabel *labelGAMMA = new QLabel("Gamma:");
  94.191 -	readGroup->addWidget(labelGAMMA, 9, 0);
  94.192 -	readGroup->addWidget(lineGAMMA, 9, 1);
  94.193 -
  94.194 -	QLabel *labelALIVE = new QLabel("Alive Timer:");
  94.195 -	readGroup->addWidget(labelALIVE, 11, 0);
  94.196 -	readGroup->addWidget(lineALIVE, 11, 1);
  94.197 -
  94.198 -	QLabel *labelHELLOTIMER = new QLabel("Hello Timer:");
  94.199 -	readGroup->addWidget(labelHELLOTIMER, 12, 0);
  94.200 -	readGroup->addWidget(lineHELLOTIMER, 12, 1);
  94.201 -
  94.202 -	QLabel *laberINITIATORTIMER = new QLabel("Initiator Timer:");
  94.203 -//	readGroup->addWidget(laberINITIATORTIMER, 13, 0);
  94.204 -//	readGroup->addWidget(lineINITIATORTIMER, 13, 1);
  94.205 -
  94.206 -	QLabel *labelLISTENERTIMER = new QLabel("Listener Timer:");
  94.207 -//	readGroup->addWidget(labelLISTENERTIMER, 14, 0);
  94.208 -//	readGroup->addWidget(lineLISTENERTIMER, 14, 1);
  94.209 -
  94.210 -	QLabel *labelDTNHOSTNAME = new QLabel("DTN Host Name:");
  94.211 -	readGroup->addWidget(labelDTNHOSTNAME, 13, 0);
  94.212 -	readGroup->addWidget(lineDTNHOSTNAME, 13, 1);
  94.213 -
  94.214 -	QLabel *labelDNTTIMER = new QLabel("DTN Timer:");
  94.215 -	readGroup->addWidget(labelDNTTIMER, 14, 0);
  94.216 -	readGroup->addWidget(lineDNTTIMER, 14, 1);
  94.217 -
  94.218 -	QLabel *labelSTORAGESIZE = new QLabel("File Storge size:");
  94.219 -	readGroup->addWidget(labelSTORAGESIZE, 15, 0);
  94.220 -	readGroup->addWidget(lineSTORAGESIZE, 15, 1);
  94.221 -
  94.222 -	QLabel *labelMEMORYSIZE = new QLabel("Memory Storge size:");
  94.223 -	readGroup->addWidget(labelMEMORYSIZE, 16, 0);
  94.224 -	readGroup->addWidget(lineMEMORYSIZE, 16, 1);
  94.225 -
  94.226 -	QLabel *labelROUTING = new QLabel("Routing Type:");
  94.227 -	readGroup->addWidget(labelROUTING, 17, 0);
  94.228 -	readGroup->addWidget(lineROUTING, 17, 1);
  94.229 -
  94.230 -	QLabel *labelQUEUE = new QLabel("Queue Type:");
  94.231 -	readGroup->addWidget(labelQUEUE, 18, 0);
  94.232 -	readGroup->addWidget(lineQUEUE, 18, 1);
  94.233 -
  94.234 -	QLabel *labelCONTINIUSUPDATE = new QLabel("Continius update:");
  94.235 -	readGroup->addWidget(labelCONTINIUSUPDATE, 19, 0);
  94.236 -	readGroup->addWidget(lineCONTINIUSUPDATE, 19, 1);
  94.237 -
  94.238 -	QLabel *labelSTORAGEPATH = new QLabel("Storage Path:");
  94.239 -	readGroup->addWidget(labelSTORAGEPATH, 20, 0);
  94.240 -	readGroup->addWidget(lineSTORAGEPATH, 20, 1);
  94.241 -
  94.242 -	QLabel *labelLOGPATH = new QLabel("Log Path:");
  94.243 -	readGroup->addWidget(labelLOGPATH, 21, 0);
  94.244 -	readGroup->addWidget(lineLOGPATH, 21, 1);
  94.245 -
  94.246 -	QLabel *labelMSGPATH = new QLabel("Messages Path:");
  94.247 -	readGroup->addWidget(labelMSGPATH, 22, 0);
  94.248 -	readGroup->addWidget(lineMSGPATH, 22, 1);
  94.249 -
  94.250 -	QLabel *labelAGEFILENODES = new QLabel("Age Nodes on Startup:");
  94.251 -	readGroup->addWidget(labelAGEFILENODES, 23, 0);
  94.252 -	readGroup->addWidget(lineAGEFILENODES, 23, 1);
  94.253 -
  94.254 -	QLabel *labelUSEFILENODES = new QLabel("Store Nodes To File:");
  94.255 -	readGroup->addWidget(labelUSEFILENODES, 24, 0);
  94.256 -	readGroup->addWidget(lineUSEFILENODES, 24, 1);
  94.257 -
  94.258 -	QLabel *labelWRITETOFILETIMER = new QLabel("File Writing Timer:");
  94.259 -	readGroup->addWidget(labelWRITETOFILETIMER, 25, 0);
  94.260 -	readGroup->addWidget(lineWRITETOFILETIMER, 25, 1);
  94.261 -
  94.262 -	QLabel *labelUSEFILEBUNDLES = new QLabel("Store Bundels To Files:");
  94.263 -	readGroup->addWidget(labelUSEFILEBUNDLES, 26, 0);
  94.264 -	readGroup->addWidget(lineUSEFILEBUNDLES, 26, 1);
  94.265 -
  94.266 -
  94.267 -	QLabel *labelLOGGING = new QLabel("Logging:");
  94.268 -	readGroup->addWidget(labelLOGGING, 27, 0);
  94.269 -	readGroup->addWidget(lineLOGGING, 27, 1);
  94.270 -
  94.271 -	QLabel *labelUSETTL = new QLabel("Use TTL:");
  94.272 -	readGroup->addWidget(labelUSETTL, 28, 0);
  94.273 -	readGroup->addWidget(lineUSETTL, 28, 1);
  94.274 -
  94.275 -	QLabel *labelTTL = new QLabel("TTL:");
  94.276 -	readGroup->addWidget(labelTTL, 29, 0);
  94.277 -	readGroup->addWidget(lineTTL, 29, 1);
  94.278 -
  94.279 -	QLabel *labelACKS = new QLabel("Use ACKs:");
  94.280 -	readGroup->addWidget(labelACKS, 30, 0);
  94.281 -	readGroup->addWidget(lineACKS, 30, 1);
  94.282 -
  94.283 -
  94.284 -
  94.285 -
  94.286 - 	readBox->setFixedSize(450, 635);
  94.287 -	readBox->setLayout(readGroup);
  94.288 -	Bundle *msg = new Bundle;
  94.289 -	//Define final layout
  94.290 -	QVBoxLayout *layout = new QVBoxLayout;
  94.291 -	layout->setDirection(QBoxLayout::LeftToRight);
  94.292 -#ifdef PDAGUI
  94.293 -    setLayout(sendGroup);
  94.294 -#else
  94.295 -    layout->addWidget(sendBox);
  94.296 -	layout->addWidget(readBox);    
  94.297 -    setLayout(layout);
  94.298 -#endif //PDAGUI
  94.299 -}
  94.300 -
  94.301 -void InfoWidget::loadConfiguration()
  94.302 -{
  94.303 -	ReadFile conf;
  94.304 -	lineNODEID = new QLineEdit();
  94.305 -	lineNODEID->setText(QString("%1").arg(conf.getNodeId()));
  94.306 -
  94.307 -	lineNODENAME = new QLineEdit();
  94.308 -	lineNODENAME->setText(conf.getNodeName());
  94.309 -
  94.310 -	lineNODEIP = new QLineEdit();
  94.311 -	lineNODEIP->setText(conf.getNodeIp().toString());
  94.312 -
  94.313 -	lineNODEIP2 = new QLineEdit();
  94.314 -	lineNODEIP2->setText(conf.getNodeIp2().toString());
  94.315 -
  94.316 -	lineNODEBROADCAST = new QLineEdit();
  94.317 -	lineNODEBROADCAST->setText(conf.getBroadcast().toString());
  94.318 -
  94.319 -	lineBROADCAST = new QLineEdit();
  94.320 -	lineBROADCAST->setText(QString("%1").arg(conf.getBroadcastTimer()));
  94.321 -
  94.322 -	lineAGINGTIMER = new QLineEdit();
  94.323 -	lineAGINGTIMER->setText(QString("%1").arg(conf.getAgingTimer()));
  94.324 -
  94.325 -	linePENCOUNTER = new QLineEdit();
  94.326 -	linePENCOUNTER->setText(QString("%1").arg(conf.getPEncounter()));
  94.327 -
  94.328 -	lineBETA = new QLineEdit();
  94.329 -	lineBETA->setText(QString("%1").arg(conf.getBeta()));
  94.330 -
  94.331 -	lineGAMMA = new QLineEdit();
  94.332 -	lineGAMMA->setText(QString("%1").arg(conf.getGamma()));
  94.333 -	
  94.334 -	lineALIVE = new QLineEdit();
  94.335 -	lineALIVE->setText(QString("%1").arg(conf.getAlive()));
  94.336 -	
  94.337 -	lineHELLOTIMER = new QLineEdit();
  94.338 -	lineHELLOTIMER->setText(QString("%1").arg(conf.getHello()));
  94.339 -	
  94.340 -	lineINITIATORTIMER = new QLineEdit();
  94.341 -	lineINITIATORTIMER->setText(QString("%1").arg(conf.getInitiatorTimer()));
  94.342 -	
  94.343 -	lineLISTENERTIMER = new QLineEdit();
  94.344 -	lineLISTENERTIMER->setText(QString("%1").arg(conf.getListenerTimer()));
  94.345 -	
  94.346 -	lineDTNHOSTNAME = new QLineEdit();
  94.347 -	lineDTNHOSTNAME->setText(conf.getDTNHostName().toString());
  94.348 -	
  94.349 -	lineDNTTIMER = new QLineEdit();
  94.350 -	lineDNTTIMER->setText(QString("%1").arg(conf.getDTNTimer()));
  94.351 -
  94.352 -	lineSTORAGESIZE = new QLineEdit();
  94.353 -	lineSTORAGESIZE->setText(QString("%1").arg(conf.getStorageSize()));
  94.354 -
  94.355 -	lineMEMORYSIZE = new QLineEdit();
  94.356 -	lineMEMORYSIZE->setText(QString("%1").arg(conf.getMemoryStorageSize()));
  94.357 -
  94.358 -	lineROUTING = new QLineEdit();
  94.359 -	lineROUTING->setText(QString("%1").arg(conf.getRouting()));
  94.360 -
  94.361 -	lineQUEUE = new QLineEdit();
  94.362 -	lineQUEUE->setText(QString("%1").arg(conf.getQueue()));
  94.363 -
  94.364 -	lineCONTINIUSUPDATE = new QLineEdit();
  94.365 -	lineCONTINIUSUPDATE->setText(QString("%1").arg(conf.getContiniusUpdate()));
  94.366 -
  94.367 -	lineSTORAGEPATH = new QLineEdit();
  94.368 -	lineSTORAGEPATH->setText(QString("%1").arg(conf.getStoragePath()));
  94.369 -
  94.370 -	lineLOGPATH = new QLineEdit();
  94.371 -	lineLOGPATH->setText(QString("%1").arg(conf.getLogPath()));
  94.372 -
  94.373 -	lineMSGPATH = new QLineEdit();
  94.374 -	lineMSGPATH->setText(QString("%1").arg(conf.getMsgPath()));
  94.375 -
  94.376 -	lineAGEFILENODES = new QLineEdit();
  94.377 -	lineAGEFILENODES->setText(QString("%1").arg(conf.getAgeFileNodes()));
  94.378 -
  94.379 -	lineUSEFILENODES = new QLineEdit();
  94.380 -	lineUSEFILENODES->setText(QString("%1").arg(conf.getUseFileNodes()));
  94.381 -
  94.382 -	lineWRITETOFILETIMER = new QLineEdit();
  94.383 -	lineWRITETOFILETIMER->setText(QString("%1").arg(conf.getWriteToFileTimer()));
  94.384 -
  94.385 -	lineUSEFILEBUNDLES = new QLineEdit();
  94.386 -	lineUSEFILEBUNDLES->setText(QString("%1").arg(conf.getUseFileBundles()));
  94.387 -
  94.388 -	lineLOGGING = new QLineEdit();
  94.389 -	lineLOGGING->setText(QString("%1").arg(conf.getLogOption()));
  94.390 -
  94.391 -	
  94.392 -	lineUSETTL = new QLineEdit();
  94.393 -	lineUSETTL->setText(QString("%1").arg(conf.getUseTTL()));
  94.394 -
  94.395 -	lineTTL = new QLineEdit();
  94.396 -	lineTTL->setText(QString("%1").arg(conf.getTTL()));
  94.397 -
  94.398 -	lineACKS = new QLineEdit();
  94.399 -	lineACKS->setText(QString("%1").arg(conf.getUseACKS()));
  94.400 -
  94.401 -}
  94.402 -
  94.403 -
  94.404 -
  94.405 -
  94.406 -
  94.407 -
  94.408 -void InfoWidget::yellowLedOff()
  94.409 -{
  94.410 -	labelYellow->setPixmap(*yellowOff);
  94.411 -	yellow=false;
  94.412 -	yellowLine->setText("No transmission...");
  94.413 -	yellowTimer->stop();
  94.414 -}
  94.415 -
  94.416 -void InfoWidget::redLedOff()
  94.417 -{
  94.418 -	labelRed->setPixmap(*redOff);
  94.419 -	redLine->setText("No error...");
  94.420 -	redTimer->stop();
  94.421 -}
  94.422 -
  94.423 -
  94.424 -
  94.425 -void InfoWidget::getTraffic(int tr)
  94.426 -{
  94.427 -   trafficSum=+tr;
  94.428 -   yellowLine->setText("Transmitting "+QString("%1").arg(tr)+" bytes...");
  94.429 - 
  94.430 -   yellowTimer->start(YELLOWONTIME);//(tr/MAXRATE)*1000);
  94.431 -   labelYellow->setPixmap(*yellowOn);
  94.432 -}
  94.433 -
  94.434 -//Calculating the transfer speed in GUI
  94.435 -void InfoWidget::calculateTraffic()
  94.436 -{
  94.437 -	trafficRate=(trafficSum)/(1000.0/AVRTIME);
  94.438 -	trafficSum=0;
  94.439 -	speedBar->setValue (trafficRate);
  94.440 -}
  94.441 -
  94.442 -
  94.443 -void InfoWidget::getNewConnection(int c)
  94.444 -{
  94.445 -	greenLine->setText("Connection Nr. "+QString("%1").arg(c)+" created...");
  94.446 -	labelGreen->setPixmap(*greenOn);
  94.447 -}
  94.448 -
  94.449 -
  94.450 -void InfoWidget::getNewConnectionStatus(int c)
  94.451 -{
  94.452 -
  94.453 -
  94.454 -	switch (c)
  94.455 -	{
  94.456 -	case STATE_SYN:		greenLine->setText("HELLO SYN...");break;
  94.457 -	case STATE_SYNACK:	greenLine->setText("HELLO SYNACK...");break;
  94.458 -	case STATE_ACK:		greenLine->setText("HELLO ACK...");break;
  94.459 -	case STATE_DICT:	greenLine->setText("DICTIONARY...");break;
  94.460 -	case STATE_RIB:		greenLine->setText("RUTING INFORMATION BASE...");break;
  94.461 -	case STATE_BOFF:	greenLine->setText("BUNDLE OFFER...");break;
  94.462 -	case STATE_BREQ:	greenLine->setText("BUNDLE REQUEST...");break;
  94.463 -	case STATE_BUNDLE:	greenLine->setText("BUNDLE DATA...");break;
  94.464 -	case STATE_ERROR:	greenLine->setText("ERROR  STATE...");break;
  94.465 -	default:	greenLine->setText("No connection...");labelGreen->setPixmap(*greenOff);break;
  94.466 -	}
  94.467 -}
  94.468 -
  94.469 -void InfoWidget::getRemovedConnection(int c)
  94.470 -{
  94.471 -	redLine->setText("Connection Nr. "+QString("%1").arg(c)+" removed...");
  94.472 -	redTimer->start(REDONTIME);
  94.473 -	labelRed->setPixmap(*redOn);
  94.474 -}
  94.475 -
  94.476 -void InfoWidget::getUsedMemoryStorage(int s)
  94.477 -{
  94.478 -	memoryBar->setValue (s);
  94.479 -}
  94.480 -
  94.481 -void InfoWidget::getUsedFileStorage(int s)
  94.482 -{
  94.483 -	fileBar->setValue (s);
  94.484 -}
  94.485 -
  94.486 -
  94.487 -//Receives a list of active connection and add them to the list
  94.488 -void InfoWidget:: getConnectionList(QList <ConnectionInfo> list)
  94.489 -{
  94.490 -#ifdef PDAGUI
  94.491 -	/* send the connection list to the connection tab */
  94.492 -	emit sendConnectionList(list);
  94.493 -#else
  94.494 -	ConnectionInfo tempNode;
  94.495 -	conTable->clear();
  94.496 -        QStringList horizontalConLabels;
  94.497 -	horizontalConLabels << "ID" << "IP" << "Alive" << "State";
  94.498 -	conTable->setHorizontalHeaderLabels(horizontalConLabels);
  94.499 -	for (int i = 0; i < list.size(); ++i)
  94.500 -	{
  94.501 -		tempNode=list.at(i);
  94.502 -		//Adding ID
  94.503 -		QString text = QString("%1").arg((int)tempNode.id);
  94.504 -		QTableWidgetItem *newItem = new QTableWidgetItem(text);
  94.505 -		conTable->setItem(i, 0, newItem);
  94.506 -		//Adding IP
  94.507 -		text = tempNode.ip.toString();
  94.508 -		newItem = new QTableWidgetItem(text);
  94.509 -		conTable->setItem(i, 1, newItem);
  94.510 -		//Adding Alive variable
  94.511 -		text = QString("%1").arg((int)tempNode.alive);
  94.512 -		newItem = new QTableWidgetItem(text);
  94.513 -		conTable->setItem(i, 2, newItem);
  94.514 -		//Adding State of the TCP Connection
  94.515 -		int x = tempNode.tcpSocket->state();
  94.516 -		text = QString("%1").arg((int)x);
  94.517 -		newItem = new QTableWidgetItem(text);
  94.518 -		conTable->setItem(i, 3, newItem);
  94.519 -	}
  94.520 -#endif //PDAGUI
  94.521 - }
    95.1 --- a/x86/2.7/infoWidget.h	Wed Jan 03 09:17:10 2007 +0000
    95.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    95.3 @@ -1,153 +0,0 @@
    95.4 -#ifndef INFOWIDGET_H
    95.5 -#define INFOWIDGET_H
    95.6 -#include <QtGui>
    95.7 -#include <QtNetwork>
    95.8 -#include <bundle.h>
    95.9 -#include <nodeManager.h>
   95.10 -#include <neighbourAwareness.h>
   95.11 -
   95.12 -class InfoWidget : public QWidget
   95.13 -{
   95.14 -
   95.15 -	Q_OBJECT
   95.16 -
   95.17 -private:
   95.18 -		
   95.19 -	QLineEdit *label;
   95.20 -
   95.21 -	
   95.22 -public:
   95.23 -	int seq;
   95.24 -	QComboBox *combo;
   95.25 -	QTextBrowser *readText;
   95.26 -	QFileDialog *file;
   95.27 -	QLineEdit *src;
   95.28 -	QLineEdit *dst;
   95.29 -	QLineEdit *opt;
   95.30 -	QTextEdit *line;
   95.31 -	QLineEdit *srcLine;
   95.32 -	QLineEdit *dstLine;
   95.33 -	InfoWidget(NodeManager*,QWidget *parent = 0);
   95.34 -	NodeManager* nodeManager;
   95.35 -	QTimer* timer;
   95.36 -	bool firstTime;
   95.37 -	QListWidget* msgList;
   95.38 -	QDir dir;
   95.39 -	//Status variables
   95.40 -	QProgressBar *memoryBar;
   95.41 -	QProgressBar *fileBar;
   95.42 -	QProgressBar *speedBar;
   95.43 -	QLabel *labelRed;
   95.44 -	QLabel *labelGreen;
   95.45 -	QLabel *labelYellow;
   95.46 -	QLineEdit *greenLine;
   95.47 -	QLineEdit *redLine;
   95.48 -	QLineEdit *yellowLine;
   95.49 -	int trafficSum;
   95.50 -	float trafficRate;
   95.51 -	QTimer *trafficTimer;
   95.52 -	QTimer *yellowTimer;
   95.53 -	QTimer *redTimer;
   95.54 -	QPixmap	*redOn;
   95.55 -	QPixmap	*redOff;
   95.56 -	QPixmap	*yellowOn;
   95.57 -	QPixmap	*yellowOff;
   95.58 -	QPixmap	*greenOn;
   95.59 -	QPixmap	*greenOff;
   95.60 -	bool yellow;
   95.61 -	QTableWidget* conTable;
   95.62 -
   95.63 -	
   95.64 -	//Configuration variables
   95.65 -	int NODEID;
   95.66 -	QString NODENAME;
   95.67 -	QHostAddress NODEIP;
   95.68 -	QHostAddress NODEIP2;
   95.69 -	QHostAddress NODEBROADCAST;
   95.70 -	int BROADCAST;
   95.71 -	int AGINGTIMER;
   95.72 -	float PENCOUNTER;
   95.73 -	float BETA;
   95.74 -	float GAMMA;
   95.75 -	int HELLO;
   95.76 -	int ALIVE;
   95.77 -	int HELLOTIMER;
   95.78 -	int INITIATORTIMER;
   95.79 -	int LISTENERTIMER;
   95.80 -	QHostAddress DTNHOSTNAME;
   95.81 -	int DNTTIMER;
   95.82 -	int STORAGESIZE;
   95.83 -	int MEMORYSIZE;
   95.84 -	int ROUTING;
   95.85 -	int QUEUE;
   95.86 -	int CONTINIUSUPDATE;
   95.87 -	QString STORAGEPATH;
   95.88 -	QString LOGPATH;
   95.89 -	QString MSGPATH;
   95.90 -	int AGEFILENODES;
   95.91 -	int USEFILENODES;
   95.92 -	int WRITETOFILETIMER;
   95.93 -	int USEFILEBUNDLES;
   95.94 -	int LOGGING;
   95.95 -
   95.96 -
   95.97 -	QLineEdit * lineNODEID;
   95.98 -	QLineEdit * lineNODENAME;
   95.99 -	QLineEdit * lineNODEIP;
  95.100 -	QLineEdit * lineNODEIP2;
  95.101 -	QLineEdit * lineNODEBROADCAST;
  95.102 -	QLineEdit * lineBROADCAST;
  95.103 -	QLineEdit * lineAGINGTIMER;
  95.104 -	QLineEdit * linePENCOUNTER;
  95.105 -	QLineEdit * lineBETA;
  95.106 -	QLineEdit * lineGAMMA;
  95.107 -	QLineEdit * lineHELLO;
  95.108 -	QLineEdit * lineALIVE;
  95.109 -	QLineEdit * lineHELLOTIMER;
  95.110 -	QLineEdit * lineINITIATORTIMER;
  95.111 -	QLineEdit * lineLISTENERTIMER;
  95.112 -	QLineEdit * lineDTNHOSTNAME;
  95.113 -	QLineEdit * lineDNTTIMER;
  95.114 -	QLineEdit * lineSTORAGESIZE;
  95.115 -	QLineEdit * lineMEMORYSIZE;
  95.116 -	QLineEdit * lineROUTING;
  95.117 -	QLineEdit * lineQUEUE;
  95.118 -	QLineEdit * lineCONTINIUSUPDATE;
  95.119 -	QLineEdit * lineSTORAGEPATH;
  95.120 -	QLineEdit * lineLOGPATH;
  95.121 -	QLineEdit * lineMSGPATH;
  95.122 -	QLineEdit * lineAGEFILENODES;
  95.123 -	QLineEdit * lineUSEFILENODES;
  95.124 -	QLineEdit * lineWRITETOFILETIMER;
  95.125 -	QLineEdit * lineUSEFILEBUNDLES;
  95.126 -	QLineEdit * lineLOGGING;
  95.127 -	QLineEdit * lineUSETTL;
  95.128 -	QLineEdit * lineTTL;
  95.129 -	QLineEdit * lineACKS;
  95.130 -
  95.131 -
  95.132 -
  95.133 -
  95.134 -signals:
  95.135 -	void sendConnectionList(QList <ConnectionInfo>);
  95.136 -
  95.137 -public slots:
  95.138 -	void loadConfiguration();
  95.139 -	void calculateTraffic();
  95.140 -	void yellowLedOff();	
  95.141 -	void redLedOff();
  95.142 -
  95.143 -	void getTraffic(int);
  95.144 -	void getConnectionList(QList <ConnectionInfo>);
  95.145 -	void getNewConnection(int);
  95.146 -	void getNewConnectionStatus(int);
  95.147 -	void getRemovedConnection(int);
  95.148 -	void getUsedFileStorage(int);
  95.149 -	void getUsedMemoryStorage(int);
  95.150 -
  95.151 -
  95.152 -};
  95.153 -
  95.154 -#endif
  95.155 -
  95.156 -
    96.1 --- a/x86/2.7/main.cpp	Wed Jan 03 09:17:10 2007 +0000
    96.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    96.3 @@ -1,75 +0,0 @@
    96.4 -#ifdef GUI
    96.5 -#include <QtGui>
    96.6 -#include <debugWidget.h>
    96.7 -#endif /*GUI*/
    96.8 -#include <QtCore>
    96.9 -#include <neighbourAwareness.h>
   96.10 -#ifdef DTN_INTERFACE
   96.11 -#include <DTNInterface.h>
   96.12 -#endif /*DTN_INTERFACE*/
   96.13 -#include <messageFile.h>
   96.14 -#include <readFile.h>
   96.15 -
   96.16 -using namespace std;
   96.17 -
   96.18 -
   96.19 -int main(int argc, char *argv[])
   96.20 -{
   96.21 -#ifdef GUI
   96.22 -	QApplication app(argc, argv);
   96.23 -#else
   96.24 -	QCoreApplication app(argc, argv);
   96.25 -#endif /*GUI*/
   96.26 -	ReadFile* conf;
   96.27 -	conf = new ReadFile;
   96.28 -	//Prepare Log File
   96.29 -	if(conf->getLogOption()==1)
   96.30 -	{
   96.31 -		MessageFile *log;
   96.32 -		log = new MessageFile;
   96.33 -		log->set("startup.log", 1000000, 5);
   96.34 -		log->addLog(0,(QString)"Starting Prophet!");
   96.35 -	}
   96.36 -
   96.37 -	//Create bundle manager
   96.38 -	BundleManager* mainBundleMananger = new BundleManager(conf->getNodeId());
   96.39 -	//Create node manager
   96.40 -	NodeManager* mainNodeManager = new NodeManager();
   96.41 -	//Neighbor Awarness
   96.42 -	NeighAware* neighbourawareness = new NeighAware(mainBundleMananger,mainNodeManager);
   96.43 -#ifdef DTN_INTERFACE
   96.44 -	//Create DTN interface
   96.45 -	DTNInterface* mainDTNInterface = new DTNInterface(mainBundleMananger,mainNodeManager);
   96.46 -#endif /*DTN_INTERFACE*/
   96.47 -#ifdef GUI
   96.48 -	//Create debug
   96.49 -	DebugWidget* debugWidget = new DebugWidget(mainNodeManager,mainBundleMananger);
   96.50 -	debugWidget->show();
   96.51 -	//Connect Bundle manager, Node manager and Debug widget
   96.52 -	debugWidget->connect(mainBundleMananger,SIGNAL(sendDebugBundleList(QList<Bundle>)),debugWidget,SLOT(getBundleList(QList<Bundle>)));
   96.53 -	debugWidget->connect(debugWidget,SIGNAL(sendAppBundle(Bundle)),mainBundleMananger,SLOT(addBundle(Bundle)));
   96.54 -	debugWidget->connect(mainBundleMananger,SIGNAL(sendFileStorage(int)),debugWidget,SLOT(getUsedFileStorage(int)));
   96.55 -	debugWidget->connect(mainBundleMananger,SIGNAL(sendMemoryStorage(int)),debugWidget,SLOT(getUsedMemoryStorage(int)));
   96.56 -	debugWidget->connect(debugWidget,SIGNAL(removeBundle(int)),mainBundleMananger,SLOT(removeBundle(int)));
   96.57 -	debugWidget->connect(debugWidget,SIGNAL(removeAllBundles()),mainBundleMananger,SLOT(removeAllBundles()));
   96.58 -	//Updating bundle destinations
   96.59 -	debugWidget->connect(mainNodeManager,SIGNAL(updatedNodeList(NodeManager*)),mainBundleMananger,SLOT(updateBundlesDestinations(NodeManager*)));
   96.60 -#ifdef DTN_INTERFACE
   96.61 -	//Connect DTN Inteface and Debug widget
   96.62 -	debugWidget->connect(mainDTNInterface,SIGNAL(sendLog(QString)),debugWidget,SLOT(getLog(QString)));
   96.63 -	mainDTNInterface->connect(mainDTNInterface,SIGNAL(sendBundle(Bundle)),mainBundleMananger,SLOT(addBundle(Bundle)));
   96.64 -	mainDTNInterface->connect(mainBundleMananger,SIGNAL(sendDeliveredBundle(Bundle)),mainDTNInterface,SLOT(receiveBundle(Bundle)));
   96.65 -#endif /*DTN_INTERFACE*/
   96.66 -	//Connect Node manager and Debug widget
   96.67 -	debugWidget->connect(mainNodeManager,SIGNAL(sendDebugNodeList(QList<Node>)),debugWidget,SLOT(getNodeList(QList<Node>)));
   96.68 -	debugWidget->connect(neighbourawareness,SIGNAL(sendDebugConList(QList<ConnectionInfo>)),debugWidget,SLOT(getConnectionList(QList<ConnectionInfo>)));
   96.69 -	debugWidget->connect(neighbourawareness,SIGNAL(traffic(int)),debugWidget,SLOT(getTraffic(int)));
   96.70 -	debugWidget->connect(neighbourawareness, SIGNAL(newConnectionStatus(int)), 	debugWidget, SLOT(getNewConnectionStatus(int)));
   96.71 -	debugWidget->connect(neighbourawareness, SIGNAL(newConnection(int)), 	debugWidget, SLOT(getNewConnection(int)));
   96.72 -	debugWidget->connect(neighbourawareness, SIGNAL(removedConnection(int)), debugWidget, SLOT(getRemovedConnection(int)));
   96.73 -#endif /*GUI*/
   96.74 -	delete conf;
   96.75 -	app.exec();
   96.76 -	return 0;
   96.77 -
   96.78 -}
    97.1 --- a/x86/2.7/main.h	Wed Jan 03 09:17:10 2007 +0000
    97.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    97.3 @@ -1,2 +0,0 @@
    97.4 -#include <QtGui>
    97.5 -
    98.1 --- a/x86/2.7/messageFile.cpp	Wed Jan 03 09:17:10 2007 +0000
    98.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    98.3 @@ -1,135 +0,0 @@
    98.4 -#include <messageFile.h>
    98.5 -#include <readFile.h>
    98.6 -
    98.7 -#ifdef Q_WS_X11
    98.8 -#include <sys/types.h>
    98.9 -#include <sys/stat.h> 
   98.10 -#endif
   98.11 -
   98.12 -#include <QTextStream>
   98.13 -
   98.14 -void MessageFile::set(QString fileName, int fileSize, int fileNo)
   98.15 -{
   98.16 -	msgFileName = fileName;
   98.17 -	msgFileSize = fileSize;
   98.18 -	msgFileNo = fileNo;
   98.19 -	mutex = new QMutex;
   98.20 -	dt = new QDateTime;
   98.21 -	ReadFile conf;
   98.22 -	storagePath=conf.getLogPath();
   98.23 -	dir.setPath(storagePath);
   98.24 -	//create the directory if it does not exist
   98.25 -	if(!dir.exists())
   98.26 -		dir.mkpath(dir.path());
   98.27 -
   98.28 -}
   98.29 -
   98.30 -
   98.31 -void MessageFile::saveMessage(QString& message)
   98.32 -{
   98.33 -	saveMessage(message, false);
   98.34 -}
   98.35 -
   98.36 -void MessageFile::saveMessage(QString& message, bool datetime)
   98.37 -{
   98.38 -	QString dateTime;
   98.39 -	if (datetime == true)
   98.40 -	{
   98.41 -		mutex->lock();
   98.42 -		(*dt) = dt->currentDateTime();
   98.43 -		dateTime = dt->toString("MM/dd/yyyy hh:mm:ss.zzz ");
   98.44 -		mutex->unlock();
   98.45 -	}
   98.46 -	dateTime += message;
   98.47 -	saveMessage(0, dateTime);
   98.48 -
   98.49 -}
   98.50 -
   98.51 -
   98.52 -void MessageFile::saveMessage(int type, QString& message)
   98.53 -{
   98.54 -//	qDebug(message);
   98.55 -	mutex->lock();
   98.56 -	int i = 0;
   98.57 -	bool exists;
   98.58 -	QFile* f;
   98.59 -	f = new QFile(dir.filePath(msgFileName));
   98.60 -	exists = f->exists();
   98.61 -	if (f->open(QIODevice::WriteOnly|QIODevice::Append) == true)
   98.62 -	{
   98.63 -		QTextStream stream(f);
   98.64 -		stream << message;
   98.65 -		stream << "\r\n";
   98.66 -		i = f->size();
   98.67 -//		qDebug(QString("MessageFile size: %1 %2\r\n").arg(i).arg(msgFileSize));
   98.68 -		f->close();
   98.69 -#ifdef Q_WS_X11
   98.70 -		if (exists == false)
   98.71 -			chmod(msgFileName.toAscii(), S_IROTH|S_IWOTH|S_IRGRP|S_IWGRP|S_IRUSR|S_IWUSR);
   98.72 -#endif
   98.73 -	}
   98.74 -	delete f;
   98.75 -	if (i > msgFileSize)
   98.76 -	{
   98.77 -		QDir dir;
   98.78 -		QString fileNameOld;
   98.79 -		QString fileNameNew;
   98.80 -		i = msgFileNo;
   98.81 -		while (i > 1)
   98.82 -		{
   98.83 -			fileNameOld = msgFileName;
   98.84 -			fileNameOld += QString(".%1").arg(i);
   98.85 -			dir.remove(fileNameOld);
   98.86 -			i--;
   98.87 -			fileNameNew = msgFileName;
   98.88 -			fileNameNew += QString(".%1").arg(i);
   98.89 -			dir.rename(fileNameNew, fileNameOld);
   98.90 -		}
   98.91 -		fileNameOld = msgFileName;
   98.92 -		fileNameOld += QString(".%1").arg(i);
   98.93 -		dir.remove(fileNameOld);
   98.94 -		i--;
   98.95 -		fileNameNew = msgFileName;
   98.96 -		dir.rename(fileNameNew, fileNameOld);
   98.97 -	}
   98.98 -	mutex->unlock();
   98.99 -}
  98.100 -
  98.101 -void MessageFile::loadList(QStringList& sl, unsigned int maxItemNo)
  98.102 -{
  98.103 -	mutex->lock();
  98.104 -	sl.clear();
  98.105 -	QString line;
  98.106 -	QFile* f;
  98.107 -	f = new QFile(msgFileName);
  98.108 -	if (f->open(QIODevice::ReadOnly) == true)
  98.109 -	{
  98.110 -		QTextStream stream(f);
  98.111 -		while ((!stream.atEnd()) && (maxItemNo > 0))
  98.112 -		{
  98.113 -			sl.prepend(stream.readLine());
  98.114 -			maxItemNo--;
  98.115 -		}
  98.116 -		f->close();
  98.117 -	}
  98.118 -	mutex->unlock();
  98.119 -}
  98.120 -
  98.121 -void MessageFile::addLog(int indet,QString message)
  98.122 -{
  98.123 -	QString dateTime;
  98.124 -	QString id;
  98.125 -	id.sprintf(" %03d>> ", indet);
  98.126 -	if (1)
  98.127 -	{
  98.128 -		mutex->lock();
  98.129 -		(*dt) = dt->currentDateTime();
  98.130 -		dateTime = dt->toString("MM/dd/yyyy hh:mm:ss.zzz ");
  98.131 -		mutex->unlock();
  98.132 -	}
  98.133 -	dateTime += id;
  98.134 -	dateTime += message;
  98.135 -	saveMessage(0, dateTime);
  98.136 -
  98.137 -}
  98.138 -
    99.1 --- a/x86/2.7/messageFile.h	Wed Jan 03 09:17:10 2007 +0000
    99.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    99.3 @@ -1,69 +0,0 @@
    99.4 -#ifndef MESSAGEFILE_H
    99.5 -#define MESSAGEFILE_H
    99.6 -
    99.7 -#include <qobject.h>
    99.8 -#include <qfile.h>
    99.9 -#include <qdir.h>
   99.10 -#include <qmutex.h>
   99.11 -#include <qstringlist.h>
   99.12 -#include <qdatetime.h>
   99.13 -
   99.14 -//! Handles writing and reading logfiles.
   99.15 -/*!
   99.16 - * 
   99.17 - */
   99.18 -class MessageFile : public QObject
   99.19 -{
   99.20 -	Q_OBJECT
   99.21 -
   99.22 -public:
   99.23 -	//! Sets the parameters for message file storage.
   99.24 -	/*!
   99.25 -	 * @param fileName the name of the file(s) to store messages in.
   99.26 -	 * @param fileSize when a message file grows to this size, a new file 
   99.27 -	 * is created.
   99.28 -	 * @param fileNo the value the file number counter should be 
   99.29 -	 * initialized to.
   99.30 -	 */
   99.31 -	virtual void set(QString fileName, int fileSize, int fileNo);
   99.32 -	
   99.33 -	//! Reads a list of messages from the message file.
   99.34 -	/*!
   99.35 -	 * @param sl the stringlist where the result is put.
   99.36 -	 * @param maxItemNo the maximum number of items to read from the file.
   99.37 -	 */
   99.38 -	virtual void loadList(QStringList& sl, unsigned int maxItemNo = 0xFFFFFFFF);
   99.39 -	void MessageFile::addLog(int indet,QString message);
   99.40 -
   99.41 -public slots:
   99.42 -	//! Saves a message to file. (Internal?) 
   99.43 -	/*!
   99.44 -	 * A new file is created if the old one gets too big.
   99.45 -	 * @param type not used.
   99.46 -	 * @param message the message to be saved to file.
   99.47 -	 */
   99.48 -	virtual void saveMessage(int type, QString& message);
   99.49 -	
   99.50 -	//! Saves a message to file without a timestamp.
   99.51 -	virtual void saveMessage(QString& message);
   99.52 -	
   99.53 -	//! Saves a message to disk with optional timestamp.
   99.54 -	/*!
   99.55 -	 * @param message the message to save to file.
   99.56 -	 * @param datetime if true the current date and time (MM/dd/yyyy 
   99.57 -	 * hh:mm:ss:zzz) will be written along with the message. If false, 
   99.58 -	 * no timestamp is written to file along with the message.
   99.59 -	 */
   99.60 -	virtual void saveMessage(QString& message, bool datetime);
   99.61 -
   99.62 -protected:
   99.63 -	QString msgFileName;
   99.64 -	int msgFileSize;
   99.65 -	int msgFileNo;
   99.66 -	QMutex* mutex;
   99.67 -	QDateTime* dt;
   99.68 -	QString storagePath;
   99.69 -	QDir dir;
   99.70 -};
   99.71 -
   99.72 -#endif
   100.1 --- a/x86/2.7/msgReadWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
   100.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   100.3 @@ -1,113 +0,0 @@
   100.4 -#include <QtGui>
   100.5 -#include <msgReadWidget.h>
   100.6 -#include <readFile.h>
   100.7 -
   100.8 -
   100.9 -
  100.10 -MsgReadWidget::MsgReadWidget(NodeManager* nodeMng,BundleManager* bundleMng,QWidget *parent)
  100.11 -        : QWidget(parent)
  100.12 -{
  100.13 -	nodeManager = nodeMng;
  100.14 -	bundleManager = bundleMng;
  100.15 -
  100.16 -	dst = new QLineEdit();
  100.17 -	dst->setMaxLength(3); 
  100.18 -	//Options
  100.19 -	QLabel *labelOpt = new QLabel(this);
  100.20 -    labelOpt->setText("Received messages:");
  100.21 -	opt = new QLineEdit();
  100.22 -	opt->setMaxLength(3); 
  100.23 -	//sourceString
  100.24 -	QLabel *srcStr = new QLabel(this);
  100.25 -    srcStr->setText("Content:");
  100.26 -	srcLine = new QLineEdit();
  100.27 -	//destinationString
  100.28 -//	QLabel *dstStr = new QLabel(this);
  100.29 -   // dstStr->setText("DestinationString");
  100.30 -	dstLine = new QLineEdit();
  100.31 -	
  100.32 -	//sendGroup->addWidget(dst, 1, 1);
  100.33 -	//sendGroup->addWidget(combo, 2, 1);
  100.34 -
  100.35 -	//sendGroup->addWidget(labelDst, 0, 1);
  100.36 -	//sendGroup->addWidget(dstLine, 3, 1);
  100.37 -
  100.38 -	//sendGroup->addWidget(labelOpt, 0, 2);
  100.39 -	//sendGroup->addWidget(opt, 1, 2);
  100.40 -
  100.41 -	//sendGroup->addWidget(labelMsg, 4, 0);
  100.42 - 	//sendGroup->addWidget(line, 5, 0, 1, 3);
  100.43 -    //sendGroup->addWidget(send, 3, 2);
  100.44 -	 //   sendGroup->addWidget(file, 6, 2);
  100.45 -	///////////////////////////////////////////////////
  100.46 -	readText = new QTextBrowser(this);
  100.47 -	msgList = new QListWidget;
  100.48 -	//Define final layout
  100.49 -	QVBoxLayout *layout = new QVBoxLayout;
  100.50 -	layout->addWidget(labelOpt);
  100.51 -	layout->addWidget(msgList);
  100.52 -	layout->addWidget(srcStr);
  100.53 -	layout->addWidget(readText);
  100.54 -    setLayout(layout);
  100.55 -	//Define connections
  100.56 -//	connect(line, SIGNAL(returnPressed ()(QString)),label,SLOT(setText(QString)));
  100.57 -	//Prepare update timer
  100.58 -	timer = new QTimer();
  100.59 -	connect(timer, SIGNAL(timeout()), this, SLOT(updateLists()));
  100.60 -	connect(msgList, SIGNAL(itemClicked (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
  100.61 -	connect(msgList, SIGNAL(itemDoubleClicked  (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
  100.62 -
  100.63 -
  100.64 -	timer->start(5000);
  100.65 -	firstTime=0;
  100.66 -	ReadFile conf;
  100.67 -	ackOption=conf.getUseACKS();
  100.68 -	QString msgPath=conf.getMsgPath();
  100.69 -	dir.setPath(msgPath);
  100.70 -	//create the dir if it does not exist
  100.71 -	if(!dir.exists())
  100.72 -		dir.mkpath(dir.path());
  100.73 -	sourceId =conf.getNodeId();
  100.74 -	sourceStr = conf.getNodeName();
  100.75 -
  100.76 -}
  100.77 -
  100.78 -void MsgReadWidget::getBundle(Bundle newBundle)
  100.79 -{
  100.80 -	label->setText(newBundle.getData());
  100.81 -}
  100.82 -
  100.83 -void MsgReadWidget::updateLists()
  100.84 -{
  100.85 -	QList<QString> list;
  100.86 -	list = dir.entryList();
  100.87 -	msgList->clear();
  100.88 -	for (ushort i = 0; i < list.size(); ++i) 
  100.89 -	{
  100.90 -		QListWidgetItem *newItem = new QListWidgetItem;
  100.91 -		newItem->setText(list.at(i));
  100.92 -		msgList->insertItem(i, newItem);
  100.93 -	}
  100.94 -}
  100.95 -
  100.96 -void MsgReadWidget::showMsg(QListWidgetItem * item)
  100.97 -{
  100.98 -	QString fileName;
  100.99 -	if(item!=NULL)
 100.100 -	{
 100.101 -		fileName = item->text();
 100.102 -		if(fileName.size()>2)
 100.103 -		{
 100.104 -			QFile file(dir.filePath(fileName));
 100.105 -			if(file.open(QIODevice::ReadOnly))
 100.106 -			{
 100.107 -				QByteArray data;
 100.108 -				data=file.readAll();
 100.109 -				readText->clear();
 100.110 -				readText->insertPlainText(data);
 100.111 -				file.close();
 100.112 -			}
 100.113 -		}
 100.114 -	}
 100.115 -}
 100.116 -
   101.1 --- a/x86/2.7/msgReadWidget.h	Wed Jan 03 09:17:10 2007 +0000
   101.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   101.3 @@ -1,49 +0,0 @@
   101.4 -#ifndef MSGREADWIDGET_H
   101.5 -#define MSGREADWIDGET_H
   101.6 -#include <QtGui>
   101.7 -#include <bundle.h>
   101.8 -#include <nodeManager.h>
   101.9 -#include <bundleManager.h>
  101.10 -
  101.11 -class MsgReadWidget : public QWidget
  101.12 -{
  101.13 -
  101.14 -	Q_OBJECT
  101.15 -
  101.16 -private:
  101.17 -		
  101.18 -	QLineEdit *label;
  101.19 -
  101.20 -	
  101.21 -public:
  101.22 -	QComboBox *combo;
  101.23 -	QTextBrowser *readText;
  101.24 -	QFileDialog *file;
  101.25 -	QLineEdit *src;
  101.26 -	QLineEdit *dst;
  101.27 -	QLineEdit *opt;
  101.28 -	QTextEdit *line;
  101.29 -	QLineEdit *srcLine;
  101.30 -	QLineEdit *dstLine;
  101.31 -	MsgReadWidget(NodeManager*,BundleManager*,QWidget *parent = 0);
  101.32 -	NodeManager* nodeManager;
  101.33 -	BundleManager* bundleManager;
  101.34 -	QTimer* timer;
  101.35 -	bool firstTime;
  101.36 -	QListWidget* msgList;
  101.37 -	QDir dir;
  101.38 -	int sourceId;
  101.39 -	int ackOption;
  101.40 -	QString sourceStr;
  101.41 -
  101.42 -signals:
  101.43 -	
  101.44 -public slots:
  101.45 -	void getBundle(Bundle newBundle);
  101.46 -	void updateLists();
  101.47 -	void showMsg(QListWidgetItem *);
  101.48 -};
  101.49 -
  101.50 -#endif
  101.51 -
  101.52 -
   102.1 --- a/x86/2.7/msgWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
   102.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   102.3 @@ -1,233 +0,0 @@
   102.4 -#include <QtGui>
   102.5 -#include <msgWidget.h>
   102.6 -#include <readFile.h>
   102.7 -
   102.8 -
   102.9 -
  102.10 -MsgWidget::MsgWidget(NodeManager* nodeMng,BundleManager* bundleMng,QWidget *parent)
  102.11 -        : QWidget(parent)
  102.12 -{
  102.13 -#ifndef PDAGUI
  102.14 -	setFixedSize(990, 660);
  102.15 -#endif //PDAGUI
  102.16 -	nodeManager = nodeMng;
  102.17 -	bundleManager = bundleMng;
  102.18 -	connect(nodeMng,SIGNAL(updatedNodeList(NodeManager*)),this,SLOT(updatedNodeList(NodeManager*)));
  102.19 -
  102.20 -#ifndef PDAGUI
  102.21 -	//Send message group
  102.22 -	QGroupBox *sendBox = new QGroupBox("Send message");
  102.23 -#endif //PDAGUI
  102.24 -    //Source
  102.25 -    QLabel *labelSrc = new QLabel(this);
  102.26 -    labelSrc->setText("Select destination:");
  102.27 -	src = new QLineEdit();
  102.28 -	src->setMaxLength(3); 
  102.29 -	//Destination
  102.30 -	QLabel *labelDst = new QLabel(this);
  102.31 -    labelDst->setText("Send message:");
  102.32 -	combo = new QComboBox(this);
  102.33 -	//Message
  102.34 -	QLabel *labelMsg = new QLabel(this);
  102.35 -    labelMsg->setText("Type message here:");
  102.36 -	line = new QTextEdit();
  102.37 -
  102.38 -#ifndef PDAGUI
  102.39 -	dst = new QLineEdit();
  102.40 -	dst->setMaxLength(3); 
  102.41 -	//Options
  102.42 -	QLabel *labelOpt = new QLabel(this);
  102.43 -    labelOpt->setText("Received messages:");
  102.44 -	opt = new QLineEdit();
  102.45 -	opt->setMaxLength(3); 
  102.46 -	//sourceString
  102.47 -	QLabel *srcStr = new QLabel(this);
  102.48 -    srcStr->setText("Content:");
  102.49 -	srcLine = new QLineEdit();
  102.50 -	//destinationString
  102.51 -	QLabel *dstStr = new QLabel(this);
  102.52 -   // dstStr->setText("DestinationString");
  102.53 -	dstLine = new QLineEdit();
  102.54 -#endif //PDAGUI
  102.55 -	//Send
  102.56 -	QPushButton *send= new QPushButton("Send", this);
  102.57 -	//File
  102.58 -	//QFileDialog *file = new QFileDialog(this);	
  102.59 -	//Final grid layout
  102.60 -    QGridLayout *sendGroup = new QGridLayout;
  102.61 -	sendGroup->addWidget(labelSrc, 0, 0);
  102.62 -    sendGroup->addWidget(combo, 1, 0);
  102.63 -
  102.64 -	sendGroup->addWidget(labelDst, 0, 1);
  102.65 -    sendGroup->addWidget(send, 1, 1);
  102.66 -	sendGroup->addWidget(labelMsg, 2, 0);
  102.67 -	sendGroup->addWidget(line, 3, 0, 1, 2);
  102.68 -
  102.69 -	//sendGroup->addWidget(dst, 1, 1);
  102.70 -	//sendGroup->addWidget(combo, 2, 1);
  102.71 -
  102.72 -	//sendGroup->addWidget(labelDst, 0, 1);
  102.73 -	//sendGroup->addWidget(dstLine, 3, 1);
  102.74 -
  102.75 -	//sendGroup->addWidget(labelOpt, 0, 2);
  102.76 -	//sendGroup->addWidget(opt, 1, 2);
  102.77 -
  102.78 -	//sendGroup->addWidget(labelMsg, 4, 0);
  102.79 - 	//sendGroup->addWidget(line, 5, 0, 1, 3);
  102.80 -    //sendGroup->addWidget(send, 3, 2);
  102.81 -	 //   sendGroup->addWidget(file, 6, 2);
  102.82 -#ifdef PDAGUI
  102.83 -	setLayout(sendGroup);
  102.84 -#else
  102.85 -	sendBox->setFixedSize(450, 620);
  102.86 -	sendBox->setLayout(sendGroup);
  102.87 -#endif //PDAGUI
  102.88 -	///////////////////////////////////////////////////
  102.89 -#ifndef PDAGUI
  102.90 -	QGroupBox *readBox = new QGroupBox("Read message");
  102.91 -	readText = new QTextBrowser(this);
  102.92 -	msgList = new QListWidget;
  102.93 -	//Final grid layout
  102.94 -    QGridLayout *readGroup = new QGridLayout;
  102.95 -	readGroup->addWidget(labelOpt, 0, 0);
  102.96 -	readGroup->addWidget(msgList, 1, 0);
  102.97 -	readGroup->addWidget(srcStr, 2, 0);
  102.98 -	readGroup->addWidget(readText, 3, 0);
  102.99 - 	readBox->setFixedSize(450, 620);
 102.100 -	readBox->setLayout(readGroup);
 102.101 -	Bundle *msg = new Bundle; //is this used for anything???
 102.102 -	//Define final layout
 102.103 -	QVBoxLayout *layout = new QVBoxLayout;
 102.104 -	layout->setDirection(QBoxLayout::LeftToRight);
 102.105 -    layout->addWidget(sendBox);    
 102.106 -    layout->addWidget(readBox);    
 102.107 -    setLayout(layout);
 102.108 -	//Define connections
 102.109 -//	connect(line, SIGNAL(returnPressed ()(QString)),label,SLOT(setText(QString)));
 102.110 -#endif //PDAGUI
 102.111 -	//Prepare update timer
 102.112 -	timer = new QTimer();
 102.113 -#ifndef PDAGUI
 102.114 -	connect(timer, SIGNAL(timeout()), this, SLOT(updateLists()));
 102.115 -	connect(msgList, SIGNAL(itemClicked (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
 102.116 -	connect(msgList, SIGNAL(itemDoubleClicked  (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
 102.117 -#endif //PDAGUI
 102.118 -	connect(nodeManager, SIGNAL(updatedNodeList(NodeManager*)), this, SLOT(updatedNodeList(NodeManager* )));
 102.119 -
 102.120 -	bool b = connect(send,SIGNAL(clicked(void)),this, SLOT(composeBundle(void)) );
 102.121 -
 102.122 -
 102.123 -
 102.124 -	timer->start(5000);
 102.125 -	firstTime=0;
 102.126 -	ReadFile conf;
 102.127 -	ackOption=conf.getUseACKS();
 102.128 -	QString msgPath=conf.getMsgPath();
 102.129 -	dir.setPath(msgPath);
 102.130 -	//create the dir if it does not exist
 102.131 -	if(!dir.exists())
 102.132 -		dir.mkpath(dir.path());
 102.133 -	sourceId =conf.getNodeId();
 102.134 -	sourceStr = conf.getNodeName();
 102.135 -
 102.136 -}
 102.137 -
 102.138 -void MsgWidget::updatedNodeList(NodeManager* ptr)
 102.139 -{
 102.140 -	//First time we update combobox
 102.141 -	QList <Node> nodeList;
 102.142 -	nodeList = nodeManager->getNodeList();
 102.143 -	combo->clear();
 102.144 -	for (ushort i = 0; i < nodeList.size(); ++i) 
 102.145 -	{
 102.146 -			combo->insertItem(i,nodeList.at(i).nodeName);
 102.147 -	}
 102.148 -	firstTime=1;
 102.149 -
 102.150 -}
 102.151 -
 102.152 -
 102.153 -void MsgWidget::getBundle(Bundle newBundle)
 102.154 -{
 102.155 -	label->setText(newBundle.getData());
 102.156 -}
 102.157 -
 102.158 -void MsgWidget::updateLists()
 102.159 -{
 102.160 -	if(firstTime==0)
 102.161 -	{
 102.162 -		//First time we update combobox
 102.163 -		QList <Node> nodeList;
 102.164 -		nodeList = nodeManager->getNodeList();
 102.165 -		combo->clear();
 102.166 -		for (ushort i = 0; i < nodeList.size(); ++i) 
 102.167 -		{
 102.168 -			combo->insertItem(i,nodeList.at(i).nodeName);
 102.169 -		}
 102.170 -		firstTime=1;
 102.171 -	}
 102.172 -#ifndef PDAGUI
 102.173 -	QList<QString> list;
 102.174 -	list = dir.entryList();
 102.175 -	msgList->clear();
 102.176 -	for (ushort i = 0; i < list.size(); ++i) 
 102.177 -	{
 102.178 -		QListWidgetItem *newItem = new QListWidgetItem;
 102.179 -		newItem->setText(list.at(i));
 102.180 -		msgList->insertItem(i, newItem);
 102.181 -	}
 102.182 -#endif //PDAGUI
 102.183 -}
 102.184 -
 102.185 -void MsgWidget::showMsg(QListWidgetItem * item)
 102.186 -{
 102.187 -	QString fileName;
 102.188 -	if(item!=NULL)
 102.189 -	{
 102.190 -	fileName = item->text();
 102.191 -	if(fileName.size()>2)
 102.192 -	{
 102.193 -	
 102.194 -	QFile file(dir.filePath(fileName));
 102.195 -	if(file.open(QIODevice::ReadOnly))
 102.196 -	{
 102.197 -		QByteArray data;
 102.198 -		data=file.readAll();
 102.199 -		readText->clear();
 102.200 -		readText->insertPlainText(data);
 102.201 -		file.close();
 102.202 -	}
 102.203 -	}
 102.204 -}}
 102.205 -
 102.206 -
 102.207 -
 102.208 -
 102.209 -
 102.210 -void MsgWidget::composeBundle()
 102.211 -{
 102.212 -	Bundle newBundle;
 102.213 -	QString stringData;// = line->text();
 102.214 -	QByteArray data = line->toPlainText().toAscii();
 102.215 -	if(combo->count()>0)
 102.216 -	{
 102.217 -
 102.218 -		int dstId=nodeManager->nodeList.at(combo->currentIndex()).nodeId;
 102.219 -		QString dstStr = combo->itemText(combo->currentIndex()); 
 102.220 -		int option;
 102.221 -		option=0x04;
 102.222 -		//If acking is enabled
 102.223 -		if(ackOption==1)
 102.224 -		{
 102.225 -			//We set the ACKOption bit and set the ACK bit 
 102.226 -			option=option|0x01;
 102.227 -		}
 102.228 -		newBundle.setContent(bundleManager->getSeq(),sourceId,dstId,data,option,sourceStr.toAscii(),dstStr.toAscii());
 102.229 -		emit sendBundle(newBundle);
 102.230 -		 QMessageBox::information(this, "PRoPHET notSoIM",
 102.231 -		"Message sent!\n");
 102.232 -	}
 102.233 -
 102.234 -}
 102.235 -
 102.236 -
   103.1 --- a/x86/2.7/msgWidget.h	Wed Jan 03 09:17:10 2007 +0000
   103.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   103.3 @@ -1,52 +0,0 @@
   103.4 -#ifndef MSGWIDGET_H
   103.5 -#define MSGWIDGET_H
   103.6 -#include <QtGui>
   103.7 -#include <bundle.h>
   103.8 -#include <nodeManager.h>
   103.9 -#include <bundleManager.h>
  103.10 -
  103.11 -class MsgWidget : public QWidget
  103.12 -{
  103.13 -
  103.14 -	Q_OBJECT
  103.15 -
  103.16 -private:
  103.17 -		
  103.18 -	QLineEdit *label;
  103.19 -
  103.20 -	
  103.21 -public:
  103.22 -	QComboBox *combo;
  103.23 -	QTextBrowser *readText;
  103.24 -	QFileDialog *file;
  103.25 -	QLineEdit *src;
  103.26 -	QLineEdit *dst;
  103.27 -	QLineEdit *opt;
  103.28 -	QTextEdit *line;
  103.29 -	QLineEdit *srcLine;
  103.30 -	QLineEdit *dstLine;
  103.31 -	MsgWidget(NodeManager*,BundleManager*,QWidget *parent = 0);
  103.32 -	NodeManager* nodeManager;
  103.33 -	BundleManager* bundleManager;
  103.34 -	QTimer* timer;
  103.35 -	bool firstTime;
  103.36 -	QListWidget* msgList;
  103.37 -	QDir dir;
  103.38 -	int sourceId;
  103.39 -	int ackOption;
  103.40 -	QString sourceStr;
  103.41 -
  103.42 -signals:
  103.43 -	void sendBundle(Bundle);
  103.44 -	
  103.45 -public slots:
  103.46 -        void composeBundle();
  103.47 -	void getBundle(Bundle newBundle);
  103.48 -	void updateLists();
  103.49 -	void updatedNodeList(NodeManager* ptr);
  103.50 -	void showMsg(QListWidgetItem *);
  103.51 -};
  103.52 -
  103.53 -#endif
  103.54 -
  103.55 -
   104.1 --- a/x86/2.7/neighbourAwareness.cpp	Wed Jan 03 09:17:10 2007 +0000
   104.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   104.3 @@ -1,407 +0,0 @@
   104.4 -#include <QtCore>
   104.5 -#include <QtNetwork>
   104.6 -#include <connection.h>
   104.7 -#include <dataPacket.h>
   104.8 -#include <neighbourAwareness.h>
   104.9 -#include <stdio.h>
  104.10 -#include <readFile.h>
  104.11 -#include <main.h>
  104.12 -#include <messageFile.h>
  104.13 -#ifdef Q_WS_X11
  104.14 -#include <sys/types.h>
  104.15 -#include <sys/stat.h> 
  104.16 -#endif
  104.17 -//extern MessageFile *log;
  104.18 -
  104.19 -#define VERSION 6
  104.20 -#define HELLO_DATAGRAM "PROPHET"
  104.21 -//#define ALIVE 15
  104.22 -#define TERMINATOR "yxxyyaxayax"
  104.23 -#define TERMINATOR2 "zsdfgfdgfdg"
  104.24 -struct DatagramHeader
  104.25 -{
  104.26 -	qint32 version;
  104.27 -	qint32 lenght;
  104.28 -	qint32 checkSum;
  104.29 -	qint32 nr;
  104.30 -};
  104.31 -
  104.32 -ConnectionInfo::ConnectionInfo(QObject *parent)
  104.33 -{
  104.34 -	ReadFile conf;
  104.35 -	alive=conf.getAlive();
  104.36 -	data.clear();
  104.37 -}
  104.38 -
  104.39 -
  104.40 -ConnectionInfo& ConnectionInfo::operator=(const ConnectionInfo& other)
  104.41 -{
  104.42 - id = other.id;
  104.43 - alive = other.alive;
  104.44 - ip = other.ip;
  104.45 - data = other.data;
  104.46 - tcpSocket = other.tcpSocket;
  104.47 - isClient = other.isClient;
  104.48 - conptr= other.conptr;
  104.49 -
  104.50 - return *this;
  104.51 -}
  104.52 -
  104.53 -ConnectionInfo::ConnectionInfo(const ConnectionInfo& other)
  104.54 -{
  104.55 - id = other.id;
  104.56 - alive = other.alive;
  104.57 - ip = other.ip;
  104.58 - data = other.data;
  104.59 - tcpSocket = other.tcpSocket;
  104.60 - isClient = other.isClient;
  104.61 - conptr= other.conptr;
  104.62 -}	
  104.63 -
  104.64 -
  104.65 -NeighAwareServer::NeighAwareServer(QObject* parent) : QTcpServer(parent)
  104.66 -{
  104.67 -}
  104.68 -
  104.69 -void NeighAwareServer::incomingConnection(int socketDescriptor)
  104.70 -{ 
  104.71 -	QTcpSocket* newSocket = new QTcpSocket(this);
  104.72 -	newSocket->setSocketDescriptor(socketDescriptor);
  104.73 -	bool permitNewConnection = false;
  104.74 -	emit newConnectionEstablished(newSocket, permitNewConnection);
  104.75 -	if (permitNewConnection == false)
  104.76 -	{
  104.77 -		newSocket->deleteLater();
  104.78 -		newSocket->disconnectFromHost();
  104.79 -	}
  104.80 -}	
  104.81 -	
  104.82 -
  104.83 -NeighAware::NeighAware(BundleManager* bundleMng, NodeManager* nodeMng)
  104.84 -{
  104.85 -	nodeManager = nodeMng;
  104.86 -	bundleManager = bundleMng;
  104.87 -	terminator.clear();
  104.88 -	terminator.append(TERMINATOR);
  104.89 -	terminator.append(TERMINATOR2);
  104.90 -
  104.91 -	file = new ReadFile;
  104.92 -	myip=file->getNodeIp();
  104.93 -	myip2=file->getNodeIp2();
  104.94 -	broadcast=file->getBroadcast();
  104.95 -	nodeId=file->getNodeId();
  104.96 -	nodeName=file->getNodeName();
  104.97 -	ALIVE=file->getAlive();
  104.98 -	numid = 0;
  104.99 -
 104.100 -
 104.101 -
 104.102 -	tcpServer = new NeighAwareServer(this);
 104.103 -	bool b = connect(tcpServer, SIGNAL(newConnectionEstablished(QTcpSocket*, bool&)), this, SLOT(newConnectionEstablished(QTcpSocket*, bool&)));
 104.104 -	tcpServer->listen(myip,30001);
 104.105 -
 104.106 -	udpSocketp = new QUdpSocket(this);
 104.107 -	udpSocketp->bind(30000);
 104.108 -    connect(udpSocketp, SIGNAL(readyRead()),this, SLOT(processPingDatagrams()));
 104.109 -	
 104.110 -	broadcastTimer = new QTimer(this);
 104.111 -	connect(broadcastTimer, SIGNAL(timeout()), this, SLOT(broadcastDatagram()));
 104.112 -	int timer =file->getBroadcastTimer();
 104.113 -	broadcastTimer->start(timer);
 104.114 -
 104.115 -	//DEBUG
 104.116 -	log = new MessageFile;
 104.117 -	log->set("connections.log", 1000000, 5);
 104.118 -}
 104.119 -
 104.120 -void NeighAware::newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection)
 104.121 -{ 
 104.122 -	QHostAddress ip;
 104.123 -	ip = newSocket->peerAddress();
 104.124 -	QString bla = ip.toString();
 104.125 -	int index=-1;
 104.126 -	for(int i=0;i<connectionlist.size();i++)
 104.127 -	{
 104.128 -		QString bla = ip.toString();
 104.129 -		if(ip == connectionlist.at(i).ip)
 104.130 -			index=i;
 104.131 -	}
 104.132 -	if(index==-1)
 104.133 -	{
 104.134 -		newSocket->connect(newSocket,SIGNAL(readyRead()),this,SLOT(processPendingDatagrams()));
 104.135 -		newSocket->connect(newSocket,SIGNAL(disconnected()),this,SLOT(stateChanged()));
 104.136 -		newSocket->connect(newSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(errorDecode(QAbstractSocket::SocketError)));
 104.137 -		//We add a new connection to the list
 104.138 -		ConnectionInfo connectioninfo;
 104.139 -		//Adding
 104.140 -		connectioninfo.conptr = new Connection(numid,file->getNodeId(),file->getNodeName(),nodeManager,bundleManager,this);
 104.141 -		newSocket->connect(connectioninfo.conptr,SIGNAL(sendDataPacket(DataPacket)),this,SLOT(sendDatagram(DataPacket)));
 104.142 -		newSocket->connect(connectioninfo.conptr,SIGNAL(newConnectionStatus(int)),this,SLOT(getNewConnectionStatus(int)));
 104.143 -
 104.144 -		///
 104.145 -		connectioninfo.ip=ip;
 104.146 -		connectioninfo.id=numid;
 104.147 -		connectioninfo.alive=ALIVE;
 104.148 -		connectioninfo.tcpSocket = newSocket;
 104.149 -		connectioninfo.isClient = false;
 104.150 -
 104.151 -
 104.152 -   			if(connectioninfo.tcpSocket->waitForConnected(500))
 104.153 -			{
 104.154 -			    QHostAddress tmp=connectioninfo.ip;
 104.155 -    			    QString logString;
 104.156 -			    logString.append("New connection(S):");	
 104.157 -			    logString.append(tmp.toString());
 104.158 -			    log->addLog(0,logString);
 104.159 -			    connectionlist << connectioninfo;
 104.160 -				emit newConnection(connectioninfo.id);
 104.161 -			}
 104.162 -			else
 104.163 -			{
 104.164 -			    QHostAddress tmp=connectioninfo.ip;
 104.165 -			    QString logString;
 104.166 -			    logString.append("Drop connection(S):");	
 104.167 -			    logString.append(tmp.toString());
 104.168 -			    log->addLog(0,logString);
 104.169 -			    delete connectioninfo.conptr;
 104.170 -			    delete connectioninfo.tcpSocket;
 104.171 -			}
 104.172 -
 104.173 -		
 104.174 -		numid++;
 104.175 -		permitNewConnection=true;
 104.176 -		sendDebugConList(connectionlist);
 104.177 -	}
 104.178 -}
 104.179 -
 104.180 -void NeighAware::broadcastDatagram()
 104.181 -{  	
 104.182 -	QByteArray datagram=HELLO_DATAGRAM;
 104.183 -	QString debug = broadcast.toString();
 104.184 - 	udpSocketp->writeDatagram(datagram.data(), datagram.size(), broadcast, 30000);
 104.185 -	emit traffic(datagram.size());
 104.186 -	for(int i=0;i<connectionlist.count();i++)
 104.187 -	{
 104.188 -		connectionlist[i].alive--;
 104.189 -		if(connectionlist[i].alive<=0)
 104.190 -		{
 104.191 -			
 104.192 -			connectionlist[i].tcpSocket->disconnectFromHost();
 104.193 -			emit removedConnection(connectionlist[i].id);
 104.194 -			delete connectionlist[i].tcpSocket;
 104.195 -			delete connectionlist[i].conptr;
 104.196 -			//Emiting removed connection to GUI
 104.197 -			emit removedConnection(connectionlist[i].id);
 104.198 -			connectionlist.removeAt(i);	
 104.199 -			//Emiting empty list to GUI
 104.200 -			if(connectionlist.size()==0)
 104.201 -				emit newConnectionStatus(0);
 104.202 -			sendDebugConList(connectionlist);
 104.203 -		}
 104.204 -		sendDebugConList(connectionlist);
 104.205 -	}
 104.206 -	QFile f("connections.txt");
 104.207 -	if (f.open(QIODevice::WriteOnly) == true)
 104.208 -	{
 104.209 -		for(int i=0;i<connectionlist.size();i++)
 104.210 -		{
 104.211 -			f.write(connectionlist[i].ip.toString().toAscii());
 104.212 -			if (connectionlist[i].isClient == true)
 104.213 -				f.write(QString("\tclient\r\n").toAscii());
 104.214 -			else
 104.215 -				f.write(QString("\tserver\r\n").toAscii());
 104.216 -		}
 104.217 -		f.close();
 104.218 -	}
 104.219 -
 104.220 - }
 104.221 -
 104.222 -void NeighAware::processPingDatagrams()
 104.223 -{
 104.224 -	while (udpSocketp->hasPendingDatagrams()) 
 104.225 -	{
 104.226 -        QByteArray datagram;
 104.227 -		
 104.228 -		quint16 port;
 104.229 -		QHostAddress ip;
 104.230 -		bool insert=true;
 104.231 -		datagram.resize(udpSocketp->pendingDatagramSize());
 104.232 -        udpSocketp->readDatagram(datagram.data(), datagram.size(), &ip, &port);
 104.233 -		QString bla = ip.toString();
 104.234 -		//Is the node in the list?
 104.235 -		if ((ip==myip) || (ip==myip2))
 104.236 -		{
 104.237 -			insert=false;
 104.238 -		}
 104.239 -		else
 104.240 -		{
 104.241 -			for(int i=0;i<connectionlist.size();i++)
 104.242 -			{
 104.243 -			 
 104.244 -				if(connectionlist.at(i).ip ==ip)
 104.245 -				{ 
 104.246 -					insert=false;
 104.247 -				}
 104.248 -			}
 104.249 -		}
 104.250 -		//If not we insert it.
 104.251 -		if(insert==true)
 104.252 -		{
 104.253 -			QTcpSocket* newSocket = new QTcpSocket(this);
 104.254 -			newSocket->connect(newSocket,SIGNAL(readyRead()),this,SLOT(processPendingDatagrams()));
 104.255 -			newSocket->connect(newSocket,SIGNAL(disconnected()),this,SLOT(stateChanged()));
 104.256 -			newSocket->connect(newSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(errorDecode(QAbstractSocket::SocketError)));
 104.257 -			newSocket->connectToHost(ip, 30001);
 104.258 -			//We add a new connection to the list
 104.259 -			ConnectionInfo connectioninfo;
 104.260 -			//Adding
 104.261 -			connectioninfo.conptr = new Connection(numid,file->getNodeId(),file->getNodeName(),nodeManager,bundleManager,this);
 104.262 -			newSocket->connect(connectioninfo.conptr,SIGNAL(sendDataPacket(DataPacket)),this,SLOT(sendDatagram(DataPacket)));
 104.263 -			newSocket->connect(connectioninfo.conptr,SIGNAL(newConnectionStatus(int)),this,SLOT(getNewConnectionStatus(int)));
 104.264 -
 104.265 -			///
 104.266 -			connectioninfo.ip=ip;
 104.267 -			connectioninfo.id=numid;
 104.268 -			connectioninfo.alive=ALIVE;
 104.269 -			connectioninfo.tcpSocket = newSocket;
 104.270 -			connectioninfo.isClient = true;
 104.271 -
 104.272 -			
 104.273 -    			if(connectioninfo.tcpSocket->waitForConnected(500))
 104.274 -			{
 104.275 -			    QHostAddress tmp=connectioninfo.ip;
 104.276 -    			    QString logString;
 104.277 -			    logString.append("New connection(C):");	
 104.278 -			    logString.append(tmp.toString());
 104.279 -			    log->addLog(0,logString);
 104.280 -				emit newConnection(connectioninfo.id);
 104.281 -			    connectionlist << connectioninfo;
 104.282 -			}
 104.283 -			else
 104.284 -			{
 104.285 -			    QHostAddress tmp=connectioninfo.ip;
 104.286 -			    QString logString;
 104.287 -			    logString.append("Drop connection(C):");	
 104.288 -			    logString.append(tmp.toString());
 104.289 -			    log->addLog(0,logString);
 104.290 -    			    connectioninfo.tcpSocket->disconnectFromHost();
 104.291 -			    delete connectioninfo.conptr;
 104.292 -			    delete connectioninfo.tcpSocket;
 104.293 -			}
 104.294 -			numid++;
 104.295 -			sendDebugConList(connectionlist);
 104.296 -		}
 104.297 -	}
 104.298 -}
 104.299 -
 104.300 -
 104.301 -void NeighAware::sendDatagram(DataPacket datapacket)
 104.302 -{  	
 104.303 -	QHostAddress ip;
 104.304 -	for(int i=0;i<connectionlist.size();i++)
 104.305 -	{
 104.306 -		if(connectionlist.at(i).id==datapacket.id) 
 104.307 -		{
 104.308 -			ip=connectionlist.at(i).ip;
 104.309 -
 104.310 -			//Preparing heder
 104.311 -			QByteArray newDatagram;
 104.312 -			newDatagram.append(datapacket.data);
 104.313 -			//Appending terminator
 104.314 -			newDatagram.append(terminator);
 104.315 -			//Sending datagram 
 104.316 -			connectionlist[i].tcpSocket->write(newDatagram);
 104.317 -			emit traffic(newDatagram.size());
 104.318 -		}
 104.319 -	}
 104.320 -
 104.321 -
 104.322 -}
 104.323 -
 104.324 -
 104.325 -
 104.326 -void NeighAware::stateChanged()
 104.327 -{
 104.328 -	QString logString;
 104.329 -	logString.append(">>>>>>>>>>>>State:");
 104.330 -	log->addLog(0,logString);
 104.331 -
 104.332 -	for(int i=0;i<connectionlist.count();i++)
 104.333 -	{
 104.334 -		if((connectionlist.at(i).tcpSocket->state() != QAbstractSocket::ConnectedState))    
 104.335 -		{
 104.336 -			connectionlist[i].alive=0;
 104.337 -
 104.338 -			sendDebugConList(connectionlist);
 104.339 -		}
 104.340 -	}
 104.341 -}
 104.342 -
 104.343 -void NeighAware::errorDecode(QAbstractSocket::SocketError error)
 104.344 -{
 104.345 -	int i=error;
 104.346 -	QString logString;
 104.347 -	logString.append(QString("Error %1\n\r").arg((int)error).toAscii());
 104.348 -	log->addLog(0,logString);
 104.349 -	
 104.350 -	for(int i=0;i<connectionlist.count();i++)
 104.351 -	{
 104.352 -		if((connectionlist.at(i).tcpSocket->state() != QAbstractSocket::ConnectedState))    
 104.353 -		{
 104.354 -
 104.355 -			connectionlist[i].alive=0;
 104.356 -			sendDebugConList(connectionlist);
 104.357 -		}
 104.358 -	}
 104.359 -
 104.360 -			QFile f("error.txt");
 104.361 -		if (f.open(QIODevice::WriteOnly|QIODevice::Append) == true)
 104.362 -		{
 104.363 -			f.write(QString("Error %1\n\r").arg((int)error).toAscii());
 104.364 -			f.close();
 104.365 -		}
 104.366 -
 104.367 -}
 104.368 -
 104.369 -
 104.370 -
 104.371 -void NeighAware::processPendingDatagrams()
 104.372 -{
 104.373 -	for(int i=0;i<connectionlist.size();i++)
 104.374 -	{
 104.375 -		QByteArray packetPart;
 104.376 -		packetPart=connectionlist[i].tcpSocket->readAll();
 104.377 -		emit traffic(packetPart.size());
 104.378 -		if(packetPart.size()>0)
 104.379 -		{
 104.380 -			//Updating alive variable
 104.381 -			connectionlist[i].alive=ALIVE;
 104.382 -			//We add datagram to data
 104.383 -			connectionlist[i].data.append(packetPart);
 104.384 -			int idx;
 104.385 -			idx = connectionlist[i].data.indexOf(terminator,0);
 104.386 -			while(idx != -1)
 104.387 -			{
 104.388 -				//We remove the terminator
 104.389 -				QByteArray tempData;
 104.390 -				tempData=connectionlist[i].data.mid(0,idx);
 104.391 -				connectionlist[i].data.remove(0,(idx+terminator.size()));
 104.392 -				DataPacket send;
 104.393 -				send.data.append(tempData);
 104.394 -				send.id=connectionlist[i].id;
 104.395 -				connectionlist[i].conptr->receiveDatagram(send);
 104.396 -				idx = connectionlist[i].data.indexOf(terminator,0);
 104.397 -			}
 104.398 -			
 104.399 -		}
 104.400 -	}
 104.401 -}
 104.402 -
 104.403 -void NeighAware::getNewConnectionStatus(int status)
 104.404 -{
 104.405 -	emit newConnectionStatus(status);
 104.406 -}
 104.407 -		
 104.408 -		
 104.409 -
 104.410 -		
   105.1 --- a/x86/2.7/neighbourAwareness.h	Wed Jan 03 09:17:10 2007 +0000
   105.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   105.3 @@ -1,177 +0,0 @@
   105.4 -#ifndef NEIGHBOURAWARENESS_H
   105.5 -#define NEIGHBOURAWARENESS_H
   105.6 -
   105.7 -//#include <iostream.h>
   105.8 -#include <QtCore>
   105.9 -#include <QtNetwork>
  105.10 -#include <connection.h>
  105.11 -#include <dataPacket.h>
  105.12 -#include <neighbourAwareness.h>
  105.13 -#include <bundleManager.h>
  105.14 -#include <nodeManager.h>
  105.15 -#include <messageFile.h>
  105.16 -#include <readFile.h>
  105.17 -
  105.18 -
  105.19 -/*! \brief This class carries data concerning a certain connection. 
  105.20 - * Instantiated for each connection.
  105.21 - */
  105.22 -class ConnectionInfo : public QObject 
  105.23 -{
  105.24 -	Q_OBJECT
  105.25 -	public:
  105.26 -	ConnectionInfo(QObject *parent = 0);
  105.27 -	ConnectionInfo(const ConnectionInfo& other);
  105.28 -	ConnectionInfo& operator=(const ConnectionInfo& other);
  105.29 -	QHostAddress ip;
  105.30 -	QByteArray data;
  105.31 -	QTcpSocket* tcpSocket;
  105.32 -	QTcpSocket* clientTcpSocket;
  105.33 -	Connection *conptr;
  105.34 -	int alive;
  105.35 -	int id;
  105.36 -	bool isClient;
  105.37 -};
  105.38 -
  105.39 -class NeighAwareServer : public QTcpServer
  105.40 -{
  105.41 -	Q_OBJECT
  105.42 -
  105.43 -public:
  105.44 -	NeighAwareServer(QObject *parent = 0);
  105.45 -
  105.46 -protected slots:
  105.47 -	virtual void incomingConnection(int socketDescripton);
  105.48 -
  105.49 -signals:
  105.50 -	void newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection);
  105.51 -
  105.52 -};
  105.53 -
  105.54 -
  105.55 -/*! \brief This class detects when two nodes meet to initiate communication. 
  105.56 - *
  105.57 - * A ConnectionInfo and the associated Connection object is created for each 
  105.58 - * encounter.
  105.59 - */
  105.60 -class NeighAware : public QObject 
  105.61 -{
  105.62 -
  105.63 -
  105.64 -Q_OBJECT
  105.65 -
  105.66 -public:
  105.67 -
  105.68 -	NeighAware(BundleManager*, NodeManager*);
  105.69 -	NodeManager *nodeManager;
  105.70 -	BundleManager *bundleManager;
  105.71 -
  105.72 -	QList<ConnectionInfo> connectionlist;
  105.73 -   	QByteArray terminator; 	
  105.74 -
  105.75 -	QHostAddress myip;
  105.76 -	QHostAddress myip2;
  105.77 -	QHostAddress broadcast;
  105.78 -	int nodeId;
  105.79 -	QString nodeName;
  105.80 -	int ALIVE;
  105.81 -	int numid;
  105.82 -	ReadFile *file;
  105.83 -
  105.84 -	NeighAwareServer *tcpServer;
  105.85 -	QUdpSocket *udpSocketp;
  105.86 -	QTimer *broadcastTimer;
  105.87 -	QTimer *testTimer;
  105.88 -	MessageFile* log;
  105.89 -
  105.90 -	int logOption;
  105.91 -	
  105.92 -public slots:
  105.93 -	/*!
  105.94 -	 * Expects notification of when new connections are established. It 
  105.95 -	 * sets up the ConnectionInfo and Connection objects, and also connects 
  105.96 -	 * the signals for the new connection. This slot is connected to the 
  105.97 -	 * TcpServer.
  105.98 -	 * @param newSocket the socket of the TCP connection.
  105.99 -	 * @param permitNewConnection this bool will be true if the connection 
 105.100 -	 * was permitted, otherwise false.
 105.101 -	 */
 105.102 -	void newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection);
 105.103 -
 105.104 -   	/*!
 105.105 -	 * Writes any socket errors to the file error.txt.
 105.106 -	 */
 105.107 -	void errorDecode(QAbstractSocket::SocketError);
 105.108 -	
 105.109 -	/*!
 105.110 -	 * Removes items with out of date states from the connectionlist.
 105.111 -	 */
 105.112 -	void stateChanged();
 105.113 -	
 105.114 -	/*!
 105.115 -	 * Broadcasts a HELLO_DATAGRAM on the UDP socket 30000.
 105.116 -	 */
 105.117 -	void broadcastDatagram();
 105.118 -	
 105.119 -	/*!
 105.120 -	 * Sends the specified packet on the TCP socket.
 105.121 -	 */
 105.122 -	void sendDatagram(DataPacket datapacket);
 105.123 -
 105.124 -	/*!
 105.125 -	 * Receives packets from all TCP connections and dispatches them to 
 105.126 -	 * the appropriate Connection object.
 105.127 -	 */
 105.128 -	void processPendingDatagrams();
 105.129 -	
 105.130 -	/*!
 105.131 -	 * Processes all datagrams received on the UDP socket and creates new 
 105.132 -	 * Connection objects if neccessary.
 105.133 -	 */
 105.134 -	void processPingDatagrams();
 105.135 -	
 105.136 -	/*!
 105.137 -	 * Used just to forward new connection state to the GUI
 105.138 -	 */
 105.139 -	void getNewConnectionStatus(int);
 105.140 -signals:
 105.141 -	/*!
 105.142 -	 * Sends a list of ConnectionInfo objects to the GUI to be 
 105.143 -	 * displayed/updated.
 105.144 -	 * @param a QList of ConnectionInfo objects.
 105.145 -	 */
 105.146 -	void sendDebugConList(QList<ConnectionInfo>);
 105.147 -	/*!
 105.148 -	 * Passes a datagram reveived on the network interface to the TLV. Not used.
 105.149 -	 * @param dataPacket the packet that was received.
 105.150 -	 */
 105.151 -	void passDatagram(DataPacket);
 105.152 -	
 105.153 -	/*!
 105.154 -	 * Signals the size of every sent or received datagram. Connected to 
 105.155 -	 * the GUI. Used for transfer speed calculations.
 105.156 -	 * @param size The size of the received or sent datagram.
 105.157 -	 */
 105.158 -	void traffic(int);
 105.159 -
 105.160 -	/*!
 105.161 -	 * Signals that a connection was removed. Connected to GUI.
 105.162 -	 * @param id the id of the connection that was removed.
 105.163 -	 */
 105.164 -	void removedConnection(int);
 105.165 -	
 105.166 -	/*!
 105.167 -	 * Signals that a new connection with another node has been 
 105.168 -	 * established. Connected to GUI.
 105.169 -	 * @param id the id of the new connection.
 105.170 -	 */
 105.171 -	void newConnection(int);
 105.172 -
 105.173 -	/*!
 105.174 -	 * Signals new protocol state in one of the connections
 105.175 -	 */
 105.176 -	void newConnectionStatus(int);
 105.177 -
 105.178 -};
 105.179 -
 105.180 -#endif
   106.1 --- a/x86/2.7/node.cpp	Wed Jan 03 09:17:10 2007 +0000
   106.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   106.3 @@ -1,59 +0,0 @@
   106.4 -#include <QtCore>
   106.5 -#include <node.h>
   106.6 -
   106.7 -
   106.8 -Node::Node(QObject *parent)
   106.9 -{
  106.10 -			nodeId=0;
  106.11 -			probability=0.0;
  106.12 -			nodeName.clear();
  106.13 -			flag=-1;
  106.14 -}
  106.15 -
  106.16 -Node& Node::operator=(const Node& other)
  106.17 -{
  106.18 - nodeId = other.nodeId;
  106.19 - flag = other.flag;
  106.20 - probability = other.probability;
  106.21 - nodeName = other.nodeName;
  106.22 - return *this;
  106.23 -}
  106.24 -
  106.25 -Node::Node(const Node& other)
  106.26 -{
  106.27 - nodeId = other.nodeId;
  106.28 - flag = other.flag;
  106.29 - probability = other.probability;
  106.30 - nodeName = other.nodeName;
  106.31 -}	
  106.32 -	
  106.33 -void Node::setContent(int id,float pro,int f,QString name)
  106.34 -{
  106.35 -	flag=f;
  106.36 -	nodeId=id;
  106.37 -	probability=pro;
  106.38 -	nodeName=name;
  106.39 -
  106.40 -}
  106.41 -
  106.42 -int Node::getId()
  106.43 -{
  106.44 -	return nodeId;
  106.45 -}
  106.46 -
  106.47 -int Node::getFlag()
  106.48 -{
  106.49 -	
  106.50 -	return flag;
  106.51 -}
  106.52 -
  106.53 -float Node::getProbability()
  106.54 -{
  106.55 -	return probability;
  106.56 -}
  106.57 -
  106.58 -QString Node::getName()
  106.59 -{
  106.60 -	return nodeName;
  106.61 -}
  106.62 -
   107.1 --- a/x86/2.7/node.h	Wed Jan 03 09:17:10 2007 +0000
   107.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   107.3 @@ -1,51 +0,0 @@
   107.4 -#ifndef NODE_H
   107.5 -#define NODE_H
   107.6 -
   107.7 -#include <QtCore>
   107.8 -
   107.9 -/*! \brief This class contains the attributes regarding a certain node in the 
  107.10 - * network.
  107.11 - */
  107.12 -class Node : public QObject
  107.13 -{
  107.14 -
  107.15 -Q_OBJECT 
  107.16 -	public:
  107.17 -	int nodeId;
  107.18 -	float probability;
  107.19 -	int flag;
  107.20 -	QString nodeName;
  107.21 -
  107.22 -
  107.23 -	Node(QObject *parent = 0);
  107.24 -	Node(const Node& other);
  107.25 -	Node& operator=(const Node& other);
  107.26 -
  107.27 -
  107.28 -	/*!
  107.29 -	 * Sets the attributes of this node.
  107.30 -	 * @param id the id of this node.
  107.31 -	 * @param pro the delivery predictability to this node.
  107.32 -	 * @param f the (RIB?)flags of this node.
  107.33 -	 * <PRE>
  107.34 -	 * Flag bit 0: Relay Node
  107.35 -	 * Flag bit 1: Custody Node
  107.36 -	 * Flag bit 2: Internet GW Node
  107.37 -	 * Flag bit 3-7: Reserved
  107.38 -	 * </PRE>
  107.39 -	 * @param the name of this node
  107.40 -	 */
  107.41 -	void setContent(int,float,int,QString);
  107.42 -
  107.43 -	//! Returns the id if this node
  107.44 -	int getId();
  107.45 -
  107.46 -	//! Returns the flags of this node
  107.47 -	int getFlag(); 
  107.48 -	//! Returns the delivery predictability value for this node.
  107.49 -	float getProbability();
  107.50 -	//!Returns the name of this node
  107.51 -	QString getName();
  107.52 -};
  107.53 -
  107.54 -#endif
   108.1 --- a/x86/2.7/nodeManager.cpp	Wed Jan 03 09:17:10 2007 +0000
   108.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   108.3 @@ -1,307 +0,0 @@
   108.4 -#include <QtCore>
   108.5 -#include <nodeManager.h>
   108.6 -#include <node.h>
   108.7 -#include <readFile.h>
   108.8 -#include <math.h>
   108.9 -#include <qmutex.h>
  108.10 -
  108.11 -//#define AGING_TIMER 900
  108.12 -//#define PENCOUNTER 0.75
  108.13 -//#define BETA 0.25
  108.14 -//#define GAMMA 0.90
  108.15 -
  108.16 -NodeManager::NodeManager()//BundleManager* bundleMng)
  108.17 -{
  108.18 -	ReadFile conf;
  108.19 -	BETA=conf.getBeta();
  108.20 -	PENCOUNTER=conf.getPEncounter();
  108.21 -	GAMMA=conf.getGamma();
  108.22 -	AGING_TIMER=conf.getAgingTimer();
  108.23 -	int WRITETIMER =conf.getWriteToFileTimer();
  108.24 -	int fileOption = conf.getUseFileNodes();
  108.25 -	//Create and connect Hello Timer
  108.26 -	//bundleManager = bundleMng;
  108.27 -	agingTimer = new QTimer();
  108.28 -	storagePath=conf.getStoragePath();
  108.29 -	dir.setPath(storagePath);
  108.30 -	//create the dir if it does not exist
  108.31 -	if(!dir.exists())
  108.32 -		dir.mkpath(dir.path());
  108.33 -	option=conf.getUseFileNodes();
  108.34 -        connect(agingTimer, SIGNAL(timeout()), this, SLOT(aging()));
  108.35 -        agingTimer->start(AGING_TIMER);
  108.36 -	if(fileOption==1)
  108.37 -	{
  108.38 -		readFromFile();
  108.39 -		writeToFileTimer = new QTimer();
  108.40 -		connect(writeToFileTimer, SIGNAL(timeout()), this, SLOT(saveToFile()));
  108.41 -		writeToFileTimer->start(WRITETIMER);
  108.42 -		emit sendDebugNodeList(nodeList);
  108.43 -	}
  108.44 -}
  108.45 -
  108.46 -
  108.47 -void NodeManager::aging()
  108.48 -{
  108.49 -	for (ushort i = 0; i < nodeList.size(); ++i) 
  108.50 -	{
  108.51 -			//AGE PROBABILITY UPDATE
  108.52 -			Node tempNode;
  108.53 -			tempNode=nodeList.at(i);
  108.54 -			tempNode.probability=tempNode.probability*GAMMA;
  108.55 -			nodeList.replace(i,tempNode);
  108.56 -
  108.57 -	}
  108.58 -	//DEBUG
  108.59 -	emit sendDebugNodeList(nodeList);
  108.60 -}
  108.61 -
  108.62 -void NodeManager::saveToFile()
  108.63 -{
  108.64 -	QFile file(dir.filePath("nodes.txt"));
  108.65 -	if(file.open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text))
  108.66 -	{
  108.67 -	    QDateTime realTime;
  108.68 -	    realTime=realTime.currentDateTime ();
  108.69 -	    QString time=realTime.toString("MM/dd/yyyy hh:mm:ss");
  108.70 -	    time.append("\n");
  108.71 -	    file.write(time.toAscii ());
  108.72 -	    for (ushort i = 0; i < nodeList.size(); ++i) 
  108.73 -	    {
  108.74 -		QString nodeString;
  108.75 -		nodeString.append(QString("%1").arg((int)nodeList.at(i).nodeId));
  108.76 -		nodeString.append("\t");
  108.77 -		nodeString.append(nodeList.at(i).nodeName);
  108.78 -		nodeString.append("\t");
  108.79 -		//nodeString.append(QString("%1").arg((float)nodeList.at(i).probability));
  108.80 -		//Avoiding double type printout/////////////////
  108.81 -		int prob=nodeList.at(i).probability*100000000;
  108.82 -		QString probString=QString("0.%1").arg(prob);
  108.83 -		nodeString.append(probString);
  108.84 -		////////////////////////////////////////////////
  108.85 -		nodeString.append("\t");
  108.86 -		nodeString.append(QString("%1").arg((int)nodeList.at(i).flag));
  108.87 -		nodeString.append("\n");
  108.88 -		file.write(nodeString.toAscii ());
  108.89 -	    }
  108.90 -	    file.close();
  108.91 -	}
  108.92 -	//DEBUG
  108.93 -	emit sendDebugNodeList(nodeList);
  108.94 -}
  108.95 -
  108.96 -void NodeManager::readFromFile()
  108.97 -{
  108.98 -	ReadFile conf;
  108.99 -	QString storagePath=conf.getStoragePath();
 108.100 -	QDir dir;
 108.101 -	dir.setPath(storagePath);
 108.102 -	QFile file(dir.filePath("nodes.txt"));
 108.103 -	if(file.open(QIODevice::ReadOnly | QIODevice::Text))
 108.104 -	{
 108.105 -	    QString firstLine;
 108.106 -	    QString line;
 108.107 -	    //First we read date and time
 108.108 -	    firstLine=file.readLine();
 108.109 -	    //Then we add nodes
 108.110 -	    line=file.readLine();
 108.111 -	    while(line.size()>0)
 108.112 -	    {
 108.113 -    		//Parsing node
 108.114 -		int pos;
 108.115 -		QString temp;
 108.116 -		Node newNode;
 108.117 -		//Node ID
 108.118 -		pos=line.indexOf("\t",0);
 108.119 -		temp=line.mid(0,pos);
 108.120 -		newNode.nodeId=temp.toInt(0,10);
 108.121 -		line.remove(0,pos+1);
 108.122 -		//Node Name
 108.123 -		pos=line.indexOf("\t",0);
 108.124 -		temp=line.mid(0,pos);
 108.125 -		newNode.nodeName=temp;
 108.126 -		line.remove(0,pos+1);
 108.127 -		//Node Probability
 108.128 -		pos=line.indexOf("\t",0);
 108.129 -		temp=line.mid(0,pos);
 108.130 -		newNode.probability=temp.toFloat();
 108.131 -		line.remove(0,pos+1);
 108.132 -		//Node Flag
 108.133 -		pos=line.indexOf("\t",0);
 108.134 -		temp=line.mid(0,pos);
 108.135 -		newNode.flag=temp.toInt(0,10);
 108.136 -		line.remove(0,pos+1);
 108.137 -		//Adding Node
 108.138 -		nodeList.append(newNode);
 108.139 -		line=file.readLine();
 108.140 -	    }
 108.141 -	    //Aging the nodes
 108.142 -	    int option=conf.getAgeFileNodes();
 108.143 -	    if(option==1)
 108.144 -	    {
 108.145 -		QDateTime oldTime;
 108.146 -		firstLine.chop(1);
 108.147 -		oldTime=oldTime.fromString(firstLine,"MM/dd/yyyy hh:mm:ss");
 108.148 -		QDateTime realTime;
 108.149 -		realTime=realTime.currentDateTime ();
 108.150 -		int dif= oldTime.secsTo(realTime);
 108.151 -		int normalAging = conf.getAgingTimer()/1000;
 108.152 -		int aging=dif/normalAging;
 108.153 -		//Aging all nodes
 108.154 -		for (ushort i = 0; i < nodeList.size(); ++i) 
 108.155 -		{
 108.156 -			//AGE PROBABILITY UPDATE
 108.157 -			Node tempNode;
 108.158 -			tempNode=nodeList.at(i);
 108.159 -			tempNode.probability=tempNode.probability*(pow(GAMMA,aging));
 108.160 -			nodeList.replace(i,tempNode);
 108.161 -		}
 108.162 -	    }
 108.163 -	    emit sendDebugNodeList(nodeList);
 108.164 -	    emit updatedNodeList(this);
 108.165 -	    file.close();
 108.166 -	}
 108.167 -}
 108.168 -
 108.169 -
 108.170 -
 108.171 -int NodeManager::getId(QString str)
 108.172 -{
 108.173 -	for (ushort i = 0; i < nodeList.size(); ++i) 
 108.174 -	{
 108.175 -			QString s;
 108.176 -			QString n;
 108.177 -			s=str;
 108.178 -			n=nodeList.at(i).nodeName;
 108.179 -			if(nodeList.at(i).nodeName==str)
 108.180 -				return nodeList.at(i).nodeId;
 108.181 -	}
 108.182 -	return 0;
 108.183 -}
 108.184 -
 108.185 -
 108.186 -void NodeManager::addDictionary(int ourNodeId,QList<Node> dictionary)
 108.187 -{
 108.188 -	for (ushort i = 0; i < dictionary.size(); ++i) 
 108.189 -	{
 108.190 -		int isInTheList=0;
 108.191 -		for (ushort n = 0; n < nodeList.size(); ++n) 
 108.192 -		{
 108.193 -			if(dictionary.at(i).nodeId==nodeList.at(n).nodeId)
 108.194 -				isInTheList++;
 108.195 -			
 108.196 -		}
 108.197 -		if((isInTheList==0)&&(dictionary.at(i).nodeId!=ourNodeId))
 108.198 -		{
 108.199 -			nodeList.append(dictionary.at(i));
 108.200 -			//!!!!!!!!!!!!!!!!!!!!!!
 108.201 -				//DEBUG
 108.202 -			emit sendDebugNodeList(nodeList);
 108.203 -			emit updatedNodeList(this);
 108.204 -		}
 108.205 -	}
 108.206 -}
 108.207 -
 108.208 -void NodeManager::encounterNode(int encounterNodeId,int encounterNodeType,QString encounterNodeName)
 108.209 -{
 108.210 -	int isInTheList=0;
 108.211 -	for (ushort i = 0; i < nodeList.size(); ++i) 
 108.212 -	{
 108.213 -		//ENCOUNTER PROBABILITY UPDATE
 108.214 -		if(nodeList.at(i).nodeId==encounterNodeId)
 108.215 -		{
 108.216 -				Node tempNode;
 108.217 -				tempNode=nodeList.at(i);
 108.218 -				//ENCOUNTING EQUATION
 108.219 -				tempNode.probability=tempNode.probability+((1-tempNode.probability)*PENCOUNTER);
 108.220 -				nodeList.replace(i,tempNode);
 108.221 -				isInTheList++;
 108.222 -		}
 108.223 -	}
 108.224 -	//UNKNOW NEW NODE
 108.225 -	if(isInTheList==0) 
 108.226 -	{
 108.227 -		Node tempNode;
 108.228 -		tempNode.nodeId=encounterNodeId;
 108.229 -		tempNode.nodeName=encounterNodeName;
 108.230 -		tempNode.flag=-1;
 108.231 -		tempNode.probability=PENCOUNTER;
 108.232 -		nodeList.append(tempNode);
 108.233 -		//!!!!!!!!!!!!!!!!!!!!!!
 108.234 -		//DEBUG
 108.235 -		emit sendDebugNodeList(nodeList);
 108.236 -		emit updatedNodeList(this);
 108.237 -	}
 108.238 -}
 108.239 -
 108.240 -
 108.241 -void NodeManager::addRIB(QList<Node>RIB,int encounterNodeId)//RIB=P_(B,x)
 108.242 -{
 108.243 -	float P_AB=1;
 108.244 -	//First we find P_AB
 108.245 -	for (ushort i = 0; i < nodeList.size(); ++i) 
 108.246 -	{
 108.247 -		if(nodeList.at(i).nodeId==encounterNodeId)
 108.248 -			P_AB = nodeList.at(i).probability;
 108.249 -	}
 108.250 -	//Then we update all transitivites
 108.251 -	for (ushort i = 0; i < nodeList.size(); ++i) 
 108.252 -	{
 108.253 -		//TRANSITIVE PROBABILITY UPDATE
 108.254 -		if(nodeList.at(i).nodeId!=encounterNodeId)
 108.255 -		{
 108.256 -			int nodeCId = nodeList.at(i).nodeId;
 108.257 -			float P_AC = nodeList.at(i).probability;
 108.258 -			float P_BC = 1;
 108.259 -			float newP_AC;
 108.260 -			int flag=0;
 108.261 -			for (ushort n = 0; n < RIB.size(); ++n) 
 108.262 -			{
 108.263 -				if(RIB.at(n).nodeId==nodeCId)
 108.264 -				{
 108.265 -					P_BC = RIB.at(n).probability;
 108.266 -					flag = RIB.at(n).flag;
 108.267 -				}
 108.268 -			}
 108.269 -			newP_AC=P_AC+((1-P_AC) * P_AB * P_BC * BETA);
 108.270 -			//Adding data to list
 108.271 -			Node tempNode;
 108.272 -			tempNode=nodeList.at(i);
 108.273 -			tempNode.probability=newP_AC;
 108.274 -			tempNode.flag=flag;
 108.275 -			nodeList.replace(i,tempNode);
 108.276 -		}
 108.277 -
 108.278 -	}
 108.279 -	//DEBUG
 108.280 -	emit sendDebugNodeList(nodeList);
 108.281 -}
 108.282 -
 108.283 -
 108.284 -void NodeManager::addNode(Node newNode)
 108.285 -{
 108.286 -	nodeList.append(newNode);
 108.287 -	//!!!!!!!!!!!!!!!!!!!!!!!!!!!
 108.288 -	emit updatedNodeList(this);
 108.289 -	//DEBUG
 108.290 -	emit sendDebugNodeList(nodeList);
 108.291 -}
 108.292 -
 108.293 -QList<Node> NodeManager::getNodeList()
 108.294 -{	
 108.295 -	return nodeList;
 108.296 -}
 108.297 -
 108.298 -//Gives out only the list of nodes with RIB information
 108.299 -QList<Node> NodeManager::getRIBNodeList()
 108.300 -{	
 108.301 -	QList<Node> newNodeList;
 108.302 -	for (ushort i = 0; i < nodeList.size(); ++i) 
 108.303 -	{
 108.304 -		if(nodeList.at(i).flag != -1)
 108.305 -			newNodeList.append(nodeList.at(i));
 108.306 -	
 108.307 -	}
 108.308 -	return newNodeList;
 108.309 -}
 108.310 -
   109.1 --- a/x86/2.7/nodeManager.h	Wed Jan 03 09:17:10 2007 +0000
   109.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   109.3 @@ -1,106 +0,0 @@
   109.4 -#ifndef NODEMANAGER_H
   109.5 -#define NODEMANAGER_H
   109.6 -
   109.7 -#include <QtCore>
   109.8 -#include <node.h>
   109.9 -//#include <messageFile.cpp>
  109.10 -//#include <bundleManager.h>
  109.11 -
  109.12 -//! This class contains a list with routing information of all nodes this node is aware of.
  109.13 -class NodeManager : public QObject
  109.14 -{
  109.15 -	Q_OBJECT
  109.16 -public:
  109.17 -	int AGING_TIMER;
  109.18 -	float PENCOUNTER;
  109.19 -	float BETA;
  109.20 -	float GAMMA;
  109.21 -	QTimer *agingTimer;
  109.22 -	QTimer *writeToFileTimer;
  109.23 -	NodeManager();
  109.24 -	QString storagePath;
  109.25 -	QDir dir;
  109.26 -	int option;
  109.27 -
  109.28 -	
  109.29 -	
  109.30 -	//! Adds a node to the node list of this NodeManager
  109.31 -	/*! Also emits signals to update the GUI.
  109.32 -	 * @param node the node to be added
  109.33 -	 */
  109.34 -	void addNode(Node);
  109.35 -
  109.36 -	//! Looks up the node id of the specified node.
  109.37 -	/*!
  109.38 -	 * @param str the string name of the node.
  109.39 -	 * @return the node id of the specified node.
  109.40 -	 */
  109.41 -	int getId(QString);
  109.42 -
  109.43 -	//! Inserts nodes from a dictionary to the node list.
  109.44 -	/*! Only inserts nodes that were not already in the list.
  109.45 -	 * @param the list of nodes to be added to the node list.
  109.46 -	 */
  109.47 -	void addDictionary(int ourNodeId,QList<Node>);
  109.48 -
  109.49 -	//! Handles the reception of a new RIB.
  109.50 -	/*! Updates the transitivities in the node list according to the new RIB.
  109.51 -	 * @param RIB the RIB received from the encountered node.
  109.52 -	 * @param encounterNodeId the id if the encountered node.
  109.53 -	 */
  109.54 -	void addRIB(QList<Node>RIB,int encounterNodeId);
  109.55 -
  109.56 -	//! Adjusts the delivery predictability for a encountered node.
  109.57 -	/*! If the node was already in the node list the delivery predictability 
  109.58 -	 * is updated, otherwise the new node is added to the node list.
  109.59 -	 * @param encounterNodeId the id of the encountered node
  109.60 -	 * @param encounterNodeType Currently not used
  109.61 -	 * @param encounterNodeName the string name of the encountered node.
  109.62 -	 */
  109.63 -	void encounterNode(int encounterNodeId,int encounterNodeType,QString encounterNodeName);
  109.64 -
  109.65 -	//! Returns the node list of this node manager.
  109.66 -	/*! 
  109.67 -	 * @return the nodelist of this node manager.
  109.68 -	 */
  109.69 -	QList<Node> getNodeList();
  109.70 -
  109.71 -	//! Returns the list of nodes that have RIB information.
  109.72 -	/*! Iterates through the node list and returns only the nodes that have 
  109.73 -	 * RIB information stored.
  109.74 -	 * @return the nodes that have RIB information.
  109.75 -	 */
  109.76 -	QList<Node> getRIBNodeList();
  109.77 -
  109.78 -	//! the list of nodes (should probably be delared private
  109.79 -	QList<Node> nodeList;
  109.80 -
  109.81 -
  109.82 -signals:
  109.83 -	/*!
  109.84 -	 * Emits the node list. (Used for updating GUI).
  109.85 -	 */
  109.86 -	void sendDebugNodeList(QList<Node>);
  109.87 -	
  109.88 -	/*!
  109.89 -	 * Emits this NodeManager. (Used for GUI???)
  109.90 -	 */
  109.91 -	void updatedNodeList(NodeManager*);
  109.92 -public slots:
  109.93 -	/*!
  109.94 -	 * Performs aging of the probability of all nodes in the node list.
  109.95 -	 */
  109.96 -	void aging();
  109.97 -		
  109.98 -	/*!
  109.99 -	 * Writes the node list to the file nodes.txt.
 109.100 -	 */
 109.101 -	void saveToFile();
 109.102 -		
 109.103 -	/*!
 109.104 -	 * Imports a nodelist from the file nodes.txt and performs 
 109.105 -	 * appropriate aging on the nodes imported.
 109.106 -	 */
 109.107 -	void readFromFile();
 109.108 -};
 109.109 -#endif
   110.1 Binary file x86/2.7/prophet has changed
   111.1 --- a/x86/2.7/prophet.ini	Wed Jan 03 09:17:10 2007 +0000
   111.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   111.3 @@ -1,149 +0,0 @@
   111.4 -# ------------------------------------------
   111.5 -#  PRoPHET configuration file - prophet.ini
   111.6 -# ------------------------------------------
   111.7 -
   111.8 -
   111.9 -# -----------------
  111.10 -#  Node Parameters
  111.11 -# -----------------
  111.12 -
  111.13 -# A unique number identifying this node.
  111.14 -NODEID=50
  111.15 -
  111.16 -# A unique name identifying this node, should be the same as local_eid in 
  111.17 -# DTN-configuration but without the "dtn://" prefix.
  111.18 -NODENAME=samonote.dtn
  111.19 -
  111.20 -# The IP number of this node.
  111.21 -NODEIP=192.168.10.44
  111.22 -
  111.23 -# IP number of any secondary network interface on the same host. If there is no secondary interface, just set it to the same as NODEIP1.
  111.24 -NODEIP2=192.168.0.3
  111.25 -
  111.26 -# The broadcast adress of this node. Should be as narrow as possible, ie rather use 192.168.10.255 than 255.255.255.255
  111.27 -NODEBROADCAST=192.168.10.255
  111.28 -
  111.29 -
  111.30 -#  --------------------
  111.31 -#   PRoPHET parameters 
  111.32 -#  --------------------
  111.33 -
  111.34 -# The type of routing to use
  111.35 -# 0 = Epidemic
  111.36 -# 1 = PRoPHET GRTR P_(B,D)>P_(A,D)
  111.37 -ROUTING=0
  111.38 -
  111.39 -# The queuing policy to use
  111.40 -# 0 = FIFO
  111.41 -QUEUE=0
  111.42 -
  111.43 -# Initialization constant
  111.44 -PENCOUNTER=0.75
  111.45 -
  111.46 -# Scaling constant. Controls how large an impact the transitivity should have 
  111.47 -# on delivery predictability.
  111.48 -BETA=0.25
  111.49 -
  111.50 -# Aging constant
  111.51 -GAMMA=0.9989
  111.52 -
  111.53 -# ?
  111.54 -HELLO=10000
  111.55 -
  111.56 -# ?
  111.57 -ALIVE=15
  111.58 -
  111.59 -
  111.60 -# --------
  111.61 -#  Timers
  111.62 -# --------
  111.63 -
  111.64 -# The interval in milliseconds between beacon broadcasts in neighbour awareness.
  111.65 -BROADCASTTIMER=5000
  111.66 -
  111.67 -# The interval in milliseconds for performing aging.
  111.68 -AGINGTIMER=60000
  111.69 -
  111.70 -# The time in milliseconds before the node leaves the Hello state.
  111.71 -HELLOTIMER=60000
  111.72 -
  111.73 -# The time in milliseconds before the node leaves the Initiator state.
  111.74 -INITIATORTIMER=60000
  111.75 -
  111.76 -# The time in milliseconds before the node leaves the Listener state.
  111.77 -LISTENERTIMER=60000
  111.78 -
  111.79 -
  111.80 -# ------------------------
  111.81 -#  DTN-related Parameters
  111.82 -# ------------------------
  111.83 -
  111.84 -# The hostname where PRoPHET should connect to DTN. Usually the same as NODEIP1.
  111.85 -DTNHOSTNAME=193.77.152.156
  111.86 -
  111.87 -# The port PRoPHET should connect to DTN on. Usually 5555 or 5050.
  111.88 -DTNHOSTPORT=5050
  111.89 -
  111.90 -# ?
  111.91 -DTNTIMER=5000
  111.92 -
  111.93 -
  111.94 -# --------------------
  111.95 -#  Storage Parameters
  111.96 -# --------------------
  111.97 -
  111.98 -# The maximum amount of disk space that PRoPHET should use for storing bundles 
  111.99 -# (in bytes).
 111.100 -STORAGESIZE=80000
 111.101 -
 111.102 -# The maximum amount of memory PRoPHET should use for storing bundles (in bytes)
 111.103 -MEMORYSTORAGESIZE=20000
 111.104 -
 111.105 -# The directory PRoPHET will use for storing bundles. It will be created on 
 111.106 -# startup if it does not already exist.
 111.107 -STORAGEPATH=c:\Samo\PRoPHET\win32\storage\
 111.108 -
 111.109 -# The directory PRoPHET will use for logging. It will be created on startup if 
 111.110 -# it does not already exist.
 111.111 -LOGPATH=c:\Samo\PRoPHET\win32\log\
 111.112 -
 111.113 -# The directory PRoPHET will use for storing the node list, bundle list etc. It
 111.114 -# will be created on startup if it does not already exist.
 111.115 -MSGPATH=c:\Samo\PRoPHET\win32\list\
 111.116 -
 111.117 -# Whether the node list should be stored to disk or not.
 111.118 -USEFILENODES=1
 111.119 -
 111.120 -# Whether nodes in the node list on disk should be aged or not.
 111.121 -AGEFILENODES=1
 111.122 -
 111.123 -# The interval at which information is written to disk.
 111.124 -WRITETOFILETIMER=10000
 111.125 -
 111.126 -# Wheter bundles should be stored to disk or not.
 111.127 -USEFILEBUNDLES=1
 111.128 -
 111.129 -# Logging on/off.
 111.130 -LOGGING=1
 111.131 -
 111.132 -
 111.133 -# ---------------
 111.134 -#  Misc features
 111.135 -# ---------------
 111.136 -
 111.137 -# ?
 111.138 -CONTINIUSUPDATE=1
 111.139 -
 111.140 -# Whether to use TTL or not.
 111.141 -USETTL=1
 111.142 -
 111.143 -# The time to live for new bundles (in seconds).
 111.144 -TTLVALUE=60
 111.145 -
 111.146 -# Use acks for bundles, on/off.
 111.147 -USEACKS=1
 111.148 -
 111.149 -# Use smartoffer on/off. Smartoffer is a feature where a bundle will not be 
 111.150 -# offered again to a node that has already received it.
 111.151 -SMARTOFFER=1
 111.152 -
   112.1 --- a/x86/2.7/prophet.pro	Wed Jan 03 09:17:10 2007 +0000
   112.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   112.3 @@ -1,84 +0,0 @@
   112.4 -# GUI = true  - generates Makefile for building with GUI support.
   112.5 -# GUI = false - generates Makefile for building without GUI support.
   112.6 -GUI = true
   112.7 -
   112.8 -# PDAGUI = true  - generares makefile for building with GUI for PDA
   112.9 -# PDAGUI = false - generates makefile for building without GUI for PDA
  112.10 -# PDAGUI has no effect unless GUI is set to true
  112.11 -PDAGUI = true
  112.12 -
  112.13 -# DTN_INTERFACE = true  - generates Makefile for building with DTN support.
  112.14 -# DTN_INTERFACE = false - generates Makefile for building without DTN support.
  112.15 -DTN_INTERFACE = false
  112.16 -
  112.17 -contains(GUI, true) {
  112.18 -	message("Creating Makefile with GUI")
  112.19 -	DEFINES += GUI
  112.20 -	contains(PDAGUI, true) {
  112.21 -		message("GUI will be built for PDA use")
  112.22 -		DEFINES += PDAGUI
  112.23 -		HEADERS += connectionWidget.h\
  112.24 -				   msgReadWidget.h\
  112.25 -				   configWidget.h
  112.26 -		SOURCES += connectionWidget.cpp\
  112.27 -				   msgReadWidget.cpp\
  112.28 -				   configWidget.cpp
  112.29 -	}
  112.30 -	HEADERS += infoWidget.h\		
  112.31 -			   bundleWidget.h\		
  112.32 -        	   msgWidget.h \
  112.33 -			   debugWidget.h
  112.34 -	SOURCES += infoWidget.cpp\		
  112.35 -			   bundleWidget.cpp\		
  112.36 -        	   msgWidget.cpp \
  112.37 -			   debugWidget.cpp
  112.38 -}
  112.39 -contains(GUI, false) {
  112.40 -	message("Creating Makefile without GUI")
  112.41 -}
  112.42 -contains(DTN_INTERFACE, true) {
  112.43 -	message("Creating Makefile with DTN_INTERFACE")
  112.44 -	DEFINES += DTN_INTERFACE
  112.45 -	HEADERS += DTNInterface.h
  112.46 -	SOURCES += DTNInterface.cpp
  112.47 -}
  112.48 -contains(DTN_INTERFACE, false) {
  112.49 -	message("Creating Makefile without DTN_INTERFACE")
  112.50 -}
  112.51 -
  112.52 -TEMPLATE = app
  112.53 -QT+=gui network
  112.54 -QT-=
  112.55 -TARGET += 
  112.56 -DEPENDPATH += .
  112.57 -INCLUDEPATH += .
  112.58 -CONFIG += qt release
  112.59 -HEADERS += 	neighbourAwareness.h\
  112.60 -			bundle.h \
  112.61 -			bundleManager.h \
  112.62 -			node.h \
  112.63 -			nodeManager.h \
  112.64 -			connection.h \
  112.65 -			tlv.h \
  112.66 -			messageFile.h \
  112.67 -			hello.h \
  112.68 -			main.h \	   
  112.69 -			dataPacket.h \
  112.70 -			readFile.h \
  112.71 -			tcpClient.h \
  112.72 -			bundleListFileIO.h
  112.73 -
  112.74 -SOURCES += 	main.cpp \
  112.75 -			bundle.cpp \
  112.76 -			bundleManager.cpp \
  112.77 -			node.cpp \
  112.78 -			nodeManager.cpp \
  112.79 -			connection.cpp \
  112.80 -			hello.cpp \
  112.81 -			tlv.cpp \
  112.82 -			dataPacket.cpp \
  112.83 -			messageFile.cpp\
  112.84 -			neighbourAwareness.cpp\
  112.85 -			readFile.cpp \
  112.86 -			tcpClient.cpp \
  112.87 -			bundleListFileIO.cpp
   113.1 --- a/x86/2.7/readFile.cpp	Wed Jan 03 09:17:10 2007 +0000
   113.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   113.3 @@ -1,836 +0,0 @@
   113.4 -#include <QFile>
   113.5 -#include <QString>
   113.6 -#include <QHostAddress>
   113.7 -#include <readFile.h>
   113.8 -
   113.9 -ReadFile::ReadFile()
  113.10 -{
  113.11 -	QFile configuration("prophet.ini");
  113.12 -}
  113.13 -
  113.14 -float ReadFile::getBeta()
  113.15 -{
  113.16 -	QFile configuration("prophet.ini");
  113.17 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  113.18 -	QString line;
  113.19 -	QString search="BETA=";
  113.20 -	line=configuration.readLine();
  113.21 -	while(line.size()>0)
  113.22 -	{
  113.23 -		if(line.indexOf(search)!=-1)
  113.24 -		{
  113.25 -			line.remove(search,Qt::CaseInsensitive);
  113.26 -			return line.toFloat();
  113.27 -		}
  113.28 -		line=configuration.readLine();
  113.29 -		
  113.30 -	}
  113.31 -	configuration.close();
  113.32 -	return (float)0.25;
  113.33 -}
  113.34 -
  113.35 -float ReadFile::getGamma()
  113.36 -{
  113.37 -	QFile configuration("prophet.ini");
  113.38 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  113.39 -	QString line;
  113.40 -	QString search="GAMMA=";
  113.41 -	line=configuration.readLine();
  113.42 -	while(line.size()>0)
  113.43 -	{
  113.44 -		if(line.indexOf(search)!=-1)
  113.45 -		{
  113.46 -			line.remove(search,Qt::CaseInsensitive);
  113.47 -			return line.toFloat();
  113.48 -		}
  113.49 -		line=configuration.readLine();
  113.50 -		
  113.51 -	}
  113.52 -		configuration.close();
  113.53 -
  113.54 -	return (float)0.99;
  113.55 -}
  113.56 -
  113.57 -float ReadFile::getPEncounter()
  113.58 -{
  113.59 -	QFile configuration("prophet.ini");
  113.60 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  113.61 -	QString line;
  113.62 -	QString search="PENCOUNTER=";
  113.63 -	line=configuration.readLine();
  113.64 -	while(line.size()>0)
  113.65 -	{
  113.66 -		if(line.indexOf(search)!=-1)
  113.67 -		{
  113.68 -			line.remove(search,Qt::CaseInsensitive);
  113.69 -			return line.toFloat();
  113.70 -		}
  113.71 -		line=configuration.readLine();
  113.72 -		
  113.73 -	}
  113.74 -		configuration.close();
  113.75 -
  113.76 -	return (float)0.75;
  113.77 -}
  113.78 -
  113.79 -int ReadFile::getSmartOffer()
  113.80 -{
  113.81 -	QFile configuration("prophet.ini");
  113.82 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  113.83 -	QString line;
  113.84 -	QString search="SMARTOFFER=";
  113.85 -	line=configuration.readLine();
  113.86 -	while(line.size()>0)
  113.87 -	{
  113.88 -		if(line.indexOf(search)!=-1)
  113.89 -		{
  113.90 -			line.remove(search,Qt::CaseInsensitive);
  113.91 -			return line.toInt();
  113.92 -		}
  113.93 -		line=configuration.readLine();
  113.94 -		
  113.95 -	}
  113.96 -		configuration.close();
  113.97 -
  113.98 -	return 1000;
  113.99 -}
 113.100 -
 113.101 -int ReadFile::getListenerTimer()
 113.102 -{
 113.103 -	QFile configuration("prophet.ini");
 113.104 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.105 -	QString line;
 113.106 -	QString search="LISTENERTIMER=";
 113.107 -	line=configuration.readLine();
 113.108 -	while(line.size()>0)
 113.109 -	{
 113.110 -		if(line.indexOf(search)!=-1)
 113.111 -		{
 113.112 -			line.remove(search,Qt::CaseInsensitive);
 113.113 -			return line.toInt();
 113.114 -		}
 113.115 -		line=configuration.readLine();
 113.116 -		
 113.117 -	}
 113.118 -		configuration.close();
 113.119 -
 113.120 -	return 1000;
 113.121 -}
 113.122 -
 113.123 -int ReadFile::getQueue()
 113.124 -{
 113.125 -	QFile configuration("prophet.ini");
 113.126 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.127 -	QString line;
 113.128 -	QString search="QUEUE=";
 113.129 -	line=configuration.readLine();
 113.130 -	while(line.size()>0)
 113.131 -	{
 113.132 -		if(line.indexOf(search)!=-1)
 113.133 -		{
 113.134 -			line.remove(search,Qt::CaseInsensitive);
 113.135 -			return line.toInt();
 113.136 -		}
 113.137 -		line=configuration.readLine();
 113.138 -		
 113.139 -	}
 113.140 -		configuration.close();
 113.141 -
 113.142 -	return 0;
 113.143 -}
 113.144 -
 113.145 -int ReadFile::getInitiatorTimer()
 113.146 -{
 113.147 -	QFile configuration("prophet.ini");
 113.148 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.149 -	QString line;
 113.150 -	QString search="INITIATORTIMER=";
 113.151 -	line=configuration.readLine();
 113.152 -	while(line.size()>0)
 113.153 -	{
 113.154 -		if(line.indexOf(search)!=-1)
 113.155 -		{
 113.156 -			line.remove(search,Qt::CaseInsensitive);
 113.157 -			return line.toInt();
 113.158 -		}
 113.159 -		line=configuration.readLine();
 113.160 -		
 113.161 -	}
 113.162 -		configuration.close();
 113.163 -
 113.164 -	return 1000;
 113.165 -}
 113.166 -int ReadFile::getUseTTL()
 113.167 -{
 113.168 -	QFile configuration("prophet.ini");
 113.169 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.170 -	QString line;
 113.171 -	QString search="USETTL=";
 113.172 -	line=configuration.readLine();
 113.173 -	while(line.size()>0)
 113.174 -	{
 113.175 -		if(line.indexOf(search)!=-1)
 113.176 -		{
 113.177 -			line.remove(search,Qt::CaseInsensitive);
 113.178 -			return line.toInt();
 113.179 -		}
 113.180 -		line=configuration.readLine();
 113.181 -		
 113.182 -	}
 113.183 -		configuration.close();
 113.184 -
 113.185 -	return 0;
 113.186 -
 113.187 -}
 113.188 -
 113.189 -int ReadFile::getTTL()
 113.190 -{
 113.191 -	QFile configuration("prophet.ini");
 113.192 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.193 -	QString line;
 113.194 -	QString search="TTLVALUE=";
 113.195 -	line=configuration.readLine();
 113.196 -	while(line.size()>0)
 113.197 -	{
 113.198 -		if(line.indexOf(search)!=-1)
 113.199 -		{
 113.200 -			line.remove(search,Qt::CaseInsensitive);
 113.201 -			return line.toInt();
 113.202 -		}
 113.203 -		line=configuration.readLine();
 113.204 -		
 113.205 -	}
 113.206 -		configuration.close();
 113.207 -
 113.208 -	return 100000;
 113.209 -
 113.210 -}
 113.211 -
 113.212 -int ReadFile::getUseACKS()
 113.213 -{
 113.214 -	QFile configuration("prophet.ini");
 113.215 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.216 -	QString line;
 113.217 -	QString search="USEACKS=";
 113.218 -	line=configuration.readLine();
 113.219 -	while(line.size()>0)
 113.220 -	{
 113.221 -		if(line.indexOf(search)!=-1)
 113.222 -		{
 113.223 -			line.remove(search,Qt::CaseInsensitive);
 113.224 -			return line.toInt();
 113.225 -		}
 113.226 -		line=configuration.readLine();
 113.227 -		
 113.228 -	}
 113.229 -		configuration.close();
 113.230 -
 113.231 -	return 0;
 113.232 -}
 113.233 -
 113.234 -int ReadFile::getHelloTimer()
 113.235 -{
 113.236 -	QFile configuration("prophet.ini");
 113.237 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.238 -	QString line;
 113.239 -	QString search="HELLOTIMER=";
 113.240 -	line=configuration.readLine();
 113.241 -	while(line.size()>0)
 113.242 -	{
 113.243 -		if(line.indexOf(search)!=-1)
 113.244 -		{
 113.245 -			line.remove(search,Qt::CaseInsensitive);
 113.246 -			return line.toInt();
 113.247 -		}
 113.248 -		line=configuration.readLine();
 113.249 -		
 113.250 -	}
 113.251 -		configuration.close();
 113.252 -
 113.253 -	return 1000;
 113.254 -}
 113.255 -
 113.256 -int ReadFile::getAgingTimer()
 113.257 -{
 113.258 -	QFile configuration("prophet.ini");
 113.259 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.260 -	QString line;
 113.261 -	QString search="AGINGTIMER=";
 113.262 -	line=configuration.readLine();
 113.263 -	while(line.size()>0)
 113.264 -	{
 113.265 -		if(line.indexOf(search)!=-1)
 113.266 -		{
 113.267 -			line.remove(search,Qt::CaseInsensitive);
 113.268 -			return line.toInt();
 113.269 -		}
 113.270 -		line=configuration.readLine();
 113.271 -		
 113.272 -	}
 113.273 -		configuration.close();
 113.274 -
 113.275 -	return 1000;
 113.276 -}
 113.277 -
 113.278 -int ReadFile::getDTNHostPort()
 113.279 -{
 113.280 -	QFile configuration("prophet.ini");
 113.281 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.282 -	QString line;
 113.283 -	QString search="DTNHOSTPORT=";
 113.284 -	line=configuration.readLine();
 113.285 -	while(line.size()>0)
 113.286 -	{
 113.287 -		if(line.indexOf(search)!=-1)
 113.288 -		{
 113.289 -			line.remove(search,Qt::CaseInsensitive);
 113.290 -			return line.toInt();
 113.291 -		}
 113.292 -		line=configuration.readLine();
 113.293 -		
 113.294 -	}
 113.295 -		configuration.close();
 113.296 -
 113.297 -	return 21;
 113.298 -
 113.299 -}	
 113.300 -
 113.301 -int ReadFile::getStorageSize()
 113.302 -{
 113.303 -	QFile configuration("prophet.ini");
 113.304 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.305 -	QString line;
 113.306 -	QString search="STORAGESIZE=";
 113.307 -	line=configuration.readLine();
 113.308 -	while(line.size()>0)
 113.309 -	{
 113.310 -		if(line.indexOf(search)!=-1)
 113.311 -		{
 113.312 -			line.remove(search,Qt::CaseInsensitive);
 113.313 -			return line.toInt();
 113.314 -		}
 113.315 -		line=configuration.readLine();
 113.316 -		
 113.317 -	}
 113.318 -		configuration.close();
 113.319 -
 113.320 -	return 1000;
 113.321 -
 113.322 -}	
 113.323 -
 113.324 -int ReadFile::getMemoryStorageSize()
 113.325 -{
 113.326 -	QFile configuration("prophet.ini");
 113.327 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.328 -	QString line;
 113.329 -	QString search="MEMORYSTORAGESIZE=";
 113.330 -	line=configuration.readLine();
 113.331 -	while(line.size()>0)
 113.332 -	{
 113.333 -		if(line.indexOf(search)!=-1)
 113.334 -		{
 113.335 -			line.remove(search,Qt::CaseInsensitive);
 113.336 -			return line.toInt();
 113.337 -		}
 113.338 -		line=configuration.readLine();
 113.339 -		
 113.340 -	}
 113.341 -		configuration.close();
 113.342 -
 113.343 -	return 1000;
 113.344 -
 113.345 -}	
 113.346 -
 113.347 -int ReadFile::getAlive()
 113.348 -{
 113.349 -	QFile configuration("prophet.ini");
 113.350 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.351 -	QString line;
 113.352 -	QString search="ALIVE=";
 113.353 -	line=configuration.readLine();
 113.354 -	while(line.size()>0)
 113.355 -	{
 113.356 -		if(line.indexOf(search)!=-1)
 113.357 -		{
 113.358 -			line.remove(search,Qt::CaseInsensitive);
 113.359 -			return line.toInt();
 113.360 -		}
 113.361 -		line=configuration.readLine();
 113.362 -		
 113.363 -	}
 113.364 -		configuration.close();
 113.365 -
 113.366 -	return 15;
 113.367 -
 113.368 -}	
 113.369 -
 113.370 -
 113.371 -int ReadFile::getBroadcastTimer()
 113.372 -{
 113.373 -	QFile configuration("prophet.ini");
 113.374 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.375 -	QString line;
 113.376 -	QString search="BROADCASTTIMER=";
 113.377 -	line=configuration.readLine();
 113.378 -	while(line.size()>0)
 113.379 -	{
 113.380 -		if(line.indexOf(search)!=-1)
 113.381 -		{
 113.382 -			line.remove(search,Qt::CaseInsensitive);
 113.383 -			return line.toInt();
 113.384 -		}
 113.385 -		line=configuration.readLine();
 113.386 -		
 113.387 -	}
 113.388 -		configuration.close();
 113.389 -
 113.390 -	return 1000;
 113.391 -
 113.392 -}
 113.393 -
 113.394 -
 113.395 -int ReadFile::getHello()
 113.396 -{
 113.397 -	QFile configuration("prophet.ini");
 113.398 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.399 -	QString line;
 113.400 -	QString search="HELLO=";
 113.401 -	line=configuration.readLine();
 113.402 -	while(line.size()>0)
 113.403 -	{
 113.404 -		if(line.indexOf(search)!=-1)
 113.405 -		{
 113.406 -			line.remove(search,Qt::CaseInsensitive);
 113.407 -			return line.toInt();
 113.408 -		}
 113.409 -		line=configuration.readLine();
 113.410 -		
 113.411 -	}
 113.412 -		configuration.close();
 113.413 -
 113.414 -	return 1;
 113.415 -
 113.416 -}
 113.417 -
 113.418 -
 113.419 -int ReadFile::getRouting()
 113.420 -{
 113.421 -	QFile configuration("prophet.ini");
 113.422 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.423 -	QString line;
 113.424 -	QString search="ROUTING=";
 113.425 -	line=configuration.readLine();
 113.426 -	while(line.size()>0)
 113.427 -	{
 113.428 -		if(line.indexOf(search)!=-1)
 113.429 -		{
 113.430 -			line.remove(search,Qt::CaseInsensitive);
 113.431 -			return line.toInt();
 113.432 -		}
 113.433 -		line=configuration.readLine();
 113.434 -		
 113.435 -	}
 113.436 -		configuration.close();
 113.437 -
 113.438 -	return 1;
 113.439 -}
 113.440 -
 113.441 -int ReadFile::getDTNTimer()
 113.442 -{
 113.443 -	QFile configuration("prophet.ini");
 113.444 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.445 -	QString line;
 113.446 -	QString search="DTNTIMER=";
 113.447 -	line=configuration.readLine();
 113.448 -	while(line.size()>0)
 113.449 -	{
 113.450 -		if(line.indexOf(search)!=-1)
 113.451 -		{
 113.452 -			line.remove(search,Qt::CaseInsensitive);
 113.453 -			return line.toInt();
 113.454 -		}
 113.455 -		line=configuration.readLine();
 113.456 -		
 113.457 -	}
 113.458 -		configuration.close();
 113.459 -
 113.460 -	return 1000;
 113.461 -}
 113.462 -
 113.463 -
 113.464 -
 113.465 -int ReadFile::getAgeFileNodes()
 113.466 -{
 113.467 -	QFile configuration("prophet.ini");
 113.468 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.469 -	QString line;
 113.470 -	QString search="AGEFILENODES=";
 113.471 -	line=configuration.readLine();
 113.472 -	while(line.size()>0)
 113.473 -	{
 113.474 -		if(line.indexOf(search)!=-1)
 113.475 -		{
 113.476 -			line.remove(search,Qt::CaseInsensitive);
 113.477 -			return line.toInt();
 113.478 -		}
 113.479 -		line=configuration.readLine();
 113.480 -		
 113.481 -	}
 113.482 -		configuration.close();
 113.483 -
 113.484 -	return 1;
 113.485 -}
 113.486 -
 113.487 -int ReadFile::getContiniusUpdate()
 113.488 -{
 113.489 -	QFile configuration("prophet.ini");
 113.490 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.491 -	QString line;
 113.492 -	QString search="CONTINIUSUPDATE=";
 113.493 -	line=configuration.readLine();
 113.494 -	while(line.size()>0)
 113.495 -	{
 113.496 -		if(line.indexOf(search)!=-1)
 113.497 -		{
 113.498 -			line.remove(search,Qt::CaseInsensitive);
 113.499 -			return line.toInt();
 113.500 -		}
 113.501 -		line=configuration.readLine();
 113.502 -		
 113.503 -	}
 113.504 -		configuration.close();
 113.505 -
 113.506 -	return 1;
 113.507 -}
 113.508 -
 113.509 -
 113.510 -int ReadFile::getNodeId()
 113.511 -{
 113.512 -	QFile configuration("prophet.ini");
 113.513 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.514 -	QString line;
 113.515 -	QString search="NODEID=";
 113.516 -	line=configuration.readLine();
 113.517 -	while(line.size()>0)
 113.518 -	{
 113.519 -		if(line.indexOf(search)!=-1)
 113.520 -		{
 113.521 -			line.remove(search,Qt::CaseInsensitive);
 113.522 -			return line.toInt();
 113.523 -		}
 113.524 -		line=configuration.readLine();
 113.525 -		
 113.526 -	}
 113.527 -		configuration.close();
 113.528 -
 113.529 -	return 0;
 113.530 -}
 113.531 -
 113.532 -int ReadFile::getUseFileBundles()
 113.533 -{
 113.534 -	QFile configuration("prophet.ini");
 113.535 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.536 -	QString line;
 113.537 -	QString search="USEFILEBUNDLES=";
 113.538 -	line=configuration.readLine();
 113.539 -	while(line.size()>0)
 113.540 -	{
 113.541 -		if(line.indexOf(search)!=-1)
 113.542 -		{
 113.543 -			line.remove(search,Qt::CaseInsensitive);
 113.544 -			return line.toInt();
 113.545 -		}
 113.546 -		line=configuration.readLine();
 113.547 -		
 113.548 -	}
 113.549 -		configuration.close();
 113.550 -
 113.551 -	return 1;
 113.552 -}
 113.553 -
 113.554 -
 113.555 -int ReadFile::getWriteToFileTimer()
 113.556 -{
 113.557 -	QFile configuration("prophet.ini");
 113.558 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.559 -	QString line;
 113.560 -	QString search="WRITETOFILETIMER=";
 113.561 -	line=configuration.readLine();
 113.562 -	while(line.size()>0)
 113.563 -	{
 113.564 -		if(line.indexOf(search)!=-1)
 113.565 -		{
 113.566 -			line.remove(search,Qt::CaseInsensitive);
 113.567 -			return line.toInt();
 113.568 -		}
 113.569 -		line=configuration.readLine();
 113.570 -		
 113.571 -	}
 113.572 -		configuration.close();
 113.573 -
 113.574 -	return 60;
 113.575 -}
 113.576 -
 113.577 -int ReadFile::getUseFileHash()
 113.578 -{
 113.579 -	QFile configuration("prophet.ini");
 113.580 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.581 -	QString line;
 113.582 -	QString search="USEFILEHASH=";
 113.583 -	line=configuration.readLine();
 113.584 -	while(line.size()>0)
 113.585 -	{
 113.586 -		if(line.indexOf(search)!=-1)
 113.587 -		{
 113.588 -			line.remove(search,Qt::CaseInsensitive);
 113.589 -			return line.toInt();
 113.590 -		}
 113.591 -		line=configuration.readLine();
 113.592 -		
 113.593 -	}
 113.594 -		configuration.close();
 113.595 -
 113.596 -	return 1;
 113.597 -}
 113.598 -
 113.599 -
 113.600 -int ReadFile::getLogOption()
 113.601 -{
 113.602 -	QFile configuration("prophet.ini");
 113.603 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.604 -	QString line;
 113.605 -	QString search="LOGGING=";
 113.606 -	line=configuration.readLine();
 113.607 -	while(line.size()>0)
 113.608 -	{
 113.609 -		if(line.indexOf(search)!=-1)
 113.610 -		{
 113.611 -			line.remove(search,Qt::CaseInsensitive);
 113.612 -			return line.toInt();
 113.613 -		}
 113.614 -		line=configuration.readLine();
 113.615 -		
 113.616 -	}
 113.617 -		configuration.close();
 113.618 -
 113.619 -	return 60;
 113.620 -}	
 113.621 -
 113.622 -int ReadFile::getUseFileNodes()
 113.623 -{
 113.624 -	QFile configuration("prophet.ini");
 113.625 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.626 -	QString line;
 113.627 -	QString search="USEFILENODES=";
 113.628 -	line=configuration.readLine();
 113.629 -	while(line.size()>0)
 113.630 -	{
 113.631 -		if(line.indexOf(search)!=-1)
 113.632 -		{
 113.633 -			line.remove(search,Qt::CaseInsensitive);
 113.634 -			return line.toInt();
 113.635 -		}
 113.636 -		line=configuration.readLine();
 113.637 -		
 113.638 -	}
 113.639 -		configuration.close();
 113.640 -
 113.641 -	return 0;
 113.642 -}	
 113.643 -
 113.644 -QString ReadFile::getNodeName()
 113.645 -{
 113.646 -	QFile configuration("prophet.ini");
 113.647 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.648 -	QString line;
 113.649 -	QString search="NODENAME=";
 113.650 -	line=configuration.readLine();
 113.651 -	while(line.size()>0)
 113.652 -	{
 113.653 -		if(line.indexOf(search)!=-1)
 113.654 -		{
 113.655 -			line.remove(search,Qt::CaseInsensitive);
 113.656 -			line.chop(1);
 113.657 -			return line;
 113.658 -		}
 113.659 -		line=configuration.readLine();
 113.660 -		
 113.661 -	}
 113.662 -		configuration.close();
 113.663 -
 113.664 -	QString ret="unknown";
 113.665 -	return ret;
 113.666 -}
 113.667 -
 113.668 -QString ReadFile::getStoragePath()
 113.669 -{
 113.670 -	QFile configuration("prophet.ini");
 113.671 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.672 -	QString line;
 113.673 -	QString search="STORAGEPATH=";
 113.674 -	line=configuration.readLine();
 113.675 -	while(line.size()>0)
 113.676 -	{
 113.677 -		if(line.indexOf(search)!=-1)
 113.678 -		{
 113.679 -			line.remove(search,Qt::CaseInsensitive);
 113.680 -			line.chop(1);
 113.681 -			return line;
 113.682 -		}
 113.683 -		line=configuration.readLine();
 113.684 -		
 113.685 -	}
 113.686 -	QString ret="";
 113.687 -		configuration.close();
 113.688 -
 113.689 -	return ret;
 113.690 -}
 113.691 -
 113.692 -QString ReadFile::getLogPath()
 113.693 -{
 113.694 -	QFile configuration("prophet.ini");
 113.695 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.696 -	QString line;
 113.697 -	QString search="LOGPATH=";
 113.698 -	line=configuration.readLine();
 113.699 -	while(line.size()>0)
 113.700 -	{
 113.701 -		if(line.indexOf(search)!=-1)
 113.702 -		{
 113.703 -			line.remove(search,Qt::CaseInsensitive);
 113.704 -			line.chop(1);
 113.705 -			return line;
 113.706 -		}
 113.707 -		line=configuration.readLine();
 113.708 -		
 113.709 -	}
 113.710 -	QString ret="";
 113.711 -			configuration.close();
 113.712 -
 113.713 -	return ret;
 113.714 -}
 113.715 -QString ReadFile::getMsgPath()
 113.716 -{
 113.717 -	QFile configuration("prophet.ini");
 113.718 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.719 -	QString line;
 113.720 -	QString search="MSGPATH=";
 113.721 -	line=configuration.readLine();
 113.722 -	while(line.size()>0)
 113.723 -	{
 113.724 -		if(line.indexOf(search)!=-1)
 113.725 -		{
 113.726 -			line.remove(search,Qt::CaseInsensitive);
 113.727 -			line.chop(1);
 113.728 -			return line;
 113.729 -		}
 113.730 -		line=configuration.readLine();
 113.731 -		
 113.732 -	}
 113.733 -	QString ret="";
 113.734 -		configuration.close();
 113.735 -
 113.736 -	return ret;
 113.737 -}
 113.738 -
 113.739 -QHostAddress ReadFile::getNodeIp()
 113.740 -{
 113.741 -	QFile configuration("prophet.ini");
 113.742 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.743 -	QString line;
 113.744 -	QString search="NODEIP=";
 113.745 -	line=configuration.readLine();
 113.746 -	while(line.size()>0)
 113.747 -	{
 113.748 -		if(line.indexOf(search)!=-1)
 113.749 -		{
 113.750 -			line.remove(search,Qt::CaseInsensitive);
 113.751 -			QHostAddress ip(line);
 113.752 -			return ip;
 113.753 -
 113.754 -		}
 113.755 -		line=configuration.readLine();
 113.756 -	
 113.757 -	}
 113.758 -		configuration.close();
 113.759 -
 113.760 -	QHostAddress ret("192.168.10.1");
 113.761 -	return ret;
 113.762 -}
 113.763 -
 113.764 -QHostAddress ReadFile::getBroadcast()
 113.765 -{
 113.766 -	QFile configuration("prophet.ini");
 113.767 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.768 -	QString line;
 113.769 -	QString search="NODEBROADCAST=";
 113.770 -	line=configuration.readLine();
 113.771 -	while(line.size()>0)
 113.772 -	{
 113.773 -		if(line.indexOf(search)!=-1)
 113.774 -		{
 113.775 -			line.remove(search,Qt::CaseInsensitive);
 113.776 -			QHostAddress ip(line);
 113.777 -			return ip;
 113.778 -
 113.779 -		}
 113.780 -		line=configuration.readLine();
 113.781 -	}
 113.782 -	QHostAddress ret("255.255.255.255");
 113.783 -		configuration.close();
 113.784 -
 113.785 -	return ret;
 113.786 -
 113.787 -}
 113.788 -
 113.789 -QHostAddress ReadFile::getNodeIp2()
 113.790 -{
 113.791 -	QFile configuration("prophet.ini");
 113.792 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.793 -	QString line;
 113.794 -	QString search="NODEIP2=";
 113.795 -	line=configuration.readLine();
 113.796 -	while(line.size()>0)
 113.797 -	{
 113.798 -		if(line.indexOf(search)!=-1)
 113.799 -		{
 113.800 -			line.remove(search,Qt::CaseInsensitive);
 113.801 -			QHostAddress ip(line);
 113.802 -			return ip;
 113.803 -
 113.804 -		}
 113.805 -		line=configuration.readLine();
 113.806 -	
 113.807 -	}
 113.808 -	QHostAddress ret("192.168.10.1");
 113.809 -		configuration.close();
 113.810 -
 113.811 -	return ret;
 113.812 -
 113.813 -}
 113.814 -
 113.815 -QHostAddress ReadFile::getDTNHostName()
 113.816 -{
 113.817 -	QFile configuration("prophet.ini");
 113.818 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 113.819 -	QString line;
 113.820 -	QString search="DTNHOSTNAME=";
 113.821 -	line=configuration.readLine();
 113.822 -	while(line.size()>0)
 113.823 -	{
 113.824 -		if(line.indexOf(search)!=-1)
 113.825 -		{
 113.826 -			line.remove(search,Qt::CaseInsensitive);
 113.827 -			QHostAddress ip(line);
 113.828 -			return ip;
 113.829 -
 113.830 -		}
 113.831 -		line=configuration.readLine();
 113.832 -	
 113.833 -	}
 113.834 -	QHostAddress ret("192.168.10.1");
 113.835 -		configuration.close();
 113.836 -
 113.837 -	return ret;
 113.838 -
 113.839 -}
   114.1 --- a/x86/2.7/readFile.h	Wed Jan 03 09:17:10 2007 +0000
   114.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   114.3 @@ -1,64 +0,0 @@
   114.4 -#ifndef READFILE_H
   114.5 -#define READFILE_H
   114.6 -
   114.7 -#include <QtCore>
   114.8 -#include <QtNetwork>
   114.9 -
  114.10 -//QSettings could be used instead...
  114.11 -
  114.12 -/*! \brief This class contains the parser for the configuration file 
  114.13 - * prophet.ini.
  114.14 - * 
  114.15 - * */
  114.16 -class ReadFile: public QObject
  114.17 -{
  114.18 -	Q_OBJECT
  114.19 -
  114.20 -	public:
  114.21 -
  114.22 -	QFile configuration;
  114.23 -
  114.24 -	ReadFile();
  114.25 -	float getGamma();
  114.26 -	float getBeta();
  114.27 -	float getPEncounter();
  114.28 -	int getNodeId();
  114.29 -	int getAgingTimer();
  114.30 -	int getHelloTimer();
  114.31 -	int getInitiatorTimer();
  114.32 -	int getListenerTimer();
  114.33 -	int getDTNHostPort();
  114.34 -	int getMemoryStorageSize();
  114.35 -	int getStorageSize();
  114.36 -	int getAlive();
  114.37 -	int getBroadcastTimer();
  114.38 -	int getHello();
  114.39 -	int getContiniusUpdate();
  114.40 -	int getRouting();
  114.41 -	int getUseFileNodes();
  114.42 -	int getWriteToFileTimer();
  114.43 -	int getAgeFileNodes();
  114.44 -	int getUseFileBundles();
  114.45 -	int getLogOption();
  114.46 -	int getUseACKS();
  114.47 -	int getTTL();
  114.48 -	int getUseTTL();
  114.49 -	int getDTNTimer();
  114.50 -	int getQueue();
  114.51 -	int getSmartOffer();
  114.52 -	int getUseFileHash();
  114.53 -	
  114.54 -	QString getStoragePath();
  114.55 -	QString getMsgPath();
  114.56 -	QString getLogPath();
  114.57 -
  114.58 -
  114.59 -
  114.60 -	QString getNodeName();
  114.61 -	QHostAddress getNodeIp();
  114.62 -	QHostAddress getNodeIp2();
  114.63 -	QHostAddress getDTNHostName();
  114.64 -	QHostAddress getBroadcast();
  114.65 -};
  114.66 -
  114.67 -#endif
   115.1 Binary file x86/2.7/red_off.png has changed
   116.1 Binary file x86/2.7/red_on.png has changed
   117.1 --- a/x86/2.7/tcpClient.cpp	Wed Jan 03 09:17:10 2007 +0000
   117.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   117.3 @@ -1,101 +0,0 @@
   117.4 -#include "tcpClient.h"
   117.5 -
   117.6 -TcpClient::TcpClient(QObject* parent) : QTcpSocket(parent)
   117.7 -{
   117.8 -
   117.9 -	timer = new QTimer;
  117.10 -	timer->setSingleShot(true);
  117.11 -	connect(timer, SIGNAL(timeout()), this, SLOT(reconnectToHost()));
  117.12 -	connect(this, SIGNAL(stateChanged(QAbstractSocket::SocketState)), this, SLOT(hostStateChanged(QAbstractSocket::SocketState)));
  117.13 -	connect(this, SIGNAL(error(QAbstractSocket::SocketError)), this, SLOT(hostError(QAbstractSocket::SocketError)));
  117.14 -	connect(this, SIGNAL(readyRead()), this, SLOT(hostReadyRead()));
  117.15 -	int i = readBufferSize();
  117.16 -	setReadBufferSize(0);
  117.17 -	currentHostIndex = 0;
  117.18 -}
  117.19 -
  117.20 -TcpClient::~TcpClient()
  117.21 -{
  117.22 -}
  117.23 -
  117.24 -void TcpClient::addHost(QString hn, int hp)
  117.25 -{
  117.26 -	hostNames << hn;
  117.27 -	hostPorts << hp;
  117.28 -	currentHostIndex = hostNames.count()-1;
  117.29 -	if ((state() == QAbstractSocket::UnconnectedState) && (hostNames.count() == 1))
  117.30 -		connectToHost(hostNames[currentHostIndex], hostPorts[currentHostIndex]);
  117.31 -}
  117.32 -
  117.33 -void TcpClient::reconnectToHost()
  117.34 -{
  117.35 -	if (hostNames.count() == 0)
  117.36 -		return;
  117.37 -	currentHostIndex++;
  117.38 -	currentHostIndex = currentHostIndex % hostNames.count();
  117.39 -	connectToHost(hostNames[currentHostIndex], hostPorts[currentHostIndex]);
  117.40 -}
  117.41 -
  117.42 -void TcpClient::hostStateChanged(QAbstractSocket::SocketState state)
  117.43 -{
  117.44 -	switch (state)
  117.45 -	{
  117.46 -	case QAbstractSocket::ConnectedState:
  117.47 -		{
  117.48 -			QList<QString>::iterator it;
  117.49 -			it = commands.begin();
  117.50 -			while (it != commands.end())
  117.51 -			{
  117.52 -				write((*it).toAscii());
  117.53 -				it++;
  117.54 -			}
  117.55 -			emit connected();
  117.56 -		}
  117.57 -		break;
  117.58 -	case QAbstractSocket::UnconnectedState:
  117.59 -		timer->start(2000);
  117.60 -		emit disconnected();
  117.61 -		break;
  117.62 -	}
  117.63 -}
  117.64 -
  117.65 -void TcpClient::hostError(QAbstractSocket::SocketError error)
  117.66 -{
  117.67 -	abort();
  117.68 -	timer->start(2000);
  117.69 -	emit disconnected();
  117.70 -}
  117.71 -
  117.72 -void TcpClient::hostReadyRead()
  117.73 -{
  117.74 -	buffer += readAll();
  117.75 -	int from = 0;
  117.76 -	int idx;
  117.77 -	int size = buffer.size();
  117.78 -	QByteArray end=buffer.mid(size-5);
  117.79 -	idx = end.indexOf("dtn%", from);
  117.80 -	if (idx != -1)
  117.81 -	{
  117.82 -		QByteArray oddan;
  117.83 -		oddan.append(buffer);
  117.84 -		int velikos = oddan.size();
  117.85 -		emit newAnswer(oddan);
  117.86 -		buffer.clear();
  117.87 -	}
  117.88 -}
  117.89 -
  117.90 -void TcpClient::appendCommand(int id, QString cmd)
  117.91 -{
  117.92 -	cmd += QString("\r");
  117.93 -	commands.append(cmd);
  117.94 -	if (state() == QAbstractSocket::ConnectedState)
  117.95 -		write(cmd.toAscii());
  117.96 -}
  117.97 -
  117.98 -bool TcpClient::isConnected()
  117.99 -{
 117.100 -	if (state() == QAbstractSocket::ConnectedState)
 117.101 -		return true;
 117.102 -	else
 117.103 -		return false;
 117.104 -}
   118.1 --- a/x86/2.7/tcpClient.h	Wed Jan 03 09:17:10 2007 +0000
   118.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   118.3 @@ -1,40 +0,0 @@
   118.4 -#ifndef TCPCLIENT_H
   118.5 -#define TCPCLIENT_H
   118.6 -
   118.7 -#include <QtCore>
   118.8 -#include <QTcpSocket>
   118.9 -#include <QTextCodec>
  118.10 -
  118.11 -class TcpClient : public QTcpSocket
  118.12 -{
  118.13 -	Q_OBJECT
  118.14 -
  118.15 -public:
  118.16 -	TcpClient(QObject* parent = 0);
  118.17 -	~TcpClient();
  118.18 -	virtual void addHost(QString hn, int hp);
  118.19 -	virtual void appendCommand(int id, QString cmd);
  118.20 -	virtual bool isConnected();
  118.21 -
  118.22 -public slots:
  118.23 -	virtual void reconnectToHost();
  118.24 -	virtual void hostStateChanged(QAbstractSocket::SocketState state);
  118.25 -	virtual void hostError(QAbstractSocket::SocketError error);
  118.26 -	virtual void hostReadyRead();
  118.27 -
  118.28 -signals:
  118.29 -	void newAnswer(QByteArray answ);
  118.30 -	void connected();
  118.31 -	void disconnected();
  118.32 -	
  118.33 -private:
  118.34 -	QList<QString> commands;
  118.35 -	QList<int> ids;
  118.36 -	QByteArray buffer;
  118.37 -	QTimer* timer;
  118.38 -	QList<QString> hostNames;
  118.39 -	QList<int> hostPorts;
  118.40 -	int currentHostIndex;
  118.41 -};
  118.42 -
  118.43 -#endif
   119.1 --- a/x86/2.7/tlv.cpp	Wed Jan 03 09:17:10 2007 +0000
   119.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   119.3 @@ -1,521 +0,0 @@
   119.4 -#include <QtCore>
   119.5 -#include <tlv.h>
   119.6 -#include <hello.h>
   119.7 -#include <messageFile.h>
   119.8 -#include <readFile.h>
   119.9 -#include <stdio.h>
  119.10 -
  119.11 -
  119.12 -//WARNING: SOME OF THE STRUCTURES HAS BEEN MODIFIED AND ARE NOT THE SAME AS IN DRAFT!
  119.13 -struct HelloHeader
  119.14 -{
  119.15 -	qint32 type;
  119.16 -	qint32 function;
  119.17 -	qint32 timer;
  119.18 -	qint32 nameLenght;
  119.19 -	qint32 nodeId;
  119.20 -	qint32 nodeType;
  119.21 -};
  119.22 -
  119.23 -struct DictionaryHeader 
  119.24 -{
  119.25 -	qint32 type;
  119.26 -	qint32 flags;
  119.27 -	qint32 lenght;
  119.28 -	qint32 entryCount;
  119.29 -	qint32 reserved;
  119.30 -};
  119.31 -
  119.32 -struct BundleListHeader 
  119.33 -{
  119.34 -	qint32 type;
  119.35 -	qint32 flags;
  119.36 -	qint32 lenght;
  119.37 -	qint32 entryCount;
  119.38 -	qint32 reserved;
  119.39 -};
  119.40 -
  119.41 -struct BundleListItem 
  119.42 -{
  119.43 -	qint32 destinationId;
  119.44 -	qint32 BFlags;
  119.45 -	qint32 reserved;
  119.46 -	qint32 bundleId;
  119.47 -};
  119.48 -
  119.49 -struct BundleDataHeader 
  119.50 -{
  119.51 -	qint32 sourceId;
  119.52 -	qint32 destinationId;
  119.53 -	qint32 bundleId;
  119.54 -	qint32 BFlags;
  119.55 -	qint32 reserved;
  119.56 -	qint32 dataLenght;	
  119.57 -	qint32 sourceStringLenght;
  119.58 -	qint32 destinationStringLenght;
  119.59 -	uint time;
  119.60 -};
  119.61 -
  119.62 -
  119.63 -struct DictionaryNodeHeader 
  119.64 -{
  119.65 -	qint32 stringId;
  119.66 -	qint32 lenght;
  119.67 -	qint32 reserved;
  119.68 -};
  119.69 -
  119.70 -struct RIBNodeHeader 
  119.71 -{
  119.72 -	qint32 stringId;
  119.73 -	float probability;
  119.74 -	qint32 RIBFlag;
  119.75 -};
  119.76 -
  119.77 -struct Header 
  119.78 -{
  119.79 -	qint32 type;
  119.80 -
  119.81 -};
  119.82 -
  119.83 -
  119.84 -
  119.85 -TLV::TLV(QObject *parent)
  119.86 -{
  119.87 -	ReadFile conf;
  119.88 -	fileOption=conf.getUseFileBundles();
  119.89 -	if(fileOption==1)
  119.90 -	{
  119.91 -		QString storagePath=conf.getStoragePath();
  119.92 -		dir.setPath(storagePath);
  119.93 -	}
  119.94 -}
  119.95 -
  119.96 -
  119.97 -
  119.98 -void TLV::receiveDatagram(QByteArray datagram)
  119.99 -{
 119.100 -	Header* TLVType;
 119.101 -	TLVType= (Header*) datagram.constData();
 119.102 -	qint32 datagramIndex;
 119.103 -	//Read out TLV Type
 119.104 -	QByteArray temp;
 119.105 -	Hello newHello;
 119.106 -	QList<Node> receivedNodes;
 119.107 -	QList<Bundle> receivedBundles;
 119.108 -	QString name;
 119.109 -	struct DictionaryHeader *dictionaryHeader; //It is the same for RIB
 119.110 -	struct BundleListHeader *bundleHeader;
 119.111 -	struct HelloHeader *hello;
 119.112 -	qint32 entryCount;	
 119.113 -	qint32 lenght;
 119.114 -	switch(TLVType->type)
 119.115 -	{
 119.116 -		//Hello massage forming
 119.117 -		case 0x01:	//////log->addLog(0,(QString)"TLV receiving Hello datagram...");
 119.118 -					hello= (HelloHeader*) datagram.constData();
 119.119 - 					newHello.HFunction=(qint32)hello->function;
 119.120 -					newHello.timer =(qint32)hello->timer;
 119.121 -					newHello.senderId=(qint32)hello->nodeId;
 119.122 -					newHello.senderType =(qint32)hello->nodeType;
 119.123 -					lenght = (qint32)hello->nameLenght;
 119.124 -					datagram.remove(0,sizeof(HelloHeader));
 119.125 -					name=datagram.mid(0,lenght);
 119.126 -					newHello.setSenderName(name);
 119.127 -					emit sendHello(newHello);
 119.128 -		break;
 119.129 -		//RIB
 119.130 -		case 0xA1:	//////log->addLog(0,(QString)"TLV receiving RIB datagram...");
 119.131 -					dictionaryHeader = (DictionaryHeader*) datagram.constData();
 119.132 -					entryCount=dictionaryHeader->entryCount;
 119.133 -					datagram.remove(0,sizeof(DictionaryHeader));
 119.134 -					for (ushort i = 0; i < entryCount; ++i) 
 119.135 -					{
 119.136 -						//Resolving data from datagram
 119.137 -						struct RIBNodeHeader *nodeHeader = (RIBNodeHeader*) datagram.constData();
 119.138 -						qint32 stringId = (qint32)nodeHeader->stringId;
 119.139 -						qint32 flag = (qint32)nodeHeader->RIBFlag;
 119.140 -						float probability = (float)nodeHeader->probability;
 119.141 -						datagram.remove(0,sizeof(RIBNodeHeader));
 119.142 -						//Setting node variables
 119.143 -						Node tempNode;
 119.144 -						tempNode.setContent(stringId,probability,flag,"X");
 119.145 -						//Adding variables in the list
 119.146 -						receivedNodes.append(tempNode);
 119.147 -					}
 119.148 -					emit sendRIB(receivedNodes);
 119.149 -		break;
 119.150 -		//BUNDLE OFFER RECEIVED
 119.151 -		case 0xA2:	//////log->addLog(0,(QString)"TLV receiving Bundle offer datagram...");
 119.152 -					bundleHeader = (BundleListHeader*) datagram.constData();
 119.153 -					entryCount=(qint32)bundleHeader->entryCount;
 119.154 -					datagramIndex=sizeof(BundleListHeader);
 119.155 -					datagram.remove(0,datagramIndex);
 119.156 -					for (ushort i = 0; i < entryCount; ++i) 
 119.157 -					{
 119.158 -						//Resolving data from datagram
 119.159 -						struct BundleListItem *bundleItem;
 119.160 -						bundleItem = (BundleListItem*) datagram.constData();
 119.161 -						
 119.162 -						qint32 destId = (qint32)bundleItem->destinationId;
 119.163 -						qint32 bundId = (qint32)bundleItem->bundleId;
 119.164 -						qint32 BFlags = (qint32)bundleItem->BFlags;
 119.165 -						qint32 reserved = (qint32)bundleItem->reserved;
 119.166 -						datagram.remove(0,sizeof(BundleListItem));
 119.167 -						//Setting Bundle variables
 119.168 -						Bundle tempBundle;
 119.169 -						tempBundle.destinationId = destId;
 119.170 -						tempBundle.id = bundId;
 119.171 -						tempBundle.options = BFlags;
 119.172 -						//Adding variables in the list
 119.173 -						receivedBundles.append(tempBundle);
 119.174 -					}
 119.175 -					emit sendBundleOffer(receivedBundles);
 119.176 -		break;
 119.177 -		//BUNDLE REQUEST RECEIVED
 119.178 -		case 0xA3:	//////log->addLog(0,(QString)"TLV receiving Bundle Request datagram...");
 119.179 -					bundleHeader = (BundleListHeader*) datagram.constData();
 119.180 -					entryCount=bundleHeader->entryCount;
 119.181 -					datagramIndex=sizeof(BundleListHeader);
 119.182 -					datagram.remove(0,datagramIndex);
 119.183 -					for (ushort i = 0; i < entryCount; ++i) 
 119.184 -					{
 119.185 -						//Resolving data from datagram
 119.186 -						struct BundleListItem *bundleItem;
 119.187 -						bundleItem = (BundleListItem*) datagram.constData();
 119.188 -						
 119.189 -						qint32 destId = (qint32)bundleItem->destinationId;
 119.190 -						qint32 bundId = (qint32)bundleItem->bundleId;
 119.191 -						qint32 BFlags = (qint32)bundleItem->BFlags;
 119.192 -						qint32 reserved = (qint32)bundleItem->reserved;
 119.193 -						datagram.remove(0,sizeof(BundleListItem));
 119.194 -						//Setting Bundle variables
 119.195 -						Bundle tempBundle;
 119.196 -						tempBundle.destinationId = destId;
 119.197 -						tempBundle.id = bundId;
 119.198 -						tempBundle.options = BFlags;
 119.199 -						//Adding variables in the list
 119.200 -						receivedBundles.append(tempBundle);
 119.201 -					}
 119.202 -					emit sendBundleRequest(receivedBundles);
 119.203 -		break;
 119.204 -		//Dictionary
 119.205 -		case 0xA0:	//////log->addLog(0,(QString)"TLV receiving Dictionary datagram...");
 119.206 -					dictionaryHeader = (DictionaryHeader*) datagram.constData();
 119.207 -					entryCount=dictionaryHeader->entryCount;
 119.208 -					datagram.remove(0,sizeof(DictionaryHeader));
 119.209 -					for (ushort i = 0; i < entryCount; ++i) 
 119.210 -					{
 119.211 -						QString nodeName;
 119.212 -						//Resolving data from datagram
 119.213 -						struct DictionaryNodeHeader * nodeHeader = (DictionaryNodeHeader*) datagram.constData();
 119.214 -						qint32 stringId = (qint32)nodeHeader->stringId;
 119.215 -						qint32 lenght = (qint32)nodeHeader->lenght;
 119.216 -						datagram.remove(0,sizeof(DictionaryNodeHeader)); //Because stings terminator
 119.217 -						nodeName=datagram.mid(0,lenght);
 119.218 -						datagram.remove(0,lenght);
 119.219 -						//Setting node variables
 119.220 -						Node tempNode;
 119.221 -						tempNode.setContent(stringId,0.0,-1,nodeName);
 119.222 -						//Adding variables in the list
 119.223 -						receivedNodes.append(tempNode);
 119.224 -					}
 119.225 -					emit sendDictionary(receivedNodes);
 119.226 -		break;		
 119.227 -		//BUNDLE DATA RECEIVED
 119.228 -		case 0xA4:	//////log->addLog(0,(QString)"TLV receiving Bundle data datagram...");
 119.229 -					bundleHeader = (BundleListHeader*) datagram.constData();
 119.230 -					entryCount=bundleHeader->entryCount;
 119.231 -					datagramIndex=sizeof(BundleListHeader);
 119.232 -					datagram.remove(0,datagramIndex);
 119.233 -					for (ushort i = 0; i < entryCount; ++i) 
 119.234 -					{
 119.235 -						//Resolving data from datagram
 119.236 -						struct BundleDataHeader *bundleItem;
 119.237 -						bundleItem = (BundleDataHeader*) datagram.constData();
 119.238 -						
 119.239 -						qint32 destId = (qint32)bundleItem->destinationId;
 119.240 -						qint32 srcId = (qint32)bundleItem->sourceId;
 119.241 -						qint32 bundId = (qint32)bundleItem->bundleId;
 119.242 -						qint32 BFlags = (qint32)bundleItem->BFlags;
 119.243 -						qint32 reserved = (qint32)bundleItem->reserved;
 119.244 -						qint32 lenght = (qint32)bundleItem->dataLenght;
 119.245 -						qint32 srclenght = (qint32)bundleItem->sourceStringLenght;
 119.246 -						qint32 dstlenght = (qint32)bundleItem->destinationStringLenght;
 119.247 -						
 119.248 -						QDateTime time;
 119.249 -						time.setTime_t(bundleItem->time);
 119.250 -						datagram.remove(0,sizeof(BundleDataHeader));
 119.251 -						//Setting Bundle variables
 119.252 -						Bundle tempBundle;
 119.253 -						tempBundle.destinationId = destId;
 119.254 -						tempBundle.sourceId = srcId;
 119.255 -						tempBundle.id = bundId;
 119.256 -						tempBundle.options = BFlags;
 119.257 -						tempBundle.timeStamp = time;
 119.258 -						QByteArray datagramPart;
 119.259 -						datagramPart=datagram.mid(0,lenght);
 119.260 -						tempBundle.data=datagramPart;
 119.261 -						datagram.remove(0,lenght);
 119.262 -						tempBundle.dataLength=lenght;
 119.263 -						datagramPart=datagram.mid(0,srclenght);
 119.264 -						tempBundle.sourceString=datagramPart;
 119.265 -						datagram.remove(0,srclenght);
 119.266 -						datagramPart=datagram.mid(0,dstlenght);
 119.267 -						tempBundle.destinationString=datagramPart;
 119.268 -						datagram.remove(0,dstlenght);
 119.269 -						//Adding variables in the list
 119.270 -						receivedBundles.append(tempBundle);
 119.271 -					}
 119.272 -					emit sendBundleData(receivedBundles);
 119.273 -		break;
 119.274 -		default:	//////log->addLog(0,(QString)"TLV receiving Unknown datagram...");
 119.275 -					//QString name;
 119.276 -					temp = datagram.mid(2,1);
 119.277 -//					function = temp.toushort();
 119.278 -					temp = datagram.mid(32,1);
 119.279 -//					timer = temp.toushort();
 119.280 -					temp = datagram.mid(40,1);
 119.281 -//					nameLenght = temp.toushort();
 119.282 -					temp = datagram.mid(48,0);
 119.283 -					newHello.setFunction(0);
 119.284 -					newHello.setTimer(0);
 119.285 -					newHello.setSenderName(0);
 119.286 -
 119.287 -		break;
 119.288 -	}
 119.289 -
 119.290 -}
 119.291 -
 119.292 -
 119.293 -void TLV::receiveHello(Hello hello)
 119.294 -{
 119.295 -	//Setting up variables
 119.296 -	struct HelloHeader header;
 119.297 -	QString nodeName = hello.getSenderName();
 119.298 -	header.type = 0x01;//Hello 
 119.299 -	header.function = (qint32)hello.getFunction();
 119.300 -	header.timer = (qint32)hello.getTimer();
 119.301 -	header.nodeId = (qint32)hello.senderId;
 119.302 -	header.nodeType = (qint32)hello.senderType;
 119.303 -	header.nameLenght = (qint32)nodeName.size();
 119.304 -	//Preparing heder
 119.305 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(HelloHeader));	
 119.306 -	//Adding Addres Strings
 119.307 -	newDatagram.append(nodeName.toAscii());
 119.308 -	//Sending our TLV datagram
 119.309 -	//////log->addLog(0,(QString)"TLV sending Hello datagram...");
 119.310 -	emit sendDatagram(newDatagram);
 119.311 -}
 119.312 -
 119.313 -
 119.314 -//Create Dictionary
 119.315 -void TLV::createDictionary(QList<Node> nodeList)
 119.316 -{
 119.317 -	//Setting up variables
 119.318 -	struct DictionaryHeader header;
 119.319 -	header.type = 0xA0;//Dictionary 
 119.320 -	header.flags = 0x00;
 119.321 -	header.lenght = 0x00;
 119.322 -	header.entryCount=(qint32)(nodeList.size());
 119.323 -	header.reserved = 0x00;
 119.324 -	//Preparing heder
 119.325 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(DictionaryHeader));	
 119.326 -	//Adding Addres Strings
 119.327 -	Node tempNode;
 119.328 -	for (ushort i = 0; i < nodeList.size(); ++i) 
 119.329 -	{
 119.330 -		struct DictionaryNodeHeader newNodeHeader;
 119.331 -		//Resolving data from list
 119.332 -        tempNode = nodeList.at(i);
 119.333 -		newNodeHeader.stringId = (qint32)tempNode.getId();
 119.334 -		newNodeHeader.reserved=0x00;
 119.335 -		newNodeHeader.lenght= (qint32)tempNode.nodeName.size();
 119.336 -		//Puting data to datagram
 119.337 -		QByteArray nodeDatagram = QByteArray::fromRawData((char *)&newNodeHeader, sizeof(newNodeHeader));	
 119.338 -		nodeDatagram.append(tempNode.nodeName);
 119.339 -		newDatagram.append(nodeDatagram);
 119.340 -    }
 119.341 -	//////log->addLog(0,(QString)"TLV Sending dictionary datagram...");
 119.342 -	emit sendDatagram(newDatagram);
 119.343 -
 119.344 -}
 119.345 -
 119.346 -//Create RIB
 119.347 -void TLV::createRIB(QList<Node> nodeList)
 119.348 -{
 119.349 -	//Setting up variables
 119.350 -	struct DictionaryHeader header; //It is the same as Dictionary
 119.351 -	header.type = 0xA1;//RIB Type
 119.352 -	header.flags = 0x00;
 119.353 -	header.lenght = 0x00;
 119.354 -	header.entryCount=(qint32)nodeList.size();
 119.355 -	header.reserved = 0x00;
 119.356 -	//Preparing heder
 119.357 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(DictionaryHeader));	
 119.358 -	for (ushort i = 0; i < nodeList.size(); ++i) 
 119.359 -	{
 119.360 -		Node tempNode;
 119.361 -		struct RIBNodeHeader  newNodeHeader;
 119.362 -		//Resolving data from list
 119.363 -        tempNode = nodeList.at(i);
 119.364 -		newNodeHeader.stringId = (qint32)tempNode.getId();
 119.365 -		newNodeHeader.probability = tempNode.getProbability();
 119.366 -		newNodeHeader.RIBFlag = (qint32)tempNode.getFlag();
 119.367 -		//Puting data to datagram
 119.368 -		QByteArray nodeDatagram = QByteArray::fromRawData((char *)&newNodeHeader, sizeof(newNodeHeader));	
 119.369 -		newDatagram.append(nodeDatagram);
 119.370 -    }
 119.371 -	//////log->addLog(0,(QString)"TLV Sending RIB datagram...");
 119.372 -	emit sendDatagram(newDatagram);
 119.373 -
 119.374 -}
 119.375 -
 119.376 -
 119.377 -//Create BundleOffer
 119.378 -void TLV::createBundleOffer(QList<Bundle> bundleList)
 119.379 -{
 119.380 -	//Setting up variables
 119.381 -	struct BundleListHeader header;
 119.382 -	header.type = 0xA2;//Offer
 119.383 -	header.flags = 0x22;
 119.384 -	header.lenght = 0x00;
 119.385 -	header.entryCount=(qint32)bundleList.size();
 119.386 -	header.reserved = 0x00;
 119.387 -	//Preparing heder
 119.388 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(BundleListHeader));	
 119.389 -	//Adding bundles
 119.390 -	for (ushort i = 0; i < bundleList.size(); ++i) 
 119.391 -	{
 119.392 -		struct BundleListItem newBundleItem;
 119.393 -		//Resolving data from list
 119.394 -        Bundle tempBundle = bundleList.at(i);
 119.395 -		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 119.396 -		newBundleItem.bundleId=(qint32)tempBundle.id;
 119.397 -		newBundleItem.BFlags=(qint32)tempBundle.options;
 119.398 -		newBundleItem.reserved=0xaa;
 119.399 -		//Puting data to datagram
 119.400 -		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(newBundleItem));	
 119.401 -		newDatagram.append(bundleDatagram);
 119.402 -    }
 119.403 -	//////log->addLog(0,(QString)"TLV Sending bundle offer...");
 119.404 -	emit sendDatagram(newDatagram);
 119.405 -
 119.406 -}
 119.407 -
 119.408 -//Create BundleRequest
 119.409 -void TLV::createBundleRequest(QList<Bundle> bundleList)
 119.410 -{
 119.411 -	//Setting up variables
 119.412 -	struct BundleListHeader header;
 119.413 -	header.type = 0xA3;//Request
 119.414 -	header.flags = 0x22;
 119.415 -	header.lenght = 0x00;
 119.416 -	header.entryCount=bundleList.size();
 119.417 -	header.reserved = 0x00;
 119.418 -	//Preparing heder
 119.419 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(BundleListHeader));	
 119.420 -	//Adding bundles
 119.421 -	for (ushort i = 0; i < bundleList.size(); ++i) 
 119.422 -	{
 119.423 -		struct BundleListItem newBundleItem;
 119.424 -		//Resolving data from list
 119.425 -        Bundle tempBundle = bundleList.at(i);
 119.426 -		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 119.427 -		newBundleItem.bundleId=(qint32)tempBundle.id;
 119.428 -		newBundleItem.BFlags=(qint32)tempBundle.options;
 119.429 -		newBundleItem.reserved=0xaa;
 119.430 -		//Puting data to datagram
 119.431 -		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(BundleListItem));	
 119.432 -		newDatagram.append(bundleDatagram);
 119.433 -    }
 119.434 -	//////log->addLog(0,(QString)"TLV Sending bundle request...");
 119.435 -	emit sendDatagram(newDatagram);
 119.436 -
 119.437 -}
 119.438 -
 119.439 -
 119.440 -///Create Bundle Data
 119.441 -void TLV::createBundleData(QList<Bundle> bundleList)
 119.442 -{
 119.443 -
 119.444 -	
 119.445 -	//Setting up variables
 119.446 -	struct BundleListHeader header;
 119.447 -	header.type = 0xA4;//Bundle Data
 119.448 -	header.flags = 0x22;
 119.449 -	header.lenght = 0x00;
 119.450 -	header.entryCount=bundleList.size();
 119.451 -	header.reserved = 0x00;
 119.452 -	//Preparing heder
 119.453 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(header));	
 119.454 -	//Adding bundles
 119.455 -	for (ushort i = 0; i < bundleList.size(); ++i) 
 119.456 -	{
 119.457 -		struct BundleDataHeader newBundleItem;
 119.458 -		//Resolving data from list
 119.459 -        	Bundle tempBundle = bundleList.at(i);
 119.460 -		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 119.461 -		newBundleItem.sourceId=(qint32)tempBundle.sourceId;
 119.462 -		newBundleItem.bundleId=(qint32)tempBundle.id;
 119.463 -		newBundleItem.BFlags=(qint32)tempBundle.options;
 119.464 -		newBundleItem.reserved=0xaa;
 119.465 -		newBundleItem.time = tempBundle.timeStamp.toTime_t ();
 119.466 -		//Get bundle data
 119.467 -		QByteArray data;
 119.468 -		data.clear();
 119.469 -		int fileSize;
 119.470 -		if(fileOption==1)
 119.471 -		{
 119.472 -			QString filename;
 119.473 -			filename=QString("%1").arg((int)tempBundle.id);
 119.474 -			QFile file(dir.filePath(filename));
 119.475 -			if(file.exists()==1)
 119.476 -			{
 119.477 -				if (file.open(QIODevice::ReadOnly))
 119.478 -				{
 119.479 -					fileSize=file.size();
 119.480 -					data=file.readAll();
 119.481 -			    		file.close();
 119.482 -				}
 119.483 -			}
 119.484 -		}
 119.485 -		else
 119.486 -		{
 119.487 -			data = tempBundle.data;
 119.488 -		}
 119.489 -		if(data.size()<=0)
 119.490 -			data.clear();
 119.491 -	/*	int size = data.size();
 119.492 -	        QString printout="Size:";
 119.493 -		printout.append(QString("%1").arg((int)size));
 119.494 -		qDebug(printout.toAscii());
 119.495 -		printout.clear();
 119.496 -		printout.append("FileSize:");
 119.497 -		printout.append(QString("%1").arg((int)fileSize));
 119.498 -		qDebug(printout.toAscii());
 119.499 -		printout.clear();
 119.500 -		printout.append("Data:");
 119.501 -		printout.append(data);
 119.502 -		qDebug(printout.toAscii());
 119.503 -	*/	newBundleItem.dataLenght=(qint32)data.size();
 119.504 -		//Get bundle source string
 119.505 -		QByteArray srcData = tempBundle.sourceString;
 119.506 -		newBundleItem.sourceStringLenght=(qint32)srcData.size();
 119.507 -		//Get bundle destination string
 119.508 -		QByteArray dstData = tempBundle.destinationString;
 119.509 -		newBundleItem.destinationStringLenght=(qint32)dstData.size();
 119.510 -		//Puting item header to datagram
 119.511 -		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(newBundleItem));	
 119.512 -		//Puting item data to datagram
 119.513 -		bundleDatagram.append(data);
 119.514 -		bundleDatagram.append(srcData);
 119.515 -		bundleDatagram.append(dstData);
 119.516 -		//Adding it to main datagram
 119.517 -		newDatagram.append(bundleDatagram);
 119.518 -
 119.519 -    }
 119.520 -	//////log->addLog(0,(QString)"TLV Sending bundle data...");
 119.521 -	emit sendDatagram(newDatagram);
 119.522 -}
 119.523 -
 119.524 -
   120.1 --- a/x86/2.7/tlv.h	Wed Jan 03 09:17:10 2007 +0000
   120.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   120.3 @@ -1,115 +0,0 @@
   120.4 -#ifndef TLV_H
   120.5 -#define TLV_H
   120.6 -
   120.7 -#include <QtCore>
   120.8 -#include <hello.h>
   120.9 -#include <node.h>
  120.10 -#include <bundle.h>
  120.11 -
  120.12 -/*! \brief This class converts datagrams to objects and vice versa.
  120.13 - * 
  120.14 - */
  120.15 -class TLV : public QObject
  120.16 -{
  120.17 -
  120.18 -Q_OBJECT 
  120.19 -	public:
  120.20 -		TLV(QObject *parent = 0);
  120.21 -		int fileOption;
  120.22 -		QDir dir;
  120.23 -
  120.24 -	signals:
  120.25 -		/*! \brief
  120.26 -		 * Sends a datagram to the appropriate Connection object, 
  120.27 -		 * which in turn passes it on as a DataPacket to 
  120.28 -		 * NeighborAwareness where it is sent out on a socket.
  120.29 -		 */
  120.30 -		void sendDatagram(QByteArray);
  120.31 -	
  120.32 -		/*! \brief
  120.33 -		 * Emits a Hello message to the appropriate Connection object.
  120.34 -		 */
  120.35 -		void sendHello(Hello);
  120.36 -		
  120.37 -		/*! \brief
  120.38 -		 * Emits a list with id<-> name mappings to the appropriate 
  120.39 -		 * Conenction object.
  120.40 -		 */
  120.41 -		void sendDictionary(QList<Node>);
  120.42 -		
  120.43 -		/*! \brief
  120.44 -		 * Emits a list of id<->probability mappings to the 
  120.45 -		 * appropriate Connection object.
  120.46 -		 */
  120.47 -		void sendRIB(QList<Node>);
  120.48 -		
  120.49 -		/*! \brief
  120.50 -		 * Emits a bundle offer to the appropriate Connection object.
  120.51 -		 */
  120.52 -		void sendBundleOffer(QList<Bundle>);
  120.53 -		
  120.54 -		/*! \brief
  120.55 -		 * Emits a bundle request to the appropriate Connection object.
  120.56 -		 */
  120.57 -		void sendBundleRequest(QList<Bundle>);
  120.58 -		
  120.59 -		//! Emits a list of bundles containing data.
  120.60 -		/*!
  120.61 -		 * Connected to Connection::receiveBundles.
  120.62 -		 */
  120.63 -		void sendBundleData(QList<Bundle>);
  120.64 -		
  120.65 -	public slots:
  120.66 -	/*! \brief
  120.67 -	 * Builds a hello datagram and emits the signal sendDatagram.
  120.68 -	 * @param hello the Hello object to build a datagram of.
  120.69 -	 */
  120.70 -	void receiveHello(Hello);
  120.71 -		
  120.72 -	/*! \brief
  120.73 -	 * Classifies incoming Datagrams, creates objects from them and emits 
  120.74 -	 * the appropriate signals.
  120.75 -	 * @param datagram the data to be parsed.
  120.76 -	 */
  120.77 -	void receiveDatagram(QByteArray);
  120.78 -		
  120.79 -	/*! \brief
  120.80 -	 * Builds a datagram containing a dictionary, that is a mapping 
  120.81 -	 * between node ids and names. The datagram is emitted by the 
  120.82 -	 * sendDatagram signal.
  120.83 -	 * @param the list of nodes to create the dictionary from.
  120.84 -	 */
  120.85 -	void createDictionary(QList<Node>);
  120.86 -	
  120.87 -	/*! \brief
  120.88 -	 * Builds a datagram containing a RIB, that is a mapping between node 
  120.89 -	 * ids and their delivery predictabilities. Emits the sendDatagram 
  120.90 -	 * signal.
  120.91 -	 * @param the list of nodes to create the RIB from.
  120.92 -	 */
  120.93 -	void createRIB(QList<Node>);
  120.94 -	
  120.95 -	/*! \brief
  120.96 -	 * Builds a bundle offer datagram. That is a list of all bundles this 
  120.97 -	 * node is carrying. Emits the sendDatagram signal.
  120.98 -	 * @param the list of bundles to create the offer from.
  120.99 -	 */
 120.100 -	void createBundleOffer(QList<Bundle>);
 120.101 -	
 120.102 -	/*! \brief
 120.103 -	 * Builds a bundle request datagram, that is a datagram containing a 
 120.104 -	 * list of the bundles this node would like receive. Emits the 
 120.105 -	 * sendDatagram signal.
 120.106 -	 * @param a list of the bundles to be requested.
 120.107 -	 */
 120.108 -	void createBundleRequest(QList<Bundle>);
 120.109 -	
 120.110 -	/*! \brief
 120.111 -	 * Builds a datagram containing all bundles to be transferred to a 
 120.112 -	 * neighbor node. Emits the sendDatagram signal.
 120.113 -	 * @param the list of bundles to send to the neighbor node.
 120.114 -	 */
 120.115 -	void createBundleData(QList<Bundle>);
 120.116 -};
 120.117 -
 120.118 -#endif
   121.1 Binary file x86/2.7/yellow_off.png has changed
   122.1 Binary file x86/2.7/yellow_on.png has changed
   123.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   123.2 +++ b/x86/ARM/DTNInterface.cpp	Thu Jun 26 17:39:40 2008 +0100
   123.3 @@ -0,0 +1,284 @@
   123.4 +#include <QtCore>
   123.5 +#include <QtNetwork>
   123.6 +#include <readFile.h>
   123.7 +#include <bundleManager.h>
   123.8 +#include <DTNInterface.h>
   123.9 +#include <tcpClient.h>
  123.10 +
  123.11 +#define DTNTIMER 500
  123.12 +
  123.13 +
  123.14 +#define INIT 0
  123.15 +#define DTNLIST 1
  123.16 +#define IDLE 2
  123.17 +#define PARSE 3
  123.18 +
  123.19 +DTNInterface::DTNInterface(BundleManager* bundleMng, NodeManager* nodeMng)
  123.20 +{
  123.21 +	ReadFile conf;
  123.22 +	seq=0;
  123.23 +	hostPort=conf.getDTNHostPort();
  123.24 +	hostAddress=conf.getDTNHostName();
  123.25 +	ourName=conf.getNodeName();
  123.26 +	ourId=conf.getNodeId();
  123.27 +	bundleManager = bundleMng;
  123.28 +	nodeManager = nodeMng;
  123.29 +	//Create and connect Hello Timer
  123.30 +	timer = new QTimer(this);
  123.31 +    connect(timer, SIGNAL(timeout()), this, SLOT(getBundles()));
  123.32 +    timer->start(DTNTIMER);
  123.33 +	client = new TcpClient(this);
  123.34 +    sender = new TcpClient(this);
  123.35 +	connect(client, SIGNAL(newAnswer(QByteArray)), this, SLOT(getResponse(QByteArray)));
  123.36 +	client->addHost(hostAddress.toString(),hostPort);
  123.37 +	sender->addHost(hostAddress.toString(),hostPort);
  123.38 +	dtnState=INIT;
  123.39 +	bundlesToParse=0;
  123.40 +	parsedList.clear();
  123.41 +	bundleList.clear();
  123.42 +
  123.43 +}
  123.44 +
  123.45 +void DTNInterface::receiveBundle(Bundle bundle)
  123.46 +{
  123.47 +	QString command;
  123.48 +	if(bundle.data.size()>0)
  123.49 +	{
  123.50 +		command.append("bundle inject ");
  123.51 +		command.append(bundle.sourceString);
  123.52 +		command.append(" ");
  123.53 +		command.append(bundle.destinationString);
  123.54 +		command.append(" \"");
  123.55 +		for (int m = 0; m < bundle.data.size(); ++m)
  123.56 +		{
  123.57 +			QString ch;
  123.58 +			ch.append("\\x");
  123.59 +			ch.append(QString("%1").arg((unsigned char)bundle.data.at(m),0,16)  );
  123.60 +			command.append(ch);
  123.61 +		}	
  123.62 +		command.append("\"");
  123.63 +		sender->appendCommand(0,command);
  123.64 +		emit sendLog("Adding bundle to DTN...");
  123.65 +	}
  123.66 +	else
  123.67 +		emit sendLog("Zero bundle not sent to DTN...");
  123.68 +
  123.69 +}
  123.70 +
  123.71 +
  123.72 +void DTNInterface::getBundles()
  123.73 +{
  123.74 +	if(dtnState==IDLE)
  123.75 +	{
  123.76 +		dtnState=INIT;
  123.77 +		client->appendCommand(0,(QString)"");
  123.78 +	}
  123.79 +}
  123.80 +
  123.81 +
  123.82 +void DTNInterface::getResponse(QByteArray response)
  123.83 +{
  123.84 +	QString log;
  123.85 +	switch(dtnState)
  123.86 +	{
  123.87 +		case INIT:log.append("INIT:");break;
  123.88 +		case DTNLIST:log.append("DTNLIST:");break;
  123.89 +		case IDLE:log.append("IDLE:");break;
  123.90 +		case PARSE:log.append("PARSE:");break;
  123.91 +	}
  123.92 +	int size=response.size();
  123.93 +	if(size<500)
  123.94 +		log.append(response);
  123.95 +	else
  123.96 +		log.append("Long response...");
  123.97 +	emit sendLog(log);
  123.98 +	QString temp;
  123.99 +	int pos;
 123.100 +	int pos2;
 123.101 +	int inTheList=-1;
 123.102 +	
 123.103 +
 123.104 + 	switch(dtnState)
 123.105 +	{
 123.106 +		case INIT:	bundleIndex=0;
 123.107 +					bundleList.clear();
 123.108 +					client->appendCommand(0,(QString)"bundle list");
 123.109 +					dtnState=DTNLIST;
 123.110 +			break;
 123.111 +		case DTNLIST:	//we get the nuber of bundles
 123.112 +						pos = response.indexOf("(",0);
 123.113 +						pos2 = response.indexOf(")",0);
 123.114 +						temp=response.mid(pos+1,pos2-pos-1);
 123.115 +						bundlesToParse=temp.toInt(0,10);
 123.116 +						response.remove(0,pos2+6);
 123.117 +						emit sendLog("NR BUNDLES:");
 123.118 +	   				    emit sendLog(QString("%1").arg(bundlesToParse));
 123.119 +						while(bundlesToParse>0)
 123.120 +						{
 123.121 +							Bundle tempBundle;
 123.122 +							tempBundle.setContent(seq,0,0,"",0);
 123.123 +							seq++;
 123.124 +							pos2 = response.indexOf(":",0);
 123.125 +							temp=response.mid(0,pos2);
 123.126 +							//Parse bundle ID
 123.127 +							tempBundle.options=temp.toInt(0,10);
 123.128 +							response.remove(0,pos2+2);
 123.129 +							//Parse source name
 123.130 +							pos2= response.indexOf("->",0);
 123.131 +							temp=response.mid(0,pos2-1);
 123.132 +							tempBundle.sourceString=temp.toAscii();
 123.133 +							response.remove(0,pos2+3);
 123.134 +							//Parse destination name
 123.135 +							pos2= response.indexOf("length",0);
 123.136 +							temp=response.mid(0,pos2-1);
 123.137 +							tempBundle.destinationString=temp.toAscii();
 123.138 +							//Parse data length
 123.139 +							response.remove(0,pos2+7);
 123.140 +							pos2= response.indexOf("\r",0);
 123.141 +							temp=response.mid(0,pos2);
 123.142 +							tempBundle.dataLength=temp.toInt(0,10);
 123.143 +							//Removing last part
 123.144 +							pos2= response.indexOf("\r",0);
 123.145 +							response.remove(0,pos2+3);
 123.146 +							bundleList.append(tempBundle);
 123.147 +							bundlesToParse--;
 123.148 +						}
 123.149 +						//Checking for unused bundles in parsed list
 123.150 +						for (int m = 0; m < parsedList.size(); ++m)
 123.151 +						{
 123.152 +							inTheList=-1;
 123.153 +							for (int n = 0; n < bundleList.size(); ++n)
 123.154 +							{
 123.155 +								if(parsedList.at(m)==bundleList.at(n).options)
 123.156 +									inTheList=m;
 123.157 +							}
 123.158 +							if(inTheList==-1)
 123.159 +							{
 123.160 +								parsedList.removeAt(m);
 123.161 +								m=0;
 123.162 +							}
 123.163 +						}
 123.164 +						//Check if it is some of the bundles are already on the parsed list
 123.165 +						for (int m = 0; m < parsedList.size(); ++m)
 123.166 +						{
 123.167 +							inTheList=-1;
 123.168 +							for (int n = 0; n < bundleList.size(); ++n)
 123.169 +							{
 123.170 +								if(parsedList.at(m)==bundleList.at(n).options)
 123.171 +									inTheList=n;
 123.172 +							}
 123.173 +							if(inTheList!=-1)
 123.174 +								bundleList.removeAt(inTheList);
 123.175 +						}
 123.176 +						if(bundleList.size()>0)
 123.177 +						{
 123.178 +							QString command;
 123.179 +							command.append("bundle dump ");
 123.180 +							command.append(QString("%1").arg(bundleList.at(bundleIndex).options));
 123.181 +							client->appendCommand(0,command);
 123.182 +							dtnState=PARSE;
 123.183 +							
 123.184 +						}
 123.185 +						else
 123.186 +						{
 123.187 +							dtnState=IDLE;
 123.188 +						}
 123.189 +			break;
 123.190 +		case PARSE://	client->appendCommand(0,(QString)"bundle list");
 123.191 +
 123.192 +						temp=response.mid(0,20);
 123.193 +						pos=temp.indexOf("error",0);			
 123.194 +						//Parsing dumped data
 123.195 +						if(pos==-1)
 123.196 +						{
 123.197 +							QByteArray tempData;
 123.198 +							QString hexValue;
 123.199 +							char decValue;
 123.200 +							response.remove(0,8);
 123.201 +							pos=0;
 123.202 +							int resIndex=0;
 123.203 +							int responseSize=response.size();
 123.204 +							int dataLenght=bundleList.at(bundleIndex).dataLength;
 123.205 +							while((pos<(dataLenght))&&(resIndex<responseSize))
 123.206 +							{
 123.207 +								if(pos%10000==0)
 123.208 +								{
 123.209 +									int i=2;
 123.210 +								}
 123.211 +								
 123.212 +								//Decode hex value
 123.213 +								hexValue=response.mid(resIndex,2);
 123.214 +								decValue=hexValue.toShort(0,16);
 123.215 +								tempData.append(decValue);
 123.216 +								//Move to next value
 123.217 +								resIndex=resIndex+2;
 123.218 +								if(response.at(resIndex)==' ')
 123.219 +									resIndex++;
 123.220 +								if(response.at(resIndex)=='|')
 123.221 +									resIndex=resIndex+29;
 123.222 +								pos++;
 123.223 +								
 123.224 +								/*
 123.225 +								//Decode hex value
 123.226 +								QString hexValue;
 123.227 +								char decValue;
 123.228 +								hexValue=response.mid(0,2);
 123.229 +								decValue=hexValue.toShort(0,16);
 123.230 +								tempData.append(decValue);
 123.231 +								//Move to next value
 123.232 +
 123.233 +								response.remove(0,2);
 123.234 +								if(response.startsWith(' '))
 123.235 +									response.remove(0,1);
 123.236 +								if(response.startsWith('|'))
 123.237 +									response.remove(0,29);
 123.238 +								pos++;*/
 123.239 +							}
 123.240 +							Bundle tempBundle=bundleList.at(bundleIndex);
 123.241 +							tempBundle.data=tempData;
 123.242 +							//Removing from the list
 123.243 +							parsedList.append(tempBundle.options);
 123.244 +													
 123.245 +							//Checking if this is not our bundle
 123.246 +							QString temp;
 123.247 +							QString destination;
 123.248 +							temp=tempBundle.destinationString;
 123.249 +							pos=temp.indexOf("://",0);
 123.250 +							temp.remove(0,pos+3);
 123.251 +							pos=temp.indexOf("/",0);
 123.252 +							destination=temp.mid(0,pos);
 123.253 +							if(destination!=ourName)
 123.254 +							{
 123.255 +								emit sendLog("Bundle parsed...\r\n");
 123.256 +								tempBundle.options=0;
 123.257 +								tempBundle.sourceId=ourId;
 123.258 +								//tempBundle.sourceString.append("dtn://");
 123.259 +								//tempBundle.sourceString.append(ourName.toAscii());
 123.260 +								emit sendBundle(tempBundle);
 123.261 +								bundleManager->updateBundlesDestinations(nodeManager);
 123.262 +							}
 123.263 +							else
 123.264 +							{
 123.265 +								emit sendLog("Bundle parsed but it is for us...\r\n");
 123.266 +							}
 123.267 +						
 123.268 +						}
 123.269 +						bundleIndex++;
 123.270 +						if(bundleIndex<bundleList.size())
 123.271 +						{
 123.272 +							QString command;
 123.273 +							command.append("bundle dump ");
 123.274 +							command.append(QString("%1").arg(bundleList.at(bundleIndex).options));
 123.275 +							client->appendCommand(0,command);
 123.276 +							dtnState=PARSE;
 123.277 +						}
 123.278 +						else
 123.279 +						{
 123.280 +							dtnState=IDLE;
 123.281 +						}
 123.282 +			break;
 123.283 +		case IDLE:		dtnState=IDLE;
 123.284 +			break;
 123.285 +	}
 123.286 +
 123.287 +}
 123.288 \ No newline at end of file
   124.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   124.2 +++ b/x86/ARM/DTNInterface.h	Thu Jun 26 17:39:40 2008 +0100
   124.3 @@ -0,0 +1,48 @@
   124.4 +#ifndef DTNINTERFACE_H
   124.5 +#define DTNINTERFACE_H
   124.6 +
   124.7 +//#include <iostream.h>
   124.8 +#include <QtCore>
   124.9 +#include <QtNetwork>
  124.10 +#include <connection.h>
  124.11 +#include <dataPacket.h>
  124.12 +#include <neighbourAwareness.h>
  124.13 +#include <bundleManager.h>
  124.14 +#include <nodeManager.h>
  124.15 +#include <tcpClient.h>
  124.16 +
  124.17 +class DTNInterface : public QObject 
  124.18 +{
  124.19 +
  124.20 +	Q_OBJECT
  124.21 +	public:
  124.22 +	int dtnState;
  124.23 +	int bundlesToParse;
  124.24 +	QList<Bundle> bundleList;
  124.25 +	QList<int> parsedList;
  124.26 +	DTNInterface(BundleManager*,NodeManager* nodeMng);
  124.27 +	BundleManager *bundleManager;
  124.28 +	NodeManager* nodeManager;
  124.29 +	int bundleIndex; 
  124.30 +	int hostPort;
  124.31 +	QHostAddress hostAddress;
  124.32 +	TcpClient *client;
  124.33 +	TcpClient *sender;
  124.34 +	QString ourName;
  124.35 +	int ourId;
  124.36 +	QTimer *timer;
  124.37 +	int seq;
  124.38 +			
  124.39 +	public slots:
  124.40 +	void getBundles();
  124.41 +	void getResponse(QByteArray response);
  124.42 +	void receiveBundle(Bundle);
  124.43 +	signals:
  124.44 +	void sendLog(QString);
  124.45 +	void sendBundle(Bundle);
  124.46 +
  124.47 +
  124.48 +
  124.49 +};
  124.50 +
  124.51 +#endif
   125.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   125.2 +++ b/x86/ARM/Makefile	Thu Jun 26 17:39:40 2008 +0100
   125.3 @@ -0,0 +1,370 @@
   125.4 +#############################################################################
   125.5 +# Makefile for building: prophet
   125.6 +# Generated by qmake (2.00a) (Qt 4.1.2) on: Sat Jun 17 11:42:03 2006
   125.7 +# Project:  prophet.pro
   125.8 +# Template: app
   125.9 +# Command: /usr/local/Trolltech/QtopiaCore-4.1.2/bin/qmake -unix -o Makefile prophet.pro
  125.10 +#############################################################################
  125.11 +
  125.12 +####### Compiler, tools and options
  125.13 +
  125.14 +CC            = arm-linux-gcc
  125.15 +CXX           = arm-linux-g++
  125.16 +LEX           = flex
  125.17 +YACC          = yacc
  125.18 +DEFINES       = -DQT_NO_DEBUG -DQT_NETWORK_LIB -DQT_CORE_LIB
  125.19 +CFLAGS        = -pipe -O2 -Wall -W -D_REENTRANT  $(DEFINES)
  125.20 +CXXFLAGS      = -pipe -fno-exceptions -O2 -Wall -W -D_REENTRANT  $(DEFINES)
  125.21 +LEXFLAGS      = 
  125.22 +YACCFLAGS     = -d
  125.23 +INCPATH       = -I/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/qws/linux-arm-g++ -I. -I/usr/local/Trolltech/QtopiaCore-4.1.2/include/QtCore -I/usr/local/Trolltech/QtopiaCore-4.1.2/include/QtNetwork -I/usr/local/Trolltech/QtopiaCore-4.1.2/include -I. -I. -I.
  125.24 +LINK          = arm-linux-g++
  125.25 +LFLAGS        = -Wl,-rpath,/usr/local/Trolltech/QtopiaCore-4.1.2/lib
  125.26 +LIBS          = $(SUBLIBS)  -L/usr/local/Trolltech/QtopiaCore-4.1.2/lib -lQtNetwork -L/samo/embedded/qtopia-core-commercial-src-4.1.2/lib -lQtCore -lm -ldl -lpthread
  125.27 +AR            = arm-linux-ar cqs
  125.28 +RANLIB        = arm-linux-ranlib
  125.29 +QMAKE         = /usr/local/Trolltech/QtopiaCore-4.1.2/bin/qmake
  125.30 +TAR           = tar -cf
  125.31 +COMPRESS      = gzip -9f
  125.32 +COPY          = cp -f
  125.33 +COPY_FILE     = $(COPY)
  125.34 +COPY_DIR      = $(COPY) -R
  125.35 +INSTALL_FILE  = $(COPY_FILE)
  125.36 +INSTALL_DIR   = $(COPY_DIR)
  125.37 +DEL_FILE      = rm -f
  125.38 +SYMLINK       = ln -sf
  125.39 +DEL_DIR       = rmdir
  125.40 +MOVE          = mv -f
  125.41 +CHK_DIR_EXISTS= test -d
  125.42 +MKDIR         = mkdir -p
  125.43 +
  125.44 +####### Output directory
  125.45 +
  125.46 +OBJECTS_DIR   = ./
  125.47 +
  125.48 +####### Files
  125.49 +
  125.50 +SOURCES       = main.cpp \
  125.51 +		bundle.cpp \
  125.52 +		bundleManager.cpp \
  125.53 +		node.cpp \
  125.54 +		nodeManager.cpp \
  125.55 +		connection.cpp \
  125.56 +		hello.cpp \
  125.57 +		tlv.cpp \
  125.58 +		dataPacket.cpp \
  125.59 +		messageFile.cpp \
  125.60 +		neighbourAwareness.cpp \
  125.61 +		readFile.cpp moc_neighbourAwareness.cpp \
  125.62 +		moc_bundle.cpp \
  125.63 +		moc_bundleManager.cpp \
  125.64 +		moc_node.cpp \
  125.65 +		moc_nodeManager.cpp \
  125.66 +		moc_connection.cpp \
  125.67 +		moc_tlv.cpp \
  125.68 +		moc_messageFile.cpp \
  125.69 +		moc_hello.cpp \
  125.70 +		moc_dataPacket.cpp \
  125.71 +		moc_readFile.cpp
  125.72 +OBJECTS       = main.o \
  125.73 +		bundle.o \
  125.74 +		bundleManager.o \
  125.75 +		node.o \
  125.76 +		nodeManager.o \
  125.77 +		connection.o \
  125.78 +		hello.o \
  125.79 +		tlv.o \
  125.80 +		dataPacket.o \
  125.81 +		messageFile.o \
  125.82 +		neighbourAwareness.o \
  125.83 +		readFile.o \
  125.84 +		moc_neighbourAwareness.o \
  125.85 +		moc_bundle.o \
  125.86 +		moc_bundleManager.o \
  125.87 +		moc_node.o \
  125.88 +		moc_nodeManager.o \
  125.89 +		moc_connection.o \
  125.90 +		moc_tlv.o \
  125.91 +		moc_messageFile.o \
  125.92 +		moc_hello.o \
  125.93 +		moc_dataPacket.o \
  125.94 +		moc_readFile.o
  125.95 +DIST          = /usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/qconfig.pri \
  125.96 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/qt_config.prf \
  125.97 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/exclusive_builds.prf \
  125.98 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/default_pre.prf \
  125.99 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/release.prf \
 125.100 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/default_post.prf \
 125.101 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/warn_on.prf \
 125.102 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/qt.prf \
 125.103 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/unix/thread.prf \
 125.104 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/moc.prf \
 125.105 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/resources.prf \
 125.106 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/uic.prf \
 125.107 +		prophet.pro
 125.108 +QMAKE_TARGET  = prophet
 125.109 +DESTDIR       = 
 125.110 +TARGET        = prophet
 125.111 +
 125.112 +first: all
 125.113 +####### Implicit rules
 125.114 +
 125.115 +.SUFFIXES: .c .o .cpp .cc .cxx .C
 125.116 +
 125.117 +.cpp.o:
 125.118 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
 125.119 +
 125.120 +.cc.o:
 125.121 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
 125.122 +
 125.123 +.cxx.o:
 125.124 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
 125.125 +
 125.126 +.C.o:
 125.127 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
 125.128 +
 125.129 +.c.o:
 125.130 +	$(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<
 125.131 +
 125.132 +####### Build rules
 125.133 +
 125.134 +all: Makefile $(TARGET)
 125.135 +
 125.136 +$(TARGET):  $(OBJECTS)  
 125.137 +	$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)
 125.138 +
 125.139 +Makefile: prophet.pro  /usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/qws/linux-arm-g++/qmake.conf /usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/qconfig.pri \
 125.140 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/qt_config.prf \
 125.141 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/exclusive_builds.prf \
 125.142 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/default_pre.prf \
 125.143 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/release.prf \
 125.144 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/default_post.prf \
 125.145 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/warn_on.prf \
 125.146 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/qt.prf \
 125.147 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/unix/thread.prf \
 125.148 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/moc.prf \
 125.149 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/resources.prf \
 125.150 +		/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/uic.prf \
 125.151 +		/usr/local/Trolltech/QtopiaCore-4.1.2/lib/libQtNetwork.prl \
 125.152 +		/usr/local/Trolltech/QtopiaCore-4.1.2/lib/libQtCore.prl
 125.153 +	$(QMAKE) -unix -o Makefile prophet.pro
 125.154 +/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/qconfig.pri:
 125.155 +/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/qt_config.prf:
 125.156 +/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/exclusive_builds.prf:
 125.157 +/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/default_pre.prf:
 125.158 +/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/release.prf:
 125.159 +/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/default_post.prf:
 125.160 +/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/warn_on.prf:
 125.161 +/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/qt.prf:
 125.162 +/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/unix/thread.prf:
 125.163 +/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/moc.prf:
 125.164 +/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/resources.prf:
 125.165 +/usr/local/Trolltech/QtopiaCore-4.1.2/mkspecs/features/uic.prf:
 125.166 +/usr/local/Trolltech/QtopiaCore-4.1.2/lib/libQtNetwork.prl:
 125.167 +/usr/local/Trolltech/QtopiaCore-4.1.2/lib/libQtCore.prl:
 125.168 +qmake:  FORCE
 125.169 +	@$(QMAKE) -unix -o Makefile prophet.pro
 125.170 +
 125.171 +dist: 
 125.172 +	@$(CHK_DIR_EXISTS) ".tmp/prophet1.0.0" || $(MKDIR) ".tmp/prophet1.0.0"
 125.173 +	$(COPY_FILE) --parents $(SOURCES) $(DIST) .tmp/prophet1.0.0/ && $(COPY_FILE) --parents neighbourAwareness.h bundle.h bundleManager.h node.h nodeManager.h connection.h tlv.h messageFile.h hello.h main.h dataPacket.h readFile.h .tmp/prophet1.0.0/ && $(COPY_FILE) --parents main.cpp bundle.cpp bundleManager.cpp node.cpp nodeManager.cpp connection.cpp hello.cpp tlv.cpp dataPacket.cpp messageFile.cpp neighbourAwareness.cpp readFile.cpp .tmp/prophet1.0.0/ && (cd `dirname .tmp/prophet1.0.0` && $(TAR) prophet1.0.0.tar prophet1.0.0 && $(COMPRESS) prophet1.0.0.tar) && $(MOVE) `dirname .tmp/prophet1.0.0`/prophet1.0.0.tar.gz . && $(DEL_FILE) -r .tmp/prophet1.0.0
 125.174 +
 125.175 +
 125.176 +yaccclean:
 125.177 +lexclean:
 125.178 +clean:compiler_clean 
 125.179 +	-$(DEL_FILE) $(OBJECTS)
 125.180 +	-$(DEL_FILE) *~ core *.core
 125.181 +
 125.182 +
 125.183 +####### Sub-libraries
 125.184 +
 125.185 +distclean: clean
 125.186 +	-$(DEL_FILE) $(TARGET) 
 125.187 +	-$(DEL_FILE) Makefile
 125.188 +
 125.189 +
 125.190 +/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc:
 125.191 +	(cd "$(QTDIR)/src/tools/moc" && $(MAKE))
 125.192 +
 125.193 +mocclean: compiler_moc_header_clean compiler_moc_source_clean
 125.194 +
 125.195 +mocables: compiler_moc_header_make_all compiler_moc_source_make_all
 125.196 +
 125.197 +compiler_moc_header_make_all: moc_neighbourAwareness.cpp moc_bundle.cpp moc_bundleManager.cpp moc_node.cpp moc_nodeManager.cpp moc_connection.cpp moc_tlv.cpp moc_messageFile.cpp moc_hello.cpp moc_dataPacket.cpp moc_readFile.cpp
 125.198 +compiler_moc_header_clean:
 125.199 +	-$(DEL_FILE) moc_neighbourAwareness.cpp moc_bundle.cpp moc_bundleManager.cpp moc_node.cpp moc_nodeManager.cpp moc_connection.cpp moc_tlv.cpp moc_messageFile.cpp moc_hello.cpp moc_dataPacket.cpp moc_readFile.cpp
 125.200 +moc_neighbourAwareness.cpp: connection.h \
 125.201 +		hello.h \
 125.202 +		tlv.h \
 125.203 +		node.h \
 125.204 +		bundle.h \
 125.205 +		nodeManager.h \
 125.206 +		bundleManager.h \
 125.207 +		dataPacket.h \
 125.208 +		neighbourAwareness.h \
 125.209 +		neighbourAwareness.h \
 125.210 +		/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc
 125.211 +	/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc $(DEFINES) $(INCPATH) neighbourAwareness.h -o moc_neighbourAwareness.cpp
 125.212 +
 125.213 +moc_bundle.cpp: bundle.h \
 125.214 +		/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc
 125.215 +	/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc $(DEFINES) $(INCPATH) bundle.h -o moc_bundle.cpp
 125.216 +
 125.217 +moc_bundleManager.cpp: bundle.h \
 125.218 +		node.h \
 125.219 +		nodeManager.h \
 125.220 +		bundleManager.h \
 125.221 +		/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc
 125.222 +	/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc $(DEFINES) $(INCPATH) bundleManager.h -o moc_bundleManager.cpp
 125.223 +
 125.224 +moc_node.cpp: node.h \
 125.225 +		/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc
 125.226 +	/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc $(DEFINES) $(INCPATH) node.h -o moc_node.cpp
 125.227 +
 125.228 +moc_nodeManager.cpp: node.h \
 125.229 +		nodeManager.h \
 125.230 +		/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc
 125.231 +	/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc $(DEFINES) $(INCPATH) nodeManager.h -o moc_nodeManager.cpp
 125.232 +
 125.233 +moc_connection.cpp: hello.h \
 125.234 +		tlv.h \
 125.235 +		node.h \
 125.236 +		bundle.h \
 125.237 +		nodeManager.h \
 125.238 +		bundleManager.h \
 125.239 +		dataPacket.h \
 125.240 +		connection.h \
 125.241 +		/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc
 125.242 +	/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc $(DEFINES) $(INCPATH) connection.h -o moc_connection.cpp
 125.243 +
 125.244 +moc_tlv.cpp: hello.h \
 125.245 +		node.h \
 125.246 +		bundle.h \
 125.247 +		tlv.h \
 125.248 +		/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc
 125.249 +	/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc $(DEFINES) $(INCPATH) tlv.h -o moc_tlv.cpp
 125.250 +
 125.251 +moc_messageFile.cpp: messageFile.h \
 125.252 +		/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc
 125.253 +	/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc $(DEFINES) $(INCPATH) messageFile.h -o moc_messageFile.cpp
 125.254 +
 125.255 +moc_hello.cpp: hello.h \
 125.256 +		/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc
 125.257 +	/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc $(DEFINES) $(INCPATH) hello.h -o moc_hello.cpp
 125.258 +
 125.259 +moc_dataPacket.cpp: dataPacket.h \
 125.260 +		/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc
 125.261 +	/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc $(DEFINES) $(INCPATH) dataPacket.h -o moc_dataPacket.cpp
 125.262 +
 125.263 +moc_readFile.cpp: readFile.h \
 125.264 +		/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc
 125.265 +	/usr/local/Trolltech/QtopiaCore-4.1.2/bin/moc $(DEFINES) $(INCPATH) readFile.h -o moc_readFile.cpp
 125.266 +
 125.267 +compiler_rcc_make_all:
 125.268 +compiler_rcc_clean:
 125.269 +compiler_image_collection_make_all:
 125.270 +compiler_image_collection_clean:
 125.271 +	-$(DEL_FILE) qmake_image_collection.cpp
 125.272 +compiler_moc_source_make_all:
 125.273 +compiler_moc_source_clean:
 125.274 +compiler_uic_make_all:
 125.275 +compiler_uic_clean:
 125.276 +compiler_clean: compiler_moc_header_clean compiler_rcc_clean compiler_image_collection_clean compiler_moc_source_clean compiler_uic_clean 
 125.277 +
 125.278 +####### Compile
 125.279 +
 125.280 +main.o: main.cpp neighbourAwareness.h \
 125.281 +		connection.h \
 125.282 +		hello.h \
 125.283 +		tlv.h \
 125.284 +		node.h \
 125.285 +		bundle.h \
 125.286 +		nodeManager.h \
 125.287 +		bundleManager.h \
 125.288 +		dataPacket.h \
 125.289 +		messageFile.h \
 125.290 +		readFile.h
 125.291 +
 125.292 +bundle.o: bundle.cpp bundle.h
 125.293 +
 125.294 +bundleManager.o: bundleManager.cpp bundleManager.h \
 125.295 +		bundle.h \
 125.296 +		node.h \
 125.297 +		nodeManager.h \
 125.298 +		readFile.h
 125.299 +
 125.300 +node.o: node.cpp node.h
 125.301 +
 125.302 +nodeManager.o: nodeManager.cpp nodeManager.h \
 125.303 +		node.h \
 125.304 +		readFile.h
 125.305 +
 125.306 +connection.o: connection.cpp connection.h \
 125.307 +		hello.h \
 125.308 +		tlv.h \
 125.309 +		node.h \
 125.310 +		bundle.h \
 125.311 +		nodeManager.h \
 125.312 +		bundleManager.h \
 125.313 +		dataPacket.h \
 125.314 +		messageFile.h \
 125.315 +		readFile.h
 125.316 +
 125.317 +hello.o: hello.cpp hello.h
 125.318 +
 125.319 +tlv.o: tlv.cpp tlv.h \
 125.320 +		hello.h \
 125.321 +		node.h \
 125.322 +		bundle.h \
 125.323 +		messageFile.h
 125.324 +
 125.325 +dataPacket.o: dataPacket.cpp dataPacket.h
 125.326 +
 125.327 +messageFile.o: messageFile.cpp messageFile.h
 125.328 +
 125.329 +neighbourAwareness.o: neighbourAwareness.cpp connection.h \
 125.330 +		hello.h \
 125.331 +		tlv.h \
 125.332 +		node.h \
 125.333 +		bundle.h \
 125.334 +		nodeManager.h \
 125.335 +		bundleManager.h \
 125.336 +		dataPacket.h \
 125.337 +		neighbourAwareness.h \
 125.338 +		readFile.h \
 125.339 +		main.h \
 125.340 +		messageFile.h
 125.341 +
 125.342 +readFile.o: readFile.cpp readFile.h
 125.343 +
 125.344 +moc_neighbourAwareness.o: moc_neighbourAwareness.cpp 
 125.345 +
 125.346 +moc_bundle.o: moc_bundle.cpp 
 125.347 +
 125.348 +moc_bundleManager.o: moc_bundleManager.cpp 
 125.349 +
 125.350 +moc_node.o: moc_node.cpp 
 125.351 +
 125.352 +moc_nodeManager.o: moc_nodeManager.cpp 
 125.353 +
 125.354 +moc_connection.o: moc_connection.cpp 
 125.355 +
 125.356 +moc_tlv.o: moc_tlv.cpp 
 125.357 +
 125.358 +moc_messageFile.o: moc_messageFile.cpp 
 125.359 +
 125.360 +moc_hello.o: moc_hello.cpp 
 125.361 +
 125.362 +moc_dataPacket.o: moc_dataPacket.cpp 
 125.363 +
 125.364 +moc_readFile.o: moc_readFile.cpp 
 125.365 +
 125.366 +####### Install
 125.367 +
 125.368 +install:   FORCE
 125.369 +
 125.370 +uninstall:   FORCE
 125.371 +
 125.372 +FORCE:
 125.373 +
   126.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   126.2 +++ b/x86/ARM/Makefile.Debug	Thu Jun 26 17:39:40 2008 +0100
   126.3 @@ -0,0 +1,424 @@
   126.4 +#############################################################################
   126.5 +# Makefile for building: prophet
   126.6 +# Generated by qmake (2.00a) (Qt 4.0.1) on: tor 9. maj 22:21:43 2006
   126.7 +# Project:  prophet.pro
   126.8 +# Template: app
   126.9 +#############################################################################
  126.10 +
  126.11 +####### Compiler, tools and options
  126.12 +
  126.13 +CC            = cl
  126.14 +CXX           = cl
  126.15 +LEX           = flex
  126.16 +YACC          = byacc
  126.17 +DEFINES       = -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT
  126.18 +CFLAGS        = -nologo -Zm200 -Zi -MDd -Zi -MDd -W3 $(DEFINES)
  126.19 +CXXFLAGS      = -nologo -Zm200 -Zi -MDd -Zi -MDd -GR -GX -W3 $(DEFINES)
  126.20 +LEXFLAGS      = 
  126.21 +YACCFLAGS     = -d
  126.22 +INCPATH       = -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc"
  126.23 +LINK          = link
  126.24 +LFLAGS        = /LIBPATH:"C:\Qt\4.0.1\lib" /NOLOGO /DEBUG /DEBUG /SUBSYSTEM:console /incremental:yes
  126.25 +LIBS          = C:\Qt\4.0.1\lib\QtCored4.lib C:\Qt\4.0.1\lib\QtNetworkd4.lib
  126.26 +QMAKE         = qmake
  126.27 +IDC           = C:\Qt\4.0.1\bin\idc.exe
  126.28 +IDL           = midl
  126.29 +ZIP           = zip -r -9
  126.30 +DEF_FILE      = 
  126.31 +RES_FILE      = 
  126.32 +COPY          = copy /y
  126.33 +COPY_FILE     = $(COPY)
  126.34 +COPY_DIR      = xcopy /s /q /y /i
  126.35 +DEL_FILE      = del
  126.36 +DEL_DIR       = rmdir
  126.37 +MOVE          = move
  126.38 +CHK_DIR_EXISTS= if not exist
  126.39 +MKDIR         = mkdir
  126.40 +INSTALL_FILE  = $(COPY_FILE)
  126.41 +INSTALL_DIR   = $(COPY_DIR)
  126.42 +
  126.43 +####### Output directory
  126.44 +
  126.45 +OBJECTS_DIR   = debug
  126.46 +
  126.47 +####### Files
  126.48 +
  126.49 +SOURCES       = main.cpp \
  126.50 +		bundle.cpp \
  126.51 +		bundleManager.cpp \
  126.52 +		node.cpp \
  126.53 +		nodeManager.cpp \
  126.54 +		connection.cpp \
  126.55 +		hello.cpp \
  126.56 +		tlv.cpp \
  126.57 +		dataPacket.cpp \
  126.58 +		messageFile.cpp \
  126.59 +		dataPacket.cpp \
  126.60 +		neighbourAwareness.cpp \
  126.61 +		readFile.cpp debug\moc_neighbourAwareness.cpp \
  126.62 +		debug\moc_bundle.cpp \
  126.63 +		debug\moc_bundleManager.cpp \
  126.64 +		debug\moc_node.cpp \
  126.65 +		debug\moc_nodeManager.cpp \
  126.66 +		debug\moc_connection.cpp \
  126.67 +		debug\moc_tlv.cpp \
  126.68 +		debug\moc_messageFile.cpp \
  126.69 +		debug\moc_hello.cpp
  126.70 +OBJECTS       = debug\main.obj \
  126.71 +		debug\bundle.obj \
  126.72 +		debug\bundleManager.obj \
  126.73 +		debug\node.obj \
  126.74 +		debug\nodeManager.obj \
  126.75 +		debug\connection.obj \
  126.76 +		debug\hello.obj \
  126.77 +		debug\tlv.obj \
  126.78 +		debug\dataPacket.obj \
  126.79 +		debug\messageFile.obj \
  126.80 +		debug\dataPacket.obj \
  126.81 +		debug\neighbourAwareness.obj \
  126.82 +		debug\readFile.obj \
  126.83 +		debug\moc_neighbourAwareness.obj \
  126.84 +		debug\moc_bundle.obj \
  126.85 +		debug\moc_bundleManager.obj \
  126.86 +		debug\moc_node.obj \
  126.87 +		debug\moc_nodeManager.obj \
  126.88 +		debug\moc_connection.obj \
  126.89 +		debug\moc_tlv.obj \
  126.90 +		debug\moc_messageFile.obj \
  126.91 +		debug\moc_hello.obj
  126.92 +DIST          = 
  126.93 +QMAKE_TARGET  = prophet
  126.94 +DESTDIR       = debug\ #avoid trailing-slash linebreak
  126.95 +TARGET        = debug\prophet.exe
  126.96 +
  126.97 +####### Implicit rules
  126.98 +
  126.99 +.SUFFIXES: .c .cpp .cc .cxx
 126.100 +
 126.101 +{.}.cpp{debug\}.obj::
 126.102 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 126.103 +	$<
 126.104 +<<
 126.105 +
 126.106 +{.}.cc{debug\}.obj::
 126.107 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 126.108 +	$<
 126.109 +<<
 126.110 +
 126.111 +{.}.cxx{debug\}.obj::
 126.112 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 126.113 +	$<
 126.114 +<<
 126.115 +
 126.116 +{.}.c{debug\}.obj::
 126.117 +	$(CC) -c $(CFLAGS) $(INCPATH) -Fodebug\ @<<
 126.118 +	$<
 126.119 +<<
 126.120 +
 126.121 +{.}.cpp{debug\}.obj::
 126.122 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 126.123 +	$<
 126.124 +<<
 126.125 +
 126.126 +{.}.cc{debug\}.obj::
 126.127 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 126.128 +	$<
 126.129 +<<
 126.130 +
 126.131 +{.}.cxx{debug\}.obj::
 126.132 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 126.133 +	$<
 126.134 +<<
 126.135 +
 126.136 +{.}.c{debug\}.obj::
 126.137 +	$(CC) -c $(CFLAGS) $(INCPATH) -Fodebug\ @<<
 126.138 +	$<
 126.139 +<<
 126.140 +
 126.141 +{.}.cpp{debug\}.obj::
 126.142 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 126.143 +	$<
 126.144 +<<
 126.145 +
 126.146 +{.}.cc{debug\}.obj::
 126.147 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 126.148 +	$<
 126.149 +<<
 126.150 +
 126.151 +{.}.cxx{debug\}.obj::
 126.152 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 126.153 +	$<
 126.154 +<<
 126.155 +
 126.156 +{.}.c{debug\}.obj::
 126.157 +	$(CC) -c $(CFLAGS) $(INCPATH) -Fodebug\ @<<
 126.158 +	$<
 126.159 +<<
 126.160 +
 126.161 +{debug}.cpp{debug\}.obj::
 126.162 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 126.163 +	$<
 126.164 +<<
 126.165 +
 126.166 +{debug}.cc{debug\}.obj::
 126.167 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 126.168 +	$<
 126.169 +<<
 126.170 +
 126.171 +{debug}.cxx{debug\}.obj::
 126.172 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 126.173 +	$<
 126.174 +<<
 126.175 +
 126.176 +{debug}.c{debug\}.obj::
 126.177 +	$(CC) -c $(CFLAGS) $(INCPATH) -Fodebug\ @<<
 126.178 +	$<
 126.179 +<<
 126.180 +
 126.181 +{debug}.cpp{debug\}.obj::
 126.182 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 126.183 +	$<
 126.184 +<<
 126.185 +
 126.186 +{debug}.cc{debug\}.obj::
 126.187 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 126.188 +	$<
 126.189 +<<
 126.190 +
 126.191 +{debug}.cxx{debug\}.obj::
 126.192 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 126.193 +	$<
 126.194 +<<
 126.195 +
 126.196 +{debug}.c{debug\}.obj::
 126.197 +	$(CC) -c $(CFLAGS) $(INCPATH) -Fodebug\ @<<
 126.198 +	$<
 126.199 +<<
 126.200 +
 126.201 +####### Build rules
 126.202 +
 126.203 +first: all
 126.204 +all: Makefile.Debug $(TARGET)
 126.205 +
 126.206 +$(TARGET):  $(OBJECTS) 
 126.207 +	$(LINK) $(LFLAGS) /OUT:"$(TARGET)" @<< 
 126.208 +	  $(OBJECTS) $(LIBS)
 126.209 +<<
 126.210 +
 126.211 +
 126.212 +qmake:  FORCE
 126.213 +	@$(QMAKE) -win32 -o Makefile.Debug prophet.pro
 126.214 +
 126.215 +dist:
 126.216 +	$(ZIP) prophet.zip $(SOURCES) $(DIST) prophet.pro C:/Qt/4.0.1/mkspecs/qconfig.pri ..\..\..\Qt\4.0.1\mkspecs\features\qt_config.prf ..\..\..\Qt\4.0.1\mkspecs\features\exclusive_builds.prf ..\..\..\Qt\4.0.1\mkspecs\features\default_pre.prf ..\..\..\Qt\4.0.1\mkspecs\features\win32\default_pre.prf ..\..\..\Qt\4.0.1\mkspecs\features\debug.prf ..\..\..\Qt\4.0.1\mkspecs\features\debug_and_release.prf ..\..\..\Qt\4.0.1\mkspecs\features\default_post.prf ..\..\..\Qt\4.0.1\mkspecs\features\build_pass.prf ..\..\..\Qt\4.0.1\mkspecs\features\Debug.prf ..\..\..\Qt\4.0.1\mkspecs\features\win32\console.prf ..\..\..\Qt\4.0.1\mkspecs\features\win32\rtti.prf ..\..\..\Qt\4.0.1\mkspecs\features\win32\exceptions.prf ..\..\..\Qt\4.0.1\mkspecs\features\win32\stl.prf ..\..\..\Qt\4.0.1\mkspecs\features\shared.prf C:/Qt/4.0.1/mkspecs/win32-msvc/features/incremental.prf ..\..\..\Qt\4.0.1\mkspecs\features\warn_on.prf ..\..\..\Qt\4.0.1\mkspecs\features\qt.prf ..\..\..\Qt\4.0.1\mkspecs\features\win32\thread.prf ..\..\..\Qt\4.0.1\mkspecs\features\moc.prf ..\..\..\Qt\4.0.1\mkspecs\features\resources.prf ..\..\..\Qt\4.0.1\mkspecs\features\uic.prf  HEADERS RESOURCES IMAGES SOURCES FORMS 
 126.217 +
 126.218 +clean: compiler_clean
 126.219 +	-$(DEL_FILE) debug\main.obj
 126.220 +	-$(DEL_FILE) debug\bundle.obj
 126.221 +	-$(DEL_FILE) debug\bundleManager.obj
 126.222 +	-$(DEL_FILE) debug\node.obj
 126.223 +	-$(DEL_FILE) debug\nodeManager.obj
 126.224 +	-$(DEL_FILE) debug\connection.obj
 126.225 +	-$(DEL_FILE) debug\hello.obj
 126.226 +	-$(DEL_FILE) debug\tlv.obj
 126.227 +	-$(DEL_FILE) debug\dataPacket.obj
 126.228 +	-$(DEL_FILE) debug\messageFile.obj
 126.229 +	-$(DEL_FILE) debug\dataPacket.obj
 126.230 +	-$(DEL_FILE) debug\neighbourAwareness.obj
 126.231 +	-$(DEL_FILE) debug\readFile.obj
 126.232 +	-$(DEL_FILE) debug\moc_neighbourAwareness.obj
 126.233 +	-$(DEL_FILE) debug\moc_bundle.obj
 126.234 +	-$(DEL_FILE) debug\moc_bundleManager.obj
 126.235 +	-$(DEL_FILE) debug\moc_node.obj
 126.236 +	-$(DEL_FILE) debug\moc_nodeManager.obj
 126.237 +	-$(DEL_FILE) debug\moc_connection.obj
 126.238 +	-$(DEL_FILE) debug\moc_tlv.obj
 126.239 +	-$(DEL_FILE) debug\moc_messageFile.obj
 126.240 +	-$(DEL_FILE) debug\moc_hello.obj
 126.241 +	-$(DEL_FILE) debug\prophet.pdb
 126.242 +	-$(DEL_FILE) debug\prophet.ilk
 126.243 +	-$(DEL_FILE) vc*.pdb
 126.244 +	-$(DEL_FILE) vc*.idb
 126.245 +
 126.246 +distclean: clean
 126.247 +	-$(DEL_FILE) "$(TARGET)"
 126.248 +	-$(DEL_FILE) Makefile.Debug
 126.249 +
 126.250 +mocclean: compiler_moc_header_clean compiler_moc_source_clean
 126.251 +
 126.252 +mocables: compiler_moc_header_make_all compiler_moc_source_make_all
 126.253 +
 126.254 +compiler_moc_header_make_all: debug\moc_neighbourAwareness.cpp debug\moc_bundle.cpp debug\moc_bundleManager.cpp debug\moc_node.cpp debug\moc_nodeManager.cpp debug\moc_connection.cpp debug\moc_tlv.cpp debug\moc_messageFile.cpp debug\moc_hello.cpp
 126.255 +compiler_moc_header_clean:
 126.256 +	-$(DEL_FILE) debug\moc_neighbourAwareness.cpp
 126.257 +	-$(DEL_FILE) debug\moc_bundle.cpp
 126.258 +	-$(DEL_FILE) debug\moc_bundleManager.cpp
 126.259 +	-$(DEL_FILE) debug\moc_node.cpp
 126.260 +	-$(DEL_FILE) debug\moc_nodeManager.cpp
 126.261 +	-$(DEL_FILE) debug\moc_connection.cpp
 126.262 +	-$(DEL_FILE) debug\moc_tlv.cpp
 126.263 +	-$(DEL_FILE) debug\moc_messageFile.cpp
 126.264 +	-$(DEL_FILE) debug\moc_hello.cpp
 126.265 +debug\moc_neighbourAwareness.cpp: Connection.h \
 126.266 +		hello.h \
 126.267 +		tlv.h \
 126.268 +		node.h \
 126.269 +		bundle.h \
 126.270 +		nodeManager.h \
 126.271 +		bundleManager.h \
 126.272 +		dataPacket.h \
 126.273 +		neighbourAwareness.h
 126.274 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 neighbourAwareness.h -o debug\moc_neighbourAwareness.cpp
 126.275 +
 126.276 +debug\moc_bundle.cpp: bundle.h
 126.277 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 bundle.h -o debug\moc_bundle.cpp
 126.278 +
 126.279 +debug\moc_bundleManager.cpp: bundle.h \
 126.280 +		node.h \
 126.281 +		bundleManager.h
 126.282 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 bundleManager.h -o debug\moc_bundleManager.cpp
 126.283 +
 126.284 +debug\moc_node.cpp: node.h
 126.285 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 node.h -o debug\moc_node.cpp
 126.286 +
 126.287 +debug\moc_nodeManager.cpp: node.h \
 126.288 +		nodeManager.h
 126.289 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 nodeManager.h -o debug\moc_nodeManager.cpp
 126.290 +
 126.291 +debug\moc_connection.cpp: hello.h \
 126.292 +		tlv.h \
 126.293 +		node.h \
 126.294 +		bundle.h \
 126.295 +		nodeManager.h \
 126.296 +		bundleManager.h \
 126.297 +		dataPacket.h \
 126.298 +		connection.h
 126.299 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 connection.h -o debug\moc_connection.cpp
 126.300 +
 126.301 +debug\moc_tlv.cpp: hello.h \
 126.302 +		node.h \
 126.303 +		bundle.h \
 126.304 +		tlv.h
 126.305 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 tlv.h -o debug\moc_tlv.cpp
 126.306 +
 126.307 +debug\moc_messageFile.cpp: messageFile.h
 126.308 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 messageFile.h -o debug\moc_messageFile.cpp
 126.309 +
 126.310 +debug\moc_hello.cpp: hello.h
 126.311 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 hello.h -o debug\moc_hello.cpp
 126.312 +
 126.313 +compiler_rcc_make_all:
 126.314 +compiler_rcc_clean:
 126.315 +compiler_image_collection_make_all:
 126.316 +compiler_image_collection_clean:
 126.317 +	-$(DEL_FILE) qmake_image_collection.cpp
 126.318 +compiler_moc_source_make_all:
 126.319 +compiler_moc_source_clean:
 126.320 +compiler_uic_make_all:
 126.321 +compiler_uic_clean:
 126.322 +compiler_clean: compiler_moc_header_clean compiler_rcc_clean compiler_image_collection_clean compiler_moc_source_clean compiler_uic_clean 
 126.323 +
 126.324 +
 126.325 +
 126.326 +####### Compile
 126.327 +
 126.328 +debug\main.obj: main.cpp neighbourAwareness.h \
 126.329 +		Connection.h \
 126.330 +		hello.h \
 126.331 +		tlv.h \
 126.332 +		node.h \
 126.333 +		bundle.h \
 126.334 +		nodeManager.h \
 126.335 +		bundleManager.h \
 126.336 +		dataPacket.h \
 126.337 +		messageFile.h \
 126.338 +		
 126.339 +
 126.340 +debug\bundle.obj: bundle.cpp bundle.h \
 126.341 +		
 126.342 +
 126.343 +debug\bundleManager.obj: bundleManager.cpp BundleManager.h \
 126.344 +		bundle.h \
 126.345 +		node.h \
 126.346 +		
 126.347 +
 126.348 +debug\node.obj: node.cpp node.h \
 126.349 +		
 126.350 +
 126.351 +debug\nodeManager.obj: nodeManager.cpp nodemanager.h \
 126.352 +		node.h \
 126.353 +		
 126.354 +
 126.355 +debug\connection.obj: connection.cpp connection.h \
 126.356 +		hello.h \
 126.357 +		tlv.h \
 126.358 +		node.h \
 126.359 +		bundle.h \
 126.360 +		nodeManager.h \
 126.361 +		bundleManager.h \
 126.362 +		dataPacket.h \
 126.363 +		messageFile.h \
 126.364 +		
 126.365 +
 126.366 +debug\hello.obj: hello.cpp hello.h \
 126.367 +		
 126.368 +
 126.369 +debug\tlv.obj: tlv.cpp tlv.h \
 126.370 +		hello.h \
 126.371 +		node.h \
 126.372 +		bundle.h \
 126.373 +		messageFile.h \
 126.374 +		
 126.375 +
 126.376 +debug\dataPacket.obj: dataPacket.cpp dataPacket.h \
 126.377 +		
 126.378 +
 126.379 +debug\messageFile.obj: messageFile.cpp messageFile.h \
 126.380 +		
 126.381 +
 126.382 +debug\dataPacket.obj: dataPacket.cpp dataPacket.h \
 126.383 +		
 126.384 +
 126.385 +debug\neighbourAwareness.obj: neighbourAwareness.cpp Connection.h \
 126.386 +		hello.h \
 126.387 +		tlv.h \
 126.388 +		node.h \
 126.389 +		bundle.h \
 126.390 +		nodeManager.h \
 126.391 +		bundleManager.h \
 126.392 +		dataPacket.h \
 126.393 +		neighbourAwareness.h \
 126.394 +		readFile.h \
 126.395 +		main.h \
 126.396 +		messageFile.h \
 126.397 +		
 126.398 +
 126.399 +debug\readFile.obj: readFile.cpp readFile.h \
 126.400 +		
 126.401 +
 126.402 +debug\moc_neighbourAwareness.obj: debug\moc_neighbourAwareness.cpp 
 126.403 +
 126.404 +debug\moc_bundle.obj: debug\moc_bundle.cpp 
 126.405 +
 126.406 +debug\moc_bundleManager.obj: debug\moc_bundleManager.cpp 
 126.407 +
 126.408 +debug\moc_node.obj: debug\moc_node.cpp 
 126.409 +
 126.410 +debug\moc_nodeManager.obj: debug\moc_nodeManager.cpp 
 126.411 +
 126.412 +debug\moc_connection.obj: debug\moc_connection.cpp 
 126.413 +
 126.414 +debug\moc_tlv.obj: debug\moc_tlv.cpp 
 126.415 +
 126.416 +debug\moc_messageFile.obj: debug\moc_messageFile.cpp 
 126.417 +
 126.418 +debug\moc_hello.obj: debug\moc_hello.cpp 
 126.419 +
 126.420 +####### Install
 126.421 +
 126.422 +install:   FORCE
 126.423 +
 126.424 +uninstall:   FORCE
 126.425 +
 126.426 +FORCE:
 126.427 +
   127.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   127.2 +++ b/x86/ARM/Makefile.Release	Thu Jun 26 17:39:40 2008 +0100
   127.3 @@ -0,0 +1,420 @@
   127.4 +#############################################################################
   127.5 +# Makefile for building: prophet
   127.6 +# Generated by qmake (2.00a) (Qt 4.0.1) on: tor 9. maj 22:21:43 2006
   127.7 +# Project:  prophet.pro
   127.8 +# Template: app
   127.9 +#############################################################################
  127.10 +
  127.11 +####### Compiler, tools and options
  127.12 +
  127.13 +CC            = cl
  127.14 +CXX           = cl
  127.15 +LEX           = flex
  127.16 +YACC          = byacc
  127.17 +DEFINES       = -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT
  127.18 +CFLAGS        = -nologo -Zm200 -O1 -MD -O1 -MD -W3 $(DEFINES)
  127.19 +CXXFLAGS      = -nologo -Zm200 -O1 -MD -O1 -MD -GR -GX -W3 $(DEFINES)
  127.20 +LEXFLAGS      = 
  127.21 +YACCFLAGS     = -d
  127.22 +INCPATH       = -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc"
  127.23 +LINK          = link
  127.24 +LFLAGS        = /LIBPATH:"C:\Qt\4.0.1\lib" /NOLOGO /SUBSYSTEM:console /incremental:yes
  127.25 +LIBS          = C:\Qt\4.0.1\lib\QtCore4.lib C:\Qt\4.0.1\lib\QtNetwork4.lib
  127.26 +QMAKE         = qmake
  127.27 +IDC           = C:\Qt\4.0.1\bin\idc.exe
  127.28 +IDL           = midl
  127.29 +ZIP           = zip -r -9
  127.30 +DEF_FILE      = 
  127.31 +RES_FILE      = 
  127.32 +COPY          = copy /y
  127.33 +COPY_FILE     = $(COPY)
  127.34 +COPY_DIR      = xcopy /s /q /y /i
  127.35 +DEL_FILE      = del
  127.36 +DEL_DIR       = rmdir
  127.37 +MOVE          = move
  127.38 +CHK_DIR_EXISTS= if not exist
  127.39 +MKDIR         = mkdir
  127.40 +INSTALL_FILE  = $(COPY_FILE)
  127.41 +INSTALL_DIR   = $(COPY_DIR)
  127.42 +
  127.43 +####### Output directory
  127.44 +
  127.45 +OBJECTS_DIR   = release
  127.46 +
  127.47 +####### Files
  127.48 +
  127.49 +SOURCES       = main.cpp \
  127.50 +		bundle.cpp \
  127.51 +		bundleManager.cpp \
  127.52 +		node.cpp \
  127.53 +		nodeManager.cpp \
  127.54 +		connection.cpp \
  127.55 +		hello.cpp \
  127.56 +		tlv.cpp \
  127.57 +		dataPacket.cpp \
  127.58 +		messageFile.cpp \
  127.59 +		dataPacket.cpp \
  127.60 +		neighbourAwareness.cpp \
  127.61 +		readFile.cpp release\moc_neighbourAwareness.cpp \
  127.62 +		release\moc_bundle.cpp \
  127.63 +		release\moc_bundleManager.cpp \
  127.64 +		release\moc_node.cpp \
  127.65 +		release\moc_nodeManager.cpp \
  127.66 +		release\moc_connection.cpp \
  127.67 +		release\moc_tlv.cpp \
  127.68 +		release\moc_messageFile.cpp \
  127.69 +		release\moc_hello.cpp
  127.70 +OBJECTS       = release\main.obj \
  127.71 +		release\bundle.obj \
  127.72 +		release\bundleManager.obj \
  127.73 +		release\node.obj \
  127.74 +		release\nodeManager.obj \
  127.75 +		release\connection.obj \
  127.76 +		release\hello.obj \
  127.77 +		release\tlv.obj \
  127.78 +		release\dataPacket.obj \
  127.79 +		release\messageFile.obj \
  127.80 +		release\dataPacket.obj \
  127.81 +		release\neighbourAwareness.obj \
  127.82 +		release\readFile.obj \
  127.83 +		release\moc_neighbourAwareness.obj \
  127.84 +		release\moc_bundle.obj \
  127.85 +		release\moc_bundleManager.obj \
  127.86 +		release\moc_node.obj \
  127.87 +		release\moc_nodeManager.obj \
  127.88 +		release\moc_connection.obj \
  127.89 +		release\moc_tlv.obj \
  127.90 +		release\moc_messageFile.obj \
  127.91 +		release\moc_hello.obj
  127.92 +DIST          = 
  127.93 +QMAKE_TARGET  = prophet
  127.94 +DESTDIR       = release\ #avoid trailing-slash linebreak
  127.95 +TARGET        = release\prophet.exe
  127.96 +
  127.97 +####### Implicit rules
  127.98 +
  127.99 +.SUFFIXES: .c .cpp .cc .cxx
 127.100 +
 127.101 +{release}.cpp{release\}.obj::
 127.102 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 127.103 +	$<
 127.104 +<<
 127.105 +
 127.106 +{release}.cc{release\}.obj::
 127.107 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 127.108 +	$<
 127.109 +<<
 127.110 +
 127.111 +{release}.cxx{release\}.obj::
 127.112 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 127.113 +	$<
 127.114 +<<
 127.115 +
 127.116 +{release}.c{release\}.obj::
 127.117 +	$(CC) -c $(CFLAGS) $(INCPATH) -Forelease\ @<<
 127.118 +	$<
 127.119 +<<
 127.120 +
 127.121 +{release}.cpp{release\}.obj::
 127.122 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 127.123 +	$<
 127.124 +<<
 127.125 +
 127.126 +{release}.cc{release\}.obj::
 127.127 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 127.128 +	$<
 127.129 +<<
 127.130 +
 127.131 +{release}.cxx{release\}.obj::
 127.132 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 127.133 +	$<
 127.134 +<<
 127.135 +
 127.136 +{release}.c{release\}.obj::
 127.137 +	$(CC) -c $(CFLAGS) $(INCPATH) -Forelease\ @<<
 127.138 +	$<
 127.139 +<<
 127.140 +
 127.141 +{.}.cpp{release\}.obj::
 127.142 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 127.143 +	$<
 127.144 +<<
 127.145 +
 127.146 +{.}.cc{release\}.obj::
 127.147 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 127.148 +	$<
 127.149 +<<
 127.150 +
 127.151 +{.}.cxx{release\}.obj::
 127.152 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 127.153 +	$<
 127.154 +<<
 127.155 +
 127.156 +{.}.c{release\}.obj::
 127.157 +	$(CC) -c $(CFLAGS) $(INCPATH) -Forelease\ @<<
 127.158 +	$<
 127.159 +<<
 127.160 +
 127.161 +{.}.cpp{release\}.obj::
 127.162 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 127.163 +	$<
 127.164 +<<
 127.165 +
 127.166 +{.}.cc{release\}.obj::
 127.167 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 127.168 +	$<
 127.169 +<<
 127.170 +
 127.171 +{.}.cxx{release\}.obj::
 127.172 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 127.173 +	$<
 127.174 +<<
 127.175 +
 127.176 +{.}.c{release\}.obj::
 127.177 +	$(CC) -c $(CFLAGS) $(INCPATH) -Forelease\ @<<
 127.178 +	$<
 127.179 +<<
 127.180 +
 127.181 +{.}.cpp{release\}.obj::
 127.182 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 127.183 +	$<
 127.184 +<<
 127.185 +
 127.186 +{.}.cc{release\}.obj::
 127.187 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 127.188 +	$<
 127.189 +<<
 127.190 +
 127.191 +{.}.cxx{release\}.obj::
 127.192 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 127.193 +	$<
 127.194 +<<
 127.195 +
 127.196 +{.}.c{release\}.obj::
 127.197 +	$(CC) -c $(CFLAGS) $(INCPATH) -Forelease\ @<<
 127.198 +	$<
 127.199 +<<
 127.200 +
 127.201 +####### Build rules
 127.202 +
 127.203 +first: all
 127.204 +all: Makefile.Release $(TARGET)
 127.205 +
 127.206 +$(TARGET):  $(OBJECTS) 
 127.207 +	$(LINK) $(LFLAGS) /OUT:"$(TARGET)" @<< 
 127.208 +	  $(OBJECTS) $(LIBS)
 127.209 +<<
 127.210 +
 127.211 +
 127.212 +qmake:  FORCE
 127.213 +	@$(QMAKE) -win32 -o Makefile.Release prophet.pro
 127.214 +
 127.215 +dist:
 127.216 +	$(ZIP) prophet.zip $(SOURCES) $(DIST) prophet.pro C:/Qt/4.0.1/mkspecs/qconfig.pri ..\..\..\Qt\4.0.1\mkspecs\features\qt_config.prf ..\..\..\Qt\4.0.1\mkspecs\features\exclusive_builds.prf ..\..\..\Qt\4.0.1\mkspecs\features\default_pre.prf ..\..\..\Qt\4.0.1\mkspecs\features\win32\default_pre.prf ..\..\..\Qt\4.0.1\mkspecs\features\release.prf ..\..\..\Qt\4.0.1\mkspecs\features\debug_and_release.prf ..\..\..\Qt\4.0.1\mkspecs\features\default_post.prf ..\..\..\Qt\4.0.1\mkspecs\features\build_pass.prf ..\..\..\Qt\4.0.1\mkspecs\features\Release.prf ..\..\..\Qt\4.0.1\mkspecs\features\win32\console.prf ..\..\..\Qt\4.0.1\mkspecs\features\win32\rtti.prf ..\..\..\Qt\4.0.1\mkspecs\features\win32\exceptions.prf ..\..\..\Qt\4.0.1\mkspecs\features\win32\stl.prf ..\..\..\Qt\4.0.1\mkspecs\features\shared.prf C:/Qt/4.0.1/mkspecs/win32-msvc/features/incremental.prf ..\..\..\Qt\4.0.1\mkspecs\features\warn_on.prf ..\..\..\Qt\4.0.1\mkspecs\features\qt.prf ..\..\..\Qt\4.0.1\mkspecs\features\win32\thread.prf ..\..\..\Qt\4.0.1\mkspecs\features\moc.prf ..\..\..\Qt\4.0.1\mkspecs\features\resources.prf ..\..\..\Qt\4.0.1\mkspecs\features\uic.prf  HEADERS RESOURCES IMAGES SOURCES FORMS 
 127.217 +
 127.218 +clean: compiler_clean
 127.219 +	-$(DEL_FILE) release\main.obj
 127.220 +	-$(DEL_FILE) release\bundle.obj
 127.221 +	-$(DEL_FILE) release\bundleManager.obj
 127.222 +	-$(DEL_FILE) release\node.obj
 127.223 +	-$(DEL_FILE) release\nodeManager.obj
 127.224 +	-$(DEL_FILE) release\connection.obj
 127.225 +	-$(DEL_FILE) release\hello.obj
 127.226 +	-$(DEL_FILE) release\tlv.obj
 127.227 +	-$(DEL_FILE) release\dataPacket.obj
 127.228 +	-$(DEL_FILE) release\messageFile.obj
 127.229 +	-$(DEL_FILE) release\dataPacket.obj
 127.230 +	-$(DEL_FILE) release\neighbourAwareness.obj
 127.231 +	-$(DEL_FILE) release\readFile.obj
 127.232 +	-$(DEL_FILE) release\moc_neighbourAwareness.obj
 127.233 +	-$(DEL_FILE) release\moc_bundle.obj
 127.234 +	-$(DEL_FILE) release\moc_bundleManager.obj
 127.235 +	-$(DEL_FILE) release\moc_node.obj
 127.236 +	-$(DEL_FILE) release\moc_nodeManager.obj
 127.237 +	-$(DEL_FILE) release\moc_connection.obj
 127.238 +	-$(DEL_FILE) release\moc_tlv.obj
 127.239 +	-$(DEL_FILE) release\moc_messageFile.obj
 127.240 +	-$(DEL_FILE) release\moc_hello.obj
 127.241 +
 127.242 +distclean: clean
 127.243 +	-$(DEL_FILE) "$(TARGET)"
 127.244 +	-$(DEL_FILE) Makefile.Release
 127.245 +
 127.246 +mocclean: compiler_moc_header_clean compiler_moc_source_clean
 127.247 +
 127.248 +mocables: compiler_moc_header_make_all compiler_moc_source_make_all
 127.249 +
 127.250 +compiler_moc_header_make_all: release\moc_neighbourAwareness.cpp release\moc_bundle.cpp release\moc_bundleManager.cpp release\moc_node.cpp release\moc_nodeManager.cpp release\moc_connection.cpp release\moc_tlv.cpp release\moc_messageFile.cpp release\moc_hello.cpp
 127.251 +compiler_moc_header_clean:
 127.252 +	-$(DEL_FILE) release\moc_neighbourAwareness.cpp
 127.253 +	-$(DEL_FILE) release\moc_bundle.cpp
 127.254 +	-$(DEL_FILE) release\moc_bundleManager.cpp
 127.255 +	-$(DEL_FILE) release\moc_node.cpp
 127.256 +	-$(DEL_FILE) release\moc_nodeManager.cpp
 127.257 +	-$(DEL_FILE) release\moc_connection.cpp
 127.258 +	-$(DEL_FILE) release\moc_tlv.cpp
 127.259 +	-$(DEL_FILE) release\moc_messageFile.cpp
 127.260 +	-$(DEL_FILE) release\moc_hello.cpp
 127.261 +release\moc_neighbourAwareness.cpp: Connection.h \
 127.262 +		hello.h \
 127.263 +		tlv.h \
 127.264 +		node.h \
 127.265 +		bundle.h \
 127.266 +		nodeManager.h \
 127.267 +		bundleManager.h \
 127.268 +		dataPacket.h \
 127.269 +		neighbourAwareness.h
 127.270 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 neighbourAwareness.h -o release\moc_neighbourAwareness.cpp
 127.271 +
 127.272 +release\moc_bundle.cpp: bundle.h
 127.273 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 bundle.h -o release\moc_bundle.cpp
 127.274 +
 127.275 +release\moc_bundleManager.cpp: bundle.h \
 127.276 +		node.h \
 127.277 +		bundleManager.h
 127.278 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 bundleManager.h -o release\moc_bundleManager.cpp
 127.279 +
 127.280 +release\moc_node.cpp: node.h
 127.281 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 node.h -o release\moc_node.cpp
 127.282 +
 127.283 +release\moc_nodeManager.cpp: node.h \
 127.284 +		nodeManager.h
 127.285 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 nodeManager.h -o release\moc_nodeManager.cpp
 127.286 +
 127.287 +release\moc_connection.cpp: hello.h \
 127.288 +		tlv.h \
 127.289 +		node.h \
 127.290 +		bundle.h \
 127.291 +		nodeManager.h \
 127.292 +		bundleManager.h \
 127.293 +		dataPacket.h \
 127.294 +		connection.h
 127.295 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 connection.h -o release\moc_connection.cpp
 127.296 +
 127.297 +release\moc_tlv.cpp: hello.h \
 127.298 +		node.h \
 127.299 +		bundle.h \
 127.300 +		tlv.h
 127.301 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 tlv.h -o release\moc_tlv.cpp
 127.302 +
 127.303 +release\moc_messageFile.cpp: messageFile.h
 127.304 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 messageFile.h -o release\moc_messageFile.cpp
 127.305 +
 127.306 +release\moc_hello.cpp: hello.h
 127.307 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 hello.h -o release\moc_hello.cpp
 127.308 +
 127.309 +compiler_rcc_make_all:
 127.310 +compiler_rcc_clean:
 127.311 +compiler_image_collection_make_all:
 127.312 +compiler_image_collection_clean:
 127.313 +	-$(DEL_FILE) qmake_image_collection.cpp
 127.314 +compiler_moc_source_make_all:
 127.315 +compiler_moc_source_clean:
 127.316 +compiler_uic_make_all:
 127.317 +compiler_uic_clean:
 127.318 +compiler_clean: compiler_moc_header_clean compiler_rcc_clean compiler_image_collection_clean compiler_moc_source_clean compiler_uic_clean 
 127.319 +
 127.320 +
 127.321 +
 127.322 +####### Compile
 127.323 +
 127.324 +release\main.obj: main.cpp neighbourAwareness.h \
 127.325 +		Connection.h \
 127.326 +		hello.h \
 127.327 +		tlv.h \
 127.328 +		node.h \
 127.329 +		bundle.h \
 127.330 +		nodeManager.h \
 127.331 +		bundleManager.h \
 127.332 +		dataPacket.h \
 127.333 +		messageFile.h \
 127.334 +		
 127.335 +
 127.336 +release\bundle.obj: bundle.cpp bundle.h \
 127.337 +		
 127.338 +
 127.339 +release\bundleManager.obj: bundleManager.cpp BundleManager.h \
 127.340 +		bundle.h \
 127.341 +		node.h \
 127.342 +		
 127.343 +
 127.344 +release\node.obj: node.cpp node.h \
 127.345 +		
 127.346 +
 127.347 +release\nodeManager.obj: nodeManager.cpp nodemanager.h \
 127.348 +		node.h \
 127.349 +		
 127.350 +
 127.351 +release\connection.obj: connection.cpp connection.h \
 127.352 +		hello.h \
 127.353 +		tlv.h \
 127.354 +		node.h \
 127.355 +		bundle.h \
 127.356 +		nodeManager.h \
 127.357 +		bundleManager.h \
 127.358 +		dataPacket.h \
 127.359 +		messageFile.h \
 127.360 +		
 127.361 +
 127.362 +release\hello.obj: hello.cpp hello.h \
 127.363 +		
 127.364 +
 127.365 +release\tlv.obj: tlv.cpp tlv.h \
 127.366 +		hello.h \
 127.367 +		node.h \
 127.368 +		bundle.h \
 127.369 +		messageFile.h \
 127.370 +		
 127.371 +
 127.372 +release\dataPacket.obj: dataPacket.cpp dataPacket.h \
 127.373 +		
 127.374 +
 127.375 +release\messageFile.obj: messageFile.cpp messageFile.h \
 127.376 +		
 127.377 +
 127.378 +release\dataPacket.obj: dataPacket.cpp dataPacket.h \
 127.379 +		
 127.380 +
 127.381 +release\neighbourAwareness.obj: neighbourAwareness.cpp Connection.h \
 127.382 +		hello.h \
 127.383 +		tlv.h \
 127.384 +		node.h \
 127.385 +		bundle.h \
 127.386 +		nodeManager.h \
 127.387 +		bundleManager.h \
 127.388 +		dataPacket.h \
 127.389 +		neighbourAwareness.h \
 127.390 +		readFile.h \
 127.391 +		main.h \
 127.392 +		messageFile.h \
 127.393 +		
 127.394 +
 127.395 +release\readFile.obj: readFile.cpp readFile.h \
 127.396 +		
 127.397 +
 127.398 +release\moc_neighbourAwareness.obj: release\moc_neighbourAwareness.cpp 
 127.399 +
 127.400 +release\moc_bundle.obj: release\moc_bundle.cpp 
 127.401 +
 127.402 +release\moc_bundleManager.obj: release\moc_bundleManager.cpp 
 127.403 +
 127.404 +release\moc_node.obj: release\moc_node.cpp 
 127.405 +
 127.406 +release\moc_nodeManager.obj: release\moc_nodeManager.cpp 
 127.407 +
 127.408 +release\moc_connection.obj: release\moc_connection.cpp 
 127.409 +
 127.410 +release\moc_tlv.obj: release\moc_tlv.cpp 
 127.411 +
 127.412 +release\moc_messageFile.obj: release\moc_messageFile.cpp 
 127.413 +
 127.414 +release\moc_hello.obj: release\moc_hello.cpp 
 127.415 +
 127.416 +####### Install
 127.417 +
 127.418 +install:   FORCE
 127.419 +
 127.420 +uninstall:   FORCE
 127.421 +
 127.422 +FORCE:
 127.423 +
   128.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   128.2 +++ b/x86/ARM/binaries/actualizar	Thu Jun 26 17:39:40 2008 +0100
   128.3 @@ -0,0 +1,8 @@
   128.4 +rm prophet
   128.5 +wget http://lakesis.rastafurbi.org/prophet
   128.6 +chmod +x prophet
   128.7 +scp prophet 192.168.10.6:/root/prophet/prophet
   128.8 +#scp prophet 192.168.10.4:/root/prophet/prophet
   128.9 +#ssh 192.168.10.6
  128.10 +#ssh 192.168.10.4
  128.11 +prophet
   129.1 Binary file x86/ARM/binaries/prophet has changed
   130.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   130.2 +++ b/x86/ARM/binaries/prophet.ini	Thu Jun 26 17:39:40 2008 +0100
   130.3 @@ -0,0 +1,21 @@
   130.4 +NODEID=1
   130.5 +NODENAME=enfei.dtn
   130.6 +NODEIP=192.168.10.2
   130.7 +NODEIP2=192.168.10.2
   130.8 +NODEBROADCAST=255.255.255.255
   130.9 +BROADCAST=1000
  130.10 +AGINGTIMER=1000
  130.11 +PENCOUNTER=0.75
  130.12 +BETA=0.25
  130.13 +GAMMA=0.99
  130.14 +HELLO=10000
  130.15 +ALIVE=15
  130.16 +HELLOTIMER=60000
  130.17 +INITIATORTIMER=60000
  130.18 +LISTENERTIMER=60000
  130.19 +DTNHOSTNAME=localhost
  130.20 +DTNHOSTPORT=21
  130.21 +DNTTIMER=5000
  130.22 +STORAGESIZE=10000000
  130.23 +ROUTING=1
  130.24 +QUEUE=0
   131.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   131.2 +++ b/x86/ARM/bundle.cpp	Thu Jun 26 17:39:40 2008 +0100
   131.3 @@ -0,0 +1,106 @@
   131.4 +#include <QtCore>
   131.5 +#include <bundle.h>
   131.6 +
   131.7 +
   131.8 +Bundle::Bundle(QObject *parent)
   131.9 +{
  131.10 +			id=0;
  131.11 +			sourceId=0;
  131.12 +			destinationId=0;
  131.13 +			data.clear();
  131.14 +			options=0;
  131.15 +			sourceString.clear();
  131.16 +			destinationString.clear();
  131.17 +			dataLength=0;
  131.18 +}
  131.19 +
  131.20 +
  131.21 +Bundle& Bundle::operator=(const Bundle& other)
  131.22 +{
  131.23 + id = other.id;
  131.24 + sourceId = other.sourceId;
  131.25 + destinationId = other.destinationId;
  131.26 + data = other.data;
  131.27 + timeStamp = other.timeStamp;
  131.28 + options = other.options;
  131.29 + sourceString = other.sourceString;
  131.30 + destinationString = other.destinationString;
  131.31 + dataLength = other.dataLength;
  131.32 + return *this;
  131.33 +}
  131.34 +
  131.35 +Bundle::Bundle(const Bundle& other)
  131.36 +{
  131.37 + id = other.id;
  131.38 + sourceId = other.sourceId;
  131.39 + destinationId = other.destinationId;
  131.40 + data = other.data;
  131.41 + timeStamp = other.timeStamp;
  131.42 + options = other.options;
  131.43 + sourceString = other.sourceString;
  131.44 + destinationString = other.destinationString;
  131.45 + dataLength = other.dataLength;
  131.46 +}	
  131.47 +	
  131.48 +void Bundle::setContent(int seq,int s,int d,QByteArray m,int opt,QByteArray src,QByteArray dst)
  131.49 +{
  131.50 +	timeStamp=timeStamp.currentDateTime();
  131.51 +	id=(seq%100)+(rand()%1000)*1000;
  131.52 +	
  131.53 +	//	id=s+(d*100)+(timeStamp.second()*10000)+(timeStamp.minute()*1000000);//+(timeStamp.minute()*100000000);
  131.54 +//	id=(rand()%10000)+(rand()*10000);
  131.55 +	sourceId=s;
  131.56 +	destinationId=d;
  131.57 +	data=m; 
  131.58 +	options=opt;
  131.59 +	sourceString = src;
  131.60 +	destinationString = dst;
  131.61 +
  131.62 +
  131.63 +}
  131.64 +void Bundle::setContent(int seq,int s,int d,QByteArray m,int opt)
  131.65 +{
  131.66 +	timeStamp=timeStamp.currentDateTime();
  131.67 +//	id=s+(d*100)+(timeStamp.second()*10000)+(timeStamp.minute()*1000000);//+(timeStamp.minute()*100000000);
  131.68 +//	id=(rand()%10000)+(rand()*10000);
  131.69 +//	id=d+(s*1000)+((seq%100)*100000000);
  131.70 +	id=(rand()%10000);
  131.71 +	sourceId=s;
  131.72 +	destinationId=d;
  131.73 +	data=m;
  131.74 +	sourceString.clear();
  131.75 +	destinationString.clear();
  131.76 +
  131.77 +	options=opt;
  131.78 +}
  131.79 +
  131.80 +int Bundle::getId()
  131.81 +{
  131.82 +	return id;
  131.83 +}
  131.84 +
  131.85 +int Bundle::getSourceId()
  131.86 +{
  131.87 +	return sourceId;
  131.88 +}
  131.89 +
  131.90 +int Bundle::getDestinationId()
  131.91 +{
  131.92 +	return destinationId;
  131.93 +}
  131.94 +
  131.95 +QByteArray Bundle::getData()
  131.96 +{
  131.97 +	return data;
  131.98 +}
  131.99 +
 131.100 +QDateTime Bundle::getTime()
 131.101 +{
 131.102 +	return timeStamp;
 131.103 +}
 131.104 +
 131.105 +
 131.106 +int Bundle::getOptions()
 131.107 +{
 131.108 +	return options;
 131.109 +}
 131.110 \ No newline at end of file
   132.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   132.2 +++ b/x86/ARM/bundle.h	Thu Jun 26 17:39:40 2008 +0100
   132.3 @@ -0,0 +1,37 @@
   132.4 +#ifndef BUNDLE_H
   132.5 +#define BUNDLE_H
   132.6 +
   132.7 +#include <QtCore>
   132.8 +
   132.9 +class Bundle : public QObject
  132.10 +{
  132.11 +
  132.12 +Q_OBJECT 
  132.13 +	public:
  132.14 +	int id;
  132.15 +	int sourceId;
  132.16 +	int destinationId;
  132.17 +	QByteArray data;
  132.18 +	QByteArray sourceString;
  132.19 +	QByteArray destinationString;
  132.20 +	QDateTime timeStamp;
  132.21 +	int options;
  132.22 +	int dataLength;
  132.23 +
  132.24 +
  132.25 +	Bundle(QObject *parent = 0);
  132.26 +	Bundle(const Bundle& other);
  132.27 +	Bundle& operator=(const Bundle& other);
  132.28 +
  132.29 +	void setContent(int,int s,int d,QByteArray m,int opt,QByteArray src,QByteArray dst);
  132.30 +	void setContent(int,int,int,QByteArray,int);
  132.31 +	int getId(); 
  132.32 +	int getSourceId();
  132.33 +	int getDestinationId();
  132.34 +	QDateTime getTime();
  132.35 +	QByteArray getData();
  132.36 +	int getOptions();
  132.37 +	
  132.38 +};
  132.39 +
  132.40 +#endif
  132.41 \ No newline at end of file
   133.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   133.2 +++ b/x86/ARM/bundleManager.cpp	Thu Jun 26 17:39:40 2008 +0100
   133.3 @@ -0,0 +1,410 @@
   133.4 +#include <QtCore>
   133.5 +#include <bundleManager.h>
   133.6 +#include <bundle.h>
   133.7 +#include <readFile.h>
   133.8 +#include <nodeManager.h>
   133.9 +
  133.10 +//#define STORAGESIZE 2000
  133.11 +#define BUNDLEDESTUPDATE 1000
  133.12 +
  133.13 +BundleManager::BundleManager(int id)
  133.14 +{
  133.15 +	ourId=id;
  133.16 +	ReadFile conf;
  133.17 +	STORAGESIZE=conf.getStorageSize();
  133.18 +	fileOption=conf.getUseFileBundles();
  133.19 +	routing=conf.getRouting();
  133.20 +	int WRITETIMER =conf.getWriteToFileTimer();
  133.21 +	storagePath=conf.getStoragePath();
  133.22 +	dir.setPath(storagePath);
  133.23 +	QString msgDirPath=conf.getMsgPath();
  133.24 +	msgDir.setPath(msgDirPath);
  133.25 +	option=conf.getUseFileBundles();
  133.26 +	logOption=conf.getLogOption();
  133.27 +	if(fileOption==1)
  133.28 +	{
  133.29 +		readFromFile();
  133.30 +		writeToFileTimer = new QTimer();
  133.31 +		connect(writeToFileTimer, SIGNAL(timeout()), this, SLOT(saveToFile()));
  133.32 +		writeToFileTimer->start(WRITETIMER);
  133.33 +		emit sendDebugBundleList(bundleList);
  133.34 +	}
  133.35 +	timer = new QTimer();
  133.36 +	showFirstTime=0;
  133.37 +	timer->start(5000);
  133.38 +	connect(timer, SIGNAL(timeout()), this, SLOT(emitDebugList()));
  133.39 +	if(logOption==1)
  133.40 +	{
  133.41 +		log = new MessageFile;
  133.42 +		log->set("transfer.log", 1000000, 5);
  133.43 +	}
  133.44 +
  133.45 +}
  133.46 +
  133.47 +void BundleManager::emitDebugList()
  133.48 +{
  133.49 +	if(showFirstTime==0)
  133.50 +	{
  133.51 +		emit sendDebugBundleList(bundleList);
  133.52 +		showFirstTime=1;
  133.53 +	}
  133.54 +
  133.55 +}
  133.56 +void BundleManager::saveToFile()
  133.57 +{
  133.58 +	QString fileName =storagePath;
  133.59 +	fileName.append("bundles.txt");
  133.60 +	QFile file(fileName);
  133.61 +	if (!file.open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text))
  133.62 +           return;
  133.63 +	else
  133.64 +	{
  133.65 +	QDateTime realTime;
  133.66 +	realTime=realTime.currentDateTime ();
  133.67 +	QString time=realTime.toString("MM/dd/yyyy hh:mm:ss");
  133.68 +	time.append("\n");
  133.69 +	file.write(time.toAscii ());
  133.70 +	for (ushort i = 0; i < bundleList.size(); ++i) 
  133.71 +	{
  133.72 +		QString bundleString;
  133.73 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).id));
  133.74 +		bundleString.append("\t");
  133.75 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).sourceId));
  133.76 +		bundleString.append("\t");
  133.77 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).destinationId));
  133.78 +		bundleString.append("\t");
  133.79 +		bundleString.append(bundleList.at(i).sourceString);
  133.80 +		bundleString.append("\t");
  133.81 +		bundleString.append(bundleList.at(i).destinationString);
  133.82 +		bundleString.append("\t");
  133.83 +		QDateTime Dtime = bundleList.at(i).timeStamp;
  133.84 +		QString time=Dtime.toString("MM/dd/yyyy hh:mm:ss");
  133.85 +		bundleString.append(time);
  133.86 +		bundleString.append("\t");
  133.87 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).options));
  133.88 +		bundleString.append("\t");
  133.89 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).dataLength));
  133.90 +		bundleString.append("\n");
  133.91 +		file.write(bundleString.toAscii ());
  133.92 +	}
  133.93 +	file.close();
  133.94 +	}
  133.95 +
  133.96 +}
  133.97 +
  133.98 +void BundleManager::readFromFile()
  133.99 +{
 133.100 +	QString fileName =storagePath;
 133.101 +	fileName.append("bundles.txt");
 133.102 +	QFile file(fileName);
 133.103 +	if (!file.open(QIODevice::ReadOnly| QIODevice::Text))
 133.104 +           return;
 133.105 +	else
 133.106 +	{
 133.107 +		QString firstLine;
 133.108 +		QString line;
 133.109 +		//First we read date and time
 133.110 +		firstLine=file.readLine();
 133.111 +		//Then we add nodes
 133.112 +		line=file.readLine();
 133.113 +		while(line.size()>0)
 133.114 +		{
 133.115 +			//Parsing node
 133.116 +			int pos;
 133.117 +			QString temp;
 133.118 +			Bundle newBundle;
 133.119 +			//Bundle ID
 133.120 +			pos=line.indexOf("\t",0);
 133.121 +			temp=line.mid(0,pos);
 133.122 +			newBundle.id=temp.toInt(0,10);
 133.123 +			line.remove(0,pos+1);
 133.124 +			//Bundle source ID
 133.125 +			pos=line.indexOf("\t",0);
 133.126 +			temp=line.mid(0,pos);
 133.127 +			newBundle.sourceId=temp.toInt(0,10);
 133.128 +			line.remove(0,pos+1);
 133.129 +			//Bundle destination ID
 133.130 +			pos=line.indexOf("\t",0);
 133.131 +			temp=line.mid(0,pos);
 133.132 +			newBundle.destinationId=temp.toInt(0,10);
 133.133 +			line.remove(0,pos+1);
 133.134 +			//Bundle source string
 133.135 +			pos=line.indexOf("\t",0);
 133.136 +			temp=line.mid(0,pos);
 133.137 +			newBundle.sourceString=temp.toAscii();
 133.138 +			line.remove(0,pos+1);
 133.139 +			//Bundle destination string
 133.140 +			pos=line.indexOf("\t",0);
 133.141 +			temp=line.mid(0,pos);
 133.142 +			newBundle.destinationString=temp.toAscii();
 133.143 +			line.remove(0,pos+1);
 133.144 +			//Bundle timestamp
 133.145 +			pos=line.indexOf("\t",0);
 133.146 +			temp=line.mid(0,pos);
 133.147 +			QDateTime time;
 133.148 +			time=time.fromString(temp,"MM/dd/yyyy hh:mm:ss");
 133.149 +			newBundle.timeStamp=time;
 133.150 +			line.remove(0,pos+1);
 133.151 +			//Bundle options
 133.152 +			pos=line.indexOf("\t",0);
 133.153 +			temp=line.mid(0,pos);
 133.154 +			newBundle.options=temp.toInt(0,10);
 133.155 +			line.remove(0,pos+1);
 133.156 +			//Bundle datalength
 133.157 +			pos=line.indexOf("\t",0);
 133.158 +			temp=line.mid(0,pos);
 133.159 +			newBundle.dataLength=temp.toInt(0,10);
 133.160 +			line.remove(0,pos+1);
 133.161 +			//Adding Node
 133.162 +			bundleList.append(newBundle);
 133.163 +			line=file.readLine();
 133.164 +		}
 133.165 +		file.close();
 133.166 +	}
 133.167 +}
 133.168 +
 133.169 +QList<Bundle> BundleManager::getBundleList()
 133.170 +{	
 133.171 +	return bundleList;
 133.172 +}
 133.173 +
 133.174 +int BundleManager::getStorageSize()
 133.175 +{	
 133.176 +	int size=0;
 133.177 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 133.178 +	{
 133.179 +		size+=getBundleSize(bundleList.at(i));
 133.180 +	}
 133.181 +	return size;
 133.182 +}
 133.183 +
 133.184 +int BundleManager::getBundleSize(Bundle bundle)
 133.185 +{	
 133.186 +	int size=0;
 133.187 +	size+=sizeof(Bundle);
 133.188 +	size+=bundle.data.size();
 133.189 +	size+=bundle.destinationString.size();
 133.190 +	size+=bundle.sourceString.size();
 133.191 +	return size;
 133.192 +}
 133.193 +
 133.194 +QList<Bundle> BundleManager::getBundleOffer(QList<Node> ourList,QList<Node> encoutnerList,int encounterId)
 133.195 +{
 133.196 +	QList<Bundle> newBundleList;
 133.197 +//	return bundleList;
 133.198 +
 133.199 +	switch(routing)
 133.200 +	{
 133.201 +		case 0:	//EPIDEMIC ROUTING - I like it.. ;)	
 133.202 +				return bundleList; break;
 133.203 +		case 1: //PROPHET ROUTING: GRTR  P_(B,D)>P_(A,D) - A bit more advanced
 133.204 +		//We have to check for each bundle
 133.205 +			for (ushort i = 0; i < bundleList.size(); ++i) 
 133.206 +			{
 133.207 +				float ourProbability = -1.0;
 133.208 +				float encounterProbability = -1.0;
 133.209 +				int bundleDestination = bundleList.at(i).destinationId;
 133.210 +				//First we get our probability
 133.211 +				for (ushort n = 0; n < ourList.size(); ++n) 
 133.212 +				{
 133.213 +					int nodeId=ourList.at(n).nodeId;
 133.214 +					if(nodeId==bundleDestination)
 133.215 +						ourProbability = ourList.at(n).probability;
 133.216 +				}
 133.217 +				//Then we get encouter probability
 133.218 +				for (ushort n = 0; n < encoutnerList.size(); ++n) 
 133.219 +				{
 133.220 +					int nodeId=encoutnerList.at(n).nodeId;
 133.221 +					if(encoutnerList.at(n).nodeId==bundleDestination)
 133.222 +						encounterProbability = encoutnerList.at(n).probability;
 133.223 +				}
 133.224 +				if(((encounterProbability>ourProbability)||(bundleDestination==encounterId))&&(bundleDestination!=0))
 133.225 +				{		
 133.226 +					Bundle tempBundle;
 133.227 +					tempBundle=bundleList.at(i);
 133.228 +					newBundleList.append(tempBundle);
 133.229 +				}
 133.230 +			}
 133.231 +			return newBundleList;
 133.232 +			break;
 133.233 +	}
 133.234 +	return bundleList;
 133.235 +}
 133.236 +
 133.237 +void BundleManager::updateBundlesDestinations(NodeManager* nodeManager)
 133.238 +{
 133.239 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 133.240 +	{
 133.241 +		Bundle tempBundle;
 133.242 +		if(bundleList.at(i).destinationId==0)
 133.243 +		{
 133.244 +			QString source;
 133.245 +			QString destination;
 133.246 +			QString temp;
 133.247 +			int pos;
 133.248 +			tempBundle=bundleList.at(i);
 133.249 +			temp=tempBundle.sourceString;
 133.250 +			pos=temp.indexOf("://",0);
 133.251 +			temp.remove(0,pos+3);
 133.252 +			pos=temp.indexOf("/",0);
 133.253 +			source=temp.mid(0,pos);
 133.254 +			temp=tempBundle.destinationString;
 133.255 +			pos=temp.indexOf("://",0);
 133.256 +			temp.remove(0,pos+3);
 133.257 +			pos=temp.indexOf("/",0);
 133.258 +			destination=temp.mid(0,pos);
 133.259 +			tempBundle.destinationId=nodeManager->getId(destination);
 133.260 +			tempBundle.sourceId=nodeManager->getId(source);
 133.261 +			bundleList.replace(i,tempBundle);
 133.262 +			emit sendDebugBundleList(bundleList);
 133.263 +		}
 133.264 +	} 
 133.265 +
 133.266 +}
 133.267 +
 133.268 +QList<Bundle> BundleManager::prepareBundels(QList<Bundle> receivedList)
 133.269 +{
 133.270 +
 133.271 +	
 133.272 +	QList<Bundle> newBundleList;
 133.273 +	//We have to find and add all the bundles with data to the list
 133.274 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 133.275 +	{
 133.276 +		for (ushort j = 0; j < receivedList.size(); ++j) 
 133.277 +		{
 133.278 +			if(bundleList.at(i).id==receivedList.at(j).id)
 133.279 +				newBundleList.append(bundleList.at(i));
 133.280 +		}	
 133.281 +	}
 133.282 +	return newBundleList; 
 133.283 +}
 133.284 +
 133.285 +
 133.286 +QList<Bundle> BundleManager::prepareBundelRequest(QList<Bundle> receivedList)
 133.287 +{
 133.288 +	//We take only bundles that we don't have
 133.289 +	//Currently no memory restrictions!!!
 133.290 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 133.291 +	{
 133.292 +		for (ushort j = 0; j < receivedList.size(); ++j) 
 133.293 +		{
 133.294 +			if((bundleList.at(i).id==receivedList.at(j).id))//||(bundleList.at(i).options==receivedList.at(j).id))
 133.295 +			{
 133.296 +				receivedList.removeAt(j);
 133.297 +				j=0;
 133.298 +			}
 133.299 +		}	
 133.300 +	}
 133.301 +
 133.302 +	return receivedList; //We have to add some memory restrictions
 133.303 +}
 133.304 +
 133.305 +
 133.306 +
 133.307 +void BundleManager::addBundleList(QList<Bundle> receivedList)
 133.308 +{
 133.309 +	for (ushort n = 0; n < receivedList.size(); ++n)
 133.310 +	{
 133.311 +		Bundle newBundle;
 133.312 +		newBundle=receivedList.at(n);
 133.313 +		addBundle(newBundle);
 133.314 +	}	
 133.315 +}
 133.316 +
 133.317 +void BundleManager::addBundle(Bundle newBundle)
 133.318 +{
 133.319 +	int isInTheList=0;
 133.320 +	Bundle tempBundle=newBundle;
 133.321 +	//check that we don't have the same bundle
 133.322 +	for (ushort n = 0; n < bundleList.size(); ++n)
 133.323 +	{
 133.324 +		if(tempBundle.id==bundleList.at(n).id)
 133.325 +			isInTheList++;
 133.326 +	}	
 133.327 +	if(isInTheList==0)
 133.328 +	{
 133.329 +		if(logOption==1)
 133.330 +		{
 133.331 +		QString logString;
 133.332 +		logString.append("Bundle ID:");	
 133.333 +		logString.append(QString("%1").arg((int)tempBundle.id));
 133.334 +		logString.append(" SRC:");
 133.335 +		logString.append(QString("%1").arg((int)tempBundle.sourceId));
 133.336 +		logString.append(" ");
 133.337 +		logString.append(tempBundle.sourceString);
 133.338 +		logString.append(" DST:");
 133.339 +		logString.append(QString("%1").arg((int)tempBundle.destinationId));
 133.340 +		logString.append(" ");
 133.341 +		logString.append(tempBundle.destinationString);
 133.342 +		log->addLog(0,logString);
 133.343 +		}
 133.344 +		if(tempBundle.destinationId==ourId)
 133.345 +		{
 133.346 +			if(tempBundle.options==5)
 133.347 +			{
 133.348 +				//We add a new msg
 133.349 +				QString filename;
 133.350 +				filename.append(tempBundle.timeStamp.toString("MM-dd_hh-mm"));
 133.351 +				filename.append("_ID_");
 133.352 +				filename.append(QString("%1").arg((int)tempBundle.id));
 133.353 +				filename.append("_FROM_");
 133.354 +				filename.append(tempBundle.sourceString);
 133.355 +
 133.356 +				QString fileName =storagePath;
 133.357 +				fileName.append(filename);
 133.358 +				QFile file(fileName);
 133.359 +				if (!file.open(QIODevice::WriteOnly |QIODevice::Truncate))
 133.360 +					 return;
 133.361 +				else
 133.362 +				{
 133.363 +					file.write(tempBundle.data);
 133.364 +					file.close();
 133.365 +				}
 133.366 +				
 133.367 +			}
 133.368 +			else
 133.369 +			{
 133.370 +				emit sendDeliveredBundle(tempBundle);
 133.371 +			}	
 133.372 +		
 133.373 +		}
 133.374 +		//FIFO 
 133.375 +		//We prepare space
 133.376 +	/*	if(getBundleSize(tempBundle)<STORAGESIZE)
 133.377 +		{
 133.378 +			while(((getStorageSize()+getBundleSize(tempBundle))>STORAGESIZE)&&(bundleList.size()>0))
 133.379 +			{
 133.380 +				if(fileOption==1)
 133.381 +				{
 133.382 +					Bundle firstBundle;
 133.383 +					firstBundle=bundleList.first();
 133.384 +					QString filename;
 133.385 +					filename=QString("%1").arg((int)firstBundle.id);
 133.386 +					QFile file(dir.filePath(filename));
 133.387 +					file.remove();
 133.388 +			}
 133.389 +			bundleList.removeFirst();
 133.390 +		}*/
 133.391 +		//Adding recived bundle to storage
 133.392 +		if(fileOption==1)
 133.393 +		{
 133.394 +			QString fileName =storagePath;
 133.395 +			fileName.append(QString("%1").arg((int)tempBundle.id));
 133.396 +			QFile file(fileName);
 133.397 +			if (!file.open(QIODevice::WriteOnly |QIODevice::Truncate))
 133.398 +				return;
 133.399 +			else
 133.400 +			{
 133.401 +				file.write(tempBundle.data);
 133.402 +				tempBundle.data.clear();
 133.403 +				file.close();
 133.404 +			}
 133.405 +		}
 133.406 +		bundleList.append(tempBundle);
 133.407 +
 133.408 +		
 133.409 +	//DEBUG
 133.410 +	emit sendDebugBundleList(bundleList);
 133.411 +	//emit sendStorage(getStorageSize());
 133.412 +	}
 133.413 +}
   134.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   134.2 +++ b/x86/ARM/bundleManager.h	Thu Jun 26 17:39:40 2008 +0100
   134.3 @@ -0,0 +1,50 @@
   134.4 +#ifndef BUNDLEMANAGER_H
   134.5 +#define BUNDLEMANAGER_H
   134.6 +#include <QtCore>
   134.7 +#include <bundle.h>
   134.8 +#include <node.h>
   134.9 +#include <nodeManager.h>
  134.10 +#include <messageFile.h>
  134.11 +
  134.12 +class BundleManager : public QObject
  134.13 +{
  134.14 +	Q_OBJECT
  134.15 +
  134.16 +
  134.17 +public:
  134.18 +	BundleManager(int);
  134.19 +	QTimer *timer;
  134.20 +	int routing;
  134.21 +	int fileOption;
  134.22 +	int STORAGESIZE;
  134.23 +	int ourId;
  134.24 +	int getStorageSize();
  134.25 +	int getBundleSize(Bundle);
  134.26 +	QTimer *writeToFileTimer;
  134.27 +	QList<Bundle> bundleList;
  134.28 +	QList<Bundle> getBundleList();
  134.29 +	QList<Bundle> getBundleOffer(QList<Node> ourList,QList<Node> encoutnerList,int encounterId);
  134.30 +	QList<Bundle> prepareBundelRequest(QList<Bundle>);
  134.31 +	QList<Bundle> prepareBundels(QList<Bundle>);
  134.32 +	QDir dir;
  134.33 +	QDir msgDir;
  134.34 +	QString storagePath;
  134.35 +	int option;
  134.36 +	int logOption;
  134.37 +	MessageFile *log;
  134.38 +	bool showFirstTime;
  134.39 +	signals:
  134.40 +	void sendDeliveredBundle(Bundle);
  134.41 +	void sendStorage(int);
  134.42 +	void sendDebugBundleList(QList<Bundle>);
  134.43 +public slots:
  134.44 +	void updateBundlesDestinations(NodeManager*);
  134.45 +	void addBundle(Bundle);
  134.46 +	void addBundleList(QList<Bundle>);
  134.47 +	void saveToFile();
  134.48 +	void readFromFile();
  134.49 +	void emitDebugList();
  134.50 +
  134.51 +
  134.52 +};
  134.53 +#endif
   135.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   135.2 +++ b/x86/ARM/connection.cpp	Thu Jun 26 17:39:40 2008 +0100
   135.3 @@ -0,0 +1,623 @@
   135.4 +#include <QtCore>
   135.5 +#include <connection.h>
   135.6 +#include <tlv.h>
   135.7 +#include <messageFile.h>
   135.8 +#include <dataPacket.h>
   135.9 +#include <readFile.h>
  135.10 +
  135.11 +#define NOW 100
  135.12 +
  135.13 +//#define HELLO_TIMER 60000
  135.14 +//#define INITIATOR_TIMER 60000
  135.15 +//#define LISTENER_TIMER 60000
  135.16 +//#define HELLOT 10000
  135.17 +//#define BROADCAST 1000
  135.18 +
  135.19 +//Connection states
  135.20 +#define WAIT_NB 0
  135.21 +#define HELLO 1
  135.22 +#define INFO_EXCH 2
  135.23 +#define WAIT_INFO 2
  135.24 +
  135.25 +
  135.26 +//Hello procedure states
  135.27 +#define SENDSYN 1
  135.28 +#define WAITSYNACK 2
  135.29 +#define WAITACK 4
  135.30 +#define ESTABLISHED 3
  135.31 +#define MASTER 4
  135.32 +#define SLAVE 5
  135.33 +
  135.34 +//Initiator states
  135.35 +#define SENDDICTIONARY 1
  135.36 +#define SENDRIB 2
  135.37 +#define SENDBOFFER 4
  135.38 +#define WAITBREQ 5
  135.39 +#define TIMEOUT 16
  135.40 +#define SENDBUNDLE 7
  135.41 +#define WAITFORBREQUEST 8
  135.42 +#define RESETLINK 19
  135.43 +#define IDLESTATE 110
  135.44 +
  135.45 +//Listener states
  135.46 +#define WAITFORDICTIONARY 1
  135.47 +#define WAITFORRIB 2
  135.48 +#define WAITFORBOFFER 3
  135.49 +#define SENDBREQUEST 4
  135.50 +#define WAITFORBUNDLES 5
  135.51 +
  135.52 +
  135.53 +
  135.54 +Connection::Connection(int connectId,int nodeId,QString nodeName,NodeManager* nodeManager,BundleManager* bundleManager,QObject *parent)
  135.55 +
  135.56 +{
  135.57 +	ReadFile init;
  135.58 +	HELLO_TIMER=init.getHelloTimer();
  135.59 +	INITIATOR_TIMER=init.getInitiatorTimer();
  135.60 +	LISTENER_TIMER=init.getListenerTimer();
  135.61 +	HELLOT=init.getHello();
  135.62 +	BROADCAST=init.getBroadcastTimer();
  135.63 +	continiusUpdate=init.getContiniusUpdate();
  135.64 +	update=0;
  135.65 +	
  135.66 +/*	QString logString;
  135.67 +	logString.append("I am created:");
  135.68 +	logString.append(QString("%1").arg((int)connectId));
  135.69 +	//log->addLog(0,logString);
  135.70 +*/	
  135.71 +	encounterNodeId=0;
  135.72 +	//State variables
  135.73 +	connectionState=HELLO;
  135.74 +	helloState=SENDSYN;
  135.75 +	initiatorState=IDLESTATE;
  135.76 +	listenerState=IDLESTATE;
  135.77 +	//Define our node manager
  135.78 +	connectionNodeManager=nodeManager;
  135.79 +	//Define our bundle manager
  135.80 +	connectionBundleManager=bundleManager;
  135.81 +	//Set up unique connection ID
  135.82 +//	connectionId=rand();
  135.83 +//	connectionId=connectionId%1000;
  135.84 +	connectionId=connectId;
  135.85 +	//Set up connectionNodeName
  135.86 +	connectionNodeName=nodeName;
  135.87 +	//Set up connectionNodeName
  135.88 +	connectionNodeId=nodeId;
  135.89 +	//Create and connect Hello Timer
  135.90 +    helloTimer = new QTimer(this);
  135.91 +    connect(helloTimer, SIGNAL(timeout()), this, SLOT(helloProcedure()));
  135.92 +    helloTimer->start(rand()%HELLO);
  135.93 +
  135.94 +	//Create and connect Initiator Timer
  135.95 +    initiatorTimer = new QTimer(this);
  135.96 +    connect(initiatorTimer, SIGNAL(timeout()), this, SLOT(initiatorProcedure()));
  135.97 +    //initiatorTimer->start(INITIATOR_TIMER);
  135.98 +
  135.99 +	//Create and connect Listener Timer
 135.100 +    listenerTimer = new QTimer(this);
 135.101 +    connect(listenerTimer, SIGNAL(timeout()), this, SLOT(listenerProcedure()));
 135.102 +    //listenerTimer->start(LISTENER_TIMER);
 135.103 +
 135.104 +
 135.105 +
 135.106 +
 135.107 +	//Create and connect TLV translator
 135.108 +	TLVTranslator = new TLV;
 135.109 +
 135.110 +	//Main external datastreams
 135.111 +	connect(TLVTranslator,SIGNAL(sendDatagram(QByteArray)),this,SLOT(forwardSlotDatagram(QByteArray)));
 135.112 +	connect(this,SIGNAL(forwardSignalDatagram(QByteArray)),TLVTranslator,SLOT(receiveDatagram(QByteArray)));
 135.113 +
 135.114 +	//Hello procedure connections
 135.115 +    connect(this, SIGNAL(sendHello(Hello)),TLVTranslator,SLOT(receiveHello(Hello)));
 135.116 +    connect(TLVTranslator, SIGNAL(sendHello(Hello)),this,SLOT(receiveHello(Hello)));
 135.117 +
 135.118 +	//Initiators procedure connections
 135.119 +    connect(this, SIGNAL(sendDictionary(QList<Node>)),TLVTranslator,SLOT(createDictionary(QList<Node>)));
 135.120 +    connect(this, SIGNAL(sendRIB(QList<Node>)),TLVTranslator,SLOT(createRIB(QList<Node>)));
 135.121 +    connect(this, SIGNAL(sendBundleOffer(QList<Bundle>)),TLVTranslator,SLOT(createBundleOffer(QList<Bundle>)));
 135.122 +    connect(TLVTranslator, SIGNAL(sendBundleRequest(QList<Bundle>)),this,SLOT(receiveBundleRequest(QList<Bundle>)));
 135.123 +	connect(this, SIGNAL(sendBundles(QList<Bundle>)),TLVTranslator,SLOT(createBundleData(QList<Bundle>)));
 135.124 +
 135.125 +
 135.126 +	//Listener procedure connections
 135.127 +    connect(TLVTranslator, SIGNAL(sendDictionary(QList<Node>)),this,SLOT(receiveDictionary(QList<Node>)));
 135.128 +    connect(TLVTranslator, SIGNAL(sendRIB(QList<Node>)),this,SLOT(receiveRIB(QList<Node>)));
 135.129 +    connect(TLVTranslator, SIGNAL(sendBundleOffer(QList<Bundle>)),this,SLOT(receiveBundleOffer(QList<Bundle>)));
 135.130 +    connect(this, SIGNAL(sendBundleRequest(QList<Bundle>)),TLVTranslator,SLOT(createBundleRequest(QList<Bundle>)));
 135.131 +    connect(TLVTranslator, SIGNAL(sendBundleData(QList<Bundle>)),this,SLOT(receiveBundles(QList<Bundle>)));
 135.132 +
 135.133 +
 135.134 +
 135.135 +
 135.136 +	//Fork Initiator and Listener
 135.137 +//	initiator = new Initiator;
 135.138 +//	listener	= new Listener;
 135.139 +	//connect them internally for development purpose only
 135.140 +
 135.141 +}
 135.142 +
 135.143 +
 135.144 +Connection::~Connection(void)
 135.145 +{
 135.146 +	if(helloTimer!=NULL)
 135.147 +	{
 135.148 +		helloTimer->stop();
 135.149 +		delete helloTimer;
 135.150 +	}
 135.151 +		if(initiatorTimer!=NULL)
 135.152 +	{
 135.153 +		initiatorTimer->stop();
 135.154 +		delete initiatorTimer;
 135.155 +	}
 135.156 +			if(listenerTimer!=NULL)
 135.157 +	{
 135.158 +		listenerTimer->stop();
 135.159 +		delete listenerTimer;
 135.160 +	}	
 135.161 +	if(TLVTranslator!=NULL)
 135.162 +	{
 135.163 +		delete TLVTranslator; 
 135.164 +	} 
 135.165 +}
 135.166 +
 135.167 +
 135.168 +void Connection::helloProcedure()
 135.169 +{
 135.170 +	helloTimer->stop();
 135.171 +	//Prepare new Hello Object
 135.172 +	Hello newHello;
 135.173 +	switch(helloState)
 135.174 +	{
 135.175 +		case SENDSYN:	//log->addLog(connectionId,(QString)"Hello Procedure:SENDSYN");
 135.176 +						newHello.setFunction(SYN);
 135.177 +						newHello.setTimer(HELLO_TIMER);
 135.178 +						newHello.setSenderName(connectionNodeName);
 135.179 +						newHello.senderId=connectionNodeId;
 135.180 +						newHello.senderType=0;
 135.181 +						helloState=WAITSYNACK;
 135.182 +						emit sendHello(newHello);
 135.183 +			
 135.184 +		break;			
 135.185 +		default	:		//log->addLog(connectionId,(QString)"Hello Procedure:Default");
 135.186 +						helloState=SENDSYN;
 135.187 +						connectionState=HELLO;
 135.188 +						initiatorState=IDLESTATE;
 135.189 +						listenerState=IDLESTATE;
 135.190 +						listenerTimer->stop();
 135.191 +						initiatorTimer->stop();		
 135.192 +		break;
 135.193 +		}	
 135.194 +		helloTimer->start(HELLO_TIMER);
 135.195 +}
 135.196 +
 135.197 +
 135.198 +
 135.199 +void Connection::receiveHello(Hello receivedHello)
 135.200 +{
 135.201 +	int helloType=receivedHello.getFunction();
 135.202 +	helloTimer->stop();
 135.203 +	
 135.204 +	//Prepare new Hello object
 135.205 +	Hello newHello;
 135.206 +	
 135.207 +	switch(helloType)
 135.208 +	{
 135.209 +	case SYNACK:	//log->addLog(connectionId,(QString)"Receive Hello:SYNACK");
 135.210 +					//Resolving a ID form encountered node
 135.211 +					encounterNodeId=receivedHello.senderId;
 135.212 +					encounterNodeName=receivedHello.senderName;
 135.213 +					encounterNodeType=receivedHello.senderType;
 135.214 +					if(update==0)
 135.215 +					{
 135.216 +						connectionNodeManager->encounterNode(encounterNodeId,encounterNodeType,encounterNodeName);
 135.217 +						if(continiusUpdate==0)
 135.218 +							update=1;
 135.219 +					}
 135.220 +
 135.221 +					//Setting our own ID
 135.222 +					newHello.setFunction(ACK);
 135.223 +					newHello.setTimer(HELLO_TIMER);
 135.224 +					newHello.setSenderName(connectionNodeName);
 135.225 +					newHello.senderId=connectionNodeId;
 135.226 +					newHello.senderType=0;
 135.227 +					emit sendHello(newHello);
 135.228 +					helloState=SLAVE;
 135.229 +					//Invoke Initiator and Listener
 135.230 +					helloTimer->stop();
 135.231 +					initiatorState=SENDDICTIONARY;
 135.232 +					listenerState=WAITFORDICTIONARY;
 135.233 +					initiatorTimer->start(NOW);
 135.234 +					listenerTimer->start(LISTENER_TIMER);
 135.235 +					///initiatorProcedure();
 135.236 +					//////////////////////////////
 135.237 +					
 135.238 +	break;
 135.239 +	case SYN:		//log->addLog(connectionId,(QString)"Receive Hello:SYN");
 135.240 +					newHello.setFunction(SYNACK);
 135.241 +					newHello.setTimer(HELLO_TIMER);
 135.242 +					newHello.setSenderName(connectionNodeName);
 135.243 +					newHello.senderId=connectionNodeId;
 135.244 +					newHello.senderType=0;
 135.245 +					helloState=WAITACK;helloTimer->start(HELLO_TIMER);
 135.246 +					emit sendHello(newHello);
 135.247 +	break;
 135.248 +	case ACK:		//log->addLog(connectionId,(QString)"Receive Hello:ACK");
 135.249 +					//Resolving a ID form encountered node
 135.250 +					encounterNodeId=receivedHello.senderId;
 135.251 +					encounterNodeName=receivedHello.senderName;
 135.252 +					encounterNodeType=receivedHello.senderType;
 135.253 +					if(update==0)
 135.254 +					{
 135.255 +						connectionNodeManager->encounterNode(encounterNodeId,encounterNodeType,encounterNodeName);
 135.256 +						if(continiusUpdate==0)
 135.257 +							update=1;
 135.258 +					}
 135.259 +					helloState=MASTER;
 135.260 +					//Invoke Initiator and Listener
 135.261 +					helloTimer->stop();
 135.262 +					initiatorState=SENDDICTIONARY;
 135.263 +					listenerState=WAITFORDICTIONARY;
 135.264 +					initiatorTimer->start(NOW);
 135.265 +					listenerTimer->start(LISTENER_TIMER);
 135.266 +					//initiatorProcedure();
 135.267 +					/////////////////////////////////////
 135.268 +	break;
 135.269 +	case RSTACK:	//log->addLog(connectionId,(QString)"Receive Hello:RSTACK");
 135.270 +					helloState=SENDSYN;
 135.271 +					connectionState=HELLO;helloTimer->start(HELLO_TIMER);
 135.272 +	break;
 135.273 +	default:		//log->addLog(connectionId,(QString)"Receive Hello:Default");
 135.274 +					helloState=SENDSYN;
 135.275 +					connectionState=HELLO;helloTimer->start(HELLO_TIMER);
 135.276 +	break;
 135.277 +	}
 135.278 +	
 135.279 +
 135.280 +}
 135.281 +
 135.282 +void Connection::listenerProcedure()
 135.283 +{
 135.284 +	listenerTimer->stop();
 135.285 +	switch(initiatorState)
 135.286 +		{
 135.287 +		case WAITFORDICTIONARY://log->addLog(connectionId,(QString)"Listener:DICTIONARY timeout...");
 135.288 +							//we reset the link
 135.289 +							initiatorState=IDLESTATE;
 135.290 +							listenerState=IDLESTATE;
 135.291 +							connectionState=HELLO;
 135.292 +							helloState=SENDSYN;
 135.293 +							listenerTimer->stop();
 135.294 +							initiatorTimer->stop();
 135.295 +							helloTimer->start(HELLO_TIMER);
 135.296 +							
 135.297 +			
 135.298 +		break;			
 135.299 +		case WAITFORRIB:	//log->addLog(connectionId,(QString)"Listener:RIB timeout...");
 135.300 +							//we reset the link
 135.301 +							initiatorState=IDLESTATE;
 135.302 +							listenerState=IDLESTATE;
 135.303 +							connectionState=HELLO;
 135.304 +							helloState=SENDSYN;
 135.305 +							listenerTimer->stop();
 135.306 +							initiatorTimer->stop();
 135.307 +							helloTimer->start(HELLO_TIMER);
 135.308 +			
 135.309 +		break;
 135.310 +		case WAITFORBOFFER:	//log->addLog(connectionId,(QString)"Listener:BOFFER timeout...");
 135.311 +							//we reset the link
 135.312 +							initiatorState=IDLESTATE;
 135.313 +							listenerState=IDLESTATE;
 135.314 +							connectionState=HELLO;
 135.315 +							helloState=SENDSYN;
 135.316 +							listenerTimer->stop();
 135.317 +							initiatorTimer->stop();
 135.318 +							helloTimer->start(HELLO_TIMER);
 135.319 +			
 135.320 +		break;
 135.321 +		case WAITFORBREQUEST://log->addLog(connectionId,(QString)"Listener:BREQ Timeout...");
 135.322 +							//we reset the link
 135.323 +							initiatorState=IDLESTATE;
 135.324 +							listenerState=IDLESTATE;
 135.325 +							connectionState=HELLO;
 135.326 +							helloState=SENDSYN;
 135.327 +							listenerTimer->stop();
 135.328 +							initiatorTimer->stop();
 135.329 +							helloTimer->start(HELLO_TIMER);
 135.330 +			
 135.331 +		break;
 135.332 +		case WAITFORBUNDLES://log->addLog(connectionId,(QString)"Listener:BUNDLES Timeout...");
 135.333 +							//we reset the link
 135.334 +							initiatorState=IDLESTATE;
 135.335 +							listenerState=IDLESTATE;
 135.336 +							connectionState=HELLO;
 135.337 +							helloState=SENDSYN;
 135.338 +							listenerTimer->stop();
 135.339 +							initiatorTimer->stop();
 135.340 +							helloTimer->start(HELLO_TIMER);
 135.341 +							listenerState=RESETLINK;
 135.342 +			
 135.343 +		break;
 135.344 +		case IDLESTATE:		//log->addLog(connectionId,(QString)"Listener:Idle state...");
 135.345 +							//we reset the link
 135.346 +							initiatorState=IDLESTATE;
 135.347 +							listenerState=IDLESTATE;
 135.348 +							connectionState=HELLO;
 135.349 +							helloState=SENDSYN;
 135.350 +							listenerTimer->stop();
 135.351 +							initiatorTimer->stop();
 135.352 +							helloTimer->start(HELLO_TIMER);
 135.353 +														
 135.354 +							
 135.355 +		break;
 135.356 +		case RESETLINK:		//log->addLog(connectionId,(QString)"Listener:Link problem...");
 135.357 +							//we reset the link
 135.358 +							initiatorState=IDLESTATE;
 135.359 +							listenerState=IDLESTATE;
 135.360 +							connectionState=HELLO;
 135.361 +							helloState=SENDSYN;
 135.362 +							listenerTimer->stop();
 135.363 +							initiatorTimer->stop();
 135.364 +							helloTimer->start(HELLO_TIMER);
 135.365 +			
 135.366 +		break;
 135.367 +		default	://log->addLog(connectionId,(QString)"Hm Listener Timeout default...");		
 135.368 +		break;
 135.369 +		}	
 135.370 +}
 135.371 +
 135.372 +
 135.373 +void Connection::initiatorProcedure()
 135.374 +{
 135.375 +	initiatorTimer->stop();
 135.376 +	QList<Node> nodeList;
 135.377 +	QList<Bundle> bundleList;
 135.378 +	switch(initiatorState)
 135.379 +		{
 135.380 +		case SENDDICTIONARY://log->addLog(connectionId,(QString)"Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER");
 135.381 +							nodeList = connectionNodeManager->getNodeList();
 135.382 +							initiatorState=SENDRIB;
 135.383 +							emit sendDictionary(nodeList);
 135.384 +							nodeList = connectionNodeManager->getRIBNodeList();//We have to use only nodes with RIB
 135.385 +							initiatorState=SENDBOFFER;
 135.386 +							emit sendRIB(nodeList);
 135.387 +							bundleList = connectionBundleManager->getBundleOffer(connectionNodeManager->getNodeList(),lastReceivedRIB,encounterNodeId);
 135.388 +							emit sendBundleOffer(bundleList);
 135.389 +							initiatorState=WAITBREQ;
 135.390 +							initiatorTimer->start(INITIATOR_TIMER);
 135.391 +		
 135.392 +		break;
 135.393 +		case WAITFORBREQUEST://log->addLog(connectionId,(QString)"Initiator:BREQ Timeout");
 135.394 +							//we reset the link
 135.395 +							initiatorState=IDLESTATE;
 135.396 +							listenerState=IDLESTATE;
 135.397 +							connectionState=HELLO;
 135.398 +							helloState=SENDSYN;
 135.399 +							listenerTimer->stop();
 135.400 +							initiatorTimer->stop();
 135.401 +							helloTimer->start(HELLO_TIMER);
 135.402 +			
 135.403 +		break;
 135.404 +		case IDLESTATE:		//log->addLog(connectionId,(QString)"Initiator:Idle state...");
 135.405 +							//we reset the link
 135.406 +							initiatorState=IDLESTATE;
 135.407 +							listenerState=IDLESTATE;
 135.408 +							connectionState=HELLO;
 135.409 +							helloState=SENDSYN;
 135.410 +							listenerTimer->stop();
 135.411 +							initiatorTimer->stop();
 135.412 +							helloTimer->start(HELLO_TIMER);
 135.413 +
 135.414 +			
 135.415 +		break;
 135.416 +		case RESETLINK:		//log->addLog(connectionId,(QString)"Initiator:Link problem...");
 135.417 +							//we reset the link
 135.418 +							initiatorState=IDLESTATE;
 135.419 +							listenerState=IDLESTATE;
 135.420 +							connectionState=HELLO;
 135.421 +							helloState=SENDSYN;
 135.422 +							listenerTimer->stop();
 135.423 +							initiatorTimer->stop();
 135.424 +							helloTimer->start(HELLO_TIMER);
 135.425 +			
 135.426 +		break;
 135.427 +		default	://log->addLog(connectionId,(QString)"Hm default timeout initiator...");		
 135.428 +		break;
 135.429 +		}	
 135.430 + }
 135.431 +
 135.432 +
 135.433 +void Connection::receiveBundleOffer(QList<Bundle> receivedList) //LISTENER
 135.434 +{
 135.435 +	listenerTimer->stop();
 135.436 +	bundleRequestList=connectionBundleManager->prepareBundelRequest(receivedList);
 135.437 +	//log->addLog(connectionId,(QString)"Listener:Received Bundle Offer");
 135.438 +//	we send only one bundle request
 135.439 +	if(bundleRequestList.size()>0)
 135.440 +	{
 135.441 +		//log->addLog(connectionId,(QString)"Listener:Sending Full bundle request...");
 135.442 +		QList<Bundle> dummyList;
 135.443 +		dummyList.append(bundleRequestList.first());
 135.444 +		bundleRequestList.removeFirst();
 135.445 +		listenerState=WAITFORBUNDLES;
 135.446 +		listenerTimer->start(LISTENER_TIMER);
 135.447 +		emit sendBundleRequest(dummyList);
 135.448 +
 135.449 +	}
 135.450 +	else 
 135.451 +	{
 135.452 +		//log->addLog(connectionId,(QString)"Listener:Sending Empty bundle request...");
 135.453 +		if(initiatorState==IDLESTATE)
 135.454 +		{	
 135.455 +			//we reset the link
 135.456 +			initiatorState=IDLESTATE;
 135.457 +			listenerState=IDLESTATE;
 135.458 +			listenerTimer->stop();
 135.459 +			initiatorTimer->stop();
 135.460 +
 135.461 +			if(helloState==MASTER)
 135.462 +			{
 135.463 +				helloState=SENDSYN;
 135.464 +				helloTimer->start(NOW);
 135.465 +				//log->addLog(connectionId,(QString)"Listener(receiveBOffer):We can restart connection...(MASTER)");
 135.466 +
 135.467 +			}
 135.468 +			else
 135.469 +			{
 135.470 +				helloState=SENDSYN;
 135.471 +				helloTimer->start(HELLO_TIMER);
 135.472 +				//log->addLog(connectionId,(QString)"Listener(receiveBOffer):We can not restart connection(SLAVE)");
 135.473 +
 135.474 +			}
 135.475 +		}
 135.476 +		else
 135.477 +		{
 135.478 +			//log->addLog(connectionId,(QString)"Listener(receiveBOffer):But we can not restart connection...");
 135.479 +			listenerState=IDLESTATE;
 135.480 +			listenerTimer->stop();
 135.481 +		}
 135.482 +		emit sendBundleRequest(bundleRequestList);
 135.483 +		
 135.484 +	}
 135.485 +
 135.486 +}
 135.487 +
 135.488 +void Connection::receiveBundles(QList<Bundle> receivedList) //LISTENER
 135.489 +{
 135.490 +	//log->addLog(connectionId,(QString)"Listener:Received Bundles...");
 135.491 +	listenerTimer->stop();
 135.492 +	connectionBundleManager->addBundleList(receivedList);
 135.493 +//	we send only one bundle request
 135.494 +	if(bundleRequestList.size()>0)
 135.495 +
 135.496 +	{
 135.497 +		//log->addLog(connectionId,(QString)"Listener:Requesting Bundles...");
 135.498 +		QList<Bundle> dummyList;
 135.499 +		dummyList.append(bundleRequestList.first());
 135.500 +		bundleRequestList.removeFirst();
 135.501 +		listenerState=WAITFORBUNDLES;
 135.502 +		listenerTimer->start(LISTENER_TIMER);
 135.503 +		emit sendBundleRequest(dummyList);
 135.504 +
 135.505 +	}
 135.506 +	else //we finish comunication by sending empty bundle request
 135.507 +	{
 135.508 +		//log->addLog(connectionId,(QString)"Listener:No more needed Bundles...");
 135.509 +		if(initiatorState==IDLESTATE)
 135.510 +		{	
 135.511 +			//we reset the link
 135.512 +			initiatorState=IDLESTATE;
 135.513 +			listenerState=IDLESTATE;
 135.514 +			listenerTimer->stop();
 135.515 +			initiatorTimer->stop();
 135.516 +
 135.517 +			if(helloState==MASTER)
 135.518 +			{
 135.519 +				helloState=SENDSYN;
 135.520 +				helloTimer->start(HELLOT);
 135.521 +				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can restart connection...(MASTER)");
 135.522 +
 135.523 +			}
 135.524 +			else
 135.525 +			{
 135.526 +				//helloState=SENDSYN;
 135.527 +				//helloTimer->start(HELLO_TIMER);
 135.528 +				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can not restart connection(SLAVE)");
 135.529 +
 135.530 +			}
 135.531 +		}
 135.532 +		else
 135.533 +		{
 135.534 +			//log->addLog(connectionId,(QString)"Listener(receiveBundles):But we can not restart connection...");
 135.535 +			listenerState=IDLESTATE;
 135.536 +			listenerTimer->stop();
 135.537 +		
 135.538 +		}
 135.539 +		emit sendBundleRequest(bundleRequestList);
 135.540 +		
 135.541 +	}
 135.542 +		
 135.543 +}
 135.544 +
 135.545 +void Connection::receiveBundleRequest(QList<Bundle> receivedList) //INITIATOR
 135.546 +{
 135.547 +	initiatorTimer->stop();
 135.548 +	QList<Bundle> bundleList;
 135.549 +	if(receivedList.size()>0)
 135.550 +	{
 135.551 +		bundleList=connectionBundleManager->prepareBundels(receivedList);
 135.552 +		initiatorState=WAITBREQ;
 135.553 +		//log->addLog(connectionId,(QString)"Initiator:Sending bundles");
 135.554 +		initiatorTimer->start(INITIATOR_TIMER);
 135.555 +		emit sendBundles(bundleList);
 135.556 +	}
 135.557 +	else
 135.558 +	{
 135.559 +		//log->addLog(connectionId,(QString)"Initiator:No more requested bundles");
 135.560 +		if(listenerState==IDLESTATE)
 135.561 +		{	
 135.562 +			//we reset the link
 135.563 +			if(helloState==MASTER)
 135.564 +			{
 135.565 +				helloState=SENDSYN;
 135.566 +				helloTimer->start(HELLOT);
 135.567 +				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can restart connection...");
 135.568 +
 135.569 +			}
 135.570 +			else
 135.571 +			{
 135.572 +				helloState=SENDSYN;
 135.573 +				helloTimer->start(HELLO_TIMER);
 135.574 +				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can not restart connection(SLAVE)");
 135.575 +
 135.576 +			}
 135.577 +		}
 135.578 +		else
 135.579 +		{
 135.580 +			//log->addLog(connectionId,(QString)"Initiator:But we can not restart connection...");
 135.581 +			initiatorState=IDLESTATE;
 135.582 +			initiatorTimer->stop();
 135.583 +		}
 135.584 +	}
 135.585 +	
 135.586 +}
 135.587 +
 135.588 +
 135.589 +void Connection::receiveDictionary(QList<Node> receivedList)
 135.590 +{
 135.591 +	listenerTimer->stop();
 135.592 +	connectionNodeManager->addDictionary(connectionNodeId,receivedList);
 135.593 +	listenerState=WAITFORRIB;
 135.594 +	//log->addLog(connectionId,(QString)"Listener:Received dictionary");
 135.595 +	listenerTimer->start(LISTENER_TIMER);
 135.596 +
 135.597 +}
 135.598 +
 135.599 +void Connection::receiveRIB(QList<Node> receivedList)
 135.600 +{
 135.601 +	listenerTimer->stop();
 135.602 +	connectionNodeManager->addRIB(receivedList,encounterNodeId);
 135.603 +	listenerState=WAITFORBOFFER;
 135.604 +	//Needed for Routing
 135.605 +	lastReceivedRIB=receivedList;
 135.606 +	//log->addLog(connectionId,(QString)"Listener:Received RIB");
 135.607 +	listenerTimer->start(LISTENER_TIMER);
 135.608 +}
 135.609 +
 135.610 +
 135.611 +
 135.612 +void Connection::receiveDatagram(DataPacket dataPacket)
 135.613 +{
 135.614 +	////log->addLog(connectionId,(QString)"Received datagram...");
 135.615 +	emit forwardSignalDatagram(dataPacket.data);
 135.616 +}
 135.617 +
 135.618 +
 135.619 +void Connection::forwardSlotDatagram(QByteArray datagram)
 135.620 +{
 135.621 +	DataPacket dataPacket;
 135.622 +	////log->addLog(connectionId,(QString)"Sended datagram...");
 135.623 +	dataPacket.data = datagram;
 135.624 +	dataPacket.id = connectionId;
 135.625 +	emit sendDataPacket(dataPacket);
 135.626 +}
   136.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   136.2 +++ b/x86/ARM/connection.h	Thu Jun 26 17:39:40 2008 +0100
   136.3 @@ -0,0 +1,72 @@
   136.4 +#ifndef CONNECTION_H
   136.5 +#define CONNECTION_H
   136.6 +#include <QtCore>
   136.7 +#include <hello.h>
   136.8 +#include <tlv.h>
   136.9 +#include <nodeManager.h>
  136.10 +#include <bundleManager.h>
  136.11 +#include <dataPacket.h>
  136.12 +
  136.13 +
  136.14 +class Connection: public QObject
  136.15 +{
  136.16 +	Q_OBJECT 
  136.17 +	public:
  136.18 +		int HELLO_TIMER;
  136.19 +		int INITIATOR_TIMER;
  136.20 +		int LISTENER_TIMER;
  136.21 +		int HELLOT;
  136.22 +		int BROADCAST;
  136.23 +		bool update;
  136.24 +		int continiusUpdate;
  136.25 +
  136.26 +		int connectionState;
  136.27 +		int helloState;
  136.28 +		int initiatorState;
  136.29 +		int listenerState;
  136.30 +		int encounterNodeId;
  136.31 +		int encounterNodeType;
  136.32 +		QString encounterNodeName;
  136.33 +		QTimer *helloTimer; 		
  136.34 +		QTimer *initiatorTimer; 		
  136.35 +		QTimer *listenerTimer; 		
  136.36 +		//TLV
  136.37 +		TLV *TLVTranslator; 
  136.38 +		Connection(int,int ,QString ,NodeManager* ,BundleManager* ,QObject *parent = 0);
  136.39 +		~Connection(void);
  136.40 +		QString connectionNodeName;
  136.41 +		QList<Node> lastReceivedRIB;
  136.42 +		QList<Bundle> bundleRequestList;
  136.43 +		int connectionId;
  136.44 +		int connectionNodeId;
  136.45 +		NodeManager* connectionNodeManager;
  136.46 +		BundleManager* connectionBundleManager;
  136.47 +//		Listner *listener;
  136.48 +		
  136.49 +
  136.50 +	signals:
  136.51 +		void sendDataPacket(DataPacket);
  136.52 +		
  136.53 +		void sendHello(Hello);
  136.54 +		void sendDictionary(QList<Node>);
  136.55 +		void sendRIB(QList<Node>);
  136.56 +		void forwardSignalDatagram(QByteArray);
  136.57 +		void sendBundleOffer(QList<Bundle>);
  136.58 +		void sendBundleRequest(QList<Bundle>);
  136.59 +		void sendBundles(QList<Bundle>);
  136.60 +	public slots:
  136.61 +		void receiveDatagram(DataPacket);
  136.62 +		void forwardSlotDatagram(QByteArray);
  136.63 +		void helloProcedure();
  136.64 +		void listenerProcedure();
  136.65 +		void initiatorProcedure();
  136.66 +		void receiveHello(Hello);
  136.67 +		void receiveDictionary(QList<Node>);
  136.68 +		void receiveRIB(QList<Node>);
  136.69 +		void receiveBundleOffer(QList<Bundle>);
  136.70 +		void receiveBundleRequest(QList<Bundle>);
  136.71 +		void receiveBundles(QList<Bundle>);
  136.72 +
  136.73 +
  136.74 +};
  136.75 +#endif
  136.76 \ No newline at end of file
   137.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   137.2 +++ b/x86/ARM/dataPacket.cpp	Thu Jun 26 17:39:40 2008 +0100
   137.3 @@ -0,0 +1,21 @@
   137.4 +#include <QtCore>
   137.5 +#include <dataPacket.h>
   137.6 +
   137.7 +DataPacket::DataPacket(QObject *parent)
   137.8 +{
   137.9 +	id=0;
  137.10 +	data.clear();
  137.11 +}
  137.12 +
  137.13 +DataPacket& DataPacket::operator=(const DataPacket& other)
  137.14 +{
  137.15 + id = other.id;
  137.16 + data = other.data;
  137.17 + return *this;
  137.18 +}
  137.19 +
  137.20 +DataPacket::DataPacket(const DataPacket& other)
  137.21 +{
  137.22 + id = other.id;
  137.23 + data = other.data;
  137.24 +}	
   138.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   138.2 +++ b/x86/ARM/dataPacket.h	Thu Jun 26 17:39:40 2008 +0100
   138.3 @@ -0,0 +1,18 @@
   138.4 +#ifndef DATAPACKET_H
   138.5 +#define DATAPACKET_H
   138.6 +#include <QtCore>
   138.7 +
   138.8 +class DataPacket: public QObject
   138.9 +{
  138.10 +
  138.11 +	Q_OBJECT 
  138.12 +	public:
  138.13 +	QByteArray data;
  138.14 +	int id;
  138.15 +	DataPacket(QObject *parent= 0);
  138.16 +	DataPacket(const DataPacket& other);
  138.17 +	DataPacket& operator=(const DataPacket& other);
  138.18 +
  138.19 +};
  138.20 +
  138.21 +#endif
   139.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   139.2 +++ b/x86/ARM/debugWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   139.3 @@ -0,0 +1,271 @@
   139.4 +#include <debugWidget.h>
   139.5 +#include <QtGui>
   139.6 +#include <QtCore>
   139.7 +#include <readFile.h>
   139.8 +
   139.9 +
  139.10 +#define DTN 500
  139.11 +
  139.12 +DebugWidget::DebugWidget(NodeManager *nodeMng,QWidget *parent)
  139.13 +		: QWidget(parent)
  139.14 +{
  139.15 +	setFixedSize(1000,700);
  139.16 +	ReadFile conf;
  139.17 +	QString mainText = "Prophet Window - ";
  139.18 +	mainText.append(conf.getNodeName());
  139.19 +	setWindowTitle(mainText);
  139.20 +	
  139.21 +	//BundleTable
  139.22 +	table = new QTableWidget(200, 8, this);
  139.23 +    QStringList horizontalLabels;
  139.24 +    horizontalLabels << "ID" << "TimeStamp" << "SrcStr" << "DestStr"<< "Source" << "Dest" << "Data" << "Options";
  139.25 +	table->setHorizontalHeaderLabels(horizontalLabels); 
  139.26 +
  139.27 +	//Message Widget
  139.28 +	message = new MsgWidget(nodeMng);
  139.29 +	connect(message, SIGNAL(sendBundle(Bundle)), this, SLOT(forwardAppBundle(Bundle)));
  139.30 +
  139.31 +
  139.32 +	//NodeTable
  139.33 +	nodeTable = new QTableWidget(40, 4, this);
  139.34 +    QStringList horizontalNodeLabels;
  139.35 +    horizontalNodeLabels << "ID" << "Name" << "Probability" << "RIB Flag";
  139.36 +	nodeTable->setHorizontalHeaderLabels(horizontalNodeLabels); 
  139.37 +
  139.38 +		//ConnectionsTable
  139.39 +	conTable = new QTableWidget(40, 5, this);
  139.40 +    QStringList horizontalConLabels;
  139.41 +     horizontalConLabels << "ID" << "IP" << "Alive" << "Socket"<< "Con";
  139.42 +	conTable->setHorizontalHeaderLabels(horizontalConLabels); 
  139.43 +
  139.44 +	//Info tag
  139.45 +	info = new QListWidget;
  139.46 +	QString itemText;
  139.47 +	itemText.append("PRoPHET Version: 1.9");
  139.48 +    QListWidgetItem *newItem = new QListWidgetItem;
  139.49 +    newItem->setText(itemText);
  139.50 +    info->insertItem(0, newItem);
  139.51 +	itemText.clear();
  139.52 +
  139.53 +
  139.54 +   	itemText.append("Node name: ");
  139.55 +  	itemText.append(conf.getNodeName());
  139.56 + 	newItem = new QListWidgetItem;
  139.57 +	newItem->setText(itemText);
  139.58 +	info->insertItem(1, newItem);
  139.59 +	itemText.clear();
  139.60 +
  139.61 +   	itemText.append("Node ID: ");
  139.62 +  	itemText.append(QString("%1").arg(conf.getNodeId()));
  139.63 + 	newItem = new QListWidgetItem;
  139.64 +	newItem->setText(itemText);
  139.65 +	info->insertItem(2, newItem);
  139.66 +	itemText.clear();
  139.67 +
  139.68 +   	itemText.append("Node IP: ");
  139.69 +	QHostAddress ip = conf.getNodeIp();
  139.70 +	itemText.append(ip.toString());
  139.71 + 	newItem = new QListWidgetItem;
  139.72 +	newItem->setText(itemText);
  139.73 +	info->insertItem(3, newItem);
  139.74 +	itemText.clear();
  139.75 +
  139.76 +	itemText.append("Storage capacity (bytes): ");
  139.77 +  	itemText.append(QString("%1").arg(conf.getStorageSize()));
  139.78 + 	newItem = new QListWidgetItem;
  139.79 +	newItem->setText(itemText);
  139.80 +	info->insertItem(4, newItem);
  139.81 +	itemText.clear();
  139.82 +
  139.83 +  
  139.84 +	//DTN Interface
  139.85 +	dtnInfo = new QTextEdit;
  139.86 +	dtnInfo->setReadOnly(true);
  139.87 +	dtnEntery = 0;
  139.88 +
  139.89 +	//Message Group
  139.90 +//	QGroupBox *listMessage = new QGroupBox("Message GUI");
  139.91 + //   QPushButton *refreshBundle= new QPushButton("Refresh", this);
  139.92 +//	QGridLayout *messageGroup = new QGridLayout;
  139.93 +//	messageGroup->addWidget(table, 0, 0);
  139.94 +//	bundleGroup->addWidget(refreshBundle, 1, 0);
  139.95 +//    listMessage->setLayout(messageGroup);
  139.96 +
  139.97 +
  139.98 +	//Bundle List group
  139.99 +//	QGroupBox *listBundle = new QGroupBox("Bundle List");
 139.100 + //   QPushButton *refreshBundle= new QPushButton("Refresh", this);
 139.101 +//	QGridLayout *bundleGroup = new QGridLayout;
 139.102 +//	bundleGroup->addWidget(table, 0, 0);
 139.103 +//	bundleGroup->addWidget(refreshBundle, 1, 0);
 139.104 +  //  listBundle->setLayout(bundleGroup);
 139.105 +
 139.106 +	//Node  List group
 139.107 +//	QGroupBox *listNode = new QGroupBox("Node List");
 139.108 +//    QPushButton *refreshNode= new QPushButton("Refresh", this);
 139.109 +//	QGridLayout *nodeGroup = new QGridLayout;
 139.110 +//	nodeGroup->addWidget(nodeTable, 0, 0+);
 139.111 +//	nodeGroup->addWidget(refreshNode, 1, 0);
 139.112 + //   listNode->setLayout(nodeGroup);
 139.113 + 
 139.114 +	//Tab Widget
 139.115 +	tabWidget = new QTabWidget;
 139.116 +	tabWidget->addTab(conTable, tr("Connections"));
 139.117 +    tabWidget->addTab(message, tr("NSIM"));
 139.118 +	tabWidget->addTab(info,tr("Node info"));
 139.119 +	tabWidget->addTab(dtnInfo,tr("DTN Interface"));
 139.120 +    tabWidget->addTab(table, tr("Bundle list"));
 139.121 +    tabWidget->addTab(nodeTable, tr("Node list"));
 139.122 +
 139.123 +	
 139.124 +	//Define final layout
 139.125 +	QVBoxLayout *layout = new QVBoxLayout;
 139.126 +    layout->addWidget(tabWidget);    
 139.127 +//	layout->addWidget(listBundle);
 139.128 +//	layout->addWidget(listMessage);
 139.129 +    setLayout(layout);
 139.130 +
 139.131 +}
 139.132 +
 139.133 +void DebugWidget::getBundleList(QList<Bundle> list)
 139.134 +{
 139.135 +	Bundle newBundle;
 139.136 +	table->clear();
 139.137 +	QStringList horizontalLabels;
 139.138 +    horizontalLabels << "ID" << "TimeStamp" << "SrcStr" << "DestStr"<< "Source" << "Dest" << "Data" << "Options";
 139.139 +	table->setHorizontalHeaderLabels(horizontalLabels); 
 139.140 +   for (int i = 0; i < list.size(); ++i) 
 139.141 +	{
 139.142 +		newBundle=list.at(i);
 139.143 +		QString text = QString("%1").arg((int)newBundle.getId());
 139.144 +		QTableWidgetItem *newItem = new QTableWidgetItem(text);
 139.145 +		table->setItem(i, 0, newItem);
 139.146 +	
 139.147 +		QDateTime time= newBundle.getTime();
 139.148 +		text = time.toString("MM/dd/yyyy hh:mm:ss");
 139.149 +		newItem = new QTableWidgetItem(text);
 139.150 +		table->setItem(i, 1, newItem);
 139.151 +
 139.152 +	
 139.153 +		newItem = new QTableWidgetItem((QString)newBundle.sourceString);
 139.154 +		table->setItem(i, 2, newItem);
 139.155 +		
 139.156 +		newItem = new QTableWidgetItem((QString)newBundle.destinationString);
 139.157 +		table->setItem(i, 3, newItem);
 139.158 +		
 139.159 +		text = QString("%1").arg((int)newBundle.getSourceId());
 139.160 +		newItem = new QTableWidgetItem(text);
 139.161 +		table->setItem(i, 4, newItem);
 139.162 +
 139.163 +		text = QString("%1").arg((int)newBundle.getDestinationId());
 139.164 +		newItem = new QTableWidgetItem(text);
 139.165 +		table->setItem(i, 5, newItem);
 139.166 +	
 139.167 +		newItem = new QTableWidgetItem((QString)newBundle.getData());
 139.168 +		table->setItem(i, 6, newItem);
 139.169 +
 139.170 +		text = QString("%1").arg((int)newBundle.getOptions());
 139.171 +		newItem = new QTableWidgetItem(text);
 139.172 +		table->setItem(i, 7, newItem);
 139.173 +
 139.174 +	}
 139.175 +}
 139.176 +
 139.177 +void DebugWidget::getNodeList(QList<Node> list)
 139.178 +{
 139.179 +	Node tempNode;
 139.180 +	nodeTable->clear();
 139.181 +    QStringList horizontalNodeLabels;
 139.182 +    horizontalNodeLabels << "ID" << "Name" << "Probability" << "RIB Flag";
 139.183 +	nodeTable->setHorizontalHeaderLabels(horizontalNodeLabels); 
 139.184 +    for (int i = 0; i < list.size(); ++i) 
 139.185 +	{
 139.186 +		tempNode=list.at(i);
 139.187 +
 139.188 +		QString text = QString("%1").arg((int)tempNode.nodeId);
 139.189 +		QTableWidgetItem *newItem = new QTableWidgetItem(text);
 139.190 +		nodeTable->setItem(i, 0, newItem);
 139.191 +
 139.192 +		text = tempNode.getName();
 139.193 +		newItem = new QTableWidgetItem(text);
 139.194 +		nodeTable->setItem(i, 1, newItem);
 139.195 +
 139.196 +		text = QString("%1").arg((float)tempNode.probability);
 139.197 +		newItem = new QTableWidgetItem(text);
 139.198 +		nodeTable->setItem(i, 2, newItem);
 139.199 +
 139.200 +		text = QString("%1").arg((int)tempNode.flag);
 139.201 +		newItem = new QTableWidgetItem(text);
 139.202 +		nodeTable->setItem(i, 3, newItem);
 139.203 +		//table->resizeRowToContents(i);
 139.204 +	}
 139.205 +}
 139.206 +
 139.207 +void DebugWidget::getConnectionList(QList<ConnectionInfo> list)
 139.208 +{
 139.209 +	ConnectionInfo tempNode;
 139.210 +	conTable->clear();
 139.211 +     QStringList horizontalConLabels;
 139.212 +    horizontalConLabels << "ID" << "IP" << "Alive" << "State"<< "Error";
 139.213 +	conTable->setHorizontalHeaderLabels(horizontalConLabels); 
 139.214 +   for (int i = 0; i < list.size(); ++i) 
 139.215 +	{
 139.216 +		tempNode=list.at(i);
 139.217 +
 139.218 +		QString text = QString("%1").arg((int)tempNode.id);
 139.219 +		QTableWidgetItem *newItem = new QTableWidgetItem(text);
 139.220 +		conTable->setItem(i, 0, newItem);
 139.221 +
 139.222 +		text = tempNode.ip.toString();
 139.223 +		newItem = new QTableWidgetItem(text);
 139.224 +		conTable->setItem(i, 1, newItem);
 139.225 +
 139.226 +		text = QString("%1").arg((int)tempNode.alive);
 139.227 +		newItem = new QTableWidgetItem(text);
 139.228 +		conTable->setItem(i, 2, newItem);
 139.229 +		
 139.230 +		int x = tempNode.tcpSocket->state();
 139.231 +		text = QString("%1").arg((int)x);
 139.232 +		newItem = new QTableWidgetItem(text);
 139.233 +		conTable->setItem(i, 3, newItem);
 139.234 +		 x = tempNode.tcpSocket->error();
 139.235 +		text = QString("%1").arg((int)x);
 139.236 +		newItem = new QTableWidgetItem(text);
 139.237 +		conTable->setItem(i, 4, newItem);
 139.238 +		//table->resizeRowToContents(i);
 139.239 +	}
 139.240 +
 139.241 + }
 139.242 +
 139.243 +void DebugWidget::getStorageSize(int size)
 139.244 +{
 139.245 +/*	QString itemText;
 139.246 +	itemText.append("Usede storage size: ");
 139.247 +	itemText.append(QString("%1").arg(size));
 139.248 +	itemText.append("       ");
 139.249 +    QListWidgetItem *newItem = new QListWidgetItem;
 139.250 +    newItem->setText(itemText);
 139.251 +    info->insertItem(5, newItem);
 139.252 +	info->setCurrentRow ( 5 );*/
 139.253 +}
 139.254 +
 139.255 +void DebugWidget::getLog(QString log)
 139.256 +{
 139.257 +	if(dtnEntery>DTN)
 139.258 +	{
 139.259 +		dtnInfo->clear();
 139.260 +		dtnEntery=0;
 139.261 +	}
 139.262 +	dtnInfo->append(log);
 139.263 +	dtnEntery++;
 139.264 +}
 139.265 +
 139.266 +void DebugWidget::forwardAppBundle(Bundle newBundle)
 139.267 +{
 139.268 +	emit sendAppBundle(newBundle);
 139.269 +}
 139.270 +
 139.271 +void DebugWidget::getAppBundle(Bundle newBundle)
 139.272 +{
 139.273 +	message->getBundle(newBundle);
 139.274 +}
   140.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   140.2 +++ b/x86/ARM/debugWidget.h	Thu Jun 26 17:39:40 2008 +0100
   140.3 @@ -0,0 +1,41 @@
   140.4 +#ifndef DEBUGWIDGET_H
   140.5 +#define DEBUGWIDGET_H
   140.6 +
   140.7 +
   140.8 +#include <QtGui>
   140.9 +#include <bundle.h>
  140.10 +#include <node.h>
  140.11 +#include <msgWidget.h>
  140.12 +#include <neighbourAwareness.h>
  140.13 +
  140.14 +class DebugWidget : public QWidget
  140.15 +{
  140.16 +	Q_OBJECT 
  140.17 +	
  140.18 +
  140.19 +	public:
  140.20 +		DebugWidget(NodeManager*,QWidget *parent = 0);
  140.21 +		QTableWidget *table;
  140.22 +		QTableWidget *nodeTable;
  140.23 +		QTableWidget *conTable;
  140.24 +		MsgWidget *message;
  140.25 +		QTabWidget *tabWidget;
  140.26 +		QListWidget *info;
  140.27 +		QTextEdit *dtnInfo;
  140.28 +		int dtnEntery;
  140.29 +	 signals:
  140.30 +		void sendAppBundle(Bundle);
  140.31 +
  140.32 +	public slots:
  140.33 +	void getLog(QString);
  140.34 +	void getStorageSize(int);
  140.35 +	void getConnectionList(QList<ConnectionInfo> list);
  140.36 +	void getBundleList(QList<Bundle>);
  140.37 +	void forwardAppBundle(Bundle);
  140.38 +	void getAppBundle(Bundle);
  140.39 +	void getNodeList(QList<Node>);
  140.40 +};
  140.41 +
  140.42 +#endif
  140.43 +
  140.44 +
   141.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   141.2 +++ b/x86/ARM/hello.cpp	Thu Jun 26 17:39:40 2008 +0100
   141.3 @@ -0,0 +1,65 @@
   141.4 +#include <QtCore>
   141.5 +#include <hello.h>
   141.6 +
   141.7 +Hello::Hello(QObject *parent)
   141.8 +{
   141.9 +	reserved=0;
  141.10 +	HFunction=0;
  141.11 +	timer=0;
  141.12 +	senderId=0;
  141.13 +	senderType=0;
  141.14 +	senderName.clear();
  141.15 +}
  141.16 +
  141.17 +
  141.18 +Hello& Hello::operator=(const Hello& other)
  141.19 +{
  141.20 + reserved = other.reserved;
  141.21 + HFunction = other.HFunction;
  141.22 + timer = other.timer;
  141.23 + senderName = other.senderName;
  141.24 + senderId = other.senderId;
  141.25 + senderType = other.senderType;
  141.26 + return *this;
  141.27 +}
  141.28 +
  141.29 +Hello::Hello(const Hello& other)
  141.30 +{
  141.31 + reserved = other.reserved;
  141.32 + HFunction = other.HFunction;
  141.33 + timer = other.timer;
  141.34 + senderName = other.senderName;
  141.35 +  senderId = other.senderId;
  141.36 + senderType = other.senderType;
  141.37 +
  141.38 +}	
  141.39 +	
  141.40 +void Hello::setFunction(int function)
  141.41 +{
  141.42 +	HFunction=function;
  141.43 +}
  141.44 +
  141.45 +void Hello::setSenderName(QString name)
  141.46 +{
  141.47 +	senderName=name;
  141.48 +}
  141.49 +
  141.50 +int Hello::getFunction()
  141.51 +{
  141.52 +	return HFunction;
  141.53 +}
  141.54 +
  141.55 +QString Hello::getSenderName()
  141.56 +{
  141.57 +	return senderName;
  141.58 +}
  141.59 +
  141.60 +void Hello::setTimer(int t)
  141.61 +{
  141.62 +	timer=t;
  141.63 +}
  141.64 +
  141.65 +int Hello::getTimer()
  141.66 +{
  141.67 +	return timer;
  141.68 +}
  141.69 \ No newline at end of file
   142.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   142.2 +++ b/x86/ARM/hello.h	Thu Jun 26 17:39:40 2008 +0100
   142.3 @@ -0,0 +1,38 @@
   142.4 +#ifndef HELLO_H
   142.5 +#define HELLO_H
   142.6 +
   142.7 +#define SYN 1
   142.8 +#define SYNACK 2
   142.9 +#define ACK 3
  142.10 +#define RSTACK 4
  142.11 +
  142.12 +
  142.13 +
  142.14 +#include <QtCore>
  142.15 +
  142.16 +class Hello : public QObject
  142.17 +{
  142.18 +
  142.19 +Q_OBJECT 
  142.20 +	public:
  142.21 +	int reserved;
  142.22 +	int HFunction;
  142.23 +	int timer;
  142.24 +	int senderId;
  142.25 +	int senderType;
  142.26 +	QString senderName;
  142.27 +
  142.28 +	Hello(QObject *parent = 0);
  142.29 +	Hello(const Hello& other);
  142.30 +	Hello& operator=(const Hello& other);
  142.31 +
  142.32 +
  142.33 +	void setFunction(int);
  142.34 +	int getFunction(); 
  142.35 +	QString getSenderName();	
  142.36 +	void setSenderName(QString);
  142.37 +	void setTimer(int);
  142.38 +	int getTimer(); 
  142.39 +};
  142.40 +
  142.41 +#endif
  142.42 \ No newline at end of file
   143.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   143.2 +++ b/x86/ARM/main.cpp	Thu Jun 26 17:39:40 2008 +0100
   143.3 @@ -0,0 +1,38 @@
   143.4 +#include <QtCore>
   143.5 +#include <neighbourAwareness.h>
   143.6 +#include <messageFile.h>
   143.7 +#include <readFile.h>
   143.8 +
   143.9 +
  143.10 +//MessageFile* log;
  143.11 +using namespace std;
  143.12 +
  143.13 +
  143.14 +int main(int argc, char *argv[])
  143.15 +{
  143.16 +	QCoreApplication app(argc, argv); 
  143.17 +	ReadFile conf;
  143.18 +	//Prepare Log File
  143.19 +//	log = new MessageFile;
  143.20 +//	log->set("prophet.log", 1000000, 1);
  143.21 +//	log->addLog(0,(QString)"Starting Prophet!");
  143.22 +	//Create node manager
  143.23 +	NodeManager* mainNodeManager = new NodeManager();
  143.24 +	//Create bundle manager
  143.25 +	BundleManager* mainBundleMananger = new BundleManager(conf.getNodeId());
  143.26 +	//Create debug
  143.27 +	//DebugWidget* debugWidget = new DebugWidget;
  143.28 +	//debugWidget->show();
  143.29 +	//Connect Bundle manager, Node manager and Debug widget
  143.30 +	//debugWidget->connect(mainBundleMananger,SIGNAL(sendDebugBundleList(QList<Bundle>)),debugWidget,SLOT(getBundleList(QList<Bundle>)));
  143.31 +	//debugWidget->connect(mainBundleMananger,SIGNAL(sendAppBundle(Bundle)),debugWidget,SLOT(getAppBundle(Bundle)));
  143.32 +	//debugWidget->connect(debugWidget,SIGNAL(sendAppBundle(Bundle)),mainBundleMananger,SLOT(addBundle(Bundle)));
  143.33 +	//Connect Node manager and Debug widget
  143.34 +	//debugWidget->connect(mainNodeManager,SIGNAL(sendDebugNodeList(QList<Node>)),debugWidget,SLOT(getNodeList(QList<Node>)));
  143.35 +	//Neighbor Awarnes 	
  143.36 +	NeighAware* neighbourawareness = new NeighAware(mainBundleMananger,mainNodeManager);
  143.37 +
  143.38 +	app.exec();
  143.39 +	return 0;
  143.40 +
  143.41 +}
   144.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   144.2 +++ b/x86/ARM/main.h	Thu Jun 26 17:39:40 2008 +0100
   144.3 @@ -0,0 +1,2 @@
   144.4 +
   144.5 +
   145.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   145.2 +++ b/x86/ARM/messageFile.cpp	Thu Jun 26 17:39:40 2008 +0100
   145.3 @@ -0,0 +1,132 @@
   145.4 +#include <messageFile.h>
   145.5 +#include <readFile.h>
   145.6 +
   145.7 +#ifdef Q_WS_X11
   145.8 +#include <sys/types.h>
   145.9 +#include <sys/stat.h> 
  145.10 +#endif
  145.11 +
  145.12 +#include <QTextStream>
  145.13 +
  145.14 +void MessageFile::set(QString fileName, int fileSize, int fileNo)
  145.15 +{
  145.16 +	msgFileName = fileName;
  145.17 +	msgFileSize = fileSize;
  145.18 +	msgFileNo = fileNo;
  145.19 +	mutex = new QMutex;
  145.20 +	dt = new QDateTime;
  145.21 +	ReadFile conf;
  145.22 +	storagePath=conf.getLogPath();
  145.23 +	dir.setPath(storagePath);
  145.24 +
  145.25 +}
  145.26 +
  145.27 +
  145.28 +void MessageFile::saveMessage(QString& message)
  145.29 +{
  145.30 +	saveMessage(message, false);
  145.31 +}
  145.32 +
  145.33 +void MessageFile::saveMessage(QString& message, bool datetime)
  145.34 +{
  145.35 +	QString dateTime;
  145.36 +	if (datetime == true)
  145.37 +	{
  145.38 +		mutex->lock();
  145.39 +		(*dt) = dt->currentDateTime();
  145.40 +		dateTime = dt->toString("MM/dd/yyyy hh:mm:ss.zzz ");
  145.41 +		mutex->unlock();
  145.42 +	}
  145.43 +	dateTime += message;
  145.44 +	saveMessage(0, dateTime);
  145.45 +
  145.46 +}
  145.47 +
  145.48 +
  145.49 +void MessageFile::saveMessage(int type, QString& message)
  145.50 +{
  145.51 +//	qDebug(message);
  145.52 +	mutex->lock();
  145.53 +	int i = 0;
  145.54 +	bool exists;
  145.55 +	QFile* f;
  145.56 +	f = new QFile(dir.filePath(msgFileName));
  145.57 +	exists = f->exists();
  145.58 +	if (f->open(QIODevice::WriteOnly|QIODevice::Append) == true)
  145.59 +	{
  145.60 +		QTextStream stream(f);
  145.61 +		stream << message;
  145.62 +		stream << "\r\n";
  145.63 +		i = f->size();
  145.64 +//		qDebug(QString("MessageFile size: %1 %2\r\n").arg(i).arg(msgFileSize));
  145.65 +		f->close();
  145.66 +#ifdef Q_WS_X11
  145.67 +		if (exists == false)
  145.68 +			chmod(msgFileName.toAscii(), S_IROTH|S_IWOTH|S_IRGRP|S_IWGRP|S_IRUSR|S_IWUSR);
  145.69 +#endif
  145.70 +	}
  145.71 +	delete f;
  145.72 +	if (i > msgFileSize)
  145.73 +	{
  145.74 +		QDir dir;
  145.75 +		QString fileNameOld;
  145.76 +		QString fileNameNew;
  145.77 +		i = msgFileNo;
  145.78 +		while (i > 1)
  145.79 +		{
  145.80 +			fileNameOld = msgFileName;
  145.81 +			fileNameOld += QString(".%1").arg(i);
  145.82 +			dir.remove(fileNameOld);
  145.83 +			i--;
  145.84 +			fileNameNew = msgFileName;
  145.85 +			fileNameNew += QString(".%1").arg(i);
  145.86 +			dir.rename(fileNameNew, fileNameOld);
  145.87 +		}
  145.88 +		fileNameOld = msgFileName;
  145.89 +		fileNameOld += QString(".%1").arg(i);
  145.90 +		dir.remove(fileNameOld);
  145.91 +		i--;
  145.92 +		fileNameNew = msgFileName;
  145.93 +		dir.rename(fileNameNew, fileNameOld);
  145.94 +	}
  145.95 +	mutex->unlock();
  145.96 +}
  145.97 +
  145.98 +void MessageFile::loadList(QStringList& sl, unsigned int maxItemNo)
  145.99 +{
 145.100 +	mutex->lock();
 145.101 +	sl.clear();
 145.102 +	QString line;
 145.103 +	QFile* f;
 145.104 +	f = new QFile(msgFileName);
 145.105 +	if (f->open(QIODevice::ReadOnly) == true)
 145.106 +	{
 145.107 +		QTextStream stream(f);
 145.108 +		while ((!stream.atEnd()) && (maxItemNo > 0))
 145.109 +		{
 145.110 +			sl.prepend(stream.readLine());
 145.111 +			maxItemNo--;
 145.112 +		}
 145.113 +		f->close();
 145.114 +	}
 145.115 +	mutex->unlock();
 145.116 +}
 145.117 +
 145.118 +void MessageFile::addLog(int indet,QString message)
 145.119 +{
 145.120 +	QString dateTime;
 145.121 +	QString id;
 145.122 +	id.sprintf(" %03d>> ", indet);
 145.123 +	if (1)
 145.124 +	{
 145.125 +		mutex->lock();
 145.126 +		(*dt) = dt->currentDateTime();
 145.127 +		dateTime = dt->toString("MM/dd/yyyy hh:mm:ss.zzz ");
 145.128 +		mutex->unlock();
 145.129 +	}
 145.130 +	dateTime += id;
 145.131 +	dateTime += message;
 145.132 +	saveMessage(0, dateTime);
 145.133 +
 145.134 +}
 145.135 +
   146.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   146.2 +++ b/x86/ARM/messageFile.h	Thu Jun 26 17:39:40 2008 +0100
   146.3 @@ -0,0 +1,35 @@
   146.4 +#ifndef MESSAGEFILE_H
   146.5 +#define MESSAGEFILE_H
   146.6 +
   146.7 +#include <qobject.h>
   146.8 +#include <qfile.h>
   146.9 +#include <qdir.h>
  146.10 +#include <qmutex.h>
  146.11 +#include <qstringlist.h>
  146.12 +#include <qdatetime.h>
  146.13 +
  146.14 +class MessageFile : public QObject
  146.15 +{
  146.16 +	Q_OBJECT
  146.17 +
  146.18 +public:
  146.19 +	virtual void set(QString fileName, int fileSize, int fileNo);
  146.20 +	virtual void loadList(QStringList& sl, unsigned int maxItemNo = 0xFFFFFFFF);
  146.21 +	void MessageFile::addLog(int indet,QString message);
  146.22 +
  146.23 +public slots:
  146.24 +	virtual void saveMessage(int type, QString& message);
  146.25 +	virtual void saveMessage(QString& message);
  146.26 +	virtual void saveMessage(QString& message, bool datetime);
  146.27 +
  146.28 +protected:
  146.29 +	QString msgFileName;
  146.30 +	int msgFileSize;
  146.31 +	int msgFileNo;
  146.32 +	QMutex* mutex;
  146.33 +	QDateTime* dt;
  146.34 +	QString storagePath;
  146.35 +	QDir dir;
  146.36 +};
  146.37 +
  146.38 +#endif
   147.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   147.2 +++ b/x86/ARM/moc_bundle.cpp	Thu Jun 26 17:39:40 2008 +0100
   147.3 @@ -0,0 +1,60 @@
   147.4 +/****************************************************************************
   147.5 +** Meta object code from reading C++ file 'bundle.h'
   147.6 +**
   147.7 +** Created: Tue Aug 8 08:50:17 2006
   147.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.2)
   147.9 +**
  147.10 +** WARNING! All changes made in this file will be lost!
  147.11 +*****************************************************************************/
  147.12 +
  147.13 +#include "bundle.h"
  147.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  147.15 +#error "The header file 'bundle.h' doesn't include <QObject>."
  147.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  147.17 +#error "This file was generated using the moc from 4.1.2. It"
  147.18 +#error "cannot be used with the include files from this version of Qt."
  147.19 +#error "(The moc has changed too much.)"
  147.20 +#endif
  147.21 +
  147.22 +static const uint qt_meta_data_Bundle[] = {
  147.23 +
  147.24 + // content:
  147.25 +       1,       // revision
  147.26 +       0,       // classname
  147.27 +       0,    0, // classinfo
  147.28 +       0,    0, // methods
  147.29 +       0,    0, // properties
  147.30 +       0,    0, // enums/sets
  147.31 +
  147.32 +       0        // eod
  147.33 +};
  147.34 +
  147.35 +static const char qt_meta_stringdata_Bundle[] = {
  147.36 +    "Bundle\0"
  147.37 +};
  147.38 +
  147.39 +const QMetaObject Bundle::staticMetaObject = {
  147.40 +    { &QObject::staticMetaObject, qt_meta_stringdata_Bundle,
  147.41 +      qt_meta_data_Bundle, 0 }
  147.42 +};
  147.43 +
  147.44 +const QMetaObject *Bundle::metaObject() const
  147.45 +{
  147.46 +    return &staticMetaObject;
  147.47 +}
  147.48 +
  147.49 +void *Bundle::qt_metacast(const char *_clname)
  147.50 +{
  147.51 +    if (!_clname) return 0;
  147.52 +    if (!strcmp(_clname, qt_meta_stringdata_Bundle))
  147.53 +	return static_cast<void*>(const_cast<Bundle*>(this));
  147.54 +    return QObject::qt_metacast(_clname);
  147.55 +}
  147.56 +
  147.57 +int Bundle::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  147.58 +{
  147.59 +    _id = QObject::qt_metacall(_c, _id, _a);
  147.60 +    if (_id < 0)
  147.61 +        return _id;
  147.62 +    return _id;
  147.63 +}
   148.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   148.2 +++ b/x86/ARM/moc_bundleManager.cpp	Thu Jun 26 17:39:40 2008 +0100
   148.3 @@ -0,0 +1,112 @@
   148.4 +/****************************************************************************
   148.5 +** Meta object code from reading C++ file 'bundleManager.h'
   148.6 +**
   148.7 +** Created: Tue Aug 8 08:50:20 2006
   148.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.2)
   148.9 +**
  148.10 +** WARNING! All changes made in this file will be lost!
  148.11 +*****************************************************************************/
  148.12 +
  148.13 +#include "bundleManager.h"
  148.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  148.15 +#error "The header file 'bundleManager.h' doesn't include <QObject>."
  148.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  148.17 +#error "This file was generated using the moc from 4.1.2. It"
  148.18 +#error "cannot be used with the include files from this version of Qt."
  148.19 +#error "(The moc has changed too much.)"
  148.20 +#endif
  148.21 +
  148.22 +static const uint qt_meta_data_BundleManager[] = {
  148.23 +
  148.24 + // content:
  148.25 +       1,       // revision
  148.26 +       0,       // classname
  148.27 +       0,    0, // classinfo
  148.28 +       9,   10, // methods
  148.29 +       0,    0, // properties
  148.30 +       0,    0, // enums/sets
  148.31 +
  148.32 + // signals: signature, parameters, type, tag, flags
  148.33 +      15,   14,   14,   14, 0x05,
  148.34 +      43,   14,   14,   14, 0x05,
  148.35 +      60,   14,   14,   14, 0x05,
  148.36 +
  148.37 + // slots: signature, parameters, type, tag, flags
  148.38 +      95,   14,   14,   14, 0x0a,
  148.39 +     135,   14,   14,   14, 0x0a,
  148.40 +     153,   14,   14,   14, 0x0a,
  148.41 +     182,   14,   14,   14, 0x0a,
  148.42 +     195,   14,   14,   14, 0x0a,
  148.43 +     210,   14,   14,   14, 0x0a,
  148.44 +
  148.45 +       0        // eod
  148.46 +};
  148.47 +
  148.48 +static const char qt_meta_stringdata_BundleManager[] = {
  148.49 +    "BundleManager\0\0sendDeliveredBundle(Bundle)\0sendStorage(int)\0"
  148.50 +    "sendDebugBundleList(QList<Bundle>)\0"
  148.51 +    "updateBundlesDestinations(NodeManager*)\0addBundle(Bundle)\0"
  148.52 +    "addBundleList(QList<Bundle>)\0saveToFile()\0readFromFile()\0"
  148.53 +    "emitDebugList()\0"
  148.54 +};
  148.55 +
  148.56 +const QMetaObject BundleManager::staticMetaObject = {
  148.57 +    { &QObject::staticMetaObject, qt_meta_stringdata_BundleManager,
  148.58 +      qt_meta_data_BundleManager, 0 }
  148.59 +};
  148.60 +
  148.61 +const QMetaObject *BundleManager::metaObject() const
  148.62 +{
  148.63 +    return &staticMetaObject;
  148.64 +}
  148.65 +
  148.66 +void *BundleManager::qt_metacast(const char *_clname)
  148.67 +{
  148.68 +    if (!_clname) return 0;
  148.69 +    if (!strcmp(_clname, qt_meta_stringdata_BundleManager))
  148.70 +	return static_cast<void*>(const_cast<BundleManager*>(this));
  148.71 +    return QObject::qt_metacast(_clname);
  148.72 +}
  148.73 +
  148.74 +int BundleManager::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  148.75 +{
  148.76 +    _id = QObject::qt_metacall(_c, _id, _a);
  148.77 +    if (_id < 0)
  148.78 +        return _id;
  148.79 +    if (_c == QMetaObject::InvokeMetaMethod) {
  148.80 +        switch (_id) {
  148.81 +        case 0: sendDeliveredBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
  148.82 +        case 1: sendStorage((*reinterpret_cast< int(*)>(_a[1]))); break;
  148.83 +        case 2: sendDebugBundleList((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  148.84 +        case 3: updateBundlesDestinations((*reinterpret_cast< NodeManager*(*)>(_a[1]))); break;
  148.85 +        case 4: addBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
  148.86 +        case 5: addBundleList((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  148.87 +        case 6: saveToFile(); break;
  148.88 +        case 7: readFromFile(); break;
  148.89 +        case 8: emitDebugList(); break;
  148.90 +        }
  148.91 +        _id -= 9;
  148.92 +    }
  148.93 +    return _id;
  148.94 +}
  148.95 +
  148.96 +// SIGNAL 0
  148.97 +void BundleManager::sendDeliveredBundle(Bundle _t1)
  148.98 +{
  148.99 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 148.100 +    QMetaObject::activate(this, &staticMetaObject, 0, _a);
 148.101 +}
 148.102 +
 148.103 +// SIGNAL 1
 148.104 +void BundleManager::sendStorage(int _t1)
 148.105 +{
 148.106 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 148.107 +    QMetaObject::activate(this, &staticMetaObject, 1, _a);
 148.108 +}
 148.109 +
 148.110 +// SIGNAL 2
 148.111 +void BundleManager::sendDebugBundleList(QList<Bundle> _t1)
 148.112 +{
 148.113 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 148.114 +    QMetaObject::activate(this, &staticMetaObject, 2, _a);
 148.115 +}
   149.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   149.2 +++ b/x86/ARM/moc_connection.cpp	Thu Jun 26 17:39:40 2008 +0100
   149.3 @@ -0,0 +1,171 @@
   149.4 +/****************************************************************************
   149.5 +** Meta object code from reading C++ file 'connection.h'
   149.6 +**
   149.7 +** Created: Tue Aug 8 08:50:27 2006
   149.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.2)
   149.9 +**
  149.10 +** WARNING! All changes made in this file will be lost!
  149.11 +*****************************************************************************/
  149.12 +
  149.13 +#include "connection.h"
  149.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  149.15 +#error "The header file 'connection.h' doesn't include <QObject>."
  149.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  149.17 +#error "This file was generated using the moc from 4.1.2. It"
  149.18 +#error "cannot be used with the include files from this version of Qt."
  149.19 +#error "(The moc has changed too much.)"
  149.20 +#endif
  149.21 +
  149.22 +static const uint qt_meta_data_Connection[] = {
  149.23 +
  149.24 + // content:
  149.25 +       1,       // revision
  149.26 +       0,       // classname
  149.27 +       0,    0, // classinfo
  149.28 +      19,   10, // methods
  149.29 +       0,    0, // properties
  149.30 +       0,    0, // enums/sets
  149.31 +
  149.32 + // signals: signature, parameters, type, tag, flags
  149.33 +      12,   11,   11,   11, 0x05,
  149.34 +      39,   11,   11,   11, 0x05,
  149.35 +      56,   11,   11,   11, 0x05,
  149.36 +      84,   11,   11,   11, 0x05,
  149.37 +     105,   11,   11,   11, 0x05,
  149.38 +     139,   11,   11,   11, 0x05,
  149.39 +     170,   11,   11,   11, 0x05,
  149.40 +     203,   11,   11,   11, 0x05,
  149.41 +
  149.42 + // slots: signature, parameters, type, tag, flags
  149.43 +     230,   11,   11,   11, 0x0a,
  149.44 +     258,   11,   11,   11, 0x0a,
  149.45 +     290,   11,   11,   11, 0x0a,
  149.46 +     307,   11,   11,   11, 0x0a,
  149.47 +     327,   11,   11,   11, 0x0a,
  149.48 +     348,   11,   11,   11, 0x0a,
  149.49 +     368,   11,   11,   11, 0x0a,
  149.50 +     399,   11,   11,   11, 0x0a,
  149.51 +     423,   11,   11,   11, 0x0a,
  149.52 +     457,   11,   11,   11, 0x0a,
  149.53 +     493,   11,   11,   11, 0x0a,
  149.54 +
  149.55 +       0        // eod
  149.56 +};
  149.57 +
  149.58 +static const char qt_meta_stringdata_Connection[] = {
  149.59 +    "Connection\0\0sendDataPacket(DataPacket)\0sendHello(Hello)\0"
  149.60 +    "sendDictionary(QList<Node>)\0sendRIB(QList<Node>)\0"
  149.61 +    "forwardSignalDatagram(QByteArray)\0sendBundleOffer(QList<Bundle>)\0"
  149.62 +    "sendBundleRequest(QList<Bundle>)\0sendBundles(QList<Bundle>)\0"
  149.63 +    "receiveDatagram(DataPacket)\0forwardSlotDatagram(QByteArray)\0"
  149.64 +    "helloProcedure()\0listenerProcedure()\0initiatorProcedure()\0"
  149.65 +    "receiveHello(Hello)\0receiveDictionary(QList<Node>)\0"
  149.66 +    "receiveRIB(QList<Node>)\0receiveBundleOffer(QList<Bundle>)\0"
  149.67 +    "receiveBundleRequest(QList<Bundle>)\0receiveBundles(QList<Bundle>)\0"
  149.68 +};
  149.69 +
  149.70 +const QMetaObject Connection::staticMetaObject = {
  149.71 +    { &QObject::staticMetaObject, qt_meta_stringdata_Connection,
  149.72 +      qt_meta_data_Connection, 0 }
  149.73 +};
  149.74 +
  149.75 +const QMetaObject *Connection::metaObject() const
  149.76 +{
  149.77 +    return &staticMetaObject;
  149.78 +}
  149.79 +
  149.80 +void *Connection::qt_metacast(const char *_clname)
  149.81 +{
  149.82 +    if (!_clname) return 0;
  149.83 +    if (!strcmp(_clname, qt_meta_stringdata_Connection))
  149.84 +	return static_cast<void*>(const_cast<Connection*>(this));
  149.85 +    return QObject::qt_metacast(_clname);
  149.86 +}
  149.87 +
  149.88 +int Connection::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  149.89 +{
  149.90 +    _id = QObject::qt_metacall(_c, _id, _a);
  149.91 +    if (_id < 0)
  149.92 +        return _id;
  149.93 +    if (_c == QMetaObject::InvokeMetaMethod) {
  149.94 +        switch (_id) {
  149.95 +        case 0: sendDataPacket((*reinterpret_cast< DataPacket(*)>(_a[1]))); break;
  149.96 +        case 1: sendHello((*reinterpret_cast< Hello(*)>(_a[1]))); break;
  149.97 +        case 2: sendDictionary((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  149.98 +        case 3: sendRIB((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  149.99 +        case 4: forwardSignalDatagram((*reinterpret_cast< QByteArray(*)>(_a[1]))); break;
 149.100 +        case 5: sendBundleOffer((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 149.101 +        case 6: sendBundleRequest((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 149.102 +        case 7: sendBundles((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 149.103 +        case 8: receiveDatagram((*reinterpret_cast< DataPacket(*)>(_a[1]))); break;
 149.104 +        case 9: forwardSlotDatagram((*reinterpret_cast< QByteArray(*)>(_a[1]))); break;
 149.105 +        case 10: helloProcedure(); break;
 149.106 +        case 11: listenerProcedure(); break;
 149.107 +        case 12: initiatorProcedure(); break;
 149.108 +        case 13: receiveHello((*reinterpret_cast< Hello(*)>(_a[1]))); break;
 149.109 +        case 14: receiveDictionary((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
 149.110 +        case 15: receiveRIB((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
 149.111 +        case 16: receiveBundleOffer((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 149.112 +        case 17: receiveBundleRequest((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 149.113 +        case 18: receiveBundles((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 149.114 +        }
 149.115 +        _id -= 19;
 149.116 +    }
 149.117 +    return _id;
 149.118 +}
 149.119 +
 149.120 +// SIGNAL 0
 149.121 +void Connection::sendDataPacket(DataPacket _t1)
 149.122 +{
 149.123 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 149.124 +    QMetaObject::activate(this, &staticMetaObject, 0, _a);
 149.125 +}
 149.126 +
 149.127 +// SIGNAL 1
 149.128 +void Connection::sendHello(Hello _t1)
 149.129 +{
 149.130 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 149.131 +    QMetaObject::activate(this, &staticMetaObject, 1, _a);
 149.132 +}
 149.133 +
 149.134 +// SIGNAL 2
 149.135 +void Connection::sendDictionary(QList<Node> _t1)
 149.136 +{
 149.137 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 149.138 +    QMetaObject::activate(this, &staticMetaObject, 2, _a);
 149.139 +}
 149.140 +
 149.141 +// SIGNAL 3
 149.142 +void Connection::sendRIB(QList<Node> _t1)
 149.143 +{
 149.144 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 149.145 +    QMetaObject::activate(this, &staticMetaObject, 3, _a);
 149.146 +}
 149.147 +
 149.148 +// SIGNAL 4
 149.149 +void Connection::forwardSignalDatagram(QByteArray _t1)
 149.150 +{
 149.151 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 149.152 +    QMetaObject::activate(this, &staticMetaObject, 4, _a);
 149.153 +}
 149.154 +
 149.155 +// SIGNAL 5
 149.156 +void Connection::sendBundleOffer(QList<Bundle> _t1)
 149.157 +{
 149.158 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 149.159 +    QMetaObject::activate(this, &staticMetaObject, 5, _a);
 149.160 +}
 149.161 +
 149.162 +// SIGNAL 6
 149.163 +void Connection::sendBundleRequest(QList<Bundle> _t1)
 149.164 +{
 149.165 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 149.166 +    QMetaObject::activate(this, &staticMetaObject, 6, _a);
 149.167 +}
 149.168 +
 149.169 +// SIGNAL 7
 149.170 +void Connection::sendBundles(QList<Bundle> _t1)
 149.171 +{
 149.172 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 149.173 +    QMetaObject::activate(this, &staticMetaObject, 7, _a);
 149.174 +}
   150.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   150.2 +++ b/x86/ARM/moc_dataPacket.cpp	Thu Jun 26 17:39:40 2008 +0100
   150.3 @@ -0,0 +1,60 @@
   150.4 +/****************************************************************************
   150.5 +** Meta object code from reading C++ file 'dataPacket.h'
   150.6 +**
   150.7 +** Created: Tue Aug 8 08:50:36 2006
   150.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.2)
   150.9 +**
  150.10 +** WARNING! All changes made in this file will be lost!
  150.11 +*****************************************************************************/
  150.12 +
  150.13 +#include "dataPacket.h"
  150.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  150.15 +#error "The header file 'dataPacket.h' doesn't include <QObject>."
  150.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  150.17 +#error "This file was generated using the moc from 4.1.2. It"
  150.18 +#error "cannot be used with the include files from this version of Qt."
  150.19 +#error "(The moc has changed too much.)"
  150.20 +#endif
  150.21 +
  150.22 +static const uint qt_meta_data_DataPacket[] = {
  150.23 +
  150.24 + // content:
  150.25 +       1,       // revision
  150.26 +       0,       // classname
  150.27 +       0,    0, // classinfo
  150.28 +       0,    0, // methods
  150.29 +       0,    0, // properties
  150.30 +       0,    0, // enums/sets
  150.31 +
  150.32 +       0        // eod
  150.33 +};
  150.34 +
  150.35 +static const char qt_meta_stringdata_DataPacket[] = {
  150.36 +    "DataPacket\0"
  150.37 +};
  150.38 +
  150.39 +const QMetaObject DataPacket::staticMetaObject = {
  150.40 +    { &QObject::staticMetaObject, qt_meta_stringdata_DataPacket,
  150.41 +      qt_meta_data_DataPacket, 0 }
  150.42 +};
  150.43 +
  150.44 +const QMetaObject *DataPacket::metaObject() const
  150.45 +{
  150.46 +    return &staticMetaObject;
  150.47 +}
  150.48 +
  150.49 +void *DataPacket::qt_metacast(const char *_clname)
  150.50 +{
  150.51 +    if (!_clname) return 0;
  150.52 +    if (!strcmp(_clname, qt_meta_stringdata_DataPacket))
  150.53 +	return static_cast<void*>(const_cast<DataPacket*>(this));
  150.54 +    return QObject::qt_metacast(_clname);
  150.55 +}
  150.56 +
  150.57 +int DataPacket::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  150.58 +{
  150.59 +    _id = QObject::qt_metacall(_c, _id, _a);
  150.60 +    if (_id < 0)
  150.61 +        return _id;
  150.62 +    return _id;
  150.63 +}
   151.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   151.2 +++ b/x86/ARM/moc_hello.cpp	Thu Jun 26 17:39:40 2008 +0100
   151.3 @@ -0,0 +1,60 @@
   151.4 +/****************************************************************************
   151.5 +** Meta object code from reading C++ file 'hello.h'
   151.6 +**
   151.7 +** Created: Tue Aug 8 08:50:34 2006
   151.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.2)
   151.9 +**
  151.10 +** WARNING! All changes made in this file will be lost!
  151.11 +*****************************************************************************/
  151.12 +
  151.13 +#include "hello.h"
  151.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  151.15 +#error "The header file 'hello.h' doesn't include <QObject>."
  151.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  151.17 +#error "This file was generated using the moc from 4.1.2. It"
  151.18 +#error "cannot be used with the include files from this version of Qt."
  151.19 +#error "(The moc has changed too much.)"
  151.20 +#endif
  151.21 +
  151.22 +static const uint qt_meta_data_Hello[] = {
  151.23 +
  151.24 + // content:
  151.25 +       1,       // revision
  151.26 +       0,       // classname
  151.27 +       0,    0, // classinfo
  151.28 +       0,    0, // methods
  151.29 +       0,    0, // properties
  151.30 +       0,    0, // enums/sets
  151.31 +
  151.32 +       0        // eod
  151.33 +};
  151.34 +
  151.35 +static const char qt_meta_stringdata_Hello[] = {
  151.36 +    "Hello\0"
  151.37 +};
  151.38 +
  151.39 +const QMetaObject Hello::staticMetaObject = {
  151.40 +    { &QObject::staticMetaObject, qt_meta_stringdata_Hello,
  151.41 +      qt_meta_data_Hello, 0 }
  151.42 +};
  151.43 +
  151.44 +const QMetaObject *Hello::metaObject() const
  151.45 +{
  151.46 +    return &staticMetaObject;
  151.47 +}
  151.48 +
  151.49 +void *Hello::qt_metacast(const char *_clname)
  151.50 +{
  151.51 +    if (!_clname) return 0;
  151.52 +    if (!strcmp(_clname, qt_meta_stringdata_Hello))
  151.53 +	return static_cast<void*>(const_cast<Hello*>(this));
  151.54 +    return QObject::qt_metacast(_clname);
  151.55 +}
  151.56 +
  151.57 +int Hello::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  151.58 +{
  151.59 +    _id = QObject::qt_metacall(_c, _id, _a);
  151.60 +    if (_id < 0)
  151.61 +        return _id;
  151.62 +    return _id;
  151.63 +}
   152.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   152.2 +++ b/x86/ARM/moc_messageFile.cpp	Thu Jun 26 17:39:40 2008 +0100
   152.3 @@ -0,0 +1,74 @@
   152.4 +/****************************************************************************
   152.5 +** Meta object code from reading C++ file 'messageFile.h'
   152.6 +**
   152.7 +** Created: Tue Aug 8 08:50:32 2006
   152.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.2)
   152.9 +**
  152.10 +** WARNING! All changes made in this file will be lost!
  152.11 +*****************************************************************************/
  152.12 +
  152.13 +#include "messageFile.h"
  152.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  152.15 +#error "The header file 'messageFile.h' doesn't include <QObject>."
  152.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  152.17 +#error "This file was generated using the moc from 4.1.2. It"
  152.18 +#error "cannot be used with the include files from this version of Qt."
  152.19 +#error "(The moc has changed too much.)"
  152.20 +#endif
  152.21 +
  152.22 +static const uint qt_meta_data_MessageFile[] = {
  152.23 +
  152.24 + // content:
  152.25 +       1,       // revision
  152.26 +       0,       // classname
  152.27 +       0,    0, // classinfo
  152.28 +       3,   10, // methods
  152.29 +       0,    0, // properties
  152.30 +       0,    0, // enums/sets
  152.31 +
  152.32 + // slots: signature, parameters, type, tag, flags
  152.33 +      26,   13,   12,   12, 0x0a,
  152.34 +      60,   52,   12,   12, 0x0a,
  152.35 +      99,   82,   12,   12, 0x0a,
  152.36 +
  152.37 +       0        // eod
  152.38 +};
  152.39 +
  152.40 +static const char qt_meta_stringdata_MessageFile[] = {
  152.41 +    "MessageFile\0\0type,message\0saveMessage(int,QString&)\0message\0"
  152.42 +    "saveMessage(QString&)\0message,datetime\0saveMessage(QString&,bool)\0"
  152.43 +};
  152.44 +
  152.45 +const QMetaObject MessageFile::staticMetaObject = {
  152.46 +    { &QObject::staticMetaObject, qt_meta_stringdata_MessageFile,
  152.47 +      qt_meta_data_MessageFile, 0 }
  152.48 +};
  152.49 +
  152.50 +const QMetaObject *MessageFile::metaObject() const
  152.51 +{
  152.52 +    return &staticMetaObject;
  152.53 +}
  152.54 +
  152.55 +void *MessageFile::qt_metacast(const char *_clname)
  152.56 +{
  152.57 +    if (!_clname) return 0;
  152.58 +    if (!strcmp(_clname, qt_meta_stringdata_MessageFile))
  152.59 +	return static_cast<void*>(const_cast<MessageFile*>(this));
  152.60 +    return QObject::qt_metacast(_clname);
  152.61 +}
  152.62 +
  152.63 +int MessageFile::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  152.64 +{
  152.65 +    _id = QObject::qt_metacall(_c, _id, _a);
  152.66 +    if (_id < 0)
  152.67 +        return _id;
  152.68 +    if (_c == QMetaObject::InvokeMetaMethod) {
  152.69 +        switch (_id) {
  152.70 +        case 0: saveMessage((*reinterpret_cast< int(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
  152.71 +        case 1: saveMessage((*reinterpret_cast< QString(*)>(_a[1]))); break;
  152.72 +        case 2: saveMessage((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break;
  152.73 +        }
  152.74 +        _id -= 3;
  152.75 +    }
  152.76 +    return _id;
  152.77 +}
   153.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   153.2 +++ b/x86/ARM/moc_neighbourAwareness.cpp	Thu Jun 26 17:39:40 2008 +0100
   153.3 @@ -0,0 +1,212 @@
   153.4 +/****************************************************************************
   153.5 +** Meta object code from reading C++ file 'neighbourAwareness.h'
   153.6 +**
   153.7 +** Created: Tue Aug 8 08:50:15 2006
   153.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.2)
   153.9 +**
  153.10 +** WARNING! All changes made in this file will be lost!
  153.11 +*****************************************************************************/
  153.12 +
  153.13 +#include "neighbourAwareness.h"
  153.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  153.15 +#error "The header file 'neighbourAwareness.h' doesn't include <QObject>."
  153.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  153.17 +#error "This file was generated using the moc from 4.1.2. It"
  153.18 +#error "cannot be used with the include files from this version of Qt."
  153.19 +#error "(The moc has changed too much.)"
  153.20 +#endif
  153.21 +
  153.22 +static const uint qt_meta_data_ConnectionInfo[] = {
  153.23 +
  153.24 + // content:
  153.25 +       1,       // revision
  153.26 +       0,       // classname
  153.27 +       0,    0, // classinfo
  153.28 +       0,    0, // methods
  153.29 +       0,    0, // properties
  153.30 +       0,    0, // enums/sets
  153.31 +
  153.32 +       0        // eod
  153.33 +};
  153.34 +
  153.35 +static const char qt_meta_stringdata_ConnectionInfo[] = {
  153.36 +    "ConnectionInfo\0"
  153.37 +};
  153.38 +
  153.39 +const QMetaObject ConnectionInfo::staticMetaObject = {
  153.40 +    { &QObject::staticMetaObject, qt_meta_stringdata_ConnectionInfo,
  153.41 +      qt_meta_data_ConnectionInfo, 0 }
  153.42 +};
  153.43 +
  153.44 +const QMetaObject *ConnectionInfo::metaObject() const
  153.45 +{
  153.46 +    return &staticMetaObject;
  153.47 +}
  153.48 +
  153.49 +void *ConnectionInfo::qt_metacast(const char *_clname)
  153.50 +{
  153.51 +    if (!_clname) return 0;
  153.52 +    if (!strcmp(_clname, qt_meta_stringdata_ConnectionInfo))
  153.53 +	return static_cast<void*>(const_cast<ConnectionInfo*>(this));
  153.54 +    return QObject::qt_metacast(_clname);
  153.55 +}
  153.56 +
  153.57 +int ConnectionInfo::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  153.58 +{
  153.59 +    _id = QObject::qt_metacall(_c, _id, _a);
  153.60 +    if (_id < 0)
  153.61 +        return _id;
  153.62 +    return _id;
  153.63 +}
  153.64 +static const uint qt_meta_data_NeighAwareServer[] = {
  153.65 +
  153.66 + // content:
  153.67 +       1,       // revision
  153.68 +       0,       // classname
  153.69 +       0,    0, // classinfo
  153.70 +       2,   10, // methods
  153.71 +       0,    0, // properties
  153.72 +       0,    0, // enums/sets
  153.73 +
  153.74 + // signals: signature, parameters, type, tag, flags
  153.75 +      48,   18,   17,   17, 0x05,
  153.76 +
  153.77 + // slots: signature, parameters, type, tag, flags
  153.78 +     109,   92,   17,   17, 0x09,
  153.79 +
  153.80 +       0        // eod
  153.81 +};
  153.82 +
  153.83 +static const char qt_meta_stringdata_NeighAwareServer[] = {
  153.84 +    "NeighAwareServer\0\0newSocket,permitNewConnection\0"
  153.85 +    "newConnectionEstablished(QTcpSocket*,bool&)\0socketDescripton\0"
  153.86 +    "incomingConnection(int)\0"
  153.87 +};
  153.88 +
  153.89 +const QMetaObject NeighAwareServer::staticMetaObject = {
  153.90 +    { &QTcpServer::staticMetaObject, qt_meta_stringdata_NeighAwareServer,
  153.91 +      qt_meta_data_NeighAwareServer, 0 }
  153.92 +};
  153.93 +
  153.94 +const QMetaObject *NeighAwareServer::metaObject() const
  153.95 +{
  153.96 +    return &staticMetaObject;
  153.97 +}
  153.98 +
  153.99 +void *NeighAwareServer::qt_metacast(const char *_clname)
 153.100 +{
 153.101 +    if (!_clname) return 0;
 153.102 +    if (!strcmp(_clname, qt_meta_stringdata_NeighAwareServer))
 153.103 +	return static_cast<void*>(const_cast<NeighAwareServer*>(this));
 153.104 +    return QTcpServer::qt_metacast(_clname);
 153.105 +}
 153.106 +
 153.107 +int NeighAwareServer::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
 153.108 +{
 153.109 +    _id = QTcpServer::qt_metacall(_c, _id, _a);
 153.110 +    if (_id < 0)
 153.111 +        return _id;
 153.112 +    if (_c == QMetaObject::InvokeMetaMethod) {
 153.113 +        switch (_id) {
 153.114 +        case 0: newConnectionEstablished((*reinterpret_cast< QTcpSocket*(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break;
 153.115 +        case 1: incomingConnection((*reinterpret_cast< int(*)>(_a[1]))); break;
 153.116 +        }
 153.117 +        _id -= 2;
 153.118 +    }
 153.119 +    return _id;
 153.120 +}
 153.121 +
 153.122 +// SIGNAL 0
 153.123 +void NeighAwareServer::newConnectionEstablished(QTcpSocket * _t1, bool & _t2)
 153.124 +{
 153.125 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)), const_cast<void*>(reinterpret_cast<const void*>(&_t2)) };
 153.126 +    QMetaObject::activate(this, &staticMetaObject, 0, _a);
 153.127 +}
 153.128 +static const uint qt_meta_data_NeighAware[] = {
 153.129 +
 153.130 + // content:
 153.131 +       1,       // revision
 153.132 +       0,       // classname
 153.133 +       0,    0, // classinfo
 153.134 +       9,   10, // methods
 153.135 +       0,    0, // properties
 153.136 +       0,    0, // enums/sets
 153.137 +
 153.138 + // signals: signature, parameters, type, tag, flags
 153.139 +      12,   11,   11,   11, 0x05,
 153.140 +      52,   11,   11,   11, 0x05,
 153.141 +
 153.142 + // slots: signature, parameters, type, tag, flags
 153.143 +     107,   77,   11,   11, 0x0a,
 153.144 +     151,   11,   11,   11, 0x0a,
 153.145 +     193,   11,   11,   11, 0x0a,
 153.146 +     208,   11,   11,   11, 0x0a,
 153.147 +     239,  228,   11,   11, 0x0a,
 153.148 +     264,   11,   11,   11, 0x0a,
 153.149 +     290,   11,   11,   11, 0x0a,
 153.150 +
 153.151 +       0        // eod
 153.152 +};
 153.153 +
 153.154 +static const char qt_meta_stringdata_NeighAware[] = {
 153.155 +    "NeighAware\0\0sendDebugConList(QList<ConnectionInfo>)\0"
 153.156 +    "passDatagram(DataPacket)\0newSocket,permitNewConnection\0"
 153.157 +    "newConnectionEstablished(QTcpSocket*,bool&)\0"
 153.158 +    "errorDecode(QAbstractSocket::SocketError)\0stateChanged()\0"
 153.159 +    "broadcastDatagram()\0datapacket\0sendDatagram(DataPacket)\0"
 153.160 +    "processPendingDatagrams()\0processPingDatagrams()\0"
 153.161 +};
 153.162 +
 153.163 +const QMetaObject NeighAware::staticMetaObject = {
 153.164 +    { &QObject::staticMetaObject, qt_meta_stringdata_NeighAware,
 153.165 +      qt_meta_data_NeighAware, 0 }
 153.166 +};
 153.167 +
 153.168 +const QMetaObject *NeighAware::metaObject() const
 153.169 +{
 153.170 +    return &staticMetaObject;
 153.171 +}
 153.172 +
 153.173 +void *NeighAware::qt_metacast(const char *_clname)
 153.174 +{
 153.175 +    if (!_clname) return 0;
 153.176 +    if (!strcmp(_clname, qt_meta_stringdata_NeighAware))
 153.177 +	return static_cast<void*>(const_cast<NeighAware*>(this));
 153.178 +    return QObject::qt_metacast(_clname);
 153.179 +}
 153.180 +
 153.181 +int NeighAware::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
 153.182 +{
 153.183 +    _id = QObject::qt_metacall(_c, _id, _a);
 153.184 +    if (_id < 0)
 153.185 +        return _id;
 153.186 +    if (_c == QMetaObject::InvokeMetaMethod) {
 153.187 +        switch (_id) {
 153.188 +        case 0: sendDebugConList((*reinterpret_cast< QList<ConnectionInfo>(*)>(_a[1]))); break;
 153.189 +        case 1: passDatagram((*reinterpret_cast< DataPacket(*)>(_a[1]))); break;
 153.190 +        case 2: newConnectionEstablished((*reinterpret_cast< QTcpSocket*(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break;
 153.191 +        case 3: errorDecode((*reinterpret_cast< QAbstractSocket::SocketError(*)>(_a[1]))); break;
 153.192 +        case 4: stateChanged(); break;
 153.193 +        case 5: broadcastDatagram(); break;
 153.194 +        case 6: sendDatagram((*reinterpret_cast< DataPacket(*)>(_a[1]))); break;
 153.195 +        case 7: processPendingDatagrams(); break;
 153.196 +        case 8: processPingDatagrams(); break;
 153.197 +        }
 153.198 +        _id -= 9;
 153.199 +    }
 153.200 +    return _id;
 153.201 +}
 153.202 +
 153.203 +// SIGNAL 0
 153.204 +void NeighAware::sendDebugConList(QList<ConnectionInfo> _t1)
 153.205 +{
 153.206 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 153.207 +    QMetaObject::activate(this, &staticMetaObject, 0, _a);
 153.208 +}
 153.209 +
 153.210 +// SIGNAL 1
 153.211 +void NeighAware::passDatagram(DataPacket _t1)
 153.212 +{
 153.213 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 153.214 +    QMetaObject::activate(this, &staticMetaObject, 1, _a);
 153.215 +}
   154.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   154.2 +++ b/x86/ARM/moc_node.cpp	Thu Jun 26 17:39:40 2008 +0100
   154.3 @@ -0,0 +1,60 @@
   154.4 +/****************************************************************************
   154.5 +** Meta object code from reading C++ file 'node.h'
   154.6 +**
   154.7 +** Created: Tue Aug 8 08:50:22 2006
   154.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.2)
   154.9 +**
  154.10 +** WARNING! All changes made in this file will be lost!
  154.11 +*****************************************************************************/
  154.12 +
  154.13 +#include "node.h"
  154.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  154.15 +#error "The header file 'node.h' doesn't include <QObject>."
  154.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  154.17 +#error "This file was generated using the moc from 4.1.2. It"
  154.18 +#error "cannot be used with the include files from this version of Qt."
  154.19 +#error "(The moc has changed too much.)"
  154.20 +#endif
  154.21 +
  154.22 +static const uint qt_meta_data_Node[] = {
  154.23 +
  154.24 + // content:
  154.25 +       1,       // revision
  154.26 +       0,       // classname
  154.27 +       0,    0, // classinfo
  154.28 +       0,    0, // methods
  154.29 +       0,    0, // properties
  154.30 +       0,    0, // enums/sets
  154.31 +
  154.32 +       0        // eod
  154.33 +};
  154.34 +
  154.35 +static const char qt_meta_stringdata_Node[] = {
  154.36 +    "Node\0"
  154.37 +};
  154.38 +
  154.39 +const QMetaObject Node::staticMetaObject = {
  154.40 +    { &QObject::staticMetaObject, qt_meta_stringdata_Node,
  154.41 +      qt_meta_data_Node, 0 }
  154.42 +};
  154.43 +
  154.44 +const QMetaObject *Node::metaObject() const
  154.45 +{
  154.46 +    return &staticMetaObject;
  154.47 +}
  154.48 +
  154.49 +void *Node::qt_metacast(const char *_clname)
  154.50 +{
  154.51 +    if (!_clname) return 0;
  154.52 +    if (!strcmp(_clname, qt_meta_stringdata_Node))
  154.53 +	return static_cast<void*>(const_cast<Node*>(this));
  154.54 +    return QObject::qt_metacast(_clname);
  154.55 +}
  154.56 +
  154.57 +int Node::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  154.58 +{
  154.59 +    _id = QObject::qt_metacall(_c, _id, _a);
  154.60 +    if (_id < 0)
  154.61 +        return _id;
  154.62 +    return _id;
  154.63 +}
   155.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   155.2 +++ b/x86/ARM/moc_nodeManager.cpp	Thu Jun 26 17:39:40 2008 +0100
   155.3 @@ -0,0 +1,94 @@
   155.4 +/****************************************************************************
   155.5 +** Meta object code from reading C++ file 'nodeManager.h'
   155.6 +**
   155.7 +** Created: Tue Aug 8 08:50:25 2006
   155.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.2)
   155.9 +**
  155.10 +** WARNING! All changes made in this file will be lost!
  155.11 +*****************************************************************************/
  155.12 +
  155.13 +#include "nodeManager.h"
  155.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  155.15 +#error "The header file 'nodeManager.h' doesn't include <QObject>."
  155.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  155.17 +#error "This file was generated using the moc from 4.1.2. It"
  155.18 +#error "cannot be used with the include files from this version of Qt."
  155.19 +#error "(The moc has changed too much.)"
  155.20 +#endif
  155.21 +
  155.22 +static const uint qt_meta_data_NodeManager[] = {
  155.23 +
  155.24 + // content:
  155.25 +       1,       // revision
  155.26 +       0,       // classname
  155.27 +       0,    0, // classinfo
  155.28 +       5,   10, // methods
  155.29 +       0,    0, // properties
  155.30 +       0,    0, // enums/sets
  155.31 +
  155.32 + // signals: signature, parameters, type, tag, flags
  155.33 +      13,   12,   12,   12, 0x05,
  155.34 +      44,   12,   12,   12, 0x05,
  155.35 +
  155.36 + // slots: signature, parameters, type, tag, flags
  155.37 +      74,   12,   12,   12, 0x0a,
  155.38 +      82,   12,   12,   12, 0x0a,
  155.39 +      95,   12,   12,   12, 0x0a,
  155.40 +
  155.41 +       0        // eod
  155.42 +};
  155.43 +
  155.44 +static const char qt_meta_stringdata_NodeManager[] = {
  155.45 +    "NodeManager\0\0sendDebugNodeList(QList<Node>)\0"
  155.46 +    "updatedNodeList(NodeManager*)\0aging()\0saveToFile()\0readFromFile()\0"
  155.47 +};
  155.48 +
  155.49 +const QMetaObject NodeManager::staticMetaObject = {
  155.50 +    { &QObject::staticMetaObject, qt_meta_stringdata_NodeManager,
  155.51 +      qt_meta_data_NodeManager, 0 }
  155.52 +};
  155.53 +
  155.54 +const QMetaObject *NodeManager::metaObject() const
  155.55 +{
  155.56 +    return &staticMetaObject;
  155.57 +}
  155.58 +
  155.59 +void *NodeManager::qt_metacast(const char *_clname)
  155.60 +{
  155.61 +    if (!_clname) return 0;
  155.62 +    if (!strcmp(_clname, qt_meta_stringdata_NodeManager))
  155.63 +	return static_cast<void*>(const_cast<NodeManager*>(this));
  155.64 +    return QObject::qt_metacast(_clname);
  155.65 +}
  155.66 +
  155.67 +int NodeManager::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  155.68 +{
  155.69 +    _id = QObject::qt_metacall(_c, _id, _a);
  155.70 +    if (_id < 0)
  155.71 +        return _id;
  155.72 +    if (_c == QMetaObject::InvokeMetaMethod) {
  155.73 +        switch (_id) {
  155.74 +        case 0: sendDebugNodeList((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  155.75 +        case 1: updatedNodeList((*reinterpret_cast< NodeManager*(*)>(_a[1]))); break;
  155.76 +        case 2: aging(); break;
  155.77 +        case 3: saveToFile(); break;
  155.78 +        case 4: readFromFile(); break;
  155.79 +        }
  155.80 +        _id -= 5;
  155.81 +    }
  155.82 +    return _id;
  155.83 +}
  155.84 +
  155.85 +// SIGNAL 0
  155.86 +void NodeManager::sendDebugNodeList(QList<Node> _t1)
  155.87 +{
  155.88 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  155.89 +    QMetaObject::activate(this, &staticMetaObject, 0, _a);
  155.90 +}
  155.91 +
  155.92 +// SIGNAL 1
  155.93 +void NodeManager::updatedNodeList(NodeManager * _t1)
  155.94 +{
  155.95 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  155.96 +    QMetaObject::activate(this, &staticMetaObject, 1, _a);
  155.97 +}
   156.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   156.2 +++ b/x86/ARM/moc_readFile.cpp	Thu Jun 26 17:39:40 2008 +0100
   156.3 @@ -0,0 +1,60 @@
   156.4 +/****************************************************************************
   156.5 +** Meta object code from reading C++ file 'readFile.h'
   156.6 +**
   156.7 +** Created: Tue Aug 8 08:50:39 2006
   156.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.2)
   156.9 +**
  156.10 +** WARNING! All changes made in this file will be lost!
  156.11 +*****************************************************************************/
  156.12 +
  156.13 +#include "readFile.h"
  156.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  156.15 +#error "The header file 'readFile.h' doesn't include <QObject>."
  156.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  156.17 +#error "This file was generated using the moc from 4.1.2. It"
  156.18 +#error "cannot be used with the include files from this version of Qt."
  156.19 +#error "(The moc has changed too much.)"
  156.20 +#endif
  156.21 +
  156.22 +static const uint qt_meta_data_ReadFile[] = {
  156.23 +
  156.24 + // content:
  156.25 +       1,       // revision
  156.26 +       0,       // classname
  156.27 +       0,    0, // classinfo
  156.28 +       0,    0, // methods
  156.29 +       0,    0, // properties
  156.30 +       0,    0, // enums/sets
  156.31 +
  156.32 +       0        // eod
  156.33 +};
  156.34 +
  156.35 +static const char qt_meta_stringdata_ReadFile[] = {
  156.36 +    "ReadFile\0"
  156.37 +};
  156.38 +
  156.39 +const QMetaObject ReadFile::staticMetaObject = {
  156.40 +    { &QObject::staticMetaObject, qt_meta_stringdata_ReadFile,
  156.41 +      qt_meta_data_ReadFile, 0 }
  156.42 +};
  156.43 +
  156.44 +const QMetaObject *ReadFile::metaObject() const
  156.45 +{
  156.46 +    return &staticMetaObject;
  156.47 +}
  156.48 +
  156.49 +void *ReadFile::qt_metacast(const char *_clname)
  156.50 +{
  156.51 +    if (!_clname) return 0;
  156.52 +    if (!strcmp(_clname, qt_meta_stringdata_ReadFile))
  156.53 +	return static_cast<void*>(const_cast<ReadFile*>(this));
  156.54 +    return QObject::qt_metacast(_clname);
  156.55 +}
  156.56 +
  156.57 +int ReadFile::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  156.58 +{
  156.59 +    _id = QObject::qt_metacall(_c, _id, _a);
  156.60 +    if (_id < 0)
  156.61 +        return _id;
  156.62 +    return _id;
  156.63 +}
   157.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   157.2 +++ b/x86/ARM/moc_tlv.cpp	Thu Jun 26 17:39:40 2008 +0100
   157.3 @@ -0,0 +1,152 @@
   157.4 +/****************************************************************************
   157.5 +** Meta object code from reading C++ file 'tlv.h'
   157.6 +**
   157.7 +** Created: Tue Aug 8 08:50:30 2006
   157.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.2)
   157.9 +**
  157.10 +** WARNING! All changes made in this file will be lost!
  157.11 +*****************************************************************************/
  157.12 +
  157.13 +#include "tlv.h"
  157.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  157.15 +#error "The header file 'tlv.h' doesn't include <QObject>."
  157.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  157.17 +#error "This file was generated using the moc from 4.1.2. It"
  157.18 +#error "cannot be used with the include files from this version of Qt."
  157.19 +#error "(The moc has changed too much.)"
  157.20 +#endif
  157.21 +
  157.22 +static const uint qt_meta_data_TLV[] = {
  157.23 +
  157.24 + // content:
  157.25 +       1,       // revision
  157.26 +       0,       // classname
  157.27 +       0,    0, // classinfo
  157.28 +      14,   10, // methods
  157.29 +       0,    0, // properties
  157.30 +       0,    0, // enums/sets
  157.31 +
  157.32 + // signals: signature, parameters, type, tag, flags
  157.33 +       5,    4,    4,    4, 0x05,
  157.34 +      30,    4,    4,    4, 0x05,
  157.35 +      47,    4,    4,    4, 0x05,
  157.36 +      75,    4,    4,    4, 0x05,
  157.37 +      96,    4,    4,    4, 0x05,
  157.38 +     127,    4,    4,    4, 0x05,
  157.39 +     160,    4,    4,    4, 0x05,
  157.40 +
  157.41 + // slots: signature, parameters, type, tag, flags
  157.42 +     190,    4,    4,    4, 0x0a,
  157.43 +     210,    4,    4,    4, 0x0a,
  157.44 +     238,    4,    4,    4, 0x0a,
  157.45 +     268,    4,    4,    4, 0x0a,
  157.46 +     291,    4,    4,    4, 0x0a,
  157.47 +     324,    4,    4,    4, 0x0a,
  157.48 +     359,    4,    4,    4, 0x0a,
  157.49 +
  157.50 +       0        // eod
  157.51 +};
  157.52 +
  157.53 +static const char qt_meta_stringdata_TLV[] = {
  157.54 +    "TLV\0\0sendDatagram(QByteArray)\0sendHello(Hello)\0"
  157.55 +    "sendDictionary(QList<Node>)\0sendRIB(QList<Node>)\0"
  157.56 +    "sendBundleOffer(QList<Bundle>)\0sendBundleRequest(QList<Bundle>)\0"
  157.57 +    "sendBundleData(QList<Bundle>)\0receiveHello(Hello)\0"
  157.58 +    "receiveDatagram(QByteArray)\0createDictionary(QList<Node>)\0"
  157.59 +    "createRIB(QList<Node>)\0createBundleOffer(QList<Bundle>)\0"
  157.60 +    "createBundleRequest(QList<Bundle>)\0createBundleData(QList<Bundle>)\0"
  157.61 +};
  157.62 +
  157.63 +const QMetaObject TLV::staticMetaObject = {
  157.64 +    { &QObject::staticMetaObject, qt_meta_stringdata_TLV,
  157.65 +      qt_meta_data_TLV, 0 }
  157.66 +};
  157.67 +
  157.68 +const QMetaObject *TLV::metaObject() const
  157.69 +{
  157.70 +    return &staticMetaObject;
  157.71 +}
  157.72 +
  157.73 +void *TLV::qt_metacast(const char *_clname)
  157.74 +{
  157.75 +    if (!_clname) return 0;
  157.76 +    if (!strcmp(_clname, qt_meta_stringdata_TLV))
  157.77 +	return static_cast<void*>(const_cast<TLV*>(this));
  157.78 +    return QObject::qt_metacast(_clname);
  157.79 +}
  157.80 +
  157.81 +int TLV::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  157.82 +{
  157.83 +    _id = QObject::qt_metacall(_c, _id, _a);
  157.84 +    if (_id < 0)
  157.85 +        return _id;
  157.86 +    if (_c == QMetaObject::InvokeMetaMethod) {
  157.87 +        switch (_id) {
  157.88 +        case 0: sendDatagram((*reinterpret_cast< QByteArray(*)>(_a[1]))); break;
  157.89 +        case 1: sendHello((*reinterpret_cast< Hello(*)>(_a[1]))); break;
  157.90 +        case 2: sendDictionary((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  157.91 +        case 3: sendRIB((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  157.92 +        case 4: sendBundleOffer((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  157.93 +        case 5: sendBundleRequest((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  157.94 +        case 6: sendBundleData((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  157.95 +        case 7: receiveHello((*reinterpret_cast< Hello(*)>(_a[1]))); break;
  157.96 +        case 8: receiveDatagram((*reinterpret_cast< QByteArray(*)>(_a[1]))); break;
  157.97 +        case 9: createDictionary((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  157.98 +        case 10: createRIB((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  157.99 +        case 11: createBundleOffer((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 157.100 +        case 12: createBundleRequest((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 157.101 +        case 13: createBundleData((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 157.102 +        }
 157.103 +        _id -= 14;
 157.104 +    }
 157.105 +    return _id;
 157.106 +}
 157.107 +
 157.108 +// SIGNAL 0
 157.109 +void TLV::sendDatagram(QByteArray _t1)
 157.110 +{
 157.111 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 157.112 +    QMetaObject::activate(this, &staticMetaObject, 0, _a);
 157.113 +}
 157.114 +
 157.115 +// SIGNAL 1
 157.116 +void TLV::sendHello(Hello _t1)
 157.117 +{
 157.118 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 157.119 +    QMetaObject::activate(this, &staticMetaObject, 1, _a);
 157.120 +}
 157.121 +
 157.122 +// SIGNAL 2
 157.123 +void TLV::sendDictionary(QList<Node> _t1)
 157.124 +{
 157.125 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 157.126 +    QMetaObject::activate(this, &staticMetaObject, 2, _a);
 157.127 +}
 157.128 +
 157.129 +// SIGNAL 3
 157.130 +void TLV::sendRIB(QList<Node> _t1)
 157.131 +{
 157.132 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 157.133 +    QMetaObject::activate(this, &staticMetaObject, 3, _a);
 157.134 +}
 157.135 +
 157.136 +// SIGNAL 4
 157.137 +void TLV::sendBundleOffer(QList<Bundle> _t1)
 157.138 +{
 157.139 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 157.140 +    QMetaObject::activate(this, &staticMetaObject, 4, _a);
 157.141 +}
 157.142 +
 157.143 +// SIGNAL 5
 157.144 +void TLV::sendBundleRequest(QList<Bundle> _t1)
 157.145 +{
 157.146 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 157.147 +    QMetaObject::activate(this, &staticMetaObject, 5, _a);
 157.148 +}
 157.149 +
 157.150 +// SIGNAL 6
 157.151 +void TLV::sendBundleData(QList<Bundle> _t1)
 157.152 +{
 157.153 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 157.154 +    QMetaObject::activate(this, &staticMetaObject, 6, _a);
 157.155 +}
   158.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   158.2 +++ b/x86/ARM/msgWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   158.3 @@ -0,0 +1,205 @@
   158.4 +#include <QtGui>
   158.5 +#include <msgWidget.h>
   158.6 +#include <readFile.h>
   158.7 +
   158.8 +
   158.9 +
  158.10 +MsgWidget::MsgWidget(NodeManager* nodeMng,QWidget *parent)
  158.11 +        : QWidget(parent)
  158.12 +{
  158.13 +	setFixedSize(990, 660);
  158.14 +	nodeManager = nodeMng;
  158.15 +	connect(nodeMng,SIGNAL(updatedNodeList(NodeManager*)),this,SLOT(updatedNodeList(NodeManager*)));
  158.16 +
  158.17 +	//Send message group
  158.18 +	QGroupBox *sendBox = new QGroupBox("Send message");
  158.19 +    //Source
  158.20 +    QLabel *labelSrc = new QLabel(this);
  158.21 +    labelSrc->setText("Select destination:");
  158.22 +	src = new QLineEdit();
  158.23 +	src->setMaxLength(3); 
  158.24 +	//Destination
  158.25 +	QLabel *labelDst = new QLabel(this);
  158.26 +    labelDst->setText("Send message:");
  158.27 +	combo = new QComboBox(this);
  158.28 +
  158.29 +
  158.30 +	dst = new QLineEdit();
  158.31 +	dst->setMaxLength(3); 
  158.32 +	//Options
  158.33 +	QLabel *labelOpt = new QLabel(this);
  158.34 +    labelOpt->setText("Received messages:");
  158.35 +	opt = new QLineEdit();
  158.36 +	opt->setMaxLength(3); 
  158.37 +	//Message
  158.38 +	QLabel *labelMsg = new QLabel(this);
  158.39 +    labelMsg->setText("Type message here:");
  158.40 +	line = new QTextEdit();
  158.41 +	//sourceString
  158.42 +	QLabel *srcStr = new QLabel(this);
  158.43 +    srcStr->setText("Content:");
  158.44 +	srcLine = new QLineEdit();
  158.45 +	//destinationString
  158.46 +	QLabel *dstStr = new QLabel(this);
  158.47 +   // dstStr->setText("DestinationString");
  158.48 +	dstLine = new QLineEdit();
  158.49 +	//Send
  158.50 +	QPushButton *send= new QPushButton("Send", this);
  158.51 +	//File
  158.52 +	//QFileDialog *file = new QFileDialog(this);	
  158.53 +	//Final grid layout
  158.54 +    QGridLayout *sendGroup = new QGridLayout;
  158.55 +	sendGroup->addWidget(labelSrc, 0, 0);
  158.56 +    sendGroup->addWidget(combo, 1, 0);
  158.57 +
  158.58 +	sendGroup->addWidget(labelDst, 0, 1);
  158.59 +    sendGroup->addWidget(send, 1, 1);
  158.60 +	sendGroup->addWidget(labelMsg, 2, 0);
  158.61 +	sendGroup->addWidget(line, 3, 0, 1, 2);
  158.62 +
  158.63 +	//sendGroup->addWidget(dst, 1, 1);
  158.64 +	//sendGroup->addWidget(combo, 2, 1);
  158.65 +
  158.66 +	//sendGroup->addWidget(labelDst, 0, 1);
  158.67 +	//sendGroup->addWidget(dstLine, 3, 1);
  158.68 +
  158.69 +	//sendGroup->addWidget(labelOpt, 0, 2);
  158.70 +	//sendGroup->addWidget(opt, 1, 2);
  158.71 +
  158.72 +	//sendGroup->addWidget(labelMsg, 4, 0);
  158.73 + 	//sendGroup->addWidget(line, 5, 0, 1, 3);
  158.74 +    //sendGroup->addWidget(send, 3, 2);
  158.75 +	 //   sendGroup->addWidget(file, 6, 2);
  158.76 +	sendBox->setFixedSize(450, 620);
  158.77 +	sendBox->setLayout(sendGroup);
  158.78 +	///////////////////////////////////////////////////
  158.79 +	QGroupBox *readBox = new QGroupBox("Read message");
  158.80 +	readText = new QTextBrowser(this);
  158.81 +	msgList = new QListWidget;
  158.82 +	//Final grid layout
  158.83 +    QGridLayout *readGroup = new QGridLayout;
  158.84 +	readGroup->addWidget(labelOpt, 0, 0);
  158.85 +	readGroup->addWidget(msgList, 1, 0);
  158.86 +	readGroup->addWidget(srcStr, 2, 0);
  158.87 +	readGroup->addWidget(readText, 3, 0);
  158.88 + 	readBox->setFixedSize(450, 620);
  158.89 +	readBox->setLayout(readGroup);
  158.90 +	Bundle *msg = new Bundle;
  158.91 +	//Define final layout
  158.92 +	QVBoxLayout *layout = new QVBoxLayout;
  158.93 +	layout->setDirection(QBoxLayout::LeftToRight);
  158.94 +    layout->addWidget(sendBox);    
  158.95 +    layout->addWidget(readBox);    
  158.96 +    setLayout(layout);
  158.97 +	//Define connections
  158.98 +	bool b = connect(send,SIGNAL(clicked(void)),this, SLOT(composeBundle(void)) );
  158.99 +//	connect(line, SIGNAL(returnPressed ()(QString)),label,SLOT(setText(QString)));
 158.100 +	//Prepare update timer
 158.101 +	timer = new QTimer();
 158.102 +	connect(timer, SIGNAL(timeout()), this, SLOT(updateLists()));
 158.103 +	connect(msgList, SIGNAL(itemClicked (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
 158.104 +	connect(msgList, SIGNAL(itemDoubleClicked  (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
 158.105 +	connect(nodeManager, SIGNAL(updatedNodeList(NodeManager*)), this, SLOT(updatedNodeList(NodeManager* )));
 158.106 +
 158.107 +
 158.108 +
 158.109 +	timer->start(5000);
 158.110 +	firstTime=0;
 158.111 +	ReadFile conf;
 158.112 +	QString msgPath=conf.getMsgPath();
 158.113 +	dir.setPath(msgPath);
 158.114 +	sourceId =conf.getNodeId();
 158.115 +	sourceStr = conf.getNodeName();
 158.116 +
 158.117 +}
 158.118 +
 158.119 +void MsgWidget::updatedNodeList(NodeManager* ptr)
 158.120 +{
 158.121 +	//First time we update combobox
 158.122 +	QList <Node> nodeList;
 158.123 +	nodeList = nodeManager->getNodeList();
 158.124 +	combo->clear();
 158.125 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 158.126 +	{
 158.127 +			combo->insertItem(i,nodeList.at(i).nodeName);
 158.128 +	}
 158.129 +	firstTime=1;
 158.130 +
 158.131 +}
 158.132 +
 158.133 +
 158.134 +void MsgWidget::getBundle(Bundle newBundle)
 158.135 +{
 158.136 +	label->setText(newBundle.getData());
 158.137 +}
 158.138 +
 158.139 +void MsgWidget::updateLists()
 158.140 +{
 158.141 +	if(firstTime==0)
 158.142 +	{
 158.143 +		//First time we update combobox
 158.144 +		QList <Node> nodeList;
 158.145 +		nodeList = nodeManager->getNodeList();
 158.146 +		combo->clear();
 158.147 +		for (ushort i = 0; i < nodeList.size(); ++i) 
 158.148 +		{
 158.149 +			combo->insertItem(i,nodeList.at(i).nodeName);
 158.150 +		}
 158.151 +		firstTime=1;
 158.152 +	}
 158.153 +	QList<QString> list;
 158.154 +	list = dir.entryList();
 158.155 +	msgList->clear();
 158.156 +	for (ushort i = 0; i < list.size(); ++i) 
 158.157 +	{
 158.158 +		QListWidgetItem *newItem = new QListWidgetItem;
 158.159 +		newItem->setText(list.at(i));
 158.160 +		msgList->insertItem(i, newItem);
 158.161 +	}
 158.162 +}
 158.163 +
 158.164 +void MsgWidget::showMsg(QListWidgetItem * item)
 158.165 +{
 158.166 +	QString fileName;
 158.167 +	if(item!=NULL)
 158.168 +	{
 158.169 +	fileName = item->text();
 158.170 +	if(fileName.size()>2)
 158.171 +	{
 158.172 +	
 158.173 +	QFile file(dir.filePath(fileName));
 158.174 +	if(file.open(QIODevice::ReadOnly))
 158.175 +	{
 158.176 +		QByteArray data;
 158.177 +		data=file.readAll();
 158.178 +		readText->clear();
 158.179 +		readText->insertPlainText(data);
 158.180 +		file.close();
 158.181 +	}
 158.182 +	}
 158.183 +}}
 158.184 +
 158.185 +
 158.186 +
 158.187 +
 158.188 +
 158.189 +void MsgWidget::composeBundle()
 158.190 +{
 158.191 +	Bundle newBundle;
 158.192 +	QString stringData;// = line->text();
 158.193 +	QByteArray data = line->toPlainText().toAscii();
 158.194 +	if(combo->count()>0)
 158.195 +	{
 158.196 +
 158.197 +		int dstId=nodeManager->nodeList.at(combo->currentIndex()).nodeId;
 158.198 +		QString dstStr = combo->itemText(combo->currentIndex()); 
 158.199 +		newBundle.setContent(seq,sourceId,dstId,data,5,sourceStr.toAscii(),dstStr.toAscii());
 158.200 +		seq++;
 158.201 +		emit sendBundle(newBundle);
 158.202 +		 QMessageBox::information(this, "PRoPHET notSoIM",
 158.203 +		"Message sent!\n");
 158.204 +	}
 158.205 +
 158.206 +}
 158.207 +
 158.208 +
   159.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   159.2 +++ b/x86/ARM/msgWidget.h	Thu Jun 26 17:39:40 2008 +0100
   159.3 @@ -0,0 +1,52 @@
   159.4 +#ifndef MSGWIDGET_H
   159.5 +#define MSGWIDGET_H
   159.6 +#include <QtGui>
   159.7 +#include <bundle.h>
   159.8 +#include <nodeManager.h>
   159.9 +
  159.10 +class MsgWidget : public QWidget
  159.11 +{
  159.12 +
  159.13 +	Q_OBJECT
  159.14 +
  159.15 +private:
  159.16 +		
  159.17 +	QLineEdit *label;
  159.18 +
  159.19 +	
  159.20 +public:
  159.21 +	int seq;
  159.22 +	QComboBox *combo;
  159.23 +	QTextBrowser *readText;
  159.24 +	QFileDialog *file;
  159.25 +	QLineEdit *src;
  159.26 +	QLineEdit *dst;
  159.27 +	QLineEdit *opt;
  159.28 +	QTextEdit *line;
  159.29 +	QLineEdit *srcLine;
  159.30 +	QLineEdit *dstLine;
  159.31 +	MsgWidget(NodeManager*,QWidget *parent = 0);
  159.32 +	NodeManager* nodeManager;
  159.33 +	QTimer* timer;
  159.34 +	bool firstTime;
  159.35 +	QListWidget* msgList;
  159.36 +	QDir dir;
  159.37 +	int sourceId;
  159.38 +	QString sourceStr;
  159.39 +
  159.40 +
  159.41 +
  159.42 +signals:
  159.43 +		void sendBundle(Bundle);
  159.44 +public slots:
  159.45 +        void composeBundle();
  159.46 +public slots:
  159.47 +	void getBundle(Bundle newBundle);
  159.48 +	void updateLists();
  159.49 +	void updatedNodeList(NodeManager* ptr);
  159.50 +	void showMsg(QListWidgetItem *);
  159.51 +};
  159.52 +
  159.53 +#endif
  159.54 +
  159.55 +
   160.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   160.2 +++ b/x86/ARM/neighbourAwareness.cpp	Thu Jun 26 17:39:40 2008 +0100
   160.3 @@ -0,0 +1,368 @@
   160.4 +#include <QtCore>
   160.5 +#include <QtNetwork>
   160.6 +#include <connection.h>
   160.7 +#include <dataPacket.h>
   160.8 +#include <neighbourAwareness.h>
   160.9 +#include <stdio.h>
  160.10 +#include <readFile.h>
  160.11 +#include <main.h>
  160.12 +#include <messageFile.h>
  160.13 +#ifdef Q_WS_X11
  160.14 +#include <sys/types.h>
  160.15 +#include <sys/stat.h> 
  160.16 +#endif
  160.17 +//extern MessageFile *log;
  160.18 +
  160.19 +#define VERSION 2
  160.20 +#define HELLO_DATAGRAM "PROPHET"
  160.21 +//#define ALIVE 15
  160.22 +#define TERMINATOR "žšð3ðšðšq<žðšžð<dšðsd"
  160.23 +#define TERMINATOR2 "ž3š2šžš324šž2šž32šžšž32"
  160.24 +struct DatagramHeader
  160.25 +{
  160.26 +	qint32 version;
  160.27 +	qint32 lenght;
  160.28 +	qint32 checkSum;
  160.29 +	qint32 nr;
  160.30 +};
  160.31 +
  160.32 +ConnectionInfo::ConnectionInfo(QObject *parent)
  160.33 +{
  160.34 +	ReadFile conf;
  160.35 +	alive=conf.getAlive();
  160.36 +	data.clear();
  160.37 +}
  160.38 +
  160.39 +
  160.40 +ConnectionInfo& ConnectionInfo::operator=(const ConnectionInfo& other)
  160.41 +{
  160.42 + id = other.id;
  160.43 + alive = other.alive;
  160.44 + ip = other.ip;
  160.45 + data = other.data;
  160.46 + tcpSocket = other.tcpSocket;
  160.47 + isClient = other.isClient;
  160.48 + conptr= other.conptr;
  160.49 +
  160.50 + return *this;
  160.51 +}
  160.52 +
  160.53 +ConnectionInfo::ConnectionInfo(const ConnectionInfo& other)
  160.54 +{
  160.55 + id = other.id;
  160.56 + alive = other.alive;
  160.57 + ip = other.ip;
  160.58 + data = other.data;
  160.59 + tcpSocket = other.tcpSocket;
  160.60 + isClient = other.isClient;
  160.61 + conptr= other.conptr;
  160.62 +}	
  160.63 +
  160.64 +
  160.65 +NeighAwareServer::NeighAwareServer(QObject* parent) : QTcpServer(parent)
  160.66 +{
  160.67 +}
  160.68 +
  160.69 +void NeighAwareServer::incomingConnection(int socketDescriptor)
  160.70 +{ 
  160.71 +	QTcpSocket* newSocket = new QTcpSocket(this);
  160.72 +	newSocket->setSocketDescriptor(socketDescriptor);
  160.73 +	bool permitNewConnection = false;
  160.74 +	emit newConnectionEstablished(newSocket, permitNewConnection);
  160.75 +	if (permitNewConnection == false)
  160.76 +	{
  160.77 +		newSocket->deleteLater();
  160.78 +		newSocket->disconnectFromHost();
  160.79 +	}
  160.80 +}	
  160.81 +	
  160.82 +
  160.83 +NeighAware::NeighAware(BundleManager* bundleMng, NodeManager* nodeMng)
  160.84 +{
  160.85 +	nodeManager = nodeMng;
  160.86 +	bundleManager = bundleMng;
  160.87 +	terminator.clear();
  160.88 +	terminator.append(TERMINATOR);
  160.89 +	terminator.append(TERMINATOR2);
  160.90 +
  160.91 +	file = new ReadFile;
  160.92 +	myip=file->getNodeIp();
  160.93 +	myip2=file->getNodeIp2();
  160.94 +	broadcast=file->getBroadcast();
  160.95 +	nodeId=file->getNodeId();
  160.96 +	nodeName=file->getNodeName();
  160.97 +	ALIVE=file->getAlive();
  160.98 +	numid = 0;
  160.99 +
 160.100 +
 160.101 +
 160.102 +	tcpServer = new NeighAwareServer(this);
 160.103 +	bool b = connect(tcpServer, SIGNAL(newConnectionEstablished(QTcpSocket*, bool&)), this, SLOT(newConnectionEstablished(QTcpSocket*, bool&)));
 160.104 +	tcpServer->listen(myip,30001);
 160.105 +
 160.106 +	udpSocketp = new QUdpSocket(this);
 160.107 +	udpSocketp->bind(30000);
 160.108 +    connect(udpSocketp, SIGNAL(readyRead()),this, SLOT(processPingDatagrams()));
 160.109 +	
 160.110 +	broadcastTimer = new QTimer(this);
 160.111 +	connect(broadcastTimer, SIGNAL(timeout()), this, SLOT(broadcastDatagram()));
 160.112 +	broadcastTimer->start(1000);
 160.113 +
 160.114 +	//DEBUG
 160.115 +	log = new MessageFile;
 160.116 +	log->set("connections.log", 1000000, 5);
 160.117 +}
 160.118 +
 160.119 +void NeighAware::newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection)
 160.120 +{ 
 160.121 +	QHostAddress ip;
 160.122 +	ip = newSocket->peerAddress();
 160.123 +	QString bla = ip.toString();
 160.124 +	int index=-1;
 160.125 +	for(int i=0;i<connectionlist.size();i++)
 160.126 +	{
 160.127 +		QString bla = ip.toString();
 160.128 +		if(ip == connectionlist.at(i).ip)
 160.129 +			index=i;
 160.130 +	}
 160.131 +	if(index==-1)
 160.132 +	{
 160.133 +		newSocket->connect(newSocket,SIGNAL(readyRead()),this,SLOT(processPendingDatagrams()));
 160.134 +		newSocket->connect(newSocket,SIGNAL(disconnected()),this,SLOT(stateChanged()));
 160.135 +		newSocket->connect(newSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(errorDecode(QAbstractSocket::SocketError)));
 160.136 +		//We add a new connection to the list
 160.137 +		ConnectionInfo connectioninfo;
 160.138 +		//Ading
 160.139 +			connectioninfo.conptr = new Connection(numid,file->getNodeId(),file->getNodeName(),nodeManager,bundleManager,this);
 160.140 +			newSocket->connect(connectioninfo.conptr,SIGNAL(sendDataPacket(DataPacket)),this,SLOT(sendDatagram(DataPacket)));
 160.141 +
 160.142 +		///
 160.143 +		connectioninfo.ip=ip;
 160.144 +		connectioninfo.id=numid;
 160.145 +		connectioninfo.alive=ALIVE;
 160.146 +		connectioninfo.tcpSocket = newSocket;
 160.147 +		connectioninfo.isClient = false;
 160.148 +		connectionlist << connectioninfo;
 160.149 +		numid++;
 160.150 +		permitNewConnection=true;
 160.151 +		sendDebugConList(connectionlist);
 160.152 +		QString logString;
 160.153 +		QHostAddress tmp=connectioninfo.ip;
 160.154 +		logString.append("New connection(S):");	
 160.155 +		logString.append(tmp.toString());
 160.156 +		log->addLog(0,logString);
 160.157 +
 160.158 +	}
 160.159 +}
 160.160 +
 160.161 +void NeighAware::broadcastDatagram()
 160.162 +{  	
 160.163 +	QByteArray datagram=HELLO_DATAGRAM;
 160.164 +	QString debug = broadcast.toString();
 160.165 + 	udpSocketp->writeDatagram(datagram.data(), datagram.size(), broadcast, 30000);
 160.166 +	for(int i=0;i<connectionlist.count();i++)
 160.167 +	{
 160.168 +		connectionlist[i].alive--;
 160.169 +		if(connectionlist[i].alive<=0)
 160.170 +		{
 160.171 +			
 160.172 +			connectionlist[i].tcpSocket->disconnectFromHost();
 160.173 +//			connectionlist[i].tcpSocket->deleteLater();
 160.174 +			connectionlist[i].conptr->deleteLater();
 160.175 +
 160.176 +			connectionlist.removeAt(i);	
 160.177 +			sendDebugConList(connectionlist);
 160.178 +		}
 160.179 +		sendDebugConList(connectionlist);
 160.180 +	}
 160.181 +	QFile f("connections.txt");
 160.182 +	if (f.open(QIODevice::WriteOnly) == true)
 160.183 +	{
 160.184 +		for(int i=0;i<connectionlist.size();i++)
 160.185 +		{
 160.186 +			f.write(connectionlist[i].ip.toString().toAscii());
 160.187 +			if (connectionlist[i].isClient == true)
 160.188 +				f.write(QString("\tclient\r\n").toAscii());
 160.189 +			else
 160.190 +				f.write(QString("\tserver\r\n").toAscii());
 160.191 +		}
 160.192 +		f.close();
 160.193 +	}
 160.194 +}
 160.195 +
 160.196 +void NeighAware::processPingDatagrams()
 160.197 +{
 160.198 +	while (udpSocketp->hasPendingDatagrams()) 
 160.199 +	{
 160.200 +        QByteArray datagram;
 160.201 +		
 160.202 +		quint16 port;
 160.203 +		QHostAddress ip;
 160.204 +		bool insert=true;
 160.205 +		datagram.resize(udpSocketp->pendingDatagramSize());
 160.206 +        udpSocketp->readDatagram(datagram.data(), datagram.size(), &ip, &port);
 160.207 +		QString bla = ip.toString();
 160.208 +		//Is the node in the list?
 160.209 +		if ((ip==myip) || (ip==myip2))
 160.210 +		{
 160.211 +			insert=false;
 160.212 +		}
 160.213 +		else
 160.214 +		{
 160.215 +			for(int i=0;i<connectionlist.size();i++)
 160.216 +			{
 160.217 +			 
 160.218 +				if(connectionlist.at(i).ip ==ip)
 160.219 +				{ 
 160.220 +					insert=false;
 160.221 +				}
 160.222 +			}
 160.223 +		}
 160.224 +		//If not we insert it.
 160.225 +		if(insert==true)
 160.226 +		{
 160.227 +			QTcpSocket* newSocket = new QTcpSocket(this);
 160.228 +			newSocket->connect(newSocket,SIGNAL(readyRead()),this,SLOT(processPendingDatagrams()));
 160.229 +			newSocket->connect(newSocket,SIGNAL(disconnected()),this,SLOT(stateChanged()));
 160.230 +			newSocket->connect(newSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(errorDecode(QAbstractSocket::SocketError)));
 160.231 +			newSocket->connectToHost(ip, 30001);
 160.232 +			//We add a new connection to the list
 160.233 +			ConnectionInfo connectioninfo;
 160.234 +			//Adding
 160.235 +			connectioninfo.conptr = new Connection(numid,file->getNodeId(),file->getNodeName(),nodeManager,bundleManager,this);
 160.236 +			newSocket->connect(connectioninfo.conptr,SIGNAL(sendDataPacket(DataPacket)),this,SLOT(sendDatagram(DataPacket)));
 160.237 +
 160.238 +			///
 160.239 +			connectioninfo.ip=ip;
 160.240 +			connectioninfo.id=numid;
 160.241 +			connectioninfo.alive=ALIVE;
 160.242 +			connectioninfo.tcpSocket = newSocket;
 160.243 +			connectioninfo.isClient = true;
 160.244 +			connectionlist << connectioninfo;
 160.245 +			bool b = connectionlist[connectionlist.count()-1].isClient;
 160.246 +			numid++;
 160.247 +			sendDebugConList(connectionlist);
 160.248 +			QString logString;
 160.249 +			QHostAddress tmp=connectioninfo.ip;
 160.250 +			logString.append("New connection(C):");	
 160.251 +			logString.append(tmp.toString());
 160.252 +			log->addLog(0,logString);
 160.253 +		}
 160.254 +	}
 160.255 +}
 160.256 +
 160.257 +
 160.258 +void NeighAware::sendDatagram(DataPacket datapacket)
 160.259 +{  	
 160.260 +	QHostAddress ip;
 160.261 +	for(int i=0;i<connectionlist.size();i++)
 160.262 +	{
 160.263 +		if(connectionlist.at(i).id==datapacket.id) 
 160.264 +		{
 160.265 +			ip=connectionlist.at(i).ip;
 160.266 +
 160.267 +			//Preparing heder
 160.268 +			QByteArray newDatagram;
 160.269 +			newDatagram.append(datapacket.data);
 160.270 +			//Appending terminator
 160.271 +			newDatagram.append(terminator);
 160.272 +			//Sending datagram 
 160.273 +			connectionlist[i].tcpSocket->write(newDatagram);
 160.274 +		}
 160.275 +	}
 160.276 +
 160.277 +
 160.278 +}
 160.279 +
 160.280 +
 160.281 +
 160.282 +void NeighAware::stateChanged()
 160.283 +{
 160.284 +	QString logString;
 160.285 +	logString.append(">>>>>>>>>>>>State:");
 160.286 +	log->addLog(0,logString);
 160.287 +
 160.288 +	for(int i=0;i<connectionlist.count();i++)
 160.289 +	{
 160.290 +		if((connectionlist.at(i).tcpSocket->state() != QAbstractSocket::ConnectedState))    
 160.291 +		{
 160.292 +		QString logString;
 160.293 +		QHostAddress tmp=connectionlist.at(i).ip;
 160.294 +		logString.append("Removing (State) IP:");	
 160.295 +		logString.append(tmp.toString());		
 160.296 +		log->addLog(0,logString);
 160.297 +			
 160.298 +			connectionlist[i].tcpSocket->deleteLater();
 160.299 +			connectionlist[i].conptr->deleteLater();
 160.300 +			connectionlist.removeAt(i);	
 160.301 +			sendDebugConList(connectionlist);
 160.302 +		}
 160.303 +	}
 160.304 +}
 160.305 +
 160.306 +void NeighAware::errorDecode(QAbstractSocket::SocketError error)
 160.307 +{
 160.308 +	int i=error;
 160.309 +		QString logString;
 160.310 +		QHostAddress tmp=connectionlist.at(i).ip;
 160.311 +		logString.append("Removing (Error) IP:");	
 160.312 +		logString.append(tmp.toString());		
 160.313 +		log->addLog(0,logString);
 160.314 +	
 160.315 +	for(int i=0;i<connectionlist.count();i++)
 160.316 +	{
 160.317 +		if((connectionlist.at(i).tcpSocket->state() != QAbstractSocket::ConnectedState))    
 160.318 +		{
 160.319 +			connectionlist[i].tcpSocket->deleteLater();
 160.320 +			connectionlist[i].conptr->deleteLater();
 160.321 +			connectionlist.removeAt(i);	
 160.322 +			sendDebugConList(connectionlist);
 160.323 +		}
 160.324 +	}
 160.325 +
 160.326 +			QFile f("error.txt");
 160.327 +		if (f.open(QIODevice::WriteOnly|QIODevice::Append) == true)
 160.328 +		{
 160.329 +			f.write(QString("Error %1\n\r").arg((int)error).toAscii());
 160.330 +			f.close();
 160.331 +		}
 160.332 +
 160.333 +}
 160.334 +
 160.335 +
 160.336 +
 160.337 +void NeighAware::processPendingDatagrams()
 160.338 +{
 160.339 +	for(int i=0;i<connectionlist.size();i++)
 160.340 +	{
 160.341 +		QByteArray packetPart;
 160.342 +		packetPart=connectionlist[i].tcpSocket->readAll();
 160.343 +		if(packetPart.size()>0)
 160.344 +		{
 160.345 +			//Updating alive variable
 160.346 +			connectionlist[i].alive=ALIVE;
 160.347 +			//We add datagram to data
 160.348 +			connectionlist[i].data.append(packetPart);
 160.349 +			int idx;
 160.350 +			idx = connectionlist[i].data.indexOf(terminator,0);
 160.351 +			while(idx != -1)
 160.352 +			{
 160.353 +				//We remove the terminator
 160.354 +				QByteArray tempData;
 160.355 +				tempData=connectionlist[i].data.mid(0,idx);
 160.356 +				connectionlist[i].data.remove(0,(idx+terminator.size()));
 160.357 +				DataPacket send;
 160.358 +				send.data.append(tempData);
 160.359 +				send.id=connectionlist[i].id;
 160.360 +				connectionlist[i].conptr->receiveDatagram(send);
 160.361 +				idx = connectionlist[i].data.indexOf(terminator,0);
 160.362 +			}
 160.363 +			
 160.364 +		}
 160.365 +	}
 160.366 +}
 160.367 +
 160.368 +		
 160.369 +		
 160.370 +
 160.371 +		
   161.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   161.2 +++ b/x86/ARM/neighbourAwareness.h	Thu Jun 26 17:39:40 2008 +0100
   161.3 @@ -0,0 +1,99 @@
   161.4 +#ifndef NEIGHBOURAWARENESS_H
   161.5 +#define NEIGHBOURAWARENESS_H
   161.6 +
   161.7 +//#include <iostream.h>
   161.8 +#include <QtCore>
   161.9 +#include <QtNetwork>
  161.10 +#include <connection.h>
  161.11 +#include <dataPacket.h>
  161.12 +#include <neighbourAwareness.h>
  161.13 +#include <bundleManager.h>
  161.14 +#include <nodeManager.h>
  161.15 +#include <messageFile.h>
  161.16 +#include <readFile.h>
  161.17 +
  161.18 +
  161.19 +class ConnectionInfo : public QObject 
  161.20 +{
  161.21 +	Q_OBJECT
  161.22 +	public:
  161.23 +	ConnectionInfo(QObject *parent = 0);
  161.24 +	ConnectionInfo(const ConnectionInfo& other);
  161.25 +	ConnectionInfo& operator=(const ConnectionInfo& other);
  161.26 +	QHostAddress ip;
  161.27 +	QByteArray data;
  161.28 +	QTcpSocket* tcpSocket;
  161.29 +	QTcpSocket* clientTcpSocket;
  161.30 +	Connection *conptr;
  161.31 +	int alive;
  161.32 +	int id;
  161.33 +	bool isClient;
  161.34 +};
  161.35 +
  161.36 +class NeighAwareServer : public QTcpServer
  161.37 +{
  161.38 +	Q_OBJECT
  161.39 +
  161.40 +public:
  161.41 +	NeighAwareServer(QObject *parent = 0);
  161.42 +
  161.43 +protected slots:
  161.44 +	virtual void incomingConnection(int socketDescripton);
  161.45 +
  161.46 +signals:
  161.47 +	void newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection);
  161.48 +
  161.49 +};
  161.50 +
  161.51 +
  161.52 +class NeighAware : public QObject 
  161.53 +{
  161.54 +
  161.55 +
  161.56 +Q_OBJECT
  161.57 +
  161.58 +public:
  161.59 +
  161.60 +	NeighAware(BundleManager*, NodeManager*);
  161.61 +	NodeManager *nodeManager;
  161.62 +	BundleManager *bundleManager;
  161.63 +
  161.64 +	QList<ConnectionInfo> connectionlist;
  161.65 +   	QByteArray terminator; 	
  161.66 +
  161.67 +	QHostAddress myip;
  161.68 +	QHostAddress myip2;
  161.69 +	QHostAddress broadcast;
  161.70 +	int nodeId;
  161.71 +	QString nodeName;
  161.72 +	int ALIVE;
  161.73 +	int numid;
  161.74 +	ReadFile *file;
  161.75 +
  161.76 +	NeighAwareServer *tcpServer;
  161.77 +	QUdpSocket *udpSocketp;
  161.78 +	QTimer *broadcastTimer;
  161.79 +	QTimer *testTimer;
  161.80 +	MessageFile* log;
  161.81 +
  161.82 +	int logOption;
  161.83 +	
  161.84 +public slots:
  161.85 +	void newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection);
  161.86 +
  161.87 +		
  161.88 +    void errorDecode(QAbstractSocket::SocketError);
  161.89 +	void stateChanged();
  161.90 +	void broadcastDatagram();
  161.91 +	void sendDatagram(DataPacket datapacket);
  161.92 +	void processPendingDatagrams();
  161.93 +	void processPingDatagrams();
  161.94 +//	void addTcpConnection();
  161.95 +
  161.96 +signals:
  161.97 +	void sendDebugConList(QList<ConnectionInfo>);
  161.98 +	void passDatagram(DataPacket);	
  161.99 +
 161.100 +};
 161.101 +
 161.102 +#endif
   162.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   162.2 +++ b/x86/ARM/node.cpp	Thu Jun 26 17:39:40 2008 +0100
   162.3 @@ -0,0 +1,59 @@
   162.4 +#include <QtCore>
   162.5 +#include <node.h>
   162.6 +
   162.7 +
   162.8 +Node::Node(QObject *parent)
   162.9 +{
  162.10 +			nodeId=0;
  162.11 +			probability=0.0;
  162.12 +			nodeName.clear();
  162.13 +			flag=-1;
  162.14 +}
  162.15 +
  162.16 +Node& Node::operator=(const Node& other)
  162.17 +{
  162.18 + nodeId = other.nodeId;
  162.19 + flag = other.flag;
  162.20 + probability = other.probability;
  162.21 + nodeName = other.nodeName;
  162.22 + return *this;
  162.23 +}
  162.24 +
  162.25 +Node::Node(const Node& other)
  162.26 +{
  162.27 + nodeId = other.nodeId;
  162.28 + flag = other.flag;
  162.29 + probability = other.probability;
  162.30 + nodeName = other.nodeName;
  162.31 +}	
  162.32 +	
  162.33 +void Node::setContent(int id,float pro,int f,QString name)
  162.34 +{
  162.35 +	flag=f;
  162.36 +	nodeId=id;
  162.37 +	probability=pro;
  162.38 +	nodeName=name;
  162.39 +
  162.40 +}
  162.41 +
  162.42 +int Node::getId()
  162.43 +{
  162.44 +	return nodeId;
  162.45 +}
  162.46 +
  162.47 +int Node::getFlag()
  162.48 +{
  162.49 +	
  162.50 +	return flag;
  162.51 +}
  162.52 +
  162.53 +float Node::getProbability()
  162.54 +{
  162.55 +	return probability;
  162.56 +}
  162.57 +
  162.58 +QString Node::getName()
  162.59 +{
  162.60 +	return nodeName;
  162.61 +}
  162.62 +
   163.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   163.2 +++ b/x86/ARM/node.h	Thu Jun 26 17:39:40 2008 +0100
   163.3 @@ -0,0 +1,29 @@
   163.4 +#ifndef NODE_H
   163.5 +#define NODE_H
   163.6 +
   163.7 +#include <QtCore>
   163.8 +
   163.9 +class Node : public QObject
  163.10 +{
  163.11 +
  163.12 +Q_OBJECT 
  163.13 +	public:
  163.14 +	int nodeId;
  163.15 +	float probability;
  163.16 +	int flag;
  163.17 +	QString nodeName;
  163.18 +
  163.19 +
  163.20 +	Node(QObject *parent = 0);
  163.21 +	Node(const Node& other);
  163.22 +	Node& operator=(const Node& other);
  163.23 +
  163.24 +
  163.25 +	void setContent(int,float,int,QString);
  163.26 +	int getId();
  163.27 +	int getFlag(); 
  163.28 +	float getProbability();
  163.29 +	QString getName();
  163.30 +};
  163.31 +
  163.32 +#endif
  163.33 \ No newline at end of file
   164.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   164.2 +++ b/x86/ARM/nodeManager.cpp	Thu Jun 26 17:39:40 2008 +0100
   164.3 @@ -0,0 +1,297 @@
   164.4 +#include <QtCore>
   164.5 +#include <nodeManager.h>
   164.6 +#include <node.h>
   164.7 +#include <readFile.h>
   164.8 +#include <math.h>
   164.9 +#include <qmutex.h>
  164.10 +
  164.11 +//#define AGING_TIMER 900
  164.12 +//#define PENCOUNTER 0.75
  164.13 +//#define BETA 0.25
  164.14 +//#define GAMMA 0.90
  164.15 +
  164.16 +NodeManager::NodeManager()//BundleManager* bundleMng)
  164.17 +{
  164.18 +	ReadFile conf;
  164.19 +	BETA=0.75;
  164.20 +	PENCOUNTER=conf.getPEncounter();
  164.21 +	GAMMA=conf.getGamma();
  164.22 +	AGING_TIMER=conf.getAgingTimer();
  164.23 +	int WRITETIMER =conf.getWriteToFileTimer();
  164.24 +	int fileOption = conf.getUseFileNodes();
  164.25 +	//Create and connect Hello Timer
  164.26 +	//bundleManager = bundleMng;
  164.27 +	agingTimer = new QTimer();
  164.28 +	storagePath=conf.getStoragePath();
  164.29 +	dir.setPath(storagePath);
  164.30 +	option=conf.getUseFileNodes();
  164.31 +    connect(agingTimer, SIGNAL(timeout()), this, SLOT(aging()));
  164.32 +    agingTimer->start(AGING_TIMER);
  164.33 +	if(fileOption==1)
  164.34 +	{
  164.35 +		readFromFile();
  164.36 +		writeToFileTimer = new QTimer();
  164.37 +		connect(writeToFileTimer, SIGNAL(timeout()), this, SLOT(saveToFile()));
  164.38 +		writeToFileTimer->start(WRITETIMER);
  164.39 +		emit sendDebugNodeList(nodeList);
  164.40 +	}
  164.41 +}
  164.42 +
  164.43 +
  164.44 +void NodeManager::aging()
  164.45 +{
  164.46 +	for (ushort i = 0; i < nodeList.size(); ++i) 
  164.47 +	{
  164.48 +			//AGE PROBABILITY UPDATE
  164.49 +			Node tempNode;
  164.50 +			tempNode=nodeList.at(i);
  164.51 +			tempNode.probability=tempNode.probability*GAMMA;
  164.52 +			nodeList.replace(i,tempNode);
  164.53 +
  164.54 +	}
  164.55 +	//DEBUG
  164.56 +	emit sendDebugNodeList(nodeList);
  164.57 +}
  164.58 +
  164.59 +void NodeManager::saveToFile()
  164.60 +{
  164.61 +	QString fileName =storagePath;
  164.62 +	fileName.append("nodes.txt");
  164.63 +	QFile file(fileName);
  164.64 +	if (!file.open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text))
  164.65 +           return;
  164.66 +	else
  164.67 +	{
  164.68 +	QDateTime realTime;
  164.69 +	realTime=realTime.currentDateTime ();
  164.70 +	QString time=realTime.toString("MM/dd/yyyy hh:mm:ss");
  164.71 +	time.append("\n");
  164.72 +	file.write(time.toAscii ());
  164.73 +	for (ushort i = 0; i < nodeList.size(); ++i) 
  164.74 +	{
  164.75 +		QString nodeString;
  164.76 +		nodeString.append(QString("%1").arg((int)nodeList.at(i).nodeId));
  164.77 +		nodeString.append("\t");
  164.78 +		nodeString.append(nodeList.at(i).nodeName);
  164.79 +		nodeString.append("\t");
  164.80 +		nodeString.append(QString("%1").arg((float)nodeList.at(i).probability));
  164.81 +		nodeString.append("\t");
  164.82 +		nodeString.append(QString("%1").arg((int)nodeList.at(i).flag));
  164.83 +		nodeString.append("\n");
  164.84 +		file.write(nodeString.toAscii ());
  164.85 +	}
  164.86 +	file.close();
  164.87 +}
  164.88 +}
  164.89 +
  164.90 +
  164.91 +void NodeManager::readFromFile()
  164.92 +{
  164.93 +	ReadFile conf;
  164.94 +	QString fileName =storagePath;
  164.95 +	fileName.append("nodes.txt");
  164.96 +	QFile file(fileName);
  164.97 +	file.open(QIODevice::ReadOnly | QIODevice::Text);
  164.98 +	QString firstLine;
  164.99 +	QString line;
 164.100 +	//First we read date and time
 164.101 +	firstLine=file.readLine();
 164.102 +	//Then we add nodes
 164.103 +	line=file.readLine();
 164.104 +	while(line.size()>0)
 164.105 +	{
 164.106 +		//Parsing node
 164.107 +		int pos;
 164.108 +		QString temp;
 164.109 +		Node newNode;
 164.110 +		//Node ID
 164.111 +		pos=line.indexOf("\t",0);
 164.112 +		temp=line.mid(0,pos);
 164.113 +		newNode.nodeId=temp.toInt(0,10);
 164.114 +		line.remove(0,pos+1);
 164.115 +		//Node Name
 164.116 +		pos=line.indexOf("\t",0);
 164.117 +		temp=line.mid(0,pos);
 164.118 +		newNode.nodeName=temp;
 164.119 +		line.remove(0,pos+1);
 164.120 +		//Node Probability
 164.121 +		pos=line.indexOf("\t",0);
 164.122 +		temp=line.mid(0,pos);
 164.123 +		newNode.probability=temp.toFloat();
 164.124 +		line.remove(0,pos+1);
 164.125 +		//Node Flag
 164.126 +		pos=line.indexOf("\t",0);
 164.127 +		temp=line.mid(0,pos);
 164.128 +		newNode.flag=temp.toInt(0,10);
 164.129 +		line.remove(0,pos+1);
 164.130 +		//Adding Node
 164.131 +		nodeList.append(newNode);
 164.132 +		line=file.readLine();
 164.133 +	}
 164.134 +	//Aging the nodes
 164.135 +	int option=conf.getAgeFileNodes();
 164.136 +	if(option==1)
 164.137 +	{
 164.138 +		QDateTime oldTime;
 164.139 +		firstLine.chop(1);
 164.140 +		oldTime=oldTime.fromString(firstLine,"MM/dd/yyyy hh:mm:ss");
 164.141 +		QDateTime realTime;
 164.142 +		realTime=realTime.currentDateTime ();
 164.143 +		int dif= oldTime.secsTo(realTime);
 164.144 +		int normalAging = conf.getAgingTimer()/1000;
 164.145 +		int aging=dif/normalAging;
 164.146 +		//Aging all nodes
 164.147 +		for (ushort i = 0; i < nodeList.size(); ++i) 
 164.148 +		{
 164.149 +			//AGE PROBABILITY UPDATE
 164.150 +			Node tempNode;
 164.151 +			tempNode=nodeList.at(i);
 164.152 +			tempNode.probability=tempNode.probability*(pow(GAMMA,aging));
 164.153 +			nodeList.replace(i,tempNode);
 164.154 +		}
 164.155 +	}
 164.156 +	emit updatedNodeList(this);
 164.157 +	file.close();
 164.158 +}
 164.159 +
 164.160 +
 164.161 +
 164.162 +int NodeManager::getId(QString str)
 164.163 +{
 164.164 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 164.165 +	{
 164.166 +			QString s;
 164.167 +			QString n;
 164.168 +			s=str;
 164.169 +			n=nodeList.at(i).nodeName;
 164.170 +			if(nodeList.at(i).nodeName==str)
 164.171 +				return nodeList.at(i).nodeId;
 164.172 +	}
 164.173 +	return 0;
 164.174 +}
 164.175 +
 164.176 +
 164.177 +void NodeManager::addDictionary(int ourNodeId,QList<Node> dictionary)
 164.178 +{
 164.179 +	for (ushort i = 0; i < dictionary.size(); ++i) 
 164.180 +	{
 164.181 +		int isInTheList=0;
 164.182 +		for (ushort n = 0; n < nodeList.size(); ++n) 
 164.183 +		{
 164.184 +			if(dictionary.at(i).nodeId==nodeList.at(n).nodeId)
 164.185 +				isInTheList++;
 164.186 +			
 164.187 +		}
 164.188 +		if((isInTheList==0)&&(dictionary.at(i).nodeId!=ourNodeId))
 164.189 +		{
 164.190 +			nodeList.append(dictionary.at(i));
 164.191 +			//!!!!!!!!!!!!!!!!!!!!!!
 164.192 +				//DEBUG
 164.193 +			emit sendDebugNodeList(nodeList);
 164.194 +			emit updatedNodeList(this);
 164.195 +		}
 164.196 +	}
 164.197 +}
 164.198 +
 164.199 +void NodeManager::encounterNode(int encounterNodeId,int encounterNodeType,QString encounterNodeName)
 164.200 +{
 164.201 +	int isInTheList=0;
 164.202 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 164.203 +	{
 164.204 +		//ENCOUNTER PROBABILITY UPDATE
 164.205 +		if(nodeList.at(i).nodeId==encounterNodeId)
 164.206 +		{
 164.207 +				Node tempNode;
 164.208 +				tempNode=nodeList.at(i);
 164.209 +				//ENCOUNTING EQUATION
 164.210 +				tempNode.probability=tempNode.probability+((1-tempNode.probability)*PENCOUNTER);
 164.211 +				nodeList.replace(i,tempNode);
 164.212 +				isInTheList++;
 164.213 +		}
 164.214 +	}
 164.215 +	//UNKNOW NEW NODE
 164.216 +	if(isInTheList==0) 
 164.217 +	{
 164.218 +		Node tempNode;
 164.219 +		tempNode.nodeId=encounterNodeId;
 164.220 +		tempNode.nodeName=encounterNodeName;
 164.221 +		tempNode.flag=-1;
 164.222 +		tempNode.probability=PENCOUNTER;
 164.223 +		nodeList.append(tempNode);
 164.224 +		//!!!!!!!!!!!!!!!!!!!!!!
 164.225 +		//DEBUG
 164.226 +		emit sendDebugNodeList(nodeList);
 164.227 +		emit updatedNodeList(this);
 164.228 +	}
 164.229 +}
 164.230 +
 164.231 +
 164.232 +void NodeManager::addRIB(QList<Node>RIB,int encounterNodeId)//RIB=P_(B,x)
 164.233 +{
 164.234 +	float P_AB=1;
 164.235 +	//First we find P_AB
 164.236 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 164.237 +	{
 164.238 +		if(nodeList.at(i).nodeId==encounterNodeId)
 164.239 +			P_AB = nodeList.at(i).probability;
 164.240 +	}
 164.241 +	//Then we update all transitivites
 164.242 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 164.243 +	{
 164.244 +		//TRANSITIVE PROBABILITY UPDATE
 164.245 +		if(nodeList.at(i).nodeId!=encounterNodeId)
 164.246 +		{
 164.247 +			int nodeCId = nodeList.at(i).nodeId;
 164.248 +			float P_AC = nodeList.at(i).probability;
 164.249 +			float P_BC = 1;
 164.250 +			float newP_AC;
 164.251 +			int flag=0;
 164.252 +			for (ushort n = 0; n < RIB.size(); ++n) 
 164.253 +			{
 164.254 +				if(RIB.at(n).nodeId==nodeCId)
 164.255 +				{
 164.256 +					P_BC = RIB.at(n).probability;
 164.257 +					flag = RIB.at(n).flag;
 164.258 +				}
 164.259 +			}
 164.260 +			newP_AC=P_AC+((1-P_AC) * P_AB * P_BC * BETA);
 164.261 +			//Adding data to list
 164.262 +			Node tempNode;
 164.263 +			tempNode=nodeList.at(i);
 164.264 +			tempNode.probability=newP_AC;
 164.265 +			tempNode.flag=flag;
 164.266 +			nodeList.replace(i,tempNode);
 164.267 +		}
 164.268 +
 164.269 +	}
 164.270 +	//DEBUG
 164.271 +	emit sendDebugNodeList(nodeList);
 164.272 +}
 164.273 +
 164.274 +
 164.275 +void NodeManager::addNode(Node newNode)
 164.276 +{
 164.277 +	nodeList.append(newNode);
 164.278 +	//!!!!!!!!!!!!!!!!!!!!!!!!!!!
 164.279 +	emit updatedNodeList(this);
 164.280 +	//DEBUG
 164.281 +	emit sendDebugNodeList(nodeList);
 164.282 +}
 164.283 +
 164.284 +QList<Node> NodeManager::getNodeList()
 164.285 +{	
 164.286 +	return nodeList;
 164.287 +}
 164.288 +
 164.289 +//Gives out only the list of nodes with RIB information
 164.290 +QList<Node> NodeManager::getRIBNodeList()
 164.291 +{	
 164.292 +	QList<Node> newNodeList;
 164.293 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 164.294 +	{
 164.295 +		if(nodeList.at(i).flag != -1)
 164.296 +			newNodeList.append(nodeList.at(i));
 164.297 +	
 164.298 +	}
 164.299 +	return newNodeList;
 164.300 +}
 164.301 \ No newline at end of file
   165.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   165.2 +++ b/x86/ARM/nodeManager.h	Thu Jun 26 17:39:40 2008 +0100
   165.3 @@ -0,0 +1,46 @@
   165.4 +#ifndef NODEMANAGER_H
   165.5 +#define NODEMANAGER_H
   165.6 +
   165.7 +#include <QtCore>
   165.8 +#include <node.h>
   165.9 +//#include <messageFile.cpp>
  165.10 +//#include <bundleManager.h>
  165.11 +
  165.12 +class NodeManager : public QObject
  165.13 +{
  165.14 +	Q_OBJECT
  165.15 +public:
  165.16 +	int AGING_TIMER;
  165.17 +	float PENCOUNTER;
  165.18 +	float BETA;
  165.19 +	float GAMMA;
  165.20 +
  165.21 +//	BundleManager *bundleManager;
  165.22 +	
  165.23 +	void addNode(Node);
  165.24 +	int getId(QString);
  165.25 +	void addDictionary(int ourNodeId,QList<Node>);
  165.26 +	void addRIB(QList<Node>RIB,int encounterNodeId);
  165.27 +	void encounterNode(int encounterNodeId,int encounterNodeType,QString encounterNodeName);
  165.28 +	QList<Node> getNodeList();
  165.29 +	QList<Node> getRIBNodeList();
  165.30 +	QList<Node> nodeList;
  165.31 +	QTimer *agingTimer;
  165.32 +	QTimer *writeToFileTimer;
  165.33 +//	NodeManager(BundleManager*);
  165.34 +	NodeManager();
  165.35 +	QString storagePath;
  165.36 +	//MessageFile* log; 
  165.37 +	QDir dir;
  165.38 +	int option;
  165.39 +
  165.40 +
  165.41 +signals:
  165.42 +		void sendDebugNodeList(QList<Node>);
  165.43 +		void updatedNodeList(NodeManager*);
  165.44 +public slots:
  165.45 +		void aging();
  165.46 +		void saveToFile();
  165.47 +		void readFromFile();
  165.48 +};
  165.49 +#endif
  165.50 \ No newline at end of file
   166.1 Binary file x86/ARM/prophet has changed
   167.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   167.2 +++ b/x86/ARM/prophet.dsp	Thu Jun 26 17:39:40 2008 +0100
   167.3 @@ -0,0 +1,647 @@
   167.4 +# Microsoft Developer Studio Project File - Name="prophet" - Package Owner=<4>
   167.5 +# Microsoft Developer Studio Generated Build File, Format Version 6.00
   167.6 +# ** DO NOT EDIT **
   167.7 +
   167.8 +# TARGTYPE "Win32 (x86) Console Application" 0x0103
   167.9 +
  167.10 +CFG=prophet - Win32 Debug
  167.11 +!MESSAGE This is not a valid makefile. To build this project using NMAKE,
  167.12 +!MESSAGE use the Export Makefile command and run
  167.13 +!MESSAGE 
  167.14 +!MESSAGE NMAKE /f "prophet.mak".
  167.15 +!MESSAGE 
  167.16 +!MESSAGE You can specify a configuration when running NMAKE
  167.17 +!MESSAGE by defining the macro CFG on the command line. For example:
  167.18 +!MESSAGE 
  167.19 +!MESSAGE NMAKE /f "prophet.mak" CFG="prophet - Win32 Debug"
  167.20 +!MESSAGE 
  167.21 +!MESSAGE Possible choices for configuration are:
  167.22 +!MESSAGE 
  167.23 +!MESSAGE "prophet - Win32 Debug" (based on "Win32 (x86) Console Application")
  167.24 +!MESSAGE "prophet - Win32 Release" (based on "Win32 (x86) Console Application")
  167.25 +!MESSAGE 
  167.26 +
  167.27 +# Begin Project
  167.28 +# PROP AllowPerConfigDependencies 0
  167.29 +# PROP Scc_ProjName ""
  167.30 +# PROP Scc_LocalPath ""
  167.31 +CPP=cl
  167.32 +MTL=midl
  167.33 +RSC=rc
  167.34 +BSC32=bscmake.exe
  167.35 +
  167.36 +!IF  "$(CFG)" == "prophet - Win32 Debug"
  167.37 +
  167.38 +# PROP BASE Use_MFC 0
  167.39 +# PROP BASE Use_Debug_Libraries 1
  167.40 +# PROP BASE Output_Dir "debug"
  167.41 +# PROP BASE Intermediate_Dir "debug"
  167.42 +# PROP BASE Target_Dir ""
  167.43 +# PROP Use_MFC 0
  167.44 +# PROP Use_Debug_Libraries 1
  167.45 +# PROP Output_Dir "debug"
  167.46 +# PROP Intermediate_Dir "debug"
  167.47 +# PROP Target_Dir ""
  167.48 +# ADD CPP /I"C:/Qt/4.0.1/include/QtNetwork" /I"C:/Qt/4.0.1/include/QtCore" /I"C:/Qt/4.0.1/include" /I"." /I"C:/Qt/4.0.1/include/ActiveQt" /I"debug" /I"." /I"C:/Qt/4.0.1/mkspecs/win32-msvc" /c /FD -nologo -Zm200 -Zi -MDd -Zi -MDd -GR -GX -W3  /D "_CONSOLE"  /D UNICODE /D QT_LARGEFILE_SUPPORT /D QT_DLL /D QT_CORE_LIB /D QT_NETWORK_LIB /D QT_THREAD_SUPPORT  /D "WIN32"  
  167.49 +# ADD MTL /nologo /mktyplib203 /win32 /D "_DEBUG"
  167.50 +# ADD RSC /l 0x409 /d "_DEBUG"
  167.51 +# ADD BSC32 /nologo
  167.52 +LINK32=link
  167.53 +# ADD LINK32 /NOLOGO /DEBUG /DEBUG /SUBSYSTEM:console /incremental:yes /LIBPATH:"C:\Qt\4.0.1\lib" "C:\Qt\4.0.1\lib\QtCored4.lib" "C:\Qt\4.0.1\lib\QtNetworkd4.lib" /out:"debug\prophet.exe" 
  167.54 +
  167.55 +!ELSEIF  "$(CFG)" == "prophet - Win32 Release"
  167.56 +
  167.57 +# PROP BASE Use_MFC 0
  167.58 +# PROP BASE Use_Debug_Libraries 0
  167.59 +# PROP BASE Output_Dir "release"
  167.60 +# PROP BASE Intermediate_Dir "release"
  167.61 +# PROP BASE Target_Dir ""
  167.62 +# PROP Use_MFC 0
  167.63 +# PROP Use_Debug_Libraries 0
  167.64 +# PROP Output_Dir "release"
  167.65 +# PROP Intermediate_Dir "release"
  167.66 +# PROP Target_Dir ""
  167.67 +# ADD CPP /I"C:/Qt/4.0.1/include/QtNetwork" /I"C:/Qt/4.0.1/include/QtCore" /I"C:/Qt/4.0.1/include" /I"." /I"C:/Qt/4.0.1/include/ActiveQt" /I"release" /I"." /I"C:/Qt/4.0.1/mkspecs/win32-msvc" /c /FD -nologo -Zm200 -O1 -MD -O1 -MD -GR -GX -W3  /D "_CONSOLE"  /D UNICODE /D QT_LARGEFILE_SUPPORT /D QT_DLL /D QT_NO_DEBUG /D QT_CORE_LIB /D QT_NETWORK_LIB /D QT_THREAD_SUPPORT  /D "WIN32"  
  167.68 +# ADD MTL /nologo /mktyplib203 /win32 /D "NDEBUG"
  167.69 +# ADD RSC /l 0x409 /d "NDEBUG"
  167.70 +# ADD BSC32 /nologo
  167.71 +LINK32=link
  167.72 +# ADD LINK32 /NOLOGO /SUBSYSTEM:console /incremental:yes /LIBPATH:"C:\Qt\4.0.1\lib" "C:\Qt\4.0.1\lib\QtCore4.lib" "C:\Qt\4.0.1\lib\QtNetwork4.lib" /out:"release\prophet.exe" 
  167.73 +
  167.74 +!ENDIF 
  167.75 +
  167.76 +# Begin Target
  167.77 +
  167.78 +# Name "prophet - Win32 Debug"
  167.79 +# Name "prophet - Win32 Release"
  167.80 +
  167.81 +# Begin Group "Source Files"
  167.82 +# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
  167.83 +# Begin Source File
  167.84 +SOURCE=bundle.cpp
  167.85 +# End Source File
  167.86 +
  167.87 +# Begin Source File
  167.88 +SOURCE=bundleManager.cpp
  167.89 +# End Source File
  167.90 +
  167.91 +# Begin Source File
  167.92 +SOURCE=connection.cpp
  167.93 +# End Source File
  167.94 +
  167.95 +# Begin Source File
  167.96 +SOURCE=dataPacket.cpp
  167.97 +# End Source File
  167.98 +
  167.99 +# Begin Source File
 167.100 +SOURCE=hello.cpp
 167.101 +# End Source File
 167.102 +
 167.103 +# Begin Source File
 167.104 +SOURCE=main.cpp
 167.105 +# End Source File
 167.106 +
 167.107 +# Begin Source File
 167.108 +SOURCE=messageFile.cpp
 167.109 +# End Source File
 167.110 +
 167.111 +# Begin Source File
 167.112 +SOURCE=neighbourAwareness.cpp
 167.113 +# End Source File
 167.114 +
 167.115 +# Begin Source File
 167.116 +SOURCE=node.cpp
 167.117 +# End Source File
 167.118 +
 167.119 +# Begin Source File
 167.120 +SOURCE=nodeManager.cpp
 167.121 +# End Source File
 167.122 +
 167.123 +# Begin Source File
 167.124 +SOURCE=readFile.cpp
 167.125 +# End Source File
 167.126 +
 167.127 +# Begin Source File
 167.128 +SOURCE=tlv.cpp
 167.129 +# End Source File
 167.130 +
 167.131 +# End Group
 167.132 +
 167.133 +# Begin Group "Header Files"
 167.134 +# PROP Default_Filter "h;hpp;hxx;hm;inl"
 167.135 +# Begin Source File
 167.136 +SOURCE=bundle.h
 167.137 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.138 +
 167.139 +USERDEP_bundle.h=
 167.140 +# PROP Ignore_Default_Tool 1
 167.141 +# Begin Custom Build - Running MOC on bundle.h
 167.142 +InputPath=bundle.h
 167.143 +BuildCmds=  \
 167.144 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_bundle.cpp
 167.145 +"debug\moc_bundle.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.146 +	$(BuildCmds)
 167.147 +
 167.148 +# End Custom Build
 167.149 +
 167.150 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.151 +
 167.152 +USERDEP_bundle.h=
 167.153 +# PROP Ignore_Default_Tool 1
 167.154 +# Begin Custom Build - Running MOC on bundle.h
 167.155 +InputPath=bundle.h
 167.156 +BuildCmds=  \
 167.157 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_bundle.cpp
 167.158 +"release\moc_bundle.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.159 +	$(BuildCmds)
 167.160 +
 167.161 +# End Custom Build
 167.162 +
 167.163 +!ENDIF
 167.164 +# End Source File
 167.165 +
 167.166 +# Begin Source File
 167.167 +SOURCE=bundleManager.h
 167.168 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.169 +
 167.170 +USERDEP_bundleManager.h=
 167.171 +# PROP Ignore_Default_Tool 1
 167.172 +# Begin Custom Build - Running MOC on bundleManager.h
 167.173 +InputPath=bundleManager.h
 167.174 +BuildCmds=  \
 167.175 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_bundleManager.cpp
 167.176 +"debug\moc_bundleManager.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.177 +	$(BuildCmds)
 167.178 +
 167.179 +# End Custom Build
 167.180 +
 167.181 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.182 +
 167.183 +USERDEP_bundleManager.h=
 167.184 +# PROP Ignore_Default_Tool 1
 167.185 +# Begin Custom Build - Running MOC on bundleManager.h
 167.186 +InputPath=bundleManager.h
 167.187 +BuildCmds=  \
 167.188 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_bundleManager.cpp
 167.189 +"release\moc_bundleManager.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.190 +	$(BuildCmds)
 167.191 +
 167.192 +# End Custom Build
 167.193 +
 167.194 +!ENDIF
 167.195 +# End Source File
 167.196 +
 167.197 +# Begin Source File
 167.198 +SOURCE=connection.h
 167.199 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.200 +
 167.201 +USERDEP_connection.h=
 167.202 +# PROP Ignore_Default_Tool 1
 167.203 +# Begin Custom Build - Running MOC on connection.h
 167.204 +InputPath=connection.h
 167.205 +BuildCmds=  \
 167.206 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_connection.cpp
 167.207 +"debug\moc_connection.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.208 +	$(BuildCmds)
 167.209 +
 167.210 +# End Custom Build
 167.211 +
 167.212 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.213 +
 167.214 +USERDEP_connection.h=
 167.215 +# PROP Ignore_Default_Tool 1
 167.216 +# Begin Custom Build - Running MOC on connection.h
 167.217 +InputPath=connection.h
 167.218 +BuildCmds=  \
 167.219 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_connection.cpp
 167.220 +"release\moc_connection.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.221 +	$(BuildCmds)
 167.222 +
 167.223 +# End Custom Build
 167.224 +
 167.225 +!ENDIF
 167.226 +# End Source File
 167.227 +
 167.228 +# Begin Source File
 167.229 +SOURCE=dataPacket.h
 167.230 +# End Source File
 167.231 +
 167.232 +# Begin Source File
 167.233 +SOURCE=hello.h
 167.234 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.235 +
 167.236 +USERDEP_hello.h=
 167.237 +# PROP Ignore_Default_Tool 1
 167.238 +# Begin Custom Build - Running MOC on hello.h
 167.239 +InputPath=hello.h
 167.240 +BuildCmds=  \
 167.241 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_hello.cpp
 167.242 +"debug\moc_hello.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.243 +	$(BuildCmds)
 167.244 +
 167.245 +# End Custom Build
 167.246 +
 167.247 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.248 +
 167.249 +USERDEP_hello.h=
 167.250 +# PROP Ignore_Default_Tool 1
 167.251 +# Begin Custom Build - Running MOC on hello.h
 167.252 +InputPath=hello.h
 167.253 +BuildCmds=  \
 167.254 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_hello.cpp
 167.255 +"release\moc_hello.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.256 +	$(BuildCmds)
 167.257 +
 167.258 +# End Custom Build
 167.259 +
 167.260 +!ENDIF
 167.261 +# End Source File
 167.262 +
 167.263 +# Begin Source File
 167.264 +SOURCE=main.h
 167.265 +# End Source File
 167.266 +
 167.267 +# Begin Source File
 167.268 +SOURCE=messageFile.h
 167.269 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.270 +
 167.271 +USERDEP_messageFile.h=
 167.272 +# PROP Ignore_Default_Tool 1
 167.273 +# Begin Custom Build - Running MOC on messageFile.h
 167.274 +InputPath=messageFile.h
 167.275 +BuildCmds=  \
 167.276 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_messageFile.cpp
 167.277 +"debug\moc_messageFile.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.278 +	$(BuildCmds)
 167.279 +
 167.280 +# End Custom Build
 167.281 +
 167.282 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.283 +
 167.284 +USERDEP_messageFile.h=
 167.285 +# PROP Ignore_Default_Tool 1
 167.286 +# Begin Custom Build - Running MOC on messageFile.h
 167.287 +InputPath=messageFile.h
 167.288 +BuildCmds=  \
 167.289 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_messageFile.cpp
 167.290 +"release\moc_messageFile.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.291 +	$(BuildCmds)
 167.292 +
 167.293 +# End Custom Build
 167.294 +
 167.295 +!ENDIF
 167.296 +# End Source File
 167.297 +
 167.298 +# Begin Source File
 167.299 +SOURCE=neighbourAwareness.h
 167.300 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.301 +
 167.302 +USERDEP_neighbourAwareness.h=
 167.303 +# PROP Ignore_Default_Tool 1
 167.304 +# Begin Custom Build - Running MOC on neighbourAwareness.h
 167.305 +InputPath=neighbourAwareness.h
 167.306 +BuildCmds=  \
 167.307 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_neighbourAwareness.cpp
 167.308 +"debug\moc_neighbourAwareness.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.309 +	$(BuildCmds)
 167.310 +
 167.311 +# End Custom Build
 167.312 +
 167.313 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.314 +
 167.315 +USERDEP_neighbourAwareness.h=
 167.316 +# PROP Ignore_Default_Tool 1
 167.317 +# Begin Custom Build - Running MOC on neighbourAwareness.h
 167.318 +InputPath=neighbourAwareness.h
 167.319 +BuildCmds=  \
 167.320 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_neighbourAwareness.cpp
 167.321 +"release\moc_neighbourAwareness.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.322 +	$(BuildCmds)
 167.323 +
 167.324 +# End Custom Build
 167.325 +
 167.326 +!ENDIF
 167.327 +# End Source File
 167.328 +
 167.329 +# Begin Source File
 167.330 +SOURCE=node.h
 167.331 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.332 +
 167.333 +USERDEP_node.h=
 167.334 +# PROP Ignore_Default_Tool 1
 167.335 +# Begin Custom Build - Running MOC on node.h
 167.336 +InputPath=node.h
 167.337 +BuildCmds=  \
 167.338 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_node.cpp
 167.339 +"debug\moc_node.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.340 +	$(BuildCmds)
 167.341 +
 167.342 +# End Custom Build
 167.343 +
 167.344 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.345 +
 167.346 +USERDEP_node.h=
 167.347 +# PROP Ignore_Default_Tool 1
 167.348 +# Begin Custom Build - Running MOC on node.h
 167.349 +InputPath=node.h
 167.350 +BuildCmds=  \
 167.351 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_node.cpp
 167.352 +"release\moc_node.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.353 +	$(BuildCmds)
 167.354 +
 167.355 +# End Custom Build
 167.356 +
 167.357 +!ENDIF
 167.358 +# End Source File
 167.359 +
 167.360 +# Begin Source File
 167.361 +SOURCE=nodeManager.h
 167.362 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.363 +
 167.364 +USERDEP_nodeManager.h=
 167.365 +# PROP Ignore_Default_Tool 1
 167.366 +# Begin Custom Build - Running MOC on nodeManager.h
 167.367 +InputPath=nodeManager.h
 167.368 +BuildCmds=  \
 167.369 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_nodeManager.cpp
 167.370 +"debug\moc_nodeManager.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.371 +	$(BuildCmds)
 167.372 +
 167.373 +# End Custom Build
 167.374 +
 167.375 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.376 +
 167.377 +USERDEP_nodeManager.h=
 167.378 +# PROP Ignore_Default_Tool 1
 167.379 +# Begin Custom Build - Running MOC on nodeManager.h
 167.380 +InputPath=nodeManager.h
 167.381 +BuildCmds=  \
 167.382 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_nodeManager.cpp
 167.383 +"release\moc_nodeManager.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.384 +	$(BuildCmds)
 167.385 +
 167.386 +# End Custom Build
 167.387 +
 167.388 +!ENDIF
 167.389 +# End Source File
 167.390 +
 167.391 +# Begin Source File
 167.392 +SOURCE=readFile.h
 167.393 +# End Source File
 167.394 +
 167.395 +# Begin Source File
 167.396 +SOURCE=tlv.h
 167.397 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.398 +
 167.399 +USERDEP_tlv.h=
 167.400 +# PROP Ignore_Default_Tool 1
 167.401 +# Begin Custom Build - Running MOC on tlv.h
 167.402 +InputPath=tlv.h
 167.403 +BuildCmds=  \
 167.404 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_tlv.cpp
 167.405 +"debug\moc_tlv.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.406 +	$(BuildCmds)
 167.407 +
 167.408 +# End Custom Build
 167.409 +
 167.410 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.411 +
 167.412 +USERDEP_tlv.h=
 167.413 +# PROP Ignore_Default_Tool 1
 167.414 +# Begin Custom Build - Running MOC on tlv.h
 167.415 +InputPath=tlv.h
 167.416 +BuildCmds=  \
 167.417 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_tlv.cpp
 167.418 +"release\moc_tlv.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 167.419 +	$(BuildCmds)
 167.420 +
 167.421 +# End Custom Build
 167.422 +
 167.423 +!ENDIF
 167.424 +# End Source File
 167.425 +
 167.426 +# End Group
 167.427 +
 167.428 +# Begin Group "Generated"
 167.429 +# PROP Default_Filter ""
 167.430 +# Begin Source File
 167.431 +SOURCE=debug\moc_bundle.cpp
 167.432 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.433 +
 167.434 +
 167.435 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.436 +
 167.437 +# PROP Exclude_From_Build 1
 167.438 +
 167.439 +!ENDIF
 167.440 +# End Source File
 167.441 +
 167.442 +# Begin Source File
 167.443 +SOURCE=debug\moc_bundleManager.cpp
 167.444 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.445 +
 167.446 +
 167.447 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.448 +
 167.449 +# PROP Exclude_From_Build 1
 167.450 +
 167.451 +!ENDIF
 167.452 +# End Source File
 167.453 +
 167.454 +# Begin Source File
 167.455 +SOURCE=debug\moc_connection.cpp
 167.456 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.457 +
 167.458 +
 167.459 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.460 +
 167.461 +# PROP Exclude_From_Build 1
 167.462 +
 167.463 +!ENDIF
 167.464 +# End Source File
 167.465 +
 167.466 +# Begin Source File
 167.467 +SOURCE=debug\moc_hello.cpp
 167.468 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.469 +
 167.470 +
 167.471 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.472 +
 167.473 +# PROP Exclude_From_Build 1
 167.474 +
 167.475 +!ENDIF
 167.476 +# End Source File
 167.477 +
 167.478 +# Begin Source File
 167.479 +SOURCE=debug\moc_messageFile.cpp
 167.480 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.481 +
 167.482 +
 167.483 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.484 +
 167.485 +# PROP Exclude_From_Build 1
 167.486 +
 167.487 +!ENDIF
 167.488 +# End Source File
 167.489 +
 167.490 +# Begin Source File
 167.491 +SOURCE=debug\moc_neighbourAwareness.cpp
 167.492 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.493 +
 167.494 +
 167.495 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.496 +
 167.497 +# PROP Exclude_From_Build 1
 167.498 +
 167.499 +!ENDIF
 167.500 +# End Source File
 167.501 +
 167.502 +# Begin Source File
 167.503 +SOURCE=debug\moc_node.cpp
 167.504 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.505 +
 167.506 +
 167.507 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.508 +
 167.509 +# PROP Exclude_From_Build 1
 167.510 +
 167.511 +!ENDIF
 167.512 +# End Source File
 167.513 +
 167.514 +# Begin Source File
 167.515 +SOURCE=debug\moc_nodeManager.cpp
 167.516 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.517 +
 167.518 +
 167.519 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.520 +
 167.521 +# PROP Exclude_From_Build 1
 167.522 +
 167.523 +!ENDIF
 167.524 +# End Source File
 167.525 +
 167.526 +# Begin Source File
 167.527 +SOURCE=debug\moc_tlv.cpp
 167.528 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.529 +
 167.530 +
 167.531 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.532 +
 167.533 +# PROP Exclude_From_Build 1
 167.534 +
 167.535 +!ENDIF
 167.536 +# End Source File
 167.537 +
 167.538 +# Begin Source File
 167.539 +SOURCE=release\moc_bundle.cpp
 167.540 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.541 +
 167.542 +# PROP Exclude_From_Build 1
 167.543 +
 167.544 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.545 +
 167.546 +
 167.547 +!ENDIF
 167.548 +# End Source File
 167.549 +
 167.550 +# Begin Source File
 167.551 +SOURCE=release\moc_bundleManager.cpp
 167.552 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.553 +
 167.554 +# PROP Exclude_From_Build 1
 167.555 +
 167.556 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.557 +
 167.558 +
 167.559 +!ENDIF
 167.560 +# End Source File
 167.561 +
 167.562 +# Begin Source File
 167.563 +SOURCE=release\moc_connection.cpp
 167.564 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.565 +
 167.566 +# PROP Exclude_From_Build 1
 167.567 +
 167.568 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.569 +
 167.570 +
 167.571 +!ENDIF
 167.572 +# End Source File
 167.573 +
 167.574 +# Begin Source File
 167.575 +SOURCE=release\moc_hello.cpp
 167.576 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.577 +
 167.578 +# PROP Exclude_From_Build 1
 167.579 +
 167.580 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.581 +
 167.582 +
 167.583 +!ENDIF
 167.584 +# End Source File
 167.585 +
 167.586 +# Begin Source File
 167.587 +SOURCE=release\moc_messageFile.cpp
 167.588 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.589 +
 167.590 +# PROP Exclude_From_Build 1
 167.591 +
 167.592 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.593 +
 167.594 +
 167.595 +!ENDIF
 167.596 +# End Source File
 167.597 +
 167.598 +# Begin Source File
 167.599 +SOURCE=release\moc_neighbourAwareness.cpp
 167.600 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.601 +
 167.602 +# PROP Exclude_From_Build 1
 167.603 +
 167.604 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.605 +
 167.606 +
 167.607 +!ENDIF
 167.608 +# End Source File
 167.609 +
 167.610 +# Begin Source File
 167.611 +SOURCE=release\moc_node.cpp
 167.612 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.613 +
 167.614 +# PROP Exclude_From_Build 1
 167.615 +
 167.616 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.617 +
 167.618 +
 167.619 +!ENDIF
 167.620 +# End Source File
 167.621 +
 167.622 +# Begin Source File
 167.623 +SOURCE=release\moc_nodeManager.cpp
 167.624 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.625 +
 167.626 +# PROP Exclude_From_Build 1
 167.627 +
 167.628 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.629 +
 167.630 +
 167.631 +!ENDIF
 167.632 +# End Source File
 167.633 +
 167.634 +# Begin Source File
 167.635 +SOURCE=release\moc_tlv.cpp
 167.636 +!IF"$(CFG)" == "prophet - Win32 Debug"
 167.637 +
 167.638 +# PROP Exclude_From_Build 1
 167.639 +
 167.640 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 167.641 +
 167.642 +
 167.643 +!ENDIF
 167.644 +# End Source File
 167.645 +
 167.646 +# End Group
 167.647 +
 167.648 +
 167.649 +# End Target
 167.650 +# End Project
   168.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   168.2 +++ b/x86/ARM/prophet.dsw	Thu Jun 26 17:39:40 2008 +0100
   168.3 @@ -0,0 +1,29 @@
   168.4 +Microsoft Developer Studio Workspace File, Format Version 6.00
   168.5 +# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
   168.6 +
   168.7 +###############################################################################
   168.8 +
   168.9 +Project: "prophet"=.\prophet.dsp - Package Owner=<4>
  168.10 +
  168.11 +Package=<5>
  168.12 +{{{
  168.13 +}}}
  168.14 +
  168.15 +Package=<4>
  168.16 +{{{
  168.17 +}}}
  168.18 +
  168.19 +###############################################################################
  168.20 +
  168.21 +Global:
  168.22 +
  168.23 +Package=<5>
  168.24 +{{{
  168.25 +}}}
  168.26 +
  168.27 +Package=<3>
  168.28 +{{{
  168.29 +}}}
  168.30 +
  168.31 +###############################################################################
  168.32 +
   169.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   169.2 +++ b/x86/ARM/prophet.ini	Thu Jun 26 17:39:40 2008 +0100
   169.3 @@ -0,0 +1,4 @@
   169.4 +NODEID=20
   169.5 +NODENAME=Samo
   169.6 +NODEIP=192.168.10.20
   169.7 +
   170.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   170.2 +++ b/x86/ARM/prophet.log	Thu Jun 26 17:39:40 2008 +0100
   170.3 @@ -0,0 +1,917 @@
   170.4 +09/05/2006 21:41:56.374  000>> Starting Prophet!
   170.5 +09/05/2006 21:41:56.524  000>> Reading INI file IP:
   170.6 +09/05/2006 21:41:56.524  000>> 192.168.10.20
   170.7 +09/05/2006 21:41:57.045  000>> I am created:0
   170.8 +09/05/2006 21:41:57.045  000>> Creating new connection :192.168.10.30
   170.9 +09/05/2006 21:41:57.946  000>> Hello Procedure:SENDSYN
  170.10 +09/05/2006 21:41:57.946  000>> Sended datagram...
  170.11 +09/05/2006 21:41:57.946  000>> Data datagram sent:192.168.10.30
  170.12 +09/05/2006 21:41:57.956  000>> Data datagram received:192.168.10.30
  170.13 +09/05/2006 21:41:57.956  000>> Received datagram...
  170.14 +09/05/2006 21:41:57.956  000>> Receive Hello:SYNACK
  170.15 +09/05/2006 21:41:57.976  000>> Sended datagram...
  170.16 +09/05/2006 21:41:57.976  000>> Data datagram sent:192.168.10.30
  170.17 +09/05/2006 21:41:58.877  000>> Initiator:SENDDICTIONARY
  170.18 +09/05/2006 21:41:58.877  000>> Sended datagram...
  170.19 +09/05/2006 21:41:58.877  000>> Data datagram sent:192.168.10.30
  170.20 +09/05/2006 21:41:58.927  000>> Data datagram received:192.168.10.30
  170.21 +09/05/2006 21:41:58.927  000>> Received datagram...
  170.22 +09/05/2006 21:41:58.927  000>> Listner:Received dictionary
  170.23 +09/05/2006 21:41:59.779  000>> Initiator:SENDRIB
  170.24 +09/05/2006 21:41:59.779  000>> Sended datagram...
  170.25 +09/05/2006 21:41:59.779  000>> Data datagram sent:192.168.10.30
  170.26 +09/05/2006 21:41:59.819  000>> Data datagram received:192.168.10.30
  170.27 +09/05/2006 21:41:59.829  000>> Received datagram...
  170.28 +09/05/2006 21:41:59.829  000>> Listner:Received RIB
  170.29 +09/05/2006 21:42:00.680  000>> Initiator:SENDBUNDLEOFFER
  170.30 +09/05/2006 21:42:00.680  000>> Sended datagram...
  170.31 +09/05/2006 21:42:00.680  000>> Data datagram sent:192.168.10.30
  170.32 +09/05/2006 21:42:00.680  000>> Data datagram received:192.168.10.30
  170.33 +09/05/2006 21:42:00.690  000>> Received datagram...
  170.34 +09/05/2006 21:42:00.690  000>> Initiator:Sending bundles
  170.35 +09/05/2006 21:42:00.690  000>> Sended datagram...
  170.36 +09/05/2006 21:42:00.690  000>> Data datagram sent:192.168.10.30
  170.37 +09/05/2006 21:42:00.730  000>> Listner:Idle state...
  170.38 +09/05/2006 21:42:00.730  000>> Data datagram received:192.168.10.30
  170.39 +09/05/2006 21:42:00.730  000>> Received datagram...
  170.40 +09/05/2006 21:42:00.730  000>> Listner:Received Bundle Offer
  170.41 +09/05/2006 21:42:00.730  000>> Sended datagram...
  170.42 +09/05/2006 21:42:00.730  000>> Data datagram sent:192.168.10.30
  170.43 +09/05/2006 21:42:00.740  000>> Data datagram received:192.168.10.30
  170.44 +09/05/2006 21:42:00.740  000>> Received datagram...
  170.45 +09/05/2006 21:42:01.581  000>> Hello Procedure:SENDSYN
  170.46 +09/05/2006 21:42:01.581  000>> Sended datagram...
  170.47 +09/05/2006 21:42:01.581  000>> Data datagram sent:192.168.10.30
  170.48 +09/05/2006 21:42:01.581  000>> Data datagram received:192.168.10.30
  170.49 +09/05/2006 21:42:01.581  000>> Received datagram...
  170.50 +09/05/2006 21:42:01.581  000>> Receive Hello:SYNACK
  170.51 +09/05/2006 21:42:01.591  000>> Sended datagram...
  170.52 +09/05/2006 21:42:01.591  000>> Data datagram sent:192.168.10.30
  170.53 +09/05/2006 21:42:01.641  000>> Listner:DICTIONARY timeout...
  170.54 +09/05/2006 21:42:02.503  000>> Initiator:SENDDICTIONARY
  170.55 +09/05/2006 21:42:02.503  000>> Sended datagram...
  170.56 +09/05/2006 21:42:02.503  000>> Data datagram sent:192.168.10.30
  170.57 +09/05/2006 21:42:02.503  000>> Data datagram received:192.168.10.30
  170.58 +09/05/2006 21:42:02.503  000>> Received datagram...
  170.59 +09/05/2006 21:42:02.503  000>> Listner:Received dictionary
  170.60 +09/05/2006 21:42:03.404  000>> Data datagram received:192.168.10.30
  170.61 +09/05/2006 21:42:03.404  000>> Received datagram...
  170.62 +09/05/2006 21:42:03.404  000>> Listner:Received RIB
  170.63 +09/05/2006 21:42:03.414  000>> Initiator:SENDRIB
  170.64 +09/05/2006 21:42:03.414  000>> Sended datagram...
  170.65 +09/05/2006 21:42:03.414  000>> Data datagram sent:192.168.10.30
  170.66 +09/05/2006 21:42:04.305  000>> Hm Listner default...
  170.67 +09/05/2006 21:42:04.305  000>> Data datagram received:192.168.10.30
  170.68 +09/05/2006 21:42:04.305  000>> Received datagram...
  170.69 +09/05/2006 21:42:04.305  000>> Listner:Received Bundle Offer
  170.70 +09/05/2006 21:42:04.315  000>> Sended datagram...
  170.71 +09/05/2006 21:42:04.315  000>> Data datagram sent:192.168.10.30
  170.72 +09/05/2006 21:42:04.315  000>> Initiator:SENDBUNDLEOFFER
  170.73 +09/05/2006 21:42:04.315  000>> Sended datagram...
  170.74 +09/05/2006 21:42:04.315  000>> Data datagram sent:192.168.10.30
  170.75 +09/05/2006 21:42:04.315  000>> Data datagram received:192.168.10.30
  170.76 +09/05/2006 21:42:04.315  000>> Received datagram...
  170.77 +09/05/2006 21:42:04.325  000>> Data datagram received:192.168.10.30
  170.78 +09/05/2006 21:42:04.325  000>> Received datagram...
  170.79 +09/05/2006 21:42:04.325  000>> Initiator:Sending bundles
  170.80 +09/05/2006 21:42:04.325  000>> Sended datagram...
  170.81 +09/05/2006 21:42:04.325  000>> Data datagram sent:192.168.10.30
  170.82 +09/05/2006 21:42:05.217  000>> Data datagram received:192.168.10.30
  170.83 +09/05/2006 21:42:05.217  000>> Received datagram...
  170.84 +09/05/2006 21:42:05.217  000>> Receive Hello:SYN
  170.85 +09/05/2006 21:42:05.217  000>> Sended datagram...
  170.86 +09/05/2006 21:42:05.227  000>> Data datagram sent:192.168.10.30
  170.87 +09/05/2006 21:42:05.227  000>> Initiator:Idle state...
  170.88 +09/05/2006 21:42:05.237  000>> Data datagram received:192.168.10.30
  170.89 +09/05/2006 21:42:05.237  000>> Received datagram...
  170.90 +09/05/2006 21:42:06.128  000>> Listner:DICTIONARY timeout...
  170.91 +09/05/2006 21:42:06.138  000>> Initiator:SENDDICTIONARY
  170.92 +09/05/2006 21:42:06.138  000>> Sended datagram...
  170.93 +09/05/2006 21:42:06.138  000>> Data datagram sent:192.168.10.30
  170.94 +09/05/2006 21:42:06.138  000>> Data datagram received:192.168.10.30
  170.95 +09/05/2006 21:42:06.138  000>> Received datagram...
  170.96 +09/05/2006 21:42:06.138  000>> Listner:Received dictionary
  170.97 +09/05/2006 21:42:07.039  000>> Listner:RIB timeout...
  170.98 +09/05/2006 21:42:07.039  000>> Initiator:SENDRIB
  170.99 +09/05/2006 21:42:07.039  000>> Sended datagram...
 170.100 +09/05/2006 21:42:07.039  000>> Data datagram sent:192.168.10.30
 170.101 +09/05/2006 21:42:07.049  000>> Data datagram received:192.168.10.30
 170.102 +09/05/2006 21:42:07.049  000>> Received datagram...
 170.103 +09/05/2006 21:42:07.049  000>> Listner:Received RIB
 170.104 +09/05/2006 21:42:07.940  000>> Initiator:SENDBUNDLEOFFER
 170.105 +09/05/2006 21:42:07.940  000>> Sended datagram...
 170.106 +09/05/2006 21:42:07.940  000>> Data datagram sent:192.168.10.30
 170.107 +09/05/2006 21:42:07.950  000>> Listner:BUNDLES Timeout...
 170.108 +09/05/2006 21:42:07.950  000>> Data datagram received:192.168.10.30
 170.109 +09/05/2006 21:42:07.950  000>> Received datagram...
 170.110 +09/05/2006 21:42:07.950  000>> Initiator:Sending bundles
 170.111 +09/05/2006 21:42:07.950  000>> Sended datagram...
 170.112 +09/05/2006 21:42:07.950  000>> Data datagram sent:192.168.10.30
 170.113 +09/05/2006 21:42:07.950  000>> Data datagram received:192.168.10.30
 170.114 +09/05/2006 21:42:07.950  000>> Received datagram...
 170.115 +09/05/2006 21:42:07.950  000>> Listner:Received Bundle Offer
 170.116 +09/05/2006 21:42:07.950  000>> Sended datagram...
 170.117 +09/05/2006 21:42:07.960  000>> Data datagram sent:192.168.10.30
 170.118 +09/05/2006 21:42:07.960  000>> Data datagram received:192.168.10.30
 170.119 +09/05/2006 21:42:07.970  000>> Received datagram...
 170.120 +09/05/2006 21:42:08.852  000>> Initiator:Idle state...
 170.121 +09/05/2006 21:42:08.862  000>> Data datagram received:192.168.10.30
 170.122 +09/05/2006 21:42:08.862  000>> Received datagram...
 170.123 +09/05/2006 21:42:08.862  000>> Receive Hello:SYN
 170.124 +09/05/2006 21:42:08.862  000>> Sended datagram...
 170.125 +09/05/2006 21:42:08.862  000>> Data datagram sent:192.168.10.30
 170.126 +09/05/2006 21:42:08.872  000>> Data datagram received:192.168.10.30
 170.127 +09/05/2006 21:42:08.872  000>> Received datagram...
 170.128 +09/05/2006 21:42:09.773  000>> Initiator:SENDDICTIONARY
 170.129 +09/05/2006 21:42:09.773  000>> Sended datagram...
 170.130 +09/05/2006 21:42:09.773  000>> Data datagram sent:192.168.10.30
 170.131 +09/05/2006 21:42:09.773  000>> Listner:RIB timeout...
 170.132 +09/05/2006 21:42:09.773  000>> Data datagram received:192.168.10.30
 170.133 +09/05/2006 21:42:09.773  000>> Received datagram...
 170.134 +09/05/2006 21:42:09.783  000>> Listner:Received dictionary
 170.135 +09/05/2006 21:42:10.674  000>> Initiator:SENDRIB
 170.136 +09/05/2006 21:42:10.674  000>> Sended datagram...
 170.137 +09/05/2006 21:42:10.674  000>> Data datagram sent:192.168.10.30
 170.138 +09/05/2006 21:42:10.684  000>> Hm Listner default...
 170.139 +09/05/2006 21:42:10.684  000>> Data datagram received:192.168.10.30
 170.140 +09/05/2006 21:42:10.684  000>> Received datagram...
 170.141 +09/05/2006 21:42:10.684  000>> Listner:Received RIB
 170.142 +09/05/2006 21:42:11.576  000>> Initiator:SENDBUNDLEOFFER
 170.143 +09/05/2006 21:42:11.576  000>> Sended datagram...
 170.144 +09/05/2006 21:42:11.576  000>> Data datagram sent:192.168.10.30
 170.145 +09/05/2006 21:42:11.586  000>> Listner:BUNDLES Timeout...
 170.146 +09/05/2006 21:42:11.586  000>> Data datagram received:192.168.10.30
 170.147 +09/05/2006 21:42:11.586  000>> Received datagram...
 170.148 +09/05/2006 21:42:11.586  000>> Initiator:Sending bundles
 170.149 +09/05/2006 21:42:11.586  000>> Sended datagram...
 170.150 +09/05/2006 21:42:11.596  000>> Data datagram sent:192.168.10.30
 170.151 +09/05/2006 21:42:11.596  000>> Data datagram received:192.168.10.30
 170.152 +09/05/2006 21:42:11.596  000>> Received datagram...
 170.153 +09/05/2006 21:42:11.596  000>> Listner:Received Bundle Offer
 170.154 +09/05/2006 21:42:11.596  000>> Sended datagram...
 170.155 +09/05/2006 21:42:11.596  000>> Data datagram sent:192.168.10.30
 170.156 +09/05/2006 21:42:11.606  000>> Data datagram received:192.168.10.30
 170.157 +09/05/2006 21:42:11.606  000>> Received datagram...
 170.158 +09/05/2006 21:42:12.467  000>> Data datagram received:192.168.10.30
 170.159 +09/05/2006 21:42:12.467  000>> Received datagram...
 170.160 +09/05/2006 21:42:12.467  000>> Receive Hello:SYN
 170.161 +09/05/2006 21:42:12.467  000>> Sended datagram...
 170.162 +09/05/2006 21:42:12.467  000>> Data datagram sent:192.168.10.30
 170.163 +09/05/2006 21:42:12.477  000>> Data datagram received:192.168.10.30
 170.164 +09/05/2006 21:42:12.487  000>> Received datagram...
 170.165 +09/05/2006 21:42:12.507  000>> Listner:Idle state...
 170.166 +09/05/2006 21:42:13.388  000>> Hello Procedure:SENDSYN
 170.167 +09/05/2006 21:42:13.388  000>> Sended datagram...
 170.168 +09/05/2006 21:42:13.388  000>> Data datagram sent:192.168.10.30
 170.169 +09/05/2006 21:42:13.388  000>> Data datagram received:192.168.10.30
 170.170 +09/05/2006 21:42:13.388  000>> Received datagram...
 170.171 +09/05/2006 21:42:13.388  000>> Listner:Received dictionary
 170.172 +09/05/2006 21:42:13.398  000>> Data datagram received:192.168.10.30
 170.173 +09/05/2006 21:42:13.398  000>> Received datagram...
 170.174 +09/05/2006 21:42:13.398  000>> Receive Hello:SYNACK
 170.175 +09/05/2006 21:42:13.398  000>> Sended datagram...
 170.176 +09/05/2006 21:42:13.398  000>> Data datagram sent:192.168.10.30
 170.177 +09/05/2006 21:42:14.290  000>> Listner:DICTIONARY timeout...
 170.178 +09/05/2006 21:42:14.300  000>> Initiator:SENDDICTIONARY
 170.179 +09/05/2006 21:42:14.300  000>> Sended datagram...
 170.180 +09/05/2006 21:42:14.300  000>> Data datagram sent:192.168.10.30
 170.181 +09/05/2006 21:42:14.310  000>> Data datagram received:192.168.10.30
 170.182 +09/05/2006 21:42:14.310  000>> Received datagram...
 170.183 +09/05/2006 21:42:14.320  000>> Listner:Received RIB
 170.184 +09/05/2006 21:42:15.201  000>> Initiator:SENDRIB
 170.185 +09/05/2006 21:42:15.211  000>> Sended datagram...
 170.186 +09/05/2006 21:42:15.211  000>> Data datagram sent:192.168.10.30
 170.187 +09/05/2006 21:42:15.221  000>> Data datagram received:192.168.10.30
 170.188 +09/05/2006 21:42:15.221  000>> Received datagram...
 170.189 +09/05/2006 21:42:15.221  000>> Listner:Received Bundle Offer
 170.190 +09/05/2006 21:42:15.221  000>> Sended datagram...
 170.191 +09/05/2006 21:42:15.221  000>> Data datagram sent:192.168.10.30
 170.192 +09/05/2006 21:42:15.231  000>> Data datagram received:192.168.10.30
 170.193 +09/05/2006 21:42:15.231  000>> Received datagram...
 170.194 +09/05/2006 21:42:16.112  000>> Initiator:SENDBUNDLEOFFER
 170.195 +09/05/2006 21:42:16.112  000>> Sended datagram...
 170.196 +09/05/2006 21:42:16.112  000>> Data datagram sent:192.168.10.30
 170.197 +09/05/2006 21:42:16.122  000>> Data datagram received:192.168.10.30
 170.198 +09/05/2006 21:42:16.122  000>> Received datagram...
 170.199 +09/05/2006 21:42:16.122  000>> Initiator:Sending bundles
 170.200 +09/05/2006 21:42:16.122  000>> Sended datagram...
 170.201 +09/05/2006 21:42:16.122  000>> Data datagram sent:192.168.10.30
 170.202 +09/05/2006 21:42:16.132  000>> Listner:Idle state...
 170.203 +09/05/2006 21:42:17.013  000>> Hello Procedure:SENDSYN
 170.204 +09/05/2006 21:42:17.013  000>> Sended datagram...
 170.205 +09/05/2006 21:42:17.013  000>> Data datagram sent:192.168.10.30
 170.206 +09/05/2006 21:42:17.023  000>> Data datagram received:192.168.10.30
 170.207 +09/05/2006 21:42:17.023  000>> Received datagram...
 170.208 +09/05/2006 21:42:17.023  000>> Receive Hello:SYNACK
 170.209 +09/05/2006 21:42:17.023  000>> Sended datagram...
 170.210 +09/05/2006 21:42:17.023  000>> Data datagram sent:192.168.10.30
 170.211 +09/05/2006 21:42:17.034  000>> Listner:DICTIONARY timeout...
 170.212 +09/05/2006 21:42:17.925  000>> Initiator:SENDDICTIONARY
 170.213 +09/05/2006 21:42:17.925  000>> Sended datagram...
 170.214 +09/05/2006 21:42:17.925  000>> Data datagram sent:192.168.10.30
 170.215 +09/05/2006 21:42:17.935  000>> Listner:RIB timeout...
 170.216 +09/05/2006 21:42:17.945  000>> Data datagram received:192.168.10.30
 170.217 +09/05/2006 21:42:17.945  000>> Received datagram...
 170.218 +09/05/2006 21:42:17.945  000>> Listner:Received dictionary
 170.219 +09/05/2006 21:42:18.826  000>> Initiator:SENDRIB
 170.220 +09/05/2006 21:42:18.826  000>> Sended datagram...
 170.221 +09/05/2006 21:42:18.826  000>> Data datagram sent:192.168.10.30
 170.222 +09/05/2006 21:42:18.846  000>> Data datagram received:192.168.10.30
 170.223 +09/05/2006 21:42:18.846  000>> Received datagram...
 170.224 +09/05/2006 21:42:18.846  000>> Listner:Received RIB
 170.225 +09/05/2006 21:42:19.727  000>> Initiator:SENDBUNDLEOFFER
 170.226 +09/05/2006 21:42:19.727  000>> Sended datagram...
 170.227 +09/05/2006 21:42:19.727  000>> Data datagram sent:192.168.10.30
 170.228 +09/05/2006 21:42:19.737  000>> Data datagram received:192.168.10.30
 170.229 +09/05/2006 21:42:19.737  000>> Received datagram...
 170.230 +09/05/2006 21:42:19.737  000>> Initiator:Sending bundles
 170.231 +09/05/2006 21:42:19.737  000>> Sended datagram...
 170.232 +09/05/2006 21:42:19.737  000>> Data datagram sent:192.168.10.30
 170.233 +09/05/2006 21:42:19.747  000>> Listner:Idle state...
 170.234 +09/05/2006 21:42:19.747  000>> Data datagram received:192.168.10.30
 170.235 +09/05/2006 21:42:19.747  000>> Received datagram...
 170.236 +09/05/2006 21:42:19.747  000>> Listner:Received Bundle Offer
 170.237 +09/05/2006 21:42:19.747  000>> Sended datagram...
 170.238 +09/05/2006 21:42:19.747  000>> Data datagram sent:192.168.10.30
 170.239 +09/05/2006 21:42:19.757  000>> Data datagram received:192.168.10.30
 170.240 +09/05/2006 21:42:19.757  000>> Received datagram...
 170.241 +09/05/2006 21:42:20.629  000>> Hello Procedure:SENDSYN
 170.242 +09/05/2006 21:42:20.629  000>> Sended datagram...
 170.243 +09/05/2006 21:42:20.629  000>> Data datagram sent:192.168.10.30
 170.244 +09/05/2006 21:42:20.639  000>> Data datagram received:192.168.10.30
 170.245 +09/05/2006 21:42:20.639  000>> Received datagram...
 170.246 +09/05/2006 21:42:20.639  000>> Receive Hello:SYNACK
 170.247 +09/05/2006 21:42:20.649  000>> Sended datagram...
 170.248 +09/05/2006 21:42:20.649  000>> Data datagram sent:192.168.10.30
 170.249 +09/05/2006 21:42:20.659  000>> Listner:DICTIONARY timeout...
 170.250 +09/05/2006 21:42:21.550  000>> Initiator:SENDDICTIONARY
 170.251 +09/05/2006 21:42:21.550  000>> Sended datagram...
 170.252 +09/05/2006 21:42:21.550  000>> Data datagram sent:192.168.10.30
 170.253 +09/05/2006 21:42:21.560  000>> Listner:RIB timeout...
 170.254 +09/05/2006 21:42:21.560  000>> Data datagram received:192.168.10.30
 170.255 +09/05/2006 21:42:21.560  000>> Received datagram...
 170.256 +09/05/2006 21:42:21.560  000>> Listner:Received dictionary
 170.257 +09/05/2006 21:42:22.451  000>> Initiator:SENDRIB
 170.258 +09/05/2006 21:42:22.451  000>> Sended datagram...
 170.259 +09/05/2006 21:42:22.451  000>> Data datagram sent:192.168.10.30
 170.260 +09/05/2006 21:42:22.461  000>> Hm Listner default...
 170.261 +09/05/2006 21:42:22.471  000>> Data datagram received:192.168.10.30
 170.262 +09/05/2006 21:42:22.471  000>> Received datagram...
 170.263 +09/05/2006 21:42:22.471  000>> Listner:Received RIB
 170.264 +09/05/2006 21:42:23.353  000>> Initiator:SENDBUNDLEOFFER
 170.265 +09/05/2006 21:42:23.353  000>> Sended datagram...
 170.266 +09/05/2006 21:42:23.353  000>> Data datagram sent:192.168.10.30
 170.267 +09/05/2006 21:42:23.363  000>> Data datagram received:192.168.10.30
 170.268 +09/05/2006 21:42:23.363  000>> Received datagram...
 170.269 +09/05/2006 21:42:23.373  000>> Initiator:Sending bundles
 170.270 +09/05/2006 21:42:23.373  000>> Sended datagram...
 170.271 +09/05/2006 21:42:23.373  000>> Data datagram sent:192.168.10.30
 170.272 +09/05/2006 21:42:23.373  000>> Listner:Idle state...
 170.273 +09/05/2006 21:42:23.373  000>> Data datagram received:192.168.10.30
 170.274 +09/05/2006 21:42:23.373  000>> Received datagram...
 170.275 +09/05/2006 21:42:23.373  000>> Listner:Received Bundle Offer
 170.276 +09/05/2006 21:42:23.373  000>> Sended datagram...
 170.277 +09/05/2006 21:42:23.373  000>> Data datagram sent:192.168.10.30
 170.278 +09/05/2006 21:42:23.383  000>> Data datagram received:192.168.10.30
 170.279 +09/05/2006 21:42:23.383  000>> Received datagram...
 170.280 +09/05/2006 21:42:24.254  000>> Hello Procedure:SENDSYN
 170.281 +09/05/2006 21:42:24.254  000>> Sended datagram...
 170.282 +09/05/2006 21:42:24.254  000>> Data datagram sent:192.168.10.30
 170.283 +09/05/2006 21:42:24.264  000>> Data datagram received:192.168.10.30
 170.284 +09/05/2006 21:42:24.264  000>> Received datagram...
 170.285 +09/05/2006 21:42:24.264  000>> Receive Hello:SYNACK
 170.286 +09/05/2006 21:42:24.264  000>> Sended datagram...
 170.287 +09/05/2006 21:42:24.264  000>> Data datagram sent:192.168.10.30
 170.288 +09/05/2006 21:42:24.284  000>> Listner:DICTIONARY timeout...
 170.289 +09/05/2006 21:42:25.165  000>> Initiator:SENDDICTIONARY
 170.290 +09/05/2006 21:42:25.165  000>> Sended datagram...
 170.291 +09/05/2006 21:42:25.165  000>> Data datagram sent:192.168.10.30
 170.292 +09/05/2006 21:42:25.175  000>> Data datagram received:192.168.10.30
 170.293 +09/05/2006 21:42:25.175  000>> Received datagram...
 170.294 +09/05/2006 21:42:25.175  000>> Receive Hello:SYN
 170.295 +09/05/2006 21:42:25.175  000>> Sended datagram...
 170.296 +09/05/2006 21:42:25.175  000>> Data datagram sent:192.168.10.30
 170.297 +09/05/2006 21:42:25.185  000>> Listner:RIB timeout...
 170.298 +09/05/2006 21:42:25.185  000>> Data datagram received:192.168.10.30
 170.299 +09/05/2006 21:42:25.185  000>> Received datagram...
 170.300 +09/05/2006 21:42:26.087  000>> Listner:RIB timeout...
 170.301 +09/05/2006 21:42:26.097  000>> Data datagram received:192.168.10.30
 170.302 +09/05/2006 21:42:26.097  000>> Received datagram...
 170.303 +09/05/2006 21:42:26.097  000>> Listner:Received dictionary
 170.304 +09/05/2006 21:42:26.097  000>> Initiator:SENDRIB
 170.305 +09/05/2006 21:42:26.097  000>> Sended datagram...
 170.306 +09/05/2006 21:42:26.097  000>> Data datagram sent:192.168.10.30
 170.307 +09/05/2006 21:42:26.998  000>> Initiator:SENDBUNDLEOFFER
 170.308 +09/05/2006 21:42:26.998  000>> Sended datagram...
 170.309 +09/05/2006 21:42:26.998  000>> Data datagram sent:192.168.10.30
 170.310 +09/05/2006 21:42:26.998  000>> Listner:BUNDLES Timeout...
 170.311 +09/05/2006 21:42:27.008  000>> Data datagram received:192.168.10.30
 170.312 +09/05/2006 21:42:27.008  000>> Received datagram...
 170.313 +09/05/2006 21:42:27.008  000>> Listner:Received RIB
 170.314 +09/05/2006 21:42:27.018  000>> Data datagram received:192.168.10.30
 170.315 +09/05/2006 21:42:27.018  000>> Received datagram...
 170.316 +09/05/2006 21:42:27.018  000>> Initiator:Sending bundles
 170.317 +09/05/2006 21:42:27.018  000>> Sended datagram...
 170.318 +09/05/2006 21:42:27.018  000>> Data datagram sent:192.168.10.30
 170.319 +09/05/2006 21:42:27.909  000>> Data datagram received:192.168.10.30
 170.320 +09/05/2006 21:42:27.909  000>> Received datagram...
 170.321 +09/05/2006 21:42:27.909  000>> Listner:Received Bundle Offer
 170.322 +09/05/2006 21:42:27.909  000>> Sended datagram...
 170.323 +09/05/2006 21:42:27.909  000>> Data datagram sent:192.168.10.30
 170.324 +09/05/2006 21:42:27.919  000>> Data datagram received:192.168.10.30
 170.325 +09/05/2006 21:42:27.919  000>> Received datagram...
 170.326 +09/05/2006 21:42:27.919  000>> Initiator:Idle state...
 170.327 +09/05/2006 21:42:28.800  000>> Hello Procedure:SENDSYN
 170.328 +09/05/2006 21:42:28.800  000>> Sended datagram...
 170.329 +09/05/2006 21:42:28.800  000>> Data datagram sent:192.168.10.30
 170.330 +09/05/2006 21:42:28.810  000>> Data datagram received:192.168.10.30
 170.331 +09/05/2006 21:42:28.810  000>> Received datagram...
 170.332 +09/05/2006 21:42:28.810  000>> Receive Hello:SYNACK
 170.333 +09/05/2006 21:42:28.810  000>> Sended datagram...
 170.334 +09/05/2006 21:42:28.810  000>> Data datagram sent:192.168.10.30
 170.335 +09/05/2006 21:42:28.820  000>> Listner:DICTIONARY timeout...
 170.336 +09/05/2006 21:42:29.712  000>> Initiator:SENDDICTIONARY
 170.337 +09/05/2006 21:42:29.712  000>> Sended datagram...
 170.338 +09/05/2006 21:42:29.712  000>> Data datagram sent:192.168.10.30
 170.339 +09/05/2006 21:42:29.722  000>> Listner:RIB timeout...
 170.340 +09/05/2006 21:42:29.722  000>> Data datagram received:192.168.10.30
 170.341 +09/05/2006 21:42:29.722  000>> Received datagram...
 170.342 +09/05/2006 21:42:29.722  000>> Listner:Received dictionary
 170.343 +09/05/2006 21:42:30.613  000>> Initiator:SENDRIB
 170.344 +09/05/2006 21:42:30.613  000>> Sended datagram...
 170.345 +09/05/2006 21:42:30.613  000>> Data datagram sent:192.168.10.30
 170.346 +09/05/2006 21:42:30.623  000>> Hm Listner default...
 170.347 +09/05/2006 21:42:30.623  000>> Data datagram received:192.168.10.30
 170.348 +09/05/2006 21:42:30.623  000>> Received datagram...
 170.349 +09/05/2006 21:42:30.623  000>> Listner:Received RIB
 170.350 +09/05/2006 21:42:31.514  000>> Initiator:SENDBUNDLEOFFER
 170.351 +09/05/2006 21:42:31.514  000>> Sended datagram...
 170.352 +09/05/2006 21:42:31.514  000>> Data datagram sent:192.168.10.30
 170.353 +09/05/2006 21:42:31.524  000>> Listner:BUNDLES Timeout...
 170.354 +09/05/2006 21:42:31.524  000>> Data datagram received:192.168.10.30
 170.355 +09/05/2006 21:42:31.534  000>> Received datagram...
 170.356 +09/05/2006 21:42:31.534  000>> Initiator:Sending bundles
 170.357 +09/05/2006 21:42:31.534  000>> Sended datagram...
 170.358 +09/05/2006 21:42:31.534  000>> Data datagram sent:192.168.10.30
 170.359 +09/05/2006 21:42:31.534  000>> Data datagram received:192.168.10.30
 170.360 +09/05/2006 21:42:31.534  000>> Received datagram...
 170.361 +09/05/2006 21:42:31.534  000>> Listner:Received Bundle Offer
 170.362 +09/05/2006 21:42:31.534  000>> Sended datagram...
 170.363 +09/05/2006 21:42:31.534  000>> Data datagram sent:192.168.10.30
 170.364 +09/05/2006 21:42:31.544  000>> Data datagram received:192.168.10.30
 170.365 +09/05/2006 21:42:31.544  000>> Received datagram...
 170.366 +09/05/2006 21:42:32.436  000>> Initiator:Idle state...
 170.367 +09/05/2006 21:42:32.436  000>> Data datagram received:192.168.10.30
 170.368 +09/05/2006 21:42:32.436  000>> Received datagram...
 170.369 +09/05/2006 21:42:32.436  000>> Receive Hello:SYN
 170.370 +09/05/2006 21:42:32.436  000>> Sended datagram...
 170.371 +09/05/2006 21:42:32.436  000>> Data datagram sent:192.168.10.30
 170.372 +09/05/2006 21:42:32.446  000>> Data datagram received:192.168.10.30
 170.373 +09/05/2006 21:42:32.446  000>> Received datagram...
 170.374 +09/05/2006 21:42:33.347  000>> Listner:DICTIONARY timeout...
 170.375 +09/05/2006 21:42:33.357  000>> Initiator:SENDDICTIONARY
 170.376 +09/05/2006 21:42:33.357  000>> Sended datagram...
 170.377 +09/05/2006 21:42:33.357  000>> Data datagram sent:192.168.10.30
 170.378 +09/05/2006 21:42:33.357  000>> Data datagram received:192.168.10.30
 170.379 +09/05/2006 21:42:33.357  000>> Received datagram...
 170.380 +09/05/2006 21:42:33.357  000>> Listner:Received dictionary
 170.381 +09/05/2006 21:42:34.258  000>> Listner:RIB timeout...
 170.382 +09/05/2006 21:42:34.258  000>> Initiator:SENDRIB
 170.383 +09/05/2006 21:42:34.258  000>> Sended datagram...
 170.384 +09/05/2006 21:42:34.258  000>> Data datagram sent:192.168.10.30
 170.385 +09/05/2006 21:42:34.268  000>> Data datagram received:192.168.10.30
 170.386 +09/05/2006 21:42:34.268  000>> Received datagram...
 170.387 +09/05/2006 21:42:34.268  000>> Listner:Received RIB
 170.388 +09/05/2006 21:42:35.160  000>> Initiator:SENDBUNDLEOFFER
 170.389 +09/05/2006 21:42:35.160  000>> Sended datagram...
 170.390 +09/05/2006 21:42:35.160  000>> Data datagram sent:192.168.10.30
 170.391 +09/05/2006 21:42:35.170  000>> Listner:BUNDLES Timeout...
 170.392 +09/05/2006 21:42:35.170  000>> Data datagram received:192.168.10.30
 170.393 +09/05/2006 21:42:35.170  000>> Received datagram...
 170.394 +09/05/2006 21:42:35.170  000>> Initiator:Sending bundles
 170.395 +09/05/2006 21:42:35.170  000>> Sended datagram...
 170.396 +09/05/2006 21:42:35.170  000>> Data datagram sent:192.168.10.30
 170.397 +09/05/2006 21:42:35.170  000>> Data datagram received:192.168.10.30
 170.398 +09/05/2006 21:42:35.180  000>> Received datagram...
 170.399 +09/05/2006 21:42:35.180  000>> Listner:Received Bundle Offer
 170.400 +09/05/2006 21:42:35.180  000>> Sended datagram...
 170.401 +09/05/2006 21:42:35.180  000>> Data datagram sent:192.168.10.30
 170.402 +09/05/2006 21:42:35.190  000>> Data datagram received:192.168.10.30
 170.403 +09/05/2006 21:42:35.190  000>> Received datagram...
 170.404 +09/05/2006 21:42:36.071  000>> Initiator:Idle state...
 170.405 +09/05/2006 21:42:36.081  000>> Data datagram received:192.168.10.30
 170.406 +09/05/2006 21:42:36.081  000>> Received datagram...
 170.407 +09/05/2006 21:42:36.081  000>> Receive Hello:SYN
 170.408 +09/05/2006 21:42:36.081  000>> Sended datagram...
 170.409 +09/05/2006 21:42:36.081  000>> Data datagram sent:192.168.10.30
 170.410 +09/05/2006 21:42:36.091  000>> Data datagram received:192.168.10.30
 170.411 +09/05/2006 21:42:36.091  000>> Received datagram...
 170.412 +09/05/2006 21:42:36.992  000>> Initiator:SENDDICTIONARY
 170.413 +09/05/2006 21:42:36.992  000>> Sended datagram...
 170.414 +09/05/2006 21:42:36.992  000>> Data datagram sent:192.168.10.30
 170.415 +09/05/2006 21:42:36.992  000>> Listner:RIB timeout...
 170.416 +09/05/2006 21:42:37.002  000>> Data datagram received:192.168.10.30
 170.417 +09/05/2006 21:42:37.002  000>> Received datagram...
 170.418 +09/05/2006 21:42:37.002  000>> Listner:Received dictionary
 170.419 +09/05/2006 21:42:37.894  000>> Initiator:SENDRIB
 170.420 +09/05/2006 21:42:37.894  000>> Sended datagram...
 170.421 +09/05/2006 21:42:37.894  000>> Data datagram sent:192.168.10.30
 170.422 +09/05/2006 21:42:37.904  000>> Hm Listner default...
 170.423 +09/05/2006 21:42:37.904  000>> Data datagram received:192.168.10.30
 170.424 +09/05/2006 21:42:37.904  000>> Received datagram...
 170.425 +09/05/2006 21:42:37.904  000>> Listner:Received RIB
 170.426 +09/05/2006 21:42:38.795  000>> Initiator:SENDBUNDLEOFFER
 170.427 +09/05/2006 21:42:38.795  000>> Sended datagram...
 170.428 +09/05/2006 21:42:38.795  000>> Data datagram sent:192.168.10.30
 170.429 +09/05/2006 21:42:38.805  000>> Data datagram received:192.168.10.30
 170.430 +09/05/2006 21:42:38.805  000>> Received datagram...
 170.431 +09/05/2006 21:42:38.805  000>> Initiator:Sending bundles
 170.432 +09/05/2006 21:42:38.805  000>> Sended datagram...
 170.433 +09/05/2006 21:42:38.805  000>> Data datagram sent:192.168.10.30
 170.434 +09/05/2006 21:42:38.805  000>> Listner:Idle state...
 170.435 +09/05/2006 21:42:38.815  000>> Data datagram received:192.168.10.30
 170.436 +09/05/2006 21:42:38.815  000>> Received datagram...
 170.437 +09/05/2006 21:42:38.815  000>> Listner:Received Bundle Offer
 170.438 +09/05/2006 21:42:38.815  000>> Sended datagram...
 170.439 +09/05/2006 21:42:38.815  000>> Data datagram sent:192.168.10.30
 170.440 +09/05/2006 21:42:38.825  000>> Data datagram received:192.168.10.30
 170.441 +09/05/2006 21:42:38.825  000>> Received datagram...
 170.442 +09/05/2006 21:42:39.696  000>> Hello Procedure:SENDSYN
 170.443 +09/05/2006 21:42:39.696  000>> Sended datagram...
 170.444 +09/05/2006 21:42:39.696  000>> Data datagram sent:192.168.10.30
 170.445 +09/05/2006 21:42:39.716  000>> Data datagram received:192.168.10.30
 170.446 +09/05/2006 21:42:39.716  000>> Received datagram...
 170.447 +09/05/2006 21:42:39.716  000>> Receive Hello:SYNACK
 170.448 +09/05/2006 21:42:39.716  000>> Sended datagram...
 170.449 +09/05/2006 21:42:39.716  000>> Data datagram sent:192.168.10.30
 170.450 +09/05/2006 21:42:39.726  000>> Listner:DICTIONARY timeout...
 170.451 +09/05/2006 21:42:40.617  000>> Initiator:SENDDICTIONARY
 170.452 +09/05/2006 21:42:40.617  000>> Sended datagram...
 170.453 +09/05/2006 21:42:40.617  000>> Data datagram sent:192.168.10.30
 170.454 +09/05/2006 21:42:40.627  000>> Listner:RIB timeout...
 170.455 +09/05/2006 21:42:40.627  000>> Data datagram received:192.168.10.30
 170.456 +09/05/2006 21:42:40.627  000>> Received datagram...
 170.457 +09/05/2006 21:42:40.627  000>> Listner:Received dictionary
 170.458 +09/05/2006 21:42:41.519  000>> Initiator:SENDRIB
 170.459 +09/05/2006 21:42:41.519  000>> Sended datagram...
 170.460 +09/05/2006 21:42:41.519  000>> Data datagram sent:192.168.10.30
 170.461 +09/05/2006 21:42:41.529  000>> Hm Listner default...
 170.462 +09/05/2006 21:42:41.529  000>> Data datagram received:192.168.10.30
 170.463 +09/05/2006 21:42:41.539  000>> Received datagram...
 170.464 +09/05/2006 21:42:41.539  000>> Listner:Received RIB
 170.465 +09/05/2006 21:42:42.420  000>> Initiator:SENDBUNDLEOFFER
 170.466 +09/05/2006 21:42:42.420  000>> Sended datagram...
 170.467 +09/05/2006 21:42:42.420  000>> Data datagram sent:192.168.10.30
 170.468 +09/05/2006 21:42:42.430  000>> Data datagram received:192.168.10.30
 170.469 +09/05/2006 21:42:42.430  000>> Received datagram...
 170.470 +09/05/2006 21:42:42.430  000>> Initiator:Sending bundles
 170.471 +09/05/2006 21:42:42.430  000>> Sended datagram...
 170.472 +09/05/2006 21:42:42.430  000>> Data datagram sent:192.168.10.30
 170.473 +09/05/2006 21:42:42.440  000>> Data datagram received:192.168.10.30
 170.474 +09/05/2006 21:42:42.440  000>> Received datagram...
 170.475 +09/05/2006 21:42:42.440  000>> Listner:Received Bundle Offer
 170.476 +09/05/2006 21:42:42.440  000>> Sended datagram...
 170.477 +09/05/2006 21:42:42.440  000>> Data datagram sent:192.168.10.30
 170.478 +09/05/2006 21:42:42.450  000>> Data datagram received:192.168.10.30
 170.479 +09/05/2006 21:42:42.450  000>> Received datagram...
 170.480 +09/05/2006 21:42:43.331  000>> Initiator:Idle state...
 170.481 +09/05/2006 21:42:43.341  000>> Data datagram received:192.168.10.30
 170.482 +09/05/2006 21:42:43.341  000>> Received datagram...
 170.483 +09/05/2006 21:42:43.341  000>> Receive Hello:SYN
 170.484 +09/05/2006 21:42:43.341  000>> Sended datagram...
 170.485 +09/05/2006 21:42:43.341  000>> Data datagram sent:192.168.10.30
 170.486 +09/05/2006 21:42:43.351  000>> Data datagram received:192.168.10.30
 170.487 +09/05/2006 21:42:43.351  000>> Received datagram...
 170.488 +09/05/2006 21:42:44.253  000>> Initiator:SENDDICTIONARY
 170.489 +09/05/2006 21:42:44.253  000>> Sended datagram...
 170.490 +09/05/2006 21:42:44.253  000>> Data datagram sent:192.168.10.30
 170.491 +09/05/2006 21:42:44.253  000>> Listner:RIB timeout...
 170.492 +09/05/2006 21:42:44.263  000>> Data datagram received:192.168.10.30
 170.493 +09/05/2006 21:42:44.263  000>> Received datagram...
 170.494 +09/05/2006 21:42:44.263  000>> Listner:Received dictionary
 170.495 +09/05/2006 21:42:45.154  000>> Initiator:SENDRIB
 170.496 +09/05/2006 21:42:45.154  000>> Sended datagram...
 170.497 +09/05/2006 21:42:45.154  000>> Data datagram sent:192.168.10.30
 170.498 +09/05/2006 21:42:45.164  000>> Hm Listner default...
 170.499 +09/05/2006 21:42:45.174  000>> Data datagram received:192.168.10.30
 170.500 +09/05/2006 21:42:45.174  000>> Received datagram...
 170.501 +09/05/2006 21:42:45.174  000>> Listner:Received RIB
 170.502 +09/05/2006 21:42:46.055  000>> Initiator:SENDBUNDLEOFFER
 170.503 +09/05/2006 21:42:46.055  000>> Sended datagram...
 170.504 +09/05/2006 21:42:46.055  000>> Data datagram sent:192.168.10.30
 170.505 +09/05/2006 21:42:46.065  000>> Data datagram received:192.168.10.30
 170.506 +09/05/2006 21:42:46.065  000>> Received datagram...
 170.507 +09/05/2006 21:42:46.075  000>> Initiator:Sending bundles
 170.508 +09/05/2006 21:42:46.075  000>> Sended datagram...
 170.509 +09/05/2006 21:42:46.075  000>> Data datagram sent:192.168.10.30
 170.510 +09/05/2006 21:42:46.075  000>> Listner:Idle state...
 170.511 +09/05/2006 21:42:46.075  000>> Data datagram received:192.168.10.30
 170.512 +09/05/2006 21:42:46.075  000>> Received datagram...
 170.513 +09/05/2006 21:42:46.075  000>> Listner:Received Bundle Offer
 170.514 +09/05/2006 21:42:46.075  000>> Sended datagram...
 170.515 +09/05/2006 21:42:46.085  000>> Data datagram sent:192.168.10.30
 170.516 +09/05/2006 21:42:46.095  000>> Data datagram received:192.168.10.30
 170.517 +09/05/2006 21:42:46.095  000>> Received datagram...
 170.518 +09/05/2006 21:42:46.957  000>> Hello Procedure:SENDSYN
 170.519 +09/05/2006 21:42:46.957  000>> Sended datagram...
 170.520 +09/05/2006 21:42:46.957  000>> Data datagram sent:192.168.10.30
 170.521 +09/05/2006 21:42:46.967  000>> Data datagram received:192.168.10.30
 170.522 +09/05/2006 21:42:46.967  000>> Received datagram...
 170.523 +09/05/2006 21:42:46.967  000>> Receive Hello:SYNACK
 170.524 +09/05/2006 21:42:46.977  000>> Sended datagram...
 170.525 +09/05/2006 21:42:46.977  000>> Data datagram sent:192.168.10.30
 170.526 +09/05/2006 21:42:46.997  000>> Listner:DICTIONARY timeout...
 170.527 +09/05/2006 21:42:47.878  000>> Initiator:SENDDICTIONARY
 170.528 +09/05/2006 21:42:47.878  000>> Sended datagram...
 170.529 +09/05/2006 21:42:47.878  000>> Data datagram sent:192.168.10.30
 170.530 +09/05/2006 21:42:47.888  000>> Data datagram received:192.168.10.30
 170.531 +09/05/2006 21:42:47.898  000>> Received datagram...
 170.532 +09/05/2006 21:42:47.898  000>> Receive Hello:SYN
 170.533 +09/05/2006 21:42:47.898  000>> Sended datagram...
 170.534 +09/05/2006 21:42:47.898  000>> Data datagram sent:192.168.10.30
 170.535 +09/05/2006 21:42:47.898  000>> Listner:RIB timeout...
 170.536 +09/05/2006 21:42:47.908  000>> Data datagram received:192.168.10.30
 170.537 +09/05/2006 21:42:47.908  000>> Received datagram...
 170.538 +09/05/2006 21:42:48.799  000>> Listner:RIB timeout...
 170.539 +09/05/2006 21:42:48.809  000>> Initiator:SENDRIB
 170.540 +09/05/2006 21:42:48.809  000>> Sended datagram...
 170.541 +09/05/2006 21:42:48.809  000>> Data datagram sent:192.168.10.30
 170.542 +09/05/2006 21:42:48.809  000>> Data datagram received:192.168.10.30
 170.543 +09/05/2006 21:42:48.809  000>> Received datagram...
 170.544 +09/05/2006 21:42:48.809  000>> Listner:Received dictionary
 170.545 +09/05/2006 21:42:49.711  000>> Hm Listner default...
 170.546 +09/05/2006 21:42:49.711  000>> Initiator:SENDBUNDLEOFFER
 170.547 +09/05/2006 21:42:49.711  000>> Sended datagram...
 170.548 +09/05/2006 21:42:49.711  000>> Data datagram sent:192.168.10.30
 170.549 +09/05/2006 21:42:49.721  000>> Data datagram received:192.168.10.30
 170.550 +09/05/2006 21:42:49.721  000>> Received datagram...
 170.551 +09/05/2006 21:42:49.721  000>> Initiator:Sending bundles
 170.552 +09/05/2006 21:42:49.721  000>> Sended datagram...
 170.553 +09/05/2006 21:42:49.721  000>> Data datagram sent:192.168.10.30
 170.554 +09/05/2006 21:42:49.721  000>> Data datagram received:192.168.10.30
 170.555 +09/05/2006 21:42:49.721  000>> Received datagram...
 170.556 +09/05/2006 21:42:49.721  000>> Listner:Received RIB
 170.557 +09/05/2006 21:42:50.622  000>> Initiator:Idle state...
 170.558 +09/05/2006 21:42:50.622  000>> Data datagram received:192.168.10.30
 170.559 +09/05/2006 21:42:50.622  000>> Received datagram...
 170.560 +09/05/2006 21:42:50.632  000>> Listner:Received Bundle Offer
 170.561 +09/05/2006 21:42:50.632  000>> Sended datagram...
 170.562 +09/05/2006 21:42:50.632  000>> Data datagram sent:192.168.10.30
 170.563 +09/05/2006 21:42:50.642  000>> Data datagram received:192.168.10.30
 170.564 +09/05/2006 21:42:50.642  000>> Received datagram...
 170.565 +09/05/2006 21:42:51.513  000>> Hello Procedure:SENDSYN
 170.566 +09/05/2006 21:42:51.513  000>> Sended datagram...
 170.567 +09/05/2006 21:42:51.513  000>> Data datagram sent:192.168.10.30
 170.568 +09/05/2006 21:42:51.523  000>> Data datagram received:192.168.10.30
 170.569 +09/05/2006 21:42:51.523  000>> Received datagram...
 170.570 +09/05/2006 21:42:51.523  000>> Receive Hello:SYNACK
 170.571 +09/05/2006 21:42:51.523  000>> Sended datagram...
 170.572 +09/05/2006 21:42:51.523  000>> Data datagram sent:192.168.10.30
 170.573 +09/05/2006 21:42:51.543  000>> Listner:DICTIONARY timeout...
 170.574 +09/05/2006 21:42:52.424  000>> Initiator:SENDDICTIONARY
 170.575 +09/05/2006 21:42:52.424  000>> Sended datagram...
 170.576 +09/05/2006 21:42:52.424  000>> Data datagram sent:192.168.10.30
 170.577 +09/05/2006 21:42:52.434  000>> Data datagram received:192.168.10.30
 170.578 +09/05/2006 21:42:52.434  000>> Received datagram...
 170.579 +09/05/2006 21:42:52.434  000>> Listner:Received dictionary
 170.580 +09/05/2006 21:42:53.326  000>> Initiator:SENDRIB
 170.581 +09/05/2006 21:42:53.326  000>> Sended datagram...
 170.582 +09/05/2006 21:42:53.326  000>> Data datagram sent:192.168.10.30
 170.583 +09/05/2006 21:42:53.336  000>> Hm Listner default...
 170.584 +09/05/2006 21:42:53.346  000>> Data datagram received:192.168.10.30
 170.585 +09/05/2006 21:42:53.346  000>> Received datagram...
 170.586 +09/05/2006 21:42:53.346  000>> Listner:Received RIB
 170.587 +09/05/2006 21:42:54.227  000>> Initiator:SENDBUNDLEOFFER
 170.588 +09/05/2006 21:42:54.227  000>> Sended datagram...
 170.589 +09/05/2006 21:42:54.227  000>> Data datagram sent:192.168.10.30
 170.590 +09/05/2006 21:42:54.247  000>> Data datagram received:192.168.10.30
 170.591 +09/05/2006 21:42:54.247  000>> Received datagram...
 170.592 +09/05/2006 21:42:54.247  000>> Initiator:Sending bundles
 170.593 +09/05/2006 21:42:54.247  000>> Sended datagram...
 170.594 +09/05/2006 21:42:54.247  000>> Data datagram sent:192.168.10.30
 170.595 +09/05/2006 21:42:54.247  000>> Listner:Idle state...
 170.596 +09/05/2006 21:42:54.247  000>> Data datagram received:192.168.10.30
 170.597 +09/05/2006 21:42:54.247  000>> Received datagram...
 170.598 +09/05/2006 21:42:54.247  000>> Listner:Received Bundle Offer
 170.599 +09/05/2006 21:42:54.247  000>> Sended datagram...
 170.600 +09/05/2006 21:42:54.257  000>> Data datagram sent:192.168.10.30
 170.601 +09/05/2006 21:42:54.257  000>> Data datagram received:192.168.10.30
 170.602 +09/05/2006 21:42:54.267  000>> Received datagram...
 170.603 +09/05/2006 21:42:55.128  000>> Hello Procedure:SENDSYN
 170.604 +09/05/2006 21:42:55.128  000>> Sended datagram...
 170.605 +09/05/2006 21:42:55.128  000>> Data datagram sent:192.168.10.30
 170.606 +09/05/2006 21:42:55.138  000>> Data datagram received:192.168.10.30
 170.607 +09/05/2006 21:42:55.148  000>> Received datagram...
 170.608 +09/05/2006 21:42:55.148  000>> Receive Hello:SYNACK
 170.609 +09/05/2006 21:42:55.148  000>> Sended datagram...
 170.610 +09/05/2006 21:42:55.148  000>> Data datagram sent:192.168.10.30
 170.611 +09/05/2006 21:42:55.168  000>> Listner:DICTIONARY timeout...
 170.612 +09/05/2006 21:42:56.050  000>> Initiator:SENDDICTIONARY
 170.613 +09/05/2006 21:42:56.050  000>> Sended datagram...
 170.614 +09/05/2006 21:42:56.050  000>> Data datagram sent:192.168.10.30
 170.615 +09/05/2006 21:42:56.070  000>> Listner:RIB timeout...
 170.616 +09/05/2006 21:42:56.120  000>> Data datagram received:192.168.10.30
 170.617 +09/05/2006 21:42:56.120  000>> Received datagram...
 170.618 +09/05/2006 21:42:56.120  000>> Receive Hello:SYN
 170.619 +09/05/2006 21:42:56.120  000>> Sended datagram...
 170.620 +09/05/2006 21:42:56.120  000>> Data datagram sent:192.168.10.30
 170.621 +09/05/2006 21:42:56.130  000>> Data datagram received:192.168.10.30
 170.622 +09/05/2006 21:42:56.130  000>> Received datagram...
 170.623 +09/05/2006 21:42:56.971  000>> Listner:RIB timeout...
 170.624 +09/05/2006 21:42:57.031  000>> Data datagram received:192.168.10.30
 170.625 +09/05/2006 21:42:57.031  000>> Received datagram...
 170.626 +09/05/2006 21:42:57.031  000>> Listner:Received dictionary
 170.627 +09/05/2006 21:42:57.041  000>> Initiator:SENDRIB
 170.628 +09/05/2006 21:42:57.041  000>> Sended datagram...
 170.629 +09/05/2006 21:42:57.041  000>> Data datagram sent:192.168.10.30
 170.630 +09/05/2006 21:42:57.932  000>> Hm Listner default...
 170.631 +09/05/2006 21:42:57.942  000>> Data datagram received:192.168.10.30
 170.632 +09/05/2006 21:42:57.942  000>> Received datagram...
 170.633 +09/05/2006 21:42:57.942  000>> Listner:Received RIB
 170.634 +09/05/2006 21:42:57.942  000>> Initiator:SENDBUNDLEOFFER
 170.635 +09/05/2006 21:42:57.942  000>> Sended datagram...
 170.636 +09/05/2006 21:42:57.942  000>> Data datagram sent:192.168.10.30
 170.637 +09/05/2006 21:42:57.952  000>> Data datagram received:192.168.10.30
 170.638 +09/05/2006 21:42:57.952  000>> Received datagram...
 170.639 +09/05/2006 21:42:57.952  000>> Initiator:Sending bundles
 170.640 +09/05/2006 21:42:57.952  000>> Sended datagram...
 170.641 +09/05/2006 21:42:57.952  000>> Data datagram sent:192.168.10.30
 170.642 +09/05/2006 21:42:58.844  000>> Data datagram received:192.168.10.30
 170.643 +09/05/2006 21:42:58.844  000>> Received datagram...
 170.644 +09/05/2006 21:42:58.844  000>> Listner:Received Bundle Offer
 170.645 +09/05/2006 21:42:58.844  000>> Sended datagram...
 170.646 +09/05/2006 21:42:58.844  000>> Data datagram sent:192.168.10.30
 170.647 +09/05/2006 21:42:58.854  000>> Initiator:Idle state...
 170.648 +09/05/2006 21:42:58.854  000>> Data datagram received:192.168.10.30
 170.649 +09/05/2006 21:42:58.854  000>> Received datagram...
 170.650 +09/05/2006 21:42:59.745  000>> Hello Procedure:SENDSYN
 170.651 +09/05/2006 21:42:59.745  000>> Sended datagram...
 170.652 +09/05/2006 21:42:59.745  000>> Data datagram sent:192.168.10.30
 170.653 +09/05/2006 21:42:59.755  000>> Data datagram received:192.168.10.30
 170.654 +09/05/2006 21:42:59.755  000>> Received datagram...
 170.655 +09/05/2006 21:42:59.755  000>> Receive Hello:SYN
 170.656 +09/05/2006 21:42:59.755  000>> Sended datagram...
 170.657 +09/05/2006 21:42:59.755  000>> Data datagram sent:192.168.10.30
 170.658 +09/05/2006 21:42:59.755  000>> Data datagram received:192.168.10.30
 170.659 +09/05/2006 21:42:59.755  000>> Received datagram...
 170.660 +09/05/2006 21:42:59.765  000>> Receive Hello:SYNACK
 170.661 +09/05/2006 21:42:59.765  000>> Sended datagram...
 170.662 +09/05/2006 21:42:59.765  000>> Data datagram sent:192.168.10.30
 170.663 +09/05/2006 21:42:59.765  000>> Data datagram received:192.168.10.30
 170.664 +09/05/2006 21:42:59.765  000>> Received datagram...
 170.665 +09/05/2006 21:43:00.656  000>> Listner:DICTIONARY timeout...
 170.666 +09/05/2006 21:43:00.666  000>> Initiator:SENDDICTIONARY
 170.667 +09/05/2006 21:43:00.666  000>> Sended datagram...
 170.668 +09/05/2006 21:43:00.666  000>> Data datagram sent:192.168.10.30
 170.669 +09/05/2006 21:43:00.676  000>> Data datagram received:192.168.10.30
 170.670 +09/05/2006 21:43:00.676  000>> Received datagram...
 170.671 +09/05/2006 21:43:00.676  000>> Listner:Received dictionary
 170.672 +09/05/2006 21:43:01.568  000>> Initiator:SENDRIB
 170.673 +09/05/2006 21:43:01.568  000>> Sended datagram...
 170.674 +09/05/2006 21:43:01.568  000>> Data datagram sent:192.168.10.30
 170.675 +09/05/2006 21:43:01.578  000>> Hm Listner default...
 170.676 +09/05/2006 21:43:01.578  000>> Data datagram received:192.168.10.30
 170.677 +09/05/2006 21:43:01.578  000>> Received datagram...
 170.678 +09/05/2006 21:43:01.588  000>> Listner:Received RIB
 170.679 +09/05/2006 21:43:02.469  000>> Initiator:SENDBUNDLEOFFER
 170.680 +09/05/2006 21:43:02.469  000>> Sended datagram...
 170.681 +09/05/2006 21:43:02.469  000>> Data datagram sent:192.168.10.30
 170.682 +09/05/2006 21:43:02.479  000>> Data datagram received:192.168.10.30
 170.683 +09/05/2006 21:43:02.479  000>> Received datagram...
 170.684 +09/05/2006 21:43:02.489  000>> Initiator:Sending bundles
 170.685 +09/05/2006 21:43:02.489  000>> Sended datagram...
 170.686 +09/05/2006 21:43:02.489  000>> Data datagram sent:192.168.10.30
 170.687 +09/05/2006 21:43:02.489  000>> Data datagram received:192.168.10.30
 170.688 +09/05/2006 21:43:02.489  000>> Received datagram...
 170.689 +09/05/2006 21:43:02.489  000>> Listner:Received Bundle Offer
 170.690 +09/05/2006 21:43:02.489  000>> Sended datagram...
 170.691 +09/05/2006 21:43:02.489  000>> Data datagram sent:192.168.10.30
 170.692 +09/05/2006 21:43:02.499  000>> Data datagram received:192.168.10.30
 170.693 +09/05/2006 21:43:02.499  000>> Received datagram...
 170.694 +09/05/2006 21:43:03.390  000>> Data datagram received:192.168.10.30
 170.695 +09/05/2006 21:43:03.390  000>> Received datagram...
 170.696 +09/05/2006 21:43:03.390  000>> Receive Hello:SYN
 170.697 +09/05/2006 21:43:03.390  000>> Sended datagram...
 170.698 +09/05/2006 21:43:03.390  000>> Data datagram sent:192.168.10.30
 170.699 +09/05/2006 21:43:03.390  000>> Initiator:Idle state...
 170.700 +09/05/2006 21:43:03.400  000>> Data datagram received:192.168.10.30
 170.701 +09/05/2006 21:43:03.400  000>> Received datagram...
 170.702 +09/05/2006 21:43:04.301  000>> Listner:DICTIONARY timeout...
 170.703 +09/05/2006 21:43:04.311  000>> Initiator:SENDDICTIONARY
 170.704 +09/05/2006 21:43:04.311  000>> Sended datagram...
 170.705 +09/05/2006 21:43:04.311  000>> Data datagram sent:192.168.10.30
 170.706 +09/05/2006 21:43:04.311  000>> Data datagram received:192.168.10.30
 170.707 +09/05/2006 21:43:04.311  000>> Received datagram...
 170.708 +09/05/2006 21:43:04.311  000>> Listner:Received dictionary
 170.709 +09/05/2006 21:43:05.213  000>> Listner:RIB timeout...
 170.710 +09/05/2006 21:43:05.213  000>> Initiator:SENDRIB
 170.711 +09/05/2006 21:43:05.213  000>> Sended datagram...
 170.712 +09/05/2006 21:43:05.213  000>> Data datagram sent:192.168.10.30
 170.713 +09/05/2006 21:43:05.223  000>> Data datagram received:192.168.10.30
 170.714 +09/05/2006 21:43:05.223  000>> Received datagram...
 170.715 +09/05/2006 21:43:05.223  000>> Listner:Received RIB
 170.716 +09/05/2006 21:43:06.114  000>> Initiator:SENDBUNDLEOFFER
 170.717 +09/05/2006 21:43:06.114  000>> Sended datagram...
 170.718 +09/05/2006 21:43:06.114  000>> Data datagram sent:192.168.10.30
 170.719 +09/05/2006 21:43:06.124  000>> Listner:BUNDLES Timeout...
 170.720 +09/05/2006 21:43:06.124  000>> Data datagram received:192.168.10.30
 170.721 +09/05/2006 21:43:06.124  000>> Received datagram...
 170.722 +09/05/2006 21:43:06.124  000>> Listner:Received Bundle Offer
 170.723 +09/05/2006 21:43:06.124  000>> Sended datagram...
 170.724 +09/05/2006 21:43:06.124  000>> Data datagram sent:192.168.10.30
 170.725 +09/05/2006 21:43:06.134  000>> Data datagram received:192.168.10.30
 170.726 +09/05/2006 21:43:06.134  000>> Received datagram...
 170.727 +09/05/2006 21:43:06.134  000>> Initiator:Sending bundles
 170.728 +09/05/2006 21:43:06.134  000>> Sended datagram...
 170.729 +09/05/2006 21:43:06.134  000>> Data datagram sent:192.168.10.30
 170.730 +09/05/2006 21:43:06.144  000>> Data datagram received:192.168.10.30
 170.731 +09/05/2006 21:43:06.144  000>> Received datagram...
 170.732 +09/05/2006 21:43:07.035  000>> Initiator:Idle state...
 170.733 +09/05/2006 21:43:07.917  000>> Hello Procedure:SENDSYN
 170.734 +09/05/2006 21:43:07.917  000>> Sended datagram...
 170.735 +09/05/2006 21:43:07.917  000>> Data datagram sent:192.168.10.30
 170.736 +09/05/2006 21:43:07.927  000>> Data datagram received:192.168.10.30
 170.737 +09/05/2006 21:43:07.927  000>> Received datagram...
 170.738 +09/05/2006 21:43:07.927  000>> Receive Hello:SYNACK
 170.739 +09/05/2006 21:43:07.937  000>> Sended datagram...
 170.740 +09/05/2006 21:43:07.937  000>> Data datagram sent:192.168.10.30
 170.741 +09/05/2006 21:43:07.947  000>> Listner:DICTIONARY timeout...
 170.742 +09/05/2006 21:43:08.838  000>> Initiator:SENDDICTIONARY
 170.743 +09/05/2006 21:43:08.838  000>> Sended datagram...
 170.744 +09/05/2006 21:43:08.838  000>> Data datagram sent:192.168.10.30
 170.745 +09/05/2006 21:43:08.848  000>> Data datagram received:192.168.10.30
 170.746 +09/05/2006 21:43:08.848  000>> Received datagram...
 170.747 +09/05/2006 21:43:08.848  000>> Listner:Received dictionary
 170.748 +09/05/2006 21:43:09.739  000>> Initiator:SENDRIB
 170.749 +09/05/2006 21:43:09.739  000>> Sended datagram...
 170.750 +09/05/2006 21:43:09.739  000>> Data datagram sent:192.168.10.30
 170.751 +09/05/2006 21:43:09.749  000>> Hm Listner default...
 170.752 +09/05/2006 21:43:09.749  000>> Data datagram received:192.168.10.30
 170.753 +09/05/2006 21:43:09.749  000>> Received datagram...
 170.754 +09/05/2006 21:43:09.749  000>> Listner:Received RIB
 170.755 +09/05/2006 21:43:10.641  000>> Initiator:SENDBUNDLEOFFER
 170.756 +09/05/2006 21:43:10.641  000>> Sended datagram...
 170.757 +09/05/2006 21:43:10.641  000>> Data datagram sent:192.168.10.30
 170.758 +09/05/2006 21:43:10.651  000>> Listner:BUNDLES Timeout...
 170.759 +09/05/2006 21:43:10.651  000>> Data datagram received:192.168.10.30
 170.760 +09/05/2006 21:43:10.651  000>> Received datagram...
 170.761 +09/05/2006 21:43:10.651  000>> Initiator:Sending bundles
 170.762 +09/05/2006 21:43:10.651  000>> Sended datagram...
 170.763 +09/05/2006 21:43:10.651  000>> Data datagram sent:192.168.10.30
 170.764 +09/05/2006 21:43:10.661  000>> Data datagram received:192.168.10.30
 170.765 +09/05/2006 21:43:10.661  000>> Received datagram...
 170.766 +09/05/2006 21:43:10.661  000>> Listner:Received Bundle Offer
 170.767 +09/05/2006 21:43:10.661  000>> Sended datagram...
 170.768 +09/05/2006 21:43:10.661  000>> Data datagram sent:192.168.10.30
 170.769 +09/05/2006 21:43:10.671  000>> Data datagram received:192.168.10.30
 170.770 +09/05/2006 21:43:10.671  000>> Received datagram...
 170.771 +09/05/2006 21:43:11.552  000>> Initiator:Idle state...
 170.772 +09/05/2006 21:43:11.562  000>> Data datagram received:192.168.10.30
 170.773 +09/05/2006 21:43:11.562  000>> Received datagram...
 170.774 +09/05/2006 21:43:11.562  000>> Receive Hello:SYN
 170.775 +09/05/2006 21:43:11.562  000>> Sended datagram...
 170.776 +09/05/2006 21:43:11.562  000>> Data datagram sent:192.168.10.30
 170.777 +09/05/2006 21:43:11.582  000>> Data datagram received:192.168.10.30
 170.778 +09/05/2006 21:43:11.582  000>> Received datagram...
 170.779 +09/05/2006 21:43:12.473  000>> Listner:DICTIONARY timeout...
 170.780 +09/05/2006 21:43:12.483  000>> Initiator:SENDDICTIONARY
 170.781 +09/05/2006 21:43:12.483  000>> Sended datagram...
 170.782 +09/05/2006 21:43:12.483  000>> Data datagram sent:192.168.10.30
 170.783 +09/05/2006 21:43:12.483  000>> Data datagram received:192.168.10.30
 170.784 +09/05/2006 21:43:12.483  000>> Received datagram...
 170.785 +09/05/2006 21:43:12.483  000>> Listner:Received dictionary
 170.786 +09/05/2006 21:43:13.365  000>> Data datagram received:192.168.10.30
 170.787 +09/05/2006 21:43:13.365  000>> Received datagram...
 170.788 +09/05/2006 21:43:13.365  000>> Listner:Received RIB
 170.789 +09/05/2006 21:43:13.385  000>> Initiator:SENDRIB
 170.790 +09/05/2006 21:43:13.385  000>> Sended datagram...
 170.791 +09/05/2006 21:43:13.385  000>> Data datagram sent:192.168.10.30
 170.792 +09/05/2006 21:43:14.266  000>> Data datagram received:192.168.10.30
 170.793 +09/05/2006 21:43:14.266  000>> Received datagram...
 170.794 +09/05/2006 21:43:14.266  000>> Listner:Received Bundle Offer
 170.795 +09/05/2006 21:43:14.266  000>> Sended datagram...
 170.796 +09/05/2006 21:43:14.266  000>> Data datagram sent:192.168.10.30
 170.797 +09/05/2006 21:43:14.276  000>> Data datagram received:192.168.10.30
 170.798 +09/05/2006 21:43:14.276  000>> Received datagram...
 170.799 +09/05/2006 21:43:14.286  000>> Initiator:SENDBUNDLEOFFER
 170.800 +09/05/2006 21:43:14.286  000>> Sended datagram...
 170.801 +09/05/2006 21:43:14.286  000>> Data datagram sent:192.168.10.30
 170.802 +09/05/2006 21:43:14.296  000>> Data datagram received:192.168.10.30
 170.803 +09/05/2006 21:43:14.296  000>> Received datagram...
 170.804 +09/05/2006 21:43:14.296  000>> Initiator:Sending bundles
 170.805 +09/05/2006 21:43:14.296  000>> Sended datagram...
 170.806 +09/05/2006 21:43:14.306  000>> Data datagram sent:192.168.10.30
 170.807 +09/05/2006 21:43:15.187  000>> Listner:Idle state...
 170.808 +09/05/2006 21:43:16.078  000>> Data datagram received:192.168.10.30
 170.809 +09/05/2006 21:43:16.078  000>> Received datagram...
 170.810 +09/05/2006 21:43:16.078  000>> Receive Hello:SYN
 170.811 +09/05/2006 21:43:16.078  000>> Sended datagram...
 170.812 +09/05/2006 21:43:16.078  000>> Data datagram sent:192.168.10.30
 170.813 +09/05/2006 21:43:16.088  000>> Data datagram received:192.168.10.30
 170.814 +09/05/2006 21:43:16.098  000>> Received datagram...
 170.815 +09/05/2006 21:43:16.990  000>> Listner:DICTIONARY timeout...
 170.816 +09/05/2006 21:43:17.000  000>> Initiator:SENDDICTIONARY
 170.817 +09/05/2006 21:43:17.000  000>> Sended datagram...
 170.818 +09/05/2006 21:43:17.000  000>> Data datagram sent:192.168.10.30
 170.819 +09/05/2006 21:43:17.000  000>> Data datagram received:192.168.10.30
 170.820 +09/05/2006 21:43:17.000  000>> Received datagram...
 170.821 +09/05/2006 21:43:17.000  000>> Listner:Received dictionary
 170.822 +09/05/2006 21:43:17.901  000>> Initiator:SENDRIB
 170.823 +09/05/2006 21:43:17.901  000>> Sended datagram...
 170.824 +09/05/2006 21:43:17.901  000>> Data datagram sent:192.168.10.30
 170.825 +09/05/2006 21:43:17.911  000>> Hm Listner default...
 170.826 +09/05/2006 21:43:17.911  000>> Data datagram received:192.168.10.30
 170.827 +09/05/2006 21:43:17.911  000>> Received datagram...
 170.828 +09/05/2006 21:43:17.911  000>> Listner:Received RIB
 170.829 +09/05/2006 21:43:18.802  000>> Initiator:SENDBUNDLEOFFER
 170.830 +09/05/2006 21:43:18.802  000>> Sended datagram...
 170.831 +09/05/2006 21:43:18.802  000>> Data datagram sent:192.168.10.30
 170.832 +09/05/2006 21:43:18.812  000>> Listner:BUNDLES Timeout...
 170.833 +09/05/2006 21:43:18.812  000>> Data datagram received:192.168.10.30
 170.834 +09/05/2006 21:43:18.812  000>> Received datagram...
 170.835 +09/05/2006 21:43:18.812  000>> Initiator:Sending bundles
 170.836 +09/05/2006 21:43:18.812  000>> Sended datagram...
 170.837 +09/05/2006 21:43:18.812  000>> Data datagram sent:192.168.10.30
 170.838 +09/05/2006 21:43:18.812  000>> Data datagram received:192.168.10.30
 170.839 +09/05/2006 21:43:18.812  000>> Received datagram...
 170.840 +09/05/2006 21:43:18.812  000>> Listner:Received Bundle Offer
 170.841 +09/05/2006 21:43:18.822  000>> Sended datagram...
 170.842 +09/05/2006 21:43:18.822  000>> Data datagram sent:192.168.10.30
 170.843 +09/05/2006 21:43:18.832  000>> Data datagram received:192.168.10.30
 170.844 +09/05/2006 21:43:18.832  000>> Received datagram...
 170.845 +09/05/2006 21:43:19.714  000>> Initiator:Idle state...
 170.846 +09/05/2006 21:43:19.724  000>> Data datagram received:192.168.10.30
 170.847 +09/05/2006 21:43:19.724  000>> Received datagram...
 170.848 +09/05/2006 21:43:19.724  000>> Receive Hello:SYN
 170.849 +09/05/2006 21:43:19.724  000>> Sended datagram...
 170.850 +09/05/2006 21:43:19.724  000>> Data datagram sent:192.168.10.30
 170.851 +09/05/2006 21:43:19.734  000>> Data datagram received:192.168.10.30
 170.852 +09/05/2006 21:43:19.734  000>> Received datagram...
 170.853 +09/05/2006 21:43:20.635  000>> Initiator:SENDDICTIONARY
 170.854 +09/05/2006 21:43:20.635  000>> Sended datagram...
 170.855 +09/05/2006 21:43:20.635  000>> Data datagram sent:192.168.10.30
 170.856 +09/05/2006 21:43:20.635  000>> Listner:RIB timeout...
 170.857 +09/05/2006 21:43:20.645  000>> Data datagram received:192.168.10.30
 170.858 +09/05/2006 21:43:20.645  000>> Received datagram...
 170.859 +09/05/2006 21:43:20.645  000>> Listner:Received dictionary
 170.860 +09/05/2006 21:43:21.536  000>> Initiator:SENDRIB
 170.861 +09/05/2006 21:43:21.536  000>> Sended datagram...
 170.862 +09/05/2006 21:43:21.536  000>> Data datagram sent:192.168.10.30
 170.863 +09/05/2006 21:43:21.546  000>> Hm Listner default...
 170.864 +09/05/2006 21:43:21.546  000>> Data datagram received:192.168.10.30
 170.865 +09/05/2006 21:43:21.546  000>> Received datagram...
 170.866 +09/05/2006 21:43:21.546  000>> Listner:Received RIB
 170.867 +09/05/2006 21:43:22.448  000>> Initiator:SENDBUNDLEOFFER
 170.868 +09/05/2006 21:43:22.448  000>> Sended datagram...
 170.869 +09/05/2006 21:43:22.448  000>> Data datagram sent:192.168.10.30
 170.870 +09/05/2006 21:43:22.458  000>> Listner:BUNDLES Timeout...
 170.871 +09/05/2006 21:43:22.458  000>> Data datagram received:192.168.10.30
 170.872 +09/05/2006 21:43:22.458  000>> Received datagram...
 170.873 +09/05/2006 21:43:22.458  000>> Initiator:Sending bundles
 170.874 +09/05/2006 21:43:22.458  000>> Sended datagram...
 170.875 +09/05/2006 21:43:22.458  000>> Data datagram sent:192.168.10.30
 170.876 +09/05/2006 21:43:22.458  000>> Data datagram received:192.168.10.30
 170.877 +09/05/2006 21:43:22.458  000>> Received datagram...
 170.878 +09/05/2006 21:43:22.458  000>> Listner:Received Bundle Offer
 170.879 +09/05/2006 21:43:22.468  000>> Sended datagram...
 170.880 +09/05/2006 21:43:22.468  000>> Data datagram sent:192.168.10.30
 170.881 +09/05/2006 21:43:22.478  000>> Data datagram received:192.168.10.30
 170.882 +09/05/2006 21:43:22.478  000>> Received datagram...
 170.883 +09/05/2006 21:43:23.359  000>> Initiator:Idle state...
 170.884 +09/05/2006 21:43:23.359  000>> Data datagram received:192.168.10.30
 170.885 +09/05/2006 21:43:23.359  000>> Received datagram...
 170.886 +09/05/2006 21:43:23.359  000>> Receive Hello:SYN
 170.887 +09/05/2006 21:43:23.369  000>> Sended datagram...
 170.888 +09/05/2006 21:43:23.369  000>> Data datagram sent:192.168.10.30
 170.889 +09/05/2006 21:43:23.409  000>> Data datagram received:192.168.10.30
 170.890 +09/05/2006 21:43:23.409  000>> Received datagram...
 170.891 +09/05/2006 21:43:24.280  000>> Listner:DICTIONARY timeout...
 170.892 +09/05/2006 21:43:24.310  000>> Initiator:SENDDICTIONARY
 170.893 +09/05/2006 21:43:24.310  000>> Sended datagram...
 170.894 +09/05/2006 21:43:24.310  000>> Data datagram sent:192.168.10.30
 170.895 +09/05/2006 21:43:25.182  000>> Listner:RIB timeout...
 170.896 +09/05/2006 21:43:25.212  000>> Initiator:SENDRIB
 170.897 +09/05/2006 21:43:25.212  000>> Sended datagram...
 170.898 +09/05/2006 21:43:25.212  000>> Data datagram sent:192.168.10.30
 170.899 +09/05/2006 21:43:26.083  000>> Hm Listner default...
 170.900 +09/05/2006 21:43:26.113  000>> Initiator:SENDBUNDLEOFFER
 170.901 +09/05/2006 21:43:26.113  000>> Sended datagram...
 170.902 +09/05/2006 21:43:26.113  000>> Data datagram sent:192.168.10.30
 170.903 +09/05/2006 21:43:26.674  000>> Connection removed:192.168.10.30
 170.904 +09/05/2006 21:43:26.984  000>> Listner:BUNDLES Timeout...
 170.905 +09/05/2006 21:43:27.014  000>> Hm default initiator...
 170.906 +09/05/2006 22:11:22.483  000>> Starting Prophet!
 170.907 +09/05/2006 22:11:22.483  000>> Reading INI file IP:
 170.908 +09/05/2006 22:11:22.493  000>> 192.168.10.20
 170.909 +09/05/2006 22:15:05.264  000>> Starting Prophet!
 170.910 +09/05/2006 22:15:05.264  000>> Reading INI file IP:
 170.911 +09/05/2006 22:15:05.264  000>> 192.168.10.20
 170.912 +09/05/2006 22:22:16.314  000>> Starting Prophet!
 170.913 +09/05/2006 22:22:16.314  000>> Reading INI file IP:
 170.914 +09/05/2006 22:22:16.314  000>> 192.168.10.20
 170.915 +09/05/2006 22:25:09.172  000>> Starting Prophet!
 170.916 +09/05/2006 22:25:09.182  000>> Reading INI file IP:
 170.917 +09/05/2006 22:25:09.182  000>> 192.168.10.20
 170.918 +09/05/2006 22:30:44.344  000>> Starting Prophet!
 170.919 +09/05/2006 22:30:44.344  000>> Reading INI file IP:
 170.920 +09/05/2006 22:30:44.344  000>> 192.168.10.20
   171.1 Binary file x86/ARM/prophet.opt has changed
   172.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   172.2 +++ b/x86/ARM/prophet.plg	Thu Jun 26 17:39:40 2008 +0100
   172.3 @@ -0,0 +1,52 @@
   172.4 +<html>
   172.5 +<body>
   172.6 +<pre>
   172.7 +<h1>Build Log</h1>
   172.8 +<h3>
   172.9 +--------------------Configuration: prophet - Win32 Release--------------------
  172.10 +</h3>
  172.11 +<h3>Command Lines</h3>
  172.12 +Creating temporary file "C:\DOCUME~1\Samo\LOCALS~1\Temp\RSPF66.tmp" with contents
  172.13 +[
  172.14 +/nologo /MD /W3 /GR /GX /O1 /I "C:/Qt/4.0.1/include/QtNetwork" /I "C:/Qt/4.0.1/include/QtCore" /I "C:/Qt/4.0.1/include" /I "." /I "C:/Qt/4.0.1/include/ActiveQt" /I "release" /I "C:/Qt/4.0.1/mkspecs/win32-msvc" /D "_CONSOLE" /D "UNICODE" /D "QT_LARGEFILE_SUPPORT" /D "QT_DLL" /D "QT_NO_DEBUG" /D "QT_CORE_LIB" /D "QT_NETWORK_LIB" /D "QT_THREAD_SUPPORT" /D "WIN32" /Fo"release/" /Fd"release/" /FD -Zm200 /c 
  172.15 +"C:\Samo\prophet\arm\neighbourAwareness.cpp"
  172.16 +]
  172.17 +Creating command line "cl.exe @C:\DOCUME~1\Samo\LOCALS~1\Temp\RSPF66.tmp" 
  172.18 +Creating temporary file "C:\DOCUME~1\Samo\LOCALS~1\Temp\RSPF67.tmp" with contents
  172.19 +[
  172.20 +"C:\Qt\4.0.1\lib\QtCore4.lib" "C:\Qt\4.0.1\lib\QtNetwork4.lib" /nologo /subsystem:console /incremental:yes /pdb:"release/prophet.pdb" /machine:IX86 /out:"release/prophet.exe" /libpath:"C:\Qt\4.0.1\lib" 
  172.21 +.\release\bundle.obj
  172.22 +.\release\bundleManager.obj
  172.23 +.\release\connection.obj
  172.24 +.\release\dataPacket.obj
  172.25 +.\release\hello.obj
  172.26 +.\release\main.obj
  172.27 +.\release\messageFile.obj
  172.28 +.\release\neighbourAwareness.obj
  172.29 +.\release\node.obj
  172.30 +.\release\nodeManager.obj
  172.31 +.\release\readFile.obj
  172.32 +.\release\tlv.obj
  172.33 +.\release\moc_bundle.obj
  172.34 +.\release\moc_bundleManager.obj
  172.35 +.\release\moc_connection.obj
  172.36 +.\release\moc_hello.obj
  172.37 +.\release\moc_messageFile.obj
  172.38 +.\release\moc_neighbourAwareness.obj
  172.39 +.\release\moc_node.obj
  172.40 +.\release\moc_nodeManager.obj
  172.41 +.\release\moc_tlv.obj
  172.42 +]
  172.43 +Creating command line "link.exe @C:\DOCUME~1\Samo\LOCALS~1\Temp\RSPF67.tmp"
  172.44 +<h3>Output Window</h3>
  172.45 +Compiling...
  172.46 +neighbourAwareness.cpp
  172.47 +Linking...
  172.48 +
  172.49 +
  172.50 +
  172.51 +<h3>Results</h3>
  172.52 +prophet.exe - 0 error(s), 0 warning(s)
  172.53 +</pre>
  172.54 +</body>
  172.55 +</html>
   173.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   173.2 +++ b/x86/ARM/prophet.pro	Thu Jun 26 17:39:40 2008 +0100
   173.3 @@ -0,0 +1,37 @@
   173.4 +######################################################################
   173.5 +# Automatically generated by qmake (2.00a) Mon May 8 16:48:24 2006
   173.6 +######################################################################
   173.7 +TEMPLATE = app
   173.8 +CONFIG += console
   173.9 +QT+= network
  173.10 +QT-= gui
  173.11 +TARGET += 
  173.12 +DEPENDPATH += .
  173.13 +INCLUDEPATH += .
  173.14 +
  173.15 +# Input
  173.16 +HEADERS +=	neighbourAwareness.h\
  173.17 +			bundle.h \
  173.18 +			bundleManager.h \
  173.19 +			node.h \
  173.20 +			nodeManager.h \
  173.21 +			connection.h \
  173.22 +			tlv.h \
  173.23 +			messageFile.h \
  173.24 +			hello.h \				
  173.25 +			main.h \	   
  173.26 +			dataPacket.h \
  173.27 +			readFile.h
  173.28 \
  173.29 +			
  173.30 +SOURCES += 	main.cpp \
  173.31 +			bundle.cpp \
  173.32 +			bundleManager.cpp \
  173.33 +			node.cpp \
  173.34 +			nodeManager.cpp \
  173.35 +			connection.cpp \
  173.36 +			hello.cpp \
  173.37 +			tlv.cpp \
  173.38 +			dataPacket.cpp \
  173.39 +			messageFile.cpp\
  173.40 +			neighbourAwareness.cpp\
  173.41 +			readFile.cpp \
   174.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   174.2 +++ b/x86/ARM/readFile.cpp	Thu Jun 26 17:39:40 2008 +0100
   174.3 @@ -0,0 +1,660 @@
   174.4 +#include <QFile>
   174.5 +#include <QString>
   174.6 +#include <QHostAddress>
   174.7 +#include <readFile.h>
   174.8 +
   174.9 +ReadFile::ReadFile()
  174.10 +{
  174.11 +	QFile configuration("prophet.ini");
  174.12 +}
  174.13 +
  174.14 +float ReadFile::getBeta()
  174.15 +{
  174.16 +	QFile configuration("prophet.ini");
  174.17 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  174.18 +	QString line;
  174.19 +	QString search="BETA=";
  174.20 +	line=configuration.readLine();
  174.21 +	while(line.size()>0)
  174.22 +	{
  174.23 +		if(line.indexOf(search)!=-1)
  174.24 +		{
  174.25 +			line.remove(search,Qt::CaseInsensitive);
  174.26 +			return line.toFloat();
  174.27 +		}
  174.28 +		line=configuration.readLine();
  174.29 +		
  174.30 +	}
  174.31 +	configuration.close();
  174.32 +	return (float)0.25;
  174.33 +}
  174.34 +
  174.35 +float ReadFile::getGamma()
  174.36 +{
  174.37 +	QFile configuration("prophet.ini");
  174.38 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  174.39 +	QString line;
  174.40 +	QString search="GAMMA=";
  174.41 +	line=configuration.readLine();
  174.42 +	while(line.size()>0)
  174.43 +	{
  174.44 +		if(line.indexOf(search)!=-1)
  174.45 +		{
  174.46 +			line.remove(search,Qt::CaseInsensitive);
  174.47 +			return line.toFloat();
  174.48 +		}
  174.49 +		line=configuration.readLine();
  174.50 +		
  174.51 +	}
  174.52 +		configuration.close();
  174.53 +
  174.54 +	return (float)0.99;
  174.55 +}
  174.56 +
  174.57 +float ReadFile::getPEncounter()
  174.58 +{
  174.59 +	QFile configuration("prophet.ini");
  174.60 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  174.61 +	QString line;
  174.62 +	QString search="PENCOUNTER=";
  174.63 +	line=configuration.readLine();
  174.64 +	while(line.size()>0)
  174.65 +	{
  174.66 +		if(line.indexOf(search)!=-1)
  174.67 +		{
  174.68 +			line.remove(search,Qt::CaseInsensitive);
  174.69 +			return line.toFloat();
  174.70 +		}
  174.71 +		line=configuration.readLine();
  174.72 +		
  174.73 +	}
  174.74 +		configuration.close();
  174.75 +
  174.76 +	return (float)0.75;
  174.77 +}
  174.78 +
  174.79 +int ReadFile::getListenerTimer()
  174.80 +{
  174.81 +	QFile configuration("prophet.ini");
  174.82 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  174.83 +	QString line;
  174.84 +	QString search="LISTENERTIMER=";
  174.85 +	line=configuration.readLine();
  174.86 +	while(line.size()>0)
  174.87 +	{
  174.88 +		if(line.indexOf(search)!=-1)
  174.89 +		{
  174.90 +			line.remove(search,Qt::CaseInsensitive);
  174.91 +			return line.toInt();
  174.92 +		}
  174.93 +		line=configuration.readLine();
  174.94 +		
  174.95 +	}
  174.96 +		configuration.close();
  174.97 +
  174.98 +	return 1000;
  174.99 +}
 174.100 +
 174.101 +
 174.102 +
 174.103 +int ReadFile::getInitiatorTimer()
 174.104 +{
 174.105 +	QFile configuration("prophet.ini");
 174.106 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.107 +	QString line;
 174.108 +	QString search="INITIATORTIMER=";
 174.109 +	line=configuration.readLine();
 174.110 +	while(line.size()>0)
 174.111 +	{
 174.112 +		if(line.indexOf(search)!=-1)
 174.113 +		{
 174.114 +			line.remove(search,Qt::CaseInsensitive);
 174.115 +			return line.toInt();
 174.116 +		}
 174.117 +		line=configuration.readLine();
 174.118 +		
 174.119 +	}
 174.120 +		configuration.close();
 174.121 +
 174.122 +	return 1000;
 174.123 +}
 174.124 +
 174.125 +int ReadFile::getHelloTimer()
 174.126 +{
 174.127 +	QFile configuration("prophet.ini");
 174.128 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.129 +	QString line;
 174.130 +	QString search="HELLOTIMER=";
 174.131 +	line=configuration.readLine();
 174.132 +	while(line.size()>0)
 174.133 +	{
 174.134 +		if(line.indexOf(search)!=-1)
 174.135 +		{
 174.136 +			line.remove(search,Qt::CaseInsensitive);
 174.137 +			return line.toInt();
 174.138 +		}
 174.139 +		line=configuration.readLine();
 174.140 +		
 174.141 +	}
 174.142 +		configuration.close();
 174.143 +
 174.144 +	return 1000;
 174.145 +}
 174.146 +
 174.147 +int ReadFile::getAgingTimer()
 174.148 +{
 174.149 +	QFile configuration("prophet.ini");
 174.150 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.151 +	QString line;
 174.152 +	QString search="AGINGTIMER=";
 174.153 +	line=configuration.readLine();
 174.154 +	while(line.size()>0)
 174.155 +	{
 174.156 +		if(line.indexOf(search)!=-1)
 174.157 +		{
 174.158 +			line.remove(search,Qt::CaseInsensitive);
 174.159 +			return line.toInt();
 174.160 +		}
 174.161 +		line=configuration.readLine();
 174.162 +		
 174.163 +	}
 174.164 +		configuration.close();
 174.165 +
 174.166 +	return 1000;
 174.167 +}
 174.168 +
 174.169 +int ReadFile::getDTNHostPort()
 174.170 +{
 174.171 +	QFile configuration("prophet.ini");
 174.172 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.173 +	QString line;
 174.174 +	QString search="DTNHOSTPORT=";
 174.175 +	line=configuration.readLine();
 174.176 +	while(line.size()>0)
 174.177 +	{
 174.178 +		if(line.indexOf(search)!=-1)
 174.179 +		{
 174.180 +			line.remove(search,Qt::CaseInsensitive);
 174.181 +			return line.toInt();
 174.182 +		}
 174.183 +		line=configuration.readLine();
 174.184 +		
 174.185 +	}
 174.186 +		configuration.close();
 174.187 +
 174.188 +	return 21;
 174.189 +
 174.190 +}	
 174.191 +
 174.192 +int ReadFile::getStorageSize()
 174.193 +{
 174.194 +	QFile configuration("prophet.ini");
 174.195 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.196 +	QString line;
 174.197 +	QString search="STORAGESIZE=";
 174.198 +	line=configuration.readLine();
 174.199 +	while(line.size()>0)
 174.200 +	{
 174.201 +		if(line.indexOf(search)!=-1)
 174.202 +		{
 174.203 +			line.remove(search,Qt::CaseInsensitive);
 174.204 +			return line.toInt();
 174.205 +		}
 174.206 +		line=configuration.readLine();
 174.207 +		
 174.208 +	}
 174.209 +		configuration.close();
 174.210 +
 174.211 +	return 1000;
 174.212 +
 174.213 +}	
 174.214 +
 174.215 +int ReadFile::getAlive()
 174.216 +{
 174.217 +	QFile configuration("prophet.ini");
 174.218 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.219 +	QString line;
 174.220 +	QString search="ALIVE=";
 174.221 +	line=configuration.readLine();
 174.222 +	while(line.size()>0)
 174.223 +	{
 174.224 +		if(line.indexOf(search)!=-1)
 174.225 +		{
 174.226 +			line.remove(search,Qt::CaseInsensitive);
 174.227 +			return line.toInt();
 174.228 +		}
 174.229 +		line=configuration.readLine();
 174.230 +		
 174.231 +	}
 174.232 +		configuration.close();
 174.233 +
 174.234 +	return 15;
 174.235 +
 174.236 +}	
 174.237 +
 174.238 +
 174.239 +int ReadFile::getBroadcastTimer()
 174.240 +{
 174.241 +	QFile configuration("prophet.ini");
 174.242 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.243 +	QString line;
 174.244 +	QString search="BROADCAST=";
 174.245 +	line=configuration.readLine();
 174.246 +	while(line.size()>0)
 174.247 +	{
 174.248 +		if(line.indexOf(search)!=-1)
 174.249 +		{
 174.250 +			line.remove(search,Qt::CaseInsensitive);
 174.251 +			return line.toInt();
 174.252 +		}
 174.253 +		line=configuration.readLine();
 174.254 +		
 174.255 +	}
 174.256 +		configuration.close();
 174.257 +
 174.258 +	return 1;
 174.259 +
 174.260 +}
 174.261 +
 174.262 +
 174.263 +int ReadFile::getHello()
 174.264 +{
 174.265 +	QFile configuration("prophet.ini");
 174.266 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.267 +	QString line;
 174.268 +	QString search="HELLO=";
 174.269 +	line=configuration.readLine();
 174.270 +	while(line.size()>0)
 174.271 +	{
 174.272 +		if(line.indexOf(search)!=-1)
 174.273 +		{
 174.274 +			line.remove(search,Qt::CaseInsensitive);
 174.275 +			return line.toInt();
 174.276 +		}
 174.277 +		line=configuration.readLine();
 174.278 +		
 174.279 +	}
 174.280 +		configuration.close();
 174.281 +
 174.282 +	return 1;
 174.283 +
 174.284 +}
 174.285 +
 174.286 +
 174.287 +int ReadFile::getRouting()
 174.288 +{
 174.289 +	QFile configuration("prophet.ini");
 174.290 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.291 +	QString line;
 174.292 +	QString search="ROUTING=";
 174.293 +	line=configuration.readLine();
 174.294 +	while(line.size()>0)
 174.295 +	{
 174.296 +		if(line.indexOf(search)!=-1)
 174.297 +		{
 174.298 +			line.remove(search,Qt::CaseInsensitive);
 174.299 +			return line.toInt();
 174.300 +		}
 174.301 +		line=configuration.readLine();
 174.302 +		
 174.303 +	}
 174.304 +		configuration.close();
 174.305 +
 174.306 +	return 1;
 174.307 +}
 174.308 +
 174.309 +
 174.310 +
 174.311 +int ReadFile::getAgeFileNodes()
 174.312 +{
 174.313 +	QFile configuration("prophet.ini");
 174.314 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.315 +	QString line;
 174.316 +	QString search="AGEFILENODES=";
 174.317 +	line=configuration.readLine();
 174.318 +	while(line.size()>0)
 174.319 +	{
 174.320 +		if(line.indexOf(search)!=-1)
 174.321 +		{
 174.322 +			line.remove(search,Qt::CaseInsensitive);
 174.323 +			return line.toInt();
 174.324 +		}
 174.325 +		line=configuration.readLine();
 174.326 +		
 174.327 +	}
 174.328 +		configuration.close();
 174.329 +
 174.330 +	return 1;
 174.331 +}
 174.332 +
 174.333 +int ReadFile::getContiniusUpdate()
 174.334 +{
 174.335 +	QFile configuration("prophet.ini");
 174.336 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.337 +	QString line;
 174.338 +	QString search="CONTINIUSUPDATE=";
 174.339 +	line=configuration.readLine();
 174.340 +	while(line.size()>0)
 174.341 +	{
 174.342 +		if(line.indexOf(search)!=-1)
 174.343 +		{
 174.344 +			line.remove(search,Qt::CaseInsensitive);
 174.345 +			return line.toInt();
 174.346 +		}
 174.347 +		line=configuration.readLine();
 174.348 +		
 174.349 +	}
 174.350 +		configuration.close();
 174.351 +
 174.352 +	return 1;
 174.353 +}
 174.354 +
 174.355 +
 174.356 +int ReadFile::getNodeId()
 174.357 +{
 174.358 +	QFile configuration("prophet.ini");
 174.359 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.360 +	QString line;
 174.361 +	QString search="NODEID=";
 174.362 +	line=configuration.readLine();
 174.363 +	while(line.size()>0)
 174.364 +	{
 174.365 +		if(line.indexOf(search)!=-1)
 174.366 +		{
 174.367 +			line.remove(search,Qt::CaseInsensitive);
 174.368 +			return line.toInt();
 174.369 +		}
 174.370 +		line=configuration.readLine();
 174.371 +		
 174.372 +	}
 174.373 +		configuration.close();
 174.374 +
 174.375 +	return 0;
 174.376 +}
 174.377 +
 174.378 +int ReadFile::getUseFileBundles()
 174.379 +{
 174.380 +	QFile configuration("prophet.ini");
 174.381 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.382 +	QString line;
 174.383 +	QString search="USEFILEBUNDLES=";
 174.384 +	line=configuration.readLine();
 174.385 +	while(line.size()>0)
 174.386 +	{
 174.387 +		if(line.indexOf(search)!=-1)
 174.388 +		{
 174.389 +			line.remove(search,Qt::CaseInsensitive);
 174.390 +			return line.toInt();
 174.391 +		}
 174.392 +		line=configuration.readLine();
 174.393 +		
 174.394 +	}
 174.395 +		configuration.close();
 174.396 +
 174.397 +	return 1;
 174.398 +}
 174.399 +
 174.400 +
 174.401 +int ReadFile::getWriteToFileTimer()
 174.402 +{
 174.403 +	QFile configuration("prophet.ini");
 174.404 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.405 +	QString line;
 174.406 +	QString search="WRITETOFILETIMER=";
 174.407 +	line=configuration.readLine();
 174.408 +	while(line.size()>0)
 174.409 +	{
 174.410 +		if(line.indexOf(search)!=-1)
 174.411 +		{
 174.412 +			line.remove(search,Qt::CaseInsensitive);
 174.413 +			return line.toInt();
 174.414 +		}
 174.415 +		line=configuration.readLine();
 174.416 +		
 174.417 +	}
 174.418 +		configuration.close();
 174.419 +
 174.420 +	return 60;
 174.421 +}
 174.422 +
 174.423 +
 174.424 +int ReadFile::getLogOption()
 174.425 +{
 174.426 +	QFile configuration("prophet.ini");
 174.427 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.428 +	QString line;
 174.429 +	QString search="LOGING=";
 174.430 +	line=configuration.readLine();
 174.431 +	while(line.size()>0)
 174.432 +	{
 174.433 +		if(line.indexOf(search)!=-1)
 174.434 +		{
 174.435 +			line.remove(search,Qt::CaseInsensitive);
 174.436 +			return line.toInt();
 174.437 +		}
 174.438 +		line=configuration.readLine();
 174.439 +		
 174.440 +	}
 174.441 +		configuration.close();
 174.442 +
 174.443 +	return 60;
 174.444 +}	
 174.445 +
 174.446 +int ReadFile::getUseFileNodes()
 174.447 +{
 174.448 +	QFile configuration("prophet.ini");
 174.449 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.450 +	QString line;
 174.451 +	QString search="USEFILENODES=";
 174.452 +	line=configuration.readLine();
 174.453 +	while(line.size()>0)
 174.454 +	{
 174.455 +		if(line.indexOf(search)!=-1)
 174.456 +		{
 174.457 +			line.remove(search,Qt::CaseInsensitive);
 174.458 +			return line.toInt();
 174.459 +		}
 174.460 +		line=configuration.readLine();
 174.461 +		
 174.462 +	}
 174.463 +		configuration.close();
 174.464 +
 174.465 +	return 0;
 174.466 +}	
 174.467 +
 174.468 +QString ReadFile::getNodeName()
 174.469 +{
 174.470 +	QFile configuration("prophet.ini");
 174.471 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.472 +	QString line;
 174.473 +	QString search="NODENAME=";
 174.474 +	line=configuration.readLine();
 174.475 +	while(line.size()>0)
 174.476 +	{
 174.477 +		if(line.indexOf(search)!=-1)
 174.478 +		{
 174.479 +			line.remove(search,Qt::CaseInsensitive);
 174.480 +			line.chop(1);
 174.481 +			return line;
 174.482 +		}
 174.483 +		line=configuration.readLine();
 174.484 +		
 174.485 +	}
 174.486 +		configuration.close();
 174.487 +
 174.488 +	QString ret="unknown";
 174.489 +	return ret;
 174.490 +}
 174.491 +
 174.492 +QString ReadFile::getStoragePath()
 174.493 +{
 174.494 +	QFile configuration("prophet.ini");
 174.495 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.496 +	QString line;
 174.497 +	QString search="STORAGEPATH=";
 174.498 +	line=configuration.readLine();
 174.499 +	while(line.size()>0)
 174.500 +	{
 174.501 +		if(line.indexOf(search)!=-1)
 174.502 +		{
 174.503 +			line.remove(search,Qt::CaseInsensitive);
 174.504 +			line.chop(1);
 174.505 +			return line;
 174.506 +		}
 174.507 +		line=configuration.readLine();
 174.508 +		
 174.509 +	}
 174.510 +	QString ret="";
 174.511 +		configuration.close();
 174.512 +
 174.513 +	return ret;
 174.514 +}
 174.515 +
 174.516 +QString ReadFile::getLogPath()
 174.517 +{
 174.518 +	QFile configuration("prophet.ini");
 174.519 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.520 +	QString line;
 174.521 +	QString search="LOGPATH=";
 174.522 +	line=configuration.readLine();
 174.523 +	while(line.size()>0)
 174.524 +	{
 174.525 +		if(line.indexOf(search)!=-1)
 174.526 +		{
 174.527 +			line.remove(search,Qt::CaseInsensitive);
 174.528 +			line.chop(1);
 174.529 +			return line;
 174.530 +		}
 174.531 +		line=configuration.readLine();
 174.532 +		
 174.533 +	}
 174.534 +	QString ret="";
 174.535 +			configuration.close();
 174.536 +
 174.537 +	return ret;
 174.538 +}
 174.539 +QString ReadFile::getMsgPath()
 174.540 +{
 174.541 +	QFile configuration("prophet.ini");
 174.542 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.543 +	QString line;
 174.544 +	QString search="MSGPATH=";
 174.545 +	line=configuration.readLine();
 174.546 +	while(line.size()>0)
 174.547 +	{
 174.548 +		if(line.indexOf(search)!=-1)
 174.549 +		{
 174.550 +			line.remove(search,Qt::CaseInsensitive);
 174.551 +			line.chop(1);
 174.552 +			return line;
 174.553 +		}
 174.554 +		line=configuration.readLine();
 174.555 +		
 174.556 +	}
 174.557 +	QString ret="";
 174.558 +		configuration.close();
 174.559 +
 174.560 +	return ret;
 174.561 +}
 174.562 +
 174.563 +QHostAddress ReadFile::getNodeIp()
 174.564 +{
 174.565 +	QFile configuration("prophet.ini");
 174.566 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.567 +	QString line;
 174.568 +	QString search="NODEIP=";
 174.569 +	line=configuration.readLine();
 174.570 +	while(line.size()>0)
 174.571 +	{
 174.572 +		if(line.indexOf(search)!=-1)
 174.573 +		{
 174.574 +			line.remove(search,Qt::CaseInsensitive);
 174.575 +			QHostAddress ip(line);
 174.576 +			return ip;
 174.577 +
 174.578 +		}
 174.579 +		line=configuration.readLine();
 174.580 +	
 174.581 +	}
 174.582 +		configuration.close();
 174.583 +
 174.584 +	QHostAddress ret("192.168.10.1");
 174.585 +	return ret;
 174.586 +}
 174.587 +
 174.588 +QHostAddress ReadFile::getBroadcast()
 174.589 +{
 174.590 +	QFile configuration("prophet.ini");
 174.591 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.592 +	QString line;
 174.593 +	QString search="NODEBROADCAST=";
 174.594 +	line=configuration.readLine();
 174.595 +	while(line.size()>0)
 174.596 +	{
 174.597 +		if(line.indexOf(search)!=-1)
 174.598 +		{
 174.599 +			line.remove(search,Qt::CaseInsensitive);
 174.600 +			QHostAddress ip(line);
 174.601 +			return ip;
 174.602 +
 174.603 +		}
 174.604 +		line=configuration.readLine();
 174.605 +	}
 174.606 +	QHostAddress ret("255.255.255.255");
 174.607 +		configuration.close();
 174.608 +
 174.609 +	return ret;
 174.610 +
 174.611 +}
 174.612 +
 174.613 +QHostAddress ReadFile::getNodeIp2()
 174.614 +{
 174.615 +	QFile configuration("prophet.ini");
 174.616 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.617 +	QString line;
 174.618 +	QString search="NODEIP2=";
 174.619 +	line=configuration.readLine();
 174.620 +	while(line.size()>0)
 174.621 +	{
 174.622 +		if(line.indexOf(search)!=-1)
 174.623 +		{
 174.624 +			line.remove(search,Qt::CaseInsensitive);
 174.625 +			QHostAddress ip(line);
 174.626 +			return ip;
 174.627 +
 174.628 +		}
 174.629 +		line=configuration.readLine();
 174.630 +	
 174.631 +	}
 174.632 +	QHostAddress ret("192.168.10.1");
 174.633 +		configuration.close();
 174.634 +
 174.635 +	return ret;
 174.636 +
 174.637 +}
 174.638 +
 174.639 +QHostAddress ReadFile::getDTNHostName()
 174.640 +{
 174.641 +	QFile configuration("prophet.ini");
 174.642 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 174.643 +	QString line;
 174.644 +	QString search="DTNHOSTNAME=";
 174.645 +	line=configuration.readLine();
 174.646 +	while(line.size()>0)
 174.647 +	{
 174.648 +		if(line.indexOf(search)!=-1)
 174.649 +		{
 174.650 +			line.remove(search,Qt::CaseInsensitive);
 174.651 +			QHostAddress ip(line);
 174.652 +			return ip;
 174.653 +
 174.654 +		}
 174.655 +		line=configuration.readLine();
 174.656 +	
 174.657 +	}
 174.658 +	QHostAddress ret("192.168.10.1");
 174.659 +		configuration.close();
 174.660 +
 174.661 +	return ret;
 174.662 +
 174.663 +}
   175.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   175.2 +++ b/x86/ARM/readFile.h	Thu Jun 26 17:39:40 2008 +0100
   175.3 @@ -0,0 +1,49 @@
   175.4 +#ifndef READFILE_H
   175.5 +#define READFILE_H
   175.6 +
   175.7 +#include <QtCore>
   175.8 +#include <QtNetwork>
   175.9 +
  175.10 +
  175.11 +
  175.12 +class ReadFile: public QObject
  175.13 +{
  175.14 +	Q_OBJECT
  175.15 +
  175.16 +	public:
  175.17 +
  175.18 +	QFile configuration;
  175.19 +
  175.20 +	ReadFile();
  175.21 +	float getGamma();
  175.22 +	float getBeta();
  175.23 +	float getPEncounter();
  175.24 +	int getNodeId();
  175.25 +	int getAgingTimer();
  175.26 +	int getHelloTimer();
  175.27 +	int getInitiatorTimer();
  175.28 +	int getListenerTimer();
  175.29 +	int getDTNHostPort();
  175.30 +	int getStorageSize();
  175.31 +	int getAlive();
  175.32 +	int getBroadcastTimer();
  175.33 +	int getHello();
  175.34 +	int getContiniusUpdate();
  175.35 +	int getRouting();
  175.36 +	int getUseFileNodes();
  175.37 +	int getWriteToFileTimer();
  175.38 +	int getAgeFileNodes();
  175.39 +	int getUseFileBundles();
  175.40 +	int getLogOption();
  175.41 +	QString getStoragePath();
  175.42 +	QString getMsgPath();
  175.43 +	QString getLogPath();
  175.44 +
  175.45 +	QString getNodeName();
  175.46 +	QHostAddress getNodeIp();
  175.47 +	QHostAddress getNodeIp2();
  175.48 +	QHostAddress getDTNHostName();
  175.49 +	QHostAddress getBroadcast();
  175.50 +};
  175.51 +
  175.52 +#endif
   176.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   176.2 +++ b/x86/ARM/tcpClient.cpp	Thu Jun 26 17:39:40 2008 +0100
   176.3 @@ -0,0 +1,101 @@
   176.4 +#include "tcpClient.h"
   176.5 +
   176.6 +TcpClient::TcpClient(QObject* parent) : QTcpSocket(parent)
   176.7 +{
   176.8 +
   176.9 +	timer = new QTimer;
  176.10 +	timer->setSingleShot(true);
  176.11 +	connect(timer, SIGNAL(timeout()), this, SLOT(reconnectToHost()));
  176.12 +	connect(this, SIGNAL(stateChanged(QAbstractSocket::SocketState)), this, SLOT(hostStateChanged(QAbstractSocket::SocketState)));
  176.13 +	connect(this, SIGNAL(error(QAbstractSocket::SocketError)), this, SLOT(hostError(QAbstractSocket::SocketError)));
  176.14 +	connect(this, SIGNAL(readyRead()), this, SLOT(hostReadyRead()));
  176.15 +	int i = readBufferSize();
  176.16 +	setReadBufferSize(0);
  176.17 +	currentHostIndex = 0;
  176.18 +}
  176.19 +
  176.20 +TcpClient::~TcpClient()
  176.21 +{
  176.22 +}
  176.23 +
  176.24 +void TcpClient::addHost(QString hn, int hp)
  176.25 +{
  176.26 +	hostNames << hn;
  176.27 +	hostPorts << hp;
  176.28 +	currentHostIndex = hostNames.count()-1;
  176.29 +	if ((state() == QAbstractSocket::UnconnectedState) && (hostNames.count() == 1))
  176.30 +		connectToHost(hostNames[currentHostIndex], hostPorts[currentHostIndex]);
  176.31 +}
  176.32 +
  176.33 +void TcpClient::reconnectToHost()
  176.34 +{
  176.35 +	if (hostNames.count() == 0)
  176.36 +		return;
  176.37 +	currentHostIndex++;
  176.38 +	currentHostIndex = currentHostIndex % hostNames.count();
  176.39 +	connectToHost(hostNames[currentHostIndex], hostPorts[currentHostIndex]);
  176.40 +}
  176.41 +
  176.42 +void TcpClient::hostStateChanged(QAbstractSocket::SocketState state)
  176.43 +{
  176.44 +	switch (state)
  176.45 +	{
  176.46 +	case QAbstractSocket::ConnectedState:
  176.47 +		{
  176.48 +			QList<QString>::iterator it;
  176.49 +			it = commands.begin();
  176.50 +			while (it != commands.end())
  176.51 +			{
  176.52 +				write((*it).toAscii());
  176.53 +				it++;
  176.54 +			}
  176.55 +			emit connected();
  176.56 +		}
  176.57 +		break;
  176.58 +	case QAbstractSocket::UnconnectedState:
  176.59 +		timer->start(2000);
  176.60 +		emit disconnected();
  176.61 +		break;
  176.62 +	}
  176.63 +}
  176.64 +
  176.65 +void TcpClient::hostError(QAbstractSocket::SocketError error)
  176.66 +{
  176.67 +	abort();
  176.68 +	timer->start(2000);
  176.69 +	emit disconnected();
  176.70 +}
  176.71 +
  176.72 +void TcpClient::hostReadyRead()
  176.73 +{
  176.74 +	buffer += readAll();
  176.75 +	int from = 0;
  176.76 +	int idx;
  176.77 +	int size = buffer.size();
  176.78 +	QByteArray end=buffer.mid(size-5);
  176.79 +	idx = end.indexOf("dtn%", from);
  176.80 +	if (idx != -1)
  176.81 +	{
  176.82 +		QByteArray oddan;
  176.83 +		oddan.append(buffer);
  176.84 +		int velikos = oddan.size();
  176.85 +		emit newAnswer(oddan);
  176.86 +		buffer.clear();
  176.87 +	}
  176.88 +}
  176.89 +
  176.90 +void TcpClient::appendCommand(int id, QString cmd)
  176.91 +{
  176.92 +	cmd += QString("\r");
  176.93 +	commands.append(cmd);
  176.94 +	if (state() == QAbstractSocket::ConnectedState)
  176.95 +		write(cmd.toAscii());
  176.96 +}
  176.97 +
  176.98 +bool TcpClient::isConnected()
  176.99 +{
 176.100 +	if (state() == QAbstractSocket::ConnectedState)
 176.101 +		return true;
 176.102 +	else
 176.103 +		return false;
 176.104 +}
   177.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   177.2 +++ b/x86/ARM/tcpClient.h	Thu Jun 26 17:39:40 2008 +0100
   177.3 @@ -0,0 +1,40 @@
   177.4 +#ifndef TCPCLIENT_H
   177.5 +#define TCPCLIENT_H
   177.6 +
   177.7 +#include <QtCore>
   177.8 +#include <QTcpSocket>
   177.9 +#include <QTextCodec>
  177.10 +
  177.11 +class TcpClient : public QTcpSocket
  177.12 +{
  177.13 +	Q_OBJECT
  177.14 +
  177.15 +public:
  177.16 +	TcpClient(QObject* parent = 0);
  177.17 +	~TcpClient();
  177.18 +	virtual void addHost(QString hn, int hp);
  177.19 +	virtual void appendCommand(int id, QString cmd);
  177.20 +	virtual bool isConnected();
  177.21 +
  177.22 +public slots:
  177.23 +	virtual void reconnectToHost();
  177.24 +	virtual void hostStateChanged(QAbstractSocket::SocketState state);
  177.25 +	virtual void hostError(QAbstractSocket::SocketError error);
  177.26 +	virtual void hostReadyRead();
  177.27 +
  177.28 +signals:
  177.29 +	void newAnswer(QByteArray answ);
  177.30 +	void connected();
  177.31 +	void disconnected();
  177.32 +	
  177.33 +private:
  177.34 +	QList<QString> commands;
  177.35 +	QList<int> ids;
  177.36 +	QByteArray buffer;
  177.37 +	QTimer* timer;
  177.38 +	QList<QString> hostNames;
  177.39 +	QList<int> hostPorts;
  177.40 +	int currentHostIndex;
  177.41 +};
  177.42 +
  177.43 +#endif
   178.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   178.2 +++ b/x86/ARM/tlv.cpp	Thu Jun 26 17:39:40 2008 +0100
   178.3 @@ -0,0 +1,494 @@
   178.4 +#include <QtCore>
   178.5 +#include <tlv.h>
   178.6 +#include <hello.h>
   178.7 +#include <messageFile.h>
   178.8 +#include <readFile.h>
   178.9 +
  178.10 +
  178.11 +
  178.12 +//WARNING: SOME OF THE STRUCTURES HAS BEEN MODIFIED AND ARE NOT THE SAME AS IN DRAFT!
  178.13 +struct HelloHeader
  178.14 +{
  178.15 +	qint32 type;
  178.16 +	qint32 function;
  178.17 +	qint32 timer;
  178.18 +	qint32 nameLenght;
  178.19 +	qint32 nodeId;
  178.20 +	qint32 nodeType;
  178.21 +};
  178.22 +
  178.23 +struct DictionaryHeader 
  178.24 +{
  178.25 +	qint32 type;
  178.26 +	qint32 flags;
  178.27 +	qint32 lenght;
  178.28 +	qint32 entryCount;
  178.29 +	qint32 reserved;
  178.30 +};
  178.31 +
  178.32 +struct BundleListHeader 
  178.33 +{
  178.34 +	qint32 type;
  178.35 +	qint32 flags;
  178.36 +	qint32 lenght;
  178.37 +	qint32 entryCount;
  178.38 +	qint32 reserved;
  178.39 +};
  178.40 +
  178.41 +struct BundleListItem 
  178.42 +{
  178.43 +	qint32 destinationId;
  178.44 +	qint32 BFlags;
  178.45 +	qint32 reserved;
  178.46 +	qint32 bundleId;
  178.47 +};
  178.48 +
  178.49 +struct BundleDataHeader 
  178.50 +{
  178.51 +	qint32 sourceId;
  178.52 +	qint32 destinationId;
  178.53 +	qint32 bundleId;
  178.54 +	qint32 BFlags;
  178.55 +	qint32 reserved;
  178.56 +	qint32 dataLenght;	
  178.57 +	qint32 sourceStringLenght;
  178.58 +	qint32 destinationStringLenght;
  178.59 +	uint time;
  178.60 +};
  178.61 +
  178.62 +
  178.63 +struct DictionaryNodeHeader 
  178.64 +{
  178.65 +	qint32 stringId;
  178.66 +	qint32 lenght;
  178.67 +	qint32 reserved;
  178.68 +};
  178.69 +
  178.70 +struct RIBNodeHeader 
  178.71 +{
  178.72 +	qint32 stringId;
  178.73 +	float probability;
  178.74 +	qint32 RIBFlag;
  178.75 +};
  178.76 +
  178.77 +struct Header 
  178.78 +{
  178.79 +	qint32 type;
  178.80 +
  178.81 +};
  178.82 +
  178.83 +
  178.84 +
  178.85 +TLV::TLV(QObject *parent)
  178.86 +{
  178.87 +	ReadFile conf;
  178.88 +	fileOption=conf.getUseFileBundles();
  178.89 +	storagePath=conf.getStoragePath();
  178.90 +}
  178.91 +
  178.92 +
  178.93 +
  178.94 +void TLV::receiveDatagram(QByteArray datagram)
  178.95 +{
  178.96 +	Header* TLVType;
  178.97 +	TLVType= (Header*) datagram.constData();
  178.98 +	qint32 datagramIndex;
  178.99 +	//Read out TLV Type
 178.100 +	QByteArray temp;
 178.101 +	Hello newHello;
 178.102 +	QList<Node> receivedNodes;
 178.103 +	QList<Bundle> receivedBundles;
 178.104 +	QString name;
 178.105 +	struct DictionaryHeader *dictionaryHeader; //It is the same for RIB
 178.106 +	struct BundleListHeader *bundleHeader;
 178.107 +	struct HelloHeader *hello;
 178.108 +	qint32 entryCount;	
 178.109 +	qint32 lenght;
 178.110 +	switch(TLVType->type)
 178.111 +	{
 178.112 +		//Hello massage forming
 178.113 +		case 0x01:	//////log->addLog(0,(QString)"TLV receiving Hello datagram...");
 178.114 +					hello= (HelloHeader*) datagram.constData();
 178.115 + 					newHello.HFunction=(qint32)hello->function;
 178.116 +					newHello.timer =(qint32)hello->timer;
 178.117 +					newHello.senderId=(qint32)hello->nodeId;
 178.118 +					newHello.senderType =(qint32)hello->nodeType;
 178.119 +					lenght = (qint32)hello->nameLenght;
 178.120 +					datagram.remove(0,sizeof(HelloHeader));
 178.121 +					name=datagram.mid(0,lenght);
 178.122 +					newHello.setSenderName(name);
 178.123 +					emit sendHello(newHello);
 178.124 +		break;
 178.125 +		//RIB
 178.126 +		case 0xA1:	//////log->addLog(0,(QString)"TLV receiving RIB datagram...");
 178.127 +					dictionaryHeader = (DictionaryHeader*) datagram.constData();
 178.128 +					entryCount=dictionaryHeader->entryCount;
 178.129 +					datagram.remove(0,sizeof(DictionaryHeader));
 178.130 +					for (ushort i = 0; i < entryCount; ++i) 
 178.131 +					{
 178.132 +						//Resolving data from datagram
 178.133 +						struct RIBNodeHeader *nodeHeader = (RIBNodeHeader*) datagram.constData();
 178.134 +						qint32 stringId = (qint32)nodeHeader->stringId;
 178.135 +						qint32 flag = (qint32)nodeHeader->RIBFlag;
 178.136 +						float probability = (float)nodeHeader->probability;
 178.137 +						datagram.remove(0,sizeof(RIBNodeHeader));
 178.138 +						//Setting node variables
 178.139 +						Node tempNode;
 178.140 +						tempNode.setContent(stringId,probability,flag,"X");
 178.141 +						//Adding variables in the list
 178.142 +						receivedNodes.append(tempNode);
 178.143 +					}
 178.144 +					emit sendRIB(receivedNodes);
 178.145 +		break;
 178.146 +		//BUNDLE OFFER RECEIVED
 178.147 +		case 0xA2:	//////log->addLog(0,(QString)"TLV receiving Bundle offer datagram...");
 178.148 +					bundleHeader = (BundleListHeader*) datagram.constData();
 178.149 +					entryCount=(qint32)bundleHeader->entryCount;
 178.150 +					datagramIndex=sizeof(BundleListHeader);
 178.151 +					datagram.remove(0,datagramIndex);
 178.152 +					for (ushort i = 0; i < entryCount; ++i) 
 178.153 +					{
 178.154 +						//Resolving data from datagram
 178.155 +						struct BundleListItem *bundleItem;
 178.156 +						bundleItem = (BundleListItem*) datagram.constData();
 178.157 +						
 178.158 +						qint32 destId = (qint32)bundleItem->destinationId;
 178.159 +						qint32 bundId = (qint32)bundleItem->bundleId;
 178.160 +						qint32 BFlags = (qint32)bundleItem->BFlags;
 178.161 +						qint32 reserved = (qint32)bundleItem->reserved;
 178.162 +						datagram.remove(0,sizeof(BundleListItem));
 178.163 +						//Setting Bundle variables
 178.164 +						Bundle tempBundle;
 178.165 +						tempBundle.destinationId = destId;
 178.166 +						tempBundle.id = bundId;
 178.167 +						tempBundle.options = BFlags;
 178.168 +						//Adding variables in the list
 178.169 +						receivedBundles.append(tempBundle);
 178.170 +					}
 178.171 +					emit sendBundleOffer(receivedBundles);
 178.172 +		break;
 178.173 +		//BUNDLE REQUEST RECEIVED
 178.174 +		case 0xA3:	//////log->addLog(0,(QString)"TLV receiving Bundle Request datagram...");
 178.175 +					bundleHeader = (BundleListHeader*) datagram.constData();
 178.176 +					entryCount=bundleHeader->entryCount;
 178.177 +					datagramIndex=sizeof(BundleListHeader);
 178.178 +					datagram.remove(0,datagramIndex);
 178.179 +					for (ushort i = 0; i < entryCount; ++i) 
 178.180 +					{
 178.181 +						//Resolving data from datagram
 178.182 +						struct BundleListItem *bundleItem;
 178.183 +						bundleItem = (BundleListItem*) datagram.constData();
 178.184 +						
 178.185 +						qint32 destId = (qint32)bundleItem->destinationId;
 178.186 +						qint32 bundId = (qint32)bundleItem->bundleId;
 178.187 +						qint32 BFlags = (qint32)bundleItem->BFlags;
 178.188 +						qint32 reserved = (qint32)bundleItem->reserved;
 178.189 +						datagram.remove(0,sizeof(BundleListItem));
 178.190 +						//Setting Bundle variables
 178.191 +						Bundle tempBundle;
 178.192 +						tempBundle.destinationId = destId;
 178.193 +						tempBundle.id = bundId;
 178.194 +						tempBundle.options = BFlags;
 178.195 +						//Adding variables in the list
 178.196 +						receivedBundles.append(tempBundle);
 178.197 +					}
 178.198 +					emit sendBundleRequest(receivedBundles);
 178.199 +		break;
 178.200 +		//Dictionary
 178.201 +		case 0xA0:	//////log->addLog(0,(QString)"TLV receiving Dictionary datagram...");
 178.202 +					dictionaryHeader = (DictionaryHeader*) datagram.constData();
 178.203 +					entryCount=dictionaryHeader->entryCount;
 178.204 +					datagram.remove(0,sizeof(DictionaryHeader));
 178.205 +					for (ushort i = 0; i < entryCount; ++i) 
 178.206 +					{
 178.207 +						QString nodeName;
 178.208 +						//Resolving data from datagram
 178.209 +						struct DictionaryNodeHeader * nodeHeader = (DictionaryNodeHeader*) datagram.constData();
 178.210 +						qint32 stringId = (qint32)nodeHeader->stringId;
 178.211 +						qint32 lenght = (qint32)nodeHeader->lenght;
 178.212 +						datagram.remove(0,sizeof(DictionaryNodeHeader)); //Because stings terminator
 178.213 +						nodeName=datagram.mid(0,lenght);
 178.214 +						datagram.remove(0,lenght);
 178.215 +						//Setting node variables
 178.216 +						Node tempNode;
 178.217 +						tempNode.setContent(stringId,0.0,-1,nodeName);
 178.218 +						//Adding variables in the list
 178.219 +						receivedNodes.append(tempNode);
 178.220 +					}
 178.221 +					emit sendDictionary(receivedNodes);
 178.222 +		break;		
 178.223 +		//BUNDLE DATA RECEIVED
 178.224 +		case 0xA4:	//////log->addLog(0,(QString)"TLV receiving Bundle data datagram...");
 178.225 +					bundleHeader = (BundleListHeader*) datagram.constData();
 178.226 +					entryCount=bundleHeader->entryCount;
 178.227 +					datagramIndex=sizeof(BundleListHeader);
 178.228 +					datagram.remove(0,datagramIndex);
 178.229 +					for (ushort i = 0; i < entryCount; ++i) 
 178.230 +					{
 178.231 +						//Resolving data from datagram
 178.232 +						struct BundleDataHeader *bundleItem;
 178.233 +						bundleItem = (BundleDataHeader*) datagram.constData();
 178.234 +						
 178.235 +						qint32 destId = (qint32)bundleItem->destinationId;
 178.236 +						qint32 srcId = (qint32)bundleItem->sourceId;
 178.237 +						qint32 bundId = (qint32)bundleItem->bundleId;
 178.238 +						qint32 BFlags = (qint32)bundleItem->BFlags;
 178.239 +						qint32 reserved = (qint32)bundleItem->reserved;
 178.240 +						qint32 lenght = (qint32)bundleItem->dataLenght;
 178.241 +						qint32 srclenght = (qint32)bundleItem->sourceStringLenght;
 178.242 +						qint32 dstlenght = (qint32)bundleItem->destinationStringLenght;
 178.243 +						
 178.244 +						QDateTime time;
 178.245 +						time.setTime_t(bundleItem->time);
 178.246 +						datagram.remove(0,sizeof(BundleDataHeader));
 178.247 +						//Setting Bundle variables
 178.248 +						Bundle tempBundle;
 178.249 +						tempBundle.destinationId = destId;
 178.250 +						tempBundle.sourceId = srcId;
 178.251 +						tempBundle.id = bundId;
 178.252 +						tempBundle.options = BFlags;
 178.253 +						tempBundle.timeStamp = time;
 178.254 +						QByteArray datagramPart;
 178.255 +						datagramPart=datagram.mid(0,lenght);
 178.256 +						tempBundle.data=datagramPart;
 178.257 +						datagram.remove(0,lenght);
 178.258 +						
 178.259 +						datagramPart=datagram.mid(0,srclenght);
 178.260 +						tempBundle.sourceString=datagramPart;
 178.261 +						datagram.remove(0,srclenght);
 178.262 +						datagramPart=datagram.mid(0,dstlenght);
 178.263 +						tempBundle.destinationString=datagramPart;
 178.264 +						datagram.remove(0,dstlenght);
 178.265 +						//Adding variables in the list
 178.266 +						receivedBundles.append(tempBundle);
 178.267 +					}
 178.268 +					emit sendBundleData(receivedBundles);
 178.269 +		break;
 178.270 +		default:	//////log->addLog(0,(QString)"TLV receiving Unknown datagram...");
 178.271 +					//QString name;
 178.272 +					temp = datagram.mid(2,1);
 178.273 +//					function = temp.toushort();
 178.274 +					temp = datagram.mid(32,1);
 178.275 +//					timer = temp.toushort();
 178.276 +					temp = datagram.mid(40,1);
 178.277 +//					nameLenght = temp.toushort();
 178.278 +					temp = datagram.mid(48,0);
 178.279 +					newHello.setFunction(0);
 178.280 +					newHello.setTimer(0);
 178.281 +					newHello.setSenderName(0);
 178.282 +
 178.283 +		break;
 178.284 +	}
 178.285 +
 178.286 +}
 178.287 +
 178.288 +
 178.289 +void TLV::receiveHello(Hello hello)
 178.290 +{
 178.291 +	//Setting up variables
 178.292 +	struct HelloHeader header;
 178.293 +	QString nodeName = hello.getSenderName();
 178.294 +	header.type = 0x01;//Hello 
 178.295 +	header.function = (qint32)hello.getFunction();
 178.296 +	header.timer = (qint32)hello.getTimer();
 178.297 +	header.nodeId = (qint32)hello.senderId;
 178.298 +	header.nodeType = (qint32)hello.senderType;
 178.299 +	header.nameLenght = (qint32)nodeName.size();
 178.300 +	//Preparing heder
 178.301 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(HelloHeader));	
 178.302 +	//Adding Addres Strings
 178.303 +	newDatagram.append(nodeName.toAscii());
 178.304 +	//Sending our TLV datagram
 178.305 +	//////log->addLog(0,(QString)"TLV sending Hello datagram...");
 178.306 +	emit sendDatagram(newDatagram);
 178.307 +}
 178.308 +
 178.309 +
 178.310 +//Create Dictionary
 178.311 +void TLV::createDictionary(QList<Node> nodeList)
 178.312 +{
 178.313 +	//Setting up variables
 178.314 +	struct DictionaryHeader header;
 178.315 +	header.type = 0xA0;//Dictionary 
 178.316 +	header.flags = 0x00;
 178.317 +	header.lenght = 0x00;
 178.318 +	header.entryCount=(qint32)(nodeList.size());
 178.319 +	header.reserved = 0x00;
 178.320 +	//Preparing heder
 178.321 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(DictionaryHeader));	
 178.322 +	//Adding Addres Strings
 178.323 +	Node tempNode;
 178.324 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 178.325 +	{
 178.326 +		struct DictionaryNodeHeader newNodeHeader;
 178.327 +		//Resolving data from list
 178.328 +        tempNode = nodeList.at(i);
 178.329 +		newNodeHeader.stringId = (qint32)tempNode.getId();
 178.330 +		newNodeHeader.reserved=0x00;
 178.331 +		newNodeHeader.lenght= (qint32)tempNode.nodeName.size();
 178.332 +		//Puting data to datagram
 178.333 +		QByteArray nodeDatagram = QByteArray::fromRawData((char *)&newNodeHeader, sizeof(newNodeHeader));	
 178.334 +		nodeDatagram.append(tempNode.nodeName);
 178.335 +		newDatagram.append(nodeDatagram);
 178.336 +    }
 178.337 +	//////log->addLog(0,(QString)"TLV Sending dictionary datagram...");
 178.338 +	emit sendDatagram(newDatagram);
 178.339 +
 178.340 +}
 178.341 +
 178.342 +//Create RIB
 178.343 +void TLV::createRIB(QList<Node> nodeList)
 178.344 +{
 178.345 +	//Setting up variables
 178.346 +	struct DictionaryHeader header; //It is the same as Dictionary
 178.347 +	header.type = 0xA1;//RIB Type
 178.348 +	header.flags = 0x00;
 178.349 +	header.lenght = 0x00;
 178.350 +	header.entryCount=(qint32)nodeList.size();
 178.351 +	header.reserved = 0x00;
 178.352 +	//Preparing heder
 178.353 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(DictionaryHeader));	
 178.354 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 178.355 +	{
 178.356 +		Node tempNode;
 178.357 +		struct RIBNodeHeader  newNodeHeader;
 178.358 +		//Resolving data from list
 178.359 +        tempNode = nodeList.at(i);
 178.360 +		newNodeHeader.stringId = (qint32)tempNode.getId();
 178.361 +		newNodeHeader.probability = tempNode.getProbability();
 178.362 +		newNodeHeader.RIBFlag = (qint32)tempNode.getFlag();
 178.363 +		//Puting data to datagram
 178.364 +		QByteArray nodeDatagram = QByteArray::fromRawData((char *)&newNodeHeader, sizeof(newNodeHeader));	
 178.365 +		newDatagram.append(nodeDatagram);
 178.366 +    }
 178.367 +	//////log->addLog(0,(QString)"TLV Sending RIB datagram...");
 178.368 +	emit sendDatagram(newDatagram);
 178.369 +
 178.370 +}
 178.371 +
 178.372 +
 178.373 +//Create BundleOffer
 178.374 +void TLV::createBundleOffer(QList<Bundle> bundleList)
 178.375 +{
 178.376 +	//Setting up variables
 178.377 +	struct BundleListHeader header;
 178.378 +	header.type = 0xA2;//Offer
 178.379 +	header.flags = 0x22;
 178.380 +	header.lenght = 0x00;
 178.381 +	header.entryCount=(qint32)bundleList.size();
 178.382 +	header.reserved = 0x00;
 178.383 +	//Preparing heder
 178.384 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(BundleListHeader));	
 178.385 +	//Adding bundles
 178.386 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 178.387 +	{
 178.388 +		struct BundleListItem newBundleItem;
 178.389 +		//Resolving data from list
 178.390 +        Bundle tempBundle = bundleList.at(i);
 178.391 +		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 178.392 +		newBundleItem.bundleId=(qint32)tempBundle.id;
 178.393 +		newBundleItem.BFlags=(qint32)tempBundle.options;
 178.394 +		newBundleItem.reserved=0xaa;
 178.395 +		//Puting data to datagram
 178.396 +		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(newBundleItem));	
 178.397 +		newDatagram.append(bundleDatagram);
 178.398 +    }
 178.399 +	//////log->addLog(0,(QString)"TLV Sending bundle offer...");
 178.400 +	emit sendDatagram(newDatagram);
 178.401 +
 178.402 +}
 178.403 +
 178.404 +//Create BundleOffer
 178.405 +void TLV::createBundleRequest(QList<Bundle> bundleList)
 178.406 +{
 178.407 +	//Setting up variables
 178.408 +	struct BundleListHeader header;
 178.409 +	header.type = 0xA3;//Request
 178.410 +	header.flags = 0x22;
 178.411 +	header.lenght = 0x00;
 178.412 +	header.entryCount=bundleList.size();
 178.413 +	header.reserved = 0x00;
 178.414 +	//Preparing heder
 178.415 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(BundleListHeader));	
 178.416 +	//Adding bundles
 178.417 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 178.418 +	{
 178.419 +		struct BundleListItem newBundleItem;
 178.420 +		//Resolving data from list
 178.421 +        Bundle tempBundle = bundleList.at(i);
 178.422 +		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 178.423 +		newBundleItem.bundleId=(qint32)tempBundle.id;
 178.424 +		newBundleItem.BFlags=(qint32)tempBundle.options;
 178.425 +		newBundleItem.reserved=0xaa;
 178.426 +		//Puting data to datagram
 178.427 +		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(BundleListItem));	
 178.428 +		newDatagram.append(bundleDatagram);
 178.429 +    }
 178.430 +	//////log->addLog(0,(QString)"TLV Sending bundle request...");
 178.431 +	emit sendDatagram(newDatagram);
 178.432 +
 178.433 +}
 178.434 +
 178.435 +
 178.436 +///Create BundleOffer
 178.437 +void TLV::createBundleData(QList<Bundle> bundleList)
 178.438 +{
 178.439 +
 178.440 +	
 178.441 +	//Setting up variables
 178.442 +	struct BundleListHeader header;
 178.443 +	header.type = 0xA4;//Bundle Data
 178.444 +	header.flags = 0x22;
 178.445 +	header.lenght = 0x00;
 178.446 +	header.entryCount=bundleList.size();
 178.447 +	header.reserved = 0x00;
 178.448 +	//Preparing heder
 178.449 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(header));	
 178.450 +	//Adding bundles
 178.451 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 178.452 +	{
 178.453 +		struct BundleDataHeader newBundleItem;
 178.454 +		//Resolving data from list
 178.455 +        Bundle tempBundle = bundleList.at(i);
 178.456 +		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 178.457 +		newBundleItem.sourceId=(qint32)tempBundle.sourceId;
 178.458 +		newBundleItem.bundleId=(qint32)tempBundle.id;
 178.459 +		newBundleItem.BFlags=(qint32)tempBundle.options;
 178.460 +		newBundleItem.reserved=0xaa;
 178.461 +		newBundleItem.time = tempBundle.timeStamp.toTime_t ();
 178.462 +		//Get bundle data
 178.463 +		QByteArray data;
 178.464 +		if(fileOption==1)
 178.465 +		{
 178.466 +			QString fileName =storagePath;
 178.467 +			fileName.append(QString("%1").arg((int)tempBundle.id));
 178.468 +			QFile file(fileName);
 178.469 +			if (file.open(QIODevice::ReadOnly))
 178.470 +			data=file.readAll();
 178.471 +			file.close();
 178.472 +
 178.473 +		}
 178.474 +		else
 178.475 +			data = tempBundle.data;
 178.476 +		newBundleItem.dataLenght=(qint32)data.size();
 178.477 +		//Get bundle source string
 178.478 +		QByteArray srcData = tempBundle.sourceString;
 178.479 +		newBundleItem.sourceStringLenght=(qint32)srcData.size();
 178.480 +		//Get bundle destination string
 178.481 +		QByteArray dstData = tempBundle.destinationString;
 178.482 +		newBundleItem.destinationStringLenght=(qint32)dstData.size();
 178.483 +		//Puting item header to datagram
 178.484 +		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(newBundleItem));	
 178.485 +		//Puting item data to datagram
 178.486 +		bundleDatagram.append(data);
 178.487 +		bundleDatagram.append(srcData);
 178.488 +		bundleDatagram.append(dstData);
 178.489 +		//Adding it to main datagram
 178.490 +		newDatagram.append(bundleDatagram);
 178.491 +
 178.492 +    }
 178.493 +	//////log->addLog(0,(QString)"TLV Sending bundle data...");
 178.494 +	emit sendDatagram(newDatagram);
 178.495 +}
 178.496 +
 178.497 +
   179.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   179.2 +++ b/x86/ARM/tlv.h	Thu Jun 26 17:39:40 2008 +0100
   179.3 @@ -0,0 +1,37 @@
   179.4 +#ifndef TLV_H
   179.5 +#define TLV_H
   179.6 +
   179.7 +#include <QtCore>
   179.8 +#include <hello.h>
   179.9 +#include <node.h>
  179.10 +#include <bundle.h>
  179.11 +
  179.12 +class TLV : public QObject
  179.13 +{
  179.14 +
  179.15 +Q_OBJECT 
  179.16 +	public:
  179.17 +		TLV(QObject *parent = 0);
  179.18 +		int fileOption;
  179.19 +		QString storagePath;
  179.20 +
  179.21 +	signals:
  179.22 +		void sendDatagram(QByteArray);
  179.23 +		void sendHello(Hello);
  179.24 +		void sendDictionary(QList<Node>);
  179.25 +		void sendRIB(QList<Node>);
  179.26 +		void sendBundleOffer(QList<Bundle>);
  179.27 +		void sendBundleRequest(QList<Bundle>);
  179.28 +		void sendBundleData(QList<Bundle>);
  179.29 +		
  179.30 +	public slots:
  179.31 +		void receiveHello(Hello);
  179.32 +		void receiveDatagram(QByteArray);
  179.33 +		void createDictionary(QList<Node>);
  179.34 +		void createRIB(QList<Node>);
  179.35 +		void createBundleOffer(QList<Bundle>);
  179.36 +		void createBundleRequest(QList<Bundle>);
  179.37 +		void createBundleData(QList<Bundle>);
  179.38 +};
  179.39 +
  179.40 +#endif
  179.41 \ No newline at end of file
   180.1 --- a/x86/DTN/HexDumpBuffer.cc	Wed Jan 03 09:17:10 2007 +0000
   180.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   180.3 @@ -1,63 +0,0 @@
   180.4 -/*
   180.5 - * IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. By
   180.6 - * downloading, copying, installing or using the software you agree to
   180.7 - * this license. If you do not agree to this license, do not download,
   180.8 - * install, copy or use the software.
   180.9 - * 
  180.10 - * Intel Open Source License 
  180.11 - * 
  180.12 - * Copyright (c) 2004 Intel Corporation. All rights reserved. 
  180.13 - * 
  180.14 - * Redistribution and use in source and binary forms, with or without
  180.15 - * modification, are permitted provided that the following conditions are
  180.16 - * met:
  180.17 - * 
  180.18 - *   Redistributions of source code must retain the above copyright
  180.19 - *   notice, this list of conditions and the following disclaimer.
  180.20 - * 
  180.21 - *   Redistributions in binary form must reproduce the above copyright
  180.22 - *   notice, this list of conditions and the following disclaimer in the
  180.23 - *   documentation and/or other materials provided with the distribution.
  180.24 - * 
  180.25 - *   Neither the name of the Intel Corporation nor the names of its
  180.26 - *   contributors may be used to endorse or promote products derived from
  180.27 - *   this software without specific prior written permission.
  180.28 - *  
  180.29 - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  180.30 - * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  180.31 - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  180.32 - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE INTEL OR
  180.33 - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  180.34 - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  180.35 - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  180.36 - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  180.37 - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  180.38 - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  180.39 - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  180.40 - */
  180.41 -
  180.42 -#include <ctype.h>
  180.43 -#include "HexDumpBuffer.h"
  180.44 -
  180.45 -namespace oasys {
  180.46 -
  180.47 -void
  180.48 -HexDumpBuffer::hexify()
  180.49 -{
  180.50 -    // make a copy of the current data
  180.51 -    size_t len = length();
  180.52 -    std::string contents(data(), len);
  180.53 -    // rewind the string buffer backwards
  180.54 -    trim(length());
  180.55 -
  180.56 -    // generate the dump
  180.57 -    u_char* bp = (u_char*)contents.data();
  180.58 -    appendf("Size:%d\n",len);
  180.59 -    for (size_t i = 0; i < len; ++i, ++bp)
  180.60 -    {
  180.61 -        // print the hex character
  180.62 -        appendf("%02x", *bp);
  180.63 -    }
  180.64 -}
  180.65 -
  180.66 -} // namespace oasys
   181.1 --- a/x86/DTNInterface.cpp	Wed Jan 03 09:17:10 2007 +0000
   181.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   181.3 @@ -1,284 +0,0 @@
   181.4 -#include <QtCore>
   181.5 -#include <QtNetwork>
   181.6 -#include <readFile.h>
   181.7 -#include <bundleManager.h>
   181.8 -#include <DTNInterface.h>
   181.9 -#include <tcpClient.h>
  181.10 -
  181.11 -#define DTNTIMER 500
  181.12 -
  181.13 -
  181.14 -#define INIT 0
  181.15 -#define DTNLIST 1
  181.16 -#define IDLE 2
  181.17 -#define PARSE 3
  181.18 -
  181.19 -DTNInterface::DTNInterface(BundleManager* bundleMng, NodeManager* nodeMng)
  181.20 -{
  181.21 -	ReadFile conf;
  181.22 -	hostPort=conf.getDTNHostPort();
  181.23 -	hostAddress=conf.getDTNHostName();
  181.24 -	ourName=conf.getNodeName();
  181.25 -	ourId=conf.getNodeId();
  181.26 -	bundleManager = bundleMng;
  181.27 -	nodeManager = nodeMng;
  181.28 -	//Create and connect Hello Timer
  181.29 -	timer = new QTimer(this);
  181.30 -    connect(timer, SIGNAL(timeout()), this, SLOT(getBundles()));
  181.31 -    timer->start(DTNTIMER);
  181.32 -	client = new TcpClient(this);
  181.33 -    sender = new TcpClient(this);
  181.34 -	connect(client, SIGNAL(newAnswer(QByteArray)), this, SLOT(getResponse(QByteArray)));
  181.35 -	client->addHost(hostAddress.toString(),hostPort);
  181.36 -	sender->addHost(hostAddress.toString(),hostPort);
  181.37 -	dtnState=INIT;
  181.38 -	bundlesToParse=0;
  181.39 -	parsedList.clear();
  181.40 -	bundleList.clear();
  181.41 -	ackOption=conf.getUseACKS();
  181.42 -
  181.43 -}
  181.44 -
  181.45 -void DTNInterface::receiveBundle(Bundle bundle)
  181.46 -{
  181.47 -	QString command;
  181.48 -	if(bundle.data.size()>0)
  181.49 -	{
  181.50 -		command.append("bundle inject ");
  181.51 -		command.append(bundle.sourceString);
  181.52 -		command.append(" ");
  181.53 -		command.append(bundle.destinationString);
  181.54 -		command.append(" \"");
  181.55 -		for (int m = 0; m < bundle.data.size(); ++m)
  181.56 -		{
  181.57 -			QString ch;
  181.58 -			ch.append("\\x");
  181.59 -			ch.append(QString("%1").arg((unsigned char)bundle.data.at(m),0,16)  );
  181.60 -			command.append(ch);
  181.61 -		}	
  181.62 -		command.append("\"");
  181.63 -		sender->appendCommand(0,command);
  181.64 -		QFile file("inject.txt");
  181.65 -		if(file.open(QIODevice::WriteOnly))
  181.66 -		{
  181.67 -		    file.write(command.toAscii());
  181.68 -		    file.close();
  181.69 -		
  181.70 -		}
  181.71 -		
  181.72 -		emit sendLog("Adding bundle to DTN...");
  181.73 -	}
  181.74 -	else
  181.75 -		emit sendLog("Zero bundle not sent to DTN...");
  181.76 -
  181.77 -}
  181.78 -
  181.79 -
  181.80 -void DTNInterface::getBundles()
  181.81 -{
  181.82 -	if(dtnState==IDLE)
  181.83 -	{
  181.84 -		dtnState=INIT;
  181.85 -		client->appendCommand(0,(QString)"");
  181.86 -	}
  181.87 -}
  181.88 -
  181.89 -
  181.90 -void DTNInterface::getResponse(QByteArray response)
  181.91 -{
  181.92 -	QString log;
  181.93 -	switch(dtnState)
  181.94 -	{
  181.95 -		case INIT:log.append("INIT:");break;
  181.96 -		case DTNLIST:log.append("DTNLIST:");break;
  181.97 -		case IDLE:log.append("IDLE:");break;
  181.98 -		case PARSE:log.append("PARSE:");break;
  181.99 -	}
 181.100 -	int size=response.size();
 181.101 -	if(size<500)
 181.102 -		log.append(response);
 181.103 -	else
 181.104 -		log.append("Long response...");
 181.105 -	emit sendLog(log);
 181.106 -	QString temp;
 181.107 -	int pos;
 181.108 -	int pos2;
 181.109 -	int inTheList=-1;
 181.110 -	int flag;
 181.111 -	
 181.112 -
 181.113 - 	switch(dtnState)
 181.114 -	{
 181.115 -		case INIT:	bundleIndex=0;
 181.116 -					bundleList.clear();
 181.117 -					client->appendCommand(0,(QString)"bundle list");
 181.118 -					dtnState=DTNLIST;
 181.119 -			break;
 181.120 -		case DTNLIST:	//we get the nuber of bundles
 181.121 -						pos = response.indexOf("(",0);
 181.122 -						pos2 = response.indexOf(")",0);
 181.123 -						temp=response.mid(pos+1,pos2-pos-1);
 181.124 -						bundlesToParse=temp.toInt(0,10);
 181.125 -						response.remove(0,pos2+6);
 181.126 -						emit sendLog("NR BUNDLES:");
 181.127 -	   				    emit sendLog(QString("%1").arg(bundlesToParse));
 181.128 -						while(bundlesToParse>0)
 181.129 -						{
 181.130 -							Bundle tempBundle;
 181.131 -							//If acking is enabled
 181.132 -							tempBundle.setContent(bundleManager->getSeq(),ourId,0,"",0);
 181.133 -							pos2 = response.indexOf(":",0);
 181.134 -							temp=response.mid(0,pos2);
 181.135 -							//Parse bundle ID
 181.136 -							tempBundle.options=temp.toInt(0,10);
 181.137 -							response.remove(0,pos2+2);
 181.138 -							//Parse source name
 181.139 -							pos2= response.indexOf("->",0);
 181.140 -							temp=response.mid(0,pos2-1);
 181.141 -							tempBundle.sourceString=temp.toAscii();
 181.142 -							response.remove(0,pos2+3);
 181.143 -							//Parse destination name
 181.144 -							pos2= response.indexOf("length",0);
 181.145 -							temp=response.mid(0,pos2-1);
 181.146 -							tempBundle.destinationString=temp.toAscii();
 181.147 -							//Parse data length
 181.148 -							response.remove(0,pos2+7);
 181.149 -							pos2= response.indexOf("\r",0);
 181.150 -							temp=response.mid(0,pos2);
 181.151 -							tempBundle.dataLength=temp.toInt(0,10);
 181.152 -							//Removing last part
 181.153 -							pos2= response.indexOf("\r",0);
 181.154 -							response.remove(0,pos2+3);
 181.155 -							bundleList.append(tempBundle);
 181.156 -							bundlesToParse--;
 181.157 -						}
 181.158 -						//Checking for unused bundles in parsed list
 181.159 -						for (int m = 0; m < parsedList.size(); ++m)
 181.160 -						{
 181.161 -							inTheList=-1;
 181.162 -							for (int n = 0; n < bundleList.size(); ++n)
 181.163 -							{
 181.164 -								if(parsedList.at(m)==bundleList.at(n).options)
 181.165 -									inTheList=m;
 181.166 -							}
 181.167 -							if(inTheList==-1)
 181.168 -							{
 181.169 -								parsedList.removeAt(m);
 181.170 -								m=0;
 181.171 -							}
 181.172 -						}
 181.173 -						//Check if it is some of the bundles are already on the parsed list
 181.174 -						for (int m = 0; m < parsedList.size(); ++m)
 181.175 -						{
 181.176 -							inTheList=-1;
 181.177 -							for (int n = 0; n < bundleList.size(); ++n)
 181.178 -							{
 181.179 -								if(parsedList.at(m)==bundleList.at(n).options)
 181.180 -									inTheList=n;
 181.181 -							}
 181.182 -							if(inTheList!=-1)
 181.183 -								bundleList.removeAt(inTheList);
 181.184 -						}
 181.185 -						if(bundleList.size()>0)
 181.186 -						{
 181.187 -							QString command;
 181.188 -							command.append("bundle dump ");
 181.189 -							command.append(QString("%1").arg(bundleList.at(bundleIndex).options));
 181.190 -							client->appendCommand(0,command);
 181.191 -							dtnState=PARSE;
 181.192 -							
 181.193 -						}
 181.194 -						else
 181.195 -						{
 181.196 -							dtnState=IDLE;
 181.197 -						}
 181.198 -			break;
 181.199 -		case PARSE:	client->appendCommand(0,(QString)"bundle list");
 181.200 -						//First we extract the bundle payload size
 181.201 -						temp=response.mid(0,20);
 181.202 -						pos=temp.indexOf("Size:",0);			
 181.203 -						int payloadSize;					
 181.204 -						flag=0;
 181.205 -						pos2=temp.indexOf("\n",0);
 181.206 -						temp=temp.mid(pos+5,pos2-(pos+6));
 181.207 -						payloadSize=temp.toInt(0,10);
 181.208 -						if(payloadSize>0)
 181.209 -						{
 181.210 -							
 181.211 -							QByteArray tempData;
 181.212 -							QString hexValue;
 181.213 -							char decValue;
 181.214 -							response.remove(0,pos2+1);
 181.215 -							pos=0;
 181.216 -							while(pos<(2*payloadSize))
 181.217 -							{
 181.218 -								//Decode hex value
 181.219 -								hexValue=response.mid(pos,2);
 181.220 -								decValue=hexValue.toShort(0,16);
 181.221 -								tempData.append(decValue);
 181.222 -								//Move to next value
 181.223 -								pos=pos+2;
 181.224 -
 181.225 -							}							
 181.226 -							
 181.227 -								
 181.228 -							Bundle tempBundle=bundleList.at(bundleIndex);
 181.229 -							tempBundle.data=tempData;
 181.230 -
 181.231 -						//Removing from the list
 181.232 -							parsedList.append(tempBundle.options);
 181.233 -			
 181.234 -							
 181.235 -							
 181.236 -							
 181.237 -							
 181.238 -							//Checking if this is not our bundle
 181.239 -							QString temp;
 181.240 -							QString destination;
 181.241 -							temp=tempBundle.destinationString;
 181.242 -							pos=temp.indexOf("://",0);
 181.243 -							temp.remove(0,pos+3);
 181.244 -							pos=temp.indexOf("/",0);
 181.245 -							destination=temp.mid(0,pos);
 181.246 -							if(destination!=ourName)
 181.247 -							{
 181.248 -								emit sendLog("Bundle parsed...\r\n");
 181.249 -								tempBundle.options=0;
 181.250 -								//If acking is enabled
 181.251 -								int option=0;
 181.252 -								if(ackOption==1)
 181.253 -								{
 181.254 -									//We set the ACKOption bit and set the ACK bit 
 181.255 -									option=option|0x01;
 181.256 -								}
 181.257 -								tempBundle.options=option;
 181.258 -								if(tempBundle.data.size()>0)
 181.259 -									emit sendBundle(tempBundle);
 181.260 -								bundleManager->updateBundlesDestinations(nodeManager);
 181.261 -							}
 181.262 -							else
 181.263 -							{
 181.264 -								emit sendLog("Bundle parsed but it is for us...\r\n");
 181.265 -							}
 181.266 -						
 181.267 -						}
 181.268 -						bundleIndex++;
 181.269 -						if(bundleIndex<bundleList.size())
 181.270 -						{
 181.271 -							QString command;
 181.272 -							//We need to use bundle dump_tcl command here as well
 181.273 -							command.append("bundle dump_tcl ");
 181.274 -							command.append(QString("%1").arg(bundleList.at(bundleIndex).options));
 181.275 -							client->appendCommand(0,command);
 181.276 -							dtnState=PARSE;
 181.277 -						}
 181.278 -						else
 181.279 -						{
 181.280 -							dtnState=IDLE;
 181.281 -						}
 181.282 -			break;
 181.283 -		case IDLE:		dtnState=IDLE;
 181.284 -			break;
 181.285 -	}
 181.286 -
 181.287 -}
   182.1 --- a/x86/DTNInterface.h	Wed Jan 03 09:17:10 2007 +0000
   182.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   182.3 @@ -1,73 +0,0 @@
   182.4 -#ifndef DTNINTERFACE_H
   182.5 -#define DTNINTERFACE_H
   182.6 -
   182.7 -//#include <iostream.h>
   182.8 -#include <QtCore>
   182.9 -#include <QtNetwork>
  182.10 -#include <connection.h>
  182.11 -#include <dataPacket.h>
  182.12 -#include <neighbourAwareness.h>
  182.13 -#include <bundleManager.h>
  182.14 -#include <nodeManager.h>
  182.15 -#include <tcpClient.h>
  182.16 -
  182.17 -/*! \brief This class handles the communication between PRoPHET and DTN.
  182.18 - *
  182.19 - * That is passing bundles between the BundleManager and DTN.<BR>
  182.20 - * DTN States:<BR>
  182.21 - * INIT - ???<BR>
  182.22 - * DTNLIST - ???<BR>
  182.23 - * IDLE - ???<BR>
  182.24 - * PARSE - ???<BR>
  182.25 - */
  182.26 -class DTNInterface : public QObject 
  182.27 -{
  182.28 -
  182.29 -	Q_OBJECT
  182.30 -	public:
  182.31 -	int dtnState;
  182.32 -	int bundlesToParse;
  182.33 -	QList<Bundle> bundleList;
  182.34 -	QList<int> parsedList;
  182.35 -	DTNInterface(BundleManager*,NodeManager* nodeMng);
  182.36 -	BundleManager *bundleManager;
  182.37 -	NodeManager* nodeManager;
  182.38 -	int bundleIndex; 
  182.39 -	int hostPort;
  182.40 -	QHostAddress hostAddress;
  182.41 -	TcpClient *client;
  182.42 -	TcpClient *sender;
  182.43 -	QString ourName;
  182.44 -	int ourId;
  182.45 -	QTimer *timer;
  182.46 -	int ackOption;
  182.47 -		
  182.48 -	public slots:
  182.49 -	/*!
  182.50 -	 * Fetches bundles from DTN???
  182.51 -	 */
  182.52 -	void getBundles();
  182.53 -	
  182.54 -	void getResponse(QByteArray response);
  182.55 -	
  182.56 -	/*!
  182.57 -	 * Injects the specified bundle into DTN.
  182.58 -	 */
  182.59 -	void receiveBundle(Bundle);
  182.60 -	signals:
  182.61 -	
  182.62 -	/*!
  182.63 -	 * Emit the specified QString to the DTN-interface log.
  182.64 -	 */
  182.65 -	void sendLog(QString);
  182.66 -	
  182.67 -	/*!
  182.68 -	 * Emit the specified QString to the DTN-interface log.
  182.69 -	 */
  182.70 -	void sendBundle(Bundle);
  182.71 -
  182.72 -
  182.73 -
  182.74 -};
  182.75 -
  182.76 -#endif
   183.1 --- a/x86/Doxyfile	Wed Jan 03 09:17:10 2007 +0000
   183.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   183.3 @@ -1,1252 +0,0 @@
   183.4 -# Doxyfile 1.5.0
   183.5 -
   183.6 -# This file describes the settings to be used by the documentation system
   183.7 -# doxygen (www.doxygen.org) for a project
   183.8 -#
   183.9 -# All text after a hash (#) is considered a comment and will be ignored
  183.10 -# The format is:
  183.11 -#       TAG = value [value, ...]
  183.12 -# For lists items can also be appended using:
  183.13 -#       TAG += value [value, ...]
  183.14 -# Values that contain spaces should be placed between quotes (" ")
  183.15 -
  183.16 -#---------------------------------------------------------------------------
  183.17 -# Project related configuration options
  183.18 -#---------------------------------------------------------------------------
  183.19 -
  183.20 -# The PROJECT_NAME tag is a single word (or a sequence of words surrounded 
  183.21 -# by quotes) that should identify the project.
  183.22 -
  183.23 -PROJECT_NAME           = PRoPHET
  183.24 -
  183.25 -# The PROJECT_NUMBER tag can be used to enter a project or revision number. 
  183.26 -# This could be handy for archiving the generated documentation or 
  183.27 -# if some version control system is used.
  183.28 -
  183.29 -PROJECT_NUMBER         = 
  183.30 -
  183.31 -# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) 
  183.32 -# base path where the generated documentation will be put. 
  183.33 -# If a relative path is entered, it will be relative to the location 
  183.34 -# where doxygen was started. If left blank the current directory will be used.
  183.35 -
  183.36 -OUTPUT_DIRECTORY       = docs
  183.37 -
  183.38 -# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 
  183.39 -# 4096 sub-directories (in 2 levels) under the output directory of each output 
  183.40 -# format and will distribute the generated files over these directories. 
  183.41 -# Enabling this option can be useful when feeding doxygen a huge amount of 
  183.42 -# source files, where putting all generated files in the same directory would 
  183.43 -# otherwise cause performance problems for the file system.
  183.44 -
  183.45 -CREATE_SUBDIRS         = NO
  183.46 -
  183.47 -# The OUTPUT_LANGUAGE tag is used to specify the language in which all 
  183.48 -# documentation generated by doxygen is written. Doxygen will use this 
  183.49 -# information to generate all constant output in the proper language. 
  183.50 -# The default language is English, other supported languages are: 
  183.51 -# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, 
  183.52 -# Croatian, Czech, Danish, Dutch, Finnish, French, German, Greek, Hungarian, 
  183.53 -# Italian, Japanese, Japanese-en (Japanese with English messages), Korean, 
  183.54 -# Korean-en, Lithuanian, Norwegian, Polish, Portuguese, Romanian, Russian, 
  183.55 -# Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
  183.56 -
  183.57 -OUTPUT_LANGUAGE        = English
  183.58 -
  183.59 -# This tag can be used to specify the encoding used in the generated output. 
  183.60 -# The encoding is not always determined by the language that is chosen, 
  183.61 -# but also whether or not the output is meant for Windows or non-Windows users. 
  183.62 -# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES 
  183.63 -# forces the Windows encoding (this is the default for the Windows binary), 
  183.64 -# whereas setting the tag to NO uses a Unix-style encoding (the default for 
  183.65 -# all platforms other than Windows).
  183.66 -
  183.67 -USE_WINDOWS_ENCODING   = YES
  183.68 -
  183.69 -# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will 
  183.70 -# include brief member descriptions after the members that are listed in 
  183.71 -# the file and class documentation (similar to JavaDoc). 
  183.72 -# Set to NO to disable this.
  183.73 -
  183.74 -BRIEF_MEMBER_DESC      = YES
  183.75 -
  183.76 -# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend 
  183.77 -# the brief description of a member or function before the detailed description. 
  183.78 -# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the 
  183.79 -# brief descriptions will be completely suppressed.
  183.80 -
  183.81 -REPEAT_BRIEF           = YES
  183.82 -
  183.83 -# This tag implements a quasi-intelligent brief description abbreviator 
  183.84 -# that is used to form the text in various listings. Each string 
  183.85 -# in this list, if found as the leading text of the brief description, will be 
  183.86 -# stripped from the text and the result after processing the whole list, is 
  183.87 -# used as the annotated text. Otherwise, the brief description is used as-is. 
  183.88 -# If left blank, the following values are used ("$name" is automatically 
  183.89 -# replaced with the name of the entity): "The $name class" "The $name widget" 
  183.90 -# "The $name file" "is" "provides" "specifies" "contains" 
  183.91 -# "represents" "a" "an" "the"
  183.92 -
  183.93 -ABBREVIATE_BRIEF       = 
  183.94 -
  183.95 -# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then 
  183.96 -# Doxygen will generate a detailed section even if there is only a brief 
  183.97 -# description.
  183.98 -
  183.99 -ALWAYS_DETAILED_SEC    = YES
 183.100 -
 183.101 -# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all 
 183.102 -# inherited members of a class in the documentation of that class as if those 
 183.103 -# members were ordinary class members. Constructors, destructors and assignment 
 183.104 -# operators of the base classes will not be shown.
 183.105 -
 183.106 -INLINE_INHERITED_MEMB  = NO
 183.107 -
 183.108 -# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full 
 183.109 -# path before files name in the file list and in the header files. If set 
 183.110 -# to NO the shortest path that makes the file name unique will be used.
 183.111 -
 183.112 -FULL_PATH_NAMES        = YES
 183.113 -
 183.114 -# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag 
 183.115 -# can be used to strip a user-defined part of the path. Stripping is 
 183.116 -# only done if one of the specified strings matches the left-hand part of 
 183.117 -# the path. The tag can be used to show relative paths in the file list. 
 183.118 -# If left blank the directory from which doxygen is run is used as the 
 183.119 -# path to strip.
 183.120 -
 183.121 -STRIP_FROM_PATH        = 
 183.122 -
 183.123 -# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of 
 183.124 -# the path mentioned in the documentation of a class, which tells 
 183.125 -# the reader which header file to include in order to use a class. 
 183.126 -# If left blank only the name of the header file containing the class 
 183.127 -# definition is used. Otherwise one should specify the include paths that 
 183.128 -# are normally passed to the compiler using the -I flag.
 183.129 -
 183.130 -STRIP_FROM_INC_PATH    = 
 183.131 -
 183.132 -# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter 
 183.133 -# (but less readable) file names. This can be useful is your file systems 
 183.134 -# doesn't support long names like on DOS, Mac, or CD-ROM.
 183.135 -
 183.136 -SHORT_NAMES            = NO
 183.137 -
 183.138 -# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen 
 183.139 -# will interpret the first line (until the first dot) of a JavaDoc-style 
 183.140 -# comment as the brief description. If set to NO, the JavaDoc 
 183.141 -# comments will behave just like the Qt-style comments (thus requiring an 
 183.142 -# explicit @brief command for a brief description.
 183.143 -
 183.144 -JAVADOC_AUTOBRIEF      = NO
 183.145 -
 183.146 -# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen 
 183.147 -# treat a multi-line C++ special comment block (i.e. a block of //! or /// 
 183.148 -# comments) as a brief description. This used to be the default behaviour. 
 183.149 -# The new default is to treat a multi-line C++ comment block as a detailed 
 183.150 -# description. Set this tag to YES if you prefer the old behaviour instead.
 183.151 -
 183.152 -MULTILINE_CPP_IS_BRIEF = NO
 183.153 -
 183.154 -# If the DETAILS_AT_TOP tag is set to YES then Doxygen 
 183.155 -# will output the detailed description near the top, like JavaDoc.
 183.156 -# If set to NO, the detailed description appears after the member 
 183.157 -# documentation.
 183.158 -
 183.159 -DETAILS_AT_TOP         = YES
 183.160 -
 183.161 -# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented 
 183.162 -# member inherits the documentation from any documented member that it 
 183.163 -# re-implements.
 183.164 -
 183.165 -INHERIT_DOCS           = YES
 183.166 -
 183.167 -# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce 
 183.168 -# a new page for each member. If set to NO, the documentation of a member will 
 183.169 -# be part of the file/class/namespace that contains it.
 183.170 -
 183.171 -SEPARATE_MEMBER_PAGES  = NO
 183.172 -
 183.173 -# The TAB_SIZE tag can be used to set the number of spaces in a tab. 
 183.174 -# Doxygen uses this value to replace tabs by spaces in code fragments.
 183.175 -
 183.176 -TAB_SIZE               = 8
 183.177 -
 183.178 -# This tag can be used to specify a number of aliases that acts 
 183.179 -# as commands in the documentation. An alias has the form "name=value". 
 183.180 -# For example adding "sideeffect=\par Side Effects:\n" will allow you to 
 183.181 -# put the command \sideeffect (or @sideeffect) in the documentation, which 
 183.182 -# will result in a user-defined paragraph with heading "Side Effects:". 
 183.183 -# You can put \n's in the value part of an alias to insert newlines.
 183.184 -
 183.185 -ALIASES                = 
 183.186 -
 183.187 -# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C 
 183.188 -# sources only. Doxygen will then generate output that is more tailored for C. 
 183.189 -# For instance, some of the names that are used will be different. The list 
 183.190 -# of all members will be omitted, etc.
 183.191 -
 183.192 -OPTIMIZE_OUTPUT_FOR_C  = NO
 183.193 -
 183.194 -# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java 
 183.195 -# sources only. Doxygen will then generate output that is more tailored for Java. 
 183.196 -# For instance, namespaces will be presented as packages, qualified scopes 
 183.197 -# will look different, etc.
 183.198 -
 183.199 -OPTIMIZE_OUTPUT_JAVA   = NO
 183.200 -
 183.201 -# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want to 
 183.202 -# include (a tag file for) the STL sources as input, then you should 
 183.203 -# set this tag to YES in order to let doxygen match functions declarations and 
 183.204 -# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. 
 183.205 -# func(std::string) {}). This also make the inheritance and collaboration 
 183.206 -# diagrams that involve STL classes more complete and accurate.
 183.207 -
 183.208 -BUILTIN_STL_SUPPORT    = NO
 183.209 -
 183.210 -# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC 
 183.211 -# tag is set to YES, then doxygen will reuse the documentation of the first 
 183.212 -# member in the group (if any) for the other members of the group. By default 
 183.213 -# all members of a group must be documented explicitly.
 183.214 -
 183.215 -DISTRIBUTE_GROUP_DOC   = NO
 183.216 -
 183.217 -# Set the SUBGROUPING tag to YES (the default) to allow class member groups of 
 183.218 -# the same type (for instance a group of public functions) to be put as a 
 183.219 -# subgroup of that type (e.g. under the Public Functions section). Set it to 
 183.220 -# NO to prevent subgrouping. Alternatively, this can be done per class using 
 183.221 -# the \nosubgrouping command.
 183.222 -
 183.223 -SUBGROUPING            = YES
 183.224 -
 183.225 -#---------------------------------------------------------------------------
 183.226 -# Build related configuration options
 183.227 -#---------------------------------------------------------------------------
 183.228 -
 183.229 -# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in 
 183.230 -# documentation are documented, even if no documentation was available. 
 183.231 -# Private class members and static file members will be hidden unless 
 183.232 -# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
 183.233 -
 183.234 -EXTRACT_ALL            = NO
 183.235 -
 183.236 -# If the EXTRACT_PRIVATE tag is set to YES all private members of a class 
 183.237 -# will be included in the documentation.
 183.238 -
 183.239 -EXTRACT_PRIVATE        = NO
 183.240 -
 183.241 -# If the EXTRACT_STATIC tag is set to YES all static members of a file 
 183.242 -# will be included in the documentation.
 183.243 -
 183.244 -EXTRACT_STATIC         = NO
 183.245 -
 183.246 -# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) 
 183.247 -# defined locally in source files will be included in the documentation. 
 183.248 -# If set to NO only classes defined in header files are included.
 183.249 -
 183.250 -EXTRACT_LOCAL_CLASSES  = YES
 183.251 -
 183.252 -# This flag is only useful for Objective-C code. When set to YES local 
 183.253 -# methods, which are defined in the implementation section but not in 
 183.254 -# the interface are included in the documentation. 
 183.255 -# If set to NO (the default) only methods in the interface are included.
 183.256 -
 183.257 -EXTRACT_LOCAL_METHODS  = NO
 183.258 -
 183.259 -# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all 
 183.260 -# undocumented members of documented classes, files or namespaces. 
 183.261 -# If set to NO (the default) these members will be included in the 
 183.262 -# various overviews, but no documentation section is generated. 
 183.263 -# This option has no effect if EXTRACT_ALL is enabled.
 183.264 -
 183.265 -HIDE_UNDOC_MEMBERS     = NO
 183.266 -
 183.267 -# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all 
 183.268 -# undocumented classes that are normally visible in the class hierarchy. 
 183.269 -# If set to NO (the default) these classes will be included in the various 
 183.270 -# overviews. This option has no effect if EXTRACT_ALL is enabled.
 183.271 -
 183.272 -HIDE_UNDOC_CLASSES     = NO
 183.273 -
 183.274 -# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all 
 183.275 -# friend (class|struct|union) declarations. 
 183.276 -# If set to NO (the default) these declarations will be included in the 
 183.277 -# documentation.
 183.278 -
 183.279 -HIDE_FRIEND_COMPOUNDS  = NO
 183.280 -
 183.281 -# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any 
 183.282 -# documentation blocks found inside the body of a function. 
 183.283 -# If set to NO (the default) these blocks will be appended to the 
 183.284 -# function's detailed documentation block.
 183.285 -
 183.286 -HIDE_IN_BODY_DOCS      = NO
 183.287 -
 183.288 -# The INTERNAL_DOCS tag determines if documentation 
 183.289 -# that is typed after a \internal command is included. If the tag is set 
 183.290 -# to NO (the default) then the documentation will be excluded. 
 183.291 -# Set it to YES to include the internal documentation.
 183.292 -
 183.293 -INTERNAL_DOCS          = NO
 183.294 -
 183.295 -# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate 
 183.296 -# file names in lower-case letters. If set to YES upper-case letters are also 
 183.297 -# allowed. This is useful if you have classes or files whose names only differ 
 183.298 -# in case and if your file system supports case sensitive file names. Windows 
 183.299 -# and Mac users are advised to set this option to NO.
 183.300 -
 183.301 -CASE_SENSE_NAMES       = NO
 183.302 -
 183.303 -# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen 
 183.304 -# will show members with their full class and namespace scopes in the 
 183.305 -# documentation. If set to YES the scope will be hidden.
 183.306 -
 183.307 -HIDE_SCOPE_NAMES       = NO
 183.308 -
 183.309 -# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen 
 183.310 -# will put a list of the files that are included by a file in the documentation 
 183.311 -# of that file.
 183.312 -
 183.313 -SHOW_INCLUDE_FILES     = YES
 183.314 -
 183.315 -# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] 
 183.316 -# is inserted in the documentation for inline members.
 183.317 -
 183.318 -INLINE_INFO            = YES
 183.319 -
 183.320 -# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen 
 183.321 -# will sort the (detailed) documentation of file and class members 
 183.322 -# alphabetically by member name. If set to NO the members will appear in 
 183.323 -# declaration order.
 183.324 -
 183.325 -SORT_MEMBER_DOCS       = YES
 183.326 -
 183.327 -# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the 
 183.328 -# brief documentation of file, namespace and class members alphabetically 
 183.329 -# by member name. If set to NO (the default) the members will appear in 
 183.330 -# declaration order.
 183.331 -
 183.332 -SORT_BRIEF_DOCS        = NO
 183.333 -
 183.334 -# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be 
 183.335 -# sorted by fully-qualified names, including namespaces. If set to 
 183.336 -# NO (the default), the class list will be sorted only by class name, 
 183.337 -# not including the namespace part. 
 183.338 -# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
 183.339 -# Note: This option applies only to the class list, not to the 
 183.340 -# alphabetical list.
 183.341 -
 183.342 -SORT_BY_SCOPE_NAME     = NO
 183.343 -
 183.344 -# The GENERATE_TODOLIST tag can be used to enable (YES) or 
 183.345 -# disable (NO) the todo list. This list is created by putting \todo 
 183.346 -# commands in the documentation.
 183.347 -
 183.348 -GENERATE_TODOLIST      = YES
 183.349 -
 183.350 -# The GENERATE_TESTLIST tag can be used to enable (YES) or 
 183.351 -# disable (NO) the test list. This list is created by putting \test 
 183.352 -# commands in the documentation.
 183.353 -
 183.354 -GENERATE_TESTLIST      = YES
 183.355 -
 183.356 -# The GENERATE_BUGLIST tag can be used to enable (YES) or 
 183.357 -# disable (NO) the bug list. This list is created by putting \bug 
 183.358 -# commands in the documentation.
 183.359 -
 183.360 -GENERATE_BUGLIST       = YES
 183.361 -
 183.362 -# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or 
 183.363 -# disable (NO) the deprecated list. This list is created by putting 
 183.364 -# \deprecated commands in the documentation.
 183.365 -
 183.366 -GENERATE_DEPRECATEDLIST= YES
 183.367 -
 183.368 -# The ENABLED_SECTIONS tag can be used to enable conditional 
 183.369 -# documentation sections, marked by \if sectionname ... \endif.
 183.370 -
 183.371 -ENABLED_SECTIONS       = 
 183.372 -
 183.373 -# The MAX_INITIALIZER_LINES tag determines the maximum number of lines 
 183.374 -# the initial value of a variable or define consists of for it to appear in 
 183.375 -# the documentation. If the initializer consists of more lines than specified 
 183.376 -# here it will be hidden. Use a value of 0 to hide initializers completely. 
 183.377 -# The appearance of the initializer of individual variables and defines in the 
 183.378 -# documentation can be controlled using \showinitializer or \hideinitializer 
 183.379 -# command in the documentation regardless of this setting.
 183.380 -
 183.381 -MAX_INITIALIZER_LINES  = 30
 183.382 -
 183.383 -# Set the SHOW_USED_FILES tag to NO to disable the list of files generated 
 183.384 -# at the bottom of the documentation of classes and structs. If set to YES the 
 183.385 -# list will mention the files that were used to generate the documentation.
 183.386 -
 183.387 -SHOW_USED_FILES        = YES
 183.388 -
 183.389 -# If the sources in your project are distributed over multiple directories 
 183.390 -# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy 
 183.391 -# in the documentation. The default is NO.
 183.392 -
 183.393 -SHOW_DIRECTORIES       = NO
 183.394 -
 183.395 -# The FILE_VERSION_FILTER tag can be used to specify a program or script that 
 183.396 -# doxygen should invoke to get the current version for each file (typically from the 
 183.397 -# version control system). Doxygen will invoke the program by executing (via 
 183.398 -# popen()) the command <command> <input-file>, where <command> is the value of 
 183.399 -# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file 
 183.400 -# provided by doxygen. Whatever the program writes to standard output 
 183.401 -# is used as the file version. See the manual for examples.
 183.402 -
 183.403 -FILE_VERSION_FILTER    = 
 183.404 -
 183.405 -#---------------------------------------------------------------------------
 183.406 -# configuration options related to warning and progress messages
 183.407 -#---------------------------------------------------------------------------
 183.408 -
 183.409 -# The QUIET tag can be used to turn on/off the messages that are generated 
 183.410 -# by doxygen. Possible values are YES and NO. If left blank NO is used.
 183.411 -
 183.412 -QUIET                  = NO
 183.413 -
 183.414 -# The WARNINGS tag can be used to turn on/off the warning messages that are 
 183.415 -# generated by doxygen. Possible values are YES and NO. If left blank 
 183.416 -# NO is used.
 183.417 -
 183.418 -WARNINGS               = YES
 183.419 -
 183.420 -# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings 
 183.421 -# for undocumented members. If EXTRACT_ALL is set to YES then this flag will 
 183.422 -# automatically be disabled.
 183.423 -
 183.424 -WARN_IF_UNDOCUMENTED   = YES
 183.425 -
 183.426 -# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for 
 183.427 -# potential errors in the documentation, such as not documenting some 
 183.428 -# parameters in a documented function, or documenting parameters that 
 183.429 -# don't exist or using markup commands wrongly.
 183.430 -
 183.431 -WARN_IF_DOC_ERROR      = YES
 183.432 -
 183.433 -# This WARN_NO_PARAMDOC option can be abled to get warnings for 
 183.434 -# functions that are documented, but have no documentation for their parameters 
 183.435 -# or return value. If set to NO (the default) doxygen will only warn about 
 183.436 -# wrong or incomplete parameter documentation, but not about the absence of 
 183.437 -# documentation.
 183.438 -
 183.439 -WARN_NO_PARAMDOC       = NO
 183.440 -
 183.441 -# The WARN_FORMAT tag determines the format of the warning messages that 
 183.442 -# doxygen can produce. The string should contain the $file, $line, and $text 
 183.443 -# tags, which will be replaced by the file and line number from which the 
 183.444 -# warning originated and the warning text. Optionally the format may contain 
 183.445 -# $version, which will be replaced by the version of the file (if it could 
 183.446 -# be obtained via FILE_VERSION_FILTER)
 183.447 -
 183.448 -WARN_FORMAT            = "$file:$line: $text"
 183.449 -
 183.450 -# The WARN_LOGFILE tag can be used to specify a file to which warning 
 183.451 -# and error messages should be written. If left blank the output is written 
 183.452 -# to stderr.
 183.453 -
 183.454 -WARN_LOGFILE           = 
 183.455 -
 183.456 -#---------------------------------------------------------------------------
 183.457 -# configuration options related to the input files
 183.458 -#---------------------------------------------------------------------------
 183.459 -
 183.460 -# The INPUT tag can be used to specify the files and/or directories that contain 
 183.461 -# documented source files. You may enter file names like "myfile.cpp" or 
 183.462 -# directories like "/usr/src/myproject". Separate the files or directories 
 183.463 -# with spaces.
 183.464 -
 183.465 -INPUT                  =
 183.466 -
 183.467 -# If the value of the INPUT tag contains directories, you can use the 
 183.468 -# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
 183.469 -# and *.h) to filter out the source-files in the directories. If left 
 183.470 -# blank the following patterns are tested: 
 183.471 -# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx 
 183.472 -# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py
 183.473 -
 183.474 -FILE_PATTERNS          = *.h *.cpp
 183.475 -
 183.476 -# The RECURSIVE tag can be used to turn specify whether or not subdirectories 
 183.477 -# should be searched for input files as well. Possible values are YES and NO. 
 183.478 -# If left blank NO is used.
 183.479 -
 183.480 -RECURSIVE              = NO
 183.481 -
 183.482 -# The EXCLUDE tag can be used to specify files and/or directories that should 
 183.483 -# excluded from the INPUT source files. This way you can easily exclude a 
 183.484 -# subdirectory from a directory tree whose root is specified with the INPUT tag.
 183.485 -
 183.486 -EXCLUDE                = 
 183.487 -
 183.488 -# The EXCLUDE_SYMLINKS tag can be used select whether or not files or 
 183.489 -# directories that are symbolic links (a Unix filesystem feature) are excluded 
 183.490 -# from the input.
 183.491 -
 183.492 -EXCLUDE_SYMLINKS       = NO
 183.493 -
 183.494 -# If the value of the INPUT tag contains directories, you can use the 
 183.495 -# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude 
 183.496 -# certain files from those directories. Note that the wildcards are matched 
 183.497 -# against the file with absolute path, so to exclude all test directories 
 183.498 -# for example use the pattern */test/*
 183.499 -
 183.500 -EXCLUDE_PATTERNS       = 
 183.501 -
 183.502 -# The EXAMPLE_PATH tag can be used to specify one or more files or 
 183.503 -# directories that contain example code fragments that are included (see 
 183.504 -# the \include command).
 183.505 -
 183.506 -EXAMPLE_PATH           = 
 183.507 -
 183.508 -# If the value of the EXAMPLE_PATH tag contains directories, you can use the 
 183.509 -# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
 183.510 -# and *.h) to filter out the source-files in the directories. If left 
 183.511 -# blank all files are included.
 183.512 -
 183.513 -EXAMPLE_PATTERNS       = 
 183.514 -
 183.515 -# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be 
 183.516 -# searched for input files to be used with the \include or \dontinclude 
 183.517 -# commands irrespective of the value of the RECURSIVE tag. 
 183.518 -# Possible values are YES and NO. If left blank NO is used.
 183.519 -
 183.520 -EXAMPLE_RECURSIVE      = NO
 183.521 -
 183.522 -# The IMAGE_PATH tag can be used to specify one or more files or 
 183.523 -# directories that contain image that are included in the documentation (see 
 183.524 -# the \image command).
 183.525 -
 183.526 -IMAGE_PATH             = 
 183.527 -
 183.528 -# The INPUT_FILTER tag can be used to specify a program that doxygen should 
 183.529 -# invoke to filter for each input file. Doxygen will invoke the filter program 
 183.530 -# by executing (via popen()) the command <filter> <input-file>, where <filter> 
 183.531 -# is the value of the INPUT_FILTER tag, and <input-file> is the name of an 
 183.532 -# input file. Doxygen will then use the output that the filter program writes 
 183.533 -# to standard output.  If FILTER_PATTERNS is specified, this tag will be 
 183.534 -# ignored.
 183.535 -
 183.536 -INPUT_FILTER           = 
 183.537 -
 183.538 -# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern 
 183.539 -# basis.  Doxygen will compare the file name with each pattern and apply the 
 183.540 -# filter if there is a match.  The filters are a list of the form: 
 183.541 -# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further 
 183.542 -# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER 
 183.543 -# is applied to all files.
 183.544 -
 183.545 -FILTER_PATTERNS        = 
 183.546 -
 183.547 -# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using 
 183.548 -# INPUT_FILTER) will be used to filter the input files when producing source 
 183.549 -# files to browse (i.e. when SOURCE_BROWSER is set to YES).
 183.550 -
 183.551 -FILTER_SOURCE_FILES    = NO
 183.552 -
 183.553 -#---------------------------------------------------------------------------
 183.554 -# configuration options related to source browsing
 183.555 -#---------------------------------------------------------------------------
 183.556 -
 183.557 -# If the SOURCE_BROWSER tag is set to YES then a list of source files will 
 183.558 -# be generated. Documented entities will be cross-referenced with these sources. 
 183.559 -# Note: To get rid of all source code in the generated output, make sure also 
 183.560 -# VERBATIM_HEADERS is set to NO.
 183.561 -
 183.562 -SOURCE_BROWSER         = NO
 183.563 -
 183.564 -# Setting the INLINE_SOURCES tag to YES will include the body 
 183.565 -# of functions and classes directly in the documentation.
 183.566 -
 183.567 -INLINE_SOURCES         = NO
 183.568 -
 183.569 -# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct 
 183.570 -# doxygen to hide any special comment blocks from generated source code 
 183.571 -# fragments. Normal C and C++ comments will always remain visible.
 183.572 -
 183.573 -STRIP_CODE_COMMENTS    = YES
 183.574 -
 183.575 -# If the REFERENCED_BY_RELATION tag is set to YES (the default) 
 183.576 -# then for each documented function all documented 
 183.577 -# functions referencing it will be listed.
 183.578 -
 183.579 -REFERENCED_BY_RELATION = YES
 183.580 -
 183.581 -# If the REFERENCES_RELATION tag is set to YES (the default) 
 183.582 -# then for each documented function all documented entities 
 183.583 -# called/used by that function will be listed.
 183.584 -
 183.585 -REFERENCES_RELATION    = YES
 183.586 -
 183.587 -# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
 183.588 -# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
 183.589 -# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
 183.590 -# link to the source code.  Otherwise they will link to the documentstion.
 183.591 -
 183.592 -REFERENCES_LINK_SOURCE = YES
 183.593 -
 183.594 -# If the USE_HTAGS tag is set to YES then the references to source code 
 183.595 -# will point to the HTML generated by the htags(1) tool instead of doxygen 
 183.596 -# built-in source browser. The htags tool is part of GNU's global source 
 183.597 -# tagging system (see http://www.gnu.org/software/global/global.html). You 
 183.598 -# will need version 4.8.6 or higher.
 183.599 -
 183.600 -USE_HTAGS              = NO
 183.601 -
 183.602 -# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen 
 183.603 -# will generate a verbatim copy of the header file for each class for 
 183.604 -# which an include is specified. Set to NO to disable this.
 183.605 -
 183.606 -VERBATIM_HEADERS       = YES
 183.607 -
 183.608 -#---------------------------------------------------------------------------
 183.609 -# configuration options related to the alphabetical class index
 183.610 -#---------------------------------------------------------------------------
 183.611 -
 183.612 -# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index 
 183.613 -# of all compounds will be generated. Enable this if the project 
 183.614 -# contains a lot of classes, structs, unions or interfaces.
 183.615 -
 183.616 -ALPHABETICAL_INDEX     = NO
 183.617 -
 183.618 -# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then 
 183.619 -# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns 
 183.620 -# in which this list will be split (can be a number in the range [1..20])
 183.621 -
 183.622 -COLS_IN_ALPHA_INDEX    = 5
 183.623 -
 183.624 -# In case all classes in a project start with a common prefix, all 
 183.625 -# classes will be put under the same header in the alphabetical index. 
 183.626 -# The IGNORE_PREFIX tag can be used to specify one or more prefixes that 
 183.627 -# should be ignored while generating the index headers.
 183.628 -
 183.629 -IGNORE_PREFIX          = 
 183.630 -
 183.631 -#---------------------------------------------------------------------------
 183.632 -# configuration options related to the HTML output
 183.633 -#---------------------------------------------------------------------------
 183.634 -
 183.635 -# If the GENERATE_HTML tag is set to YES (the default) Doxygen will 
 183.636 -# generate HTML output.
 183.637 -
 183.638 -GENERATE_HTML          = YES
 183.639 -
 183.640 -# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. 
 183.641 -# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
 183.642 -# put in front of it. If left blank `html' will be used as the default path.
 183.643 -
 183.644 -HTML_OUTPUT            = html
 183.645 -
 183.646 -# The HTML_FILE_EXTENSION tag can be used to specify the file extension for 
 183.647 -# each generated HTML page (for example: .htm,.php,.asp). If it is left blank 
 183.648 -# doxygen will generate files with .html extension.
 183.649 -
 183.650 -HTML_FILE_EXTENSION    = .html
 183.651 -
 183.652 -# The HTML_HEADER tag can be used to specify a personal HTML header for 
 183.653 -# each generated HTML page. If it is left blank doxygen will generate a 
 183.654 -# standard header.
 183.655 -
 183.656 -HTML_HEADER            = 
 183.657 -
 183.658 -# The HTML_FOOTER tag can be used to specify a personal HTML footer for 
 183.659 -# each generated HTML page. If it is left blank doxygen will generate a 
 183.660 -# standard footer.
 183.661 -
 183.662 -HTML_FOOTER            = 
 183.663 -
 183.664 -# The HTML_STYLESHEET tag can be used to specify a user-defined cascading 
 183.665 -# style sheet that is used by each HTML page. It can be used to 
 183.666 -# fine-tune the look of the HTML output. If the tag is left blank doxygen 
 183.667 -# will generate a default style sheet. Note that doxygen will try to copy 
 183.668 -# the style sheet file to the HTML output directory, so don't put your own 
 183.669 -# stylesheet in the HTML output directory as well, or it will be erased!
 183.670 -
 183.671 -HTML_STYLESHEET        = 
 183.672 -
 183.673 -# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, 
 183.674 -# files or namespaces will be aligned in HTML using tables. If set to 
 183.675 -# NO a bullet list will be used.
 183.676 -
 183.677 -HTML_ALIGN_MEMBERS     = YES
 183.678 -
 183.679 -# If the GENERATE_HTMLHELP tag is set to YES, additional index files 
 183.680 -# will be generated that can be used as input for tools like the 
 183.681 -# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) 
 183.682 -# of the generated HTML documentation.
 183.683 -
 183.684 -GENERATE_HTMLHELP      = NO
 183.685 -
 183.686 -# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can 
 183.687 -# be used to specify the file name of the resulting .chm file. You 
 183.688 -# can add a path in front of the file if the result should not be 
 183.689 -# written to the html output directory.
 183.690 -
 183.691 -CHM_FILE               = 
 183.692 -
 183.693 -# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can 
 183.694 -# be used to specify the location (absolute path including file name) of 
 183.695 -# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run 
 183.696 -# the HTML help compiler on the generated index.hhp.
 183.697 -
 183.698 -HHC_LOCATION           = 
 183.699 -
 183.700 -# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag 
 183.701 -# controls if a separate .chi index file is generated (YES) or that 
 183.702 -# it should be included in the master .chm file (NO).
 183.703 -
 183.704 -GENERATE_CHI           = NO
 183.705 -
 183.706 -# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag 
 183.707 -# controls whether a binary table of contents is generated (YES) or a 
 183.708 -# normal table of contents (NO) in the .chm file.
 183.709 -
 183.710 -BINARY_TOC             = NO
 183.711 -
 183.712 -# The TOC_EXPAND flag can be set to YES to add extra items for group members 
 183.713 -# to the contents of the HTML help documentation and to the tree view.
 183.714 -
 183.715 -TOC_EXPAND             = NO
 183.716 -
 183.717 -# The DISABLE_INDEX tag can be used to turn on/off the condensed index at 
 183.718 -# top of each HTML page. The value NO (the default) enables the index and 
 183.719 -# the value YES disables it.
 183.720 -
 183.721 -DISABLE_INDEX          = NO
 183.722 -
 183.723 -# This tag can be used to set the number of enum values (range [1..20]) 
 183.724 -# that doxygen will group on one line in the generated HTML documentation.
 183.725 -
 183.726 -ENUM_VALUES_PER_LINE   = 4
 183.727 -
 183.728 -# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
 183.729 -# generated containing a tree-like index structure (just like the one that 
 183.730 -# is generated for HTML Help). For this to work a browser that supports 
 183.731 -# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, 
 183.732 -# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are 
 183.733 -# probably better off using the HTML help feature.
 183.734 -
 183.735 -GENERATE_TREEVIEW      = NO
 183.736 -
 183.737 -# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be 
 183.738 -# used to set the initial width (in pixels) of the frame in which the tree 
 183.739 -# is shown.
 183.740 -
 183.741 -TREEVIEW_WIDTH         = 250
 183.742 -
 183.743 -#---------------------------------------------------------------------------
 183.744 -# configuration options related to the LaTeX output
 183.745 -#---------------------------------------------------------------------------
 183.746 -
 183.747 -# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will 
 183.748 -# generate Latex output.
 183.749 -
 183.750 -GENERATE_LATEX         = YES
 183.751 -
 183.752 -# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. 
 183.753 -# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
 183.754 -# put in front of it. If left blank `latex' will be used as the default path.
 183.755 -
 183.756 -LATEX_OUTPUT           = latex
 183.757 -
 183.758 -# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be 
 183.759 -# invoked. If left blank `latex' will be used as the default command name.
 183.760 -
 183.761 -LATEX_CMD_NAME         = latex
 183.762 -
 183.763 -# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to 
 183.764 -# generate index for LaTeX. If left blank `makeindex' will be used as the 
 183.765 -# default command name.
 183.766 -
 183.767 -MAKEINDEX_CMD_NAME     = makeindex
 183.768 -
 183.769 -# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact 
 183.770 -# LaTeX documents. This may be useful for small projects and may help to 
 183.771 -# save some trees in general.
 183.772 -
 183.773 -COMPACT_LATEX          = NO
 183.774 -
 183.775 -# The PAPER_TYPE tag can be used to set the paper type that is used 
 183.776 -# by the printer. Possible values are: a4, a4wide, letter, legal and 
 183.777 -# executive. If left blank a4wide will be used.
 183.778 -
 183.779 -PAPER_TYPE             = a4wide
 183.780 -
 183.781 -# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX 
 183.782 -# packages that should be included in the LaTeX output.
 183.783 -
 183.784 -EXTRA_PACKAGES         = 
 183.785 -
 183.786 -# The LATEX_HEADER tag can be used to specify a personal LaTeX header for 
 183.787 -# the generated latex document. The header should contain everything until 
 183.788 -# the first chapter. If it is left blank doxygen will generate a 
 183.789 -# standard header. Notice: only use this tag if you know what you are doing!
 183.790 -
 183.791 -LATEX_HEADER           = 
 183.792 -
 183.793 -# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated 
 183.794 -# is prepared for conversion to pdf (using ps2pdf). The pdf file will 
 183.795 -# contain links (just like the HTML output) instead of page references 
 183.796 -# This makes the output suitable for online browsing using a pdf viewer.
 183.797 -
 183.798 -PDF_HYPERLINKS         = NO
 183.799 -
 183.800 -# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of 
 183.801 -# plain latex in the generated Makefile. Set this option to YES to get a 
 183.802 -# higher quality PDF documentation.
 183.803 -
 183.804 -USE_PDFLATEX           = NO
 183.805 -
 183.806 -# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. 
 183.807 -# command to the generated LaTeX files. This will instruct LaTeX to keep 
 183.808 -# running if errors occur, instead of asking the user for help. 
 183.809 -# This option is also used when generating formulas in HTML.
 183.810 -
 183.811 -LATEX_BATCHMODE        = NO
 183.812 -
 183.813 -# If LATEX_HIDE_INDICES is set to YES then doxygen will not 
 183.814 -# include the index chapters (such as File Index, Compound Index, etc.) 
 183.815 -# in the output.
 183.816 -
 183.817 -LATEX_HIDE_INDICES     = NO
 183.818 -
 183.819 -#---------------------------------------------------------------------------
 183.820 -# configuration options related to the RTF output
 183.821 -#---------------------------------------------------------------------------
 183.822 -
 183.823 -# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output 
 183.824 -# The RTF output is optimized for Word 97 and may not look very pretty with 
 183.825 -# other RTF readers or editors.
 183.826 -
 183.827 -GENERATE_RTF           = NO
 183.828 -
 183.829 -# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. 
 183.830 -# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
 183.831 -# put in front of it. If left blank `rtf' will be used as the default path.
 183.832 -
 183.833 -RTF_OUTPUT             = rtf
 183.834 -
 183.835 -# If the COMPACT_RTF tag is set to YES Doxygen generates more compact 
 183.836 -# RTF documents. This may be useful for small projects and may help to 
 183.837 -# save some trees in general.
 183.838 -
 183.839 -COMPACT_RTF            = NO
 183.840 -
 183.841 -# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated 
 183.842 -# will contain hyperlink fields. The RTF file will 
 183.843 -# contain links (just like the HTML output) instead of page references. 
 183.844 -# This makes the output suitable for online browsing using WORD or other 
 183.845 -# programs which support those fields. 
 183.846 -# Note: wordpad (write) and others do not support links.
 183.847 -
 183.848 -RTF_HYPERLINKS         = NO
 183.849 -
 183.850 -# Load stylesheet definitions from file. Syntax is similar to doxygen's 
 183.851 -# config file, i.e. a series of assignments. You only have to provide 
 183.852 -# replacements, missing definitions are set to their default value.
 183.853 -
 183.854 -RTF_STYLESHEET_FILE    = 
 183.855 -
 183.856 -# Set optional variables used in the generation of an rtf document. 
 183.857 -# Syntax is similar to doxygen's config file.
 183.858 -
 183.859 -RTF_EXTENSIONS_FILE    = 
 183.860 -
 183.861 -#---------------------------------------------------------------------------
 183.862 -# configuration options related to the man page output
 183.863 -#---------------------------------------------------------------------------
 183.864 -
 183.865 -# If the GENERATE_MAN tag is set to YES (the default) Doxygen will 
 183.866 -# generate man pages
 183.867 -
 183.868 -GENERATE_MAN           = NO
 183.869 -
 183.870 -# The MAN_OUTPUT tag is used to specify where the man pages will be put. 
 183.871 -# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
 183.872 -# put in front of it. If left blank `man' will be used as the default path.
 183.873 -
 183.874 -MAN_OUTPUT             = man
 183.875 -
 183.876 -# The MAN_EXTENSION tag determines the extension that is added to 
 183.877 -# the generated man pages (default is the subroutine's section .3)
 183.878 -
 183.879 -MAN_EXTENSION          = .3
 183.880 -
 183.881 -# If the MAN_LINKS tag is set to YES and Doxygen generates man output, 
 183.882 -# then it will generate one additional man file for each entity 
 183.883 -# documented in the real man page(s). These additional files 
 183.884 -# only source the real man page, but without them the man command 
 183.885 -# would be unable to find the correct page. The default is NO.
 183.886 -
 183.887 -MAN_LINKS              = NO
 183.888 -
 183.889 -#---------------------------------------------------------------------------
 183.890 -# configuration options related to the XML output
 183.891 -#---------------------------------------------------------------------------
 183.892 -
 183.893 -# If the GENERATE_XML tag is set to YES Doxygen will 
 183.894 -# generate an XML file that captures the structure of 
 183.895 -# the code including all documentation.
 183.896 -
 183.897 -GENERATE_XML           = NO
 183.898 -
 183.899 -# The XML_OUTPUT tag is used to specify where the XML pages will be put. 
 183.900 -# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
 183.901 -# put in front of it. If left blank `xml' will be used as the default path.
 183.902 -
 183.903 -XML_OUTPUT             = xml
 183.904 -
 183.905 -# The XML_SCHEMA tag can be used to specify an XML schema, 
 183.906 -# which can be used by a validating XML parser to check the 
 183.907 -# syntax of the XML files.
 183.908 -
 183.909 -XML_SCHEMA             = 
 183.910 -
 183.911 -# The XML_DTD tag can be used to specify an XML DTD, 
 183.912 -# which can be used by a validating XML parser to check the 
 183.913 -# syntax of the XML files.
 183.914 -
 183.915 -XML_DTD                = 
 183.916 -
 183.917 -# If the XML_PROGRAMLISTING tag is set to YES Doxygen will 
 183.918 -# dump the program listings (including syntax highlighting 
 183.919 -# and cross-referencing information) to the XML output. Note that 
 183.920 -# enabling this will significantly increase the size of the XML output.
 183.921 -
 183.922 -XML_PROGRAMLISTING     = YES
 183.923 -
 183.924 -#---------------------------------------------------------------------------
 183.925 -# configuration options for the AutoGen Definitions output
 183.926 -#---------------------------------------------------------------------------
 183.927 -
 183.928 -# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will 
 183.929 -# generate an AutoGen Definitions (see autogen.sf.net) file 
 183.930 -# that captures the structure of the code including all 
 183.931 -# documentation. Note that this feature is still experimental 
 183.932 -# and incomplete at the moment.
 183.933 -
 183.934 -GENERATE_AUTOGEN_DEF   = NO
 183.935 -
 183.936 -#---------------------------------------------------------------------------
 183.937 -# configuration options related to the Perl module output
 183.938 -#---------------------------------------------------------------------------
 183.939 -
 183.940 -# If the GENERATE_PERLMOD tag is set to YES Doxygen will 
 183.941 -# generate a Perl module file that captures the structure of 
 183.942 -# the code including all documentation. Note that this 
 183.943 -# feature is still experimental and incomplete at the 
 183.944 -# moment.
 183.945 -
 183.946 -GENERATE_PERLMOD       = NO
 183.947 -
 183.948 -# If the PERLMOD_LATEX tag is set to YES Doxygen will generate 
 183.949 -# the necessary Makefile rules, Perl scripts and LaTeX code to be able 
 183.950 -# to generate PDF and DVI output from the Perl module output.
 183.951 -
 183.952 -PERLMOD_LATEX          = NO
 183.953 -
 183.954 -# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be 
 183.955 -# nicely formatted so it can be parsed by a human reader.  This is useful 
 183.956 -# if you want to understand what is going on.  On the other hand, if this 
 183.957 -# tag is set to NO the size of the Perl module output will be much smaller 
 183.958 -# and Perl will parse it just the same.
 183.959 -
 183.960 -PERLMOD_PRETTY         = YES
 183.961 -
 183.962 -# The names of the make variables in the generated doxyrules.make file 
 183.963 -# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. 
 183.964 -# This is useful so different doxyrules.make files included by the same 
 183.965 -# Makefile don't overwrite each other's variables.
 183.966 -
 183.967 -PERLMOD_MAKEVAR_PREFIX = 
 183.968 -
 183.969 -#---------------------------------------------------------------------------
 183.970 -# Configuration options related to the preprocessor   
 183.971 -#---------------------------------------------------------------------------
 183.972 -
 183.973 -# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will 
 183.974 -# evaluate all C-preprocessor directives found in the sources and include 
 183.975 -# files.
 183.976 -
 183.977 -ENABLE_PREPROCESSING   = YES
 183.978 -
 183.979 -# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro 
 183.980 -# names in the source code. If set to NO (the default) only conditional 
 183.981 -# compilation will be performed. Macro expansion can be done in a controlled 
 183.982 -# way by setting EXPAND_ONLY_PREDEF to YES.
 183.983 -
 183.984 -MACRO_EXPANSION        = NO
 183.985 -
 183.986 -# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES 
 183.987 -# then the macro expansion is limited to the macros specified with the 
 183.988 -# PREDEFINED and EXPAND_AS_DEFINED tags.
 183.989 -
 183.990 -EXPAND_ONLY_PREDEF     = NO
 183.991 -
 183.992 -# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files 
 183.993 -# in the INCLUDE_PATH (see below) will be search if a #include is found.
 183.994 -
 183.995 -SEARCH_INCLUDES        = YES
 183.996 -
 183.997 -# The INCLUDE_PATH tag can be used to specify one or more directories that 
 183.998 -# contain include files that are not input files but should be processed by 
 183.999 -# the preprocessor.
183.1000 -
183.1001 -INCLUDE_PATH           = 
183.1002 -
183.1003 -# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard 
183.1004 -# patterns (like *.h and *.hpp) to filter out the header-files in the 
183.1005 -# directories. If left blank, the patterns specified with FILE_PATTERNS will 
183.1006 -# be used.
183.1007 -
183.1008 -INCLUDE_FILE_PATTERNS  = 
183.1009 -
183.1010 -# The PREDEFINED tag can be used to specify one or more macro names that 
183.1011 -# are defined before the preprocessor is started (similar to the -D option of 
183.1012 -# gcc). The argument of the tag is a list of macros of the form: name 
183.1013 -# or name=definition (no spaces). If the definition and the = are 
183.1014 -# omitted =1 is assumed. To prevent a macro definition from being 
183.1015 -# undefined via #undef or recursively expanded use the := operator 
183.1016 -# instead of the = operator.
183.1017 -
183.1018 -PREDEFINED             = 
183.1019 -
183.1020 -# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then 
183.1021 -# this tag can be used to specify a list of macro names that should be expanded. 
183.1022 -# The macro definition that is found in the sources will be used. 
183.1023 -# Use the PREDEFINED tag if you want to use a different macro definition.
183.1024 -
183.1025 -EXPAND_AS_DEFINED      = 
183.1026 -
183.1027 -# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then 
183.1028 -# doxygen's preprocessor will remove all function-like macros that are alone 
183.1029 -# on a line, have an all uppercase name, and do not end with a semicolon. Such 
183.1030 -# function macros are typically used for boiler-plate code, and will confuse 
183.1031 -# the parser if not removed.
183.1032 -
183.1033 -SKIP_FUNCTION_MACROS   = YES
183.1034 -
183.1035 -#---------------------------------------------------------------------------
183.1036 -# Configuration::additions related to external references   
183.1037 -#---------------------------------------------------------------------------
183.1038 -
183.1039 -# The TAGFILES option can be used to specify one or more tagfiles. 
183.1040 -# Optionally an initial location of the external documentation 
183.1041 -# can be added for each tagfile. The format of a tag file without 
183.1042 -# this location is as follows: 
183.1043 -#   TAGFILES = file1 file2 ... 
183.1044 -# Adding location for the tag files is done as follows: 
183.1045 -#   TAGFILES = file1=loc1 "file2 = loc2" ... 
183.1046 -# where "loc1" and "loc2" can be relative or absolute paths or 
183.1047 -# URLs. If a location is present for each tag, the installdox tool 
183.1048 -# does not have to be run to correct the links.
183.1049 -# Note that each tag file must have a unique name
183.1050 -# (where the name does NOT include the path)
183.1051 -# If a tag file is not located in the directory in which doxygen 
183.1052 -# is run, you must also specify the path to the tagfile here.
183.1053 -
183.1054 -TAGFILES               = 
183.1055 -
183.1056 -# When a file name is specified after GENERATE_TAGFILE, doxygen will create 
183.1057 -# a tag file that is based on the input files it reads.
183.1058 -
183.1059 -GENERATE_TAGFILE       = 
183.1060 -
183.1061 -# If the ALLEXTERNALS tag is set to YES all external classes will be listed 
183.1062 -# in the class index. If set to NO only the inherited external classes 
183.1063 -# will be listed.
183.1064 -
183.1065 -ALLEXTERNALS           = NO
183.1066 -
183.1067 -# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed 
183.1068 -# in the modules index. If set to NO, only the current project's groups will 
183.1069 -# be listed.
183.1070 -
183.1071 -EXTERNAL_GROUPS        = YES
183.1072 -
183.1073 -# The PERL_PATH should be the absolute path and name of the perl script 
183.1074 -# interpreter (i.e. the result of `which perl').
183.1075 -
183.1076 -PERL_PATH              = /usr/bin/perl
183.1077 -
183.1078 -#---------------------------------------------------------------------------
183.1079 -# Configuration options related to the dot tool   
183.1080 -#---------------------------------------------------------------------------
183.1081 -
183.1082 -# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will 
183.1083 -# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base 
183.1084 -# or super classes. Setting the tag to NO turns the diagrams off. Note that 
183.1085 -# this option is superseded by the HAVE_DOT option below. This is only a 
183.1086 -# fallback. It is recommended to install and use dot, since it yields more 
183.1087 -# powerful graphs.
183.1088 -
183.1089 -CLASS_DIAGRAMS         = YES
183.1090 -
183.1091 -# If set to YES, the inheritance and collaboration graphs will hide 
183.1092 -# inheritance and usage relations if the target is undocumented 
183.1093 -# or is not a class.
183.1094 -
183.1095 -HIDE_UNDOC_RELATIONS   = YES
183.1096 -
183.1097 -# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is 
183.1098 -# available from the path. This tool is part of Graphviz, a graph visualization 
183.1099 -# toolkit from AT&T and Lucent Bell Labs. The other options in this section 
183.1100 -# have no effect if this option is set to NO (the default)
183.1101 -
183.1102 -HAVE_DOT               = YES
183.1103 -
183.1104 -# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen 
183.1105 -# will generate a graph for each documented class showing the direct and 
183.1106 -# indirect inheritance relations. Setting this tag to YES will force the 
183.1107 -# the CLASS_DIAGRAMS tag to NO.
183.1108 -
183.1109 -CLASS_GRAPH            = YES
183.1110 -
183.1111 -# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen 
183.1112 -# will generate a graph for each documented class showing the direct and 
183.1113 -# indirect implementation dependencies (inheritance, containment, and 
183.1114 -# class references variables) of the class with other documented classes.
183.1115 -
183.1116 -COLLABORATION_GRAPH    = YES
183.1117 -
183.1118 -# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen 
183.1119 -# will generate a graph for groups, showing the direct groups dependencies
183.1120 -
183.1121 -GROUP_GRAPHS           = YES
183.1122 -
183.1123 -# If the UML_LOOK tag is set to YES doxygen will generate inheritance and 
183.1124 -# collaboration diagrams in a style similar to the OMG's Unified Modeling 
183.1125 -# Language.
183.1126 -
183.1127 -UML_LOOK               = NO
183.1128 -
183.1129 -# If set to YES, the inheritance and collaboration graphs will show the 
183.1130 -# relations between templates and their instances.
183.1131 -
183.1132 -TEMPLATE_RELATIONS     = NO
183.1133 -
183.1134 -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT 
183.1135 -# tags are set to YES then doxygen will generate a graph for each documented 
183.1136 -# file showing the direct and indirect include dependencies of the file with 
183.1137 -# other documented files.
183.1138 -
183.1139 -INCLUDE_GRAPH          = YES
183.1140 -
183.1141 -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and 
183.1142 -# HAVE_DOT tags are set to YES then doxygen will generate a graph for each 
183.1143 -# documented header file showing the documented files that directly or 
183.1144 -# indirectly include this file.
183.1145 -
183.1146 -INCLUDED_BY_GRAPH      = YES
183.1147 -
183.1148 -# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will 
183.1149 -# generate a call dependency graph for every global function or class method. 
183.1150 -# Note that enabling this option will significantly increase the time of a run. 
183.1151 -# So in most cases it will be better to enable call graphs for selected 
183.1152 -# functions only using the \callgraph command.
183.1153 -
183.1154 -CALL_GRAPH             = YES
183.1155 -
183.1156 -# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then doxygen will 
183.1157 -# generate a caller dependency graph for every global function or class method. 
183.1158 -# Note that enabling this option will significantly increase the time of a run. 
183.1159 -# So in most cases it will be better to enable caller graphs for selected 
183.1160 -# functions only using the \callergraph command.
183.1161 -
183.1162 -CALLER_GRAPH           = YES
183.1163 -
183.1164 -# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen 
183.1165 -# will graphical hierarchy of all classes instead of a textual one.
183.1166 -
183.1167 -GRAPHICAL_HIERARCHY    = YES
183.1168 -
183.1169 -# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES 
183.1170 -# then doxygen will show the dependencies a directory has on other directories 
183.1171 -# in a graphical way. The dependency relations are determined by the #include
183.1172 -# relations between the files in the directories.
183.1173 -
183.1174 -DIRECTORY_GRAPH        = YES
183.1175 -
183.1176 -# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images 
183.1177 -# generated by dot. Possible values are png, jpg, or gif
183.1178 -# If left blank png will be used.
183.1179 -
183.1180 -DOT_IMAGE_FORMAT       = png
183.1181 -
183.1182 -# The tag DOT_PATH can be used to specify the path where the dot tool can be 
183.1183 -# found. If left blank, it is assumed the dot tool can be found in the path.
183.1184 -
183.1185 -DOT_PATH               = 
183.1186 -
183.1187 -# The DOTFILE_DIRS tag can be used to specify one or more directories that 
183.1188 -# contain dot files that are included in the documentation (see the 
183.1189 -# \dotfile command).
183.1190 -
183.1191 -DOTFILE_DIRS           = 
183.1192 -
183.1193 -# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width 
183.1194 -# (in pixels) of the graphs generated by dot. If a graph becomes larger than 
183.1195 -# this value, doxygen will try to truncate the graph, so that it fits within 
183.1196 -# the specified constraint. Beware that most browsers cannot cope with very 
183.1197 -# large images.
183.1198 -
183.1199 -MAX_DOT_GRAPH_WIDTH    = 1024
183.1200 -
183.1201 -# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height 
183.1202 -# (in pixels) of the graphs generated by dot. If a graph becomes larger than 
183.1203 -# this value, doxygen will try to truncate the graph, so that it fits within 
183.1204 -# the specified constraint. Beware that most browsers cannot cope with very 
183.1205 -# large images.
183.1206 -
183.1207 -MAX_DOT_GRAPH_HEIGHT   = 1024
183.1208 -
183.1209 -# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the 
183.1210 -# graphs generated by dot. A depth value of 3 means that only nodes reachable 
183.1211 -# from the root by following a path via at most 3 edges will be shown. Nodes 
183.1212 -# that lay further from the root node will be omitted. Note that setting this 
183.1213 -# option to 1 or 2 may greatly reduce the computation time needed for large 
183.1214 -# code bases. Also note that a graph may be further truncated if the graph's 
183.1215 -# image dimensions are not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH 
183.1216 -# and MAX_DOT_GRAPH_HEIGHT). If 0 is used for the depth value (the default), 
183.1217 -# the graph is not depth-constrained.
183.1218 -
183.1219 -MAX_DOT_GRAPH_DEPTH    = 0
183.1220 -
183.1221 -# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent 
183.1222 -# background. This is disabled by default, which results in a white background. 
183.1223 -# Warning: Depending on the platform used, enabling this option may lead to 
183.1224 -# badly anti-aliased labels on the edges of a graph (i.e. they become hard to 
183.1225 -# read).
183.1226 -
183.1227 -DOT_TRANSPARENT        = NO
183.1228 -
183.1229 -# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output 
183.1230 -# files in one run (i.e. multiple -o and -T options on the command line). This 
183.1231 -# makes dot run faster, but since only newer versions of dot (>1.8.10) 
183.1232 -# support this, this feature is disabled by default.
183.1233 -
183.1234 -DOT_MULTI_TARGETS      = NO
183.1235 -
183.1236 -# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will 
183.1237 -# generate a legend page explaining the meaning of the various boxes and 
183.1238 -# arrows in the dot generated graphs.
183.1239 -
183.1240 -GENERATE_LEGEND        = YES
183.1241 -
183.1242 -# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will 
183.1243 -# remove the intermediate dot files that are used to generate 
183.1244 -# the various graphs.
183.1245 -
183.1246 -DOT_CLEANUP            = YES
183.1247 -
183.1248 -#---------------------------------------------------------------------------
183.1249 -# Configuration::additions related to the search engine   
183.1250 -#---------------------------------------------------------------------------
183.1251 -
183.1252 -# The SEARCHENGINE tag specifies whether or not a search engine should be 
183.1253 -# used. If set to NO the values of all tags below this one will be ignored.
183.1254 -
183.1255 -SEARCHENGINE           = NO
   184.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   184.2 +++ b/x86/Win32/DTNInterface.cpp	Thu Jun 26 17:39:40 2008 +0100
   184.3 @@ -0,0 +1,293 @@
   184.4 +#include <QtCore>
   184.5 +#include <QtNetwork>
   184.6 +#include <readFile.h>
   184.7 +#include <bundleManager.h>
   184.8 +#include <DTNInterface.h>
   184.9 +#include <tcpClient.h>
  184.10 +
  184.11 +#define DTNTIMER 500
  184.12 +
  184.13 +
  184.14 +#define INIT 0
  184.15 +#define DTNLIST 1
  184.16 +#define IDLE 2
  184.17 +#define PARSE 3
  184.18 +
  184.19 +DTNInterface::DTNInterface(BundleManager* bundleMng, NodeManager* nodeMng)
  184.20 +{
  184.21 +	ReadFile conf;
  184.22 +	seq=0;
  184.23 +	hostPort=conf.getDTNHostPort();
  184.24 +	hostAddress=conf.getDTNHostName();
  184.25 +	ourName=conf.getNodeName();
  184.26 +	ourId=conf.getNodeId();
  184.27 +	bundleManager = bundleMng;
  184.28 +	nodeManager = nodeMng;
  184.29 +	//Create and connect Hello Timer
  184.30 +	timer = new QTimer(this);
  184.31 +    connect(timer, SIGNAL(timeout()), this, SLOT(getBundles()));
  184.32 +    timer->start(DTNTIMER);
  184.33 +	client = new TcpClient(this);
  184.34 +    sender = new TcpClient(this);
  184.35 +	connect(client, SIGNAL(newAnswer(QByteArray)), this, SLOT(getResponse(QByteArray)));
  184.36 +	client->addHost(hostAddress.toString(),hostPort);
  184.37 +	sender->addHost(hostAddress.toString(),hostPort);
  184.38 +	dtnState=INIT;
  184.39 +	bundlesToParse=0;
  184.40 +	parsedList.clear();
  184.41 +	bundleList.clear();
  184.42 +
  184.43 +}
  184.44 +
  184.45 +void DTNInterface::receiveBundle(Bundle bundle)
  184.46 +{
  184.47 +	QString command;
  184.48 +	if(bundle.data.size()>0)
  184.49 +	{
  184.50 +		command.append("bundle inject ");
  184.51 +		command.append(bundle.sourceString);
  184.52 +		command.append(" ");
  184.53 +		command.append(bundle.destinationString);
  184.54 +		command.append(" \"");
  184.55 +		for (int m = 0; m < bundle.data.size(); ++m)
  184.56 +		{
  184.57 +			QString ch;
  184.58 +			ch.append("\\x");
  184.59 +			ch.append(QString("%1").arg((unsigned char)bundle.data.at(m),0,16)  );
  184.60 +			command.append(ch);
  184.61 +		}	
  184.62 +		command.append("\"");
  184.63 +		sender->appendCommand(0,command);
  184.64 +		QFile file("inject.txt");
  184.65 +		if(file.open(QIODevice::WriteOnly))
  184.66 +		{
  184.67 +		    file.write(command.toAscii());
  184.68 +		    file.close();
  184.69 +		
  184.70 +		}
  184.71 +		
  184.72 +		emit sendLog("Adding bundle to DTN...");
  184.73 +	}
  184.74 +	else
  184.75 +		emit sendLog("Zero bundle not sent to DTN...");
  184.76 +
  184.77 +}
  184.78 +
  184.79 +
  184.80 +void DTNInterface::getBundles()
  184.81 +{
  184.82 +	if(dtnState==IDLE)
  184.83 +	{
  184.84 +		dtnState=INIT;
  184.85 +		client->appendCommand(0,(QString)"");
  184.86 +	}
  184.87 +}
  184.88 +
  184.89 +
  184.90 +void DTNInterface::getResponse(QByteArray response)
  184.91 +{
  184.92 +	QString log;
  184.93 +	switch(dtnState)
  184.94 +	{
  184.95 +		case INIT:log.append("INIT:");break;
  184.96 +		case DTNLIST:log.append("DTNLIST:");break;
  184.97 +		case IDLE:log.append("IDLE:");break;
  184.98 +		case PARSE:log.append("PARSE:");break;
  184.99 +	}
 184.100 +	int size=response.size();
 184.101 +	if(size<500)
 184.102 +		log.append(response);
 184.103 +	else
 184.104 +		log.append("Long response...");
 184.105 +	emit sendLog(log);
 184.106 +	QString temp;
 184.107 +	int pos;
 184.108 +	int pos2;
 184.109 +	int inTheList=-1;
 184.110 +	
 184.111 +
 184.112 + 	switch(dtnState)
 184.113 +	{
 184.114 +		case INIT:	bundleIndex=0;
 184.115 +					bundleList.clear();
 184.116 +					client->appendCommand(0,(QString)"bundle list");
 184.117 +					dtnState=DTNLIST;
 184.118 +			break;
 184.119 +		case DTNLIST:	//we get the nuber of bundles
 184.120 +						pos = response.indexOf("(",0);
 184.121 +						pos2 = response.indexOf(")",0);
 184.122 +						temp=response.mid(pos+1,pos2-pos-1);
 184.123 +						bundlesToParse=temp.toInt(0,10);
 184.124 +						response.remove(0,pos2+6);
 184.125 +						emit sendLog("NR BUNDLES:");
 184.126 +	   				    emit sendLog(QString("%1").arg(bundlesToParse));
 184.127 +						while(bundlesToParse>0)
 184.128 +						{
 184.129 +							Bundle tempBundle;
 184.130 +							tempBundle.setContent(seq,0,0,"",0);
 184.131 +							seq++;
 184.132 +							pos2 = response.indexOf(":",0);
 184.133 +							temp=response.mid(0,pos2);
 184.134 +							//Parse bundle ID
 184.135 +							tempBundle.options=temp.toInt(0,10);
 184.136 +							response.remove(0,pos2+2);
 184.137 +							//Parse source name
 184.138 +							pos2= response.indexOf("->",0);
 184.139 +							temp=response.mid(0,pos2-1);
 184.140 +							tempBundle.sourceString=temp.toAscii();
 184.141 +							response.remove(0,pos2+3);
 184.142 +							//Parse destination name
 184.143 +							pos2= response.indexOf("length",0);
 184.144 +							temp=response.mid(0,pos2-1);
 184.145 +							tempBundle.destinationString=temp.toAscii();
 184.146 +							//Parse data length
 184.147 +							response.remove(0,pos2+7);
 184.148 +							pos2= response.indexOf("\r",0);
 184.149 +							temp=response.mid(0,pos2);
 184.150 +							tempBundle.dataLength=temp.toInt(0,10);
 184.151 +							//Removing last part
 184.152 +							pos2= response.indexOf("\r",0);
 184.153 +							response.remove(0,pos2+3);
 184.154 +							bundleList.append(tempBundle);
 184.155 +							bundlesToParse--;
 184.156 +						}
 184.157 +						//Checking for unused bundles in parsed list
 184.158 +						for (int m = 0; m < parsedList.size(); ++m)
 184.159 +						{
 184.160 +							inTheList=-1;
 184.161 +							for (int n = 0; n < bundleList.size(); ++n)
 184.162 +							{
 184.163 +								if(parsedList.at(m)==bundleList.at(n).options)
 184.164 +									inTheList=m;
 184.165 +							}
 184.166 +							if(inTheList==-1)
 184.167 +							{
 184.168 +								parsedList.removeAt(m);
 184.169 +								m=0;
 184.170 +							}
 184.171 +						}
 184.172 +						//Check if it is some of the bundles are already on the parsed list
 184.173 +						for (int m = 0; m < parsedList.size(); ++m)
 184.174 +						{
 184.175 +							inTheList=-1;
 184.176 +							for (int n = 0; n < bundleList.size(); ++n)
 184.177 +							{
 184.178 +								if(parsedList.at(m)==bundleList.at(n).options)
 184.179 +									inTheList=n;
 184.180 +							}
 184.181 +							if(inTheList!=-1)
 184.182 +								bundleList.removeAt(inTheList);
 184.183 +						}
 184.184 +						if(bundleList.size()>0)
 184.185 +						{
 184.186 +							QString command;
 184.187 +							command.append("bundle dump ");
 184.188 +							command.append(QString("%1").arg(bundleList.at(bundleIndex).options));
 184.189 +							client->appendCommand(0,command);
 184.190 +							dtnState=PARSE;
 184.191 +							
 184.192 +						}
 184.193 +						else
 184.194 +						{
 184.195 +							dtnState=IDLE;
 184.196 +						}
 184.197 +			break;
 184.198 +		case PARSE://	client->appendCommand(0,(QString)"bundle list");
 184.199 +
 184.200 +						temp=response.mid(0,20);
 184.201 +						pos=temp.indexOf("error",0);			
 184.202 +						//Parsing dumped data
 184.203 +						if(pos==-1)
 184.204 +						{
 184.205 +							QByteArray tempData;
 184.206 +							QString hexValue;
 184.207 +							char decValue;
 184.208 +							response.remove(0,8);
 184.209 +							pos=0;
 184.210 +							int resIndex=0;
 184.211 +							int responseSize=response.size();
 184.212 +							int dataLenght=bundleList.at(bundleIndex).dataLength;
 184.213 +							while((pos<(dataLenght))&&(resIndex<responseSize))
 184.214 +							{
 184.215 +								if(pos%10000==0)
 184.216 +								{
 184.217 +									int i=2;
 184.218 +								}
 184.219 +								
 184.220 +								//Decode hex value
 184.221 +								hexValue=response.mid(resIndex,2);
 184.222 +								decValue=hexValue.toShort(0,16);
 184.223 +								tempData.append(decValue);
 184.224 +								//Move to next value
 184.225 +								resIndex=resIndex+2;
 184.226 +								if(response.at(resIndex)==' ')
 184.227 +									resIndex++;
 184.228 +								if(response.at(resIndex)=='|')
 184.229 +									resIndex=resIndex+29;
 184.230 +								pos++;
 184.231 +								
 184.232 +								/*
 184.233 +								//Decode hex value
 184.234 +								QString hexValue;
 184.235 +								char decValue;
 184.236 +								hexValue=response.mid(0,2);
 184.237 +								decValue=hexValue.toShort(0,16);
 184.238 +								tempData.append(decValue);
 184.239 +								//Move to next value
 184.240 +
 184.241 +								response.remove(0,2);
 184.242 +								if(response.startsWith(' '))
 184.243 +									response.remove(0,1);
 184.244 +								if(response.startsWith('|'))
 184.245 +									response.remove(0,29);
 184.246 +								pos++;*/
 184.247 +							}
 184.248 +							Bundle tempBundle=bundleList.at(bundleIndex);
 184.249 +							tempBundle.data=tempData;
 184.250 +							//Removing from the list
 184.251 +							parsedList.append(tempBundle.options);
 184.252 +													
 184.253 +							//Checking if this is not our bundle
 184.254 +							QString temp;
 184.255 +							QString destination;
 184.256 +							temp=tempBundle.destinationString;
 184.257 +							pos=temp.indexOf("://",0);
 184.258 +							temp.remove(0,pos+3);
 184.259 +							pos=temp.indexOf("/",0);
 184.260 +							destination=temp.mid(0,pos);
 184.261 +							if(destination!=ourName)
 184.262 +							{
 184.263 +								emit sendLog("Bundle parsed...\r\n");
 184.264 +								tempBundle.options=0;
 184.265 +								tempBundle.sourceId=ourId;
 184.266 +								//tempBundle.sourceString.append("dtn://");
 184.267 +								//tempBundle.sourceString.append(ourName.toAscii());
 184.268 +								if(tempBundle.data.size()>0)
 184.269 +									emit sendBundle(tempBundle);
 184.270 +								bundleManager->updateBundlesDestinations(nodeManager);
 184.271 +							}
 184.272 +							else
 184.273 +							{
 184.274 +								emit sendLog("Bundle parsed but it is for us...\r\n");
 184.275 +							}
 184.276 +						
 184.277 +						}
 184.278 +						bundleIndex++;
 184.279 +						if(bundleIndex<bundleList.size())
 184.280 +						{
 184.281 +							QString command;
 184.282 +							command.append("bundle dump ");
 184.283 +							command.append(QString("%1").arg(bundleList.at(bundleIndex).options));
 184.284 +							client->appendCommand(0,command);
 184.285 +							dtnState=PARSE;
 184.286 +						}
 184.287 +						else
 184.288 +						{
 184.289 +							dtnState=IDLE;
 184.290 +						}
 184.291 +			break;
 184.292 +		case IDLE:		dtnState=IDLE;
 184.293 +			break;
 184.294 +	}
 184.295 +
 184.296 +}
 184.297 \ No newline at end of file
   185.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   185.2 +++ b/x86/Win32/DTNInterface.h	Thu Jun 26 17:39:40 2008 +0100
   185.3 @@ -0,0 +1,48 @@
   185.4 +#ifndef DTNINTERFACE_H
   185.5 +#define DTNINTERFACE_H
   185.6 +
   185.7 +//#include <iostream.h>
   185.8 +#include <QtCore>
   185.9 +#include <QtNetwork>
  185.10 +#include <connection.h>
  185.11 +#include <dataPacket.h>
  185.12 +#include <neighbourAwareness.h>
  185.13 +#include <bundleManager.h>
  185.14 +#include <nodeManager.h>
  185.15 +#include <tcpClient.h>
  185.16 +
  185.17 +class DTNInterface : public QObject 
  185.18 +{
  185.19 +
  185.20 +	Q_OBJECT
  185.21 +	public:
  185.22 +	int dtnState;
  185.23 +	int bundlesToParse;
  185.24 +	QList<Bundle> bundleList;
  185.25 +	QList<int> parsedList;
  185.26 +	DTNInterface(BundleManager*,NodeManager* nodeMng);
  185.27 +	BundleManager *bundleManager;
  185.28 +	NodeManager* nodeManager;
  185.29 +	int bundleIndex; 
  185.30 +	int hostPort;
  185.31 +	QHostAddress hostAddress;
  185.32 +	TcpClient *client;
  185.33 +	TcpClient *sender;
  185.34 +	QString ourName;
  185.35 +	int ourId;
  185.36 +	QTimer *timer;
  185.37 +	int seq;
  185.38 +			
  185.39 +	public slots:
  185.40 +	void getBundles();
  185.41 +	void getResponse(QByteArray response);
  185.42 +	void receiveBundle(Bundle);
  185.43 +	signals:
  185.44 +	void sendLog(QString);
  185.45 +	void sendBundle(Bundle);
  185.46 +
  185.47 +
  185.48 +
  185.49 +};
  185.50 +
  185.51 +#endif
   186.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   186.2 +++ b/x86/Win32/Makefile.Debug	Thu Jun 26 17:39:40 2008 +0100
   186.3 @@ -0,0 +1,569 @@
   186.4 +#############################################################################
   186.5 +# Makefile for building: prophet
   186.6 +# Generated by qmake (2.00a) (Qt 4.0.1) on: sre 9. avg 15:40:13 2006
   186.7 +# Project:  prophet.pro
   186.8 +# Template: app
   186.9 +#############################################################################
  186.10 +
  186.11 +####### Compiler, tools and options
  186.12 +
  186.13 +CC            = cl
  186.14 +CXX           = cl
  186.15 +LEX           = flex
  186.16 +YACC          = byacc
  186.17 +DEFINES       = -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT
  186.18 +CFLAGS        = -nologo -Zm200 -Zi -MDd -Zi -MDd -W3 $(DEFINES)
  186.19 +CXXFLAGS      = -nologo -Zm200 -Zi -MDd -Zi -MDd -GR -GX -W3 $(DEFINES)
  186.20 +LEXFLAGS      = 
  186.21 +YACCFLAGS     = -d
  186.22 +INCPATH       = -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc"
  186.23 +LINK          = link
  186.24 +LFLAGS        = /LIBPATH:"C:\Qt\4.0.1\lib" /NOLOGO /DEBUG /DEBUG /incremental:yes /SUBSYSTEM:windows
  186.25 +LIBS          = C:\Qt\4.0.1\lib\qtmaind.lib C:\Qt\4.0.1\lib\QtCored4.lib C:\Qt\4.0.1\lib\QtGuid4.lib C:\Qt\4.0.1\lib\QtNetworkd4.lib
  186.26 +QMAKE         = qmake
  186.27 +IDC           = C:\Qt\4.0.1\bin\idc.exe
  186.28 +IDL           = midl
  186.29 +ZIP           = zip -r -9
  186.30 +DEF_FILE      = 
  186.31 +RES_FILE      = 
  186.32 +COPY          = copy /y
  186.33 +COPY_FILE     = $(COPY)
  186.34 +COPY_DIR      = xcopy /s /q /y /i
  186.35 +DEL_FILE      = del
  186.36 +DEL_DIR       = rmdir
  186.37 +MOVE          = move
  186.38 +CHK_DIR_EXISTS= if not exist
  186.39 +MKDIR         = mkdir
  186.40 +INSTALL_FILE  = $(COPY_FILE)
  186.41 +INSTALL_DIR   = $(COPY_DIR)
  186.42 +
  186.43 +####### Output directory
  186.44 +
  186.45 +OBJECTS_DIR   = debug
  186.46 +
  186.47 +####### Files
  186.48 +
  186.49 +SOURCES       = main.cpp \
  186.50 +		bundle.cpp \
  186.51 +		msgWidget.cpp \
  186.52 +		bundleManager.cpp \
  186.53 +		debugWidget.cpp \
  186.54 +		node.cpp \
  186.55 +		nodeManager.cpp \
  186.56 +		connection.cpp \
  186.57 +		hello.cpp \
  186.58 +		tlv.cpp \
  186.59 +		dataPacket.cpp \
  186.60 +		messageFile.cpp \
  186.61 +		neighbourAwareness.cpp \
  186.62 +		readFile.cpp \
  186.63 +		DTNInterface.cpp \
  186.64 +		tcpClient.cpp debug\moc_neighbourAwareness.cpp \
  186.65 +		debug\moc_bundle.cpp \
  186.66 +		debug\moc_msgWidget.cpp \
  186.67 +		debug\moc_bundleManager.cpp \
  186.68 +		debug\moc_debugWidget.cpp \
  186.69 +		debug\moc_node.cpp \
  186.70 +		debug\moc_nodeManager.cpp \
  186.71 +		debug\moc_connection.cpp \
  186.72 +		debug\moc_tlv.cpp \
  186.73 +		debug\moc_messageFile.cpp \
  186.74 +		debug\moc_hello.cpp \
  186.75 +		debug\moc_dataPacket.cpp \
  186.76 +		debug\moc_readFile.cpp \
  186.77 +		debug\moc_DTNInterface.cpp \
  186.78 +		debug\moc_tcpClient.cpp
  186.79 +OBJECTS       = debug\main.obj \
  186.80 +		debug\bundle.obj \
  186.81 +		debug\msgWidget.obj \
  186.82 +		debug\bundleManager.obj \
  186.83 +		debug\debugWidget.obj \
  186.84 +		debug\node.obj \
  186.85 +		debug\nodeManager.obj \
  186.86 +		debug\connection.obj \
  186.87 +		debug\hello.obj \
  186.88 +		debug\tlv.obj \
  186.89 +		debug\dataPacket.obj \
  186.90 +		debug\messageFile.obj \
  186.91 +		debug\neighbourAwareness.obj \
  186.92 +		debug\readFile.obj \
  186.93 +		debug\DTNInterface.obj \
  186.94 +		debug\tcpClient.obj \
  186.95 +		debug\moc_neighbourAwareness.obj \
  186.96 +		debug\moc_bundle.obj \
  186.97 +		debug\moc_msgWidget.obj \
  186.98 +		debug\moc_bundleManager.obj \
  186.99 +		debug\moc_debugWidget.obj \
 186.100 +		debug\moc_node.obj \
 186.101 +		debug\moc_nodeManager.obj \
 186.102 +		debug\moc_connection.obj \
 186.103 +		debug\moc_tlv.obj \
 186.104 +		debug\moc_messageFile.obj \
 186.105 +		debug\moc_hello.obj \
 186.106 +		debug\moc_dataPacket.obj \
 186.107 +		debug\moc_readFile.obj \
 186.108 +		debug\moc_DTNInterface.obj \
 186.109 +		debug\moc_tcpClient.obj
 186.110 +DIST          = 
 186.111 +QMAKE_TARGET  = prophet
 186.112 +DESTDIR       = debug\ #avoid trailing-slash linebreak
 186.113 +TARGET        = debug\prophet.exe
 186.114 +
 186.115 +####### Implicit rules
 186.116 +
 186.117 +.SUFFIXES: .c .cpp .cc .cxx
 186.118 +
 186.119 +{.}.cpp{debug\}.obj::
 186.120 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 186.121 +	$<
 186.122 +<<
 186.123 +
 186.124 +{.}.cc{debug\}.obj::
 186.125 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 186.126 +	$<
 186.127 +<<
 186.128 +
 186.129 +{.}.cxx{debug\}.obj::
 186.130 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 186.131 +	$<
 186.132 +<<
 186.133 +
 186.134 +{.}.c{debug\}.obj::
 186.135 +	$(CC) -c $(CFLAGS) $(INCPATH) -Fodebug\ @<<
 186.136 +	$<
 186.137 +<<
 186.138 +
 186.139 +{.}.cpp{debug\}.obj::
 186.140 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 186.141 +	$<
 186.142 +<<
 186.143 +
 186.144 +{.}.cc{debug\}.obj::
 186.145 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 186.146 +	$<
 186.147 +<<
 186.148 +
 186.149 +{.}.cxx{debug\}.obj::
 186.150 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 186.151 +	$<
 186.152 +<<
 186.153 +
 186.154 +{.}.c{debug\}.obj::
 186.155 +	$(CC) -c $(CFLAGS) $(INCPATH) -Fodebug\ @<<
 186.156 +	$<
 186.157 +<<
 186.158 +
 186.159 +{.}.cpp{debug\}.obj::
 186.160 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 186.161 +	$<
 186.162 +<<
 186.163 +
 186.164 +{.}.cc{debug\}.obj::
 186.165 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 186.166 +	$<
 186.167 +<<
 186.168 +
 186.169 +{.}.cxx{debug\}.obj::
 186.170 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 186.171 +	$<
 186.172 +<<
 186.173 +
 186.174 +{.}.c{debug\}.obj::
 186.175 +	$(CC) -c $(CFLAGS) $(INCPATH) -Fodebug\ @<<
 186.176 +	$<
 186.177 +<<
 186.178 +
 186.179 +{debug}.cpp{debug\}.obj::
 186.180 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 186.181 +	$<
 186.182 +<<
 186.183 +
 186.184 +{debug}.cc{debug\}.obj::
 186.185 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 186.186 +	$<
 186.187 +<<
 186.188 +
 186.189 +{debug}.cxx{debug\}.obj::
 186.190 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 186.191 +	$<
 186.192 +<<
 186.193 +
 186.194 +{debug}.c{debug\}.obj::
 186.195 +	$(CC) -c $(CFLAGS) $(INCPATH) -Fodebug\ @<<
 186.196 +	$<
 186.197 +<<
 186.198 +
 186.199 +{debug}.cpp{debug\}.obj::
 186.200 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 186.201 +	$<
 186.202 +<<
 186.203 +
 186.204 +{debug}.cc{debug\}.obj::
 186.205 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 186.206 +	$<
 186.207 +<<
 186.208 +
 186.209 +{debug}.cxx{debug\}.obj::
 186.210 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Fodebug\ @<<
 186.211 +	$<
 186.212 +<<
 186.213 +
 186.214 +{debug}.c{debug\}.obj::
 186.215 +	$(CC) -c $(CFLAGS) $(INCPATH) -Fodebug\ @<<
 186.216 +	$<
 186.217 +<<
 186.218 +
 186.219 +####### Build rules
 186.220 +
 186.221 +first: all
 186.222 +all: Makefile.Debug $(TARGET)
 186.223 +
 186.224 +$(TARGET):  $(OBJECTS) 
 186.225 +	$(LINK) $(LFLAGS) /OUT:"$(TARGET)" @<< 
 186.226 +	  $(OBJECTS) $(LIBS)
 186.227 +<<
 186.228 +
 186.229 +
 186.230 +qmake:  FORCE
 186.231 +	@$(QMAKE) -win32 -o Makefile.Debug prophet.pro
 186.232 +
 186.233 +dist:
 186.234 +	$(ZIP) prophet.zip $(SOURCES) $(DIST) prophet.pro C:/Qt/4.0.1/mkspecs/qconfig.pri ..\..\Qt\4.0.1\mkspecs\features\qt_config.prf ..\..\Qt\4.0.1\mkspecs\features\exclusive_builds.prf ..\..\Qt\4.0.1\mkspecs\features\default_pre.prf ..\..\Qt\4.0.1\mkspecs\features\win32\default_pre.prf ..\..\Qt\4.0.1\mkspecs\features\debug.prf ..\..\Qt\4.0.1\mkspecs\features\debug_and_release.prf ..\..\Qt\4.0.1\mkspecs\features\default_post.prf ..\..\Qt\4.0.1\mkspecs\features\build_pass.prf ..\..\Qt\4.0.1\mkspecs\features\Debug.prf ..\..\Qt\4.0.1\mkspecs\features\qt.prf ..\..\Qt\4.0.1\mkspecs\features\win32\thread.prf ..\..\Qt\4.0.1\mkspecs\features\moc.prf ..\..\Qt\4.0.1\mkspecs\features\win32\rtti.prf ..\..\Qt\4.0.1\mkspecs\features\win32\exceptions.prf ..\..\Qt\4.0.1\mkspecs\features\win32\stl.prf ..\..\Qt\4.0.1\mkspecs\features\shared.prf C:/Qt/4.0.1/mkspecs/win32-msvc/features/incremental.prf ..\..\Qt\4.0.1\mkspecs\features\warn_on.prf ..\..\Qt\4.0.1\mkspecs\features\win32\windows.prf ..\..\Qt\4.0.1\mkspecs\features\resources.prf ..\..\Qt\4.0.1\mkspecs\features\uic.prf C:\Qt\4.0.1\lib\qtmaind.prl  HEADERS RESOURCES IMAGES SOURCES FORMS 
 186.235 +
 186.236 +clean: compiler_clean
 186.237 +	-$(DEL_FILE) debug\main.obj
 186.238 +	-$(DEL_FILE) debug\bundle.obj
 186.239 +	-$(DEL_FILE) debug\msgWidget.obj
 186.240 +	-$(DEL_FILE) debug\bundleManager.obj
 186.241 +	-$(DEL_FILE) debug\debugWidget.obj
 186.242 +	-$(DEL_FILE) debug\node.obj
 186.243 +	-$(DEL_FILE) debug\nodeManager.obj
 186.244 +	-$(DEL_FILE) debug\connection.obj
 186.245 +	-$(DEL_FILE) debug\hello.obj
 186.246 +	-$(DEL_FILE) debug\tlv.obj
 186.247 +	-$(DEL_FILE) debug\dataPacket.obj
 186.248 +	-$(DEL_FILE) debug\messageFile.obj
 186.249 +	-$(DEL_FILE) debug\neighbourAwareness.obj
 186.250 +	-$(DEL_FILE) debug\readFile.obj
 186.251 +	-$(DEL_FILE) debug\DTNInterface.obj
 186.252 +	-$(DEL_FILE) debug\tcpClient.obj
 186.253 +	-$(DEL_FILE) debug\moc_neighbourAwareness.obj
 186.254 +	-$(DEL_FILE) debug\moc_bundle.obj
 186.255 +	-$(DEL_FILE) debug\moc_msgWidget.obj
 186.256 +	-$(DEL_FILE) debug\moc_bundleManager.obj
 186.257 +	-$(DEL_FILE) debug\moc_debugWidget.obj
 186.258 +	-$(DEL_FILE) debug\moc_node.obj
 186.259 +	-$(DEL_FILE) debug\moc_nodeManager.obj
 186.260 +	-$(DEL_FILE) debug\moc_connection.obj
 186.261 +	-$(DEL_FILE) debug\moc_tlv.obj
 186.262 +	-$(DEL_FILE) debug\moc_messageFile.obj
 186.263 +	-$(DEL_FILE) debug\moc_hello.obj
 186.264 +	-$(DEL_FILE) debug\moc_dataPacket.obj
 186.265 +	-$(DEL_FILE) debug\moc_readFile.obj
 186.266 +	-$(DEL_FILE) debug\moc_DTNInterface.obj
 186.267 +	-$(DEL_FILE) debug\moc_tcpClient.obj
 186.268 +	-$(DEL_FILE) debug\prophet.pdb
 186.269 +	-$(DEL_FILE) debug\prophet.ilk
 186.270 +	-$(DEL_FILE) vc*.pdb
 186.271 +	-$(DEL_FILE) vc*.idb
 186.272 +
 186.273 +distclean: clean
 186.274 +	-$(DEL_FILE) "$(TARGET)"
 186.275 +	-$(DEL_FILE) Makefile.Debug
 186.276 +
 186.277 +mocclean: compiler_moc_header_clean compiler_moc_source_clean
 186.278 +
 186.279 +mocables: compiler_moc_header_make_all compiler_moc_source_make_all
 186.280 +
 186.281 +compiler_moc_header_make_all: debug\moc_neighbourAwareness.cpp debug\moc_bundle.cpp debug\moc_msgWidget.cpp debug\moc_bundleManager.cpp debug\moc_debugWidget.cpp debug\moc_node.cpp debug\moc_nodeManager.cpp debug\moc_connection.cpp debug\moc_tlv.cpp debug\moc_messageFile.cpp debug\moc_hello.cpp debug\moc_dataPacket.cpp debug\moc_readFile.cpp debug\moc_DTNInterface.cpp debug\moc_tcpClient.cpp
 186.282 +compiler_moc_header_clean:
 186.283 +	-$(DEL_FILE) debug\moc_neighbourAwareness.cpp
 186.284 +	-$(DEL_FILE) debug\moc_bundle.cpp
 186.285 +	-$(DEL_FILE) debug\moc_msgWidget.cpp
 186.286 +	-$(DEL_FILE) debug\moc_bundleManager.cpp
 186.287 +	-$(DEL_FILE) debug\moc_debugWidget.cpp
 186.288 +	-$(DEL_FILE) debug\moc_node.cpp
 186.289 +	-$(DEL_FILE) debug\moc_nodeManager.cpp
 186.290 +	-$(DEL_FILE) debug\moc_connection.cpp
 186.291 +	-$(DEL_FILE) debug\moc_tlv.cpp
 186.292 +	-$(DEL_FILE) debug\moc_messageFile.cpp
 186.293 +	-$(DEL_FILE) debug\moc_hello.cpp
 186.294 +	-$(DEL_FILE) debug\moc_dataPacket.cpp
 186.295 +	-$(DEL_FILE) debug\moc_readFile.cpp
 186.296 +	-$(DEL_FILE) debug\moc_DTNInterface.cpp
 186.297 +	-$(DEL_FILE) debug\moc_tcpClient.cpp
 186.298 +debug\moc_neighbourAwareness.cpp: connection.h \
 186.299 +		hello.h \
 186.300 +		tlv.h \
 186.301 +		node.h \
 186.302 +		bundle.h \
 186.303 +		nodeManager.h \
 186.304 +		bundleManager.h \
 186.305 +		messageFile.h \
 186.306 +		dataPacket.h \
 186.307 +		neighbourAwareness.h \
 186.308 +		readFile.h \
 186.309 +		neighbourAwareness.h
 186.310 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 neighbourAwareness.h -o debug\moc_neighbourAwareness.cpp
 186.311 +
 186.312 +debug\moc_bundle.cpp: bundle.h
 186.313 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 bundle.h -o debug\moc_bundle.cpp
 186.314 +
 186.315 +debug\moc_msgWidget.cpp: bundle.h \
 186.316 +		nodeManager.h \
 186.317 +		node.h \
 186.318 +		msgWidget.h
 186.319 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 msgWidget.h -o debug\moc_msgWidget.cpp
 186.320 +
 186.321 +debug\moc_bundleManager.cpp: bundle.h \
 186.322 +		node.h \
 186.323 +		nodeManager.h \
 186.324 +		messageFile.h \
 186.325 +		bundleManager.h
 186.326 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 bundleManager.h -o debug\moc_bundleManager.cpp
 186.327 +
 186.328 +debug\moc_debugWidget.cpp: bundle.h \
 186.329 +		node.h \
 186.330 +		msgWidget.h \
 186.331 +		nodeManager.h \
 186.332 +		neighbourAwareness.h \
 186.333 +		connection.h \
 186.334 +		hello.h \
 186.335 +		tlv.h \
 186.336 +		bundleManager.h \
 186.337 +		messageFile.h \
 186.338 +		dataPacket.h \
 186.339 +		readFile.h \
 186.340 +		debugWidget.h
 186.341 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 debugWidget.h -o debug\moc_debugWidget.cpp
 186.342 +
 186.343 +debug\moc_node.cpp: node.h
 186.344 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 node.h -o debug\moc_node.cpp
 186.345 +
 186.346 +debug\moc_nodeManager.cpp: node.h \
 186.347 +		nodeManager.h
 186.348 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 nodeManager.h -o debug\moc_nodeManager.cpp
 186.349 +
 186.350 +debug\moc_connection.cpp: hello.h \
 186.351 +		tlv.h \
 186.352 +		node.h \
 186.353 +		bundle.h \
 186.354 +		nodeManager.h \
 186.355 +		bundleManager.h \
 186.356 +		messageFile.h \
 186.357 +		dataPacket.h \
 186.358 +		connection.h
 186.359 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 connection.h -o debug\moc_connection.cpp
 186.360 +
 186.361 +debug\moc_tlv.cpp: hello.h \
 186.362 +		node.h \
 186.363 +		bundle.h \
 186.364 +		tlv.h
 186.365 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 tlv.h -o debug\moc_tlv.cpp
 186.366 +
 186.367 +debug\moc_messageFile.cpp: messageFile.h
 186.368 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 messageFile.h -o debug\moc_messageFile.cpp
 186.369 +
 186.370 +debug\moc_hello.cpp: hello.h
 186.371 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 hello.h -o debug\moc_hello.cpp
 186.372 +
 186.373 +debug\moc_dataPacket.cpp: dataPacket.h
 186.374 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 dataPacket.h -o debug\moc_dataPacket.cpp
 186.375 +
 186.376 +debug\moc_readFile.cpp: readFile.h
 186.377 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 readFile.h -o debug\moc_readFile.cpp
 186.378 +
 186.379 +debug\moc_DTNInterface.cpp: connection.h \
 186.380 +		hello.h \
 186.381 +		tlv.h \
 186.382 +		node.h \
 186.383 +		bundle.h \
 186.384 +		nodeManager.h \
 186.385 +		bundleManager.h \
 186.386 +		messageFile.h \
 186.387 +		dataPacket.h \
 186.388 +		neighbourAwareness.h \
 186.389 +		readFile.h \
 186.390 +		tcpClient.h \
 186.391 +		DTNInterface.h
 186.392 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 DTNInterface.h -o debug\moc_DTNInterface.cpp
 186.393 +
 186.394 +debug\moc_tcpClient.cpp: tcpClient.h
 186.395 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 tcpClient.h -o debug\moc_tcpClient.cpp
 186.396 +
 186.397 +compiler_rcc_make_all:
 186.398 +compiler_rcc_clean:
 186.399 +compiler_image_collection_make_all:
 186.400 +compiler_image_collection_clean:
 186.401 +	-$(DEL_FILE) qmake_image_collection.cpp
 186.402 +compiler_moc_source_make_all:
 186.403 +compiler_moc_source_clean:
 186.404 +compiler_uic_make_all:
 186.405 +compiler_uic_clean:
 186.406 +compiler_clean: compiler_moc_header_clean compiler_rcc_clean compiler_image_collection_clean compiler_moc_source_clean compiler_uic_clean 
 186.407 +
 186.408 +
 186.409 +
 186.410 +####### Compile
 186.411 +
 186.412 +debug\main.obj: main.cpp neighbourAwareness.h \
 186.413 +		connection.h \
 186.414 +		hello.h \
 186.415 +		tlv.h \
 186.416 +		node.h \
 186.417 +		bundle.h \
 186.418 +		nodeManager.h \
 186.419 +		bundleManager.h \
 186.420 +		messageFile.h \
 186.421 +		dataPacket.h \
 186.422 +		readFile.h \
 186.423 +		DTNInterface.h \
 186.424 +		tcpClient.h \
 186.425 +		debugWidget.h \
 186.426 +		msgWidget.h \
 186.427 +		
 186.428 +
 186.429 +debug\bundle.obj: bundle.cpp bundle.h \
 186.430 +		
 186.431 +
 186.432 +debug\msgWidget.obj: msgWidget.cpp msgWidget.h \
 186.433 +		bundle.h \
 186.434 +		nodeManager.h \
 186.435 +		node.h \
 186.436 +		readFile.h \
 186.437 +		
 186.438 +
 186.439 +debug\bundleManager.obj: bundleManager.cpp bundleManager.h \
 186.440 +		bundle.h \
 186.441 +		node.h \
 186.442 +		nodeManager.h \
 186.443 +		messageFile.h \
 186.444 +		readFile.h \
 186.445 +		
 186.446 +
 186.447 +debug\debugWidget.obj: debugWidget.cpp debugWidget.h \
 186.448 +		bundle.h \
 186.449 +		node.h \
 186.450 +		msgWidget.h \
 186.451 +		nodeManager.h \
 186.452 +		neighbourAwareness.h \
 186.453 +		connection.h \
 186.454 +		hello.h \
 186.455 +		tlv.h \
 186.456 +		bundleManager.h \
 186.457 +		messageFile.h \
 186.458 +		dataPacket.h \
 186.459 +		readFile.h \
 186.460 +		
 186.461 +
 186.462 +debug\node.obj: node.cpp node.h \
 186.463 +		
 186.464 +
 186.465 +debug\nodeManager.obj: nodeManager.cpp nodeManager.h \
 186.466 +		node.h \
 186.467 +		readFile.h \
 186.468 +		
 186.469 +
 186.470 +debug\connection.obj: connection.cpp connection.h \
 186.471 +		hello.h \
 186.472 +		tlv.h \
 186.473 +		node.h \
 186.474 +		bundle.h \
 186.475 +		nodeManager.h \
 186.476 +		bundleManager.h \
 186.477 +		messageFile.h \
 186.478 +		dataPacket.h \
 186.479 +		readFile.h \
 186.480 +		
 186.481 +
 186.482 +debug\hello.obj: hello.cpp hello.h \
 186.483 +		
 186.484 +
 186.485 +debug\tlv.obj: tlv.cpp tlv.h \
 186.486 +		hello.h \
 186.487 +		node.h \
 186.488 +		bundle.h \
 186.489 +		messageFile.h \
 186.490 +		readFile.h \
 186.491 +		
 186.492 +
 186.493 +debug\dataPacket.obj: dataPacket.cpp dataPacket.h \
 186.494 +		
 186.495 +
 186.496 +debug\messageFile.obj: messageFile.cpp messageFile.h \
 186.497 +		readFile.h \
 186.498 +		
 186.499 +
 186.500 +debug\neighbourAwareness.obj: neighbourAwareness.cpp connection.h \
 186.501 +		hello.h \
 186.502 +		tlv.h \
 186.503 +		node.h \
 186.504 +		bundle.h \
 186.505 +		nodeManager.h \
 186.506 +		bundleManager.h \
 186.507 +		messageFile.h \
 186.508 +		dataPacket.h \
 186.509 +		neighbourAwareness.h \
 186.510 +		readFile.h \
 186.511 +		main.h \
 186.512 +		
 186.513 +
 186.514 +debug\readFile.obj: readFile.cpp readFile.h \
 186.515 +		
 186.516 +
 186.517 +debug\DTNInterface.obj: DTNInterface.cpp readFile.h \
 186.518 +		bundleManager.h \
 186.519 +		bundle.h \
 186.520 +		node.h \
 186.521 +		nodeManager.h \
 186.522 +		messageFile.h \
 186.523 +		DTNInterface.h \
 186.524 +		connection.h \
 186.525 +		hello.h \
 186.526 +		tlv.h \
 186.527 +		dataPacket.h \
 186.528 +		neighbourAwareness.h \
 186.529 +		tcpClient.h \
 186.530 +		
 186.531 +
 186.532 +debug\tcpClient.obj: tcpClient.cpp tcpClient.h \
 186.533 +		
 186.534 +
 186.535 +debug\moc_neighbourAwareness.obj: debug\moc_neighbourAwareness.cpp 
 186.536 +
 186.537 +debug\moc_bundle.obj: debug\moc_bundle.cpp 
 186.538 +
 186.539 +debug\moc_msgWidget.obj: debug\moc_msgWidget.cpp 
 186.540 +
 186.541 +debug\moc_bundleManager.obj: debug\moc_bundleManager.cpp 
 186.542 +
 186.543 +debug\moc_debugWidget.obj: debug\moc_debugWidget.cpp 
 186.544 +
 186.545 +debug\moc_node.obj: debug\moc_node.cpp 
 186.546 +
 186.547 +debug\moc_nodeManager.obj: debug\moc_nodeManager.cpp 
 186.548 +
 186.549 +debug\moc_connection.obj: debug\moc_connection.cpp 
 186.550 +
 186.551 +debug\moc_tlv.obj: debug\moc_tlv.cpp 
 186.552 +
 186.553 +debug\moc_messageFile.obj: debug\moc_messageFile.cpp 
 186.554 +
 186.555 +debug\moc_hello.obj: debug\moc_hello.cpp 
 186.556 +
 186.557 +debug\moc_dataPacket.obj: debug\moc_dataPacket.cpp 
 186.558 +
 186.559 +debug\moc_readFile.obj: debug\moc_readFile.cpp 
 186.560 +
 186.561 +debug\moc_DTNInterface.obj: debug\moc_DTNInterface.cpp 
 186.562 +
 186.563 +debug\moc_tcpClient.obj: debug\moc_tcpClient.cpp 
 186.564 +
 186.565 +####### Install
 186.566 +
 186.567 +install:   FORCE
 186.568 +
 186.569 +uninstall:   FORCE
 186.570 +
 186.571 +FORCE:
 186.572 +
   187.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   187.2 +++ b/x86/Win32/Makefile.Release	Thu Jun 26 17:39:40 2008 +0100
   187.3 @@ -0,0 +1,565 @@
   187.4 +#############################################################################
   187.5 +# Makefile for building: prophet
   187.6 +# Generated by qmake (2.00a) (Qt 4.0.1) on: sre 9. avg 15:40:13 2006
   187.7 +# Project:  prophet.pro
   187.8 +# Template: app
   187.9 +#############################################################################
  187.10 +
  187.11 +####### Compiler, tools and options
  187.12 +
  187.13 +CC            = cl
  187.14 +CXX           = cl
  187.15 +LEX           = flex
  187.16 +YACC          = byacc
  187.17 +DEFINES       = -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT
  187.18 +CFLAGS        = -nologo -Zm200 -O1 -MD -O1 -MD -W3 $(DEFINES)
  187.19 +CXXFLAGS      = -nologo -Zm200 -O1 -MD -O1 -MD -GR -GX -W3 $(DEFINES)
  187.20 +LEXFLAGS      = 
  187.21 +YACCFLAGS     = -d
  187.22 +INCPATH       = -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc"
  187.23 +LINK          = link
  187.24 +LFLAGS        = /LIBPATH:"C:\Qt\4.0.1\lib" /NOLOGO /incremental:yes /SUBSYSTEM:windows
  187.25 +LIBS          = C:\Qt\4.0.1\lib\qtmain.lib C:\Qt\4.0.1\lib\QtCore4.lib C:\Qt\4.0.1\lib\QtGui4.lib C:\Qt\4.0.1\lib\QtNetwork4.lib
  187.26 +QMAKE         = qmake
  187.27 +IDC           = C:\Qt\4.0.1\bin\idc.exe
  187.28 +IDL           = midl
  187.29 +ZIP           = zip -r -9
  187.30 +DEF_FILE      = 
  187.31 +RES_FILE      = 
  187.32 +COPY          = copy /y
  187.33 +COPY_FILE     = $(COPY)
  187.34 +COPY_DIR      = xcopy /s /q /y /i
  187.35 +DEL_FILE      = del
  187.36 +DEL_DIR       = rmdir
  187.37 +MOVE          = move
  187.38 +CHK_DIR_EXISTS= if not exist
  187.39 +MKDIR         = mkdir
  187.40 +INSTALL_FILE  = $(COPY_FILE)
  187.41 +INSTALL_DIR   = $(COPY_DIR)
  187.42 +
  187.43 +####### Output directory
  187.44 +
  187.45 +OBJECTS_DIR   = release
  187.46 +
  187.47 +####### Files
  187.48 +
  187.49 +SOURCES       = main.cpp \
  187.50 +		bundle.cpp \
  187.51 +		msgWidget.cpp \
  187.52 +		bundleManager.cpp \
  187.53 +		debugWidget.cpp \
  187.54 +		node.cpp \
  187.55 +		nodeManager.cpp \
  187.56 +		connection.cpp \
  187.57 +		hello.cpp \
  187.58 +		tlv.cpp \
  187.59 +		dataPacket.cpp \
  187.60 +		messageFile.cpp \
  187.61 +		neighbourAwareness.cpp \
  187.62 +		readFile.cpp \
  187.63 +		DTNInterface.cpp \
  187.64 +		tcpClient.cpp release\moc_neighbourAwareness.cpp \
  187.65 +		release\moc_bundle.cpp \
  187.66 +		release\moc_msgWidget.cpp \
  187.67 +		release\moc_bundleManager.cpp \
  187.68 +		release\moc_debugWidget.cpp \
  187.69 +		release\moc_node.cpp \
  187.70 +		release\moc_nodeManager.cpp \
  187.71 +		release\moc_connection.cpp \
  187.72 +		release\moc_tlv.cpp \
  187.73 +		release\moc_messageFile.cpp \
  187.74 +		release\moc_hello.cpp \
  187.75 +		release\moc_dataPacket.cpp \
  187.76 +		release\moc_readFile.cpp \
  187.77 +		release\moc_DTNInterface.cpp \
  187.78 +		release\moc_tcpClient.cpp
  187.79 +OBJECTS       = release\main.obj \
  187.80 +		release\bundle.obj \
  187.81 +		release\msgWidget.obj \
  187.82 +		release\bundleManager.obj \
  187.83 +		release\debugWidget.obj \
  187.84 +		release\node.obj \
  187.85 +		release\nodeManager.obj \
  187.86 +		release\connection.obj \
  187.87 +		release\hello.obj \
  187.88 +		release\tlv.obj \
  187.89 +		release\dataPacket.obj \
  187.90 +		release\messageFile.obj \
  187.91 +		release\neighbourAwareness.obj \
  187.92 +		release\readFile.obj \
  187.93 +		release\DTNInterface.obj \
  187.94 +		release\tcpClient.obj \
  187.95 +		release\moc_neighbourAwareness.obj \
  187.96 +		release\moc_bundle.obj \
  187.97 +		release\moc_msgWidget.obj \
  187.98 +		release\moc_bundleManager.obj \
  187.99 +		release\moc_debugWidget.obj \
 187.100 +		release\moc_node.obj \
 187.101 +		release\moc_nodeManager.obj \
 187.102 +		release\moc_connection.obj \
 187.103 +		release\moc_tlv.obj \
 187.104 +		release\moc_messageFile.obj \
 187.105 +		release\moc_hello.obj \
 187.106 +		release\moc_dataPacket.obj \
 187.107 +		release\moc_readFile.obj \
 187.108 +		release\moc_DTNInterface.obj \
 187.109 +		release\moc_tcpClient.obj
 187.110 +DIST          = 
 187.111 +QMAKE_TARGET  = prophet
 187.112 +DESTDIR       = release\ #avoid trailing-slash linebreak
 187.113 +TARGET        = release\prophet.exe
 187.114 +
 187.115 +####### Implicit rules
 187.116 +
 187.117 +.SUFFIXES: .c .cpp .cc .cxx
 187.118 +
 187.119 +{release}.cpp{release\}.obj::
 187.120 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 187.121 +	$<
 187.122 +<<
 187.123 +
 187.124 +{release}.cc{release\}.obj::
 187.125 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 187.126 +	$<
 187.127 +<<
 187.128 +
 187.129 +{release}.cxx{release\}.obj::
 187.130 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 187.131 +	$<
 187.132 +<<
 187.133 +
 187.134 +{release}.c{release\}.obj::
 187.135 +	$(CC) -c $(CFLAGS) $(INCPATH) -Forelease\ @<<
 187.136 +	$<
 187.137 +<<
 187.138 +
 187.139 +{release}.cpp{release\}.obj::
 187.140 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 187.141 +	$<
 187.142 +<<
 187.143 +
 187.144 +{release}.cc{release\}.obj::
 187.145 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 187.146 +	$<
 187.147 +<<
 187.148 +
 187.149 +{release}.cxx{release\}.obj::
 187.150 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 187.151 +	$<
 187.152 +<<
 187.153 +
 187.154 +{release}.c{release\}.obj::
 187.155 +	$(CC) -c $(CFLAGS) $(INCPATH) -Forelease\ @<<
 187.156 +	$<
 187.157 +<<
 187.158 +
 187.159 +{.}.cpp{release\}.obj::
 187.160 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 187.161 +	$<
 187.162 +<<
 187.163 +
 187.164 +{.}.cc{release\}.obj::
 187.165 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 187.166 +	$<
 187.167 +<<
 187.168 +
 187.169 +{.}.cxx{release\}.obj::
 187.170 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 187.171 +	$<
 187.172 +<<
 187.173 +
 187.174 +{.}.c{release\}.obj::
 187.175 +	$(CC) -c $(CFLAGS) $(INCPATH) -Forelease\ @<<
 187.176 +	$<
 187.177 +<<
 187.178 +
 187.179 +{.}.cpp{release\}.obj::
 187.180 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 187.181 +	$<
 187.182 +<<
 187.183 +
 187.184 +{.}.cc{release\}.obj::
 187.185 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 187.186 +	$<
 187.187 +<<
 187.188 +
 187.189 +{.}.cxx{release\}.obj::
 187.190 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 187.191 +	$<
 187.192 +<<
 187.193 +
 187.194 +{.}.c{release\}.obj::
 187.195 +	$(CC) -c $(CFLAGS) $(INCPATH) -Forelease\ @<<
 187.196 +	$<
 187.197 +<<
 187.198 +
 187.199 +{.}.cpp{release\}.obj::
 187.200 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 187.201 +	$<
 187.202 +<<
 187.203 +
 187.204 +{.}.cc{release\}.obj::
 187.205 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 187.206 +	$<
 187.207 +<<
 187.208 +
 187.209 +{.}.cxx{release\}.obj::
 187.210 +	$(CXX) -c $(CXXFLAGS) $(INCPATH) -Forelease\ @<<
 187.211 +	$<
 187.212 +<<
 187.213 +
 187.214 +{.}.c{release\}.obj::
 187.215 +	$(CC) -c $(CFLAGS) $(INCPATH) -Forelease\ @<<
 187.216 +	$<
 187.217 +<<
 187.218 +
 187.219 +####### Build rules
 187.220 +
 187.221 +first: all
 187.222 +all: Makefile.Release $(TARGET)
 187.223 +
 187.224 +$(TARGET):  $(OBJECTS) 
 187.225 +	$(LINK) $(LFLAGS) /OUT:"$(TARGET)" @<< 
 187.226 +	  $(OBJECTS) $(LIBS)
 187.227 +<<
 187.228 +
 187.229 +
 187.230 +qmake:  FORCE
 187.231 +	@$(QMAKE) -win32 -o Makefile.Release prophet.pro
 187.232 +
 187.233 +dist:
 187.234 +	$(ZIP) prophet.zip $(SOURCES) $(DIST) prophet.pro C:/Qt/4.0.1/mkspecs/qconfig.pri ..\..\Qt\4.0.1\mkspecs\features\qt_config.prf ..\..\Qt\4.0.1\mkspecs\features\exclusive_builds.prf ..\..\Qt\4.0.1\mkspecs\features\default_pre.prf ..\..\Qt\4.0.1\mkspecs\features\win32\default_pre.prf ..\..\Qt\4.0.1\mkspecs\features\release.prf ..\..\Qt\4.0.1\mkspecs\features\debug_and_release.prf ..\..\Qt\4.0.1\mkspecs\features\default_post.prf ..\..\Qt\4.0.1\mkspecs\features\build_pass.prf ..\..\Qt\4.0.1\mkspecs\features\Release.prf ..\..\Qt\4.0.1\mkspecs\features\qt.prf ..\..\Qt\4.0.1\mkspecs\features\win32\thread.prf ..\..\Qt\4.0.1\mkspecs\features\moc.prf ..\..\Qt\4.0.1\mkspecs\features\win32\rtti.prf ..\..\Qt\4.0.1\mkspecs\features\win32\exceptions.prf ..\..\Qt\4.0.1\mkspecs\features\win32\stl.prf ..\..\Qt\4.0.1\mkspecs\features\shared.prf C:/Qt/4.0.1/mkspecs/win32-msvc/features/incremental.prf ..\..\Qt\4.0.1\mkspecs\features\warn_on.prf ..\..\Qt\4.0.1\mkspecs\features\win32\windows.prf ..\..\Qt\4.0.1\mkspecs\features\resources.prf ..\..\Qt\4.0.1\mkspecs\features\uic.prf C:\Qt\4.0.1\lib\qtmain.prl  HEADERS RESOURCES IMAGES SOURCES FORMS 
 187.235 +
 187.236 +clean: compiler_clean
 187.237 +	-$(DEL_FILE) release\main.obj
 187.238 +	-$(DEL_FILE) release\bundle.obj
 187.239 +	-$(DEL_FILE) release\msgWidget.obj
 187.240 +	-$(DEL_FILE) release\bundleManager.obj
 187.241 +	-$(DEL_FILE) release\debugWidget.obj
 187.242 +	-$(DEL_FILE) release\node.obj
 187.243 +	-$(DEL_FILE) release\nodeManager.obj
 187.244 +	-$(DEL_FILE) release\connection.obj
 187.245 +	-$(DEL_FILE) release\hello.obj
 187.246 +	-$(DEL_FILE) release\tlv.obj
 187.247 +	-$(DEL_FILE) release\dataPacket.obj
 187.248 +	-$(DEL_FILE) release\messageFile.obj
 187.249 +	-$(DEL_FILE) release\neighbourAwareness.obj
 187.250 +	-$(DEL_FILE) release\readFile.obj
 187.251 +	-$(DEL_FILE) release\DTNInterface.obj
 187.252 +	-$(DEL_FILE) release\tcpClient.obj
 187.253 +	-$(DEL_FILE) release\moc_neighbourAwareness.obj
 187.254 +	-$(DEL_FILE) release\moc_bundle.obj
 187.255 +	-$(DEL_FILE) release\moc_msgWidget.obj
 187.256 +	-$(DEL_FILE) release\moc_bundleManager.obj
 187.257 +	-$(DEL_FILE) release\moc_debugWidget.obj
 187.258 +	-$(DEL_FILE) release\moc_node.obj
 187.259 +	-$(DEL_FILE) release\moc_nodeManager.obj
 187.260 +	-$(DEL_FILE) release\moc_connection.obj
 187.261 +	-$(DEL_FILE) release\moc_tlv.obj
 187.262 +	-$(DEL_FILE) release\moc_messageFile.obj
 187.263 +	-$(DEL_FILE) release\moc_hello.obj
 187.264 +	-$(DEL_FILE) release\moc_dataPacket.obj
 187.265 +	-$(DEL_FILE) release\moc_readFile.obj
 187.266 +	-$(DEL_FILE) release\moc_DTNInterface.obj
 187.267 +	-$(DEL_FILE) release\moc_tcpClient.obj
 187.268 +
 187.269 +distclean: clean
 187.270 +	-$(DEL_FILE) "$(TARGET)"
 187.271 +	-$(DEL_FILE) Makefile.Release
 187.272 +
 187.273 +mocclean: compiler_moc_header_clean compiler_moc_source_clean
 187.274 +
 187.275 +mocables: compiler_moc_header_make_all compiler_moc_source_make_all
 187.276 +
 187.277 +compiler_moc_header_make_all: release\moc_neighbourAwareness.cpp release\moc_bundle.cpp release\moc_msgWidget.cpp release\moc_bundleManager.cpp release\moc_debugWidget.cpp release\moc_node.cpp release\moc_nodeManager.cpp release\moc_connection.cpp release\moc_tlv.cpp release\moc_messageFile.cpp release\moc_hello.cpp release\moc_dataPacket.cpp release\moc_readFile.cpp release\moc_DTNInterface.cpp release\moc_tcpClient.cpp
 187.278 +compiler_moc_header_clean:
 187.279 +	-$(DEL_FILE) release\moc_neighbourAwareness.cpp
 187.280 +	-$(DEL_FILE) release\moc_bundle.cpp
 187.281 +	-$(DEL_FILE) release\moc_msgWidget.cpp
 187.282 +	-$(DEL_FILE) release\moc_bundleManager.cpp
 187.283 +	-$(DEL_FILE) release\moc_debugWidget.cpp
 187.284 +	-$(DEL_FILE) release\moc_node.cpp
 187.285 +	-$(DEL_FILE) release\moc_nodeManager.cpp
 187.286 +	-$(DEL_FILE) release\moc_connection.cpp
 187.287 +	-$(DEL_FILE) release\moc_tlv.cpp
 187.288 +	-$(DEL_FILE) release\moc_messageFile.cpp
 187.289 +	-$(DEL_FILE) release\moc_hello.cpp
 187.290 +	-$(DEL_FILE) release\moc_dataPacket.cpp
 187.291 +	-$(DEL_FILE) release\moc_readFile.cpp
 187.292 +	-$(DEL_FILE) release\moc_DTNInterface.cpp
 187.293 +	-$(DEL_FILE) release\moc_tcpClient.cpp
 187.294 +release\moc_neighbourAwareness.cpp: connection.h \
 187.295 +		hello.h \
 187.296 +		tlv.h \
 187.297 +		node.h \
 187.298 +		bundle.h \
 187.299 +		nodeManager.h \
 187.300 +		bundleManager.h \
 187.301 +		messageFile.h \
 187.302 +		dataPacket.h \
 187.303 +		neighbourAwareness.h \
 187.304 +		readFile.h \
 187.305 +		neighbourAwareness.h
 187.306 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 neighbourAwareness.h -o release\moc_neighbourAwareness.cpp
 187.307 +
 187.308 +release\moc_bundle.cpp: bundle.h
 187.309 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 bundle.h -o release\moc_bundle.cpp
 187.310 +
 187.311 +release\moc_msgWidget.cpp: bundle.h \
 187.312 +		nodeManager.h \
 187.313 +		node.h \
 187.314 +		msgWidget.h
 187.315 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 msgWidget.h -o release\moc_msgWidget.cpp
 187.316 +
 187.317 +release\moc_bundleManager.cpp: bundle.h \
 187.318 +		node.h \
 187.319 +		nodeManager.h \
 187.320 +		messageFile.h \
 187.321 +		bundleManager.h
 187.322 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 bundleManager.h -o release\moc_bundleManager.cpp
 187.323 +
 187.324 +release\moc_debugWidget.cpp: bundle.h \
 187.325 +		node.h \
 187.326 +		msgWidget.h \
 187.327 +		nodeManager.h \
 187.328 +		neighbourAwareness.h \
 187.329 +		connection.h \
 187.330 +		hello.h \
 187.331 +		tlv.h \
 187.332 +		bundleManager.h \
 187.333 +		messageFile.h \
 187.334 +		dataPacket.h \
 187.335 +		readFile.h \
 187.336 +		debugWidget.h
 187.337 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 debugWidget.h -o release\moc_debugWidget.cpp
 187.338 +
 187.339 +release\moc_node.cpp: node.h
 187.340 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 node.h -o release\moc_node.cpp
 187.341 +
 187.342 +release\moc_nodeManager.cpp: node.h \
 187.343 +		nodeManager.h
 187.344 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 nodeManager.h -o release\moc_nodeManager.cpp
 187.345 +
 187.346 +release\moc_connection.cpp: hello.h \
 187.347 +		tlv.h \
 187.348 +		node.h \
 187.349 +		bundle.h \
 187.350 +		nodeManager.h \
 187.351 +		bundleManager.h \
 187.352 +		messageFile.h \
 187.353 +		dataPacket.h \
 187.354 +		connection.h
 187.355 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 connection.h -o release\moc_connection.cpp
 187.356 +
 187.357 +release\moc_tlv.cpp: hello.h \
 187.358 +		node.h \
 187.359 +		bundle.h \
 187.360 +		tlv.h
 187.361 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 tlv.h -o release\moc_tlv.cpp
 187.362 +
 187.363 +release\moc_messageFile.cpp: messageFile.h
 187.364 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 messageFile.h -o release\moc_messageFile.cpp
 187.365 +
 187.366 +release\moc_hello.cpp: hello.h
 187.367 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 hello.h -o release\moc_hello.cpp
 187.368 +
 187.369 +release\moc_dataPacket.cpp: dataPacket.h
 187.370 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 dataPacket.h -o release\moc_dataPacket.cpp
 187.371 +
 187.372 +release\moc_readFile.cpp: readFile.h
 187.373 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 readFile.h -o release\moc_readFile.cpp
 187.374 +
 187.375 +release\moc_DTNInterface.cpp: connection.h \
 187.376 +		hello.h \
 187.377 +		tlv.h \
 187.378 +		node.h \
 187.379 +		bundle.h \
 187.380 +		nodeManager.h \
 187.381 +		bundleManager.h \
 187.382 +		messageFile.h \
 187.383 +		dataPacket.h \
 187.384 +		neighbourAwareness.h \
 187.385 +		readFile.h \
 187.386 +		tcpClient.h \
 187.387 +		DTNInterface.h
 187.388 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 DTNInterface.h -o release\moc_DTNInterface.cpp
 187.389 +
 187.390 +release\moc_tcpClient.cpp: tcpClient.h
 187.391 +	C:\Qt\4.0.1\bin\moc.exe $(DEFINES) $(INCPATH) -D_MSC_VER=1200 -DWIN32 tcpClient.h -o release\moc_tcpClient.cpp
 187.392 +
 187.393 +compiler_rcc_make_all:
 187.394 +compiler_rcc_clean:
 187.395 +compiler_image_collection_make_all:
 187.396 +compiler_image_collection_clean:
 187.397 +	-$(DEL_FILE) qmake_image_collection.cpp
 187.398 +compiler_moc_source_make_all:
 187.399 +compiler_moc_source_clean:
 187.400 +compiler_uic_make_all:
 187.401 +compiler_uic_clean:
 187.402 +compiler_clean: compiler_moc_header_clean compiler_rcc_clean compiler_image_collection_clean compiler_moc_source_clean compiler_uic_clean 
 187.403 +
 187.404 +
 187.405 +
 187.406 +####### Compile
 187.407 +
 187.408 +release\main.obj: main.cpp neighbourAwareness.h \
 187.409 +		connection.h \
 187.410 +		hello.h \
 187.411 +		tlv.h \
 187.412 +		node.h \
 187.413 +		bundle.h \
 187.414 +		nodeManager.h \
 187.415 +		bundleManager.h \
 187.416 +		messageFile.h \
 187.417 +		dataPacket.h \
 187.418 +		readFile.h \
 187.419 +		DTNInterface.h \
 187.420 +		tcpClient.h \
 187.421 +		debugWidget.h \
 187.422 +		msgWidget.h \
 187.423 +		
 187.424 +
 187.425 +release\bundle.obj: bundle.cpp bundle.h \
 187.426 +		
 187.427 +
 187.428 +release\msgWidget.obj: msgWidget.cpp msgWidget.h \
 187.429 +		bundle.h \
 187.430 +		nodeManager.h \
 187.431 +		node.h \
 187.432 +		readFile.h \
 187.433 +		
 187.434 +
 187.435 +release\bundleManager.obj: bundleManager.cpp bundleManager.h \
 187.436 +		bundle.h \
 187.437 +		node.h \
 187.438 +		nodeManager.h \
 187.439 +		messageFile.h \
 187.440 +		readFile.h \
 187.441 +		
 187.442 +
 187.443 +release\debugWidget.obj: debugWidget.cpp debugWidget.h \
 187.444 +		bundle.h \
 187.445 +		node.h \
 187.446 +		msgWidget.h \
 187.447 +		nodeManager.h \
 187.448 +		neighbourAwareness.h \
 187.449 +		connection.h \
 187.450 +		hello.h \
 187.451 +		tlv.h \
 187.452 +		bundleManager.h \
 187.453 +		messageFile.h \
 187.454 +		dataPacket.h \
 187.455 +		readFile.h \
 187.456 +		
 187.457 +
 187.458 +release\node.obj: node.cpp node.h \
 187.459 +		
 187.460 +
 187.461 +release\nodeManager.obj: nodeManager.cpp nodeManager.h \
 187.462 +		node.h \
 187.463 +		readFile.h \
 187.464 +		
 187.465 +
 187.466 +release\connection.obj: connection.cpp connection.h \
 187.467 +		hello.h \
 187.468 +		tlv.h \
 187.469 +		node.h \
 187.470 +		bundle.h \
 187.471 +		nodeManager.h \
 187.472 +		bundleManager.h \
 187.473 +		messageFile.h \
 187.474 +		dataPacket.h \
 187.475 +		readFile.h \
 187.476 +		
 187.477 +
 187.478 +release\hello.obj: hello.cpp hello.h \
 187.479 +		
 187.480 +
 187.481 +release\tlv.obj: tlv.cpp tlv.h \
 187.482 +		hello.h \
 187.483 +		node.h \
 187.484 +		bundle.h \
 187.485 +		messageFile.h \
 187.486 +		readFile.h \
 187.487 +		
 187.488 +
 187.489 +release\dataPacket.obj: dataPacket.cpp dataPacket.h \
 187.490 +		
 187.491 +
 187.492 +release\messageFile.obj: messageFile.cpp messageFile.h \
 187.493 +		readFile.h \
 187.494 +		
 187.495 +
 187.496 +release\neighbourAwareness.obj: neighbourAwareness.cpp connection.h \
 187.497 +		hello.h \
 187.498 +		tlv.h \
 187.499 +		node.h \
 187.500 +		bundle.h \
 187.501 +		nodeManager.h \
 187.502 +		bundleManager.h \
 187.503 +		messageFile.h \
 187.504 +		dataPacket.h \
 187.505 +		neighbourAwareness.h \
 187.506 +		readFile.h \
 187.507 +		main.h \
 187.508 +		
 187.509 +
 187.510 +release\readFile.obj: readFile.cpp readFile.h \
 187.511 +		
 187.512 +
 187.513 +release\DTNInterface.obj: DTNInterface.cpp readFile.h \
 187.514 +		bundleManager.h \
 187.515 +		bundle.h \
 187.516 +		node.h \
 187.517 +		nodeManager.h \
 187.518 +		messageFile.h \
 187.519 +		DTNInterface.h \
 187.520 +		connection.h \
 187.521 +		hello.h \
 187.522 +		tlv.h \
 187.523 +		dataPacket.h \
 187.524 +		neighbourAwareness.h \
 187.525 +		tcpClient.h \
 187.526 +		
 187.527 +
 187.528 +release\tcpClient.obj: tcpClient.cpp tcpClient.h \
 187.529 +		
 187.530 +
 187.531 +release\moc_neighbourAwareness.obj: release\moc_neighbourAwareness.cpp 
 187.532 +
 187.533 +release\moc_bundle.obj: release\moc_bundle.cpp 
 187.534 +
 187.535 +release\moc_msgWidget.obj: release\moc_msgWidget.cpp 
 187.536 +
 187.537 +release\moc_bundleManager.obj: release\moc_bundleManager.cpp 
 187.538 +
 187.539 +release\moc_debugWidget.obj: release\moc_debugWidget.cpp 
 187.540 +
 187.541 +release\moc_node.obj: release\moc_node.cpp 
 187.542 +
 187.543 +release\moc_nodeManager.obj: release\moc_nodeManager.cpp 
 187.544 +
 187.545 +release\moc_connection.obj: release\moc_connection.cpp 
 187.546 +
 187.547 +release\moc_tlv.obj: release\moc_tlv.cpp 
 187.548 +
 187.549 +release\moc_messageFile.obj: release\moc_messageFile.cpp 
 187.550 +
 187.551 +release\moc_hello.obj: release\moc_hello.cpp 
 187.552 +
 187.553 +release\moc_dataPacket.obj: release\moc_dataPacket.cpp 
 187.554 +
 187.555 +release\moc_readFile.obj: release\moc_readFile.cpp 
 187.556 +
 187.557 +release\moc_DTNInterface.obj: release\moc_DTNInterface.cpp 
 187.558 +
 187.559 +release\moc_tcpClient.obj: release\moc_tcpClient.cpp 
 187.560 +
 187.561 +####### Install
 187.562 +
 187.563 +install:   FORCE
 187.564 +
 187.565 +uninstall:   FORCE
 187.566 +
 187.567 +FORCE:
 187.568 +
   188.1 Binary file x86/Win32/binaries/QtCore4.dll has changed
   189.1 Binary file x86/Win32/binaries/QtGui4.dll has changed
   190.1 Binary file x86/Win32/binaries/QtNetwork4.dll has changed
   191.1 Binary file x86/Win32/binaries/prophet.exe has changed
   192.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   192.2 +++ b/x86/Win32/binaries/prophet.ini	Thu Jun 26 17:39:40 2008 +0100
   192.3 @@ -0,0 +1,30 @@
   192.4 +NODEID=44
   192.5 +NODENAME=samonote.dtn
   192.6 +NODEIP=192.168.10.44
   192.7 +NODEIP2=192.168.0.3
   192.8 +NODEBROADCAST=255.255.255.255
   192.9 +BROADCAST=1000
  192.10 +AGINGTIMER=60000
  192.11 +PENCOUNTER=0.75
  192.12 +BETA=0.25
  192.13 +GAMMA=0.9989
  192.14 +HELLO=10000
  192.15 +ALIVE=60
  192.16 +HELLOTIMER=60000
  192.17 +INITIATORTIMER=60000
  192.18 +LISTENERTIMER=60000
  192.19 +DTNHOSTNAME=193.77.152.156
  192.20 +DTNHOSTPORT=5050
  192.21 +DNTTIMER=5000
  192.22 +STORAGESIZE=10000000
  192.23 +ROUTING=1
  192.24 +QUEUE=0
  192.25 +CONTINIUSUPDATE=1
  192.26 +STORAGEPATH=c:\Samo\PRoPHET\exe\list\
  192.27 +LOGPATH=c:\Samo\PRoPHET\exe\log\
  192.28 +MSGPATH=c:\Samo\PRoPHET\exe\storage\
  192.29 +AGEFILENODES=1
  192.30 +USEFILENODES=1
  192.31 +WRITETOFILETIMER=10000
  192.32 +USEFILEBUNDLES=1
  192.33 +LOGING=1
   193.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   193.2 +++ b/x86/Win32/bundle.cpp	Thu Jun 26 17:39:40 2008 +0100
   193.3 @@ -0,0 +1,106 @@
   193.4 +#include <QtCore>
   193.5 +#include <bundle.h>
   193.6 +
   193.7 +
   193.8 +Bundle::Bundle(QObject *parent)
   193.9 +{
  193.10 +			id=0;
  193.11 +			sourceId=0;
  193.12 +			destinationId=0;
  193.13 +			data.clear();
  193.14 +			options=0;
  193.15 +			sourceString.clear();
  193.16 +			destinationString.clear();
  193.17 +			dataLength=0;
  193.18 +}
  193.19 +
  193.20 +
  193.21 +Bundle& Bundle::operator=(const Bundle& other)
  193.22 +{
  193.23 + id = other.id;
  193.24 + sourceId = other.sourceId;
  193.25 + destinationId = other.destinationId;
  193.26 + data = other.data;
  193.27 + timeStamp = other.timeStamp;
  193.28 + options = other.options;
  193.29 + sourceString = other.sourceString;
  193.30 + destinationString = other.destinationString;
  193.31 + dataLength = other.dataLength;
  193.32 + return *this;
  193.33 +}
  193.34 +
  193.35 +Bundle::Bundle(const Bundle& other)
  193.36 +{
  193.37 + id = other.id;
  193.38 + sourceId = other.sourceId;
  193.39 + destinationId = other.destinationId;
  193.40 + data = other.data;
  193.41 + timeStamp = other.timeStamp;
  193.42 + options = other.options;
  193.43 + sourceString = other.sourceString;
  193.44 + destinationString = other.destinationString;
  193.45 + dataLength = other.dataLength;
  193.46 +}	
  193.47 +	
  193.48 +void Bundle::setContent(int seq,int s,int d,QByteArray m,int opt,QByteArray src,QByteArray dst)
  193.49 +{
  193.50 +	timeStamp=timeStamp.currentDateTime();
  193.51 +	id=(seq%100)+(rand()%1000)*1000;
  193.52 +	
  193.53 +	//	id=s+(d*100)+(timeStamp.second()*10000)+(timeStamp.minute()*1000000);//+(timeStamp.minute()*100000000);
  193.54 +//	id=(rand()%10000)+(rand()*10000);
  193.55 +	sourceId=s;
  193.56 +	destinationId=d;
  193.57 +	data=m; 
  193.58 +	options=opt;
  193.59 +	sourceString = src;
  193.60 +	destinationString = dst;
  193.61 +
  193.62 +
  193.63 +}
  193.64 +void Bundle::setContent(int seq,int s,int d,QByteArray m,int opt)
  193.65 +{
  193.66 +	timeStamp=timeStamp.currentDateTime();
  193.67 +//	id=s+(d*100)+(timeStamp.second()*10000)+(timeStamp.minute()*1000000);//+(timeStamp.minute()*100000000);
  193.68 +//	id=(rand()%10000)+(rand()*10000);
  193.69 +//	id=d+(s*1000)+((seq%100)*100000000);
  193.70 +	id=(rand()%10000);
  193.71 +	sourceId=s;
  193.72 +	destinationId=d;
  193.73 +	data=m;
  193.74 +	sourceString.clear();
  193.75 +	destinationString.clear();
  193.76 +
  193.77 +	options=opt;
  193.78 +}
  193.79 +
  193.80 +int Bundle::getId()
  193.81 +{
  193.82 +	return id;
  193.83 +}
  193.84 +
  193.85 +int Bundle::getSourceId()
  193.86 +{
  193.87 +	return sourceId;
  193.88 +}
  193.89 +
  193.90 +int Bundle::getDestinationId()
  193.91 +{
  193.92 +	return destinationId;
  193.93 +}
  193.94 +
  193.95 +QByteArray Bundle::getData()
  193.96 +{
  193.97 +	return data;
  193.98 +}
  193.99 +
 193.100 +QDateTime Bundle::getTime()
 193.101 +{
 193.102 +	return timeStamp;
 193.103 +}
 193.104 +
 193.105 +
 193.106 +int Bundle::getOptions()
 193.107 +{
 193.108 +	return options;
 193.109 +}
 193.110 \ No newline at end of file
   194.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   194.2 +++ b/x86/Win32/bundle.h	Thu Jun 26 17:39:40 2008 +0100
   194.3 @@ -0,0 +1,37 @@
   194.4 +#ifndef BUNDLE_H
   194.5 +#define BUNDLE_H
   194.6 +
   194.7 +#include <QtCore>
   194.8 +
   194.9 +class Bundle : public QObject
  194.10 +{
  194.11 +
  194.12 +Q_OBJECT 
  194.13 +	public:
  194.14 +	int id;
  194.15 +	int sourceId;
  194.16 +	int destinationId;
  194.17 +	QByteArray data;
  194.18 +	QByteArray sourceString;
  194.19 +	QByteArray destinationString;
  194.20 +	QDateTime timeStamp;
  194.21 +	int options;
  194.22 +	int dataLength;
  194.23 +
  194.24 +
  194.25 +	Bundle(QObject *parent = 0);
  194.26 +	Bundle(const Bundle& other);
  194.27 +	Bundle& operator=(const Bundle& other);
  194.28 +
  194.29 +	void setContent(int,int s,int d,QByteArray m,int opt,QByteArray src,QByteArray dst);
  194.30 +	void setContent(int,int,int,QByteArray,int);
  194.31 +	int getId(); 
  194.32 +	int getSourceId();
  194.33 +	int getDestinationId();
  194.34 +	QDateTime getTime();
  194.35 +	QByteArray getData();
  194.36 +	int getOptions();
  194.37 +	
  194.38 +};
  194.39 +
  194.40 +#endif
  194.41 \ No newline at end of file
   195.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   195.2 +++ b/x86/Win32/bundleManager.cpp	Thu Jun 26 17:39:40 2008 +0100
   195.3 @@ -0,0 +1,423 @@
   195.4 +#include <QtCore>
   195.5 +#include <bundleManager.h>
   195.6 +#include <bundle.h>
   195.7 +#include <readFile.h>
   195.8 +#include <nodeManager.h>
   195.9 +
  195.10 +//#define STORAGESIZE 2000
  195.11 +#define BUNDLEDESTUPDATE 1000
  195.12 +
  195.13 +BundleManager::BundleManager(int id)
  195.14 +{
  195.15 +	ourId=id;
  195.16 +	ReadFile conf;
  195.17 +	STORAGESIZE=conf.getStorageSize();
  195.18 +	fileOption=conf.getUseFileBundles();
  195.19 +	routing=conf.getRouting();
  195.20 +	int WRITETIMER =conf.getWriteToFileTimer();
  195.21 +	storagePath=conf.getStoragePath();
  195.22 +	dir.setPath(storagePath);
  195.23 +	QString msgDirPath=conf.getMsgPath();
  195.24 +	msgDir.setPath(msgDirPath);
  195.25 +	option=conf.getUseFileBundles();
  195.26 +	logOption=conf.getLogOption();
  195.27 +	if(fileOption==1)
  195.28 +	{
  195.29 +		readFromFile();
  195.30 +		writeToFileTimer = new QTimer();
  195.31 +		connect(writeToFileTimer, SIGNAL(timeout()), this, SLOT(saveToFile()));
  195.32 +		writeToFileTimer->start(WRITETIMER);
  195.33 +		emit sendDebugBundleList(bundleList);
  195.34 +	}
  195.35 +	timer = new QTimer();
  195.36 +	showFirstTime=0;
  195.37 +	timer->start(5000);
  195.38 +	connect(timer, SIGNAL(timeout()), this, SLOT(emitDebugList()));
  195.39 +	if(logOption==1)
  195.40 +	{
  195.41 +		log = new MessageFile;
  195.42 +		log->set("transfer.log", 1000000, 5);
  195.43 +	}
  195.44 +
  195.45 +}
  195.46 +
  195.47 +void BundleManager::emitDebugList()
  195.48 +{
  195.49 +	if(showFirstTime==0)
  195.50 +	{
  195.51 +		emit sendDebugBundleList(bundleList);
  195.52 +		showFirstTime=1;
  195.53 +	}
  195.54 +
  195.55 +}
  195.56 +void BundleManager::saveToFile()
  195.57 +{
  195.58 +	QFile file(dir.filePath("bundles.txt"));
  195.59 +	if(file.open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text))
  195.60 +	{
  195.61 +	    QDateTime realTime;
  195.62 +	    realTime=realTime.currentDateTime ();
  195.63 +	    QString time=realTime.toString("MM/dd/yyyy hh:mm:ss");
  195.64 +	    time.append("\n");
  195.65 +	    file.write(time.toAscii ());
  195.66 +	    for (ushort i = 0; i < bundleList.size(); ++i) 
  195.67 +	    {
  195.68 +		QString bundleString;
  195.69 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).id));
  195.70 +		bundleString.append("\t");
  195.71 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).sourceId));
  195.72 +		bundleString.append("\t");
  195.73 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).destinationId));
  195.74 +		bundleString.append("\t");
  195.75 +		bundleString.append(bundleList.at(i).sourceString);
  195.76 +		bundleString.append("\t");
  195.77 +		bundleString.append(bundleList.at(i).destinationString);
  195.78 +		bundleString.append("\t");
  195.79 +		QDateTime Dtime = bundleList.at(i).timeStamp;
  195.80 +		QString time=Dtime.toString("MM/dd/yyyy hh:mm:ss");
  195.81 +		bundleString.append(time);
  195.82 +		bundleString.append("\t");
  195.83 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).options));
  195.84 +		bundleString.append("\t");
  195.85 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).dataLength));
  195.86 +		bundleString.append("\n");
  195.87 +		file.write(bundleString.toAscii ());
  195.88 +	    }
  195.89 +	    file.close();
  195.90 +	}
  195.91 +}
  195.92 +
  195.93 +void BundleManager::readFromFile()
  195.94 +{
  195.95 +	QFile file(dir.filePath("bundles.txt"));
  195.96 +	if (file.open(QIODevice::ReadOnly|QIODevice::Text))
  195.97 +	{
  195.98 +		QString firstLine;
  195.99 +		QString line;
 195.100 +		//First we read date and time
 195.101 +		firstLine=file.readLine();
 195.102 +		//Then we add nodes
 195.103 +		line=file.readLine();
 195.104 +		while(line.size()>0)
 195.105 +		{
 195.106 +			//Parsing node
 195.107 +			int pos;
 195.108 +			QString temp;
 195.109 +			Bundle newBundle;
 195.110 +			//Bundle ID
 195.111 +			pos=line.indexOf("\t",0);
 195.112 +			temp=line.mid(0,pos);
 195.113 +			newBundle.id=temp.toInt(0,10);
 195.114 +			line.remove(0,pos+1);
 195.115 +			//Bundle source ID
 195.116 +			pos=line.indexOf("\t",0);
 195.117 +			temp=line.mid(0,pos);
 195.118 +			newBundle.sourceId=temp.toInt(0,10);
 195.119 +			line.remove(0,pos+1);
 195.120 +			//Bundle destination ID
 195.121 +			pos=line.indexOf("\t",0);
 195.122 +			temp=line.mid(0,pos);
 195.123 +			newBundle.destinationId=temp.toInt(0,10);
 195.124 +			line.remove(0,pos+1);
 195.125 +			//Bundle source string
 195.126 +			pos=line.indexOf("\t",0);
 195.127 +			temp=line.mid(0,pos);
 195.128 +			newBundle.sourceString=temp.toAscii();
 195.129 +			line.remove(0,pos+1);
 195.130 +			//Bundle destination string
 195.131 +			pos=line.indexOf("\t",0);
 195.132 +			temp=line.mid(0,pos);
 195.133 +			newBundle.destinationString=temp.toAscii();
 195.134 +			line.remove(0,pos+1);
 195.135 +			//Bundle timestamp
 195.136 +			pos=line.indexOf("\t",0);
 195.137 +			temp=line.mid(0,pos);
 195.138 +			QDateTime time;
 195.139 +			time=time.fromString(temp,"MM/dd/yyyy hh:mm:ss");
 195.140 +			newBundle.timeStamp=time;
 195.141 +			line.remove(0,pos+1);
 195.142 +			//Bundle options
 195.143 +			pos=line.indexOf("\t",0);
 195.144 +			temp=line.mid(0,pos);
 195.145 +			newBundle.options=temp.toInt(0,10);
 195.146 +			line.remove(0,pos+1);
 195.147 +			//Bundle datalength
 195.148 +			pos=line.indexOf("\t",0);
 195.149 +			temp=line.mid(0,pos);
 195.150 +			newBundle.dataLength=temp.toInt(0,10);
 195.151 +			line.remove(0,pos+1);
 195.152 +			//Adding Node
 195.153 +			QString bundlefilename;
 195.154 +			bundlefilename=QString("%1").arg((int)newBundle.id);
 195.155 +			QFile bundleFile(dir.filePath(bundlefilename));
 195.156 +			if (bundleFile.open(QIODevice::ReadOnly))
 195.157 +			{
 195.158 +			    int size=bundleFile.size();
 195.159 +			    bundleFile.close();
 195.160 +				if(bundleFile.size()>0)
 195.161 +				{
 195.162 +					bundleList.append(newBundle);
 195.163 +				}
 195.164 +			}
 195.165 +
 195.166 +
 195.167 +			line=file.readLine();
 195.168 +		}
 195.169 +		file.close();
 195.170 +	}
 195.171 +}
 195.172 +
 195.173 +QList<Bundle> BundleManager::getBundleList()
 195.174 +{	
 195.175 +	return bundleList;
 195.176 +}
 195.177 +
 195.178 +int BundleManager::getStorageSize()
 195.179 +{	
 195.180 +	int size=0;
 195.181 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 195.182 +	{
 195.183 +		size+=getBundleSize(bundleList.at(i));
 195.184 +	}
 195.185 +	return size;
 195.186 +}
 195.187 +
 195.188 +int BundleManager::getBundleSize(Bundle bundle)
 195.189 +{	
 195.190 +	int size=0;
 195.191 +	size+=sizeof(Bundle);
 195.192 +	size+=bundle.data.size();
 195.193 +	size+=bundle.destinationString.size();
 195.194 +	size+=bundle.sourceString.size();
 195.195 +	return size;
 195.196 +}
 195.197 +
 195.198 +QList<Bundle> BundleManager::getBundleOffer(QList<Node> ourList,QList<Node> encoutnerList,int encounterId)
 195.199 +{
 195.200 +	QList<Bundle> newBundleList;
 195.201 +//	return bundleList;
 195.202 +
 195.203 +	switch(routing)
 195.204 +	{
 195.205 +		case 0:	//EPIDEMIC ROUTING - I like it.. ;)	
 195.206 +				return bundleList; break;
 195.207 +		case 1: //PROPHET ROUTING: GRTR  P_(B,D)>P_(A,D) - A bit more advanced
 195.208 +		//We have to check for each bundle
 195.209 +			for (ushort i = 0; i < bundleList.size(); ++i) 
 195.210 +			{
 195.211 +				float ourProbability = -1.0;
 195.212 +				float encounterProbability = -1.0;
 195.213 +				int bundleDestination = bundleList.at(i).destinationId;
 195.214 +				//First we get our probability
 195.215 +				for (ushort n = 0; n < ourList.size(); ++n) 
 195.216 +				{
 195.217 +					int nodeId=ourList.at(n).nodeId;
 195.218 +					if(nodeId==bundleDestination)
 195.219 +						ourProbability = ourList.at(n).probability;
 195.220 +				}
 195.221 +				//Then we get encouter probability
 195.222 +				for (ushort n = 0; n < encoutnerList.size(); ++n) 
 195.223 +				{
 195.224 +					int nodeId=encoutnerList.at(n).nodeId;
 195.225 +					if(encoutnerList.at(n).nodeId==bundleDestination)
 195.226 +						encounterProbability = encoutnerList.at(n).probability;
 195.227 +				}
 195.228 +				if(((encounterProbability>ourProbability)||(bundleDestination==encounterId))&&(bundleDestination!=0))
 195.229 +				{		
 195.230 +					Bundle tempBundle;
 195.231 +					tempBundle=bundleList.at(i);
 195.232 +					newBundleList.append(tempBundle);
 195.233 +				}
 195.234 +			}
 195.235 +			return newBundleList;
 195.236 +			break;
 195.237 +	}
 195.238 +	return bundleList;
 195.239 +}
 195.240 +
 195.241 +void BundleManager::updateBundlesDestinations(NodeManager* nodeManager)
 195.242 +{
 195.243 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 195.244 +	{
 195.245 +		Bundle tempBundle;
 195.246 +		if(bundleList.at(i).destinationId==0)
 195.247 +		{
 195.248 +			QString source;
 195.249 +			QString destination;
 195.250 +			QString temp;
 195.251 +			int pos;
 195.252 +			tempBundle=bundleList.at(i);
 195.253 +			temp=tempBundle.sourceString;
 195.254 +			pos=temp.indexOf("://",0);
 195.255 +			temp.remove(0,pos+3);
 195.256 +			pos=temp.indexOf("/",0);
 195.257 +			source=temp.mid(0,pos);
 195.258 +			temp=tempBundle.destinationString;
 195.259 +			pos=temp.indexOf("://",0);
 195.260 +			temp.remove(0,pos+3);
 195.261 +			pos=temp.indexOf("/",0);
 195.262 +			destination=temp.mid(0,pos);
 195.263 +			tempBundle.destinationId=nodeManager->getId(destination);
 195.264 +			tempBundle.sourceId=nodeManager->getId(source);
 195.265 +			bundleList.replace(i,tempBundle);
 195.266 +			emit sendDebugBundleList(bundleList);
 195.267 +		}
 195.268 +	} 
 195.269 +
 195.270 +}
 195.271 +
 195.272 +QList<Bundle> BundleManager::prepareBundels(QList<Bundle> receivedList)
 195.273 +{
 195.274 +
 195.275 +	
 195.276 +	QList<Bundle> newBundleList;
 195.277 +	//We have to find and add all the bundles with data to the list
 195.278 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 195.279 +	{
 195.280 +		for (ushort j = 0; j < receivedList.size(); ++j) 
 195.281 +		{
 195.282 +			if(bundleList.at(i).id==receivedList.at(j).id)
 195.283 +				newBundleList.append(bundleList.at(i));
 195.284 +		}	
 195.285 +	}
 195.286 +	return newBundleList; 
 195.287 +}
 195.288 +
 195.289 +
 195.290 +QList<Bundle> BundleManager::prepareBundelRequest(QList<Bundle> receivedList)
 195.291 +{
 195.292 +	//We take only bundles that we don't have
 195.293 +	//Currently no memory restrictions!!!
 195.294 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 195.295 +	{
 195.296 +		for (ushort j = 0; j < receivedList.size(); ++j) 
 195.297 +		{
 195.298 +			if((bundleList.at(i).id==receivedList.at(j).id))//||(bundleList.at(i).options==receivedList.at(j).id))
 195.299 +			{
 195.300 +				receivedList.removeAt(j);
 195.301 +				j=0;
 195.302 +			}
 195.303 +		}	
 195.304 +	}
 195.305 +
 195.306 +	return receivedList; //We have to add some memory restrictions
 195.307 +}
 195.308 +
 195.309 +
 195.310 +
 195.311 +void BundleManager::addBundleList(QList<Bundle> receivedList)
 195.312 +{
 195.313 +	for (ushort n = 0; n < receivedList.size(); ++n)
 195.314 +	{
 195.315 +		Bundle newBundle;
 195.316 +		newBundle=receivedList.at(n);
 195.317 +		addBundle(newBundle);
 195.318 +	}	
 195.319 +}
 195.320 +
 195.321 +void BundleManager::addBundle(Bundle newBundle)
 195.322 +{
 195.323 +	int isInTheList=0;
 195.324 + 	Bundle tempBundle=newBundle;
 195.325 +	//check that we don't have the same bundle
 195.326 +	for (ushort n = 0; n < bundleList.size(); ++n)
 195.327 +	{
 195.328 +		if(tempBundle.id==bundleList.at(n).id)
 195.329 +			isInTheList++;
 195.330 +	}	
 195.331 +	if(isInTheList==0)
 195.332 +	{
 195.333 +		if(logOption==1)
 195.334 +		{
 195.335 +		    QString logString;
 195.336 +		    logString.append("Bundle ID:");	
 195.337 +		    logString.append(QString("%1").arg((int)tempBundle.id));
 195.338 +		    logString.append(" SRC:");
 195.339 +		    logString.append(QString("%1").arg((int)tempBundle.sourceId));
 195.340 +		    logString.append(" ");
 195.341 +		    logString.append(tempBundle.sourceString);
 195.342 +		    logString.append(" DST:");
 195.343 +		    logString.append(QString("%1").arg((int)tempBundle.destinationId));
 195.344 +		    logString.append(" ");
 195.345 +		    logString.append(" Size:");
 195.346 +		    logString.append(QString("%1").arg((int)tempBundle.data.size()));
 195.347 +		    logString.append(tempBundle.destinationString);
 195.348 +		    log->addLog(0,logString);
 195.349 +		}
 195.350 +		if(tempBundle.destinationId==ourId)
 195.351 +		{
 195.352 +			if(tempBundle.options==5)
 195.353 +			{
 195.354 +				//We add a new msg
 195.355 +				QString filename;
 195.356 +				filename.append(tempBundle.timeStamp.toString("MM-dd_hh-mm"));
 195.357 +				filename.append("_ID_");
 195.358 +				filename.append(QString("%1").arg((int)tempBundle.id));
 195.359 +				filename.append("_FROM_");
 195.360 +				filename.append(tempBundle.sourceString);
 195.361 +				QFile file(msgDir.filePath(filename));
 195.362 +				if(file.open(QIODevice::WriteOnly|QIODevice::Truncate))
 195.363 +				{
 195.364 +					file.write(tempBundle.data);
 195.365 +					file.close();
 195.366 +				}
 195.367 +			}
 195.368 +			else
 195.369 +			{
 195.370 +			    QString logString;
 195.371 +			    logString.append("Adding bundle to DTN  ID:");	
 195.372 +			    logString.append(QString("%1").arg((int)tempBundle.id));
 195.373 +			    logString.append(" SRC:");
 195.374 +			    logString.append(QString("%1").arg((int)tempBundle.sourceId));
 195.375 +			    logString.append(" ");
 195.376 +			    logString.append(tempBundle.sourceString);
 195.377 +			    logString.append(" DST:");
 195.378 +			    logString.append(QString("%1").arg((int)tempBundle.destinationId));
 195.379 +			    logString.append(" ");
 195.380 +			    logString.append(tempBundle.destinationString);
 195.381 +			    logString.append(" Size:");
 195.382 +			    logString.append(QString("%1").arg((int)tempBundle.data.size()));
 195.383 +
 195.384 +			    log->addLog(0,logString);
 195.385 +			    emit sendDeliveredBundle(tempBundle);
 195.386 +			}	
 195.387 +		
 195.388 +		}
 195.389 +		//FIFO 
 195.390 +		//We prepare space
 195.391 +	/*	if(getBundleSize(tempBundle)<STORAGESIZE)
 195.392 +		{
 195.393 +			while(((getStorageSize()+getBundleSize(tempBundle))>STORAGESIZE)&&(bundleList.size()>0))
 195.394 +			{
 195.395 +				if(fileOption==1)
 195.396 +				{
 195.397 +					Bundle firstBundle;
 195.398 +					firstBundle=bundleList.first();
 195.399 +					QString filename;
 195.400 +					filename=QString("%1").arg((int)firstBundle.id);
 195.401 +					QFile file(dir.filePath(filename));
 195.402 +					file.remove();
 195.403 +			}
 195.404 +			bundleList.removeFirst();
 195.405 +		}*/
 195.406 +		//Adding recived bundle to storage
 195.407 +		if(fileOption==1)
 195.408 +		{
 195.409 +			QString filename;
 195.410 +			filename=QString("%1").arg((int)tempBundle.id);
 195.411 +			QFile file(dir.filePath(filename));
 195.412 +			if (file.open(QIODevice::WriteOnly |QIODevice::Truncate))
 195.413 +			{
 195.414 +				file.write(tempBundle.data);
 195.415 +				tempBundle.data.clear();
 195.416 +				file.close();
 195.417 +			}
 195.418 +		}
 195.419 +		bundleList.append(tempBundle);
 195.420 +
 195.421 +		
 195.422 +	//DEBUG
 195.423 +	emit sendDebugBundleList(bundleList);
 195.424 +	//emit sendStorage(getStorageSize());
 195.425 +	}
 195.426 +}
   196.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   196.2 +++ b/x86/Win32/bundleManager.h	Thu Jun 26 17:39:40 2008 +0100
   196.3 @@ -0,0 +1,50 @@
   196.4 +#ifndef BUNDLEMANAGER_H
   196.5 +#define BUNDLEMANAGER_H
   196.6 +#include <QtCore>
   196.7 +#include <bundle.h>
   196.8 +#include <node.h>
   196.9 +#include <nodeManager.h>
  196.10 +#include <messageFile.h>
  196.11 +
  196.12 +class BundleManager : public QObject
  196.13 +{
  196.14 +	Q_OBJECT
  196.15 +
  196.16 +
  196.17 +public:
  196.18 +	BundleManager(int);
  196.19 +	QTimer *timer;
  196.20 +	int routing;
  196.21 +	int fileOption;
  196.22 +	int STORAGESIZE;
  196.23 +	int ourId;
  196.24 +	int getStorageSize();
  196.25 +	int getBundleSize(Bundle);
  196.26 +	QTimer *writeToFileTimer;
  196.27 +	QList<Bundle> bundleList;
  196.28 +	QList<Bundle> getBundleList();
  196.29 +	QList<Bundle> getBundleOffer(QList<Node> ourList,QList<Node> encoutnerList,int encounterId);
  196.30 +	QList<Bundle> prepareBundelRequest(QList<Bundle>);
  196.31 +	QList<Bundle> prepareBundels(QList<Bundle>);
  196.32 +	QDir dir;
  196.33 +	QDir msgDir;
  196.34 +	QString storagePath;
  196.35 +	int option;
  196.36 +	int logOption;
  196.37 +	MessageFile *log;
  196.38 +	bool showFirstTime;
  196.39 +	signals:
  196.40 +	void sendDeliveredBundle(Bundle);
  196.41 +	void sendStorage(int);
  196.42 +	void sendDebugBundleList(QList<Bundle>);
  196.43 +public slots:
  196.44 +	void updateBundlesDestinations(NodeManager*);
  196.45 +	void addBundle(Bundle);
  196.46 +	void addBundleList(QList<Bundle>);
  196.47 +	void saveToFile();
  196.48 +	void readFromFile();
  196.49 +	void emitDebugList();
  196.50 +
  196.51 +
  196.52 +};
  196.53 +#endif
   197.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   197.2 +++ b/x86/Win32/connection.cpp	Thu Jun 26 17:39:40 2008 +0100
   197.3 @@ -0,0 +1,624 @@
   197.4 +#include <QtCore>
   197.5 +#include <connection.h>
   197.6 +#include <tlv.h>
   197.7 +#include <messageFile.h>
   197.8 +#include <dataPacket.h>
   197.9 +#include <readFile.h>
  197.10 +
  197.11 +#define NOW 100
  197.12 +
  197.13 +//#define HELLO_TIMER 60000
  197.14 +//#define INITIATOR_TIMER 60000
  197.15 +//#define LISTENER_TIMER 60000
  197.16 +//#define HELLOT 10000
  197.17 +//#define BROADCAST 1000
  197.18 +
  197.19 +//Connection states
  197.20 +#define WAIT_NB 0
  197.21 +#define HELLO 1
  197.22 +#define INFO_EXCH 2
  197.23 +#define WAIT_INFO 2
  197.24 +
  197.25 +
  197.26 +//Hello procedure states
  197.27 +#define SENDSYN 1
  197.28 +#define WAITSYNACK 2
  197.29 +#define WAITACK 4
  197.30 +#define ESTABLISHED 3
  197.31 +#define MASTER 4
  197.32 +#define SLAVE 5
  197.33 +
  197.34 +//Initiator states
  197.35 +#define SENDDICTIONARY 1
  197.36 +#define SENDRIB 2
  197.37 +#define SENDBOFFER 4
  197.38 +#define WAITBREQ 5
  197.39 +#define TIMEOUT 16
  197.40 +#define SENDBUNDLE 7
  197.41 +#define WAITFORBREQUEST 8
  197.42 +#define RESETLINK 19
  197.43 +#define IDLESTATE 110
  197.44 +
  197.45 +//Listener states
  197.46 +#define WAITFORDICTIONARY 1
  197.47 +#define WAITFORRIB 2
  197.48 +#define WAITFORBOFFER 3
  197.49 +#define SENDBREQUEST 4
  197.50 +#define WAITFORBUNDLES 5
  197.51 +
  197.52 +
  197.53 +
  197.54 +Connection::Connection(int connectId,int nodeId,QString nodeName,NodeManager* nodeManager,BundleManager* bundleManager,QObject *parent)
  197.55 +
  197.56 +{
  197.57 +	ReadFile init;
  197.58 +	HELLO_TIMER=init.getHelloTimer();
  197.59 +	INITIATOR_TIMER=init.getInitiatorTimer();
  197.60 +	LISTENER_TIMER=init.getListenerTimer();
  197.61 +	HELLOT=init.getHello();
  197.62 +	BROADCAST=init.getBroadcastTimer();
  197.63 +	continiusUpdate=init.getContiniusUpdate();
  197.64 +	update=0;
  197.65 +	
  197.66 +/*	QString logString;
  197.67 +	logString.append("I am created:");
  197.68 +	logString.append(QString("%1").arg((int)connectId));
  197.69 +	//log->addLog(0,logString);
  197.70 +*/	
  197.71 +	encounterNodeId=0;
  197.72 +	//State variables
  197.73 +	connectionState=HELLO;
  197.74 +	helloState=SENDSYN;
  197.75 +	initiatorState=IDLESTATE;
  197.76 +	listenerState=IDLESTATE;
  197.77 +	//Define our node manager
  197.78 +	connectionNodeManager=nodeManager;
  197.79 +	//Define our bundle manager
  197.80 +	connectionBundleManager=bundleManager;
  197.81 +	//Set up unique connection ID
  197.82 +//	connectionId=rand();
  197.83 +//	connectionId=connectionId%1000;
  197.84 +	connectionId=connectId;
  197.85 +	//Set up connectionNodeName
  197.86 +	connectionNodeName=nodeName;
  197.87 +	//Set up connectionNodeName
  197.88 +	connectionNodeId=nodeId;
  197.89 +	//Create and connect Hello Timer
  197.90 +    helloTimer = new QTimer(this);
  197.91 +    connect(helloTimer, SIGNAL(timeout()), this, SLOT(helloProcedure()));
  197.92 +    helloTimer->start(rand()%HELLO);
  197.93 +
  197.94 +	//Create and connect Initiator Timer
  197.95 +    initiatorTimer = new QTimer(this);
  197.96 +    connect(initiatorTimer, SIGNAL(timeout()), this, SLOT(initiatorProcedure()));
  197.97 +    //initiatorTimer->start(INITIATOR_TIMER);
  197.98 +
  197.99 +	//Create and connect Listener Timer
 197.100 +    listenerTimer = new QTimer(this);
 197.101 +    connect(listenerTimer, SIGNAL(timeout()), this, SLOT(listenerProcedure()));
 197.102 +    //listenerTimer->start(LISTENER_TIMER);
 197.103 +
 197.104 +
 197.105 +
 197.106 +
 197.107 +	//Create and connect TLV translator
 197.108 +	TLVTranslator = new TLV;
 197.109 +
 197.110 +	//Main external datastreams
 197.111 +	connect(TLVTranslator,SIGNAL(sendDatagram(QByteArray)),this,SLOT(forwardSlotDatagram(QByteArray)));
 197.112 +	connect(this,SIGNAL(forwardSignalDatagram(QByteArray)),TLVTranslator,SLOT(receiveDatagram(QByteArray)));
 197.113 +
 197.114 +	//Hello procedure connections
 197.115 +    connect(this, SIGNAL(sendHello(Hello)),TLVTranslator,SLOT(receiveHello(Hello)));
 197.116 +    connect(TLVTranslator, SIGNAL(sendHello(Hello)),this,SLOT(receiveHello(Hello)));
 197.117 +
 197.118 +	//Initiators procedure connections
 197.119 +    connect(this, SIGNAL(sendDictionary(QList<Node>)),TLVTranslator,SLOT(createDictionary(QList<Node>)));
 197.120 +    connect(this, SIGNAL(sendRIB(QList<Node>)),TLVTranslator,SLOT(createRIB(QList<Node>)));
 197.121 +    connect(this, SIGNAL(sendBundleOffer(QList<Bundle>)),TLVTranslator,SLOT(createBundleOffer(QList<Bundle>)));
 197.122 +    connect(TLVTranslator, SIGNAL(sendBundleRequest(QList<Bundle>)),this,SLOT(receiveBundleRequest(QList<Bundle>)));
 197.123 +	connect(this, SIGNAL(sendBundles(QList<Bundle>)),TLVTranslator,SLOT(createBundleData(QList<Bundle>)));
 197.124 +
 197.125 +
 197.126 +	//Listener procedure connections
 197.127 +    connect(TLVTranslator, SIGNAL(sendDictionary(QList<Node>)),this,SLOT(receiveDictionary(QList<Node>)));
 197.128 +    connect(TLVTranslator, SIGNAL(sendRIB(QList<Node>)),this,SLOT(receiveRIB(QList<Node>)));
 197.129 +    connect(TLVTranslator, SIGNAL(sendBundleOffer(QList<Bundle>)),this,SLOT(receiveBundleOffer(QList<Bundle>)));
 197.130 +    connect(this, SIGNAL(sendBundleRequest(QList<Bundle>)),TLVTranslator,SLOT(createBundleRequest(QList<Bundle>)));
 197.131 +    connect(TLVTranslator, SIGNAL(sendBundleData(QList<Bundle>)),this,SLOT(receiveBundles(QList<Bundle>)));
 197.132 +
 197.133 +
 197.134 +
 197.135 +
 197.136 +	//Fork Initiator and Listener
 197.137 +//	initiator = new Initiator;
 197.138 +//	listener	= new Listener;
 197.139 +	//connect them internally for development purpose only
 197.140 +
 197.141 +}
 197.142 +
 197.143 +
 197.144 +Connection::~Connection(void)
 197.145 +{
 197.146 +	if(helloTimer!=NULL)
 197.147 +	{
 197.148 +		helloTimer->stop();
 197.149 +		delete helloTimer;
 197.150 +	}
 197.151 +		if(initiatorTimer!=NULL)
 197.152 +	{
 197.153 +		initiatorTimer->stop();
 197.154 +		delete initiatorTimer;
 197.155 +	}
 197.156 +			if(listenerTimer!=NULL)
 197.157 +	{
 197.158 +		listenerTimer->stop();
 197.159 +		delete listenerTimer;
 197.160 +	}	
 197.161 +	if(TLVTranslator!=NULL)
 197.162 +	{
 197.163 +		delete TLVTranslator; 
 197.164 +	} 
 197.165 +
 197.166 +}
 197.167 +
 197.168 +
 197.169 +void Connection::helloProcedure()
 197.170 +{
 197.171 +	helloTimer->stop();
 197.172 +	//Prepare new Hello Object
 197.173 +	Hello newHello;
 197.174 +	switch(helloState)
 197.175 +	{
 197.176 +		case SENDSYN:	//log->addLog(connectionId,(QString)"Hello Procedure:SENDSYN");
 197.177 +						newHello.setFunction(SYN);
 197.178 +						newHello.setTimer(HELLO_TIMER);
 197.179 +						newHello.setSenderName(connectionNodeName);
 197.180 +						newHello.senderId=connectionNodeId;
 197.181 +						newHello.senderType=0;
 197.182 +						helloState=WAITSYNACK;
 197.183 +						emit sendHello(newHello);
 197.184 +			
 197.185 +		break;			
 197.186 +		default	:		//log->addLog(connectionId,(QString)"Hello Procedure:Default");
 197.187 +						helloState=SENDSYN;
 197.188 +						connectionState=HELLO;
 197.189 +						initiatorState=IDLESTATE;
 197.190 +						listenerState=IDLESTATE;
 197.191 +						listenerTimer->stop();
 197.192 +						initiatorTimer->stop();		
 197.193 +		break;
 197.194 +		}	
 197.195 +		helloTimer->start(HELLO_TIMER);
 197.196 +}
 197.197 +
 197.198 +
 197.199 +
 197.200 +void Connection::receiveHello(Hello receivedHello)
 197.201 +{
 197.202 +	int helloType=receivedHello.getFunction();
 197.203 +	helloTimer->stop();
 197.204 +	
 197.205 +	//Prepare new Hello object
 197.206 +	Hello newHello;
 197.207 +	
 197.208 +	switch(helloType)
 197.209 +	{
 197.210 +	case SYNACK:	//log->addLog(connectionId,(QString)"Receive Hello:SYNACK");
 197.211 +					//Resolving a ID form encountered node
 197.212 +					encounterNodeId=receivedHello.senderId;
 197.213 +					encounterNodeName=receivedHello.senderName;
 197.214 +					encounterNodeType=receivedHello.senderType;
 197.215 +					if(update==0)
 197.216 +					{
 197.217 +						connectionNodeManager->encounterNode(encounterNodeId,encounterNodeType,encounterNodeName);
 197.218 +						if(continiusUpdate==0)
 197.219 +							update=1;
 197.220 +					}
 197.221 +
 197.222 +					//Setting our own ID
 197.223 +					newHello.setFunction(ACK);
 197.224 +					newHello.setTimer(HELLO_TIMER);
 197.225 +					newHello.setSenderName(connectionNodeName);
 197.226 +					newHello.senderId=connectionNodeId;
 197.227 +					newHello.senderType=0;
 197.228 +					emit sendHello(newHello);
 197.229 +					helloState=SLAVE;
 197.230 +					//Invoke Initiator and Listener
 197.231 +					helloTimer->stop();
 197.232 +					initiatorState=SENDDICTIONARY;
 197.233 +					listenerState=WAITFORDICTIONARY;
 197.234 +					initiatorTimer->start(NOW);
 197.235 +					listenerTimer->start(LISTENER_TIMER);
 197.236 +					///initiatorProcedure();
 197.237 +					//////////////////////////////
 197.238 +					
 197.239 +	break;
 197.240 +	case SYN:		//log->addLog(connectionId,(QString)"Receive Hello:SYN");
 197.241 +					newHello.setFunction(SYNACK);
 197.242 +					newHello.setTimer(HELLO_TIMER);
 197.243 +					newHello.setSenderName(connectionNodeName);
 197.244 +					newHello.senderId=connectionNodeId;
 197.245 +					newHello.senderType=0;
 197.246 +					helloState=WAITACK;helloTimer->start(HELLO_TIMER);
 197.247 +					emit sendHello(newHello);
 197.248 +	break;
 197.249 +	case ACK:		//log->addLog(connectionId,(QString)"Receive Hello:ACK");
 197.250 +					//Resolving a ID form encountered node
 197.251 +					encounterNodeId=receivedHello.senderId;
 197.252 +					encounterNodeName=receivedHello.senderName;
 197.253 +					encounterNodeType=receivedHello.senderType;
 197.254 +					if(update==0)
 197.255 +					{
 197.256 +						connectionNodeManager->encounterNode(encounterNodeId,encounterNodeType,encounterNodeName);
 197.257 +						if(continiusUpdate==0)
 197.258 +							update=1;
 197.259 +					}
 197.260 +					helloState=MASTER;
 197.261 +					//Invoke Initiator and Listener
 197.262 +					helloTimer->stop();
 197.263 +					initiatorState=SENDDICTIONARY;
 197.264 +					listenerState=WAITFORDICTIONARY;
 197.265 +					initiatorTimer->start(NOW);
 197.266 +					listenerTimer->start(LISTENER_TIMER);
 197.267 +					//initiatorProcedure();
 197.268 +					/////////////////////////////////////
 197.269 +	break;
 197.270 +	case RSTACK:	//log->addLog(connectionId,(QString)"Receive Hello:RSTACK");
 197.271 +					helloState=SENDSYN;
 197.272 +					connectionState=HELLO;helloTimer->start(HELLO_TIMER);
 197.273 +	break;
 197.274 +	default:		//log->addLog(connectionId,(QString)"Receive Hello:Default");
 197.275 +					helloState=SENDSYN;
 197.276 +					connectionState=HELLO;helloTimer->start(HELLO_TIMER);
 197.277 +	break;
 197.278 +	}
 197.279 +	
 197.280 +
 197.281 +}
 197.282 +
 197.283 +void Connection::listenerProcedure()
 197.284 +{
 197.285 +	listenerTimer->stop();
 197.286 +	switch(initiatorState)
 197.287 +		{
 197.288 +		case WAITFORDICTIONARY://log->addLog(connectionId,(QString)"Listener:DICTIONARY timeout...");
 197.289 +							//we reset the link
 197.290 +							initiatorState=IDLESTATE;
 197.291 +							listenerState=IDLESTATE;
 197.292 +							connectionState=HELLO;
 197.293 +							helloState=SENDSYN;
 197.294 +							listenerTimer->stop();
 197.295 +							initiatorTimer->stop();
 197.296 +							helloTimer->start(HELLO_TIMER);
 197.297 +							
 197.298 +			
 197.299 +		break;			
 197.300 +		case WAITFORRIB:	//log->addLog(connectionId,(QString)"Listener:RIB timeout...");
 197.301 +							//we reset the link
 197.302 +							initiatorState=IDLESTATE;
 197.303 +							listenerState=IDLESTATE;
 197.304 +							connectionState=HELLO;
 197.305 +							helloState=SENDSYN;
 197.306 +							listenerTimer->stop();
 197.307 +							initiatorTimer->stop();
 197.308 +							helloTimer->start(HELLO_TIMER);
 197.309 +			
 197.310 +		break;
 197.311 +		case WAITFORBOFFER:	//log->addLog(connectionId,(QString)"Listener:BOFFER timeout...");
 197.312 +							//we reset the link
 197.313 +							initiatorState=IDLESTATE;
 197.314 +							listenerState=IDLESTATE;
 197.315 +							connectionState=HELLO;
 197.316 +							helloState=SENDSYN;
 197.317 +							listenerTimer->stop();
 197.318 +							initiatorTimer->stop();
 197.319 +							helloTimer->start(HELLO_TIMER);
 197.320 +			
 197.321 +		break;
 197.322 +		case WAITFORBREQUEST://log->addLog(connectionId,(QString)"Listener:BREQ Timeout...");
 197.323 +							//we reset the link
 197.324 +							initiatorState=IDLESTATE;
 197.325 +							listenerState=IDLESTATE;
 197.326 +							connectionState=HELLO;
 197.327 +							helloState=SENDSYN;
 197.328 +							listenerTimer->stop();
 197.329 +							initiatorTimer->stop();
 197.330 +							helloTimer->start(HELLO_TIMER);
 197.331 +			
 197.332 +		break;
 197.333 +		case WAITFORBUNDLES://log->addLog(connectionId,(QString)"Listener:BUNDLES Timeout...");
 197.334 +							//we reset the link
 197.335 +							initiatorState=IDLESTATE;
 197.336 +							listenerState=IDLESTATE;
 197.337 +							connectionState=HELLO;
 197.338 +							helloState=SENDSYN;
 197.339 +							listenerTimer->stop();
 197.340 +							initiatorTimer->stop();
 197.341 +							helloTimer->start(HELLO_TIMER);
 197.342 +							listenerState=RESETLINK;
 197.343 +			
 197.344 +		break;
 197.345 +		case IDLESTATE:		//log->addLog(connectionId,(QString)"Listener:Idle state...");
 197.346 +							//we reset the link
 197.347 +							initiatorState=IDLESTATE;
 197.348 +							listenerState=IDLESTATE;
 197.349 +							connectionState=HELLO;
 197.350 +							helloState=SENDSYN;
 197.351 +							listenerTimer->stop();
 197.352 +							initiatorTimer->stop();
 197.353 +							helloTimer->start(HELLO_TIMER);
 197.354 +														
 197.355 +							
 197.356 +		break;
 197.357 +		case RESETLINK:		//log->addLog(connectionId,(QString)"Listener:Link problem...");
 197.358 +							//we reset the link
 197.359 +							initiatorState=IDLESTATE;
 197.360 +							listenerState=IDLESTATE;
 197.361 +							connectionState=HELLO;
 197.362 +							helloState=SENDSYN;
 197.363 +							listenerTimer->stop();
 197.364 +							initiatorTimer->stop();
 197.365 +							helloTimer->start(HELLO_TIMER);
 197.366 +			
 197.367 +		break;
 197.368 +		default	://log->addLog(connectionId,(QString)"Hm Listener Timeout default...");		
 197.369 +		break;
 197.370 +		}	
 197.371 +}
 197.372 +
 197.373 +
 197.374 +void Connection::initiatorProcedure()
 197.375 +{
 197.376 +	initiatorTimer->stop();
 197.377 +	QList<Node> nodeList;
 197.378 +	QList<Bundle> bundleList;
 197.379 +	switch(initiatorState)
 197.380 +		{
 197.381 +		case SENDDICTIONARY://log->addLog(connectionId,(QString)"Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER");
 197.382 +							nodeList = connectionNodeManager->getNodeList();
 197.383 +							initiatorState=SENDRIB;
 197.384 +							emit sendDictionary(nodeList);
 197.385 +							nodeList = connectionNodeManager->getRIBNodeList();//We have to use only nodes with RIB
 197.386 +							initiatorState=SENDBOFFER;
 197.387 +							emit sendRIB(nodeList);
 197.388 +							bundleList = connectionBundleManager->getBundleOffer(connectionNodeManager->getNodeList(),lastReceivedRIB,encounterNodeId);
 197.389 +							emit sendBundleOffer(bundleList);
 197.390 +							initiatorState=WAITBREQ;
 197.391 +							initiatorTimer->start(INITIATOR_TIMER);
 197.392 +		
 197.393 +		break;
 197.394 +		case WAITFORBREQUEST://log->addLog(connectionId,(QString)"Initiator:BREQ Timeout");
 197.395 +							//we reset the link
 197.396 +							initiatorState=IDLESTATE;
 197.397 +							listenerState=IDLESTATE;
 197.398 +							connectionState=HELLO;
 197.399 +							helloState=SENDSYN;
 197.400 +							listenerTimer->stop();
 197.401 +							initiatorTimer->stop();
 197.402 +							helloTimer->start(HELLO_TIMER);
 197.403 +			
 197.404 +		break;
 197.405 +		case IDLESTATE:		//log->addLog(connectionId,(QString)"Initiator:Idle state...");
 197.406 +							//we reset the link
 197.407 +							initiatorState=IDLESTATE;
 197.408 +							listenerState=IDLESTATE;
 197.409 +							connectionState=HELLO;
 197.410 +							helloState=SENDSYN;
 197.411 +							listenerTimer->stop();
 197.412 +							initiatorTimer->stop();
 197.413 +							helloTimer->start(HELLO_TIMER);
 197.414 +
 197.415 +			
 197.416 +		break;
 197.417 +		case RESETLINK:		//log->addLog(connectionId,(QString)"Initiator:Link problem...");
 197.418 +							//we reset the link
 197.419 +							initiatorState=IDLESTATE;
 197.420 +							listenerState=IDLESTATE;
 197.421 +							connectionState=HELLO;
 197.422 +							helloState=SENDSYN;
 197.423 +							listenerTimer->stop();
 197.424 +							initiatorTimer->stop();
 197.425 +							helloTimer->start(HELLO_TIMER);
 197.426 +			
 197.427 +		break;
 197.428 +		default	://log->addLog(connectionId,(QString)"Hm default timeout initiator...");		
 197.429 +		break;
 197.430 +		}	
 197.431 + }
 197.432 +
 197.433 +
 197.434 +void Connection::receiveBundleOffer(QList<Bundle> receivedList) //LISTENER
 197.435 +{
 197.436 +	listenerTimer->stop();
 197.437 +	bundleRequestList=connectionBundleManager->prepareBundelRequest(receivedList);
 197.438 +	//log->addLog(connectionId,(QString)"Listener:Received Bundle Offer");
 197.439 +//	we send only one bundle request
 197.440 +	if(bundleRequestList.size()>0)
 197.441 +	{
 197.442 +		//log->addLog(connectionId,(QString)"Listener:Sending Full bundle request...");
 197.443 +		QList<Bundle> dummyList;
 197.444 +		dummyList.append(bundleRequestList.first());
 197.445 +		bundleRequestList.removeFirst();
 197.446 +		listenerState=WAITFORBUNDLES;
 197.447 +		listenerTimer->start(LISTENER_TIMER);
 197.448 +		emit sendBundleRequest(dummyList);
 197.449 +
 197.450 +	}
 197.451 +	else 
 197.452 +	{
 197.453 +		//log->addLog(connectionId,(QString)"Listener:Sending Empty bundle request...");
 197.454 +		if(initiatorState==IDLESTATE)
 197.455 +		{	
 197.456 +			//we reset the link
 197.457 +			initiatorState=IDLESTATE;
 197.458 +			listenerState=IDLESTATE;
 197.459 +			listenerTimer->stop();
 197.460 +			initiatorTimer->stop();
 197.461 +
 197.462 +			if(helloState==MASTER)
 197.463 +			{
 197.464 +				helloState=SENDSYN;
 197.465 +				helloTimer->start(NOW);
 197.466 +				//log->addLog(connectionId,(QString)"Listener(receiveBOffer):We can restart connection...(MASTER)");
 197.467 +
 197.468 +			}
 197.469 +			else
 197.470 +			{
 197.471 +				helloState=SENDSYN;
 197.472 +				helloTimer->start(HELLO_TIMER);
 197.473 +				//log->addLog(connectionId,(QString)"Listener(receiveBOffer):We can not restart connection(SLAVE)");
 197.474 +
 197.475 +			}
 197.476 +		}
 197.477 +		else
 197.478 +		{
 197.479 +			//log->addLog(connectionId,(QString)"Listener(receiveBOffer):But we can not restart connection...");
 197.480 +			listenerState=IDLESTATE;
 197.481 +			listenerTimer->stop();
 197.482 +		}
 197.483 +		emit sendBundleRequest(bundleRequestList);
 197.484 +		
 197.485 +	}
 197.486 +
 197.487 +}
 197.488 +
 197.489 +void Connection::receiveBundles(QList<Bundle> receivedList) //LISTENER
 197.490 +{
 197.491 +	//log->addLog(connectionId,(QString)"Listener:Received Bundles...");
 197.492 +	listenerTimer->stop();
 197.493 +	connectionBundleManager->addBundleList(receivedList);
 197.494 +//	we send only one bundle request
 197.495 +	if(bundleRequestList.size()>0)
 197.496 +
 197.497 +	{
 197.498 +		//log->addLog(connectionId,(QString)"Listener:Requesting Bundles...");
 197.499 +		QList<Bundle> dummyList;
 197.500 +		dummyList.append(bundleRequestList.first());
 197.501 +		bundleRequestList.removeFirst();
 197.502 +		listenerState=WAITFORBUNDLES;
 197.503 +		listenerTimer->start(LISTENER_TIMER);
 197.504 +		emit sendBundleRequest(dummyList);
 197.505 +
 197.506 +	}
 197.507 +	else //we finish comunication by sending empty bundle request
 197.508 +	{
 197.509 +		//log->addLog(connectionId,(QString)"Listener:No more needed Bundles...");
 197.510 +		if(initiatorState==IDLESTATE)
 197.511 +		{	
 197.512 +			//we reset the link
 197.513 +			initiatorState=IDLESTATE;
 197.514 +			listenerState=IDLESTATE;
 197.515 +			listenerTimer->stop();
 197.516 +			initiatorTimer->stop();
 197.517 +
 197.518 +			if(helloState==MASTER)
 197.519 +			{
 197.520 +				helloState=SENDSYN;
 197.521 +				helloTimer->start(HELLOT);
 197.522 +				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can restart connection...(MASTER)");
 197.523 +
 197.524 +			}
 197.525 +			else
 197.526 +			{
 197.527 +				//helloState=SENDSYN;
 197.528 +				//helloTimer->start(HELLO_TIMER);
 197.529 +				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can not restart connection(SLAVE)");
 197.530 +
 197.531 +			}
 197.532 +		}
 197.533 +		else
 197.534 +		{
 197.535 +			//log->addLog(connectionId,(QString)"Listener(receiveBundles):But we can not restart connection...");
 197.536 +			listenerState=IDLESTATE;
 197.537 +			listenerTimer->stop();
 197.538 +		
 197.539 +		}
 197.540 +		emit sendBundleRequest(bundleRequestList);
 197.541 +		
 197.542 +	}
 197.543 +		
 197.544 +}
 197.545 +
 197.546 +void Connection::receiveBundleRequest(QList<Bundle> receivedList) //INITIATOR
 197.547 +{
 197.548 +	initiatorTimer->stop();
 197.549 +	QList<Bundle> bundleList;
 197.550 +	if(receivedList.size()>0)
 197.551 +	{
 197.552 +		bundleList=connectionBundleManager->prepareBundels(receivedList);
 197.553 +		initiatorState=WAITBREQ;
 197.554 +		//log->addLog(connectionId,(QString)"Initiator:Sending bundles");
 197.555 +		initiatorTimer->start(INITIATOR_TIMER);
 197.556 +		emit sendBundles(bundleList);
 197.557 +	}
 197.558 +	else
 197.559 +	{
 197.560 +		//log->addLog(connectionId,(QString)"Initiator:No more requested bundles");
 197.561 +		if(listenerState==IDLESTATE)
 197.562 +		{	
 197.563 +			//we reset the link
 197.564 +			if(helloState==MASTER)
 197.565 +			{
 197.566 +				helloState=SENDSYN;
 197.567 +				helloTimer->start(HELLOT);
 197.568 +				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can restart connection...");
 197.569 +
 197.570 +			}
 197.571 +			else
 197.572 +			{
 197.573 +				helloState=SENDSYN;
 197.574 +				helloTimer->start(HELLO_TIMER);
 197.575 +				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can not restart connection(SLAVE)");
 197.576 +
 197.577 +			}
 197.578 +		}
 197.579 +		else
 197.580 +		{
 197.581 +			//log->addLog(connectionId,(QString)"Initiator:But we can not restart connection...");
 197.582 +			initiatorState=IDLESTATE;
 197.583 +			initiatorTimer->stop();
 197.584 +		}
 197.585 +	}
 197.586 +	
 197.587 +}
 197.588 +
 197.589 +
 197.590 +void Connection::receiveDictionary(QList<Node> receivedList)
 197.591 +{
 197.592 +	listenerTimer->stop();
 197.593 +	connectionNodeManager->addDictionary(connectionNodeId,receivedList);
 197.594 +	listenerState=WAITFORRIB;
 197.595 +	//log->addLog(connectionId,(QString)"Listener:Received dictionary");
 197.596 +	listenerTimer->start(LISTENER_TIMER);
 197.597 +
 197.598 +}
 197.599 +
 197.600 +void Connection::receiveRIB(QList<Node> receivedList)
 197.601 +{
 197.602 +	listenerTimer->stop();
 197.603 +	connectionNodeManager->addRIB(receivedList,encounterNodeId);
 197.604 +	listenerState=WAITFORBOFFER;
 197.605 +	//Needed for Routing
 197.606 +	lastReceivedRIB=receivedList;
 197.607 +	//log->addLog(connectionId,(QString)"Listener:Received RIB");
 197.608 +	listenerTimer->start(LISTENER_TIMER);
 197.609 +}
 197.610 +
 197.611 +
 197.612 +
 197.613 +void Connection::receiveDatagram(DataPacket dataPacket)
 197.614 +{
 197.615 +	////log->addLog(connectionId,(QString)"Received datagram...");
 197.616 +	emit forwardSignalDatagram(dataPacket.data);
 197.617 +}
 197.618 +
 197.619 +
 197.620 +void Connection::forwardSlotDatagram(QByteArray datagram)
 197.621 +{
 197.622 +	DataPacket dataPacket;
 197.623 +	////log->addLog(connectionId,(QString)"Sended datagram...");
 197.624 +	dataPacket.data = datagram;
 197.625 +	dataPacket.id = connectionId;
 197.626 +	emit sendDataPacket(dataPacket);
 197.627 +}
   198.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   198.2 +++ b/x86/Win32/connection.h	Thu Jun 26 17:39:40 2008 +0100
   198.3 @@ -0,0 +1,72 @@
   198.4 +#ifndef CONNECTION_H
   198.5 +#define CONNECTION_H
   198.6 +#include <QtCore>
   198.7 +#include <hello.h>
   198.8 +#include <tlv.h>
   198.9 +#include <nodeManager.h>
  198.10 +#include <bundleManager.h>
  198.11 +#include <dataPacket.h>
  198.12 +
  198.13 +
  198.14 +class Connection: public QObject
  198.15 +{
  198.16 +	Q_OBJECT 
  198.17 +	public:
  198.18 +		int HELLO_TIMER;
  198.19 +		int INITIATOR_TIMER;
  198.20 +		int LISTENER_TIMER;
  198.21 +		int HELLOT;
  198.22 +		int BROADCAST;
  198.23 +		bool update;
  198.24 +		int continiusUpdate;
  198.25 +
  198.26 +		int connectionState;
  198.27 +		int helloState;
  198.28 +		int initiatorState;
  198.29 +		int listenerState;
  198.30 +		int encounterNodeId;
  198.31 +		int encounterNodeType;
  198.32 +		QString encounterNodeName;
  198.33 +		QTimer *helloTimer; 		
  198.34 +		QTimer *initiatorTimer; 		
  198.35 +		QTimer *listenerTimer; 		
  198.36 +		//TLV
  198.37 +		TLV *TLVTranslator; 
  198.38 +		Connection(int,int ,QString ,NodeManager* ,BundleManager* ,QObject *parent = 0);
  198.39 +		~Connection(void);
  198.40 +		QString connectionNodeName;
  198.41 +		QList<Node> lastReceivedRIB;
  198.42 +		QList<Bundle> bundleRequestList;
  198.43 +		int connectionId;
  198.44 +		int connectionNodeId;
  198.45 +		NodeManager* connectionNodeManager;
  198.46 +		BundleManager* connectionBundleManager;
  198.47 +//		Listner *listener;
  198.48 +		
  198.49 +
  198.50 +	signals:
  198.51 +		void sendDataPacket(DataPacket);
  198.52 +		
  198.53 +		void sendHello(Hello);
  198.54 +		void sendDictionary(QList<Node>);
  198.55 +		void sendRIB(QList<Node>);
  198.56 +		void forwardSignalDatagram(QByteArray);
  198.57 +		void sendBundleOffer(QList<Bundle>);
  198.58 +		void sendBundleRequest(QList<Bundle>);
  198.59 +		void sendBundles(QList<Bundle>);
  198.60 +	public slots:
  198.61 +		void receiveDatagram(DataPacket);
  198.62 +		void forwardSlotDatagram(QByteArray);
  198.63 +		void helloProcedure();
  198.64 +		void listenerProcedure();
  198.65 +		void initiatorProcedure();
  198.66 +		void receiveHello(Hello);
  198.67 +		void receiveDictionary(QList<Node>);
  198.68 +		void receiveRIB(QList<Node>);
  198.69 +		void receiveBundleOffer(QList<Bundle>);
  198.70 +		void receiveBundleRequest(QList<Bundle>);
  198.71 +		void receiveBundles(QList<Bundle>);
  198.72 +
  198.73 +
  198.74 +};
  198.75 +#endif
  198.76 \ No newline at end of file
   199.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   199.2 +++ b/x86/Win32/connections.log	Thu Jun 26 17:39:40 2008 +0100
   199.3 @@ -0,0 +1,438 @@
   199.4 +08/11/2006 17:11:36.240  000>> New connection(C):192.168.10.104
   199.5 +08/11/2006 17:11:37.602  000>> Drop connection(C):192.168.10.44
   199.6 +08/11/2006 17:11:38.604  000>> Drop connection(C):192.168.10.44
   199.7 +08/11/2006 17:11:39.605  000>> Drop connection(C):192.168.10.44
   199.8 +08/11/2006 17:11:40.607  000>> Drop connection(C):192.168.10.44
   199.9 +08/11/2006 17:11:41.708  000>> Drop connection(C):192.168.10.44
  199.10 +08/11/2006 17:11:42.609  000>> Drop connection(C):192.168.10.44
  199.11 +08/11/2006 17:15:35.254  000>> New connection(C):192.168.10.104
  199.12 +08/11/2006 17:15:36.135  000>> Drop connection(C):192.168.10.44
  199.13 +08/11/2006 17:15:37.137  000>> Drop connection(C):192.168.10.44
  199.14 +08/11/2006 17:15:38.138  000>> Drop connection(C):192.168.10.44
  199.15 +08/11/2006 17:15:39.140  000>> Drop connection(C):192.168.10.44
  199.16 +08/11/2006 17:15:40.141  000>> Drop connection(C):192.168.10.44
  199.17 +08/11/2006 17:15:41.122  000>> Drop connection(C):192.168.10.44
  199.18 +08/11/2006 17:15:42.144  000>> Drop connection(C):192.168.10.44
  199.19 +08/11/2006 17:15:43.125  000>> Drop connection(C):192.168.10.44
  199.20 +08/11/2006 17:15:44.147  000>> Drop connection(C):192.168.10.44
  199.21 +08/11/2006 17:15:45.148  000>> Drop connection(C):192.168.10.44
  199.22 +08/11/2006 17:15:46.130  000>> Drop connection(C):192.168.10.44
  199.23 +08/11/2006 17:15:47.141  000>> Drop connection(C):192.168.10.44
  199.24 +08/11/2006 17:15:48.142  000>> Drop connection(C):192.168.10.44
  199.25 +08/11/2006 17:15:49.134  000>> Drop connection(C):192.168.10.44
  199.26 +08/11/2006 17:15:50.135  000>> Drop connection(C):192.168.10.44
  199.27 +08/11/2006 17:15:51.237  000>> Drop connection(C):192.168.10.44
  199.28 +08/11/2006 17:15:52.218  000>> Drop connection(C):192.168.10.44
  199.29 +08/11/2006 17:15:53.140  000>> Drop connection(C):192.168.10.44
  199.30 +08/11/2006 17:15:54.181  000>> Drop connection(C):192.168.10.44
  199.31 +08/11/2006 17:15:55.143  000>> Drop connection(C):192.168.10.44
  199.32 +08/11/2006 17:15:56.184  000>> Drop connection(C):192.168.10.44
  199.33 +08/11/2006 17:15:57.175  000>> Drop connection(C):192.168.10.44
  199.34 +08/11/2006 17:15:58.147  000>> Drop connection(C):192.168.10.44
  199.35 +08/11/2006 17:15:59.198  000>> Drop connection(C):192.168.10.44
  199.36 +08/11/2006 17:16:00.210  000>> Drop connection(C):192.168.10.44
  199.37 +08/11/2006 17:16:01.191  000>> Drop connection(C):192.168.10.44
  199.38 +08/11/2006 17:16:02.153  000>> Drop connection(C):192.168.10.44
  199.39 +08/11/2006 17:16:03.174  000>> Drop connection(C):192.168.10.44
  199.40 +08/11/2006 17:16:04.156  000>> Drop connection(C):192.168.10.44
  199.41 +08/11/2006 17:16:05.187  000>> Drop connection(C):192.168.10.44
  199.42 +08/11/2006 17:16:06.178  000>> Drop connection(C):192.168.10.44
  199.43 +08/11/2006 17:16:07.170  000>> Drop connection(C):192.168.10.44
  199.44 +08/11/2006 17:16:08.211  000>> Drop connection(C):192.168.10.44
  199.45 +08/11/2006 17:16:09.163  000>> Drop connection(C):192.168.10.44
  199.46 +08/11/2006 17:16:10.174  000>> Drop connection(C):192.168.10.44
  199.47 +08/11/2006 17:16:11.196  000>> Drop connection(C):192.168.10.44
  199.48 +08/11/2006 17:16:12.167  000>> Drop connection(C):192.168.10.44
  199.49 +08/11/2006 17:16:13.178  000>> Drop connection(C):192.168.10.44
  199.50 +08/11/2006 17:16:14.200  000>> Drop connection(C):192.168.10.44
  199.51 +08/11/2006 17:16:15.181  000>> Drop connection(C):192.168.10.44
  199.52 +08/11/2006 17:16:16.183  000>> Drop connection(C):192.168.10.44
  199.53 +08/11/2006 17:16:17.204  000>> Drop connection(C):192.168.10.44
  199.54 +08/11/2006 17:16:18.176  000>> Drop connection(C):192.168.10.44
  199.55 +08/11/2006 17:16:19.177  000>> Drop connection(C):192.168.10.44
  199.56 +08/11/2006 17:16:20.179  000>> Drop connection(C):192.168.10.44
  199.57 +08/11/2006 17:16:21.190  000>> Drop connection(C):192.168.10.44
  199.58 +08/11/2006 17:16:22.181  000>> Drop connection(C):192.168.10.44
  199.59 +08/11/2006 17:16:23.213  000>> Drop connection(C):192.168.10.44
  199.60 +08/11/2006 17:16:24.194  000>> Drop connection(C):192.168.10.44
  199.61 +08/11/2006 17:16:25.196  000>> Drop connection(C):192.168.10.44
  199.62 +08/11/2006 17:16:26.217  000>> Drop connection(C):192.168.10.44
  199.63 +08/11/2006 17:16:27.199  000>> Drop connection(C):192.168.10.44
  199.64 +08/11/2006 17:16:28.200  000>> Drop connection(C):192.168.10.44
  199.65 +08/11/2006 17:16:29.222  000>> Drop connection(C):192.168.10.44
  199.66 +08/11/2006 17:16:30.203  000>> Drop connection(C):192.168.10.44
  199.67 +08/11/2006 17:16:31.204  000>> Drop connection(C):192.168.10.44
  199.68 +08/11/2006 17:16:32.226  000>> Drop connection(C):192.168.10.44
  199.69 +08/11/2006 17:16:33.207  000>> Drop connection(C):192.168.10.44
  199.70 +08/11/2006 17:16:34.209  000>> Drop connection(C):192.168.10.44
  199.71 +08/11/2006 17:16:35.230  000>> Drop connection(C):192.168.10.44
  199.72 +08/11/2006 17:16:36.212  000>> Drop connection(C):192.168.10.44
  199.73 +08/11/2006 17:16:37.213  000>> Drop connection(C):192.168.10.44
  199.74 +08/11/2006 17:16:38.235  000>> Drop connection(C):192.168.10.44
  199.75 +08/11/2006 17:16:39.216  000>> Drop connection(C):192.168.10.44
  199.76 +08/11/2006 17:16:40.217  000>> Drop connection(C):192.168.10.44
  199.77 +08/11/2006 17:16:41.239  000>> Drop connection(C):192.168.10.44
  199.78 +08/11/2006 17:16:42.220  000>> Drop connection(C):192.168.10.44
  199.79 +08/11/2006 17:16:43.222  000>> Drop connection(C):192.168.10.44
  199.80 +08/11/2006 17:16:44.243  000>> Drop connection(C):192.168.10.44
  199.81 +08/11/2006 17:16:45.225  000>> Drop connection(C):192.168.10.44
  199.82 +08/11/2006 17:16:46.226  000>> Drop connection(C):192.168.10.44
  199.83 +08/11/2006 17:16:47.247  000>> Drop connection(C):192.168.10.44
  199.84 +08/11/2006 17:16:48.229  000>> Drop connection(C):192.168.10.44
  199.85 +08/11/2006 17:16:49.230  000>> Drop connection(C):192.168.10.44
  199.86 +08/11/2006 17:16:50.252  000>> Drop connection(C):192.168.10.44
  199.87 +08/11/2006 17:16:51.233  000>> Drop connection(C):192.168.10.44
  199.88 +08/11/2006 17:16:52.235  000>> Drop connection(C):192.168.10.44
  199.89 +08/11/2006 17:16:53.256  000>> Drop connection(C):192.168.10.44
  199.90 +08/11/2006 17:16:54.238  000>> Drop connection(C):192.168.10.44
  199.91 +08/11/2006 17:16:55.239  000>> Drop connection(C):192.168.10.44
  199.92 +08/11/2006 17:16:56.260  000>> Drop connection(C):192.168.10.44
  199.93 +08/11/2006 17:16:57.242  000>> Drop connection(C):192.168.10.44
  199.94 +08/11/2006 17:16:58.243  000>> Drop connection(C):192.168.10.44
  199.95 +08/11/2006 17:16:59.265  000>> Drop connection(C):192.168.10.44
  199.96 +08/11/2006 17:17:00.246  000>> Drop connection(C):192.168.10.44
  199.97 +08/11/2006 17:17:01.248  000>> Drop connection(C):192.168.10.44
  199.98 +08/11/2006 17:17:02.269  000>> Drop connection(C):192.168.10.44
  199.99 +08/11/2006 17:17:03.250  000>> Drop connection(C):192.168.10.44
 199.100 +08/11/2006 17:17:04.252  000>> Drop connection(C):192.168.10.44
 199.101 +08/11/2006 17:17:05.273  000>> Drop connection(C):192.168.10.44
 199.102 +08/11/2006 17:17:06.255  000>> Drop connection(C):192.168.10.44
 199.103 +08/11/2006 17:17:07.256  000>> Drop connection(C):192.168.10.44
 199.104 +08/11/2006 17:17:08.278  000>> Drop connection(C):192.168.10.44
 199.105 +08/11/2006 17:17:09.259  000>> Drop connection(C):192.168.10.44
 199.106 +08/11/2006 17:17:10.261  000>> Drop connection(C):192.168.10.44
 199.107 +08/11/2006 17:17:11.282  000>> Drop connection(C):192.168.10.44
 199.108 +08/11/2006 17:17:12.263  000>> Drop connection(C):192.168.10.44
 199.109 +08/11/2006 17:17:13.265  000>> Drop connection(C):192.168.10.44
 199.110 +08/11/2006 17:17:14.286  000>> Drop connection(C):192.168.10.44
 199.111 +08/11/2006 17:17:15.268  000>> Drop connection(C):192.168.10.44
 199.112 +08/11/2006 17:17:16.269  000>> Drop connection(C):192.168.10.44
 199.113 +08/11/2006 17:17:17.291  000>> Drop connection(C):192.168.10.44
 199.114 +08/11/2006 17:17:18.272  000>> Drop connection(C):192.168.10.44
 199.115 +08/11/2006 17:17:19.274  000>> Drop connection(C):192.168.10.44
 199.116 +08/11/2006 17:17:20.295  000>> Drop connection(C):192.168.10.44
 199.117 +08/11/2006 17:17:21.276  000>> Drop connection(C):192.168.10.44
 199.118 +08/11/2006 17:17:22.278  000>> Drop connection(C):192.168.10.44
 199.119 +08/11/2006 17:17:23.299  000>> Drop connection(C):192.168.10.44
 199.120 +08/11/2006 17:17:24.281  000>> Drop connection(C):192.168.10.44
 199.121 +08/11/2006 17:17:25.282  000>> Drop connection(C):192.168.10.44
 199.122 +08/11/2006 17:17:26.304  000>> Drop connection(C):192.168.10.44
 199.123 +08/11/2006 17:17:27.285  000>> Drop connection(C):192.168.10.44
 199.124 +08/11/2006 17:17:28.286  000>> Drop connection(C):192.168.10.44
 199.125 +08/11/2006 17:17:29.308  000>> Drop connection(C):192.168.10.44
 199.126 +08/11/2006 17:17:30.289  000>> Drop connection(C):192.168.10.44
 199.127 +08/11/2006 17:17:31.291  000>> Drop connection(C):192.168.10.44
 199.128 +08/11/2006 17:17:32.312  000>> Drop connection(C):192.168.10.44
 199.129 +08/11/2006 17:17:33.294  000>> Drop connection(C):192.168.10.44
 199.130 +08/11/2006 17:17:34.295  000>> Drop connection(C):192.168.10.44
 199.131 +08/11/2006 17:17:35.317  000>> Drop connection(C):192.168.10.44
 199.132 +08/11/2006 17:17:36.298  000>> Drop connection(C):192.168.10.44
 199.133 +08/11/2006 17:17:37.299  000>> Drop connection(C):192.168.10.44
 199.134 +08/11/2006 17:17:38.321  000>> Drop connection(C):192.168.10.44
 199.135 +08/11/2006 17:17:39.302  000>> Drop connection(C):192.168.10.44
 199.136 +08/11/2006 17:17:40.304  000>> Drop connection(C):192.168.10.44
 199.137 +08/11/2006 17:17:41.325  000>> Drop connection(C):192.168.10.44
 199.138 +08/11/2006 17:17:42.307  000>> Drop connection(C):192.168.10.44
 199.139 +08/11/2006 17:17:43.308  000>> Drop connection(C):192.168.10.44
 199.140 +08/11/2006 17:17:44.330  000>> Drop connection(C):192.168.10.44
 199.141 +08/11/2006 17:17:45.311  000>> Drop connection(C):192.168.10.44
 199.142 +08/11/2006 17:17:46.312  000>> Drop connection(C):192.168.10.44
 199.143 +08/11/2006 17:17:47.334  000>> Drop connection(C):192.168.10.44
 199.144 +08/11/2006 17:17:48.315  000>> Drop connection(C):192.168.10.44
 199.145 +08/11/2006 17:17:49.317  000>> Drop connection(C):192.168.10.44
 199.146 +08/11/2006 17:17:50.338  000>> Drop connection(C):192.168.10.44
 199.147 +08/11/2006 17:17:51.320  000>> Drop connection(C):192.168.10.44
 199.148 +08/11/2006 17:17:52.321  000>> Drop connection(C):192.168.10.44
 199.149 +08/11/2006 17:17:53.343  000>> Drop connection(C):192.168.10.44
 199.150 +08/11/2006 17:17:54.324  000>> Drop connection(C):192.168.10.44
 199.151 +08/11/2006 17:17:55.325  000>> Drop connection(C):192.168.10.44
 199.152 +08/11/2006 17:17:56.347  000>> Drop connection(C):192.168.10.44
 199.153 +08/11/2006 17:17:57.328  000>> Drop connection(C):192.168.10.44
 199.154 +08/11/2006 17:17:58.330  000>> Drop connection(C):192.168.10.44
 199.155 +08/11/2006 17:17:59.351  000>> Drop connection(C):192.168.10.44
 199.156 +08/11/2006 17:18:00.333  000>> Drop connection(C):192.168.10.44
 199.157 +08/11/2006 17:18:01.334  000>> Drop connection(C):192.168.10.44
 199.158 +08/11/2006 17:18:02.355  000>> Drop connection(C):192.168.10.44
 199.159 +08/11/2006 17:18:03.337  000>> Drop connection(C):192.168.10.44
 199.160 +08/11/2006 17:18:04.338  000>> Drop connection(C):192.168.10.44
 199.161 +08/11/2006 17:18:05.360  000>> Drop connection(C):192.168.10.44
 199.162 +08/11/2006 17:18:06.341  000>> Drop connection(C):192.168.10.44
 199.163 +08/11/2006 17:18:07.343  000>> Drop connection(C):192.168.10.44
 199.164 +08/11/2006 17:18:08.364  000>> Drop connection(C):192.168.10.44
 199.165 +08/11/2006 17:18:09.346  000>> Drop connection(C):192.168.10.44
 199.166 +08/11/2006 17:18:10.347  000>> Drop connection(C):192.168.10.44
 199.167 +08/11/2006 17:18:11.368  000>> Drop connection(C):192.168.10.44
 199.168 +08/11/2006 17:18:12.350  000>> Drop connection(C):192.168.10.44
 199.169 +08/11/2006 17:18:13.351  000>> Drop connection(C):192.168.10.44
 199.170 +08/11/2006 17:18:14.373  000>> Drop connection(C):192.168.10.44
 199.171 +08/11/2006 17:18:15.354  000>> Drop connection(C):192.168.10.44
 199.172 +08/11/2006 17:18:16.356  000>> Drop connection(C):192.168.10.44
 199.173 +08/11/2006 17:18:17.377  000>> Drop connection(C):192.168.10.44
 199.174 +08/11/2006 17:18:18.358  000>> Drop connection(C):192.168.10.44
 199.175 +08/11/2006 17:18:19.360  000>> Drop connection(C):192.168.10.44
 199.176 +08/11/2006 17:18:20.381  000>> Drop connection(C):192.168.10.44
 199.177 +08/11/2006 17:18:21.363  000>> Drop connection(C):192.168.10.44
 199.178 +08/11/2006 17:18:22.364  000>> Drop connection(C):192.168.10.44
 199.179 +08/11/2006 17:18:23.386  000>> Drop connection(C):192.168.10.44
 199.180 +08/11/2006 17:18:24.367  000>> Drop connection(C):192.168.10.44
 199.181 +08/11/2006 17:18:25.369  000>> Drop connection(C):192.168.10.44
 199.182 +08/11/2006 17:18:26.390  000>> Drop connection(C):192.168.10.44
 199.183 +08/11/2006 17:18:27.371  000>> Drop connection(C):192.168.10.44
 199.184 +08/11/2006 17:18:28.373  000>> Drop connection(C):192.168.10.44
 199.185 +08/11/2006 17:18:29.394  000>> Drop connection(C):192.168.10.44
 199.186 +08/11/2006 17:18:30.376  000>> Drop connection(C):192.168.10.44
 199.187 +08/11/2006 17:18:31.377  000>> Drop connection(C):192.168.10.44
 199.188 +08/11/2006 17:18:32.399  000>> Drop connection(C):192.168.10.44
 199.189 +08/11/2006 17:18:33.380  000>> Drop connection(C):192.168.10.44
 199.190 +08/11/2006 17:18:34.382  000>> Drop connection(C):192.168.10.44
 199.191 +08/11/2006 17:18:35.403  000>> Drop connection(C):192.168.10.44
 199.192 +08/11/2006 17:18:36.384  000>> Drop connection(C):192.168.10.44
 199.193 +08/11/2006 17:18:37.386  000>> Drop connection(C):192.168.10.44
 199.194 +08/11/2006 17:18:38.407  000>> Drop connection(C):192.168.10.44
 199.195 +08/11/2006 17:18:39.389  000>> Drop connection(C):192.168.10.44
 199.196 +08/11/2006 17:18:40.390  000>> Drop connection(C):192.168.10.44
 199.197 +08/11/2006 17:18:41.412  000>> Drop connection(C):192.168.10.44
 199.198 +08/11/2006 17:18:42.393  000>> Drop connection(C):192.168.10.44
 199.199 +08/11/2006 17:18:43.394  000>> Drop connection(C):192.168.10.44
 199.200 +08/11/2006 17:18:44.416  000>> Drop connection(C):192.168.10.44
 199.201 +08/11/2006 17:18:45.397  000>> Drop connection(C):192.168.10.44
 199.202 +08/11/2006 17:18:46.399  000>> Drop connection(C):192.168.10.44
 199.203 +08/11/2006 17:18:47.420  000>> Drop connection(C):192.168.10.44
 199.204 +08/11/2006 17:18:48.402  000>> Drop connection(C):192.168.10.44
 199.205 +08/11/2006 17:18:49.403  000>> Drop connection(C):192.168.10.44
 199.206 +08/11/2006 17:18:50.425  000>> Drop connection(C):192.168.10.44
 199.207 +08/11/2006 17:18:51.406  000>> Drop connection(C):192.168.10.44
 199.208 +08/11/2006 17:18:52.407  000>> Drop connection(C):192.168.10.44
 199.209 +08/11/2006 17:18:53.429  000>> Drop connection(C):192.168.10.44
 199.210 +08/11/2006 17:18:54.410  000>> Drop connection(C):192.168.10.44
 199.211 +08/11/2006 17:18:55.412  000>> Drop connection(C):192.168.10.44
 199.212 +08/11/2006 17:18:56.433  000>> Drop connection(C):192.168.10.44
 199.213 +08/11/2006 17:18:57.415  000>> Drop connection(C):192.168.10.44
 199.214 +08/11/2006 17:18:58.416  000>> Drop connection(C):192.168.10.44
 199.215 +08/11/2006 17:18:59.438  000>> Drop connection(C):192.168.10.44
 199.216 +08/11/2006 17:19:00.419  000>> Drop connection(C):192.168.10.44
 199.217 +08/11/2006 17:19:01.420  000>> Drop connection(C):192.168.10.44
 199.218 +08/11/2006 17:19:02.442  000>> Drop connection(C):192.168.10.44
 199.219 +08/11/2006 17:19:03.423  000>> Drop connection(C):192.168.10.44
 199.220 +08/11/2006 17:19:04.425  000>> Drop connection(C):192.168.10.44
 199.221 +08/11/2006 17:19:05.446  000>> Drop connection(C):192.168.10.44
 199.222 +08/11/2006 17:19:06.428  000>> Drop connection(C):192.168.10.44
 199.223 +08/11/2006 17:19:07.429  000>> Drop connection(C):192.168.10.44
 199.224 +08/11/2006 17:19:08.451  000>> Drop connection(C):192.168.10.44
 199.225 +08/11/2006 17:19:09.432  000>> Drop connection(C):192.168.10.44
 199.226 +08/11/2006 17:19:10.433  000>> Drop connection(C):192.168.10.44
 199.227 +08/11/2006 17:19:11.455  000>> Drop connection(C):192.168.10.44
 199.228 +08/11/2006 17:19:12.436  000>> Drop connection(C):192.168.10.44
 199.229 +08/11/2006 17:19:13.438  000>> Drop connection(C):192.168.10.44
 199.230 +08/11/2006 17:19:14.459  000>> Drop connection(C):192.168.10.44
 199.231 +08/11/2006 17:19:15.441  000>> Drop connection(C):192.168.10.44
 199.232 +08/11/2006 17:19:16.442  000>> Drop connection(C):192.168.10.44
 199.233 +08/11/2006 17:19:17.463  000>> Drop connection(C):192.168.10.44
 199.234 +08/11/2006 17:19:18.445  000>> Drop connection(C):192.168.10.44
 199.235 +08/11/2006 17:19:19.446  000>> Drop connection(C):192.168.10.44
 199.236 +08/11/2006 17:19:20.468  000>> Drop connection(C):192.168.10.44
 199.237 +08/11/2006 17:19:21.449  000>> Drop connection(C):192.168.10.44
 199.238 +08/11/2006 17:19:22.451  000>> Drop connection(C):192.168.10.44
 199.239 +08/11/2006 17:19:23.472  000>> Drop connection(C):192.168.10.44
 199.240 +08/11/2006 17:19:24.454  000>> Drop connection(C):192.168.10.44
 199.241 +08/11/2006 17:19:25.455  000>> Drop connection(C):192.168.10.44
 199.242 +08/11/2006 17:19:26.476  000>> Drop connection(C):192.168.10.44
 199.243 +08/11/2006 17:19:27.458  000>> Drop connection(C):192.168.10.44
 199.244 +08/11/2006 17:19:28.459  000>> Drop connection(C):192.168.10.44
 199.245 +08/11/2006 17:19:29.481  000>> Drop connection(C):192.168.10.44
 199.246 +08/11/2006 17:19:30.462  000>> Drop connection(C):192.168.10.44
 199.247 +08/11/2006 17:19:31.464  000>> Drop connection(C):192.168.10.44
 199.248 +08/11/2006 17:19:32.485  000>> Drop connection(C):192.168.10.44
 199.249 +08/11/2006 17:19:33.466  000>> Drop connection(C):192.168.10.44
 199.250 +08/11/2006 17:19:34.468  000>> Drop connection(C):192.168.10.44
 199.251 +08/11/2006 17:19:35.489  000>> Drop connection(C):192.168.10.44
 199.252 +08/11/2006 17:19:36.471  000>> Drop connection(C):192.168.10.44
 199.253 +08/11/2006 17:19:37.472  000>> Drop connection(C):192.168.10.44
 199.254 +08/11/2006 17:19:38.494  000>> Drop connection(C):192.168.10.44
 199.255 +08/11/2006 17:19:39.475  000>> Drop connection(C):192.168.10.44
 199.256 +08/11/2006 17:19:40.477  000>> Drop connection(C):192.168.10.44
 199.257 +08/11/2006 17:19:41.498  000>> Drop connection(C):192.168.10.44
 199.258 +08/11/2006 17:19:42.479  000>> Drop connection(C):192.168.10.44
 199.259 +08/11/2006 17:19:43.481  000>> Drop connection(C):192.168.10.44
 199.260 +08/11/2006 17:19:44.502  000>> Drop connection(C):192.168.10.44
 199.261 +08/11/2006 17:19:45.484  000>> Drop connection(C):192.168.10.44
 199.262 +08/11/2006 17:19:46.485  000>> Drop connection(C):192.168.10.44
 199.263 +08/11/2006 17:19:47.507  000>> Drop connection(C):192.168.10.44
 199.264 +08/11/2006 17:19:48.488  000>> Drop connection(C):192.168.10.44
 199.265 +08/11/2006 17:19:49.490  000>> Drop connection(C):192.168.10.44
 199.266 +08/11/2006 17:19:50.511  000>> Drop connection(C):192.168.10.44
 199.267 +08/11/2006 17:19:51.492  000>> Drop connection(C):192.168.10.44
 199.268 +08/11/2006 17:19:52.494  000>> Drop connection(C):192.168.10.44
 199.269 +08/11/2006 17:19:53.515  000>> Drop connection(C):192.168.10.44
 199.270 +08/11/2006 17:19:54.497  000>> Drop connection(C):192.168.10.44
 199.271 +08/11/2006 17:19:55.498  000>> Drop connection(C):192.168.10.44
 199.272 +08/11/2006 17:19:56.520  000>> Drop connection(C):192.168.10.44
 199.273 +08/11/2006 17:19:57.501  000>> Drop connection(C):192.168.10.44
 199.274 +08/11/2006 17:19:58.502  000>> Drop connection(C):192.168.10.44
 199.275 +08/11/2006 17:19:59.524  000>> Drop connection(C):192.168.10.44
 199.276 +08/11/2006 17:20:00.505  000>> Drop connection(C):192.168.10.44
 199.277 +08/11/2006 17:20:01.507  000>> Drop connection(C):192.168.10.44
 199.278 +08/11/2006 17:20:02.528  000>> Drop connection(C):192.168.10.44
 199.279 +08/11/2006 17:20:03.510  000>> Drop connection(C):192.168.10.44
 199.280 +08/11/2006 17:20:04.511  000>> Drop connection(C):192.168.10.44
 199.281 +08/11/2006 17:20:05.533  000>> Drop connection(C):192.168.10.44
 199.282 +08/11/2006 17:20:06.514  000>> Drop connection(C):192.168.10.44
 199.283 +08/11/2006 17:20:07.515  000>> Drop connection(C):192.168.10.44
 199.284 +08/11/2006 17:20:08.537  000>> Drop connection(C):192.168.10.44
 199.285 +08/11/2006 17:20:09.518  000>> Drop connection(C):192.168.10.44
 199.286 +08/11/2006 17:20:10.520  000>> Drop connection(C):192.168.10.44
 199.287 +08/11/2006 17:20:11.541  000>> Drop connection(C):192.168.10.44
 199.288 +08/11/2006 17:20:12.523  000>> Drop connection(C):192.168.10.44
 199.289 +08/11/2006 17:20:13.524  000>> Drop connection(C):192.168.10.44
 199.290 +08/11/2006 17:20:14.546  000>> Drop connection(C):192.168.10.44
 199.291 +08/11/2006 17:20:15.527  000>> Drop connection(C):192.168.10.44
 199.292 +08/11/2006 17:20:16.528  000>> Drop connection(C):192.168.10.44
 199.293 +08/11/2006 17:20:17.550  000>> Drop connection(C):192.168.10.44
 199.294 +08/11/2006 17:20:18.531  000>> Drop connection(C):192.168.10.44
 199.295 +08/11/2006 17:20:19.533  000>> Drop connection(C):192.168.10.44
 199.296 +08/11/2006 17:20:20.554  000>> Drop connection(C):192.168.10.44
 199.297 +08/11/2006 17:20:21.536  000>> Drop connection(C):192.168.10.44
 199.298 +08/11/2006 17:20:22.537  000>> Drop connection(C):192.168.10.44
 199.299 +08/11/2006 17:20:23.559  000>> Drop connection(C):192.168.10.44
 199.300 +08/11/2006 17:20:24.540  000>> Drop connection(C):192.168.10.44
 199.301 +08/11/2006 17:20:25.541  000>> Drop connection(C):192.168.10.44
 199.302 +08/11/2006 17:20:26.563  000>> Drop connection(C):192.168.10.44
 199.303 +08/11/2006 17:20:27.544  000>> Drop connection(C):192.168.10.44
 199.304 +08/11/2006 17:20:28.546  000>> Drop connection(C):192.168.10.44
 199.305 +08/11/2006 17:20:29.567  000>> Drop connection(C):192.168.10.44
 199.306 +08/11/2006 17:20:30.549  000>> Drop connection(C):192.168.10.44
 199.307 +08/11/2006 17:20:31.550  000>> Drop connection(C):192.168.10.44
 199.308 +08/11/2006 17:20:32.571  000>> Drop connection(C):192.168.10.44
 199.309 +08/11/2006 17:20:33.553  000>> Drop connection(C):192.168.10.44
 199.310 +08/11/2006 17:20:34.554  000>> Drop connection(C):192.168.10.44
 199.311 +08/11/2006 17:20:35.576  000>> Drop connection(C):192.168.10.44
 199.312 +08/11/2006 17:20:36.557  000>> Drop connection(C):192.168.10.44
 199.313 +08/11/2006 17:20:37.559  000>> Drop connection(C):192.168.10.44
 199.314 +08/11/2006 17:20:38.580  000>> Drop connection(C):192.168.10.44
 199.315 +08/11/2006 17:20:39.562  000>> Drop connection(C):192.168.10.44
 199.316 +08/11/2006 17:20:40.563  000>> Drop connection(C):192.168.10.44
 199.317 +08/11/2006 17:20:41.584  000>> Drop connection(C):192.168.10.44
 199.318 +08/11/2006 17:20:42.566  000>> Drop connection(C):192.168.10.44
 199.319 +08/11/2006 17:20:43.567  000>> Drop connection(C):192.168.10.44
 199.320 +08/11/2006 17:20:44.589  000>> Drop connection(C):192.168.10.44
 199.321 +08/11/2006 17:20:45.570  000>> Drop connection(C):192.168.10.44
 199.322 +08/11/2006 17:20:46.572  000>> Drop connection(C):192.168.10.44
 199.323 +08/11/2006 17:20:47.593  000>> Drop connection(C):192.168.10.44
 199.324 +08/11/2006 17:20:48.564  000>> Drop connection(C):192.168.10.44
 199.325 +08/11/2006 17:20:49.576  000>> Drop connection(C):192.168.10.44
 199.326 +08/11/2006 17:20:50.597  000>> Drop connection(C):192.168.10.44
 199.327 +08/11/2006 17:20:51.569  000>> Drop connection(C):192.168.10.44
 199.328 +08/11/2006 17:20:52.580  000>> Drop connection(C):192.168.10.44
 199.329 +08/11/2006 17:20:53.572  000>> Drop connection(C):192.168.10.44
 199.330 +08/11/2006 17:20:54.573  000>> Drop connection(C):192.168.10.44
 199.331 +08/11/2006 17:20:55.595  000>> Drop connection(C):192.168.10.44
 199.332 +08/11/2006 17:20:56.606  000>> Drop connection(C):192.168.10.44
 199.333 +08/11/2006 17:20:57.597  000>> Drop connection(C):192.168.10.44
 199.334 +08/11/2006 17:20:58.599  000>> Drop connection(C):192.168.10.44
 199.335 +08/11/2006 17:20:59.610  000>> Drop connection(C):192.168.10.44
 199.336 +08/11/2006 17:21:00.602  000>> Drop connection(C):192.168.10.44
 199.337 +08/11/2006 17:21:01.603  000>> Drop connection(C):192.168.10.44
 199.338 +08/11/2006 17:21:02.615  000>> Drop connection(C):192.168.10.44
 199.339 +08/11/2006 17:21:03.606  000>> Drop connection(C):192.168.10.44
 199.340 +08/11/2006 17:21:04.608  000>> Drop connection(C):192.168.10.44
 199.341 +08/11/2006 17:21:05.619  000>> Drop connection(C):192.168.10.44
 199.342 +08/11/2006 17:21:06.610  000>> Drop connection(C):192.168.10.44
 199.343 +08/11/2006 17:21:07.612  000>> Drop connection(C):192.168.10.44
 199.344 +08/11/2006 17:21:08.623  000>> Drop connection(C):192.168.10.44
 199.345 +08/11/2006 17:21:09.615  000>> Drop connection(C):192.168.10.44
 199.346 +08/11/2006 17:21:10.616  000>> Drop connection(C):192.168.10.44
 199.347 +08/11/2006 17:21:11.628  000>> Drop connection(C):192.168.10.44
 199.348 +08/11/2006 17:21:12.619  000>> Drop connection(C):192.168.10.44
 199.349 +08/11/2006 17:21:13.621  000>> Drop connection(C):192.168.10.44
 199.350 +08/11/2006 17:21:14.632  000>> Drop connection(C):192.168.10.44
 199.351 +08/11/2006 17:21:15.623  000>> Drop connection(C):192.168.10.44
 199.352 +08/11/2006 17:21:16.625  000>> Drop connection(C):192.168.10.44
 199.353 +08/11/2006 17:21:17.636  000>> Drop connection(C):192.168.10.44
 199.354 +08/11/2006 17:21:18.628  000>> Drop connection(C):192.168.10.44
 199.355 +08/11/2006 17:21:19.629  000>> Drop connection(C):192.168.10.44
 199.356 +08/11/2006 17:21:20.641  000>> Drop connection(C):192.168.10.44
 199.357 +08/11/2006 17:21:21.632  000>> Drop connection(C):192.168.10.44
 199.358 +08/11/2006 17:21:22.633  000>> Drop connection(C):192.168.10.44
 199.359 +08/11/2006 17:21:23.645  000>> Drop connection(C):192.168.10.44
 199.360 +08/11/2006 17:21:24.636  000>> Drop connection(C):192.168.10.44
 199.361 +08/11/2006 17:21:25.638  000>> Drop connection(C):192.168.10.44
 199.362 +08/11/2006 17:21:26.649  000>> Drop connection(C):192.168.10.44
 199.363 +08/11/2006 17:21:27.641  000>> Drop connection(C):192.168.10.44
 199.364 +08/11/2006 17:21:28.642  000>> Drop connection(C):192.168.10.44
 199.365 +08/11/2006 17:21:29.654  000>> Drop connection(C):192.168.10.44
 199.366 +08/11/2006 17:21:30.645  000>> Drop connection(C):192.168.10.44
 199.367 +08/11/2006 17:21:31.646  000>> Drop connection(C):192.168.10.44
 199.368 +08/11/2006 17:21:32.658  000>> Drop connection(C):192.168.10.44
 199.369 +08/11/2006 17:21:33.649  000>> Drop connection(C):192.168.10.44
 199.370 +08/11/2006 17:21:34.651  000>> Drop connection(C):192.168.10.44
 199.371 +08/11/2006 17:21:35.662  000>> Drop connection(C):192.168.10.44
 199.372 +08/11/2006 17:21:36.654  000>> Drop connection(C):192.168.10.44
 199.373 +08/11/2006 17:21:37.655  000>> Drop connection(C):192.168.10.44
 199.374 +08/11/2006 17:21:38.667  000>> Drop connection(C):192.168.10.44
 199.375 +08/11/2006 17:21:39.658  000>> Drop connection(C):192.168.10.44
 199.376 +08/11/2006 17:21:40.659  000>> Drop connection(C):192.168.10.44
 199.377 +08/11/2006 17:21:41.671  000>> Drop connection(C):192.168.10.44
 199.378 +08/11/2006 17:21:42.662  000>> Drop connection(C):192.168.10.44
 199.379 +08/11/2006 17:21:43.664  000>> Drop connection(C):192.168.10.44
 199.380 +08/11/2006 17:21:44.675  000>> Drop connection(C):192.168.10.44
 199.381 +08/11/2006 17:21:45.667  000>> Drop connection(C):192.168.10.44
 199.382 +08/11/2006 17:21:46.668  000>> Drop connection(C):192.168.10.44
 199.383 +08/11/2006 17:21:47.679  000>> Drop connection(C):192.168.10.44
 199.384 +08/11/2006 17:21:48.671  000>> Drop connection(C):192.168.10.44
 199.385 +08/11/2006 17:21:49.672  000>> Drop connection(C):192.168.10.44
 199.386 +08/11/2006 17:21:50.684  000>> Drop connection(C):192.168.10.44
 199.387 +08/11/2006 17:21:51.675  000>> Drop connection(C):192.168.10.44
 199.388 +08/11/2006 17:21:52.677  000>> Drop connection(C):192.168.10.44
 199.389 +08/11/2006 17:21:53.688  000>> Drop connection(C):192.168.10.44
 199.390 +08/11/2006 17:21:54.680  000>> Drop connection(C):192.168.10.44
 199.391 +08/11/2006 17:21:55.681  000>> Drop connection(C):192.168.10.44
 199.392 +08/11/2006 17:21:56.692  000>> Drop connection(C):192.168.10.44
 199.393 +08/11/2006 17:21:57.684  000>> Drop connection(C):192.168.10.44
 199.394 +08/11/2006 17:21:58.685  000>> Drop connection(C):192.168.10.44
 199.395 +08/11/2006 17:21:59.697  000>> Drop connection(C):192.168.10.44
 199.396 +08/11/2006 17:22:00.688  000>> Drop connection(C):192.168.10.44
 199.397 +08/11/2006 17:22:01.680  000>> Drop connection(C):192.168.10.44
 199.398 +08/11/2006 17:22:02.701  000>> Drop connection(C):192.168.10.44
 199.399 +08/11/2006 17:22:03.672  000>> Drop connection(C):192.168.10.44
 199.400 +08/11/2006 17:22:04.754  000>> Drop connection(C):192.168.10.44
 199.401 +08/11/2006 17:22:05.675  000>> Drop connection(C):192.168.10.44
 199.402 +08/11/2006 17:22:06.687  000>> Drop connection(C):192.168.10.44
 199.403 +08/11/2006 17:22:07.688  000>> Drop connection(C):192.168.10.44
 199.404 +08/11/2006 17:22:08.710  000>> Drop connection(C):192.168.10.44
 199.405 +08/11/2006 17:22:09.691  000>> Drop connection(C):192.168.10.44
 199.406 +08/11/2006 17:22:10.693  000>> Drop connection(C):192.168.10.44
 199.407 +08/11/2006 17:22:11.714  000>> Drop connection(C):192.168.10.44
 199.408 +08/11/2006 17:22:12.695  000>> Drop connection(C):192.168.10.44
 199.409 +08/11/2006 17:22:13.697  000>> Drop connection(C):192.168.10.44
 199.410 +08/11/2006 17:22:14.718  000>> Drop connection(C):192.168.10.44
 199.411 +08/11/2006 17:22:15.700  000>> Drop connection(C):192.168.10.44
 199.412 +08/11/2006 17:22:16.701  000>> Drop connection(C):192.168.10.44
 199.413 +08/11/2006 17:22:17.723  000>> Drop connection(C):192.168.10.44
 199.414 +08/11/2006 17:22:18.704  000>> Drop connection(C):192.168.10.44
 199.415 +08/11/2006 17:22:19.706  000>> Drop connection(C):192.168.10.44
 199.416 +08/11/2006 17:22:20.727  000>> Drop connection(C):192.168.10.44
 199.417 +08/11/2006 17:22:21.708  000>> Drop connection(C):192.168.10.44
 199.418 +08/11/2006 17:22:22.710  000>> Drop connection(C):192.168.10.44
 199.419 +08/11/2006 17:22:23.731  000>> Drop connection(C):192.168.10.44
 199.420 +08/11/2006 17:22:24.713  000>> Drop connection(C):192.168.10.44
 199.421 +08/11/2006 17:22:25.714  000>> Drop connection(C):192.168.10.44
 199.422 +08/11/2006 17:22:26.736  000>> Drop connection(C):192.168.10.44
 199.423 +08/11/2006 17:22:27.717  000>> Drop connection(C):192.168.10.44
 199.424 +08/11/2006 17:22:28.718  000>> Drop connection(C):192.168.10.44
 199.425 +08/11/2006 17:22:29.740  000>> Drop connection(C):192.168.10.44
 199.426 +08/11/2006 17:22:30.721  000>> Drop connection(C):192.168.10.44
 199.427 +08/11/2006 17:22:31.723  000>> Drop connection(C):192.168.10.44
 199.428 +08/11/2006 17:22:32.744  000>> Drop connection(C):192.168.10.44
 199.429 +08/11/2006 17:22:33.726  000>> Drop connection(C):192.168.10.44
 199.430 +08/11/2006 17:22:34.727  000>> Drop connection(C):192.168.10.44
 199.431 +08/11/2006 17:22:35.749  000>> Drop connection(C):192.168.10.44
 199.432 +08/11/2006 17:22:36.730  000>> Drop connection(C):192.168.10.44
 199.433 +08/11/2006 17:22:37.731  000>> Drop connection(C):192.168.10.44
 199.434 +08/11/2006 17:22:38.723  000>> Drop connection(C):192.168.10.44
 199.435 +08/11/2006 17:22:39.734  000>> Drop connection(C):192.168.10.44
 199.436 +08/11/2006 17:22:40.736  000>> Drop connection(C):192.168.10.44
 199.437 +08/11/2006 17:22:41.757  000>> Drop connection(C):192.168.10.44
 199.438 +08/11/2006 17:22:42.739  000>> Drop connection(C):192.168.10.44
 199.439 +08/11/2006 17:22:43.740  000>> Drop connection(C):192.168.10.44
 199.440 +08/11/2006 17:22:44.732  000>> Drop connection(C):192.168.10.44
 199.441 +08/11/2006 17:22:45.743  000>> Drop connection(C):192.168.10.44
   200.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   200.2 +++ b/x86/Win32/dataPacket.cpp	Thu Jun 26 17:39:40 2008 +0100
   200.3 @@ -0,0 +1,21 @@
   200.4 +#include <QtCore>
   200.5 +#include <dataPacket.h>
   200.6 +
   200.7 +DataPacket::DataPacket(QObject *parent)
   200.8 +{
   200.9 +	id=0;
  200.10 +	data.clear();
  200.11 +}
  200.12 +
  200.13 +DataPacket& DataPacket::operator=(const DataPacket& other)
  200.14 +{
  200.15 + id = other.id;
  200.16 + data = other.data;
  200.17 + return *this;
  200.18 +}
  200.19 +
  200.20 +DataPacket::DataPacket(const DataPacket& other)
  200.21 +{
  200.22 + id = other.id;
  200.23 + data = other.data;
  200.24 +}	
   201.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   201.2 +++ b/x86/Win32/dataPacket.h	Thu Jun 26 17:39:40 2008 +0100
   201.3 @@ -0,0 +1,18 @@
   201.4 +#ifndef DATAPACKET_H
   201.5 +#define DATAPACKET_H
   201.6 +#include <QtCore>
   201.7 +
   201.8 +class DataPacket: public QObject
   201.9 +{
  201.10 +
  201.11 +	Q_OBJECT 
  201.12 +	public:
  201.13 +	QByteArray data;
  201.14 +	int id;
  201.15 +	DataPacket(QObject *parent= 0);
  201.16 +	DataPacket(const DataPacket& other);
  201.17 +	DataPacket& operator=(const DataPacket& other);
  201.18 +
  201.19 +};
  201.20 +
  201.21 +#endif
   202.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   202.2 +++ b/x86/Win32/debugWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   202.3 @@ -0,0 +1,271 @@
   202.4 +#include <debugWidget.h>
   202.5 +#include <QtGui>
   202.6 +#include <QtCore>
   202.7 +#include <readFile.h>
   202.8 +
   202.9 +
  202.10 +#define DTN 500
  202.11 +
  202.12 +DebugWidget::DebugWidget(NodeManager *nodeMng,QWidget *parent)
  202.13 +		: QWidget(parent)
  202.14 +{
  202.15 +	setFixedSize(1000,700);
  202.16 +	ReadFile conf;
  202.17 +	QString mainText = "Prophet Window - ";
  202.18 +	mainText.append(conf.getNodeName());
  202.19 +	setWindowTitle(mainText);
  202.20 +	
  202.21 +	//BundleTable
  202.22 +	table = new QTableWidget(1000, 8, this);
  202.23 +    QStringList horizontalLabels;
  202.24 +    horizontalLabels << "ID" << "TimeStamp" << "SrcStr" << "DestStr"<< "Source" << "Dest" << "Data" << "Options";
  202.25 +	table->setHorizontalHeaderLabels(horizontalLabels); 
  202.26 +
  202.27 +	//Message Widget
  202.28 +	message = new MsgWidget(nodeMng);
  202.29 +	connect(message, SIGNAL(sendBundle(Bundle)), this, SLOT(forwardAppBundle(Bundle)));
  202.30 +
  202.31 +
  202.32 +	//NodeTable
  202.33 +	nodeTable = new QTableWidget(40, 4, this);
  202.34 +    QStringList horizontalNodeLabels;
  202.35 +    horizontalNodeLabels << "ID" << "Name" << "Probability" << "RIB Flag";
  202.36 +	nodeTable->setHorizontalHeaderLabels(horizontalNodeLabels); 
  202.37 +
  202.38 +		//ConnectionsTable
  202.39 +	conTable = new QTableWidget(40, 5, this);
  202.40 +    QStringList horizontalConLabels;
  202.41 +     horizontalConLabels << "ID" << "IP" << "Alive" << "Socket"<< "Con";
  202.42 +	conTable->setHorizontalHeaderLabels(horizontalConLabels); 
  202.43 +
  202.44 +	//Info tag
  202.45 +	info = new QListWidget;
  202.46 +	QString itemText;
  202.47 +	itemText.append("PRoPHET Version: 2.4 Long list edition");
  202.48 +    QListWidgetItem *newItem = new QListWidgetItem;
  202.49 +    newItem->setText(itemText);
  202.50 +    info->insertItem(0, newItem);
  202.51 +	itemText.clear();
  202.52 +
  202.53 +
  202.54 +   	itemText.append("Node name: ");
  202.55 +  	itemText.append(conf.getNodeName());
  202.56 + 	newItem = new QListWidgetItem;
  202.57 +	newItem->setText(itemText);
  202.58 +	info->insertItem(1, newItem);
  202.59 +	itemText.clear();
  202.60 +
  202.61 +   	itemText.append("Node ID: ");
  202.62 +  	itemText.append(QString("%1").arg(conf.getNodeId()));
  202.63 + 	newItem = new QListWidgetItem;
  202.64 +	newItem->setText(itemText);
  202.65 +	info->insertItem(2, newItem);
  202.66 +	itemText.clear();
  202.67 +
  202.68 +   	itemText.append("Node IP: ");
  202.69 +	QHostAddress ip = conf.getNodeIp();
  202.70 +	itemText.append(ip.toString());
  202.71 + 	newItem = new QListWidgetItem;
  202.72 +	newItem->setText(itemText);
  202.73 +	info->insertItem(3, newItem);
  202.74 +	itemText.clear();
  202.75 +
  202.76 +	itemText.append("Storage capacity (bytes): ");
  202.77 +  	itemText.append(QString("%1").arg(conf.getStorageSize()));
  202.78 + 	newItem = new QListWidgetItem;
  202.79 +	newItem->setText(itemText);
  202.80 +	info->insertItem(4, newItem);
  202.81 +	itemText.clear();
  202.82 +
  202.83 +  
  202.84 +	//DTN Interface
  202.85 +	dtnInfo = new QTextEdit;
  202.86 +	dtnInfo->setReadOnly(true);
  202.87 +	dtnEntery = 0;
  202.88 +
  202.89 +	//Message Group
  202.90 +//	QGroupBox *listMessage = new QGroupBox("Message GUI");
  202.91 + //   QPushButton *refreshBundle= new QPushButton("Refresh", this);
  202.92 +//	QGridLayout *messageGroup = new QGridLayout;
  202.93 +//	messageGroup->addWidget(table, 0, 0);
  202.94 +//	bundleGroup->addWidget(refreshBundle, 1, 0);
  202.95 +//    listMessage->setLayout(messageGroup);
  202.96 +
  202.97 +
  202.98 +	//Bundle List group
  202.99 +//	QGroupBox *listBundle = new QGroupBox("Bundle List");
 202.100 + //   QPushButton *refreshBundle= new QPushButton("Refresh", this);
 202.101 +//	QGridLayout *bundleGroup = new QGridLayout;
 202.102 +//	bundleGroup->addWidget(table, 0, 0);
 202.103 +//	bundleGroup->addWidget(refreshBundle, 1, 0);
 202.104 +  //  listBundle->setLayout(bundleGroup);
 202.105 +
 202.106 +	//Node  List group
 202.107 +//	QGroupBox *listNode = new QGroupBox("Node List");
 202.108 +//    QPushButton *refreshNode= new QPushButton("Refresh", this);
 202.109 +//	QGridLayout *nodeGroup = new QGridLayout;
 202.110 +//	nodeGroup->addWidget(nodeTable, 0, 0+);
 202.111 +//	nodeGroup->addWidget(refreshNode, 1, 0);
 202.112 + //   listNode->setLayout(nodeGroup);
 202.113 + 
 202.114 +	//Tab Widget
 202.115 +	tabWidget = new QTabWidget;
 202.116 +	tabWidget->addTab(conTable, tr("Connections"));
 202.117 +    tabWidget->addTab(message, tr("NSIM"));
 202.118 +	tabWidget->addTab(info,tr("Node info"));
 202.119 +	tabWidget->addTab(dtnInfo,tr("DTN Interface"));
 202.120 +    tabWidget->addTab(table, tr("Bundle list"));
 202.121 +    tabWidget->addTab(nodeTable, tr("Node list"));
 202.122 +
 202.123 +	
 202.124 +	//Define final layout
 202.125 +	QVBoxLayout *layout = new QVBoxLayout;
 202.126 +    layout->addWidget(tabWidget);    
 202.127 +//	layout->addWidget(listBundle);
 202.128 +//	layout->addWidget(listMessage);
 202.129 +    setLayout(layout);
 202.130 +
 202.131 +}
 202.132 +
 202.133 +void DebugWidget::getBundleList(QList<Bundle> list)
 202.134 +{
 202.135 +	Bundle newBundle;
 202.136 +	table->clear();
 202.137 +	QStringList horizontalLabels;
 202.138 +    horizontalLabels << "ID" << "TimeStamp" << "SrcStr" << "DestStr"<< "Source" << "Dest" << "Data" << "Options";
 202.139 +	table->setHorizontalHeaderLabels(horizontalLabels); 
 202.140 +   for (int i = 0; i < list.size(); ++i) 
 202.141 +	{
 202.142 +		newBundle=list.at(i);
 202.143 +		QString text = QString("%1").arg((int)newBundle.getId());
 202.144 +		QTableWidgetItem *newItem = new QTableWidgetItem(text);
 202.145 +		table->setItem(i, 0, newItem);
 202.146 +	
 202.147 +		QDateTime time= newBundle.getTime();
 202.148 +		text = time.toString("MM/dd/yyyy hh:mm:ss");
 202.149 +		newItem = new QTableWidgetItem(text);
 202.150 +		table->setItem(i, 1, newItem);
 202.151 +
 202.152 +	
 202.153 +		newItem = new QTableWidgetItem((QString)newBundle.sourceString);
 202.154 +		table->setItem(i, 2, newItem);
 202.155 +		
 202.156 +		newItem = new QTableWidgetItem((QString)newBundle.destinationString);
 202.157 +		table->setItem(i, 3, newItem);
 202.158 +		
 202.159 +		text = QString("%1").arg((int)newBundle.getSourceId());
 202.160 +		newItem = new QTableWidgetItem(text);
 202.161 +		table->setItem(i, 4, newItem);
 202.162 +
 202.163 +		text = QString("%1").arg((int)newBundle.getDestinationId());
 202.164 +		newItem = new QTableWidgetItem(text);
 202.165 +		table->setItem(i, 5, newItem);
 202.166 +	
 202.167 +		newItem = new QTableWidgetItem((QString)newBundle.getData());
 202.168 +		table->setItem(i, 6, newItem);
 202.169 +
 202.170 +		text = QString("%1").arg((int)newBundle.getOptions());
 202.171 +		newItem = new QTableWidgetItem(text);
 202.172 +		table->setItem(i, 7, newItem);
 202.173 +
 202.174 +	}
 202.175 +}
 202.176 +
 202.177 +void DebugWidget::getNodeList(QList<Node> list)
 202.178 +{
 202.179 +	Node tempNode;
 202.180 +	nodeTable->clear();
 202.181 +    QStringList horizontalNodeLabels;
 202.182 +    horizontalNodeLabels << "ID" << "Name" << "Probability" << "RIB Flag";
 202.183 +	nodeTable->setHorizontalHeaderLabels(horizontalNodeLabels); 
 202.184 +    for (int i = 0; i < list.size(); ++i) 
 202.185 +	{
 202.186 +		tempNode=list.at(i);
 202.187 +
 202.188 +		QString text = QString("%1").arg((int)tempNode.nodeId);
 202.189 +		QTableWidgetItem *newItem = new QTableWidgetItem(text);
 202.190 +		nodeTable->setItem(i, 0, newItem);
 202.191 +
 202.192 +		text = tempNode.getName();
 202.193 +		newItem = new QTableWidgetItem(text);
 202.194 +		nodeTable->setItem(i, 1, newItem);
 202.195 +
 202.196 +		text = QString("%1").arg((float)tempNode.probability);
 202.197 +		newItem = new QTableWidgetItem(text);
 202.198 +		nodeTable->setItem(i, 2, newItem);
 202.199 +
 202.200 +		text = QString("%1").arg((int)tempNode.flag);
 202.201 +		newItem = new QTableWidgetItem(text);
 202.202 +		nodeTable->setItem(i, 3, newItem);
 202.203 +		//table->resizeRowToContents(i);
 202.204 +	}
 202.205 +}
 202.206 +
 202.207 +void DebugWidget::getConnectionList(QList<ConnectionInfo> list)
 202.208 +{
 202.209 +	ConnectionInfo tempNode;
 202.210 +	conTable->clear();
 202.211 +     QStringList horizontalConLabels;
 202.212 +    horizontalConLabels << "ID" << "IP" << "Alive" << "State"<< "Error";
 202.213 +	conTable->setHorizontalHeaderLabels(horizontalConLabels); 
 202.214 +   for (int i = 0; i < list.size(); ++i) 
 202.215 +	{
 202.216 +		tempNode=list.at(i);
 202.217 +
 202.218 +		QString text = QString("%1").arg((int)tempNode.id);
 202.219 +		QTableWidgetItem *newItem = new QTableWidgetItem(text);
 202.220 +		conTable->setItem(i, 0, newItem);
 202.221 +
 202.222 +		text = tempNode.ip.toString();
 202.223 +		newItem = new QTableWidgetItem(text);
 202.224 +		conTable->setItem(i, 1, newItem);
 202.225 +
 202.226 +		text = QString("%1").arg((int)tempNode.alive);
 202.227 +		newItem = new QTableWidgetItem(text);
 202.228 +		conTable->setItem(i, 2, newItem);
 202.229 +		
 202.230 +		int x = tempNode.tcpSocket->state();
 202.231 +		text = QString("%1").arg((int)x);
 202.232 +		newItem = new QTableWidgetItem(text);
 202.233 +		conTable->setItem(i, 3, newItem);
 202.234 +		 x = tempNode.tcpSocket->error();
 202.235 +		text = QString("%1").arg((int)x);
 202.236 +		newItem = new QTableWidgetItem(text);
 202.237 +		conTable->setItem(i, 4, newItem);
 202.238 +		//table->resizeRowToContents(i);
 202.239 +	}
 202.240 +
 202.241 + }
 202.242 +
 202.243 +void DebugWidget::getStorageSize(int size)
 202.244 +{
 202.245 +/*	QString itemText;
 202.246 +	itemText.append("Usede storage size: ");
 202.247 +	itemText.append(QString("%1").arg(size));
 202.248 +	itemText.append("       ");
 202.249 +    QListWidgetItem *newItem = new QListWidgetItem;
 202.250 +    newItem->setText(itemText);
 202.251 +    info->insertItem(5, newItem);
 202.252 +	info->setCurrentRow ( 5 );*/
 202.253 +}
 202.254 +
 202.255 +void DebugWidget::getLog(QString log)
 202.256 +{
 202.257 +	if(dtnEntery>DTN)
 202.258 +	{
 202.259 +		dtnInfo->clear();
 202.260 +		dtnEntery=0;
 202.261 +	}
 202.262 +	dtnInfo->append(log);
 202.263 +	dtnEntery++;
 202.264 +}
 202.265 +
 202.266 +void DebugWidget::forwardAppBundle(Bundle newBundle)
 202.267 +{
 202.268 +	emit sendAppBundle(newBundle);
 202.269 +}
 202.270 +
 202.271 +void DebugWidget::getAppBundle(Bundle newBundle)
 202.272 +{
 202.273 +	message->getBundle(newBundle);
 202.274 +}
   203.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   203.2 +++ b/x86/Win32/debugWidget.h	Thu Jun 26 17:39:40 2008 +0100
   203.3 @@ -0,0 +1,41 @@
   203.4 +#ifndef DEBUGWIDGET_H
   203.5 +#define DEBUGWIDGET_H
   203.6 +
   203.7 +
   203.8 +#include <QtGui>
   203.9 +#include <bundle.h>
  203.10 +#include <node.h>
  203.11 +#include <msgWidget.h>
  203.12 +#include <neighbourAwareness.h>
  203.13 +
  203.14 +class DebugWidget : public QWidget
  203.15 +{
  203.16 +	Q_OBJECT 
  203.17 +	
  203.18 +
  203.19 +	public:
  203.20 +		DebugWidget(NodeManager*,QWidget *parent = 0);
  203.21 +		QTableWidget *table;
  203.22 +		QTableWidget *nodeTable;
  203.23 +		QTableWidget *conTable;
  203.24 +		MsgWidget *message;
  203.25 +		QTabWidget *tabWidget;
  203.26 +		QListWidget *info;
  203.27 +		QTextEdit *dtnInfo;
  203.28 +		int dtnEntery;
  203.29 +	 signals:
  203.30 +		void sendAppBundle(Bundle);
  203.31 +
  203.32 +	public slots:
  203.33 +	void getLog(QString);
  203.34 +	void getStorageSize(int);
  203.35 +	void getConnectionList(QList<ConnectionInfo> list);
  203.36 +	void getBundleList(QList<Bundle>);
  203.37 +	void forwardAppBundle(Bundle);
  203.38 +	void getAppBundle(Bundle);
  203.39 +	void getNodeList(QList<Node>);
  203.40 +};
  203.41 +
  203.42 +#endif
  203.43 +
  203.44 +
   204.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   204.2 +++ b/x86/Win32/hello.cpp	Thu Jun 26 17:39:40 2008 +0100
   204.3 @@ -0,0 +1,65 @@
   204.4 +#include <QtCore>
   204.5 +#include <hello.h>
   204.6 +
   204.7 +Hello::Hello(QObject *parent)
   204.8 +{
   204.9 +	reserved=0;
  204.10 +	HFunction=0;
  204.11 +	timer=0;
  204.12 +	senderId=0;
  204.13 +	senderType=0;
  204.14 +	senderName.clear();
  204.15 +}
  204.16 +
  204.17 +
  204.18 +Hello& Hello::operator=(const Hello& other)
  204.19 +{
  204.20 + reserved = other.reserved;
  204.21 + HFunction = other.HFunction;
  204.22 + timer = other.timer;
  204.23 + senderName = other.senderName;
  204.24 + senderId = other.senderId;
  204.25 + senderType = other.senderType;
  204.26 + return *this;
  204.27 +}
  204.28 +
  204.29 +Hello::Hello(const Hello& other)
  204.30 +{
  204.31 + reserved = other.reserved;
  204.32 + HFunction = other.HFunction;
  204.33 + timer = other.timer;
  204.34 + senderName = other.senderName;
  204.35 +  senderId = other.senderId;
  204.36 + senderType = other.senderType;
  204.37 +
  204.38 +}	
  204.39 +	
  204.40 +void Hello::setFunction(int function)
  204.41 +{
  204.42 +	HFunction=function;
  204.43 +}
  204.44 +
  204.45 +void Hello::setSenderName(QString name)
  204.46 +{
  204.47 +	senderName=name;
  204.48 +}
  204.49 +
  204.50 +int Hello::getFunction()
  204.51 +{
  204.52 +	return HFunction;
  204.53 +}
  204.54 +
  204.55 +QString Hello::getSenderName()
  204.56 +{
  204.57 +	return senderName;
  204.58 +}
  204.59 +
  204.60 +void Hello::setTimer(int t)
  204.61 +{
  204.62 +	timer=t;
  204.63 +}
  204.64 +
  204.65 +int Hello::getTimer()
  204.66 +{
  204.67 +	return timer;
  204.68 +}
  204.69 \ No newline at end of file
   205.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   205.2 +++ b/x86/Win32/hello.h	Thu Jun 26 17:39:40 2008 +0100
   205.3 @@ -0,0 +1,38 @@
   205.4 +#ifndef HELLO_H
   205.5 +#define HELLO_H
   205.6 +
   205.7 +#define SYN 1
   205.8 +#define SYNACK 2
   205.9 +#define ACK 3
  205.10 +#define RSTACK 4
  205.11 +
  205.12 +
  205.13 +
  205.14 +#include <QtCore>
  205.15 +
  205.16 +class Hello : public QObject
  205.17 +{
  205.18 +
  205.19 +Q_OBJECT 
  205.20 +	public:
  205.21 +	int reserved;
  205.22 +	int HFunction;
  205.23 +	int timer;
  205.24 +	int senderId;
  205.25 +	int senderType;
  205.26 +	QString senderName;
  205.27 +
  205.28 +	Hello(QObject *parent = 0);
  205.29 +	Hello(const Hello& other);
  205.30 +	Hello& operator=(const Hello& other);
  205.31 +
  205.32 +
  205.33 +	void setFunction(int);
  205.34 +	int getFunction(); 
  205.35 +	QString getSenderName();	
  205.36 +	void setSenderName(QString);
  205.37 +	void setTimer(int);
  205.38 +	int getTimer(); 
  205.39 +};
  205.40 +
  205.41 +#endif
  205.42 \ No newline at end of file
   206.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   206.2 +++ b/x86/Win32/main.cpp	Thu Jun 26 17:39:40 2008 +0100
   206.3 @@ -0,0 +1,57 @@
   206.4 +#include <QtGui>
   206.5 +#include <QtCore>
   206.6 +#include <neighbourAwareness.h>
   206.7 +#include <DTNInterface.h>
   206.8 +#include <debugWidget.h>
   206.9 +#include <messageFile.h>
  206.10 +#include <readFile.h>
  206.11 +
  206.12 +
  206.13 +using namespace std;
  206.14 +
  206.15 +
  206.16 +int main(int argc, char *argv[])
  206.17 +{
  206.18 +	QApplication app(argc, argv);
  206.19 +	ReadFile* conf;
  206.20 +	conf = new ReadFile;
  206.21 +	//Prepare Log File
  206.22 +	if(conf->getLogOption()==1)
  206.23 +	{
  206.24 +		MessageFile *log;
  206.25 +		log = new MessageFile;
  206.26 +		log->set("startup.log", 1000000, 5);
  206.27 +		log->addLog(0,(QString)"Starting Prophet!");
  206.28 +	}
  206.29 +
  206.30 +	//Create bundle manager
  206.31 +	BundleManager* mainBundleMananger = new BundleManager(conf->getNodeId());
  206.32 +	//Create node manager
  206.33 +	NodeManager* mainNodeManager = new NodeManager();//mainBundleMananger);
  206.34 +	//Create DTN interface
  206.35 +	DTNInterface* mainDTNInterface = new DTNInterface(mainBundleMananger,mainNodeManager);
  206.36 +	//Create debug
  206.37 +	DebugWidget* debugWidget = new DebugWidget(mainNodeManager);
  206.38 +	debugWidget->show();
  206.39 +	//Connect Bundle manager, Node manager and Debug widget
  206.40 +	debugWidget->connect(mainBundleMananger,SIGNAL(sendDebugBundleList(QList<Bundle>)),debugWidget,SLOT(getBundleList(QList<Bundle>)));
  206.41 +	debugWidget->connect(debugWidget,SIGNAL(sendAppBundle(Bundle)),mainBundleMananger,SLOT(addBundle(Bundle)));
  206.42 +	debugWidget->connect(mainBundleMananger,SIGNAL(sendStorage(int)),debugWidget,SLOT(getStorageSize(int)));
  206.43 +	//Updating bundle destinations
  206.44 +
  206.45 +	debugWidget->connect(mainNodeManager,SIGNAL(updatedNodeList(NodeManager*)),mainBundleMananger,SLOT(updateBundlesDestinations(NodeManager*)));
  206.46 +
  206.47 +	//Connect DTN Inteface and Debug widget
  206.48 +	debugWidget->connect(mainDTNInterface,SIGNAL(sendLog(QString)),debugWidget,SLOT(getLog(QString)));
  206.49 +	mainDTNInterface->connect(mainDTNInterface,SIGNAL(sendBundle(Bundle)),mainBundleMananger,SLOT(addBundle(Bundle)));
  206.50 +	mainDTNInterface->connect(mainBundleMananger,SIGNAL(sendDeliveredBundle(Bundle)),mainDTNInterface,SLOT(receiveBundle(Bundle)));
  206.51 +	//Connect Node manager and Debug widget
  206.52 +	debugWidget->connect(mainNodeManager,SIGNAL(sendDebugNodeList(QList<Node>)),debugWidget,SLOT(getNodeList(QList<Node>)));
  206.53 +	//Neighbor Awarnes 	
  206.54 +	NeighAware* neighbourawareness = new NeighAware(mainBundleMananger,mainNodeManager);
  206.55 +	debugWidget->connect(neighbourawareness,SIGNAL(sendDebugConList(QList<ConnectionInfo>)),debugWidget,SLOT(getConnectionList(QList<ConnectionInfo>)));
  206.56 +	delete conf;
  206.57 +	app.exec();
  206.58 +	return 0;
  206.59 +
  206.60 +}
   207.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   207.2 +++ b/x86/Win32/main.h	Thu Jun 26 17:39:40 2008 +0100
   207.3 @@ -0,0 +1,2 @@
   207.4 +#include <QtGui>
   207.5 +
   208.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   208.2 +++ b/x86/Win32/messageFile.cpp	Thu Jun 26 17:39:40 2008 +0100
   208.3 @@ -0,0 +1,132 @@
   208.4 +#include <messageFile.h>
   208.5 +#include <readFile.h>
   208.6 +
   208.7 +#ifdef Q_WS_X11
   208.8 +#include <sys/types.h>
   208.9 +#include <sys/stat.h> 
  208.10 +#endif
  208.11 +
  208.12 +#include <QTextStream>
  208.13 +
  208.14 +void MessageFile::set(QString fileName, int fileSize, int fileNo)
  208.15 +{
  208.16 +	msgFileName = fileName;
  208.17 +	msgFileSize = fileSize;
  208.18 +	msgFileNo = fileNo;
  208.19 +	mutex = new QMutex;
  208.20 +	dt = new QDateTime;
  208.21 +	ReadFile conf;
  208.22 +	storagePath=conf.getLogPath();
  208.23 +	dir.setPath(storagePath);
  208.24 +
  208.25 +}
  208.26 +
  208.27 +
  208.28 +void MessageFile::saveMessage(QString& message)
  208.29 +{
  208.30 +	saveMessage(message, false);
  208.31 +}
  208.32 +
  208.33 +void MessageFile::saveMessage(QString& message, bool datetime)
  208.34 +{
  208.35 +	QString dateTime;
  208.36 +	if (datetime == true)
  208.37 +	{
  208.38 +		mutex->lock();
  208.39 +		(*dt) = dt->currentDateTime();
  208.40 +		dateTime = dt->toString("MM/dd/yyyy hh:mm:ss.zzz ");
  208.41 +		mutex->unlock();
  208.42 +	}
  208.43 +	dateTime += message;
  208.44 +	saveMessage(0, dateTime);
  208.45 +
  208.46 +}
  208.47 +
  208.48 +
  208.49 +void MessageFile::saveMessage(int type, QString& message)
  208.50 +{
  208.51 +//	qDebug(message);
  208.52 +	mutex->lock();
  208.53 +	int i = 0;
  208.54 +	bool exists;
  208.55 +	QFile* f;
  208.56 +	f = new QFile(dir.filePath(msgFileName));
  208.57 +	exists = f->exists();
  208.58 +	if (f->open(QIODevice::WriteOnly|QIODevice::Append) == true)
  208.59 +	{
  208.60 +		QTextStream stream(f);
  208.61 +		stream << message;
  208.62 +		stream << "\r\n";
  208.63 +		i = f->size();
  208.64 +//		qDebug(QString("MessageFile size: %1 %2\r\n").arg(i).arg(msgFileSize));
  208.65 +		f->close();
  208.66 +#ifdef Q_WS_X11
  208.67 +		if (exists == false)
  208.68 +			chmod(msgFileName.toAscii(), S_IROTH|S_IWOTH|S_IRGRP|S_IWGRP|S_IRUSR|S_IWUSR);
  208.69 +#endif
  208.70 +	}
  208.71 +	delete f;
  208.72 +	if (i > msgFileSize)
  208.73 +	{
  208.74 +		QDir dir;
  208.75 +		QString fileNameOld;
  208.76 +		QString fileNameNew;
  208.77 +		i = msgFileNo;
  208.78 +		while (i > 1)
  208.79 +		{
  208.80 +			fileNameOld = msgFileName;
  208.81 +			fileNameOld += QString(".%1").arg(i);
  208.82 +			dir.remove(fileNameOld);
  208.83 +			i--;
  208.84 +			fileNameNew = msgFileName;
  208.85 +			fileNameNew += QString(".%1").arg(i);
  208.86 +			dir.rename(fileNameNew, fileNameOld);
  208.87 +		}
  208.88 +		fileNameOld = msgFileName;
  208.89 +		fileNameOld += QString(".%1").arg(i);
  208.90 +		dir.remove(fileNameOld);
  208.91 +		i--;
  208.92 +		fileNameNew = msgFileName;
  208.93 +		dir.rename(fileNameNew, fileNameOld);
  208.94 +	}
  208.95 +	mutex->unlock();
  208.96 +}
  208.97 +
  208.98 +void MessageFile::loadList(QStringList& sl, unsigned int maxItemNo)
  208.99 +{
 208.100 +	mutex->lock();
 208.101 +	sl.clear();
 208.102 +	QString line;
 208.103 +	QFile* f;
 208.104 +	f = new QFile(msgFileName);
 208.105 +	if (f->open(QIODevice::ReadOnly) == true)
 208.106 +	{
 208.107 +		QTextStream stream(f);
 208.108 +		while ((!stream.atEnd()) && (maxItemNo > 0))
 208.109 +		{
 208.110 +			sl.prepend(stream.readLine());
 208.111 +			maxItemNo--;
 208.112 +		}
 208.113 +		f->close();
 208.114 +	}
 208.115 +	mutex->unlock();
 208.116 +}
 208.117 +
 208.118 +void MessageFile::addLog(int indet,QString message)
 208.119 +{
 208.120 +	QString dateTime;
 208.121 +	QString id;
 208.122 +	id.sprintf(" %03d>> ", indet);
 208.123 +	if (1)
 208.124 +	{
 208.125 +		mutex->lock();
 208.126 +		(*dt) = dt->currentDateTime();
 208.127 +		dateTime = dt->toString("MM/dd/yyyy hh:mm:ss.zzz ");
 208.128 +		mutex->unlock();
 208.129 +	}
 208.130 +	dateTime += id;
 208.131 +	dateTime += message;
 208.132 +	saveMessage(0, dateTime);
 208.133 +
 208.134 +}
 208.135 +
   209.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   209.2 +++ b/x86/Win32/messageFile.h	Thu Jun 26 17:39:40 2008 +0100
   209.3 @@ -0,0 +1,35 @@
   209.4 +#ifndef MESSAGEFILE_H
   209.5 +#define MESSAGEFILE_H
   209.6 +
   209.7 +#include <qobject.h>
   209.8 +#include <qfile.h>
   209.9 +#include <qdir.h>
  209.10 +#include <qmutex.h>
  209.11 +#include <qstringlist.h>
  209.12 +#include <qdatetime.h>
  209.13 +
  209.14 +class MessageFile : public QObject
  209.15 +{
  209.16 +	Q_OBJECT
  209.17 +
  209.18 +public:
  209.19 +	virtual void set(QString fileName, int fileSize, int fileNo);
  209.20 +	virtual void loadList(QStringList& sl, unsigned int maxItemNo = 0xFFFFFFFF);
  209.21 +	void MessageFile::addLog(int indet,QString message);
  209.22 +
  209.23 +public slots:
  209.24 +	virtual void saveMessage(int type, QString& message);
  209.25 +	virtual void saveMessage(QString& message);
  209.26 +	virtual void saveMessage(QString& message, bool datetime);
  209.27 +
  209.28 +protected:
  209.29 +	QString msgFileName;
  209.30 +	int msgFileSize;
  209.31 +	int msgFileNo;
  209.32 +	QMutex* mutex;
  209.33 +	QDateTime* dt;
  209.34 +	QString storagePath;
  209.35 +	QDir dir;
  209.36 +};
  209.37 +
  209.38 +#endif
   210.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   210.2 +++ b/x86/Win32/moc_DTNInterface.cpp	Thu Jun 26 17:39:40 2008 +0100
   210.3 @@ -0,0 +1,94 @@
   210.4 +/****************************************************************************
   210.5 +** Meta object code from reading C++ file 'DTNInterface.h'
   210.6 +**
   210.7 +** Created: Wed Aug 9 11:25:43 2006
   210.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
   210.9 +**
  210.10 +** WARNING! All changes made in this file will be lost!
  210.11 +*****************************************************************************/
  210.12 +
  210.13 +#include "DTNInterface.h"
  210.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  210.15 +#error "The header file 'DTNInterface.h' doesn't include <QObject>."
  210.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  210.17 +#error "This file was generated using the moc from 4.1.3. It"
  210.18 +#error "cannot be used with the include files from this version of Qt."
  210.19 +#error "(The moc has changed too much.)"
  210.20 +#endif
  210.21 +
  210.22 +static const uint qt_meta_data_DTNInterface[] = {
  210.23 +
  210.24 + // content:
  210.25 +       1,       // revision
  210.26 +       0,       // classname
  210.27 +       0,    0, // classinfo
  210.28 +       5,   10, // methods
  210.29 +       0,    0, // properties
  210.30 +       0,    0, // enums/sets
  210.31 +
  210.32 + // signals: signature, parameters, type, tag, flags
  210.33 +      14,   13,   13,   13, 0x05,
  210.34 +      31,   13,   13,   13, 0x05,
  210.35 +
  210.36 + // slots: signature, parameters, type, tag, flags
  210.37 +      50,   13,   13,   13, 0x0a,
  210.38 +      72,   63,   13,   13, 0x0a,
  210.39 +      96,   13,   13,   13, 0x0a,
  210.40 +
  210.41 +       0        // eod
  210.42 +};
  210.43 +
  210.44 +static const char qt_meta_stringdata_DTNInterface[] = {
  210.45 +    "DTNInterface\0\0sendLog(QString)\0sendBundle(Bundle)\0getBundles()\0"
  210.46 +    "response\0getResponse(QByteArray)\0receiveBundle(Bundle)\0"
  210.47 +};
  210.48 +
  210.49 +const QMetaObject DTNInterface::staticMetaObject = {
  210.50 +    { &QObject::staticMetaObject, qt_meta_stringdata_DTNInterface,
  210.51 +      qt_meta_data_DTNInterface, 0 }
  210.52 +};
  210.53 +
  210.54 +const QMetaObject *DTNInterface::metaObject() const
  210.55 +{
  210.56 +    return &staticMetaObject;
  210.57 +}
  210.58 +
  210.59 +void *DTNInterface::qt_metacast(const char *_clname)
  210.60 +{
  210.61 +    if (!_clname) return 0;
  210.62 +    if (!strcmp(_clname, qt_meta_stringdata_DTNInterface))
  210.63 +	return static_cast<void*>(const_cast<DTNInterface*>(this));
  210.64 +    return QObject::qt_metacast(_clname);
  210.65 +}
  210.66 +
  210.67 +int DTNInterface::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  210.68 +{
  210.69 +    _id = QObject::qt_metacall(_c, _id, _a);
  210.70 +    if (_id < 0)
  210.71 +        return _id;
  210.72 +    if (_c == QMetaObject::InvokeMetaMethod) {
  210.73 +        switch (_id) {
  210.74 +        case 0: sendLog((*reinterpret_cast< QString(*)>(_a[1]))); break;
  210.75 +        case 1: sendBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
  210.76 +        case 2: getBundles(); break;
  210.77 +        case 3: getResponse((*reinterpret_cast< QByteArray(*)>(_a[1]))); break;
  210.78 +        case 4: receiveBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
  210.79 +        }
  210.80 +        _id -= 5;
  210.81 +    }
  210.82 +    return _id;
  210.83 +}
  210.84 +
  210.85 +// SIGNAL 0
  210.86 +void DTNInterface::sendLog(QString _t1)
  210.87 +{
  210.88 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  210.89 +    QMetaObject::activate(this, &staticMetaObject, 0, _a);
  210.90 +}
  210.91 +
  210.92 +// SIGNAL 1
  210.93 +void DTNInterface::sendBundle(Bundle _t1)
  210.94 +{
  210.95 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  210.96 +    QMetaObject::activate(this, &staticMetaObject, 1, _a);
  210.97 +}
   211.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   211.2 +++ b/x86/Win32/moc_bundle.cpp	Thu Jun 26 17:39:40 2008 +0100
   211.3 @@ -0,0 +1,60 @@
   211.4 +/****************************************************************************
   211.5 +** Meta object code from reading C++ file 'bundle.h'
   211.6 +**
   211.7 +** Created: Wed Aug 9 11:25:22 2006
   211.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
   211.9 +**
  211.10 +** WARNING! All changes made in this file will be lost!
  211.11 +*****************************************************************************/
  211.12 +
  211.13 +#include "bundle.h"
  211.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  211.15 +#error "The header file 'bundle.h' doesn't include <QObject>."
  211.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  211.17 +#error "This file was generated using the moc from 4.1.3. It"
  211.18 +#error "cannot be used with the include files from this version of Qt."
  211.19 +#error "(The moc has changed too much.)"
  211.20 +#endif
  211.21 +
  211.22 +static const uint qt_meta_data_Bundle[] = {
  211.23 +
  211.24 + // content:
  211.25 +       1,       // revision
  211.26 +       0,       // classname
  211.27 +       0,    0, // classinfo
  211.28 +       0,    0, // methods
  211.29 +       0,    0, // properties
  211.30 +       0,    0, // enums/sets
  211.31 +
  211.32 +       0        // eod
  211.33 +};
  211.34 +
  211.35 +static const char qt_meta_stringdata_Bundle[] = {
  211.36 +    "Bundle\0"
  211.37 +};
  211.38 +
  211.39 +const QMetaObject Bundle::staticMetaObject = {
  211.40 +    { &QObject::staticMetaObject, qt_meta_stringdata_Bundle,
  211.41 +      qt_meta_data_Bundle, 0 }
  211.42 +};
  211.43 +
  211.44 +const QMetaObject *Bundle::metaObject() const
  211.45 +{
  211.46 +    return &staticMetaObject;
  211.47 +}
  211.48 +
  211.49 +void *Bundle::qt_metacast(const char *_clname)
  211.50 +{
  211.51 +    if (!_clname) return 0;
  211.52 +    if (!strcmp(_clname, qt_meta_stringdata_Bundle))
  211.53 +	return static_cast<void*>(const_cast<Bundle*>(this));
  211.54 +    return QObject::qt_metacast(_clname);
  211.55 +}
  211.56 +
  211.57 +int Bundle::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  211.58 +{
  211.59 +    _id = QObject::qt_metacall(_c, _id, _a);
  211.60 +    if (_id < 0)
  211.61 +        return _id;
  211.62 +    return _id;
  211.63 +}
   212.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   212.2 +++ b/x86/Win32/moc_bundleManager.cpp	Thu Jun 26 17:39:40 2008 +0100
   212.3 @@ -0,0 +1,112 @@
   212.4 +/****************************************************************************
   212.5 +** Meta object code from reading C++ file 'bundleManager.h'
   212.6 +**
   212.7 +** Created: Wed Aug 9 11:25:26 2006
   212.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
   212.9 +**
  212.10 +** WARNING! All changes made in this file will be lost!
  212.11 +*****************************************************************************/
  212.12 +
  212.13 +#include "bundleManager.h"
  212.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  212.15 +#error "The header file 'bundleManager.h' doesn't include <QObject>."
  212.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  212.17 +#error "This file was generated using the moc from 4.1.3. It"
  212.18 +#error "cannot be used with the include files from this version of Qt."
  212.19 +#error "(The moc has changed too much.)"
  212.20 +#endif
  212.21 +
  212.22 +static const uint qt_meta_data_BundleManager[] = {
  212.23 +
  212.24 + // content:
  212.25 +       1,       // revision
  212.26 +       0,       // classname
  212.27 +       0,    0, // classinfo
  212.28 +       9,   10, // methods
  212.29 +       0,    0, // properties
  212.30 +       0,    0, // enums/sets
  212.31 +
  212.32 + // signals: signature, parameters, type, tag, flags
  212.33 +      15,   14,   14,   14, 0x05,
  212.34 +      43,   14,   14,   14, 0x05,
  212.35 +      60,   14,   14,   14, 0x05,
  212.36 +
  212.37 + // slots: signature, parameters, type, tag, flags
  212.38 +      95,   14,   14,   14, 0x0a,
  212.39 +     135,   14,   14,   14, 0x0a,
  212.40 +     153,   14,   14,   14, 0x0a,
  212.41 +     182,   14,   14,   14, 0x0a,
  212.42 +     195,   14,   14,   14, 0x0a,
  212.43 +     210,   14,   14,   14, 0x0a,
  212.44 +
  212.45 +       0        // eod
  212.46 +};
  212.47 +
  212.48 +static const char qt_meta_stringdata_BundleManager[] = {
  212.49 +    "BundleManager\0\0sendDeliveredBundle(Bundle)\0sendStorage(int)\0"
  212.50 +    "sendDebugBundleList(QList<Bundle>)\0"
  212.51 +    "updateBundlesDestinations(NodeManager*)\0addBundle(Bundle)\0"
  212.52 +    "addBundleList(QList<Bundle>)\0saveToFile()\0readFromFile()\0"
  212.53 +    "emitDebugList()\0"
  212.54 +};
  212.55 +
  212.56 +const QMetaObject BundleManager::staticMetaObject = {
  212.57 +    { &QObject::staticMetaObject, qt_meta_stringdata_BundleManager,
  212.58 +      qt_meta_data_BundleManager, 0 }
  212.59 +};
  212.60 +
  212.61 +const QMetaObject *BundleManager::metaObject() const
  212.62 +{
  212.63 +    return &staticMetaObject;
  212.64 +}
  212.65 +
  212.66 +void *BundleManager::qt_metacast(const char *_clname)
  212.67 +{
  212.68 +    if (!_clname) return 0;
  212.69 +    if (!strcmp(_clname, qt_meta_stringdata_BundleManager))
  212.70 +	return static_cast<void*>(const_cast<BundleManager*>(this));
  212.71 +    return QObject::qt_metacast(_clname);
  212.72 +}
  212.73 +
  212.74 +int BundleManager::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  212.75 +{
  212.76 +    _id = QObject::qt_metacall(_c, _id, _a);
  212.77 +    if (_id < 0)
  212.78 +        return _id;
  212.79 +    if (_c == QMetaObject::InvokeMetaMethod) {
  212.80 +        switch (_id) {
  212.81 +        case 0: sendDeliveredBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
  212.82 +        case 1: sendStorage((*reinterpret_cast< int(*)>(_a[1]))); break;
  212.83 +        case 2: sendDebugBundleList((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  212.84 +        case 3: updateBundlesDestinations((*reinterpret_cast< NodeManager*(*)>(_a[1]))); break;
  212.85 +        case 4: addBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
  212.86 +        case 5: addBundleList((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  212.87 +        case 6: saveToFile(); break;
  212.88 +        case 7: readFromFile(); break;
  212.89 +        case 8: emitDebugList(); break;
  212.90 +        }
  212.91 +        _id -= 9;
  212.92 +    }
  212.93 +    return _id;
  212.94 +}
  212.95 +
  212.96 +// SIGNAL 0
  212.97 +void BundleManager::sendDeliveredBundle(Bundle _t1)
  212.98 +{
  212.99 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 212.100 +    QMetaObject::activate(this, &staticMetaObject, 0, _a);
 212.101 +}
 212.102 +
 212.103 +// SIGNAL 1
 212.104 +void BundleManager::sendStorage(int _t1)
 212.105 +{
 212.106 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 212.107 +    QMetaObject::activate(this, &staticMetaObject, 1, _a);
 212.108 +}
 212.109 +
 212.110 +// SIGNAL 2
 212.111 +void BundleManager::sendDebugBundleList(QList<Bundle> _t1)
 212.112 +{
 212.113 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 212.114 +    QMetaObject::activate(this, &staticMetaObject, 2, _a);
 212.115 +}
   213.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   213.2 +++ b/x86/Win32/moc_connection.cpp	Thu Jun 26 17:39:40 2008 +0100
   213.3 @@ -0,0 +1,171 @@
   213.4 +/****************************************************************************
   213.5 +** Meta object code from reading C++ file 'connection.h'
   213.6 +**
   213.7 +** Created: Wed Aug 9 11:25:34 2006
   213.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
   213.9 +**
  213.10 +** WARNING! All changes made in this file will be lost!
  213.11 +*****************************************************************************/
  213.12 +
  213.13 +#include "connection.h"
  213.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  213.15 +#error "The header file 'connection.h' doesn't include <QObject>."
  213.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  213.17 +#error "This file was generated using the moc from 4.1.3. It"
  213.18 +#error "cannot be used with the include files from this version of Qt."
  213.19 +#error "(The moc has changed too much.)"
  213.20 +#endif
  213.21 +
  213.22 +static const uint qt_meta_data_Connection[] = {
  213.23 +
  213.24 + // content:
  213.25 +       1,       // revision
  213.26 +       0,       // classname
  213.27 +       0,    0, // classinfo
  213.28 +      19,   10, // methods
  213.29 +       0,    0, // properties
  213.30 +       0,    0, // enums/sets
  213.31 +
  213.32 + // signals: signature, parameters, type, tag, flags
  213.33 +      12,   11,   11,   11, 0x05,
  213.34 +      39,   11,   11,   11, 0x05,
  213.35 +      56,   11,   11,   11, 0x05,
  213.36 +      84,   11,   11,   11, 0x05,
  213.37 +     105,   11,   11,   11, 0x05,
  213.38 +     139,   11,   11,   11, 0x05,
  213.39 +     170,   11,   11,   11, 0x05,
  213.40 +     203,   11,   11,   11, 0x05,
  213.41 +
  213.42 + // slots: signature, parameters, type, tag, flags
  213.43 +     230,   11,   11,   11, 0x0a,
  213.44 +     258,   11,   11,   11, 0x0a,
  213.45 +     290,   11,   11,   11, 0x0a,
  213.46 +     307,   11,   11,   11, 0x0a,
  213.47 +     327,   11,   11,   11, 0x0a,
  213.48 +     348,   11,   11,   11, 0x0a,
  213.49 +     368,   11,   11,   11, 0x0a,
  213.50 +     399,   11,   11,   11, 0x0a,
  213.51 +     423,   11,   11,   11, 0x0a,
  213.52 +     457,   11,   11,   11, 0x0a,
  213.53 +     493,   11,   11,   11, 0x0a,
  213.54 +
  213.55 +       0        // eod
  213.56 +};
  213.57 +
  213.58 +static const char qt_meta_stringdata_Connection[] = {
  213.59 +    "Connection\0\0sendDataPacket(DataPacket)\0sendHello(Hello)\0"
  213.60 +    "sendDictionary(QList<Node>)\0sendRIB(QList<Node>)\0"
  213.61 +    "forwardSignalDatagram(QByteArray)\0sendBundleOffer(QList<Bundle>)\0"
  213.62 +    "sendBundleRequest(QList<Bundle>)\0sendBundles(QList<Bundle>)\0"
  213.63 +    "receiveDatagram(DataPacket)\0forwardSlotDatagram(QByteArray)\0"
  213.64 +    "helloProcedure()\0listenerProcedure()\0initiatorProcedure()\0"
  213.65 +    "receiveHello(Hello)\0receiveDictionary(QList<Node>)\0"
  213.66 +    "receiveRIB(QList<Node>)\0receiveBundleOffer(QList<Bundle>)\0"
  213.67 +    "receiveBundleRequest(QList<Bundle>)\0receiveBundles(QList<Bundle>)\0"
  213.68 +};
  213.69 +
  213.70 +const QMetaObject Connection::staticMetaObject = {
  213.71 +    { &QObject::staticMetaObject, qt_meta_stringdata_Connection,
  213.72 +      qt_meta_data_Connection, 0 }
  213.73 +};
  213.74 +
  213.75 +const QMetaObject *Connection::metaObject() const
  213.76 +{
  213.77 +    return &staticMetaObject;
  213.78 +}
  213.79 +
  213.80 +void *Connection::qt_metacast(const char *_clname)
  213.81 +{
  213.82 +    if (!_clname) return 0;
  213.83 +    if (!strcmp(_clname, qt_meta_stringdata_Connection))
  213.84 +	return static_cast<void*>(const_cast<Connection*>(this));
  213.85 +    return QObject::qt_metacast(_clname);
  213.86 +}
  213.87 +
  213.88 +int Connection::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  213.89 +{
  213.90 +    _id = QObject::qt_metacall(_c, _id, _a);
  213.91 +    if (_id < 0)
  213.92 +        return _id;
  213.93 +    if (_c == QMetaObject::InvokeMetaMethod) {
  213.94 +        switch (_id) {
  213.95 +        case 0: sendDataPacket((*reinterpret_cast< DataPacket(*)>(_a[1]))); break;
  213.96 +        case 1: sendHello((*reinterpret_cast< Hello(*)>(_a[1]))); break;
  213.97 +        case 2: sendDictionary((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  213.98 +        case 3: sendRIB((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  213.99 +        case 4: forwardSignalDatagram((*reinterpret_cast< QByteArray(*)>(_a[1]))); break;
 213.100 +        case 5: sendBundleOffer((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 213.101 +        case 6: sendBundleRequest((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 213.102 +        case 7: sendBundles((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 213.103 +        case 8: receiveDatagram((*reinterpret_cast< DataPacket(*)>(_a[1]))); break;
 213.104 +        case 9: forwardSlotDatagram((*reinterpret_cast< QByteArray(*)>(_a[1]))); break;
 213.105 +        case 10: helloProcedure(); break;
 213.106 +        case 11: listenerProcedure(); break;
 213.107 +        case 12: initiatorProcedure(); break;
 213.108 +        case 13: receiveHello((*reinterpret_cast< Hello(*)>(_a[1]))); break;
 213.109 +        case 14: receiveDictionary((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
 213.110 +        case 15: receiveRIB((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
 213.111 +        case 16: receiveBundleOffer((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 213.112 +        case 17: receiveBundleRequest((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 213.113 +        case 18: receiveBundles((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 213.114 +        }
 213.115 +        _id -= 19;
 213.116 +    }
 213.117 +    return _id;
 213.118 +}
 213.119 +
 213.120 +// SIGNAL 0
 213.121 +void Connection::sendDataPacket(DataPacket _t1)
 213.122 +{
 213.123 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 213.124 +    QMetaObject::activate(this, &staticMetaObject, 0, _a);
 213.125 +}
 213.126 +
 213.127 +// SIGNAL 1
 213.128 +void Connection::sendHello(Hello _t1)
 213.129 +{
 213.130 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 213.131 +    QMetaObject::activate(this, &staticMetaObject, 1, _a);
 213.132 +}
 213.133 +
 213.134 +// SIGNAL 2
 213.135 +void Connection::sendDictionary(QList<Node> _t1)
 213.136 +{
 213.137 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 213.138 +    QMetaObject::activate(this, &staticMetaObject, 2, _a);
 213.139 +}
 213.140 +
 213.141 +// SIGNAL 3
 213.142 +void Connection::sendRIB(QList<Node> _t1)
 213.143 +{
 213.144 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 213.145 +    QMetaObject::activate(this, &staticMetaObject, 3, _a);
 213.146 +}
 213.147 +
 213.148 +// SIGNAL 4
 213.149 +void Connection::forwardSignalDatagram(QByteArray _t1)
 213.150 +{
 213.151 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 213.152 +    QMetaObject::activate(this, &staticMetaObject, 4, _a);
 213.153 +}
 213.154 +
 213.155 +// SIGNAL 5
 213.156 +void Connection::sendBundleOffer(QList<Bundle> _t1)
 213.157 +{
 213.158 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 213.159 +    QMetaObject::activate(this, &staticMetaObject, 5, _a);
 213.160 +}
 213.161 +
 213.162 +// SIGNAL 6
 213.163 +void Connection::sendBundleRequest(QList<Bundle> _t1)
 213.164 +{
 213.165 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 213.166 +    QMetaObject::activate(this, &staticMetaObject, 6, _a);
 213.167 +}
 213.168 +
 213.169 +// SIGNAL 7
 213.170 +void Connection::sendBundles(QList<Bundle> _t1)
 213.171 +{
 213.172 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 213.173 +    QMetaObject::activate(this, &staticMetaObject, 7, _a);
 213.174 +}
   214.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   214.2 +++ b/x86/Win32/moc_dataPacket.cpp	Thu Jun 26 17:39:40 2008 +0100
   214.3 @@ -0,0 +1,60 @@
   214.4 +/****************************************************************************
   214.5 +** Meta object code from reading C++ file 'dataPacket.h'
   214.6 +**
   214.7 +** Created: Wed Aug 9 11:25:40 2006
   214.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
   214.9 +**
  214.10 +** WARNING! All changes made in this file will be lost!
  214.11 +*****************************************************************************/
  214.12 +
  214.13 +#include "dataPacket.h"
  214.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  214.15 +#error "The header file 'dataPacket.h' doesn't include <QObject>."
  214.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  214.17 +#error "This file was generated using the moc from 4.1.3. It"
  214.18 +#error "cannot be used with the include files from this version of Qt."
  214.19 +#error "(The moc has changed too much.)"
  214.20 +#endif
  214.21 +
  214.22 +static const uint qt_meta_data_DataPacket[] = {
  214.23 +
  214.24 + // content:
  214.25 +       1,       // revision
  214.26 +       0,       // classname
  214.27 +       0,    0, // classinfo
  214.28 +       0,    0, // methods
  214.29 +       0,    0, // properties
  214.30 +       0,    0, // enums/sets
  214.31 +
  214.32 +       0        // eod
  214.33 +};
  214.34 +
  214.35 +static const char qt_meta_stringdata_DataPacket[] = {
  214.36 +    "DataPacket\0"
  214.37 +};
  214.38 +
  214.39 +const QMetaObject DataPacket::staticMetaObject = {
  214.40 +    { &QObject::staticMetaObject, qt_meta_stringdata_DataPacket,
  214.41 +      qt_meta_data_DataPacket, 0 }
  214.42 +};
  214.43 +
  214.44 +const QMetaObject *DataPacket::metaObject() const
  214.45 +{
  214.46 +    return &staticMetaObject;
  214.47 +}
  214.48 +
  214.49 +void *DataPacket::qt_metacast(const char *_clname)
  214.50 +{
  214.51 +    if (!_clname) return 0;
  214.52 +    if (!strcmp(_clname, qt_meta_stringdata_DataPacket))
  214.53 +	return static_cast<void*>(const_cast<DataPacket*>(this));
  214.54 +    return QObject::qt_metacast(_clname);
  214.55 +}
  214.56 +
  214.57 +int DataPacket::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  214.58 +{
  214.59 +    _id = QObject::qt_metacall(_c, _id, _a);
  214.60 +    if (_id < 0)
  214.61 +        return _id;
  214.62 +    return _id;
  214.63 +}
   215.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   215.2 +++ b/x86/Win32/moc_debugWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   215.3 @@ -0,0 +1,95 @@
   215.4 +/****************************************************************************
   215.5 +** Meta object code from reading C++ file 'debugWidget.h'
   215.6 +**
   215.7 +** Created: Wed Aug 9 11:25:28 2006
   215.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
   215.9 +**
  215.10 +** WARNING! All changes made in this file will be lost!
  215.11 +*****************************************************************************/
  215.12 +
  215.13 +#include "debugWidget.h"
  215.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  215.15 +#error "The header file 'debugWidget.h' doesn't include <QObject>."
  215.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  215.17 +#error "This file was generated using the moc from 4.1.3. It"
  215.18 +#error "cannot be used with the include files from this version of Qt."
  215.19 +#error "(The moc has changed too much.)"
  215.20 +#endif
  215.21 +
  215.22 +static const uint qt_meta_data_DebugWidget[] = {
  215.23 +
  215.24 + // content:
  215.25 +       1,       // revision
  215.26 +       0,       // classname
  215.27 +       0,    0, // classinfo
  215.28 +       8,   10, // methods
  215.29 +       0,    0, // properties
  215.30 +       0,    0, // enums/sets
  215.31 +
  215.32 + // signals: signature, parameters, type, tag, flags
  215.33 +      13,   12,   12,   12, 0x05,
  215.34 +
  215.35 + // slots: signature, parameters, type, tag, flags
  215.36 +      35,   12,   12,   12, 0x0a,
  215.37 +      51,   12,   12,   12, 0x0a,
  215.38 +      76,   71,   12,   12, 0x0a,
  215.39 +     117,   12,   12,   12, 0x0a,
  215.40 +     146,   12,   12,   12, 0x0a,
  215.41 +     171,   12,   12,   12, 0x0a,
  215.42 +     192,   12,   12,   12, 0x0a,
  215.43 +
  215.44 +       0        // eod
  215.45 +};
  215.46 +
  215.47 +static const char qt_meta_stringdata_DebugWidget[] = {
  215.48 +    "DebugWidget\0\0sendAppBundle(Bundle)\0getLog(QString)\0"
  215.49 +    "getStorageSize(int)\0list\0getConnectionList(QList<ConnectionInfo>)\0"
  215.50 +    "getBundleList(QList<Bundle>)\0forwardAppBundle(Bundle)\0"
  215.51 +    "getAppBundle(Bundle)\0getNodeList(QList<Node>)\0"
  215.52 +};
  215.53 +
  215.54 +const QMetaObject DebugWidget::staticMetaObject = {
  215.55 +    { &QWidget::staticMetaObject, qt_meta_stringdata_DebugWidget,
  215.56 +      qt_meta_data_DebugWidget, 0 }
  215.57 +};
  215.58 +
  215.59 +const QMetaObject *DebugWidget::metaObject() const
  215.60 +{
  215.61 +    return &staticMetaObject;
  215.62 +}
  215.63 +
  215.64 +void *DebugWidget::qt_metacast(const char *_clname)
  215.65 +{
  215.66 +    if (!_clname) return 0;
  215.67 +    if (!strcmp(_clname, qt_meta_stringdata_DebugWidget))
  215.68 +	return static_cast<void*>(const_cast<DebugWidget*>(this));
  215.69 +    return QWidget::qt_metacast(_clname);
  215.70 +}
  215.71 +
  215.72 +int DebugWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  215.73 +{
  215.74 +    _id = QWidget::qt_metacall(_c, _id, _a);
  215.75 +    if (_id < 0)
  215.76 +        return _id;
  215.77 +    if (_c == QMetaObject::InvokeMetaMethod) {
  215.78 +        switch (_id) {
  215.79 +        case 0: sendAppBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
  215.80 +        case 1: getLog((*reinterpret_cast< QString(*)>(_a[1]))); break;
  215.81 +        case 2: getStorageSize((*reinterpret_cast< int(*)>(_a[1]))); break;
  215.82 +        case 3: getConnectionList((*reinterpret_cast< QList<ConnectionInfo>(*)>(_a[1]))); break;
  215.83 +        case 4: getBundleList((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  215.84 +        case 5: forwardAppBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
  215.85 +        case 6: getAppBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
  215.86 +        case 7: getNodeList((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  215.87 +        }
  215.88 +        _id -= 8;
  215.89 +    }
  215.90 +    return _id;
  215.91 +}
  215.92 +
  215.93 +// SIGNAL 0
  215.94 +void DebugWidget::sendAppBundle(Bundle _t1)
  215.95 +{
  215.96 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  215.97 +    QMetaObject::activate(this, &staticMetaObject, 0, _a);
  215.98 +}
   216.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   216.2 +++ b/x86/Win32/moc_hello.cpp	Thu Jun 26 17:39:40 2008 +0100
   216.3 @@ -0,0 +1,60 @@
   216.4 +/****************************************************************************
   216.5 +** Meta object code from reading C++ file 'hello.h'
   216.6 +**
   216.7 +** Created: Wed Aug 9 11:25:39 2006
   216.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
   216.9 +**
  216.10 +** WARNING! All changes made in this file will be lost!
  216.11 +*****************************************************************************/
  216.12 +
  216.13 +#include "hello.h"
  216.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  216.15 +#error "The header file 'hello.h' doesn't include <QObject>."
  216.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  216.17 +#error "This file was generated using the moc from 4.1.3. It"
  216.18 +#error "cannot be used with the include files from this version of Qt."
  216.19 +#error "(The moc has changed too much.)"
  216.20 +#endif
  216.21 +
  216.22 +static const uint qt_meta_data_Hello[] = {
  216.23 +
  216.24 + // content:
  216.25 +       1,       // revision
  216.26 +       0,       // classname
  216.27 +       0,    0, // classinfo
  216.28 +       0,    0, // methods
  216.29 +       0,    0, // properties
  216.30 +       0,    0, // enums/sets
  216.31 +
  216.32 +       0        // eod
  216.33 +};
  216.34 +
  216.35 +static const char qt_meta_stringdata_Hello[] = {
  216.36 +    "Hello\0"
  216.37 +};
  216.38 +
  216.39 +const QMetaObject Hello::staticMetaObject = {
  216.40 +    { &QObject::staticMetaObject, qt_meta_stringdata_Hello,
  216.41 +      qt_meta_data_Hello, 0 }
  216.42 +};
  216.43 +
  216.44 +const QMetaObject *Hello::metaObject() const
  216.45 +{
  216.46 +    return &staticMetaObject;
  216.47 +}
  216.48 +
  216.49 +void *Hello::qt_metacast(const char *_clname)
  216.50 +{
  216.51 +    if (!_clname) return 0;
  216.52 +    if (!strcmp(_clname, qt_meta_stringdata_Hello))
  216.53 +	return static_cast<void*>(const_cast<Hello*>(this));
  216.54 +    return QObject::qt_metacast(_clname);
  216.55 +}
  216.56 +
  216.57 +int Hello::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  216.58 +{
  216.59 +    _id = QObject::qt_metacall(_c, _id, _a);
  216.60 +    if (_id < 0)
  216.61 +        return _id;
  216.62 +    return _id;
  216.63 +}
   217.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   217.2 +++ b/x86/Win32/moc_messageFile.cpp	Thu Jun 26 17:39:40 2008 +0100
   217.3 @@ -0,0 +1,74 @@
   217.4 +/****************************************************************************
   217.5 +** Meta object code from reading C++ file 'messageFile.h'
   217.6 +**
   217.7 +** Created: Wed Aug 9 11:25:38 2006
   217.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
   217.9 +**
  217.10 +** WARNING! All changes made in this file will be lost!
  217.11 +*****************************************************************************/
  217.12 +
  217.13 +#include "messageFile.h"
  217.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  217.15 +#error "The header file 'messageFile.h' doesn't include <QObject>."
  217.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  217.17 +#error "This file was generated using the moc from 4.1.3. It"
  217.18 +#error "cannot be used with the include files from this version of Qt."
  217.19 +#error "(The moc has changed too much.)"
  217.20 +#endif
  217.21 +
  217.22 +static const uint qt_meta_data_MessageFile[] = {
  217.23 +
  217.24 + // content:
  217.25 +       1,       // revision
  217.26 +       0,       // classname
  217.27 +       0,    0, // classinfo
  217.28 +       3,   10, // methods
  217.29 +       0,    0, // properties
  217.30 +       0,    0, // enums/sets
  217.31 +
  217.32 + // slots: signature, parameters, type, tag, flags
  217.33 +      26,   13,   12,   12, 0x0a,
  217.34 +      60,   52,   12,   12, 0x0a,
  217.35 +      99,   82,   12,   12, 0x0a,
  217.36 +
  217.37 +       0        // eod
  217.38 +};
  217.39 +
  217.40 +static const char qt_meta_stringdata_MessageFile[] = {
  217.41 +    "MessageFile\0\0type,message\0saveMessage(int,QString&)\0message\0"
  217.42 +    "saveMessage(QString&)\0message,datetime\0saveMessage(QString&,bool)\0"
  217.43 +};
  217.44 +
  217.45 +const QMetaObject MessageFile::staticMetaObject = {
  217.46 +    { &QObject::staticMetaObject, qt_meta_stringdata_MessageFile,
  217.47 +      qt_meta_data_MessageFile, 0 }
  217.48 +};
  217.49 +
  217.50 +const QMetaObject *MessageFile::metaObject() const
  217.51 +{
  217.52 +    return &staticMetaObject;
  217.53 +}
  217.54 +
  217.55 +void *MessageFile::qt_metacast(const char *_clname)
  217.56 +{
  217.57 +    if (!_clname) return 0;
  217.58 +    if (!strcmp(_clname, qt_meta_stringdata_MessageFile))
  217.59 +	return static_cast<void*>(const_cast<MessageFile*>(this));
  217.60 +    return QObject::qt_metacast(_clname);
  217.61 +}
  217.62 +
  217.63 +int MessageFile::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  217.64 +{
  217.65 +    _id = QObject::qt_metacall(_c, _id, _a);
  217.66 +    if (_id < 0)
  217.67 +        return _id;
  217.68 +    if (_c == QMetaObject::InvokeMetaMethod) {
  217.69 +        switch (_id) {
  217.70 +        case 0: saveMessage((*reinterpret_cast< int(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
  217.71 +        case 1: saveMessage((*reinterpret_cast< QString(*)>(_a[1]))); break;
  217.72 +        case 2: saveMessage((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break;
  217.73 +        }
  217.74 +        _id -= 3;
  217.75 +    }
  217.76 +    return _id;
  217.77 +}
   218.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   218.2 +++ b/x86/Win32/moc_msgWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   218.3 @@ -0,0 +1,90 @@
   218.4 +/****************************************************************************
   218.5 +** Meta object code from reading C++ file 'msgWidget.h'
   218.6 +**
   218.7 +** Created: Wed Aug 9 11:25:24 2006
   218.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
   218.9 +**
  218.10 +** WARNING! All changes made in this file will be lost!
  218.11 +*****************************************************************************/
  218.12 +
  218.13 +#include "msgWidget.h"
  218.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  218.15 +#error "The header file 'msgWidget.h' doesn't include <QObject>."
  218.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  218.17 +#error "This file was generated using the moc from 4.1.3. It"
  218.18 +#error "cannot be used with the include files from this version of Qt."
  218.19 +#error "(The moc has changed too much.)"
  218.20 +#endif
  218.21 +
  218.22 +static const uint qt_meta_data_MsgWidget[] = {
  218.23 +
  218.24 + // content:
  218.25 +       1,       // revision
  218.26 +       0,       // classname
  218.27 +       0,    0, // classinfo
  218.28 +       6,   10, // methods
  218.29 +       0,    0, // properties
  218.30 +       0,    0, // enums/sets
  218.31 +
  218.32 + // signals: signature, parameters, type, tag, flags
  218.33 +      11,   10,   10,   10, 0x05,
  218.34 +
  218.35 + // slots: signature, parameters, type, tag, flags
  218.36 +      30,   10,   10,   10, 0x0a,
  218.37 +      56,   46,   10,   10, 0x0a,
  218.38 +      74,   10,   10,   10, 0x0a,
  218.39 +      92,   88,   10,   10, 0x0a,
  218.40 +     122,   10,   10,   10, 0x0a,
  218.41 +
  218.42 +       0        // eod
  218.43 +};
  218.44 +
  218.45 +static const char qt_meta_stringdata_MsgWidget[] = {
  218.46 +    "MsgWidget\0\0sendBundle(Bundle)\0composeBundle()\0newBundle\0"
  218.47 +    "getBundle(Bundle)\0updateLists()\0ptr\0updatedNodeList(NodeManager*)\0"
  218.48 +    "showMsg(QListWidgetItem*)\0"
  218.49 +};
  218.50 +
  218.51 +const QMetaObject MsgWidget::staticMetaObject = {
  218.52 +    { &QWidget::staticMetaObject, qt_meta_stringdata_MsgWidget,
  218.53 +      qt_meta_data_MsgWidget, 0 }
  218.54 +};
  218.55 +
  218.56 +const QMetaObject *MsgWidget::metaObject() const
  218.57 +{
  218.58 +    return &staticMetaObject;
  218.59 +}
  218.60 +
  218.61 +void *MsgWidget::qt_metacast(const char *_clname)
  218.62 +{
  218.63 +    if (!_clname) return 0;
  218.64 +    if (!strcmp(_clname, qt_meta_stringdata_MsgWidget))
  218.65 +	return static_cast<void*>(const_cast<MsgWidget*>(this));
  218.66 +    return QWidget::qt_metacast(_clname);
  218.67 +}
  218.68 +
  218.69 +int MsgWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  218.70 +{
  218.71 +    _id = QWidget::qt_metacall(_c, _id, _a);
  218.72 +    if (_id < 0)
  218.73 +        return _id;
  218.74 +    if (_c == QMetaObject::InvokeMetaMethod) {
  218.75 +        switch (_id) {
  218.76 +        case 0: sendBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
  218.77 +        case 1: composeBundle(); break;
  218.78 +        case 2: getBundle((*reinterpret_cast< Bundle(*)>(_a[1]))); break;
  218.79 +        case 3: updateLists(); break;
  218.80 +        case 4: updatedNodeList((*reinterpret_cast< NodeManager*(*)>(_a[1]))); break;
  218.81 +        case 5: showMsg((*reinterpret_cast< QListWidgetItem*(*)>(_a[1]))); break;
  218.82 +        }
  218.83 +        _id -= 6;
  218.84 +    }
  218.85 +    return _id;
  218.86 +}
  218.87 +
  218.88 +// SIGNAL 0
  218.89 +void MsgWidget::sendBundle(Bundle _t1)
  218.90 +{
  218.91 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  218.92 +    QMetaObject::activate(this, &staticMetaObject, 0, _a);
  218.93 +}
   219.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   219.2 +++ b/x86/Win32/moc_neighbourAwareness.cpp	Thu Jun 26 17:39:40 2008 +0100
   219.3 @@ -0,0 +1,212 @@
   219.4 +/****************************************************************************
   219.5 +** Meta object code from reading C++ file 'neighbourAwareness.h'
   219.6 +**
   219.7 +** Created: Wed Aug 9 11:25:20 2006
   219.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
   219.9 +**
  219.10 +** WARNING! All changes made in this file will be lost!
  219.11 +*****************************************************************************/
  219.12 +
  219.13 +#include "neighbourAwareness.h"
  219.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  219.15 +#error "The header file 'neighbourAwareness.h' doesn't include <QObject>."
  219.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  219.17 +#error "This file was generated using the moc from 4.1.3. It"
  219.18 +#error "cannot be used with the include files from this version of Qt."
  219.19 +#error "(The moc has changed too much.)"
  219.20 +#endif
  219.21 +
  219.22 +static const uint qt_meta_data_ConnectionInfo[] = {
  219.23 +
  219.24 + // content:
  219.25 +       1,       // revision
  219.26 +       0,       // classname
  219.27 +       0,    0, // classinfo
  219.28 +       0,    0, // methods
  219.29 +       0,    0, // properties
  219.30 +       0,    0, // enums/sets
  219.31 +
  219.32 +       0        // eod
  219.33 +};
  219.34 +
  219.35 +static const char qt_meta_stringdata_ConnectionInfo[] = {
  219.36 +    "ConnectionInfo\0"
  219.37 +};
  219.38 +
  219.39 +const QMetaObject ConnectionInfo::staticMetaObject = {
  219.40 +    { &QObject::staticMetaObject, qt_meta_stringdata_ConnectionInfo,
  219.41 +      qt_meta_data_ConnectionInfo, 0 }
  219.42 +};
  219.43 +
  219.44 +const QMetaObject *ConnectionInfo::metaObject() const
  219.45 +{
  219.46 +    return &staticMetaObject;
  219.47 +}
  219.48 +
  219.49 +void *ConnectionInfo::qt_metacast(const char *_clname)
  219.50 +{
  219.51 +    if (!_clname) return 0;
  219.52 +    if (!strcmp(_clname, qt_meta_stringdata_ConnectionInfo))
  219.53 +	return static_cast<void*>(const_cast<ConnectionInfo*>(this));
  219.54 +    return QObject::qt_metacast(_clname);
  219.55 +}
  219.56 +
  219.57 +int ConnectionInfo::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  219.58 +{
  219.59 +    _id = QObject::qt_metacall(_c, _id, _a);
  219.60 +    if (_id < 0)
  219.61 +        return _id;
  219.62 +    return _id;
  219.63 +}
  219.64 +static const uint qt_meta_data_NeighAwareServer[] = {
  219.65 +
  219.66 + // content:
  219.67 +       1,       // revision
  219.68 +       0,       // classname
  219.69 +       0,    0, // classinfo
  219.70 +       2,   10, // methods
  219.71 +       0,    0, // properties
  219.72 +       0,    0, // enums/sets
  219.73 +
  219.74 + // signals: signature, parameters, type, tag, flags
  219.75 +      48,   18,   17,   17, 0x05,
  219.76 +
  219.77 + // slots: signature, parameters, type, tag, flags
  219.78 +     109,   92,   17,   17, 0x09,
  219.79 +
  219.80 +       0        // eod
  219.81 +};
  219.82 +
  219.83 +static const char qt_meta_stringdata_NeighAwareServer[] = {
  219.84 +    "NeighAwareServer\0\0newSocket,permitNewConnection\0"
  219.85 +    "newConnectionEstablished(QTcpSocket*,bool&)\0socketDescripton\0"
  219.86 +    "incomingConnection(int)\0"
  219.87 +};
  219.88 +
  219.89 +const QMetaObject NeighAwareServer::staticMetaObject = {
  219.90 +    { &QTcpServer::staticMetaObject, qt_meta_stringdata_NeighAwareServer,
  219.91 +      qt_meta_data_NeighAwareServer, 0 }
  219.92 +};
  219.93 +
  219.94 +const QMetaObject *NeighAwareServer::metaObject() const
  219.95 +{
  219.96 +    return &staticMetaObject;
  219.97 +}
  219.98 +
  219.99 +void *NeighAwareServer::qt_metacast(const char *_clname)
 219.100 +{
 219.101 +    if (!_clname) return 0;
 219.102 +    if (!strcmp(_clname, qt_meta_stringdata_NeighAwareServer))
 219.103 +	return static_cast<void*>(const_cast<NeighAwareServer*>(this));
 219.104 +    return QTcpServer::qt_metacast(_clname);
 219.105 +}
 219.106 +
 219.107 +int NeighAwareServer::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
 219.108 +{
 219.109 +    _id = QTcpServer::qt_metacall(_c, _id, _a);
 219.110 +    if (_id < 0)
 219.111 +        return _id;
 219.112 +    if (_c == QMetaObject::InvokeMetaMethod) {
 219.113 +        switch (_id) {
 219.114 +        case 0: newConnectionEstablished((*reinterpret_cast< QTcpSocket*(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break;
 219.115 +        case 1: incomingConnection((*reinterpret_cast< int(*)>(_a[1]))); break;
 219.116 +        }
 219.117 +        _id -= 2;
 219.118 +    }
 219.119 +    return _id;
 219.120 +}
 219.121 +
 219.122 +// SIGNAL 0
 219.123 +void NeighAwareServer::newConnectionEstablished(QTcpSocket * _t1, bool & _t2)
 219.124 +{
 219.125 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)), const_cast<void*>(reinterpret_cast<const void*>(&_t2)) };
 219.126 +    QMetaObject::activate(this, &staticMetaObject, 0, _a);
 219.127 +}
 219.128 +static const uint qt_meta_data_NeighAware[] = {
 219.129 +
 219.130 + // content:
 219.131 +       1,       // revision
 219.132 +       0,       // classname
 219.133 +       0,    0, // classinfo
 219.134 +       9,   10, // methods
 219.135 +       0,    0, // properties
 219.136 +       0,    0, // enums/sets
 219.137 +
 219.138 + // signals: signature, parameters, type, tag, flags
 219.139 +      12,   11,   11,   11, 0x05,
 219.140 +      52,   11,   11,   11, 0x05,
 219.141 +
 219.142 + // slots: signature, parameters, type, tag, flags
 219.143 +     107,   77,   11,   11, 0x0a,
 219.144 +     151,   11,   11,   11, 0x0a,
 219.145 +     193,   11,   11,   11, 0x0a,
 219.146 +     208,   11,   11,   11, 0x0a,
 219.147 +     239,  228,   11,   11, 0x0a,
 219.148 +     264,   11,   11,   11, 0x0a,
 219.149 +     290,   11,   11,   11, 0x0a,
 219.150 +
 219.151 +       0        // eod
 219.152 +};
 219.153 +
 219.154 +static const char qt_meta_stringdata_NeighAware[] = {
 219.155 +    "NeighAware\0\0sendDebugConList(QList<ConnectionInfo>)\0"
 219.156 +    "passDatagram(DataPacket)\0newSocket,permitNewConnection\0"
 219.157 +    "newConnectionEstablished(QTcpSocket*,bool&)\0"
 219.158 +    "errorDecode(QAbstractSocket::SocketError)\0stateChanged()\0"
 219.159 +    "broadcastDatagram()\0datapacket\0sendDatagram(DataPacket)\0"
 219.160 +    "processPendingDatagrams()\0processPingDatagrams()\0"
 219.161 +};
 219.162 +
 219.163 +const QMetaObject NeighAware::staticMetaObject = {
 219.164 +    { &QObject::staticMetaObject, qt_meta_stringdata_NeighAware,
 219.165 +      qt_meta_data_NeighAware, 0 }
 219.166 +};
 219.167 +
 219.168 +const QMetaObject *NeighAware::metaObject() const
 219.169 +{
 219.170 +    return &staticMetaObject;
 219.171 +}
 219.172 +
 219.173 +void *NeighAware::qt_metacast(const char *_clname)
 219.174 +{
 219.175 +    if (!_clname) return 0;
 219.176 +    if (!strcmp(_clname, qt_meta_stringdata_NeighAware))
 219.177 +	return static_cast<void*>(const_cast<NeighAware*>(this));
 219.178 +    return QObject::qt_metacast(_clname);
 219.179 +}
 219.180 +
 219.181 +int NeighAware::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
 219.182 +{
 219.183 +    _id = QObject::qt_metacall(_c, _id, _a);
 219.184 +    if (_id < 0)
 219.185 +        return _id;
 219.186 +    if (_c == QMetaObject::InvokeMetaMethod) {
 219.187 +        switch (_id) {
 219.188 +        case 0: sendDebugConList((*reinterpret_cast< QList<ConnectionInfo>(*)>(_a[1]))); break;
 219.189 +        case 1: passDatagram((*reinterpret_cast< DataPacket(*)>(_a[1]))); break;
 219.190 +        case 2: newConnectionEstablished((*reinterpret_cast< QTcpSocket*(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break;
 219.191 +        case 3: errorDecode((*reinterpret_cast< QAbstractSocket::SocketError(*)>(_a[1]))); break;
 219.192 +        case 4: stateChanged(); break;
 219.193 +        case 5: broadcastDatagram(); break;
 219.194 +        case 6: sendDatagram((*reinterpret_cast< DataPacket(*)>(_a[1]))); break;
 219.195 +        case 7: processPendingDatagrams(); break;
 219.196 +        case 8: processPingDatagrams(); break;
 219.197 +        }
 219.198 +        _id -= 9;
 219.199 +    }
 219.200 +    return _id;
 219.201 +}
 219.202 +
 219.203 +// SIGNAL 0
 219.204 +void NeighAware::sendDebugConList(QList<ConnectionInfo> _t1)
 219.205 +{
 219.206 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 219.207 +    QMetaObject::activate(this, &staticMetaObject, 0, _a);
 219.208 +}
 219.209 +
 219.210 +// SIGNAL 1
 219.211 +void NeighAware::passDatagram(DataPacket _t1)
 219.212 +{
 219.213 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 219.214 +    QMetaObject::activate(this, &staticMetaObject, 1, _a);
 219.215 +}
   220.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   220.2 +++ b/x86/Win32/moc_node.cpp	Thu Jun 26 17:39:40 2008 +0100
   220.3 @@ -0,0 +1,60 @@
   220.4 +/****************************************************************************
   220.5 +** Meta object code from reading C++ file 'node.h'
   220.6 +**
   220.7 +** Created: Wed Aug 9 11:25:32 2006
   220.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
   220.9 +**
  220.10 +** WARNING! All changes made in this file will be lost!
  220.11 +*****************************************************************************/
  220.12 +
  220.13 +#include "node.h"
  220.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  220.15 +#error "The header file 'node.h' doesn't include <QObject>."
  220.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  220.17 +#error "This file was generated using the moc from 4.1.3. It"
  220.18 +#error "cannot be used with the include files from this version of Qt."
  220.19 +#error "(The moc has changed too much.)"
  220.20 +#endif
  220.21 +
  220.22 +static const uint qt_meta_data_Node[] = {
  220.23 +
  220.24 + // content:
  220.25 +       1,       // revision
  220.26 +       0,       // classname
  220.27 +       0,    0, // classinfo
  220.28 +       0,    0, // methods
  220.29 +       0,    0, // properties
  220.30 +       0,    0, // enums/sets
  220.31 +
  220.32 +       0        // eod
  220.33 +};
  220.34 +
  220.35 +static const char qt_meta_stringdata_Node[] = {
  220.36 +    "Node\0"
  220.37 +};
  220.38 +
  220.39 +const QMetaObject Node::staticMetaObject = {
  220.40 +    { &QObject::staticMetaObject, qt_meta_stringdata_Node,
  220.41 +      qt_meta_data_Node, 0 }
  220.42 +};
  220.43 +
  220.44 +const QMetaObject *Node::metaObject() const
  220.45 +{
  220.46 +    return &staticMetaObject;
  220.47 +}
  220.48 +
  220.49 +void *Node::qt_metacast(const char *_clname)
  220.50 +{
  220.51 +    if (!_clname) return 0;
  220.52 +    if (!strcmp(_clname, qt_meta_stringdata_Node))
  220.53 +	return static_cast<void*>(const_cast<Node*>(this));
  220.54 +    return QObject::qt_metacast(_clname);
  220.55 +}
  220.56 +
  220.57 +int Node::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  220.58 +{
  220.59 +    _id = QObject::qt_metacall(_c, _id, _a);
  220.60 +    if (_id < 0)
  220.61 +        return _id;
  220.62 +    return _id;
  220.63 +}
   221.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   221.2 +++ b/x86/Win32/moc_nodeManager.cpp	Thu Jun 26 17:39:40 2008 +0100
   221.3 @@ -0,0 +1,94 @@
   221.4 +/****************************************************************************
   221.5 +** Meta object code from reading C++ file 'nodeManager.h'
   221.6 +**
   221.7 +** Created: Wed Aug 9 11:25:33 2006
   221.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
   221.9 +**
  221.10 +** WARNING! All changes made in this file will be lost!
  221.11 +*****************************************************************************/
  221.12 +
  221.13 +#include "nodeManager.h"
  221.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  221.15 +#error "The header file 'nodeManager.h' doesn't include <QObject>."
  221.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  221.17 +#error "This file was generated using the moc from 4.1.3. It"
  221.18 +#error "cannot be used with the include files from this version of Qt."
  221.19 +#error "(The moc has changed too much.)"
  221.20 +#endif
  221.21 +
  221.22 +static const uint qt_meta_data_NodeManager[] = {
  221.23 +
  221.24 + // content:
  221.25 +       1,       // revision
  221.26 +       0,       // classname
  221.27 +       0,    0, // classinfo
  221.28 +       5,   10, // methods
  221.29 +       0,    0, // properties
  221.30 +       0,    0, // enums/sets
  221.31 +
  221.32 + // signals: signature, parameters, type, tag, flags
  221.33 +      13,   12,   12,   12, 0x05,
  221.34 +      44,   12,   12,   12, 0x05,
  221.35 +
  221.36 + // slots: signature, parameters, type, tag, flags
  221.37 +      74,   12,   12,   12, 0x0a,
  221.38 +      82,   12,   12,   12, 0x0a,
  221.39 +      95,   12,   12,   12, 0x0a,
  221.40 +
  221.41 +       0        // eod
  221.42 +};
  221.43 +
  221.44 +static const char qt_meta_stringdata_NodeManager[] = {
  221.45 +    "NodeManager\0\0sendDebugNodeList(QList<Node>)\0"
  221.46 +    "updatedNodeList(NodeManager*)\0aging()\0saveToFile()\0readFromFile()\0"
  221.47 +};
  221.48 +
  221.49 +const QMetaObject NodeManager::staticMetaObject = {
  221.50 +    { &QObject::staticMetaObject, qt_meta_stringdata_NodeManager,
  221.51 +      qt_meta_data_NodeManager, 0 }
  221.52 +};
  221.53 +
  221.54 +const QMetaObject *NodeManager::metaObject() const
  221.55 +{
  221.56 +    return &staticMetaObject;
  221.57 +}
  221.58 +
  221.59 +void *NodeManager::qt_metacast(const char *_clname)
  221.60 +{
  221.61 +    if (!_clname) return 0;
  221.62 +    if (!strcmp(_clname, qt_meta_stringdata_NodeManager))
  221.63 +	return static_cast<void*>(const_cast<NodeManager*>(this));
  221.64 +    return QObject::qt_metacast(_clname);
  221.65 +}
  221.66 +
  221.67 +int NodeManager::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  221.68 +{
  221.69 +    _id = QObject::qt_metacall(_c, _id, _a);
  221.70 +    if (_id < 0)
  221.71 +        return _id;
  221.72 +    if (_c == QMetaObject::InvokeMetaMethod) {
  221.73 +        switch (_id) {
  221.74 +        case 0: sendDebugNodeList((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  221.75 +        case 1: updatedNodeList((*reinterpret_cast< NodeManager*(*)>(_a[1]))); break;
  221.76 +        case 2: aging(); break;
  221.77 +        case 3: saveToFile(); break;
  221.78 +        case 4: readFromFile(); break;
  221.79 +        }
  221.80 +        _id -= 5;
  221.81 +    }
  221.82 +    return _id;
  221.83 +}
  221.84 +
  221.85 +// SIGNAL 0
  221.86 +void NodeManager::sendDebugNodeList(QList<Node> _t1)
  221.87 +{
  221.88 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  221.89 +    QMetaObject::activate(this, &staticMetaObject, 0, _a);
  221.90 +}
  221.91 +
  221.92 +// SIGNAL 1
  221.93 +void NodeManager::updatedNodeList(NodeManager * _t1)
  221.94 +{
  221.95 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  221.96 +    QMetaObject::activate(this, &staticMetaObject, 1, _a);
  221.97 +}
   222.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   222.2 +++ b/x86/Win32/moc_readFile.cpp	Thu Jun 26 17:39:40 2008 +0100
   222.3 @@ -0,0 +1,60 @@
   222.4 +/****************************************************************************
   222.5 +** Meta object code from reading C++ file 'readFile.h'
   222.6 +**
   222.7 +** Created: Wed Aug 9 11:25:42 2006
   222.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
   222.9 +**
  222.10 +** WARNING! All changes made in this file will be lost!
  222.11 +*****************************************************************************/
  222.12 +
  222.13 +#include "readFile.h"
  222.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  222.15 +#error "The header file 'readFile.h' doesn't include <QObject>."
  222.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  222.17 +#error "This file was generated using the moc from 4.1.3. It"
  222.18 +#error "cannot be used with the include files from this version of Qt."
  222.19 +#error "(The moc has changed too much.)"
  222.20 +#endif
  222.21 +
  222.22 +static const uint qt_meta_data_ReadFile[] = {
  222.23 +
  222.24 + // content:
  222.25 +       1,       // revision
  222.26 +       0,       // classname
  222.27 +       0,    0, // classinfo
  222.28 +       0,    0, // methods
  222.29 +       0,    0, // properties
  222.30 +       0,    0, // enums/sets
  222.31 +
  222.32 +       0        // eod
  222.33 +};
  222.34 +
  222.35 +static const char qt_meta_stringdata_ReadFile[] = {
  222.36 +    "ReadFile\0"
  222.37 +};
  222.38 +
  222.39 +const QMetaObject ReadFile::staticMetaObject = {
  222.40 +    { &QObject::staticMetaObject, qt_meta_stringdata_ReadFile,
  222.41 +      qt_meta_data_ReadFile, 0 }
  222.42 +};
  222.43 +
  222.44 +const QMetaObject *ReadFile::metaObject() const
  222.45 +{
  222.46 +    return &staticMetaObject;
  222.47 +}
  222.48 +
  222.49 +void *ReadFile::qt_metacast(const char *_clname)
  222.50 +{
  222.51 +    if (!_clname) return 0;
  222.52 +    if (!strcmp(_clname, qt_meta_stringdata_ReadFile))
  222.53 +	return static_cast<void*>(const_cast<ReadFile*>(this));
  222.54 +    return QObject::qt_metacast(_clname);
  222.55 +}
  222.56 +
  222.57 +int ReadFile::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  222.58 +{
  222.59 +    _id = QObject::qt_metacall(_c, _id, _a);
  222.60 +    if (_id < 0)
  222.61 +        return _id;
  222.62 +    return _id;
  222.63 +}
   223.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   223.2 +++ b/x86/Win32/moc_tcpClient.cpp	Thu Jun 26 17:39:40 2008 +0100
   223.3 @@ -0,0 +1,105 @@
   223.4 +/****************************************************************************
   223.5 +** Meta object code from reading C++ file 'tcpClient.h'
   223.6 +**
   223.7 +** Created: Wed Aug 9 11:25:45 2006
   223.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
   223.9 +**
  223.10 +** WARNING! All changes made in this file will be lost!
  223.11 +*****************************************************************************/
  223.12 +
  223.13 +#include "tcpClient.h"
  223.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  223.15 +#error "The header file 'tcpClient.h' doesn't include <QObject>."
  223.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  223.17 +#error "This file was generated using the moc from 4.1.3. It"
  223.18 +#error "cannot be used with the include files from this version of Qt."
  223.19 +#error "(The moc has changed too much.)"
  223.20 +#endif
  223.21 +
  223.22 +static const uint qt_meta_data_TcpClient[] = {
  223.23 +
  223.24 + // content:
  223.25 +       1,       // revision
  223.26 +       0,       // classname
  223.27 +       0,    0, // classinfo
  223.28 +       7,   10, // methods
  223.29 +       0,    0, // properties
  223.30 +       0,    0, // enums/sets
  223.31 +
  223.32 + // signals: signature, parameters, type, tag, flags
  223.33 +      16,   11,   10,   10, 0x05,
  223.34 +      38,   10,   10,   10, 0x05,
  223.35 +      50,   10,   10,   10, 0x05,
  223.36 +
  223.37 + // slots: signature, parameters, type, tag, flags
  223.38 +      65,   10,   10,   10, 0x0a,
  223.39 +      89,   83,   10,   10, 0x0a,
  223.40 +     142,  136,   10,   10, 0x0a,
  223.41 +     182,   10,   10,   10, 0x0a,
  223.42 +
  223.43 +       0        // eod
  223.44 +};
  223.45 +
  223.46 +static const char qt_meta_stringdata_TcpClient[] = {
  223.47 +    "TcpClient\0\0answ\0newAnswer(QByteArray)\0connected()\0disconnected()\0"
  223.48 +    "reconnectToHost()\0state\0"
  223.49 +    "hostStateChanged(QAbstractSocket::SocketState)\0error\0"
  223.50 +    "hostError(QAbstractSocket::SocketError)\0hostReadyRead()\0"
  223.51 +};
  223.52 +
  223.53 +const QMetaObject TcpClient::staticMetaObject = {
  223.54 +    { &QTcpSocket::staticMetaObject, qt_meta_stringdata_TcpClient,
  223.55 +      qt_meta_data_TcpClient, 0 }
  223.56 +};
  223.57 +
  223.58 +const QMetaObject *TcpClient::metaObject() const
  223.59 +{
  223.60 +    return &staticMetaObject;
  223.61 +}
  223.62 +
  223.63 +void *TcpClient::qt_metacast(const char *_clname)
  223.64 +{
  223.65 +    if (!_clname) return 0;
  223.66 +    if (!strcmp(_clname, qt_meta_stringdata_TcpClient))
  223.67 +	return static_cast<void*>(const_cast<TcpClient*>(this));
  223.68 +    return QTcpSocket::qt_metacast(_clname);
  223.69 +}
  223.70 +
  223.71 +int TcpClient::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  223.72 +{
  223.73 +    _id = QTcpSocket::qt_metacall(_c, _id, _a);
  223.74 +    if (_id < 0)
  223.75 +        return _id;
  223.76 +    if (_c == QMetaObject::InvokeMetaMethod) {
  223.77 +        switch (_id) {
  223.78 +        case 0: newAnswer((*reinterpret_cast< QByteArray(*)>(_a[1]))); break;
  223.79 +        case 1: connected(); break;
  223.80 +        case 2: disconnected(); break;
  223.81 +        case 3: reconnectToHost(); break;
  223.82 +        case 4: hostStateChanged((*reinterpret_cast< QAbstractSocket::SocketState(*)>(_a[1]))); break;
  223.83 +        case 5: hostError((*reinterpret_cast< QAbstractSocket::SocketError(*)>(_a[1]))); break;
  223.84 +        case 6: hostReadyRead(); break;
  223.85 +        }
  223.86 +        _id -= 7;
  223.87 +    }
  223.88 +    return _id;
  223.89 +}
  223.90 +
  223.91 +// SIGNAL 0
  223.92 +void TcpClient::newAnswer(QByteArray _t1)
  223.93 +{
  223.94 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
  223.95 +    QMetaObject::activate(this, &staticMetaObject, 0, _a);
  223.96 +}
  223.97 +
  223.98 +// SIGNAL 1
  223.99 +void TcpClient::connected()
 223.100 +{
 223.101 +    QMetaObject::activate(this, &staticMetaObject, 1, 0);
 223.102 +}
 223.103 +
 223.104 +// SIGNAL 2
 223.105 +void TcpClient::disconnected()
 223.106 +{
 223.107 +    QMetaObject::activate(this, &staticMetaObject, 2, 0);
 223.108 +}
   224.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   224.2 +++ b/x86/Win32/moc_tlv.cpp	Thu Jun 26 17:39:40 2008 +0100
   224.3 @@ -0,0 +1,152 @@
   224.4 +/****************************************************************************
   224.5 +** Meta object code from reading C++ file 'tlv.h'
   224.6 +**
   224.7 +** Created: Wed Aug 9 11:25:36 2006
   224.8 +**      by: The Qt Meta Object Compiler version 59 (Qt 4.1.3)
   224.9 +**
  224.10 +** WARNING! All changes made in this file will be lost!
  224.11 +*****************************************************************************/
  224.12 +
  224.13 +#include "tlv.h"
  224.14 +#if !defined(Q_MOC_OUTPUT_REVISION)
  224.15 +#error "The header file 'tlv.h' doesn't include <QObject>."
  224.16 +#elif Q_MOC_OUTPUT_REVISION != 59
  224.17 +#error "This file was generated using the moc from 4.1.3. It"
  224.18 +#error "cannot be used with the include files from this version of Qt."
  224.19 +#error "(The moc has changed too much.)"
  224.20 +#endif
  224.21 +
  224.22 +static const uint qt_meta_data_TLV[] = {
  224.23 +
  224.24 + // content:
  224.25 +       1,       // revision
  224.26 +       0,       // classname
  224.27 +       0,    0, // classinfo
  224.28 +      14,   10, // methods
  224.29 +       0,    0, // properties
  224.30 +       0,    0, // enums/sets
  224.31 +
  224.32 + // signals: signature, parameters, type, tag, flags
  224.33 +       5,    4,    4,    4, 0x05,
  224.34 +      30,    4,    4,    4, 0x05,
  224.35 +      47,    4,    4,    4, 0x05,
  224.36 +      75,    4,    4,    4, 0x05,
  224.37 +      96,    4,    4,    4, 0x05,
  224.38 +     127,    4,    4,    4, 0x05,
  224.39 +     160,    4,    4,    4, 0x05,
  224.40 +
  224.41 + // slots: signature, parameters, type, tag, flags
  224.42 +     190,    4,    4,    4, 0x0a,
  224.43 +     210,    4,    4,    4, 0x0a,
  224.44 +     238,    4,    4,    4, 0x0a,
  224.45 +     268,    4,    4,    4, 0x0a,
  224.46 +     291,    4,    4,    4, 0x0a,
  224.47 +     324,    4,    4,    4, 0x0a,
  224.48 +     359,    4,    4,    4, 0x0a,
  224.49 +
  224.50 +       0        // eod
  224.51 +};
  224.52 +
  224.53 +static const char qt_meta_stringdata_TLV[] = {
  224.54 +    "TLV\0\0sendDatagram(QByteArray)\0sendHello(Hello)\0"
  224.55 +    "sendDictionary(QList<Node>)\0sendRIB(QList<Node>)\0"
  224.56 +    "sendBundleOffer(QList<Bundle>)\0sendBundleRequest(QList<Bundle>)\0"
  224.57 +    "sendBundleData(QList<Bundle>)\0receiveHello(Hello)\0"
  224.58 +    "receiveDatagram(QByteArray)\0createDictionary(QList<Node>)\0"
  224.59 +    "createRIB(QList<Node>)\0createBundleOffer(QList<Bundle>)\0"
  224.60 +    "createBundleRequest(QList<Bundle>)\0createBundleData(QList<Bundle>)\0"
  224.61 +};
  224.62 +
  224.63 +const QMetaObject TLV::staticMetaObject = {
  224.64 +    { &QObject::staticMetaObject, qt_meta_stringdata_TLV,
  224.65 +      qt_meta_data_TLV, 0 }
  224.66 +};
  224.67 +
  224.68 +const QMetaObject *TLV::metaObject() const
  224.69 +{
  224.70 +    return &staticMetaObject;
  224.71 +}
  224.72 +
  224.73 +void *TLV::qt_metacast(const char *_clname)
  224.74 +{
  224.75 +    if (!_clname) return 0;
  224.76 +    if (!strcmp(_clname, qt_meta_stringdata_TLV))
  224.77 +	return static_cast<void*>(const_cast<TLV*>(this));
  224.78 +    return QObject::qt_metacast(_clname);
  224.79 +}
  224.80 +
  224.81 +int TLV::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
  224.82 +{
  224.83 +    _id = QObject::qt_metacall(_c, _id, _a);
  224.84 +    if (_id < 0)
  224.85 +        return _id;
  224.86 +    if (_c == QMetaObject::InvokeMetaMethod) {
  224.87 +        switch (_id) {
  224.88 +        case 0: sendDatagram((*reinterpret_cast< QByteArray(*)>(_a[1]))); break;
  224.89 +        case 1: sendHello((*reinterpret_cast< Hello(*)>(_a[1]))); break;
  224.90 +        case 2: sendDictionary((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  224.91 +        case 3: sendRIB((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  224.92 +        case 4: sendBundleOffer((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  224.93 +        case 5: sendBundleRequest((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  224.94 +        case 6: sendBundleData((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
  224.95 +        case 7: receiveHello((*reinterpret_cast< Hello(*)>(_a[1]))); break;
  224.96 +        case 8: receiveDatagram((*reinterpret_cast< QByteArray(*)>(_a[1]))); break;
  224.97 +        case 9: createDictionary((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  224.98 +        case 10: createRIB((*reinterpret_cast< QList<Node>(*)>(_a[1]))); break;
  224.99 +        case 11: createBundleOffer((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 224.100 +        case 12: createBundleRequest((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 224.101 +        case 13: createBundleData((*reinterpret_cast< QList<Bundle>(*)>(_a[1]))); break;
 224.102 +        }
 224.103 +        _id -= 14;
 224.104 +    }
 224.105 +    return _id;
 224.106 +}
 224.107 +
 224.108 +// SIGNAL 0
 224.109 +void TLV::sendDatagram(QByteArray _t1)
 224.110 +{
 224.111 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 224.112 +    QMetaObject::activate(this, &staticMetaObject, 0, _a);
 224.113 +}
 224.114 +
 224.115 +// SIGNAL 1
 224.116 +void TLV::sendHello(Hello _t1)
 224.117 +{
 224.118 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 224.119 +    QMetaObject::activate(this, &staticMetaObject, 1, _a);
 224.120 +}
 224.121 +
 224.122 +// SIGNAL 2
 224.123 +void TLV::sendDictionary(QList<Node> _t1)
 224.124 +{
 224.125 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 224.126 +    QMetaObject::activate(this, &staticMetaObject, 2, _a);
 224.127 +}
 224.128 +
 224.129 +// SIGNAL 3
 224.130 +void TLV::sendRIB(QList<Node> _t1)
 224.131 +{
 224.132 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 224.133 +    QMetaObject::activate(this, &staticMetaObject, 3, _a);
 224.134 +}
 224.135 +
 224.136 +// SIGNAL 4
 224.137 +void TLV::sendBundleOffer(QList<Bundle> _t1)
 224.138 +{
 224.139 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 224.140 +    QMetaObject::activate(this, &staticMetaObject, 4, _a);
 224.141 +}
 224.142 +
 224.143 +// SIGNAL 5
 224.144 +void TLV::sendBundleRequest(QList<Bundle> _t1)
 224.145 +{
 224.146 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 224.147 +    QMetaObject::activate(this, &staticMetaObject, 5, _a);
 224.148 +}
 224.149 +
 224.150 +// SIGNAL 6
 224.151 +void TLV::sendBundleData(QList<Bundle> _t1)
 224.152 +{
 224.153 +    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
 224.154 +    QMetaObject::activate(this, &staticMetaObject, 6, _a);
 224.155 +}
   225.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   225.2 +++ b/x86/Win32/msgWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   225.3 @@ -0,0 +1,205 @@
   225.4 +#include <QtGui>
   225.5 +#include <msgWidget.h>
   225.6 +#include <readFile.h>
   225.7 +
   225.8 +
   225.9 +
  225.10 +MsgWidget::MsgWidget(NodeManager* nodeMng,QWidget *parent)
  225.11 +        : QWidget(parent)
  225.12 +{
  225.13 +	setFixedSize(990, 660);
  225.14 +	nodeManager = nodeMng;
  225.15 +	connect(nodeMng,SIGNAL(updatedNodeList(NodeManager*)),this,SLOT(updatedNodeList(NodeManager*)));
  225.16 +
  225.17 +	//Send message group
  225.18 +	QGroupBox *sendBox = new QGroupBox("Send message");
  225.19 +    //Source
  225.20 +    QLabel *labelSrc = new QLabel(this);
  225.21 +    labelSrc->setText("Select destination:");
  225.22 +	src = new QLineEdit();
  225.23 +	src->setMaxLength(3); 
  225.24 +	//Destination
  225.25 +	QLabel *labelDst = new QLabel(this);
  225.26 +    labelDst->setText("Send message:");
  225.27 +	combo = new QComboBox(this);
  225.28 +
  225.29 +
  225.30 +	dst = new QLineEdit();
  225.31 +	dst->setMaxLength(3); 
  225.32 +	//Options
  225.33 +	QLabel *labelOpt = new QLabel(this);
  225.34 +    labelOpt->setText("Received messages:");
  225.35 +	opt = new QLineEdit();
  225.36 +	opt->setMaxLength(3); 
  225.37 +	//Message
  225.38 +	QLabel *labelMsg = new QLabel(this);
  225.39 +    labelMsg->setText("Type message here:");
  225.40 +	line = new QTextEdit();
  225.41 +	//sourceString
  225.42 +	QLabel *srcStr = new QLabel(this);
  225.43 +    srcStr->setText("Content:");
  225.44 +	srcLine = new QLineEdit();
  225.45 +	//destinationString
  225.46 +	QLabel *dstStr = new QLabel(this);
  225.47 +   // dstStr->setText("DestinationString");
  225.48 +	dstLine = new QLineEdit();
  225.49 +	//Send
  225.50 +	QPushButton *send= new QPushButton("Send", this);
  225.51 +	//File
  225.52 +	//QFileDialog *file = new QFileDialog(this);	
  225.53 +	//Final grid layout
  225.54 +    QGridLayout *sendGroup = new QGridLayout;
  225.55 +	sendGroup->addWidget(labelSrc, 0, 0);
  225.56 +    sendGroup->addWidget(combo, 1, 0);
  225.57 +
  225.58 +	sendGroup->addWidget(labelDst, 0, 1);
  225.59 +    sendGroup->addWidget(send, 1, 1);
  225.60 +	sendGroup->addWidget(labelMsg, 2, 0);
  225.61 +	sendGroup->addWidget(line, 3, 0, 1, 2);
  225.62 +
  225.63 +	//sendGroup->addWidget(dst, 1, 1);
  225.64 +	//sendGroup->addWidget(combo, 2, 1);
  225.65 +
  225.66 +	//sendGroup->addWidget(labelDst, 0, 1);
  225.67 +	//sendGroup->addWidget(dstLine, 3, 1);
  225.68 +
  225.69 +	//sendGroup->addWidget(labelOpt, 0, 2);
  225.70 +	//sendGroup->addWidget(opt, 1, 2);
  225.71 +
  225.72 +	//sendGroup->addWidget(labelMsg, 4, 0);
  225.73 + 	//sendGroup->addWidget(line, 5, 0, 1, 3);
  225.74 +    //sendGroup->addWidget(send, 3, 2);
  225.75 +	 //   sendGroup->addWidget(file, 6, 2);
  225.76 +	sendBox->setFixedSize(450, 620);
  225.77 +	sendBox->setLayout(sendGroup);
  225.78 +	///////////////////////////////////////////////////
  225.79 +	QGroupBox *readBox = new QGroupBox("Read message");
  225.80 +	readText = new QTextBrowser(this);
  225.81 +	msgList = new QListWidget;
  225.82 +	//Final grid layout
  225.83 +    QGridLayout *readGroup = new QGridLayout;
  225.84 +	readGroup->addWidget(labelOpt, 0, 0);
  225.85 +	readGroup->addWidget(msgList, 1, 0);
  225.86 +	readGroup->addWidget(srcStr, 2, 0);
  225.87 +	readGroup->addWidget(readText, 3, 0);
  225.88 + 	readBox->setFixedSize(450, 620);
  225.89 +	readBox->setLayout(readGroup);
  225.90 +	Bundle *msg = new Bundle;
  225.91 +	//Define final layout
  225.92 +	QVBoxLayout *layout = new QVBoxLayout;
  225.93 +	layout->setDirection(QBoxLayout::LeftToRight);
  225.94 +    layout->addWidget(sendBox);    
  225.95 +    layout->addWidget(readBox);    
  225.96 +    setLayout(layout);
  225.97 +	//Define connections
  225.98 +	bool b = connect(send,SIGNAL(clicked(void)),this, SLOT(composeBundle(void)) );
  225.99 +//	connect(line, SIGNAL(returnPressed ()(QString)),label,SLOT(setText(QString)));
 225.100 +	//Prepare update timer
 225.101 +	timer = new QTimer();
 225.102 +	connect(timer, SIGNAL(timeout()), this, SLOT(updateLists()));
 225.103 +	connect(msgList, SIGNAL(itemClicked (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
 225.104 +	connect(msgList, SIGNAL(itemDoubleClicked  (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
 225.105 +	connect(nodeManager, SIGNAL(updatedNodeList(NodeManager*)), this, SLOT(updatedNodeList(NodeManager* )));
 225.106 +
 225.107 +
 225.108 +
 225.109 +	timer->start(5000);
 225.110 +	firstTime=0;
 225.111 +	ReadFile conf;
 225.112 +	QString msgPath=conf.getMsgPath();
 225.113 +	dir.setPath(msgPath);
 225.114 +	sourceId =conf.getNodeId();
 225.115 +	sourceStr = conf.getNodeName();
 225.116 +
 225.117 +}
 225.118 +
 225.119 +void MsgWidget::updatedNodeList(NodeManager* ptr)
 225.120 +{
 225.121 +	//First time we update combobox
 225.122 +	QList <Node> nodeList;
 225.123 +	nodeList = nodeManager->getNodeList();
 225.124 +	combo->clear();
 225.125 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 225.126 +	{
 225.127 +			combo->insertItem(i,nodeList.at(i).nodeName);
 225.128 +	}
 225.129 +	firstTime=1;
 225.130 +
 225.131 +}
 225.132 +
 225.133 +
 225.134 +void MsgWidget::getBundle(Bundle newBundle)
 225.135 +{
 225.136 +	label->setText(newBundle.getData());
 225.137 +}
 225.138 +
 225.139 +void MsgWidget::updateLists()
 225.140 +{
 225.141 +	if(firstTime==0)
 225.142 +	{
 225.143 +		//First time we update combobox
 225.144 +		QList <Node> nodeList;
 225.145 +		nodeList = nodeManager->getNodeList();
 225.146 +		combo->clear();
 225.147 +		for (ushort i = 0; i < nodeList.size(); ++i) 
 225.148 +		{
 225.149 +			combo->insertItem(i,nodeList.at(i).nodeName);
 225.150 +		}
 225.151 +		firstTime=1;
 225.152 +	}
 225.153 +	QList<QString> list;
 225.154 +	list = dir.entryList();
 225.155 +	msgList->clear();
 225.156 +	for (ushort i = 0; i < list.size(); ++i) 
 225.157 +	{
 225.158 +		QListWidgetItem *newItem = new QListWidgetItem;
 225.159 +		newItem->setText(list.at(i));
 225.160 +		msgList->insertItem(i, newItem);
 225.161 +	}
 225.162 +}
 225.163 +
 225.164 +void MsgWidget::showMsg(QListWidgetItem * item)
 225.165 +{
 225.166 +	QString fileName;
 225.167 +	if(item!=NULL)
 225.168 +	{
 225.169 +	fileName = item->text();
 225.170 +	if(fileName.size()>2)
 225.171 +	{
 225.172 +	
 225.173 +	QFile file(dir.filePath(fileName));
 225.174 +	if(file.open(QIODevice::ReadOnly))
 225.175 +	{
 225.176 +		QByteArray data;
 225.177 +		data=file.readAll();
 225.178 +		readText->clear();
 225.179 +		readText->insertPlainText(data);
 225.180 +		file.close();
 225.181 +	}
 225.182 +	}
 225.183 +}}
 225.184 +
 225.185 +
 225.186 +
 225.187 +
 225.188 +
 225.189 +void MsgWidget::composeBundle()
 225.190 +{
 225.191 +	Bundle newBundle;
 225.192 +	QString stringData;// = line->text();
 225.193 +	QByteArray data = line->toPlainText().toAscii();
 225.194 +	if(combo->count()>0)
 225.195 +	{
 225.196 +
 225.197 +		int dstId=nodeManager->nodeList.at(combo->currentIndex()).nodeId;
 225.198 +		QString dstStr = combo->itemText(combo->currentIndex()); 
 225.199 +		newBundle.setContent(seq,sourceId,dstId,data,5,sourceStr.toAscii(),dstStr.toAscii());
 225.200 +		seq++;
 225.201 +		emit sendBundle(newBundle);
 225.202 +		 QMessageBox::information(this, "PRoPHET notSoIM",
 225.203 +		"Message sent!\n");
 225.204 +	}
 225.205 +
 225.206 +}
 225.207 +
 225.208 +
   226.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   226.2 +++ b/x86/Win32/msgWidget.h	Thu Jun 26 17:39:40 2008 +0100
   226.3 @@ -0,0 +1,52 @@
   226.4 +#ifndef MSGWIDGET_H
   226.5 +#define MSGWIDGET_H
   226.6 +#include <QtGui>
   226.7 +#include <bundle.h>
   226.8 +#include <nodeManager.h>
   226.9 +
  226.10 +class MsgWidget : public QWidget
  226.11 +{
  226.12 +
  226.13 +	Q_OBJECT
  226.14 +
  226.15 +private:
  226.16 +		
  226.17 +	QLineEdit *label;
  226.18 +
  226.19 +	
  226.20 +public:
  226.21 +	int seq;
  226.22 +	QComboBox *combo;
  226.23 +	QTextBrowser *readText;
  226.24 +	QFileDialog *file;
  226.25 +	QLineEdit *src;
  226.26 +	QLineEdit *dst;
  226.27 +	QLineEdit *opt;
  226.28 +	QTextEdit *line;
  226.29 +	QLineEdit *srcLine;
  226.30 +	QLineEdit *dstLine;
  226.31 +	MsgWidget(NodeManager*,QWidget *parent = 0);
  226.32 +	NodeManager* nodeManager;
  226.33 +	QTimer* timer;
  226.34 +	bool firstTime;
  226.35 +	QListWidget* msgList;
  226.36 +	QDir dir;
  226.37 +	int sourceId;
  226.38 +	QString sourceStr;
  226.39 +
  226.40 +
  226.41 +
  226.42 +signals:
  226.43 +		void sendBundle(Bundle);
  226.44 +public slots:
  226.45 +        void composeBundle();
  226.46 +public slots:
  226.47 +	void getBundle(Bundle newBundle);
  226.48 +	void updateLists();
  226.49 +	void updatedNodeList(NodeManager* ptr);
  226.50 +	void showMsg(QListWidgetItem *);
  226.51 +};
  226.52 +
  226.53 +#endif
  226.54 +
  226.55 +
   227.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   227.2 +++ b/x86/Win32/neighbourAwareness.cpp	Thu Jun 26 17:39:40 2008 +0100
   227.3 @@ -0,0 +1,403 @@
   227.4 +#include <QtCore>
   227.5 +#include <QtNetwork>
   227.6 +#include <connection.h>
   227.7 +#include <dataPacket.h>
   227.8 +#include <neighbourAwareness.h>
   227.9 +#include <stdio.h>
  227.10 +#include <readFile.h>
  227.11 +#include <main.h>
  227.12 +#include <messageFile.h>
  227.13 +#ifdef Q_WS_X11
  227.14 +#include <sys/types.h>
  227.15 +#include <sys/stat.h> 
  227.16 +#endif
  227.17 +//extern MessageFile *log;
  227.18 +
  227.19 +#define VERSION 2
  227.20 +#define HELLO_DATAGRAM "PROPHET"
  227.21 +//#define ALIVE 15
  227.22 +#define TERMINATOR "žšð3ðšðšq<žðšžð<dšðsd"
  227.23 +#define TERMINATOR2 "ž3š2šžš324šž2šž32šžšž32"
  227.24 +struct DatagramHeader
  227.25 +{
  227.26 +	qint32 version;
  227.27 +	qint32 lenght;
  227.28 +	qint32 checkSum;
  227.29 +	qint32 nr;
  227.30 +};
  227.31 +
  227.32 +ConnectionInfo::ConnectionInfo(QObject *parent)
  227.33 +{
  227.34 +	ReadFile conf;
  227.35 +	alive=conf.getAlive();
  227.36 +	data.clear();
  227.37 +}
  227.38 +
  227.39 +
  227.40 +ConnectionInfo& ConnectionInfo::operator=(const ConnectionInfo& other)
  227.41 +{
  227.42 + id = other.id;
  227.43 + alive = other.alive;
  227.44 + ip = other.ip;
  227.45 + data = other.data;
  227.46 + tcpSocket = other.tcpSocket;
  227.47 + isClient = other.isClient;
  227.48 + conptr= other.conptr;
  227.49 +
  227.50 + return *this;
  227.51 +}
  227.52 +
  227.53 +ConnectionInfo::ConnectionInfo(const ConnectionInfo& other)
  227.54 +{
  227.55 + id = other.id;
  227.56 + alive = other.alive;
  227.57 + ip = other.ip;
  227.58 + data = other.data;
  227.59 + tcpSocket = other.tcpSocket;
  227.60 + isClient = other.isClient;
  227.61 + conptr= other.conptr;
  227.62 +}	
  227.63 +
  227.64 +
  227.65 +NeighAwareServer::NeighAwareServer(QObject* parent) : QTcpServer(parent)
  227.66 +{
  227.67 +}
  227.68 +
  227.69 +void NeighAwareServer::incomingConnection(int socketDescriptor)
  227.70 +{ 
  227.71 +	QTcpSocket* newSocket = new QTcpSocket(this);
  227.72 +	newSocket->setSocketDescriptor(socketDescriptor);
  227.73 +	bool permitNewConnection = false;
  227.74 +	emit newConnectionEstablished(newSocket, permitNewConnection);
  227.75 +	if (permitNewConnection == false)
  227.76 +	{
  227.77 +		newSocket->deleteLater();
  227.78 +		newSocket->disconnectFromHost();
  227.79 +	}
  227.80 +}	
  227.81 +	
  227.82 +
  227.83 +NeighAware::NeighAware(BundleManager* bundleMng, NodeManager* nodeMng)
  227.84 +{
  227.85 +	nodeManager = nodeMng;
  227.86 +	bundleManager = bundleMng;
  227.87 +	terminator.clear();
  227.88 +	terminator.append(TERMINATOR);
  227.89 +	terminator.append(TERMINATOR2);
  227.90 +
  227.91 +	file = new ReadFile;
  227.92 +	myip=file->getNodeIp();
  227.93 +	myip2=file->getNodeIp2();
  227.94 +	broadcast=file->getBroadcast();
  227.95 +	nodeId=file->getNodeId();
  227.96 +	nodeName=file->getNodeName();
  227.97 +	ALIVE=file->getAlive();
  227.98 +	numid = 0;
  227.99 +
 227.100 +
 227.101 +
 227.102 +	tcpServer = new NeighAwareServer(this);
 227.103 +	bool b = connect(tcpServer, SIGNAL(newConnectionEstablished(QTcpSocket*, bool&)), this, SLOT(newConnectionEstablished(QTcpSocket*, bool&)));
 227.104 +	tcpServer->listen(myip,30001);
 227.105 +
 227.106 +	udpSocketp = new QUdpSocket(this);
 227.107 +	udpSocketp->bind(30000);
 227.108 +    connect(udpSocketp, SIGNAL(readyRead()),this, SLOT(processPingDatagrams()));
 227.109 +	
 227.110 +	broadcastTimer = new QTimer(this);
 227.111 +	connect(broadcastTimer, SIGNAL(timeout()), this, SLOT(broadcastDatagram()));
 227.112 +	broadcastTimer->start(1000);
 227.113 +
 227.114 +	//DEBUG
 227.115 +	log = new MessageFile;
 227.116 +	log->set("connections.log", 1000000, 5);
 227.117 +}
 227.118 +
 227.119 +void NeighAware::newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection)
 227.120 +{ 
 227.121 +	QHostAddress ip;
 227.122 +	ip = newSocket->peerAddress();
 227.123 +	QString bla = ip.toString();
 227.124 +	int index=-1;
 227.125 +	for(int i=0;i<connectionlist.size();i++)
 227.126 +	{
 227.127 +		QString bla = ip.toString();
 227.128 +		if(ip == connectionlist.at(i).ip)
 227.129 +			index=i;
 227.130 +	}
 227.131 +	if(index==-1)
 227.132 +	{
 227.133 +		newSocket->connect(newSocket,SIGNAL(readyRead()),this,SLOT(processPendingDatagrams()));
 227.134 +		newSocket->connect(newSocket,SIGNAL(disconnected()),this,SLOT(stateChanged()));
 227.135 +		newSocket->connect(newSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(errorDecode(QAbstractSocket::SocketError)));
 227.136 +		//We add a new connection to the list
 227.137 +		ConnectionInfo connectioninfo;
 227.138 +		//Ading
 227.139 +		connectioninfo.conptr = new Connection(numid,file->getNodeId(),file->getNodeName(),nodeManager,bundleManager,this);
 227.140 +		newSocket->connect(connectioninfo.conptr,SIGNAL(sendDataPacket(DataPacket)),this,SLOT(sendDatagram(DataPacket)));
 227.141 +		///
 227.142 +		connectioninfo.ip=ip;
 227.143 +		connectioninfo.id=numid;
 227.144 +		connectioninfo.alive=ALIVE;
 227.145 +		connectioninfo.tcpSocket = newSocket;
 227.146 +		connectioninfo.isClient = false;
 227.147 +
 227.148 +
 227.149 +    			if(connectioninfo.tcpSocket->waitForConnected(500))
 227.150 +			{
 227.151 +			    QHostAddress tmp=connectioninfo.ip;
 227.152 +    			    QString logString;
 227.153 +			    logString.append("New connection(S):");	
 227.154 +			    logString.append(tmp.toString());
 227.155 +			    log->addLog(0,logString);
 227.156 +			    connectionlist << connectioninfo;
 227.157 +			}
 227.158 +			else
 227.159 +			{
 227.160 +			    QHostAddress tmp=connectioninfo.ip;
 227.161 +			    QString logString;
 227.162 +			    logString.append("Drop connection(S):");	
 227.163 +			    logString.append(tmp.toString());
 227.164 +			    log->addLog(0,logString);
 227.165 +			    delete connectioninfo.conptr;
 227.166 +			    //delete connectioninfo.tcpSocket;
 227.167 +			}
 227.168 +
 227.169 +		
 227.170 +		numid++;
 227.171 +		permitNewConnection=true;
 227.172 +		sendDebugConList(connectionlist);
 227.173 +	}
 227.174 +}
 227.175 +
 227.176 +void NeighAware::broadcastDatagram()
 227.177 +{  	
 227.178 +	QByteArray datagram=HELLO_DATAGRAM;
 227.179 +	QString debug = broadcast.toString();
 227.180 + 	udpSocketp->writeDatagram(datagram.data(), datagram.size(), broadcast, 30000);
 227.181 +	for(int i=0;i<connectionlist.count();i++)
 227.182 +	{
 227.183 +		connectionlist[i].alive--;
 227.184 +		if(connectionlist[i].alive<=0)
 227.185 +		{
 227.186 +			
 227.187 +			connectionlist[i].tcpSocket->disconnectFromHost();
 227.188 +			delete connectionlist[i].tcpSocket;
 227.189 +			delete connectionlist[i].conptr;
 227.190 +			connectionlist.removeAt(i);	
 227.191 +			sendDebugConList(connectionlist);
 227.192 +		}
 227.193 +		sendDebugConList(connectionlist);
 227.194 +	}
 227.195 +	QFile f("connections.txt");
 227.196 +	if (f.open(QIODevice::WriteOnly) == true)
 227.197 +	{
 227.198 +		for(int i=0;i<connectionlist.size();i++)
 227.199 +		{
 227.200 +			f.write(connectionlist[i].ip.toString().toAscii());
 227.201 +			if (connectionlist[i].isClient == true)
 227.202 +				f.write(QString("\tclient\r\n").toAscii());
 227.203 +			else
 227.204 +				f.write(QString("\tserver\r\n").toAscii());
 227.205 +		}
 227.206 +		f.close();
 227.207 +	}
 227.208 +}
 227.209 +
 227.210 +void NeighAware::processPingDatagrams()
 227.211 +{
 227.212 +	while (udpSocketp->hasPendingDatagrams()) 
 227.213 +	{
 227.214 +        QByteArray datagram;
 227.215 +		
 227.216 +		quint16 port;
 227.217 +		QHostAddress ip;
 227.218 +		bool insert=true;
 227.219 +		datagram.resize(udpSocketp->pendingDatagramSize());
 227.220 +        udpSocketp->readDatagram(datagram.data(), datagram.size(), &ip, &port);
 227.221 +		QString bla = ip.toString();
 227.222 +		//Is the node in the list?
 227.223 +		if ((ip==myip) || (ip==myip2))
 227.224 +		{
 227.225 +			insert=false;
 227.226 +		}
 227.227 +		else
 227.228 +		{
 227.229 +			for(int i=0;i<connectionlist.size();i++)
 227.230 +			{
 227.231 +			 
 227.232 +				if(connectionlist.at(i).ip ==ip)
 227.233 +				{ 
 227.234 +					insert=false;
 227.235 +				}
 227.236 +			}
 227.237 +		}
 227.238 +		//If not we insert it.
 227.239 +		if(insert==true)
 227.240 +		{
 227.241 +			QTcpSocket* newSocket = new QTcpSocket(this);
 227.242 +			newSocket->connect(newSocket,SIGNAL(readyRead()),this,SLOT(processPendingDatagrams()));
 227.243 +			newSocket->connect(newSocket,SIGNAL(disconnected()),this,SLOT(stateChanged()));
 227.244 +			newSocket->connect(newSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(errorDecode(QAbstractSocket::SocketError)));
 227.245 +			newSocket->connectToHost(ip, 30001);
 227.246 +			//We add a new connection to the list
 227.247 +			ConnectionInfo connectioninfo;
 227.248 +			//Adding
 227.249 +			connectioninfo.conptr = new Connection(numid,file->getNodeId(),file->getNodeName(),nodeManager,bundleManager,this);
 227.250 +			newSocket->connect(connectioninfo.conptr,SIGNAL(sendDataPacket(DataPacket)),this,SLOT(sendDatagram(DataPacket)));
 227.251 +
 227.252 +			///
 227.253 +			connectioninfo.ip=ip;
 227.254 +			connectioninfo.id=numid;
 227.255 +			connectioninfo.alive=ALIVE;
 227.256 +			connectioninfo.tcpSocket = newSocket;
 227.257 +			connectioninfo.isClient = true;
 227.258 +
 227.259 +			
 227.260 +    			if(connectioninfo.tcpSocket->waitForConnected(500))
 227.261 +			{
 227.262 +			    QHostAddress tmp=connectioninfo.ip;
 227.263 +    			    QString logString;
 227.264 +			    logString.append("New connection(C):");	
 227.265 +			    logString.append(tmp.toString());
 227.266 +			    log->addLog(0,logString);
 227.267 +			    connectionlist << connectioninfo;
 227.268 +			}
 227.269 +			else
 227.270 +			{
 227.271 +			    QHostAddress tmp=connectioninfo.ip;
 227.272 +			    QString logString;
 227.273 +			    logString.append("Drop connection(C):");	
 227.274 +			    logString.append(tmp.toString());
 227.275 +			    log->addLog(0,logString);
 227.276 +    			    connectioninfo.tcpSocket->disconnectFromHost();
 227.277 +			    delete connectioninfo.conptr;
 227.278 +			    delete connectioninfo.tcpSocket;
 227.279 +			}
 227.280 +
 227.281 +
 227.282 +
 227.283 +
 227.284 +			bool b = connectionlist[connectionlist.count()-1].isClient;
 227.285 +			numid++;
 227.286 +			sendDebugConList(connectionlist);
 227.287 +		}
 227.288 +	}
 227.289 +}
 227.290 +
 227.291 +
 227.292 +void NeighAware::sendDatagram(DataPacket datapacket)
 227.293 +{  	
 227.294 +	QHostAddress ip;
 227.295 +	for(int i=0;i<connectionlist.size();i++)
 227.296 +	{
 227.297 +		if(connectionlist.at(i).id==datapacket.id) 
 227.298 +		{
 227.299 +			ip=connectionlist.at(i).ip;
 227.300 +
 227.301 +			//Preparing heder
 227.302 +			QByteArray newDatagram;
 227.303 +			newDatagram.append(datapacket.data);
 227.304 +			//Appending terminator
 227.305 +			newDatagram.append(terminator);
 227.306 +			//Sending datagram 
 227.307 +			connectionlist[i].tcpSocket->write(newDatagram);
 227.308 +		}
 227.309 +	}
 227.310 +
 227.311 +
 227.312 +}
 227.313 +
 227.314 +
 227.315 +
 227.316 +void NeighAware::stateChanged()
 227.317 +{
 227.318 +	QString logString;
 227.319 +	logString.append(">>>>>>>>>>>>State:");
 227.320 +	log->addLog(0,logString);
 227.321 +
 227.322 +	for(int i=0;i<connectionlist.count();i++)
 227.323 +	{
 227.324 +		if((connectionlist.at(i).tcpSocket->state() != QAbstractSocket::ConnectedState))    
 227.325 +		{
 227.326 +//		QString logString;
 227.327 +//		QHostAddress tmp=connectionlist.at(i).ip;
 227.328 +//		logString.append("Removing (State) IP:");	
 227.329 +//		logString.append(tmp.toString());		
 227.330 +//		log->addLog(0,logString);
 227.331 +			
 227.332 +//			connectionlist[i].tcpSocket->deleteLater();
 227.333 +//			connectionlist[i].conptr->deleteLater();
 227.334 +//			connectionlist.removeAt(i);	
 227.335 +			connectionlist[i].alive=0;
 227.336 +
 227.337 +			sendDebugConList(connectionlist);
 227.338 +		}
 227.339 +	}
 227.340 +}
 227.341 +
 227.342 +void NeighAware::errorDecode(QAbstractSocket::SocketError error)
 227.343 +{
 227.344 +	int i=error;
 227.345 +	QString logString;
 227.346 +	logString.append(QString("Error %1\n\r").arg((int)error).toAscii());
 227.347 +	log->addLog(0,logString);
 227.348 +/*	
 227.349 +	for(int i=0;i<connectionlist.count();i++)
 227.350 +	{
 227.351 +		if((connectionlist.at(i).tcpSocket->state() != QAbstractSocket::ConnectedState))    
 227.352 +		{
 227.353 +//			connectionlist[i].tcpSocket->deleteLater();
 227.354 +//			connectionlist[i].conptr->deleteLater();
 227.355 +//			connectionlist.removeAt(i);	
 227.356 +			connectionlist[i].alive=0;
 227.357 +			sendDebugConList(connectionlist);
 227.358 +		}
 227.359 +	}
 227.360 +
 227.361 +			QFile f("error.txt");
 227.362 +		if (f.open(QIODevice::WriteOnly|QIODevice::Append) == true)
 227.363 +		{
 227.364 +			f.write(QString("Error %1\n\r").arg((int)error).toAscii());
 227.365 +			f.close();
 227.366 +		}
 227.367 +*/
 227.368 +}
 227.369 +
 227.370 +
 227.371 +
 227.372 +void NeighAware::processPendingDatagrams()
 227.373 +{
 227.374 +	for(int i=0;i<connectionlist.size();i++)
 227.375 +	{
 227.376 +		QByteArray packetPart;
 227.377 +		packetPart=connectionlist[i].tcpSocket->readAll();
 227.378 +		if(packetPart.size()>0)
 227.379 +		{
 227.380 +			//Updating alive variable
 227.381 +			connectionlist[i].alive=ALIVE;
 227.382 +			//We add datagram to data
 227.383 +			connectionlist[i].data.append(packetPart);
 227.384 +			int idx;
 227.385 +			idx = connectionlist[i].data.indexOf(terminator,0);
 227.386 +			while(idx != -1)
 227.387 +			{
 227.388 +				//We remove the terminator
 227.389 +				QByteArray tempData;
 227.390 +				tempData=connectionlist[i].data.mid(0,idx);
 227.391 +				connectionlist[i].data.remove(0,(idx+terminator.size()));
 227.392 +				DataPacket send;
 227.393 +				send.data.append(tempData);
 227.394 +				send.id=connectionlist[i].id;
 227.395 +				connectionlist[i].conptr->receiveDatagram(send);
 227.396 +				idx = connectionlist[i].data.indexOf(terminator,0);
 227.397 +			}
 227.398 +			
 227.399 +		}
 227.400 +	}
 227.401 +}
 227.402 +
 227.403 +		
 227.404 +		
 227.405 +
 227.406 +		
   228.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   228.2 +++ b/x86/Win32/neighbourAwareness.h	Thu Jun 26 17:39:40 2008 +0100
   228.3 @@ -0,0 +1,99 @@
   228.4 +#ifndef NEIGHBOURAWARENESS_H
   228.5 +#define NEIGHBOURAWARENESS_H
   228.6 +
   228.7 +//#include <iostream.h>
   228.8 +#include <QtCore>
   228.9 +#include <QtNetwork>
  228.10 +#include <connection.h>
  228.11 +#include <dataPacket.h>
  228.12 +#include <neighbourAwareness.h>
  228.13 +#include <bundleManager.h>
  228.14 +#include <nodeManager.h>
  228.15 +#include <messageFile.h>
  228.16 +#include <readFile.h>
  228.17 +
  228.18 +
  228.19 +class ConnectionInfo : public QObject 
  228.20 +{
  228.21 +	Q_OBJECT
  228.22 +	public:
  228.23 +	ConnectionInfo(QObject *parent = 0);
  228.24 +	ConnectionInfo(const ConnectionInfo& other);
  228.25 +	ConnectionInfo& operator=(const ConnectionInfo& other);
  228.26 +	QHostAddress ip;
  228.27 +	QByteArray data;
  228.28 +	QTcpSocket* tcpSocket;
  228.29 +	QTcpSocket* clientTcpSocket;
  228.30 +	Connection *conptr;
  228.31 +	int alive;
  228.32 +	int id;
  228.33 +	bool isClient;
  228.34 +};
  228.35 +
  228.36 +class NeighAwareServer : public QTcpServer
  228.37 +{
  228.38 +	Q_OBJECT
  228.39 +
  228.40 +public:
  228.41 +	NeighAwareServer(QObject *parent = 0);
  228.42 +
  228.43 +protected slots:
  228.44 +	virtual void incomingConnection(int socketDescripton);
  228.45 +
  228.46 +signals:
  228.47 +	void newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection);
  228.48 +
  228.49 +};
  228.50 +
  228.51 +
  228.52 +class NeighAware : public QObject 
  228.53 +{
  228.54 +
  228.55 +
  228.56 +Q_OBJECT
  228.57 +
  228.58 +public:
  228.59 +
  228.60 +	NeighAware(BundleManager*, NodeManager*);
  228.61 +	NodeManager *nodeManager;
  228.62 +	BundleManager *bundleManager;
  228.63 +
  228.64 +	QList<ConnectionInfo> connectionlist;
  228.65 +   	QByteArray terminator; 	
  228.66 +
  228.67 +	QHostAddress myip;
  228.68 +	QHostAddress myip2;
  228.69 +	QHostAddress broadcast;
  228.70 +	int nodeId;
  228.71 +	QString nodeName;
  228.72 +	int ALIVE;
  228.73 +	int numid;
  228.74 +	ReadFile *file;
  228.75 +
  228.76 +	NeighAwareServer *tcpServer;
  228.77 +	QUdpSocket *udpSocketp;
  228.78 +	QTimer *broadcastTimer;
  228.79 +	QTimer *testTimer;
  228.80 +	MessageFile* log;
  228.81 +
  228.82 +	int logOption;
  228.83 +	
  228.84 +public slots:
  228.85 +	void newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection);
  228.86 +
  228.87 +		
  228.88 +    void errorDecode(QAbstractSocket::SocketError);
  228.89 +	void stateChanged();
  228.90 +	void broadcastDatagram();
  228.91 +	void sendDatagram(DataPacket datapacket);
  228.92 +	void processPendingDatagrams();
  228.93 +	void processPingDatagrams();
  228.94 +//	void addTcpConnection();
  228.95 +
  228.96 +signals:
  228.97 +	void sendDebugConList(QList<ConnectionInfo>);
  228.98 +	void passDatagram(DataPacket);	
  228.99 +
 228.100 +};
 228.101 +
 228.102 +#endif
   229.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   229.2 +++ b/x86/Win32/node.cpp	Thu Jun 26 17:39:40 2008 +0100
   229.3 @@ -0,0 +1,59 @@
   229.4 +#include <QtCore>
   229.5 +#include <node.h>
   229.6 +
   229.7 +
   229.8 +Node::Node(QObject *parent)
   229.9 +{
  229.10 +			nodeId=0;
  229.11 +			probability=0.0;
  229.12 +			nodeName.clear();
  229.13 +			flag=-1;
  229.14 +}
  229.15 +
  229.16 +Node& Node::operator=(const Node& other)
  229.17 +{
  229.18 + nodeId = other.nodeId;
  229.19 + flag = other.flag;
  229.20 + probability = other.probability;
  229.21 + nodeName = other.nodeName;
  229.22 + return *this;
  229.23 +}
  229.24 +
  229.25 +Node::Node(const Node& other)
  229.26 +{
  229.27 + nodeId = other.nodeId;
  229.28 + flag = other.flag;
  229.29 + probability = other.probability;
  229.30 + nodeName = other.nodeName;
  229.31 +}	
  229.32 +	
  229.33 +void Node::setContent(int id,float pro,int f,QString name)
  229.34 +{
  229.35 +	flag=f;
  229.36 +	nodeId=id;
  229.37 +	probability=pro;
  229.38 +	nodeName=name;
  229.39 +
  229.40 +}
  229.41 +
  229.42 +int Node::getId()
  229.43 +{
  229.44 +	return nodeId;
  229.45 +}
  229.46 +
  229.47 +int Node::getFlag()
  229.48 +{
  229.49 +	
  229.50 +	return flag;
  229.51 +}
  229.52 +
  229.53 +float Node::getProbability()
  229.54 +{
  229.55 +	return probability;
  229.56 +}
  229.57 +
  229.58 +QString Node::getName()
  229.59 +{
  229.60 +	return nodeName;
  229.61 +}
  229.62 +
   230.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   230.2 +++ b/x86/Win32/node.h	Thu Jun 26 17:39:40 2008 +0100
   230.3 @@ -0,0 +1,29 @@
   230.4 +#ifndef NODE_H
   230.5 +#define NODE_H
   230.6 +
   230.7 +#include <QtCore>
   230.8 +
   230.9 +class Node : public QObject
  230.10 +{
  230.11 +
  230.12 +Q_OBJECT 
  230.13 +	public:
  230.14 +	int nodeId;
  230.15 +	float probability;
  230.16 +	int flag;
  230.17 +	QString nodeName;
  230.18 +
  230.19 +
  230.20 +	Node(QObject *parent = 0);
  230.21 +	Node(const Node& other);
  230.22 +	Node& operator=(const Node& other);
  230.23 +
  230.24 +
  230.25 +	void setContent(int,float,int,QString);
  230.26 +	int getId();
  230.27 +	int getFlag(); 
  230.28 +	float getProbability();
  230.29 +	QString getName();
  230.30 +};
  230.31 +
  230.32 +#endif
  230.33 \ No newline at end of file
   231.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   231.2 +++ b/x86/Win32/nodeManager.cpp	Thu Jun 26 17:39:40 2008 +0100
   231.3 @@ -0,0 +1,298 @@
   231.4 +#include <QtCore>
   231.5 +#include <nodeManager.h>
   231.6 +#include <node.h>
   231.7 +#include <readFile.h>
   231.8 +#include <math.h>
   231.9 +#include <qmutex.h>
  231.10 +
  231.11 +//#define AGING_TIMER 900
  231.12 +//#define PENCOUNTER 0.75
  231.13 +//#define BETA 0.25
  231.14 +//#define GAMMA 0.90
  231.15 +
  231.16 +NodeManager::NodeManager()//BundleManager* bundleMng)
  231.17 +{
  231.18 +	ReadFile conf;
  231.19 +	BETA=0.75;
  231.20 +	PENCOUNTER=conf.getPEncounter();
  231.21 +	GAMMA=conf.getGamma();
  231.22 +	AGING_TIMER=conf.getAgingTimer();
  231.23 +	int WRITETIMER =conf.getWriteToFileTimer();
  231.24 +	int fileOption = conf.getUseFileNodes();
  231.25 +	//Create and connect Hello Timer
  231.26 +	//bundleManager = bundleMng;
  231.27 +	agingTimer = new QTimer();
  231.28 +	storagePath=conf.getStoragePath();
  231.29 +	dir.setPath(storagePath);
  231.30 +	option=conf.getUseFileNodes();
  231.31 +        connect(agingTimer, SIGNAL(timeout()), this, SLOT(aging()));
  231.32 +        agingTimer->start(AGING_TIMER);
  231.33 +	if(fileOption==1)
  231.34 +	{
  231.35 +		readFromFile();
  231.36 +		writeToFileTimer = new QTimer();
  231.37 +		connect(writeToFileTimer, SIGNAL(timeout()), this, SLOT(saveToFile()));
  231.38 +		writeToFileTimer->start(WRITETIMER);
  231.39 +		emit sendDebugNodeList(nodeList);
  231.40 +	}
  231.41 +}
  231.42 +
  231.43 +
  231.44 +void NodeManager::aging()
  231.45 +{
  231.46 +	for (ushort i = 0; i < nodeList.size(); ++i) 
  231.47 +	{
  231.48 +			//AGE PROBABILITY UPDATE
  231.49 +			Node tempNode;
  231.50 +			tempNode=nodeList.at(i);
  231.51 +			tempNode.probability=tempNode.probability*GAMMA;
  231.52 +			nodeList.replace(i,tempNode);
  231.53 +
  231.54 +	}
  231.55 +	//DEBUG
  231.56 +	emit sendDebugNodeList(nodeList);
  231.57 +}
  231.58 +
  231.59 +void NodeManager::saveToFile()
  231.60 +{
  231.61 +	QFile file(dir.filePath("nodes.txt"));
  231.62 +	if(file.open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text))
  231.63 +	{
  231.64 +	    QDateTime realTime;
  231.65 +	    realTime=realTime.currentDateTime ();
  231.66 +	    QString time=realTime.toString("MM/dd/yyyy hh:mm:ss");
  231.67 +	    time.append("\n");
  231.68 +	    file.write(time.toAscii ());
  231.69 +	    for (ushort i = 0; i < nodeList.size(); ++i) 
  231.70 +	    {
  231.71 +		QString nodeString;
  231.72 +		nodeString.append(QString("%1").arg((int)nodeList.at(i).nodeId));
  231.73 +		nodeString.append("\t");
  231.74 +		nodeString.append(nodeList.at(i).nodeName);
  231.75 +		nodeString.append("\t");
  231.76 +		nodeString.append(QString("%1").arg((float)nodeList.at(i).probability));
  231.77 +		nodeString.append("\t");
  231.78 +		nodeString.append(QString("%1").arg((int)nodeList.at(i).flag));
  231.79 +		nodeString.append("\n");
  231.80 +		file.write(nodeString.toAscii ());
  231.81 +	    }
  231.82 +	    file.close();
  231.83 +	}
  231.84 +	//DEBUG
  231.85 +	emit sendDebugNodeList(nodeList);
  231.86 +}
  231.87 +
  231.88 +void NodeManager::readFromFile()
  231.89 +{
  231.90 +	ReadFile conf;
  231.91 +	QString storagePath=conf.getStoragePath();
  231.92 +	QDir dir;
  231.93 +	dir.setPath(storagePath);
  231.94 +	QFile file(dir.filePath("nodes.txt"));
  231.95 +	if(file.open(QIODevice::ReadOnly | QIODevice::Text))
  231.96 +	{
  231.97 +	    QString firstLine;
  231.98 +	    QString line;
  231.99 +	    //First we read date and time
 231.100 +	    firstLine=file.readLine();
 231.101 +	    //Then we add nodes
 231.102 +	    line=file.readLine();
 231.103 +	    while(line.size()>0)
 231.104 +	    {
 231.105 +    		//Parsing node
 231.106 +		int pos;
 231.107 +		QString temp;
 231.108 +		Node newNode;
 231.109 +		//Node ID
 231.110 +		pos=line.indexOf("\t",0);
 231.111 +		temp=line.mid(0,pos);
 231.112 +		newNode.nodeId=temp.toInt(0,10);
 231.113 +		line.remove(0,pos+1);
 231.114 +		//Node Name
 231.115 +		pos=line.indexOf("\t",0);
 231.116 +		temp=line.mid(0,pos);
 231.117 +		newNode.nodeName=temp;
 231.118 +		line.remove(0,pos+1);
 231.119 +		//Node Probability
 231.120 +		pos=line.indexOf("\t",0);
 231.121 +		temp=line.mid(0,pos);
 231.122 +		newNode.probability=temp.toFloat();
 231.123 +		line.remove(0,pos+1);
 231.124 +		//Node Flag
 231.125 +		pos=line.indexOf("\t",0);
 231.126 +		temp=line.mid(0,pos);
 231.127 +		newNode.flag=temp.toInt(0,10);
 231.128 +		line.remove(0,pos+1);
 231.129 +		//Adding Node
 231.130 +		nodeList.append(newNode);
 231.131 +		line=file.readLine();
 231.132 +	    }
 231.133 +	    //Aging the nodes
 231.134 +	    int option=conf.getAgeFileNodes();
 231.135 +	    if(option==1)
 231.136 +	    {
 231.137 +		QDateTime oldTime;
 231.138 +		firstLine.chop(1);
 231.139 +		oldTime=oldTime.fromString(firstLine,"MM/dd/yyyy hh:mm:ss");
 231.140 +		QDateTime realTime;
 231.141 +		realTime=realTime.currentDateTime ();
 231.142 +		int dif= oldTime.secsTo(realTime);
 231.143 +		int normalAging = conf.getAgingTimer()/1000;
 231.144 +		int aging=dif/normalAging;
 231.145 +		//Aging all nodes
 231.146 +		for (ushort i = 0; i < nodeList.size(); ++i) 
 231.147 +		{
 231.148 +			//AGE PROBABILITY UPDATE
 231.149 +			Node tempNode;
 231.150 +			tempNode=nodeList.at(i);
 231.151 +			tempNode.probability=tempNode.probability*(pow(GAMMA,aging));
 231.152 +			nodeList.replace(i,tempNode);
 231.153 +		}
 231.154 +	    }
 231.155 +	    emit sendDebugNodeList(nodeList);
 231.156 +	    emit updatedNodeList(this);
 231.157 +	    file.close();
 231.158 +	}
 231.159 +}
 231.160 +
 231.161 +
 231.162 +
 231.163 +int NodeManager::getId(QString str)
 231.164 +{
 231.165 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 231.166 +	{
 231.167 +			QString s;
 231.168 +			QString n;
 231.169 +			s=str;
 231.170 +			n=nodeList.at(i).nodeName;
 231.171 +			if(nodeList.at(i).nodeName==str)
 231.172 +				return nodeList.at(i).nodeId;
 231.173 +	}
 231.174 +	return 0;
 231.175 +}
 231.176 +
 231.177 +
 231.178 +void NodeManager::addDictionary(int ourNodeId,QList<Node> dictionary)
 231.179 +{
 231.180 +	for (ushort i = 0; i < dictionary.size(); ++i) 
 231.181 +	{
 231.182 +		int isInTheList=0;
 231.183 +		for (ushort n = 0; n < nodeList.size(); ++n) 
 231.184 +		{
 231.185 +			if(dictionary.at(i).nodeId==nodeList.at(n).nodeId)
 231.186 +				isInTheList++;
 231.187 +			
 231.188 +		}
 231.189 +		if((isInTheList==0)&&(dictionary.at(i).nodeId!=ourNodeId))
 231.190 +		{
 231.191 +			nodeList.append(dictionary.at(i));
 231.192 +			//!!!!!!!!!!!!!!!!!!!!!!
 231.193 +				//DEBUG
 231.194 +			emit sendDebugNodeList(nodeList);
 231.195 +			emit updatedNodeList(this);
 231.196 +		}
 231.197 +	}
 231.198 +}
 231.199 +
 231.200 +void NodeManager::encounterNode(int encounterNodeId,int encounterNodeType,QString encounterNodeName)
 231.201 +{
 231.202 +	int isInTheList=0;
 231.203 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 231.204 +	{
 231.205 +		//ENCOUNTER PROBABILITY UPDATE
 231.206 +		if(nodeList.at(i).nodeId==encounterNodeId)
 231.207 +		{
 231.208 +				Node tempNode;
 231.209 +				tempNode=nodeList.at(i);
 231.210 +				//ENCOUNTING EQUATION
 231.211 +				tempNode.probability=tempNode.probability+((1-tempNode.probability)*PENCOUNTER);
 231.212 +				nodeList.replace(i,tempNode);
 231.213 +				isInTheList++;
 231.214 +		}
 231.215 +	}
 231.216 +	//UNKNOW NEW NODE
 231.217 +	if(isInTheList==0) 
 231.218 +	{
 231.219 +		Node tempNode;
 231.220 +		tempNode.nodeId=encounterNodeId;
 231.221 +		tempNode.nodeName=encounterNodeName;
 231.222 +		tempNode.flag=-1;
 231.223 +		tempNode.probability=PENCOUNTER;
 231.224 +		nodeList.append(tempNode);
 231.225 +		//!!!!!!!!!!!!!!!!!!!!!!
 231.226 +		//DEBUG
 231.227 +		emit sendDebugNodeList(nodeList);
 231.228 +		emit updatedNodeList(this);
 231.229 +	}
 231.230 +}
 231.231 +
 231.232 +
 231.233 +void NodeManager::addRIB(QList<Node>RIB,int encounterNodeId)//RIB=P_(B,x)
 231.234 +{
 231.235 +	float P_AB=1;
 231.236 +	//First we find P_AB
 231.237 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 231.238 +	{
 231.239 +		if(nodeList.at(i).nodeId==encounterNodeId)
 231.240 +			P_AB = nodeList.at(i).probability;
 231.241 +	}
 231.242 +	//Then we update all transitivites
 231.243 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 231.244 +	{
 231.245 +		//TRANSITIVE PROBABILITY UPDATE
 231.246 +		if(nodeList.at(i).nodeId!=encounterNodeId)
 231.247 +		{
 231.248 +			int nodeCId = nodeList.at(i).nodeId;
 231.249 +			float P_AC = nodeList.at(i).probability;
 231.250 +			float P_BC = 1;
 231.251 +			float newP_AC;
 231.252 +			int flag=0;
 231.253 +			for (ushort n = 0; n < RIB.size(); ++n) 
 231.254 +			{
 231.255 +				if(RIB.at(n).nodeId==nodeCId)
 231.256 +				{
 231.257 +					P_BC = RIB.at(n).probability;
 231.258 +					flag = RIB.at(n).flag;
 231.259 +				}
 231.260 +			}
 231.261 +			newP_AC=P_AC+((1-P_AC) * P_AB * P_BC * BETA);
 231.262 +			//Adding data to list
 231.263 +			Node tempNode;
 231.264 +			tempNode=nodeList.at(i);
 231.265 +			tempNode.probability=newP_AC;
 231.266 +			tempNode.flag=flag;
 231.267 +			nodeList.replace(i,tempNode);
 231.268 +		}
 231.269 +
 231.270 +	}
 231.271 +	//DEBUG
 231.272 +	emit sendDebugNodeList(nodeList);
 231.273 +}
 231.274 +
 231.275 +
 231.276 +void NodeManager::addNode(Node newNode)
 231.277 +{
 231.278 +	nodeList.append(newNode);
 231.279 +	//!!!!!!!!!!!!!!!!!!!!!!!!!!!
 231.280 +	emit updatedNodeList(this);
 231.281 +	//DEBUG
 231.282 +	emit sendDebugNodeList(nodeList);
 231.283 +}
 231.284 +
 231.285 +QList<Node> NodeManager::getNodeList()
 231.286 +{	
 231.287 +	return nodeList;
 231.288 +}
 231.289 +
 231.290 +//Gives out only the list of nodes with RIB information
 231.291 +QList<Node> NodeManager::getRIBNodeList()
 231.292 +{	
 231.293 +	QList<Node> newNodeList;
 231.294 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 231.295 +	{
 231.296 +		if(nodeList.at(i).flag != -1)
 231.297 +			newNodeList.append(nodeList.at(i));
 231.298 +	
 231.299 +	}
 231.300 +	return newNodeList;
 231.301 +}
 231.302 \ No newline at end of file
   232.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   232.2 +++ b/x86/Win32/nodeManager.h	Thu Jun 26 17:39:40 2008 +0100
   232.3 @@ -0,0 +1,46 @@
   232.4 +#ifndef NODEMANAGER_H
   232.5 +#define NODEMANAGER_H
   232.6 +
   232.7 +#include <QtCore>
   232.8 +#include <node.h>
   232.9 +//#include <messageFile.cpp>
  232.10 +//#include <bundleManager.h>
  232.11 +
  232.12 +class NodeManager : public QObject
  232.13 +{
  232.14 +	Q_OBJECT
  232.15 +public:
  232.16 +	int AGING_TIMER;
  232.17 +	float PENCOUNTER;
  232.18 +	float BETA;
  232.19 +	float GAMMA;
  232.20 +
  232.21 +//	BundleManager *bundleManager;
  232.22 +	
  232.23 +	void addNode(Node);
  232.24 +	int getId(QString);
  232.25 +	void addDictionary(int ourNodeId,QList<Node>);
  232.26 +	void addRIB(QList<Node>RIB,int encounterNodeId);
  232.27 +	void encounterNode(int encounterNodeId,int encounterNodeType,QString encounterNodeName);
  232.28 +	QList<Node> getNodeList();
  232.29 +	QList<Node> getRIBNodeList();
  232.30 +	QList<Node> nodeList;
  232.31 +	QTimer *agingTimer;
  232.32 +	QTimer *writeToFileTimer;
  232.33 +//	NodeManager(BundleManager*);
  232.34 +	NodeManager();
  232.35 +	QString storagePath;
  232.36 +	//MessageFile* log; 
  232.37 +	QDir dir;
  232.38 +	int option;
  232.39 +
  232.40 +
  232.41 +signals:
  232.42 +		void sendDebugNodeList(QList<Node>);
  232.43 +		void updatedNodeList(NodeManager*);
  232.44 +public slots:
  232.45 +		void aging();
  232.46 +		void saveToFile();
  232.47 +		void readFromFile();
  232.48 +};
  232.49 +#endif
  232.50 \ No newline at end of file
   233.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   233.2 +++ b/x86/Win32/prophet.dsp	Thu Jun 26 17:39:40 2008 +0100
   233.3 @@ -0,0 +1,985 @@
   233.4 +# Microsoft Developer Studio Project File - Name="prophet" - Package Owner=<4>
   233.5 +# Microsoft Developer Studio Generated Build File, Format Version 6.00
   233.6 +# ** DO NOT EDIT **
   233.7 +
   233.8 +# TARGTYPE "Win32 (x86) Application" 0x0101
   233.9 +
  233.10 +CFG=prophet - Win32 Debug
  233.11 +!MESSAGE This is not a valid makefile. To build this project using NMAKE,
  233.12 +!MESSAGE use the Export Makefile command and run
  233.13 +!MESSAGE 
  233.14 +!MESSAGE NMAKE /f "prophet.mak".
  233.15 +!MESSAGE 
  233.16 +!MESSAGE You can specify a configuration when running NMAKE
  233.17 +!MESSAGE by defining the macro CFG on the command line. For example:
  233.18 +!MESSAGE 
  233.19 +!MESSAGE NMAKE /f "prophet.mak" CFG="prophet - Win32 Debug"
  233.20 +!MESSAGE 
  233.21 +!MESSAGE Possible choices for configuration are:
  233.22 +!MESSAGE 
  233.23 +!MESSAGE "prophet - Win32 Debug" (based on "Win32 (x86) Application")
  233.24 +!MESSAGE "prophet - Win32 Release" (based on "Win32 (x86) Application")
  233.25 +!MESSAGE 
  233.26 +
  233.27 +# Begin Project
  233.28 +# PROP AllowPerConfigDependencies 0
  233.29 +# PROP Scc_ProjName ""
  233.30 +# PROP Scc_LocalPath ""
  233.31 +CPP=cl
  233.32 +MTL=midl
  233.33 +RSC=rc
  233.34 +BSC32=bscmake.exe
  233.35 +
  233.36 +!IF  "$(CFG)" == "prophet - Win32 Debug"
  233.37 +
  233.38 +# PROP BASE Use_MFC 0
  233.39 +# PROP BASE Use_Debug_Libraries 1
  233.40 +# PROP BASE Output_Dir "debug"
  233.41 +# PROP BASE Intermediate_Dir "debug"
  233.42 +# PROP BASE Target_Dir ""
  233.43 +# PROP Use_MFC 0
  233.44 +# PROP Use_Debug_Libraries 1
  233.45 +# PROP Output_Dir "debug"
  233.46 +# PROP Intermediate_Dir "debug"
  233.47 +# PROP Target_Dir ""
  233.48 +# ADD CPP /I"C:/Qt/4.0.1/include/QtNetwork" /I"C:/Qt/4.0.1/include/QtGui" /I"C:/Qt/4.0.1/include/QtCore" /I"C:/Qt/4.0.1/include" /I"." /I"C:/Qt/4.0.1/include/ActiveQt" /I"debug" /I"." /I"C:/Qt/4.0.1/mkspecs/win32-msvc" /c /FD -nologo -Zm200 -Zi -MDd -Zi -MDd -GR -GX -W3  /D "_WINDOWS"  /D UNICODE /D QT_LARGEFILE_SUPPORT /D QT_DLL /D QT_CORE_LIB /D QT_GUI_LIB /D QT_NETWORK_LIB /D QT_THREAD_SUPPORT  /D "WIN32"   /D "QT_THREAD_SUPPORT" 
  233.49 +# ADD MTL /nologo /mktyplib203 /win32 /D "_DEBUG"
  233.50 +# ADD RSC /l 0x409 /d "_DEBUG"
  233.51 +# ADD BSC32 /nologo
  233.52 +LINK32=link
  233.53 +# ADD LINK32 /NOLOGO /DEBUG /DEBUG /incremental:yes /SUBSYSTEM:windows /LIBPATH:"C:\Qt\4.0.1\lib" "C:\Qt\4.0.1\lib\qtmaind.lib" "C:\Qt\4.0.1\lib\QtCored4.lib" "C:\Qt\4.0.1\lib\QtGuid4.lib" "C:\Qt\4.0.1\lib\QtNetworkd4.lib" /out:"debug\prophet.exe" 
  233.54 +
  233.55 +!ELSEIF  "$(CFG)" == "prophet - Win32 Release"
  233.56 +
  233.57 +# PROP BASE Use_MFC 0
  233.58 +# PROP BASE Use_Debug_Libraries 0
  233.59 +# PROP BASE Output_Dir "release"
  233.60 +# PROP BASE Intermediate_Dir "release"
  233.61 +# PROP BASE Target_Dir ""
  233.62 +# PROP Use_MFC 0
  233.63 +# PROP Use_Debug_Libraries 0
  233.64 +# PROP Output_Dir "release"
  233.65 +# PROP Intermediate_Dir "release"
  233.66 +# PROP Target_Dir ""
  233.67 +# ADD CPP /I"C:/Qt/4.0.1/include/QtNetwork" /I"C:/Qt/4.0.1/include/QtGui" /I"C:/Qt/4.0.1/include/QtCore" /I"C:/Qt/4.0.1/include" /I"." /I"C:/Qt/4.0.1/include/ActiveQt" /I"release" /I"." /I"C:/Qt/4.0.1/mkspecs/win32-msvc" /c /FD -nologo -Zm200 -O1 -MD -O1 -MD -GR -GX -W3  /D "_WINDOWS"  /D UNICODE /D QT_LARGEFILE_SUPPORT /D QT_DLL /D QT_NO_DEBUG /D QT_CORE_LIB /D QT_GUI_LIB /D QT_NETWORK_LIB /D QT_THREAD_SUPPORT  /D "WIN32"   /D "QT_THREAD_SUPPORT" 
  233.68 +# ADD MTL /nologo /mktyplib203 /win32 /D "NDEBUG"
  233.69 +# ADD RSC /l 0x409 /d "NDEBUG"
  233.70 +# ADD BSC32 /nologo
  233.71 +LINK32=link
  233.72 +# ADD LINK32 /NOLOGO /incremental:yes /SUBSYSTEM:windows /LIBPATH:"C:\Qt\4.0.1\lib" "C:\Qt\4.0.1\lib\qtmain.lib" "C:\Qt\4.0.1\lib\QtCore4.lib" "C:\Qt\4.0.1\lib\QtGui4.lib" "C:\Qt\4.0.1\lib\QtNetwork4.lib" /out:"release\prophet.exe" 
  233.73 +
  233.74 +!ENDIF 
  233.75 +
  233.76 +# Begin Target
  233.77 +
  233.78 +# Name "prophet - Win32 Debug"
  233.79 +# Name "prophet - Win32 Release"
  233.80 +
  233.81 +# Begin Group "Source Files"
  233.82 +# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
  233.83 +# Begin Source File
  233.84 +SOURCE=DTNInterface.cpp
  233.85 +# End Source File
  233.86 +
  233.87 +# Begin Source File
  233.88 +SOURCE=bundle.cpp
  233.89 +# End Source File
  233.90 +
  233.91 +# Begin Source File
  233.92 +SOURCE=bundleManager.cpp
  233.93 +# End Source File
  233.94 +
  233.95 +# Begin Source File
  233.96 +SOURCE=connection.cpp
  233.97 +# End Source File
  233.98 +
  233.99 +# Begin Source File
 233.100 +SOURCE=dataPacket.cpp
 233.101 +# End Source File
 233.102 +
 233.103 +# Begin Source File
 233.104 +SOURCE=debugWidget.cpp
 233.105 +# End Source File
 233.106 +
 233.107 +# Begin Source File
 233.108 +SOURCE=hello.cpp
 233.109 +# End Source File
 233.110 +
 233.111 +# Begin Source File
 233.112 +SOURCE=main.cpp
 233.113 +# End Source File
 233.114 +
 233.115 +# Begin Source File
 233.116 +SOURCE=messageFile.cpp
 233.117 +# End Source File
 233.118 +
 233.119 +# Begin Source File
 233.120 +SOURCE=msgWidget.cpp
 233.121 +# End Source File
 233.122 +
 233.123 +# Begin Source File
 233.124 +SOURCE=neighbourAwareness.cpp
 233.125 +# End Source File
 233.126 +
 233.127 +# Begin Source File
 233.128 +SOURCE=node.cpp
 233.129 +# End Source File
 233.130 +
 233.131 +# Begin Source File
 233.132 +SOURCE=nodeManager.cpp
 233.133 +# End Source File
 233.134 +
 233.135 +# Begin Source File
 233.136 +SOURCE=readFile.cpp
 233.137 +# End Source File
 233.138 +
 233.139 +# Begin Source File
 233.140 +SOURCE=tcpClient.cpp
 233.141 +# End Source File
 233.142 +
 233.143 +# Begin Source File
 233.144 +SOURCE=tlv.cpp
 233.145 +# End Source File
 233.146 +
 233.147 +# End Group
 233.148 +
 233.149 +# Begin Group "Header Files"
 233.150 +# PROP Default_Filter "h;hpp;hxx;hm;inl"
 233.151 +# Begin Source File
 233.152 +SOURCE=DTNInterface.h
 233.153 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.154 +
 233.155 +USERDEP_DTNInterface.h=
 233.156 +# PROP Ignore_Default_Tool 1
 233.157 +# Begin Custom Build - Running MOC on DTNInterface.h
 233.158 +InputPath=DTNInterface.h
 233.159 +BuildCmds=  \
 233.160 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_DTNInterface.cpp
 233.161 +"debug\moc_DTNInterface.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.162 +	$(BuildCmds)
 233.163 +
 233.164 +# End Custom Build
 233.165 +
 233.166 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.167 +
 233.168 +USERDEP_DTNInterface.h=
 233.169 +# PROP Ignore_Default_Tool 1
 233.170 +# Begin Custom Build - Running MOC on DTNInterface.h
 233.171 +InputPath=DTNInterface.h
 233.172 +BuildCmds=  \
 233.173 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_DTNInterface.cpp
 233.174 +"release\moc_DTNInterface.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.175 +	$(BuildCmds)
 233.176 +
 233.177 +# End Custom Build
 233.178 +
 233.179 +!ENDIF
 233.180 +# End Source File
 233.181 +
 233.182 +# Begin Source File
 233.183 +SOURCE=bundle.h
 233.184 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.185 +
 233.186 +USERDEP_bundle.h=
 233.187 +# PROP Ignore_Default_Tool 1
 233.188 +# Begin Custom Build - Running MOC on bundle.h
 233.189 +InputPath=bundle.h
 233.190 +BuildCmds=  \
 233.191 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_bundle.cpp
 233.192 +"debug\moc_bundle.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.193 +	$(BuildCmds)
 233.194 +
 233.195 +# End Custom Build
 233.196 +
 233.197 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.198 +
 233.199 +USERDEP_bundle.h=
 233.200 +# PROP Ignore_Default_Tool 1
 233.201 +# Begin Custom Build - Running MOC on bundle.h
 233.202 +InputPath=bundle.h
 233.203 +BuildCmds=  \
 233.204 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_bundle.cpp
 233.205 +"release\moc_bundle.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.206 +	$(BuildCmds)
 233.207 +
 233.208 +# End Custom Build
 233.209 +
 233.210 +!ENDIF
 233.211 +# End Source File
 233.212 +
 233.213 +# Begin Source File
 233.214 +SOURCE=bundleManager.h
 233.215 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.216 +
 233.217 +USERDEP_bundleManager.h=
 233.218 +# PROP Ignore_Default_Tool 1
 233.219 +# Begin Custom Build - Running MOC on bundleManager.h
 233.220 +InputPath=bundleManager.h
 233.221 +BuildCmds=  \
 233.222 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_bundleManager.cpp
 233.223 +"debug\moc_bundleManager.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.224 +	$(BuildCmds)
 233.225 +
 233.226 +# End Custom Build
 233.227 +
 233.228 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.229 +
 233.230 +USERDEP_bundleManager.h=
 233.231 +# PROP Ignore_Default_Tool 1
 233.232 +# Begin Custom Build - Running MOC on bundleManager.h
 233.233 +InputPath=bundleManager.h
 233.234 +BuildCmds=  \
 233.235 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_bundleManager.cpp
 233.236 +"release\moc_bundleManager.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.237 +	$(BuildCmds)
 233.238 +
 233.239 +# End Custom Build
 233.240 +
 233.241 +!ENDIF
 233.242 +# End Source File
 233.243 +
 233.244 +# Begin Source File
 233.245 +SOURCE=connection.h
 233.246 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.247 +
 233.248 +USERDEP_connection.h=
 233.249 +# PROP Ignore_Default_Tool 1
 233.250 +# Begin Custom Build - Running MOC on connection.h
 233.251 +InputPath=connection.h
 233.252 +BuildCmds=  \
 233.253 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_connection.cpp
 233.254 +"debug\moc_connection.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.255 +	$(BuildCmds)
 233.256 +
 233.257 +# End Custom Build
 233.258 +
 233.259 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.260 +
 233.261 +USERDEP_connection.h=
 233.262 +# PROP Ignore_Default_Tool 1
 233.263 +# Begin Custom Build - Running MOC on connection.h
 233.264 +InputPath=connection.h
 233.265 +BuildCmds=  \
 233.266 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_connection.cpp
 233.267 +"release\moc_connection.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.268 +	$(BuildCmds)
 233.269 +
 233.270 +# End Custom Build
 233.271 +
 233.272 +!ENDIF
 233.273 +# End Source File
 233.274 +
 233.275 +# Begin Source File
 233.276 +SOURCE=dataPacket.h
 233.277 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.278 +
 233.279 +USERDEP_dataPacket.h=
 233.280 +# PROP Ignore_Default_Tool 1
 233.281 +# Begin Custom Build - Running MOC on dataPacket.h
 233.282 +InputPath=dataPacket.h
 233.283 +BuildCmds=  \
 233.284 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_dataPacket.cpp
 233.285 +"debug\moc_dataPacket.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.286 +	$(BuildCmds)
 233.287 +
 233.288 +# End Custom Build
 233.289 +
 233.290 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.291 +
 233.292 +USERDEP_dataPacket.h=
 233.293 +# PROP Ignore_Default_Tool 1
 233.294 +# Begin Custom Build - Running MOC on dataPacket.h
 233.295 +InputPath=dataPacket.h
 233.296 +BuildCmds=  \
 233.297 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_dataPacket.cpp
 233.298 +"release\moc_dataPacket.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.299 +	$(BuildCmds)
 233.300 +
 233.301 +# End Custom Build
 233.302 +
 233.303 +!ENDIF
 233.304 +# End Source File
 233.305 +
 233.306 +# Begin Source File
 233.307 +SOURCE=debugWidget.h
 233.308 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.309 +
 233.310 +USERDEP_debugWidget.h=
 233.311 +# PROP Ignore_Default_Tool 1
 233.312 +# Begin Custom Build - Running MOC on debugWidget.h
 233.313 +InputPath=debugWidget.h
 233.314 +BuildCmds=  \
 233.315 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_debugWidget.cpp
 233.316 +"debug\moc_debugWidget.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.317 +	$(BuildCmds)
 233.318 +
 233.319 +# End Custom Build
 233.320 +
 233.321 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.322 +
 233.323 +USERDEP_debugWidget.h=
 233.324 +# PROP Ignore_Default_Tool 1
 233.325 +# Begin Custom Build - Running MOC on debugWidget.h
 233.326 +InputPath=debugWidget.h
 233.327 +BuildCmds=  \
 233.328 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_debugWidget.cpp
 233.329 +"release\moc_debugWidget.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.330 +	$(BuildCmds)
 233.331 +
 233.332 +# End Custom Build
 233.333 +
 233.334 +!ENDIF
 233.335 +# End Source File
 233.336 +
 233.337 +# Begin Source File
 233.338 +SOURCE=hello.h
 233.339 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.340 +
 233.341 +USERDEP_hello.h=
 233.342 +# PROP Ignore_Default_Tool 1
 233.343 +# Begin Custom Build - Running MOC on hello.h
 233.344 +InputPath=hello.h
 233.345 +BuildCmds=  \
 233.346 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_hello.cpp
 233.347 +"debug\moc_hello.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.348 +	$(BuildCmds)
 233.349 +
 233.350 +# End Custom Build
 233.351 +
 233.352 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.353 +
 233.354 +USERDEP_hello.h=
 233.355 +# PROP Ignore_Default_Tool 1
 233.356 +# Begin Custom Build - Running MOC on hello.h
 233.357 +InputPath=hello.h
 233.358 +BuildCmds=  \
 233.359 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_hello.cpp
 233.360 +"release\moc_hello.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.361 +	$(BuildCmds)
 233.362 +
 233.363 +# End Custom Build
 233.364 +
 233.365 +!ENDIF
 233.366 +# End Source File
 233.367 +
 233.368 +# Begin Source File
 233.369 +SOURCE=main.h
 233.370 +# End Source File
 233.371 +
 233.372 +# Begin Source File
 233.373 +SOURCE=messageFile.h
 233.374 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.375 +
 233.376 +USERDEP_messageFile.h=
 233.377 +# PROP Ignore_Default_Tool 1
 233.378 +# Begin Custom Build - Running MOC on messageFile.h
 233.379 +InputPath=messageFile.h
 233.380 +BuildCmds=  \
 233.381 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_messageFile.cpp
 233.382 +"debug\moc_messageFile.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.383 +	$(BuildCmds)
 233.384 +
 233.385 +# End Custom Build
 233.386 +
 233.387 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.388 +
 233.389 +USERDEP_messageFile.h=
 233.390 +# PROP Ignore_Default_Tool 1
 233.391 +# Begin Custom Build - Running MOC on messageFile.h
 233.392 +InputPath=messageFile.h
 233.393 +BuildCmds=  \
 233.394 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_messageFile.cpp
 233.395 +"release\moc_messageFile.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.396 +	$(BuildCmds)
 233.397 +
 233.398 +# End Custom Build
 233.399 +
 233.400 +!ENDIF
 233.401 +# End Source File
 233.402 +
 233.403 +# Begin Source File
 233.404 +SOURCE=msgWidget.h
 233.405 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.406 +
 233.407 +USERDEP_msgWidget.h=
 233.408 +# PROP Ignore_Default_Tool 1
 233.409 +# Begin Custom Build - Running MOC on msgWidget.h
 233.410 +InputPath=msgWidget.h
 233.411 +BuildCmds=  \
 233.412 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_msgWidget.cpp
 233.413 +"debug\moc_msgWidget.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.414 +	$(BuildCmds)
 233.415 +
 233.416 +# End Custom Build
 233.417 +
 233.418 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.419 +
 233.420 +USERDEP_msgWidget.h=
 233.421 +# PROP Ignore_Default_Tool 1
 233.422 +# Begin Custom Build - Running MOC on msgWidget.h
 233.423 +InputPath=msgWidget.h
 233.424 +BuildCmds=  \
 233.425 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_msgWidget.cpp
 233.426 +"release\moc_msgWidget.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.427 +	$(BuildCmds)
 233.428 +
 233.429 +# End Custom Build
 233.430 +
 233.431 +!ENDIF
 233.432 +# End Source File
 233.433 +
 233.434 +# Begin Source File
 233.435 +SOURCE=neighbourAwareness.h
 233.436 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.437 +
 233.438 +USERDEP_neighbourAwareness.h=
 233.439 +# PROP Ignore_Default_Tool 1
 233.440 +# Begin Custom Build - Running MOC on neighbourAwareness.h
 233.441 +InputPath=neighbourAwareness.h
 233.442 +BuildCmds=  \
 233.443 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_neighbourAwareness.cpp
 233.444 +"debug\moc_neighbourAwareness.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.445 +	$(BuildCmds)
 233.446 +
 233.447 +# End Custom Build
 233.448 +
 233.449 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.450 +
 233.451 +USERDEP_neighbourAwareness.h=
 233.452 +# PROP Ignore_Default_Tool 1
 233.453 +# Begin Custom Build - Running MOC on neighbourAwareness.h
 233.454 +InputPath=neighbourAwareness.h
 233.455 +BuildCmds=  \
 233.456 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_neighbourAwareness.cpp
 233.457 +"release\moc_neighbourAwareness.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.458 +	$(BuildCmds)
 233.459 +
 233.460 +# End Custom Build
 233.461 +
 233.462 +!ENDIF
 233.463 +# End Source File
 233.464 +
 233.465 +# Begin Source File
 233.466 +SOURCE=node.h
 233.467 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.468 +
 233.469 +USERDEP_node.h=
 233.470 +# PROP Ignore_Default_Tool 1
 233.471 +# Begin Custom Build - Running MOC on node.h
 233.472 +InputPath=node.h
 233.473 +BuildCmds=  \
 233.474 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_node.cpp
 233.475 +"debug\moc_node.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.476 +	$(BuildCmds)
 233.477 +
 233.478 +# End Custom Build
 233.479 +
 233.480 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.481 +
 233.482 +USERDEP_node.h=
 233.483 +# PROP Ignore_Default_Tool 1
 233.484 +# Begin Custom Build - Running MOC on node.h
 233.485 +InputPath=node.h
 233.486 +BuildCmds=  \
 233.487 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_node.cpp
 233.488 +"release\moc_node.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.489 +	$(BuildCmds)
 233.490 +
 233.491 +# End Custom Build
 233.492 +
 233.493 +!ENDIF
 233.494 +# End Source File
 233.495 +
 233.496 +# Begin Source File
 233.497 +SOURCE=nodeManager.h
 233.498 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.499 +
 233.500 +USERDEP_nodeManager.h=
 233.501 +# PROP Ignore_Default_Tool 1
 233.502 +# Begin Custom Build - Running MOC on nodeManager.h
 233.503 +InputPath=nodeManager.h
 233.504 +BuildCmds=  \
 233.505 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_nodeManager.cpp
 233.506 +"debug\moc_nodeManager.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.507 +	$(BuildCmds)
 233.508 +
 233.509 +# End Custom Build
 233.510 +
 233.511 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.512 +
 233.513 +USERDEP_nodeManager.h=
 233.514 +# PROP Ignore_Default_Tool 1
 233.515 +# Begin Custom Build - Running MOC on nodeManager.h
 233.516 +InputPath=nodeManager.h
 233.517 +BuildCmds=  \
 233.518 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_nodeManager.cpp
 233.519 +"release\moc_nodeManager.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.520 +	$(BuildCmds)
 233.521 +
 233.522 +# End Custom Build
 233.523 +
 233.524 +!ENDIF
 233.525 +# End Source File
 233.526 +
 233.527 +# Begin Source File
 233.528 +SOURCE=readFile.h
 233.529 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.530 +
 233.531 +USERDEP_readFile.h=
 233.532 +# PROP Ignore_Default_Tool 1
 233.533 +# Begin Custom Build - Running MOC on readFile.h
 233.534 +InputPath=readFile.h
 233.535 +BuildCmds=  \
 233.536 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_readFile.cpp
 233.537 +"debug\moc_readFile.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.538 +	$(BuildCmds)
 233.539 +
 233.540 +# End Custom Build
 233.541 +
 233.542 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.543 +
 233.544 +USERDEP_readFile.h=
 233.545 +# PROP Ignore_Default_Tool 1
 233.546 +# Begin Custom Build - Running MOC on readFile.h
 233.547 +InputPath=readFile.h
 233.548 +BuildCmds=  \
 233.549 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_readFile.cpp
 233.550 +"release\moc_readFile.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.551 +	$(BuildCmds)
 233.552 +
 233.553 +# End Custom Build
 233.554 +
 233.555 +!ENDIF
 233.556 +# End Source File
 233.557 +
 233.558 +# Begin Source File
 233.559 +SOURCE=tcpClient.h
 233.560 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.561 +
 233.562 +USERDEP_tcpClient.h=
 233.563 +# PROP Ignore_Default_Tool 1
 233.564 +# Begin Custom Build - Running MOC on tcpClient.h
 233.565 +InputPath=tcpClient.h
 233.566 +BuildCmds=  \
 233.567 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_tcpClient.cpp
 233.568 +"debug\moc_tcpClient.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.569 +	$(BuildCmds)
 233.570 +
 233.571 +# End Custom Build
 233.572 +
 233.573 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.574 +
 233.575 +USERDEP_tcpClient.h=
 233.576 +# PROP Ignore_Default_Tool 1
 233.577 +# Begin Custom Build - Running MOC on tcpClient.h
 233.578 +InputPath=tcpClient.h
 233.579 +BuildCmds=  \
 233.580 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_tcpClient.cpp
 233.581 +"release\moc_tcpClient.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.582 +	$(BuildCmds)
 233.583 +
 233.584 +# End Custom Build
 233.585 +
 233.586 +!ENDIF
 233.587 +# End Source File
 233.588 +
 233.589 +# Begin Source File
 233.590 +SOURCE=tlv.h
 233.591 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.592 +
 233.593 +USERDEP_tlv.h=
 233.594 +# PROP Ignore_Default_Tool 1
 233.595 +# Begin Custom Build - Running MOC on tlv.h
 233.596 +InputPath=tlv.h
 233.597 +BuildCmds=  \
 233.598 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"debug" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o debug\moc_tlv.cpp
 233.599 +"debug\moc_tlv.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.600 +	$(BuildCmds)
 233.601 +
 233.602 +# End Custom Build
 233.603 +
 233.604 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.605 +
 233.606 +USERDEP_tlv.h=
 233.607 +# PROP Ignore_Default_Tool 1
 233.608 +# Begin Custom Build - Running MOC on tlv.h
 233.609 +InputPath=tlv.h
 233.610 +BuildCmds=  \
 233.611 +	C:\Qt\4.0.1\bin\moc.exe  -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_THREAD_SUPPORT -I"C:/Qt/4.0.1/include/QtNetwork" -I"C:/Qt/4.0.1/include/QtGui" -I"C:/Qt/4.0.1/include/QtCore" -I"C:/Qt/4.0.1/include" -I"." -I"C:/Qt/4.0.1/include/ActiveQt" -I"release" -I"." -I"C:/Qt/4.0.1/mkspecs/win32-msvc" -D_MSC_VER=1200 -DWIN32 $(InputPath) -o release\moc_tlv.cpp
 233.612 +"release\moc_tlv.cpp": $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
 233.613 +	$(BuildCmds)
 233.614 +
 233.615 +# End Custom Build
 233.616 +
 233.617 +!ENDIF
 233.618 +# End Source File
 233.619 +
 233.620 +# End Group
 233.621 +
 233.622 +# Begin Group "Generated"
 233.623 +# PROP Default_Filter ""
 233.624 +# Begin Source File
 233.625 +SOURCE=debug\moc_DTNInterface.cpp
 233.626 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.627 +
 233.628 +
 233.629 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.630 +
 233.631 +# PROP Exclude_From_Build 1
 233.632 +
 233.633 +!ENDIF
 233.634 +# End Source File
 233.635 +
 233.636 +# Begin Source File
 233.637 +SOURCE=debug\moc_bundle.cpp
 233.638 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.639 +
 233.640 +
 233.641 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.642 +
 233.643 +# PROP Exclude_From_Build 1
 233.644 +
 233.645 +!ENDIF
 233.646 +# End Source File
 233.647 +
 233.648 +# Begin Source File
 233.649 +SOURCE=debug\moc_bundleManager.cpp
 233.650 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.651 +
 233.652 +
 233.653 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.654 +
 233.655 +# PROP Exclude_From_Build 1
 233.656 +
 233.657 +!ENDIF
 233.658 +# End Source File
 233.659 +
 233.660 +# Begin Source File
 233.661 +SOURCE=debug\moc_connection.cpp
 233.662 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.663 +
 233.664 +
 233.665 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.666 +
 233.667 +# PROP Exclude_From_Build 1
 233.668 +
 233.669 +!ENDIF
 233.670 +# End Source File
 233.671 +
 233.672 +# Begin Source File
 233.673 +SOURCE=debug\moc_dataPacket.cpp
 233.674 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.675 +
 233.676 +
 233.677 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.678 +
 233.679 +# PROP Exclude_From_Build 1
 233.680 +
 233.681 +!ENDIF
 233.682 +# End Source File
 233.683 +
 233.684 +# Begin Source File
 233.685 +SOURCE=debug\moc_debugWidget.cpp
 233.686 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.687 +
 233.688 +
 233.689 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.690 +
 233.691 +# PROP Exclude_From_Build 1
 233.692 +
 233.693 +!ENDIF
 233.694 +# End Source File
 233.695 +
 233.696 +# Begin Source File
 233.697 +SOURCE=debug\moc_hello.cpp
 233.698 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.699 +
 233.700 +
 233.701 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.702 +
 233.703 +# PROP Exclude_From_Build 1
 233.704 +
 233.705 +!ENDIF
 233.706 +# End Source File
 233.707 +
 233.708 +# Begin Source File
 233.709 +SOURCE=debug\moc_messageFile.cpp
 233.710 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.711 +
 233.712 +
 233.713 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.714 +
 233.715 +# PROP Exclude_From_Build 1
 233.716 +
 233.717 +!ENDIF
 233.718 +# End Source File
 233.719 +
 233.720 +# Begin Source File
 233.721 +SOURCE=debug\moc_msgWidget.cpp
 233.722 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.723 +
 233.724 +
 233.725 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.726 +
 233.727 +# PROP Exclude_From_Build 1
 233.728 +
 233.729 +!ENDIF
 233.730 +# End Source File
 233.731 +
 233.732 +# Begin Source File
 233.733 +SOURCE=debug\moc_neighbourAwareness.cpp
 233.734 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.735 +
 233.736 +
 233.737 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.738 +
 233.739 +# PROP Exclude_From_Build 1
 233.740 +
 233.741 +!ENDIF
 233.742 +# End Source File
 233.743 +
 233.744 +# Begin Source File
 233.745 +SOURCE=debug\moc_node.cpp
 233.746 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.747 +
 233.748 +
 233.749 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.750 +
 233.751 +# PROP Exclude_From_Build 1
 233.752 +
 233.753 +!ENDIF
 233.754 +# End Source File
 233.755 +
 233.756 +# Begin Source File
 233.757 +SOURCE=debug\moc_nodeManager.cpp
 233.758 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.759 +
 233.760 +
 233.761 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.762 +
 233.763 +# PROP Exclude_From_Build 1
 233.764 +
 233.765 +!ENDIF
 233.766 +# End Source File
 233.767 +
 233.768 +# Begin Source File
 233.769 +SOURCE=debug\moc_readFile.cpp
 233.770 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.771 +
 233.772 +
 233.773 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.774 +
 233.775 +# PROP Exclude_From_Build 1
 233.776 +
 233.777 +!ENDIF
 233.778 +# End Source File
 233.779 +
 233.780 +# Begin Source File
 233.781 +SOURCE=debug\moc_tcpClient.cpp
 233.782 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.783 +
 233.784 +
 233.785 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.786 +
 233.787 +# PROP Exclude_From_Build 1
 233.788 +
 233.789 +!ENDIF
 233.790 +# End Source File
 233.791 +
 233.792 +# Begin Source File
 233.793 +SOURCE=debug\moc_tlv.cpp
 233.794 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.795 +
 233.796 +
 233.797 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.798 +
 233.799 +# PROP Exclude_From_Build 1
 233.800 +
 233.801 +!ENDIF
 233.802 +# End Source File
 233.803 +
 233.804 +# Begin Source File
 233.805 +SOURCE=release\moc_DTNInterface.cpp
 233.806 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.807 +
 233.808 +# PROP Exclude_From_Build 1
 233.809 +
 233.810 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.811 +
 233.812 +
 233.813 +!ENDIF
 233.814 +# End Source File
 233.815 +
 233.816 +# Begin Source File
 233.817 +SOURCE=release\moc_bundle.cpp
 233.818 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.819 +
 233.820 +# PROP Exclude_From_Build 1
 233.821 +
 233.822 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.823 +
 233.824 +
 233.825 +!ENDIF
 233.826 +# End Source File
 233.827 +
 233.828 +# Begin Source File
 233.829 +SOURCE=release\moc_bundleManager.cpp
 233.830 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.831 +
 233.832 +# PROP Exclude_From_Build 1
 233.833 +
 233.834 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.835 +
 233.836 +
 233.837 +!ENDIF
 233.838 +# End Source File
 233.839 +
 233.840 +# Begin Source File
 233.841 +SOURCE=release\moc_connection.cpp
 233.842 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.843 +
 233.844 +# PROP Exclude_From_Build 1
 233.845 +
 233.846 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.847 +
 233.848 +
 233.849 +!ENDIF
 233.850 +# End Source File
 233.851 +
 233.852 +# Begin Source File
 233.853 +SOURCE=release\moc_dataPacket.cpp
 233.854 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.855 +
 233.856 +# PROP Exclude_From_Build 1
 233.857 +
 233.858 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.859 +
 233.860 +
 233.861 +!ENDIF
 233.862 +# End Source File
 233.863 +
 233.864 +# Begin Source File
 233.865 +SOURCE=release\moc_debugWidget.cpp
 233.866 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.867 +
 233.868 +# PROP Exclude_From_Build 1
 233.869 +
 233.870 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.871 +
 233.872 +
 233.873 +!ENDIF
 233.874 +# End Source File
 233.875 +
 233.876 +# Begin Source File
 233.877 +SOURCE=release\moc_hello.cpp
 233.878 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.879 +
 233.880 +# PROP Exclude_From_Build 1
 233.881 +
 233.882 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.883 +
 233.884 +
 233.885 +!ENDIF
 233.886 +# End Source File
 233.887 +
 233.888 +# Begin Source File
 233.889 +SOURCE=release\moc_messageFile.cpp
 233.890 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.891 +
 233.892 +# PROP Exclude_From_Build 1
 233.893 +
 233.894 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.895 +
 233.896 +
 233.897 +!ENDIF
 233.898 +# End Source File
 233.899 +
 233.900 +# Begin Source File
 233.901 +SOURCE=release\moc_msgWidget.cpp
 233.902 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.903 +
 233.904 +# PROP Exclude_From_Build 1
 233.905 +
 233.906 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.907 +
 233.908 +
 233.909 +!ENDIF
 233.910 +# End Source File
 233.911 +
 233.912 +# Begin Source File
 233.913 +SOURCE=release\moc_neighbourAwareness.cpp
 233.914 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.915 +
 233.916 +# PROP Exclude_From_Build 1
 233.917 +
 233.918 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.919 +
 233.920 +
 233.921 +!ENDIF
 233.922 +# End Source File
 233.923 +
 233.924 +# Begin Source File
 233.925 +SOURCE=release\moc_node.cpp
 233.926 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.927 +
 233.928 +# PROP Exclude_From_Build 1
 233.929 +
 233.930 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.931 +
 233.932 +
 233.933 +!ENDIF
 233.934 +# End Source File
 233.935 +
 233.936 +# Begin Source File
 233.937 +SOURCE=release\moc_nodeManager.cpp
 233.938 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.939 +
 233.940 +# PROP Exclude_From_Build 1
 233.941 +
 233.942 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.943 +
 233.944 +
 233.945 +!ENDIF
 233.946 +# End Source File
 233.947 +
 233.948 +# Begin Source File
 233.949 +SOURCE=release\moc_readFile.cpp
 233.950 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.951 +
 233.952 +# PROP Exclude_From_Build 1
 233.953 +
 233.954 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.955 +
 233.956 +
 233.957 +!ENDIF
 233.958 +# End Source File
 233.959 +
 233.960 +# Begin Source File
 233.961 +SOURCE=release\moc_tcpClient.cpp
 233.962 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.963 +
 233.964 +# PROP Exclude_From_Build 1
 233.965 +
 233.966 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.967 +
 233.968 +
 233.969 +!ENDIF
 233.970 +# End Source File
 233.971 +
 233.972 +# Begin Source File
 233.973 +SOURCE=release\moc_tlv.cpp
 233.974 +!IF"$(CFG)" == "prophet - Win32 Debug"
 233.975 +
 233.976 +# PROP Exclude_From_Build 1
 233.977 +
 233.978 +!ELSEIF"$(CFG)" == "prophet - Win32 Release"
 233.979 +
 233.980 +
 233.981 +!ENDIF
 233.982 +# End Source File
 233.983 +
 233.984 +# End Group
 233.985 +
 233.986 +
 233.987 +# End Target
 233.988 +# End Project
   234.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   234.2 +++ b/x86/Win32/prophet.dsw	Thu Jun 26 17:39:40 2008 +0100
   234.3 @@ -0,0 +1,29 @@
   234.4 +Microsoft Developer Studio Workspace File, Format Version 6.00
   234.5 +# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
   234.6 +
   234.7 +###############################################################################
   234.8 +
   234.9 +Project: "prophet"=.\prophet.dsp - Package Owner=<4>
  234.10 +
  234.11 +Package=<5>
  234.12 +{{{
  234.13 +}}}
  234.14 +
  234.15 +Package=<4>
  234.16 +{{{
  234.17 +}}}
  234.18 +
  234.19 +###############################################################################
  234.20 +
  234.21 +Global:
  234.22 +
  234.23 +Package=<5>
  234.24 +{{{
  234.25 +}}}
  234.26 +
  234.27 +Package=<3>
  234.28 +{{{
  234.29 +}}}
  234.30 +
  234.31 +###############################################################################
  234.32 +
   235.1 Binary file x86/Win32/prophet.e__ has changed
   236.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   236.2 +++ b/x86/Win32/prophet.ini	Thu Jun 26 17:39:40 2008 +0100
   236.3 @@ -0,0 +1,30 @@
   236.4 +NODEID=44
   236.5 +NODENAME=samonote.dtn
   236.6 +NODEIP=192.168.10.44
   236.7 +NODEIP2=192.168.0.3
   236.8 +NODEBROADCAST=255.255.255.255
   236.9 +BROADCAST=1000
  236.10 +AGINGTIMER=60000
  236.11 +PENCOUNTER=0.75
  236.12 +BETA=0.25
  236.13 +GAMMA=0.9989
  236.14 +HELLO=10000
  236.15 +ALIVE=60
  236.16 +HELLOTIMER=60000
  236.17 +INITIATORTIMER=60000
  236.18 +LISTENERTIMER=60000
  236.19 +DTNHOSTNAME=193.77.152.156
  236.20 +DTNHOSTPORT=5050
  236.21 +DNTTIMER=5000
  236.22 +STORAGESIZE=10000000
  236.23 +ROUTING=0
  236.24 +QUEUE=0
  236.25 +CONTINIUSUPDATE=1
  236.26 +STORAGEPATH=c:\Samo\PRoPHET\exe\list\
  236.27 +LOGPATH=c:\Samo\PRoPHET\exe\log\
  236.28 +MSGPATH=c:\Samo\PRoPHET\exe\storage\
  236.29 +AGEFILENODES=1
  236.30 +USEFILENODES=1
  236.31 +WRITETOFILETIMER=10000
  236.32 +USEFILEBUNDLES=1
  236.33 +LOGING=1
   237.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   237.2 +++ b/x86/Win32/prophet.log	Thu Jun 26 17:39:40 2008 +0100
   237.3 @@ -0,0 +1,9583 @@
   237.4 +14/06/2006 12:48:23.078  000>> 91>>>>>>>>>>Complete!
   237.5 +14/06/2006 12:48:23.078  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29674
   237.6 +14/06/2006 12:48:23.078  000>> Good datagram received!
   237.7 +14/06/2006 12:48:23.078  000>> Receive Hello:ACK
   237.8 +14/06/2006 12:48:23.178  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
   237.9 +14/06/2006 12:48:23.178  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29247
  237.10 +14/06/2006 12:48:23.178  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29248
  237.11 +14/06/2006 12:48:23.178  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29249
  237.12 +14/06/2006 12:48:23.178  000>> 98>>>>>>>>>>Part datagram received!
  237.13 +14/06/2006 12:48:23.178  000>> 98>>>>>>>>>>Complete!
  237.14 +14/06/2006 12:48:23.178  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29675
  237.15 +14/06/2006 12:48:23.178  000>> Good datagram received!
  237.16 +14/06/2006 12:48:23.188  000>> Listener:Received dictionary
  237.17 +14/06/2006 12:48:23.188  000>> 90>>>>>>>>>>Part datagram received!
  237.18 +14/06/2006 12:48:23.188  000>> 90>>>>>>>>>>Complete!
  237.19 +14/06/2006 12:48:23.188  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29676
  237.20 +14/06/2006 12:48:23.188  000>> Good datagram received!
  237.21 +14/06/2006 12:48:23.188  000>> Listener:Received RIB
  237.22 +14/06/2006 12:48:23.318  000>> 716>>>>>>>>>>Part datagram received!
  237.23 +14/06/2006 12:48:23.318  000>> 716>>>>>>>>>>Complete!
  237.24 +14/06/2006 12:48:23.318  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29677
  237.25 +14/06/2006 12:48:23.318  000>> Good datagram received!
  237.26 +14/06/2006 12:48:23.338  000>> Listener:Received Bundle Offer
  237.27 +14/06/2006 12:48:23.338  000>> Listener:Sending Empty bundle request...
  237.28 +14/06/2006 12:48:23.338  000>> Listener(receiveBOffer):But we can not restart connection...
  237.29 +14/06/2006 12:48:23.338  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29250
  237.30 +14/06/2006 12:48:23.338  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29678
  237.31 +14/06/2006 12:48:23.338  000>> Good datagram received!
  237.32 +14/06/2006 12:48:23.338  000>> Initiator:No more requested bundles
  237.33 +14/06/2006 12:48:23.338  000>> Listener(receiveBundles):We can restart connection...
  237.34 +14/06/2006 12:48:23.438  000>> Hello Procedure:SENDSYN
  237.35 +14/06/2006 12:48:23.438  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29251
  237.36 +14/06/2006 12:48:23.528  000>> 91>>>>>>>>>>Part datagram received!
  237.37 +14/06/2006 12:48:23.528  000>> 91>>>>>>>>>>Complete!
  237.38 +14/06/2006 12:48:23.528  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29679
  237.39 +14/06/2006 12:48:23.528  000>> Good datagram received!
  237.40 +14/06/2006 12:48:23.528  000>> Receive Hello:SYNACK
  237.41 +14/06/2006 12:48:23.528  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29252
  237.42 +14/06/2006 12:48:23.628  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  237.43 +14/06/2006 12:48:23.628  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29253
  237.44 +14/06/2006 12:48:23.628  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29254
  237.45 +14/06/2006 12:48:23.628  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29255
  237.46 +14/06/2006 12:48:23.648  000>> 98>>>>>>>>>>Part datagram received!
  237.47 +14/06/2006 12:48:23.648  000>> 98>>>>>>>>>>Complete!
  237.48 +14/06/2006 12:48:23.648  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29680
  237.49 +14/06/2006 12:48:23.648  000>> Good datagram received!
  237.50 +14/06/2006 12:48:23.658  000>> Listener:Received dictionary
  237.51 +14/06/2006 12:48:23.658  000>> 90>>>>>>>>>>Part datagram received!
  237.52 +14/06/2006 12:48:23.658  000>> 90>>>>>>>>>>Complete!
  237.53 +14/06/2006 12:48:23.658  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29681
  237.54 +14/06/2006 12:48:23.658  000>> Good datagram received!
  237.55 +14/06/2006 12:48:23.658  000>> Listener:Received RIB
  237.56 +14/06/2006 12:48:23.819  000>> 716>>>>>>>>>>Part datagram received!
  237.57 +14/06/2006 12:48:23.819  000>> 716>>>>>>>>>>Complete!
  237.58 +14/06/2006 12:48:23.819  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29682
  237.59 +14/06/2006 12:48:23.819  000>> Good datagram received!
  237.60 +14/06/2006 12:48:23.839  000>> Listener:Received Bundle Offer
  237.61 +14/06/2006 12:48:23.839  000>> Listener:Sending Empty bundle request...
  237.62 +14/06/2006 12:48:23.839  000>> Listener(receiveBOffer):But we can not restart connection...
  237.63 +14/06/2006 12:48:23.839  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29256
  237.64 +14/06/2006 12:48:23.839  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29683
  237.65 +14/06/2006 12:48:23.839  000>> Good datagram received!
  237.66 +14/06/2006 12:48:23.839  000>> Initiator:No more requested bundles
  237.67 +14/06/2006 12:48:23.839  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
  237.68 +14/06/2006 12:48:24.049  000>> 91>>>>>>>>>>Part datagram received!
  237.69 +14/06/2006 12:48:24.049  000>> 91>>>>>>>>>>Complete!
  237.70 +14/06/2006 12:48:24.049  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29684
  237.71 +14/06/2006 12:48:24.049  000>> Good datagram received!
  237.72 +14/06/2006 12:48:24.059  000>> Receive Hello:SYN
  237.73 +14/06/2006 12:48:24.059  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29257
  237.74 +14/06/2006 12:48:24.079  000>> 91>>>>>>>>>>Part datagram received!
  237.75 +14/06/2006 12:48:24.079  000>> 91>>>>>>>>>>Complete!
  237.76 +14/06/2006 12:48:24.079  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29685
  237.77 +14/06/2006 12:48:24.079  000>> Good datagram received!
  237.78 +14/06/2006 12:48:24.079  000>> Receive Hello:ACK
  237.79 +14/06/2006 12:48:24.179  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
  237.80 +14/06/2006 12:48:24.179  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29258
  237.81 +14/06/2006 12:48:24.179  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29259
  237.82 +14/06/2006 12:48:24.179  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29260
  237.83 +14/06/2006 12:48:24.179  000>> 98>>>>>>>>>>Part datagram received!
  237.84 +14/06/2006 12:48:24.179  000>> 98>>>>>>>>>>Complete!
  237.85 +14/06/2006 12:48:24.179  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29686
  237.86 +14/06/2006 12:48:24.179  000>> Good datagram received!
  237.87 +14/06/2006 12:48:24.189  000>> Listener:Received dictionary
  237.88 +14/06/2006 12:48:24.189  000>> 90>>>>>>>>>>Part datagram received!
  237.89 +14/06/2006 12:48:24.189  000>> 90>>>>>>>>>>Complete!
  237.90 +14/06/2006 12:48:24.189  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29687
  237.91 +14/06/2006 12:48:24.189  000>> Good datagram received!
  237.92 +14/06/2006 12:48:24.189  000>> Listener:Received RIB
  237.93 +14/06/2006 12:48:24.319  000>> 716>>>>>>>>>>Part datagram received!
  237.94 +14/06/2006 12:48:24.319  000>> 716>>>>>>>>>>Complete!
  237.95 +14/06/2006 12:48:24.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29688
  237.96 +14/06/2006 12:48:24.319  000>> Good datagram received!
  237.97 +14/06/2006 12:48:24.339  000>> Listener:Received Bundle Offer
  237.98 +14/06/2006 12:48:24.339  000>> Listener:Sending Empty bundle request...
  237.99 +14/06/2006 12:48:24.339  000>> Listener(receiveBOffer):But we can not restart connection...
 237.100 +14/06/2006 12:48:24.339  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29261
 237.101 +14/06/2006 12:48:24.339  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29689
 237.102 +14/06/2006 12:48:24.339  000>> Good datagram received!
 237.103 +14/06/2006 12:48:24.349  000>> Initiator:No more requested bundles
 237.104 +14/06/2006 12:48:24.349  000>> Listener(receiveBundles):We can restart connection...
 237.105 +14/06/2006 12:48:24.450  000>> Hello Procedure:SENDSYN
 237.106 +14/06/2006 12:48:24.450  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29262
 237.107 +14/06/2006 12:48:24.550  000>> 91>>>>>>>>>>Part datagram received!
 237.108 +14/06/2006 12:48:24.550  000>> 91>>>>>>>>>>Complete!
 237.109 +14/06/2006 12:48:24.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29690
 237.110 +14/06/2006 12:48:24.560  000>> Good datagram received!
 237.111 +14/06/2006 12:48:24.560  000>> Receive Hello:SYNACK
 237.112 +14/06/2006 12:48:24.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29263
 237.113 +14/06/2006 12:48:24.660  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.114 +14/06/2006 12:48:24.660  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29264
 237.115 +14/06/2006 12:48:24.660  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29265
 237.116 +14/06/2006 12:48:24.660  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29266
 237.117 +14/06/2006 12:48:24.680  000>> 98>>>>>>>>>>Part datagram received!
 237.118 +14/06/2006 12:48:24.680  000>> 98>>>>>>>>>>Complete!
 237.119 +14/06/2006 12:48:24.690  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29691
 237.120 +14/06/2006 12:48:24.690  000>> Good datagram received!
 237.121 +14/06/2006 12:48:24.690  000>> Listener:Received dictionary
 237.122 +14/06/2006 12:48:24.690  000>> 90>>>>>>>>>>Part datagram received!
 237.123 +14/06/2006 12:48:24.690  000>> 90>>>>>>>>>>Complete!
 237.124 +14/06/2006 12:48:24.690  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29692
 237.125 +14/06/2006 12:48:24.690  000>> Good datagram received!
 237.126 +14/06/2006 12:48:24.690  000>> Listener:Received RIB
 237.127 +14/06/2006 12:48:24.820  000>> 716>>>>>>>>>>Part datagram received!
 237.128 +14/06/2006 12:48:24.820  000>> 716>>>>>>>>>>Complete!
 237.129 +14/06/2006 12:48:24.820  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29693
 237.130 +14/06/2006 12:48:24.820  000>> Good datagram received!
 237.131 +14/06/2006 12:48:24.840  000>> Listener:Received Bundle Offer
 237.132 +14/06/2006 12:48:24.840  000>> Listener:Sending Empty bundle request...
 237.133 +14/06/2006 12:48:24.840  000>> Listener(receiveBOffer):But we can not restart connection...
 237.134 +14/06/2006 12:48:24.840  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29267
 237.135 +14/06/2006 12:48:24.840  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29694
 237.136 +14/06/2006 12:48:24.840  000>> Good datagram received!
 237.137 +14/06/2006 12:48:24.840  000>> Initiator:No more requested bundles
 237.138 +14/06/2006 12:48:24.840  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 237.139 +14/06/2006 12:48:25.040  000>> 91>>>>>>>>>>Part datagram received!
 237.140 +14/06/2006 12:48:25.040  000>> 91>>>>>>>>>>Complete!
 237.141 +14/06/2006 12:48:25.040  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29695
 237.142 +14/06/2006 12:48:25.040  000>> Good datagram received!
 237.143 +14/06/2006 12:48:25.040  000>> Receive Hello:SYN
 237.144 +14/06/2006 12:48:25.050  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29268
 237.145 +14/06/2006 12:48:25.081  000>> 91>>>>>>>>>>Part datagram received!
 237.146 +14/06/2006 12:48:25.081  000>> 91>>>>>>>>>>Complete!
 237.147 +14/06/2006 12:48:25.081  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29696
 237.148 +14/06/2006 12:48:25.081  000>> Good datagram received!
 237.149 +14/06/2006 12:48:25.081  000>> Receive Hello:ACK
 237.150 +14/06/2006 12:48:25.181  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.151 +14/06/2006 12:48:25.181  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29269
 237.152 +14/06/2006 12:48:25.181  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29270
 237.153 +14/06/2006 12:48:25.181  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29271
 237.154 +14/06/2006 12:48:25.211  000>> 98>>>>>>>>>>Part datagram received!
 237.155 +14/06/2006 12:48:25.211  000>> 98>>>>>>>>>>Complete!
 237.156 +14/06/2006 12:48:25.211  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29697
 237.157 +14/06/2006 12:48:25.221  000>> Good datagram received!
 237.158 +14/06/2006 12:48:25.221  000>> Listener:Received dictionary
 237.159 +14/06/2006 12:48:25.221  000>> 90>>>>>>>>>>Part datagram received!
 237.160 +14/06/2006 12:48:25.221  000>> 90>>>>>>>>>>Complete!
 237.161 +14/06/2006 12:48:25.221  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29698
 237.162 +14/06/2006 12:48:25.221  000>> Good datagram received!
 237.163 +14/06/2006 12:48:25.221  000>> Listener:Received RIB
 237.164 +14/06/2006 12:48:25.341  000>> 716>>>>>>>>>>Part datagram received!
 237.165 +14/06/2006 12:48:25.341  000>> 716>>>>>>>>>>Complete!
 237.166 +14/06/2006 12:48:25.341  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29699
 237.167 +14/06/2006 12:48:25.341  000>> Good datagram received!
 237.168 +14/06/2006 12:48:25.361  000>> Listener:Received Bundle Offer
 237.169 +14/06/2006 12:48:25.361  000>> Listener:Sending Empty bundle request...
 237.170 +14/06/2006 12:48:25.361  000>> Listener(receiveBOffer):But we can not restart connection...
 237.171 +14/06/2006 12:48:25.361  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29272
 237.172 +14/06/2006 12:48:25.361  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29700
 237.173 +14/06/2006 12:48:25.361  000>> Good datagram received!
 237.174 +14/06/2006 12:48:25.361  000>> Initiator:No more requested bundles
 237.175 +14/06/2006 12:48:25.361  000>> Listener(receiveBundles):We can restart connection...
 237.176 +14/06/2006 12:48:25.461  000>> Hello Procedure:SENDSYN
 237.177 +14/06/2006 12:48:25.461  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29273
 237.178 +14/06/2006 12:48:25.541  000>> 91>>>>>>>>>>Part datagram received!
 237.179 +14/06/2006 12:48:25.541  000>> 91>>>>>>>>>>Complete!
 237.180 +14/06/2006 12:48:25.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29701
 237.181 +14/06/2006 12:48:25.541  000>> Good datagram received!
 237.182 +14/06/2006 12:48:25.541  000>> Receive Hello:SYNACK
 237.183 +14/06/2006 12:48:25.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29274
 237.184 +14/06/2006 12:48:25.641  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.185 +14/06/2006 12:48:25.641  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29275
 237.186 +14/06/2006 12:48:25.641  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29276
 237.187 +14/06/2006 12:48:25.641  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29277
 237.188 +14/06/2006 12:48:25.661  000>> 98>>>>>>>>>>Part datagram received!
 237.189 +14/06/2006 12:48:25.661  000>> 98>>>>>>>>>>Complete!
 237.190 +14/06/2006 12:48:25.661  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29702
 237.191 +14/06/2006 12:48:25.661  000>> Good datagram received!
 237.192 +14/06/2006 12:48:25.671  000>> Listener:Received dictionary
 237.193 +14/06/2006 12:48:25.671  000>> 90>>>>>>>>>>Part datagram received!
 237.194 +14/06/2006 12:48:25.671  000>> 90>>>>>>>>>>Complete!
 237.195 +14/06/2006 12:48:25.671  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29703
 237.196 +14/06/2006 12:48:25.671  000>> Good datagram received!
 237.197 +14/06/2006 12:48:25.671  000>> Listener:Received RIB
 237.198 +14/06/2006 12:48:25.832  000>> 716>>>>>>>>>>Part datagram received!
 237.199 +14/06/2006 12:48:25.832  000>> 716>>>>>>>>>>Complete!
 237.200 +14/06/2006 12:48:25.832  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29704
 237.201 +14/06/2006 12:48:25.832  000>> Good datagram received!
 237.202 +14/06/2006 12:48:25.842  000>> Listener:Received Bundle Offer
 237.203 +14/06/2006 12:48:25.842  000>> Listener:Sending Empty bundle request...
 237.204 +14/06/2006 12:48:25.842  000>> Listener(receiveBOffer):But we can not restart connection...
 237.205 +14/06/2006 12:48:25.842  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29278
 237.206 +14/06/2006 12:48:25.852  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29705
 237.207 +14/06/2006 12:48:25.852  000>> Good datagram received!
 237.208 +14/06/2006 12:48:25.852  000>> Initiator:No more requested bundles
 237.209 +14/06/2006 12:48:25.852  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 237.210 +14/06/2006 12:48:26.072  000>> 91>>>>>>>>>>Part datagram received!
 237.211 +14/06/2006 12:48:26.072  000>> 91>>>>>>>>>>Complete!
 237.212 +14/06/2006 12:48:26.072  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29706
 237.213 +14/06/2006 12:48:26.072  000>> Good datagram received!
 237.214 +14/06/2006 12:48:26.072  000>> Receive Hello:SYN
 237.215 +14/06/2006 12:48:26.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29279
 237.216 +14/06/2006 12:48:26.112  000>> 91>>>>>>>>>>Part datagram received!
 237.217 +14/06/2006 12:48:26.112  000>> 91>>>>>>>>>>Complete!
 237.218 +14/06/2006 12:48:26.112  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29707
 237.219 +14/06/2006 12:48:26.112  000>> Good datagram received!
 237.220 +14/06/2006 12:48:26.112  000>> Receive Hello:ACK
 237.221 +14/06/2006 12:48:26.212  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.222 +14/06/2006 12:48:26.212  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29280
 237.223 +14/06/2006 12:48:26.212  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29281
 237.224 +14/06/2006 12:48:26.212  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29282
 237.225 +14/06/2006 12:48:26.212  000>> 98>>>>>>>>>>Part datagram received!
 237.226 +14/06/2006 12:48:26.212  000>> 98>>>>>>>>>>Complete!
 237.227 +14/06/2006 12:48:26.212  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29708
 237.228 +14/06/2006 12:48:26.222  000>> Good datagram received!
 237.229 +14/06/2006 12:48:26.222  000>> Listener:Received dictionary
 237.230 +14/06/2006 12:48:26.232  000>> 90>>>>>>>>>>Part datagram received!
 237.231 +14/06/2006 12:48:26.232  000>> 90>>>>>>>>>>Complete!
 237.232 +14/06/2006 12:48:26.232  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29709
 237.233 +14/06/2006 12:48:26.242  000>> Good datagram received!
 237.234 +14/06/2006 12:48:26.242  000>> Listener:Received RIB
 237.235 +14/06/2006 12:48:26.432  000>> 716>>>>>>>>>>Part datagram received!
 237.236 +14/06/2006 12:48:26.432  000>> 716>>>>>>>>>>Complete!
 237.237 +14/06/2006 12:48:26.432  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29710
 237.238 +14/06/2006 12:48:26.432  000>> Good datagram received!
 237.239 +14/06/2006 12:48:26.442  000>> Listener:Received Bundle Offer
 237.240 +14/06/2006 12:48:26.442  000>> Listener:Sending Empty bundle request...
 237.241 +14/06/2006 12:48:26.442  000>> Listener(receiveBOffer):But we can not restart connection...
 237.242 +14/06/2006 12:48:26.442  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29283
 237.243 +14/06/2006 12:48:26.442  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29711
 237.244 +14/06/2006 12:48:26.453  000>> Good datagram received!
 237.245 +14/06/2006 12:48:26.453  000>> Initiator:No more requested bundles
 237.246 +14/06/2006 12:48:26.453  000>> Listener(receiveBundles):We can restart connection...
 237.247 +14/06/2006 12:48:26.553  000>> Hello Procedure:SENDSYN
 237.248 +14/06/2006 12:48:26.553  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29284
 237.249 +14/06/2006 12:48:26.653  000>> 91>>>>>>>>>>Part datagram received!
 237.250 +14/06/2006 12:48:26.653  000>> 91>>>>>>>>>>Complete!
 237.251 +14/06/2006 12:48:26.653  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29712
 237.252 +14/06/2006 12:48:26.653  000>> Good datagram received!
 237.253 +14/06/2006 12:48:26.653  000>> Receive Hello:SYNACK
 237.254 +14/06/2006 12:48:26.653  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29285
 237.255 +14/06/2006 12:48:26.753  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.256 +14/06/2006 12:48:26.753  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29286
 237.257 +14/06/2006 12:48:26.753  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29287
 237.258 +14/06/2006 12:48:26.753  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29288
 237.259 +14/06/2006 12:48:26.773  000>> 98>>>>>>>>>>Part datagram received!
 237.260 +14/06/2006 12:48:26.783  000>> 98>>>>>>>>>>Complete!
 237.261 +14/06/2006 12:48:26.783  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29713
 237.262 +14/06/2006 12:48:26.783  000>> Good datagram received!
 237.263 +14/06/2006 12:48:26.783  000>> Listener:Received dictionary
 237.264 +14/06/2006 12:48:26.783  000>> 90>>>>>>>>>>Part datagram received!
 237.265 +14/06/2006 12:48:26.783  000>> 90>>>>>>>>>>Complete!
 237.266 +14/06/2006 12:48:26.783  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29714
 237.267 +14/06/2006 12:48:26.783  000>> Good datagram received!
 237.268 +14/06/2006 12:48:26.783  000>> Listener:Received RIB
 237.269 +14/06/2006 12:48:26.933  000>> 716>>>>>>>>>>Part datagram received!
 237.270 +14/06/2006 12:48:26.933  000>> 716>>>>>>>>>>Complete!
 237.271 +14/06/2006 12:48:26.933  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29715
 237.272 +14/06/2006 12:48:26.933  000>> Good datagram received!
 237.273 +14/06/2006 12:48:26.943  000>> Listener:Received Bundle Offer
 237.274 +14/06/2006 12:48:26.943  000>> Listener:Sending Empty bundle request...
 237.275 +14/06/2006 12:48:26.943  000>> Listener(receiveBOffer):But we can not restart connection...
 237.276 +14/06/2006 12:48:26.953  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29289
 237.277 +14/06/2006 12:48:26.953  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29716
 237.278 +14/06/2006 12:48:26.953  000>> Good datagram received!
 237.279 +14/06/2006 12:48:26.953  000>> Initiator:No more requested bundles
 237.280 +14/06/2006 12:48:26.953  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 237.281 +14/06/2006 12:48:27.073  000>> 91>>>>>>>>>>Part datagram received!
 237.282 +14/06/2006 12:48:27.073  000>> 91>>>>>>>>>>Complete!
 237.283 +14/06/2006 12:48:27.073  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29717
 237.284 +14/06/2006 12:48:27.073  000>> Good datagram received!
 237.285 +14/06/2006 12:48:27.083  000>> Receive Hello:SYN
 237.286 +14/06/2006 12:48:27.083  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29290
 237.287 +14/06/2006 12:48:27.103  000>> 91>>>>>>>>>>Part datagram received!
 237.288 +14/06/2006 12:48:27.103  000>> 91>>>>>>>>>>Complete!
 237.289 +14/06/2006 12:48:27.103  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29718
 237.290 +14/06/2006 12:48:27.103  000>> Good datagram received!
 237.291 +14/06/2006 12:48:27.103  000>> Receive Hello:ACK
 237.292 +14/06/2006 12:48:27.204  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.293 +14/06/2006 12:48:27.204  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29291
 237.294 +14/06/2006 12:48:27.204  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29292
 237.295 +14/06/2006 12:48:27.204  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29293
 237.296 +14/06/2006 12:48:27.204  000>> 98>>>>>>>>>>Part datagram received!
 237.297 +14/06/2006 12:48:27.204  000>> 98>>>>>>>>>>Complete!
 237.298 +14/06/2006 12:48:27.204  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29719
 237.299 +14/06/2006 12:48:27.204  000>> Good datagram received!
 237.300 +14/06/2006 12:48:27.214  000>> Listener:Received dictionary
 237.301 +14/06/2006 12:48:27.214  000>> 90>>>>>>>>>>Part datagram received!
 237.302 +14/06/2006 12:48:27.214  000>> 90>>>>>>>>>>Complete!
 237.303 +14/06/2006 12:48:27.214  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29720
 237.304 +14/06/2006 12:48:27.214  000>> Good datagram received!
 237.305 +14/06/2006 12:48:27.214  000>> Listener:Received RIB
 237.306 +14/06/2006 12:48:27.334  000>> 716>>>>>>>>>>Part datagram received!
 237.307 +14/06/2006 12:48:27.334  000>> 716>>>>>>>>>>Complete!
 237.308 +14/06/2006 12:48:27.334  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29721
 237.309 +14/06/2006 12:48:27.334  000>> Good datagram received!
 237.310 +14/06/2006 12:48:27.354  000>> Listener:Received Bundle Offer
 237.311 +14/06/2006 12:48:27.354  000>> Listener:Sending Empty bundle request...
 237.312 +14/06/2006 12:48:27.354  000>> Listener(receiveBOffer):But we can not restart connection...
 237.313 +14/06/2006 12:48:27.354  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29294
 237.314 +14/06/2006 12:48:27.354  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29722
 237.315 +14/06/2006 12:48:27.354  000>> Good datagram received!
 237.316 +14/06/2006 12:48:27.354  000>> Initiator:No more requested bundles
 237.317 +14/06/2006 12:48:27.354  000>> Listener(receiveBundles):We can restart connection...
 237.318 +14/06/2006 12:48:27.454  000>> Hello Procedure:SENDSYN
 237.319 +14/06/2006 12:48:27.454  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29295
 237.320 +14/06/2006 12:48:27.554  000>> 91>>>>>>>>>>Part datagram received!
 237.321 +14/06/2006 12:48:27.554  000>> 91>>>>>>>>>>Complete!
 237.322 +14/06/2006 12:48:27.554  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29723
 237.323 +14/06/2006 12:48:27.554  000>> Good datagram received!
 237.324 +14/06/2006 12:48:27.554  000>> Receive Hello:SYNACK
 237.325 +14/06/2006 12:48:27.554  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29296
 237.326 +14/06/2006 12:48:27.654  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.327 +14/06/2006 12:48:27.654  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29297
 237.328 +14/06/2006 12:48:27.654  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29298
 237.329 +14/06/2006 12:48:27.654  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29299
 237.330 +14/06/2006 12:48:27.674  000>> 98>>>>>>>>>>Part datagram received!
 237.331 +14/06/2006 12:48:27.674  000>> 98>>>>>>>>>>Complete!
 237.332 +14/06/2006 12:48:27.674  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29724
 237.333 +14/06/2006 12:48:27.674  000>> Good datagram received!
 237.334 +14/06/2006 12:48:27.674  000>> Listener:Received dictionary
 237.335 +14/06/2006 12:48:27.684  000>> 90>>>>>>>>>>Part datagram received!
 237.336 +14/06/2006 12:48:27.684  000>> 90>>>>>>>>>>Complete!
 237.337 +14/06/2006 12:48:27.684  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29725
 237.338 +14/06/2006 12:48:27.684  000>> Good datagram received!
 237.339 +14/06/2006 12:48:27.684  000>> Listener:Received RIB
 237.340 +14/06/2006 12:48:27.834  000>> 716>>>>>>>>>>Part datagram received!
 237.341 +14/06/2006 12:48:27.834  000>> 716>>>>>>>>>>Complete!
 237.342 +14/06/2006 12:48:27.834  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29726
 237.343 +14/06/2006 12:48:27.834  000>> Good datagram received!
 237.344 +14/06/2006 12:48:27.855  000>> Listener:Received Bundle Offer
 237.345 +14/06/2006 12:48:27.855  000>> Listener:Sending Empty bundle request...
 237.346 +14/06/2006 12:48:27.855  000>> Listener(receiveBOffer):But we can not restart connection...
 237.347 +14/06/2006 12:48:27.855  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29300
 237.348 +14/06/2006 12:48:27.855  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29727
 237.349 +14/06/2006 12:48:27.855  000>> Good datagram received!
 237.350 +14/06/2006 12:48:27.855  000>> Initiator:No more requested bundles
 237.351 +14/06/2006 12:48:27.855  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 237.352 +14/06/2006 12:48:28.065  000>> 91>>>>>>>>>>Part datagram received!
 237.353 +14/06/2006 12:48:28.065  000>> 91>>>>>>>>>>Complete!
 237.354 +14/06/2006 12:48:28.065  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29728
 237.355 +14/06/2006 12:48:28.065  000>> Good datagram received!
 237.356 +14/06/2006 12:48:28.065  000>> Receive Hello:SYN
 237.357 +14/06/2006 12:48:28.065  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29301
 237.358 +14/06/2006 12:48:28.085  000>> 91>>>>>>>>>>Part datagram received!
 237.359 +14/06/2006 12:48:28.085  000>> 91>>>>>>>>>>Complete!
 237.360 +14/06/2006 12:48:28.085  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29729
 237.361 +14/06/2006 12:48:28.085  000>> Good datagram received!
 237.362 +14/06/2006 12:48:28.085  000>> Receive Hello:ACK
 237.363 +14/06/2006 12:48:28.185  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.364 +14/06/2006 12:48:28.185  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29302
 237.365 +14/06/2006 12:48:28.185  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29303
 237.366 +14/06/2006 12:48:28.185  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29304
 237.367 +14/06/2006 12:48:28.185  000>> 98>>>>>>>>>>Part datagram received!
 237.368 +14/06/2006 12:48:28.185  000>> 98>>>>>>>>>>Complete!
 237.369 +14/06/2006 12:48:28.185  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29730
 237.370 +14/06/2006 12:48:28.195  000>> Good datagram received!
 237.371 +14/06/2006 12:48:28.195  000>> Listener:Received dictionary
 237.372 +14/06/2006 12:48:28.205  000>> 90>>>>>>>>>>Part datagram received!
 237.373 +14/06/2006 12:48:28.205  000>> 90>>>>>>>>>>Complete!
 237.374 +14/06/2006 12:48:28.205  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29731
 237.375 +14/06/2006 12:48:28.205  000>> Good datagram received!
 237.376 +14/06/2006 12:48:28.205  000>> Listener:Received RIB
 237.377 +14/06/2006 12:48:28.335  000>> 716>>>>>>>>>>Part datagram received!
 237.378 +14/06/2006 12:48:28.335  000>> 716>>>>>>>>>>Complete!
 237.379 +14/06/2006 12:48:28.335  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29732
 237.380 +14/06/2006 12:48:28.335  000>> Good datagram received!
 237.381 +14/06/2006 12:48:28.345  000>> Listener:Received Bundle Offer
 237.382 +14/06/2006 12:48:28.355  000>> Listener:Sending Empty bundle request...
 237.383 +14/06/2006 12:48:28.355  000>> Listener(receiveBOffer):But we can not restart connection...
 237.384 +14/06/2006 12:48:28.355  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29305
 237.385 +14/06/2006 12:48:28.355  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29733
 237.386 +14/06/2006 12:48:28.355  000>> Good datagram received!
 237.387 +14/06/2006 12:48:28.355  000>> Initiator:No more requested bundles
 237.388 +14/06/2006 12:48:28.355  000>> Listener(receiveBundles):We can restart connection...
 237.389 +14/06/2006 12:48:28.455  000>> Hello Procedure:SENDSYN
 237.390 +14/06/2006 12:48:28.455  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29306
 237.391 +14/06/2006 12:48:28.546  000>> 91>>>>>>>>>>Part datagram received!
 237.392 +14/06/2006 12:48:28.546  000>> 91>>>>>>>>>>Complete!
 237.393 +14/06/2006 12:48:28.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29734
 237.394 +14/06/2006 12:48:28.546  000>> Good datagram received!
 237.395 +14/06/2006 12:48:28.546  000>> Receive Hello:SYNACK
 237.396 +14/06/2006 12:48:28.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29307
 237.397 +14/06/2006 12:48:28.646  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.398 +14/06/2006 12:48:28.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29308
 237.399 +14/06/2006 12:48:28.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29309
 237.400 +14/06/2006 12:48:28.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29310
 237.401 +14/06/2006 12:48:28.686  000>> 98>>>>>>>>>>Part datagram received!
 237.402 +14/06/2006 12:48:28.686  000>> 98>>>>>>>>>>Complete!
 237.403 +14/06/2006 12:48:28.686  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29735
 237.404 +14/06/2006 12:48:28.686  000>> Good datagram received!
 237.405 +14/06/2006 12:48:28.686  000>> Listener:Received dictionary
 237.406 +14/06/2006 12:48:28.716  000>> 90>>>>>>>>>>Part datagram received!
 237.407 +14/06/2006 12:48:28.716  000>> 90>>>>>>>>>>Complete!
 237.408 +14/06/2006 12:48:28.716  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29736
 237.409 +14/06/2006 12:48:28.716  000>> Good datagram received!
 237.410 +14/06/2006 12:48:28.716  000>> Listener:Received RIB
 237.411 +14/06/2006 12:48:28.836  000>> 716>>>>>>>>>>Part datagram received!
 237.412 +14/06/2006 12:48:28.836  000>> 716>>>>>>>>>>Complete!
 237.413 +14/06/2006 12:48:28.836  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29737
 237.414 +14/06/2006 12:48:28.836  000>> Good datagram received!
 237.415 +14/06/2006 12:48:28.856  000>> Listener:Received Bundle Offer
 237.416 +14/06/2006 12:48:28.856  000>> Listener:Sending Empty bundle request...
 237.417 +14/06/2006 12:48:28.856  000>> Listener(receiveBOffer):But we can not restart connection...
 237.418 +14/06/2006 12:48:28.856  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29311
 237.419 +14/06/2006 12:48:28.856  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29738
 237.420 +14/06/2006 12:48:28.856  000>> Good datagram received!
 237.421 +14/06/2006 12:48:28.856  000>> Initiator:No more requested bundles
 237.422 +14/06/2006 12:48:28.856  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 237.423 +14/06/2006 12:48:29.106  000>> 91>>>>>>>>>>Part datagram received!
 237.424 +14/06/2006 12:48:29.106  000>> 91>>>>>>>>>>Complete!
 237.425 +14/06/2006 12:48:29.106  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29739
 237.426 +14/06/2006 12:48:29.106  000>> Good datagram received!
 237.427 +14/06/2006 12:48:29.106  000>> Receive Hello:SYN
 237.428 +14/06/2006 12:48:29.106  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29312
 237.429 +14/06/2006 12:48:29.126  000>> 91>>>>>>>>>>Part datagram received!
 237.430 +14/06/2006 12:48:29.126  000>> 91>>>>>>>>>>Complete!
 237.431 +14/06/2006 12:48:29.126  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29740
 237.432 +14/06/2006 12:48:29.126  000>> Good datagram received!
 237.433 +14/06/2006 12:48:29.126  000>> Receive Hello:ACK
 237.434 +14/06/2006 12:48:29.226  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.435 +14/06/2006 12:48:29.226  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29313
 237.436 +14/06/2006 12:48:29.226  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29314
 237.437 +14/06/2006 12:48:29.226  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29315
 237.438 +14/06/2006 12:48:29.226  000>> 98>>>>>>>>>>Part datagram received!
 237.439 +14/06/2006 12:48:29.226  000>> 98>>>>>>>>>>Complete!
 237.440 +14/06/2006 12:48:29.237  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29741
 237.441 +14/06/2006 12:48:29.237  000>> Good datagram received!
 237.442 +14/06/2006 12:48:29.237  000>> Listener:Received dictionary
 237.443 +14/06/2006 12:48:29.247  000>> 90>>>>>>>>>>Part datagram received!
 237.444 +14/06/2006 12:48:29.247  000>> 90>>>>>>>>>>Complete!
 237.445 +14/06/2006 12:48:29.247  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29742
 237.446 +14/06/2006 12:48:29.247  000>> Good datagram received!
 237.447 +14/06/2006 12:48:29.247  000>> Listener:Received RIB
 237.448 +14/06/2006 12:48:29.437  000>> 716>>>>>>>>>>Part datagram received!
 237.449 +14/06/2006 12:48:29.437  000>> 716>>>>>>>>>>Complete!
 237.450 +14/06/2006 12:48:29.437  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29743
 237.451 +14/06/2006 12:48:29.437  000>> Good datagram received!
 237.452 +14/06/2006 12:48:29.457  000>> Listener:Received Bundle Offer
 237.453 +14/06/2006 12:48:29.457  000>> Listener:Sending Empty bundle request...
 237.454 +14/06/2006 12:48:29.457  000>> Listener(receiveBOffer):But we can not restart connection...
 237.455 +14/06/2006 12:48:29.457  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29316
 237.456 +14/06/2006 12:48:29.457  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29744
 237.457 +14/06/2006 12:48:29.457  000>> Good datagram received!
 237.458 +14/06/2006 12:48:29.457  000>> Initiator:No more requested bundles
 237.459 +14/06/2006 12:48:29.457  000>> Listener(receiveBundles):We can restart connection...
 237.460 +14/06/2006 12:48:29.557  000>> Hello Procedure:SENDSYN
 237.461 +14/06/2006 12:48:29.557  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29317
 237.462 +14/06/2006 12:48:29.647  000>> 91>>>>>>>>>>Part datagram received!
 237.463 +14/06/2006 12:48:29.647  000>> 91>>>>>>>>>>Complete!
 237.464 +14/06/2006 12:48:29.647  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29745
 237.465 +14/06/2006 12:48:29.647  000>> Good datagram received!
 237.466 +14/06/2006 12:48:29.647  000>> Receive Hello:SYNACK
 237.467 +14/06/2006 12:48:29.657  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29318
 237.468 +14/06/2006 12:48:29.757  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.469 +14/06/2006 12:48:29.757  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29319
 237.470 +14/06/2006 12:48:29.757  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29320
 237.471 +14/06/2006 12:48:29.757  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29321
 237.472 +14/06/2006 12:48:29.777  000>> 98>>>>>>>>>>Part datagram received!
 237.473 +14/06/2006 12:48:29.777  000>> 98>>>>>>>>>>Complete!
 237.474 +14/06/2006 12:48:29.777  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29746
 237.475 +14/06/2006 12:48:29.787  000>> Good datagram received!
 237.476 +14/06/2006 12:48:29.787  000>> Listener:Received dictionary
 237.477 +14/06/2006 12:48:29.787  000>> 90>>>>>>>>>>Part datagram received!
 237.478 +14/06/2006 12:48:29.787  000>> 90>>>>>>>>>>Complete!
 237.479 +14/06/2006 12:48:29.787  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29747
 237.480 +14/06/2006 12:48:29.787  000>> Good datagram received!
 237.481 +14/06/2006 12:48:29.787  000>> Listener:Received RIB
 237.482 +14/06/2006 12:48:29.938  000>> 716>>>>>>>>>>Part datagram received!
 237.483 +14/06/2006 12:48:29.938  000>> 716>>>>>>>>>>Complete!
 237.484 +14/06/2006 12:48:29.938  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29748
 237.485 +14/06/2006 12:48:29.938  000>> Good datagram received!
 237.486 +14/06/2006 12:48:29.958  000>> Listener:Received Bundle Offer
 237.487 +14/06/2006 12:48:29.958  000>> Listener:Sending Empty bundle request...
 237.488 +14/06/2006 12:48:29.958  000>> Listener(receiveBOffer):But we can not restart connection...
 237.489 +14/06/2006 12:48:29.958  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29322
 237.490 +14/06/2006 12:48:29.958  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29749
 237.491 +14/06/2006 12:48:29.958  000>> Good datagram received!
 237.492 +14/06/2006 12:48:29.958  000>> Initiator:No more requested bundles
 237.493 +14/06/2006 12:48:29.958  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 237.494 +14/06/2006 12:48:30.088  000>> 91>>>>>>>>>>Part datagram received!
 237.495 +14/06/2006 12:48:30.088  000>> 91>>>>>>>>>>Complete!
 237.496 +14/06/2006 12:48:30.088  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29750
 237.497 +14/06/2006 12:48:30.088  000>> Good datagram received!
 237.498 +14/06/2006 12:48:30.088  000>> Receive Hello:SYN
 237.499 +14/06/2006 12:48:30.088  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29323
 237.500 +14/06/2006 12:48:30.118  000>> 91>>>>>>>>>>Part datagram received!
 237.501 +14/06/2006 12:48:30.118  000>> 91>>>>>>>>>>Complete!
 237.502 +14/06/2006 12:48:30.118  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29751
 237.503 +14/06/2006 12:48:30.118  000>> Good datagram received!
 237.504 +14/06/2006 12:48:30.118  000>> Receive Hello:ACK
 237.505 +14/06/2006 12:48:30.218  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.506 +14/06/2006 12:48:30.218  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29324
 237.507 +14/06/2006 12:48:30.218  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29325
 237.508 +14/06/2006 12:48:30.218  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29326
 237.509 +14/06/2006 12:48:30.218  000>> 98>>>>>>>>>>Part datagram received!
 237.510 +14/06/2006 12:48:30.218  000>> 98>>>>>>>>>>Complete!
 237.511 +14/06/2006 12:48:30.218  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29752
 237.512 +14/06/2006 12:48:30.228  000>> Good datagram received!
 237.513 +14/06/2006 12:48:30.228  000>> Listener:Received dictionary
 237.514 +14/06/2006 12:48:30.228  000>> 90>>>>>>>>>>Part datagram received!
 237.515 +14/06/2006 12:48:30.228  000>> 90>>>>>>>>>>Complete!
 237.516 +14/06/2006 12:48:30.228  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29753
 237.517 +14/06/2006 12:48:30.228  000>> Good datagram received!
 237.518 +14/06/2006 12:48:30.228  000>> Listener:Received RIB
 237.519 +14/06/2006 12:48:30.348  000>> 716>>>>>>>>>>Part datagram received!
 237.520 +14/06/2006 12:48:30.348  000>> 716>>>>>>>>>>Complete!
 237.521 +14/06/2006 12:48:30.358  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29754
 237.522 +14/06/2006 12:48:30.358  000>> Good datagram received!
 237.523 +14/06/2006 12:48:30.368  000>> Listener:Received Bundle Offer
 237.524 +14/06/2006 12:48:30.368  000>> Listener:Sending Empty bundle request...
 237.525 +14/06/2006 12:48:30.368  000>> Listener(receiveBOffer):But we can not restart connection...
 237.526 +14/06/2006 12:48:30.368  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29327
 237.527 +14/06/2006 12:48:30.368  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29755
 237.528 +14/06/2006 12:48:30.368  000>> Good datagram received!
 237.529 +14/06/2006 12:48:30.368  000>> Initiator:No more requested bundles
 237.530 +14/06/2006 12:48:30.378  000>> Listener(receiveBundles):We can restart connection...
 237.531 +14/06/2006 12:48:30.478  000>> Hello Procedure:SENDSYN
 237.532 +14/06/2006 12:48:30.478  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29328
 237.533 +14/06/2006 12:48:30.548  000>> 91>>>>>>>>>>Part datagram received!
 237.534 +14/06/2006 12:48:30.548  000>> 91>>>>>>>>>>Complete!
 237.535 +14/06/2006 12:48:30.548  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29756
 237.536 +14/06/2006 12:48:30.548  000>> Good datagram received!
 237.537 +14/06/2006 12:48:30.548  000>> Receive Hello:SYNACK
 237.538 +14/06/2006 12:48:30.558  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29329
 237.539 +14/06/2006 12:48:30.659  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.540 +14/06/2006 12:48:30.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29330
 237.541 +14/06/2006 12:48:30.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29331
 237.542 +14/06/2006 12:48:30.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29332
 237.543 +14/06/2006 12:48:30.679  000>> 98>>>>>>>>>>Part datagram received!
 237.544 +14/06/2006 12:48:30.679  000>> 98>>>>>>>>>>Complete!
 237.545 +14/06/2006 12:48:30.679  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29757
 237.546 +14/06/2006 12:48:30.679  000>> Good datagram received!
 237.547 +14/06/2006 12:48:30.679  000>> Listener:Received dictionary
 237.548 +14/06/2006 12:48:30.679  000>> 90>>>>>>>>>>Part datagram received!
 237.549 +14/06/2006 12:48:30.679  000>> 90>>>>>>>>>>Complete!
 237.550 +14/06/2006 12:48:30.689  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29758
 237.551 +14/06/2006 12:48:30.689  000>> Good datagram received!
 237.552 +14/06/2006 12:48:30.689  000>> Listener:Received RIB
 237.553 +14/06/2006 12:48:30.839  000>> 716>>>>>>>>>>Part datagram received!
 237.554 +14/06/2006 12:48:30.839  000>> 716>>>>>>>>>>Complete!
 237.555 +14/06/2006 12:48:30.849  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29759
 237.556 +14/06/2006 12:48:30.849  000>> Good datagram received!
 237.557 +14/06/2006 12:48:30.859  000>> Listener:Received Bundle Offer
 237.558 +14/06/2006 12:48:30.859  000>> Listener:Sending Empty bundle request...
 237.559 +14/06/2006 12:48:30.859  000>> Listener(receiveBOffer):But we can not restart connection...
 237.560 +14/06/2006 12:48:30.859  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29333
 237.561 +14/06/2006 12:48:30.859  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29760
 237.562 +14/06/2006 12:48:30.859  000>> Good datagram received!
 237.563 +14/06/2006 12:48:30.869  000>> Initiator:No more requested bundles
 237.564 +14/06/2006 12:48:30.869  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 237.565 +14/06/2006 12:48:31.069  000>> 91>>>>>>>>>>Part datagram received!
 237.566 +14/06/2006 12:48:31.069  000>> 91>>>>>>>>>>Complete!
 237.567 +14/06/2006 12:48:31.069  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29761
 237.568 +14/06/2006 12:48:31.069  000>> Good datagram received!
 237.569 +14/06/2006 12:48:31.069  000>> Receive Hello:SYN
 237.570 +14/06/2006 12:48:31.069  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29334
 237.571 +14/06/2006 12:48:31.089  000>> 91>>>>>>>>>>Part datagram received!
 237.572 +14/06/2006 12:48:31.089  000>> 91>>>>>>>>>>Complete!
 237.573 +14/06/2006 12:48:31.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29762
 237.574 +14/06/2006 12:48:31.099  000>> Good datagram received!
 237.575 +14/06/2006 12:48:31.099  000>> Receive Hello:ACK
 237.576 +14/06/2006 12:48:31.199  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.577 +14/06/2006 12:48:31.199  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29335
 237.578 +14/06/2006 12:48:31.199  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29336
 237.579 +14/06/2006 12:48:31.199  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29337
 237.580 +14/06/2006 12:48:31.199  000>> 98>>>>>>>>>>Part datagram received!
 237.581 +14/06/2006 12:48:31.199  000>> 98>>>>>>>>>>Complete!
 237.582 +14/06/2006 12:48:31.199  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29763
 237.583 +14/06/2006 12:48:31.199  000>> Good datagram received!
 237.584 +14/06/2006 12:48:31.199  000>> Listener:Received dictionary
 237.585 +14/06/2006 12:48:31.209  000>> 90>>>>>>>>>>Part datagram received!
 237.586 +14/06/2006 12:48:31.209  000>> 90>>>>>>>>>>Complete!
 237.587 +14/06/2006 12:48:31.209  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29764
 237.588 +14/06/2006 12:48:31.209  000>> Good datagram received!
 237.589 +14/06/2006 12:48:31.209  000>> Listener:Received RIB
 237.590 +14/06/2006 12:48:31.209  000>> 638>>>>>>>>>>Part datagram received!
 237.591 +14/06/2006 12:48:31.209  000>> 638>>>>>>>>>>Complete!
 237.592 +14/06/2006 12:48:31.209  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29765
 237.593 +14/06/2006 12:48:31.209  000>> Good datagram received!
 237.594 +14/06/2006 12:48:31.229  000>> Listener:Received Bundle Offer
 237.595 +14/06/2006 12:48:31.229  000>> Listener:Sending Empty bundle request...
 237.596 +14/06/2006 12:48:31.229  000>> Listener(receiveBOffer):But we can not restart connection...
 237.597 +14/06/2006 12:48:31.229  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29338
 237.598 +14/06/2006 12:48:31.229  000>> 0>>>>>>>>>>Part datagram received!
 237.599 +14/06/2006 12:48:31.239  000>> 0>>>>>>>>>>Part datagram received!
 237.600 +14/06/2006 12:48:31.309  000>> 78>>>>>>>>>>Part datagram received!
 237.601 +14/06/2006 12:48:31.319  000>> 78>>>>>>>>>>Complete!
 237.602 +14/06/2006 12:48:31.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29766
 237.603 +14/06/2006 12:48:31.319  000>> Good datagram received!
 237.604 +14/06/2006 12:48:31.319  000>> Initiator:No more requested bundles
 237.605 +14/06/2006 12:48:31.319  000>> Listener(receiveBundles):We can restart connection...
 237.606 +14/06/2006 12:48:31.420  000>> Hello Procedure:SENDSYN
 237.607 +14/06/2006 12:48:31.420  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29339
 237.608 +14/06/2006 12:48:31.460  000>> 91>>>>>>>>>>Part datagram received!
 237.609 +14/06/2006 12:48:31.460  000>> 91>>>>>>>>>>Complete!
 237.610 +14/06/2006 12:48:31.460  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29767
 237.611 +14/06/2006 12:48:31.460  000>> Good datagram received!
 237.612 +14/06/2006 12:48:31.460  000>> Receive Hello:SYNACK
 237.613 +14/06/2006 12:48:31.460  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29340
 237.614 +14/06/2006 12:48:31.560  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.615 +14/06/2006 12:48:31.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29341
 237.616 +14/06/2006 12:48:31.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29342
 237.617 +14/06/2006 12:48:31.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29343
 237.618 +14/06/2006 12:48:31.580  000>> 98>>>>>>>>>>Part datagram received!
 237.619 +14/06/2006 12:48:31.580  000>> 98>>>>>>>>>>Complete!
 237.620 +14/06/2006 12:48:31.580  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29768
 237.621 +14/06/2006 12:48:31.580  000>> Good datagram received!
 237.622 +14/06/2006 12:48:31.580  000>> Listener:Received dictionary
 237.623 +14/06/2006 12:48:31.580  000>> 90>>>>>>>>>>Part datagram received!
 237.624 +14/06/2006 12:48:31.580  000>> 90>>>>>>>>>>Complete!
 237.625 +14/06/2006 12:48:31.590  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29769
 237.626 +14/06/2006 12:48:31.590  000>> Good datagram received!
 237.627 +14/06/2006 12:48:31.590  000>> Listener:Received RIB
 237.628 +14/06/2006 12:48:31.740  000>> 716>>>>>>>>>>Part datagram received!
 237.629 +14/06/2006 12:48:31.750  000>> 716>>>>>>>>>>Complete!
 237.630 +14/06/2006 12:48:31.750  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29770
 237.631 +14/06/2006 12:48:31.750  000>> Good datagram received!
 237.632 +14/06/2006 12:48:31.760  000>> Listener:Received Bundle Offer
 237.633 +14/06/2006 12:48:31.760  000>> Listener:Sending Empty bundle request...
 237.634 +14/06/2006 12:48:31.760  000>> Listener(receiveBOffer):But we can not restart connection...
 237.635 +14/06/2006 12:48:31.760  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29344
 237.636 +14/06/2006 12:48:31.760  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29771
 237.637 +14/06/2006 12:48:31.760  000>> Good datagram received!
 237.638 +14/06/2006 12:48:31.770  000>> Initiator:No more requested bundles
 237.639 +14/06/2006 12:48:31.770  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 237.640 +14/06/2006 12:48:31.960  000>> 91>>>>>>>>>>Part datagram received!
 237.641 +14/06/2006 12:48:31.960  000>> 91>>>>>>>>>>Complete!
 237.642 +14/06/2006 12:48:31.960  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29772
 237.643 +14/06/2006 12:48:31.960  000>> Good datagram received!
 237.644 +14/06/2006 12:48:31.960  000>> Receive Hello:SYN
 237.645 +14/06/2006 12:48:31.960  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29345
 237.646 +14/06/2006 12:48:31.980  000>> 91>>>>>>>>>>Part datagram received!
 237.647 +14/06/2006 12:48:31.980  000>> 91>>>>>>>>>>Complete!
 237.648 +14/06/2006 12:48:31.980  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29773
 237.649 +14/06/2006 12:48:31.980  000>> Good datagram received!
 237.650 +14/06/2006 12:48:31.980  000>> Receive Hello:ACK
 237.651 +14/06/2006 12:48:32.081  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.652 +14/06/2006 12:48:32.081  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29346
 237.653 +14/06/2006 12:48:32.081  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29347
 237.654 +14/06/2006 12:48:32.081  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29348
 237.655 +14/06/2006 12:48:32.091  000>> 98>>>>>>>>>>Part datagram received!
 237.656 +14/06/2006 12:48:32.091  000>> 98>>>>>>>>>>Complete!
 237.657 +14/06/2006 12:48:32.091  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29774
 237.658 +14/06/2006 12:48:32.091  000>> Good datagram received!
 237.659 +14/06/2006 12:48:32.101  000>> Listener:Received dictionary
 237.660 +14/06/2006 12:48:32.111  000>> 90>>>>>>>>>>Part datagram received!
 237.661 +14/06/2006 12:48:32.111  000>> 90>>>>>>>>>>Complete!
 237.662 +14/06/2006 12:48:32.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29775
 237.663 +14/06/2006 12:48:32.111  000>> Good datagram received!
 237.664 +14/06/2006 12:48:32.111  000>> Listener:Received RIB
 237.665 +14/06/2006 12:48:32.251  000>> 716>>>>>>>>>>Part datagram received!
 237.666 +14/06/2006 12:48:32.251  000>> 716>>>>>>>>>>Complete!
 237.667 +14/06/2006 12:48:32.251  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29776
 237.668 +14/06/2006 12:48:32.251  000>> Good datagram received!
 237.669 +14/06/2006 12:48:32.261  000>> Listener:Received Bundle Offer
 237.670 +14/06/2006 12:48:32.261  000>> Listener:Sending Empty bundle request...
 237.671 +14/06/2006 12:48:32.261  000>> Listener(receiveBOffer):But we can not restart connection...
 237.672 +14/06/2006 12:48:32.261  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29349
 237.673 +14/06/2006 12:48:32.271  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29777
 237.674 +14/06/2006 12:48:32.271  000>> Good datagram received!
 237.675 +14/06/2006 12:48:32.271  000>> Initiator:No more requested bundles
 237.676 +14/06/2006 12:48:32.271  000>> Listener(receiveBundles):We can restart connection...
 237.677 +14/06/2006 12:48:32.371  000>> Hello Procedure:SENDSYN
 237.678 +14/06/2006 12:48:32.381  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29350
 237.679 +14/06/2006 12:48:32.441  000>> 91>>>>>>>>>>Part datagram received!
 237.680 +14/06/2006 12:48:32.441  000>> 91>>>>>>>>>>Complete!
 237.681 +14/06/2006 12:48:32.451  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29778
 237.682 +14/06/2006 12:48:32.451  000>> Good datagram received!
 237.683 +14/06/2006 12:48:32.451  000>> Receive Hello:SYNACK
 237.684 +14/06/2006 12:48:32.451  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29351
 237.685 +14/06/2006 12:48:32.551  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.686 +14/06/2006 12:48:32.551  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29352
 237.687 +14/06/2006 12:48:32.551  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29353
 237.688 +14/06/2006 12:48:32.551  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29354
 237.689 +14/06/2006 12:48:32.591  000>> 98>>>>>>>>>>Part datagram received!
 237.690 +14/06/2006 12:48:32.591  000>> 98>>>>>>>>>>Complete!
 237.691 +14/06/2006 12:48:32.591  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29779
 237.692 +14/06/2006 12:48:32.591  000>> Good datagram received!
 237.693 +14/06/2006 12:48:32.601  000>> Listener:Received dictionary
 237.694 +14/06/2006 12:48:32.621  000>> 90>>>>>>>>>>Part datagram received!
 237.695 +14/06/2006 12:48:32.621  000>> 90>>>>>>>>>>Complete!
 237.696 +14/06/2006 12:48:32.621  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29780
 237.697 +14/06/2006 12:48:32.621  000>> Good datagram received!
 237.698 +14/06/2006 12:48:32.621  000>> Listener:Received RIB
 237.699 +14/06/2006 12:48:32.752  000>> 716>>>>>>>>>>Part datagram received!
 237.700 +14/06/2006 12:48:32.752  000>> 716>>>>>>>>>>Complete!
 237.701 +14/06/2006 12:48:32.752  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29781
 237.702 +14/06/2006 12:48:32.752  000>> Good datagram received!
 237.703 +14/06/2006 12:48:32.762  000>> Listener:Received Bundle Offer
 237.704 +14/06/2006 12:48:32.762  000>> Listener:Sending Empty bundle request...
 237.705 +14/06/2006 12:48:32.762  000>> Listener(receiveBOffer):But we can not restart connection...
 237.706 +14/06/2006 12:48:32.762  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29355
 237.707 +14/06/2006 12:48:32.772  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29782
 237.708 +14/06/2006 12:48:32.772  000>> Good datagram received!
 237.709 +14/06/2006 12:48:32.772  000>> Initiator:No more requested bundles
 237.710 +14/06/2006 12:48:32.772  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 237.711 +14/06/2006 12:48:32.962  000>> 91>>>>>>>>>>Part datagram received!
 237.712 +14/06/2006 12:48:32.962  000>> 91>>>>>>>>>>Complete!
 237.713 +14/06/2006 12:48:32.962  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29783
 237.714 +14/06/2006 12:48:32.962  000>> Good datagram received!
 237.715 +14/06/2006 12:48:32.962  000>> Receive Hello:SYN
 237.716 +14/06/2006 12:48:32.962  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29356
 237.717 +14/06/2006 12:48:32.982  000>> 91>>>>>>>>>>Part datagram received!
 237.718 +14/06/2006 12:48:32.982  000>> 91>>>>>>>>>>Complete!
 237.719 +14/06/2006 12:48:32.982  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29784
 237.720 +14/06/2006 12:48:32.982  000>> Good datagram received!
 237.721 +14/06/2006 12:48:32.982  000>> Receive Hello:ACK
 237.722 +14/06/2006 12:48:33.082  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.723 +14/06/2006 12:48:33.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29357
 237.724 +14/06/2006 12:48:33.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29358
 237.725 +14/06/2006 12:48:33.092  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29359
 237.726 +14/06/2006 12:48:33.092  000>> 98>>>>>>>>>>Part datagram received!
 237.727 +14/06/2006 12:48:33.092  000>> 98>>>>>>>>>>Complete!
 237.728 +14/06/2006 12:48:33.092  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29785
 237.729 +14/06/2006 12:48:33.092  000>> Good datagram received!
 237.730 +14/06/2006 12:48:33.092  000>> Listener:Received dictionary
 237.731 +14/06/2006 12:48:33.092  000>> 90>>>>>>>>>>Part datagram received!
 237.732 +14/06/2006 12:48:33.092  000>> 90>>>>>>>>>>Complete!
 237.733 +14/06/2006 12:48:33.092  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29786
 237.734 +14/06/2006 12:48:33.102  000>> Good datagram received!
 237.735 +14/06/2006 12:48:33.102  000>> Listener:Received RIB
 237.736 +14/06/2006 12:48:33.102  000>> 0>>>>>>>>>>Part datagram received!
 237.737 +14/06/2006 12:48:33.102  000>> 0>>>>>>>>>>Part datagram received!
 237.738 +14/06/2006 12:48:33.102  000>> 638>>>>>>>>>>Part datagram received!
 237.739 +14/06/2006 12:48:33.102  000>> 638>>>>>>>>>>Complete!
 237.740 +14/06/2006 12:48:33.102  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29787
 237.741 +14/06/2006 12:48:33.102  000>> Good datagram received!
 237.742 +14/06/2006 12:48:33.122  000>> Listener:Received Bundle Offer
 237.743 +14/06/2006 12:48:33.122  000>> Listener:Sending Empty bundle request...
 237.744 +14/06/2006 12:48:33.122  000>> Listener(receiveBOffer):But we can not restart connection...
 237.745 +14/06/2006 12:48:33.122  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29360
 237.746 +14/06/2006 12:48:33.202  000>> 78>>>>>>>>>>Part datagram received!
 237.747 +14/06/2006 12:48:33.202  000>> 78>>>>>>>>>>Complete!
 237.748 +14/06/2006 12:48:33.202  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29788
 237.749 +14/06/2006 12:48:33.202  000>> Good datagram received!
 237.750 +14/06/2006 12:48:33.202  000>> Initiator:No more requested bundles
 237.751 +14/06/2006 12:48:33.202  000>> Listener(receiveBundles):We can restart connection...
 237.752 +14/06/2006 12:48:33.302  000>> Hello Procedure:SENDSYN
 237.753 +14/06/2006 12:48:33.302  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29361
 237.754 +14/06/2006 12:48:33.332  000>> 91>>>>>>>>>>Part datagram received!
 237.755 +14/06/2006 12:48:33.332  000>> 91>>>>>>>>>>Complete!
 237.756 +14/06/2006 12:48:33.332  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29789
 237.757 +14/06/2006 12:48:33.342  000>> Good datagram received!
 237.758 +14/06/2006 12:48:33.342  000>> Receive Hello:SYNACK
 237.759 +14/06/2006 12:48:33.342  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29362
 237.760 +14/06/2006 12:48:33.443  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.761 +14/06/2006 12:48:33.443  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29363
 237.762 +14/06/2006 12:48:33.443  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29364
 237.763 +14/06/2006 12:48:33.443  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29365
 237.764 +14/06/2006 12:48:33.463  000>> 98>>>>>>>>>>Part datagram received!
 237.765 +14/06/2006 12:48:33.463  000>> 98>>>>>>>>>>Complete!
 237.766 +14/06/2006 12:48:33.463  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29790
 237.767 +14/06/2006 12:48:33.463  000>> Good datagram received!
 237.768 +14/06/2006 12:48:33.463  000>> Listener:Received dictionary
 237.769 +14/06/2006 12:48:33.473  000>> 90>>>>>>>>>>Part datagram received!
 237.770 +14/06/2006 12:48:33.473  000>> 90>>>>>>>>>>Complete!
 237.771 +14/06/2006 12:48:33.473  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29791
 237.772 +14/06/2006 12:48:33.473  000>> Good datagram received!
 237.773 +14/06/2006 12:48:33.473  000>> Listener:Received RIB
 237.774 +14/06/2006 12:48:33.653  000>> 716>>>>>>>>>>Part datagram received!
 237.775 +14/06/2006 12:48:33.653  000>> 716>>>>>>>>>>Complete!
 237.776 +14/06/2006 12:48:33.653  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29792
 237.777 +14/06/2006 12:48:33.653  000>> Good datagram received!
 237.778 +14/06/2006 12:48:33.673  000>> Listener:Received Bundle Offer
 237.779 +14/06/2006 12:48:33.673  000>> Listener:Sending Empty bundle request...
 237.780 +14/06/2006 12:48:33.673  000>> Listener(receiveBOffer):But we can not restart connection...
 237.781 +14/06/2006 12:48:33.673  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29366
 237.782 +14/06/2006 12:48:33.673  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29793
 237.783 +14/06/2006 12:48:33.673  000>> Good datagram received!
 237.784 +14/06/2006 12:48:33.673  000>> Initiator:No more requested bundles
 237.785 +14/06/2006 12:48:33.673  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 237.786 +14/06/2006 12:48:33.803  000>> 91>>>>>>>>>>Part datagram received!
 237.787 +14/06/2006 12:48:33.803  000>> 91>>>>>>>>>>Complete!
 237.788 +14/06/2006 12:48:33.803  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29794
 237.789 +14/06/2006 12:48:33.803  000>> Good datagram received!
 237.790 +14/06/2006 12:48:33.803  000>> Receive Hello:SYN
 237.791 +14/06/2006 12:48:33.803  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29367
 237.792 +14/06/2006 12:48:33.823  000>> 91>>>>>>>>>>Part datagram received!
 237.793 +14/06/2006 12:48:33.823  000>> 91>>>>>>>>>>Complete!
 237.794 +14/06/2006 12:48:33.823  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29795
 237.795 +14/06/2006 12:48:33.823  000>> Good datagram received!
 237.796 +14/06/2006 12:48:33.833  000>> Receive Hello:ACK
 237.797 +14/06/2006 12:48:33.933  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.798 +14/06/2006 12:48:33.933  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29368
 237.799 +14/06/2006 12:48:33.933  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29369
 237.800 +14/06/2006 12:48:33.933  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29370
 237.801 +14/06/2006 12:48:33.963  000>> 98>>>>>>>>>>Part datagram received!
 237.802 +14/06/2006 12:48:33.963  000>> 98>>>>>>>>>>Complete!
 237.803 +14/06/2006 12:48:33.963  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29796
 237.804 +14/06/2006 12:48:33.963  000>> Good datagram received!
 237.805 +14/06/2006 12:48:33.963  000>> Listener:Received dictionary
 237.806 +14/06/2006 12:48:33.973  000>> 90>>>>>>>>>>Part datagram received!
 237.807 +14/06/2006 12:48:33.973  000>> 90>>>>>>>>>>Complete!
 237.808 +14/06/2006 12:48:33.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29797
 237.809 +14/06/2006 12:48:33.973  000>> Good datagram received!
 237.810 +14/06/2006 12:48:33.973  000>> Listener:Received RIB
 237.811 +14/06/2006 12:48:34.154  000>> 716>>>>>>>>>>Part datagram received!
 237.812 +14/06/2006 12:48:34.154  000>> 716>>>>>>>>>>Complete!
 237.813 +14/06/2006 12:48:34.154  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29798
 237.814 +14/06/2006 12:48:34.154  000>> Good datagram received!
 237.815 +14/06/2006 12:48:34.174  000>> Listener:Received Bundle Offer
 237.816 +14/06/2006 12:48:34.174  000>> Listener:Sending Empty bundle request...
 237.817 +14/06/2006 12:48:34.174  000>> Listener(receiveBOffer):But we can not restart connection...
 237.818 +14/06/2006 12:48:34.174  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29371
 237.819 +14/06/2006 12:48:34.174  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29799
 237.820 +14/06/2006 12:48:34.174  000>> Good datagram received!
 237.821 +14/06/2006 12:48:34.174  000>> Initiator:No more requested bundles
 237.822 +14/06/2006 12:48:34.174  000>> Listener(receiveBundles):We can restart connection...
 237.823 +14/06/2006 12:48:34.274  000>> Hello Procedure:SENDSYN
 237.824 +14/06/2006 12:48:34.274  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29372
 237.825 +14/06/2006 12:48:34.354  000>> 91>>>>>>>>>>Part datagram received!
 237.826 +14/06/2006 12:48:34.354  000>> 91>>>>>>>>>>Complete!
 237.827 +14/06/2006 12:48:34.354  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29800
 237.828 +14/06/2006 12:48:34.354  000>> Good datagram received!
 237.829 +14/06/2006 12:48:34.354  000>> Receive Hello:SYNACK
 237.830 +14/06/2006 12:48:34.364  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29373
 237.831 +14/06/2006 12:48:34.464  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.832 +14/06/2006 12:48:34.464  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29374
 237.833 +14/06/2006 12:48:34.464  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29375
 237.834 +14/06/2006 12:48:34.464  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29376
 237.835 +14/06/2006 12:48:34.484  000>> 98>>>>>>>>>>Part datagram received!
 237.836 +14/06/2006 12:48:34.484  000>> 98>>>>>>>>>>Complete!
 237.837 +14/06/2006 12:48:34.494  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29801
 237.838 +14/06/2006 12:48:34.494  000>> Good datagram received!
 237.839 +14/06/2006 12:48:34.494  000>> Listener:Received dictionary
 237.840 +14/06/2006 12:48:34.494  000>> 90>>>>>>>>>>Part datagram received!
 237.841 +14/06/2006 12:48:34.494  000>> 90>>>>>>>>>>Complete!
 237.842 +14/06/2006 12:48:34.494  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29802
 237.843 +14/06/2006 12:48:34.494  000>> Good datagram received!
 237.844 +14/06/2006 12:48:34.494  000>> Listener:Received RIB
 237.845 +14/06/2006 12:48:34.654  000>> 716>>>>>>>>>>Part datagram received!
 237.846 +14/06/2006 12:48:34.654  000>> 716>>>>>>>>>>Complete!
 237.847 +14/06/2006 12:48:34.654  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29803
 237.848 +14/06/2006 12:48:34.654  000>> Good datagram received!
 237.849 +14/06/2006 12:48:34.674  000>> Listener:Received Bundle Offer
 237.850 +14/06/2006 12:48:34.674  000>> Listener:Sending Empty bundle request...
 237.851 +14/06/2006 12:48:34.674  000>> Listener(receiveBOffer):But we can not restart connection...
 237.852 +14/06/2006 12:48:34.674  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29377
 237.853 +14/06/2006 12:48:34.674  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29804
 237.854 +14/06/2006 12:48:34.674  000>> Good datagram received!
 237.855 +14/06/2006 12:48:34.674  000>> Initiator:No more requested bundles
 237.856 +14/06/2006 12:48:34.674  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 237.857 +14/06/2006 12:48:34.835  000>> 91>>>>>>>>>>Part datagram received!
 237.858 +14/06/2006 12:48:34.835  000>> 91>>>>>>>>>>Complete!
 237.859 +14/06/2006 12:48:34.845  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29805
 237.860 +14/06/2006 12:48:34.845  000>> Good datagram received!
 237.861 +14/06/2006 12:48:34.845  000>> Receive Hello:SYN
 237.862 +14/06/2006 12:48:34.845  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29378
 237.863 +14/06/2006 12:48:34.985  000>> 91>>>>>>>>>>Part datagram received!
 237.864 +14/06/2006 12:48:34.985  000>> 91>>>>>>>>>>Complete!
 237.865 +14/06/2006 12:48:34.985  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29806
 237.866 +14/06/2006 12:48:34.985  000>> Good datagram received!
 237.867 +14/06/2006 12:48:34.985  000>> Receive Hello:ACK
 237.868 +14/06/2006 12:48:35.085  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.869 +14/06/2006 12:48:35.085  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29379
 237.870 +14/06/2006 12:48:35.085  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29380
 237.871 +14/06/2006 12:48:35.085  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29381
 237.872 +14/06/2006 12:48:35.095  000>> 98>>>>>>>>>>Part datagram received!
 237.873 +14/06/2006 12:48:35.095  000>> 98>>>>>>>>>>Complete!
 237.874 +14/06/2006 12:48:35.095  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29807
 237.875 +14/06/2006 12:48:35.095  000>> Good datagram received!
 237.876 +14/06/2006 12:48:35.095  000>> Listener:Received dictionary
 237.877 +14/06/2006 12:48:35.105  000>> 90>>>>>>>>>>Part datagram received!
 237.878 +14/06/2006 12:48:35.105  000>> 90>>>>>>>>>>Complete!
 237.879 +14/06/2006 12:48:35.105  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29808
 237.880 +14/06/2006 12:48:35.105  000>> Good datagram received!
 237.881 +14/06/2006 12:48:35.105  000>> Listener:Received RIB
 237.882 +14/06/2006 12:48:35.255  000>> 716>>>>>>>>>>Part datagram received!
 237.883 +14/06/2006 12:48:35.255  000>> 716>>>>>>>>>>Complete!
 237.884 +14/06/2006 12:48:35.255  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29809
 237.885 +14/06/2006 12:48:35.255  000>> Good datagram received!
 237.886 +14/06/2006 12:48:35.275  000>> Listener:Received Bundle Offer
 237.887 +14/06/2006 12:48:35.275  000>> Listener:Sending Empty bundle request...
 237.888 +14/06/2006 12:48:35.275  000>> Listener(receiveBOffer):But we can not restart connection...
 237.889 +14/06/2006 12:48:35.275  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29382
 237.890 +14/06/2006 12:48:35.275  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29810
 237.891 +14/06/2006 12:48:35.275  000>> Good datagram received!
 237.892 +14/06/2006 12:48:35.275  000>> Initiator:No more requested bundles
 237.893 +14/06/2006 12:48:35.275  000>> Listener(receiveBundles):We can restart connection...
 237.894 +14/06/2006 12:48:35.385  000>> Hello Procedure:SENDSYN
 237.895 +14/06/2006 12:48:35.385  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29383
 237.896 +14/06/2006 12:48:35.455  000>> 91>>>>>>>>>>Part datagram received!
 237.897 +14/06/2006 12:48:35.455  000>> 91>>>>>>>>>>Complete!
 237.898 +14/06/2006 12:48:35.455  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29811
 237.899 +14/06/2006 12:48:35.455  000>> Good datagram received!
 237.900 +14/06/2006 12:48:35.455  000>> Receive Hello:SYNACK
 237.901 +14/06/2006 12:48:35.455  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29384
 237.902 +14/06/2006 12:48:35.556  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.903 +14/06/2006 12:48:35.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29385
 237.904 +14/06/2006 12:48:35.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29386
 237.905 +14/06/2006 12:48:35.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29387
 237.906 +14/06/2006 12:48:35.616  000>> 98>>>>>>>>>>Part datagram received!
 237.907 +14/06/2006 12:48:35.616  000>> 98>>>>>>>>>>Complete!
 237.908 +14/06/2006 12:48:35.616  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29812
 237.909 +14/06/2006 12:48:35.616  000>> Good datagram received!
 237.910 +14/06/2006 12:48:35.616  000>> Listener:Received dictionary
 237.911 +14/06/2006 12:48:35.616  000>> 90>>>>>>>>>>Part datagram received!
 237.912 +14/06/2006 12:48:35.616  000>> 90>>>>>>>>>>Complete!
 237.913 +14/06/2006 12:48:35.616  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29813
 237.914 +14/06/2006 12:48:35.616  000>> Good datagram received!
 237.915 +14/06/2006 12:48:35.626  000>> Listener:Received RIB
 237.916 +14/06/2006 12:48:35.756  000>> 716>>>>>>>>>>Part datagram received!
 237.917 +14/06/2006 12:48:35.756  000>> 716>>>>>>>>>>Complete!
 237.918 +14/06/2006 12:48:35.756  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29814
 237.919 +14/06/2006 12:48:35.756  000>> Good datagram received!
 237.920 +14/06/2006 12:48:35.776  000>> Listener:Received Bundle Offer
 237.921 +14/06/2006 12:48:35.776  000>> Listener:Sending Empty bundle request...
 237.922 +14/06/2006 12:48:35.776  000>> Listener(receiveBOffer):But we can not restart connection...
 237.923 +14/06/2006 12:48:35.776  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29388
 237.924 +14/06/2006 12:48:35.776  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29815
 237.925 +14/06/2006 12:48:35.776  000>> Good datagram received!
 237.926 +14/06/2006 12:48:35.776  000>> Initiator:No more requested bundles
 237.927 +14/06/2006 12:48:35.776  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 237.928 +14/06/2006 12:48:35.966  000>> 91>>>>>>>>>>Part datagram received!
 237.929 +14/06/2006 12:48:35.966  000>> 91>>>>>>>>>>Complete!
 237.930 +14/06/2006 12:48:35.966  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29816
 237.931 +14/06/2006 12:48:35.966  000>> Good datagram received!
 237.932 +14/06/2006 12:48:35.966  000>> Receive Hello:SYN
 237.933 +14/06/2006 12:48:35.966  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29389
 237.934 +14/06/2006 12:48:35.996  000>> 91>>>>>>>>>>Part datagram received!
 237.935 +14/06/2006 12:48:35.996  000>> 91>>>>>>>>>>Complete!
 237.936 +14/06/2006 12:48:35.996  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29817
 237.937 +14/06/2006 12:48:35.996  000>> Good datagram received!
 237.938 +14/06/2006 12:48:36.006  000>> Receive Hello:ACK
 237.939 +14/06/2006 12:48:36.106  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.940 +14/06/2006 12:48:36.106  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29390
 237.941 +14/06/2006 12:48:36.106  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29391
 237.942 +14/06/2006 12:48:36.106  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29392
 237.943 +14/06/2006 12:48:36.106  000>> 826>>>>>>>>>>Part datagram received!
 237.944 +14/06/2006 12:48:36.106  000>> 826>>>>>>>>>>Complete!
 237.945 +14/06/2006 12:48:36.106  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29818
 237.946 +14/06/2006 12:48:36.106  000>> Good datagram received!
 237.947 +14/06/2006 12:48:36.116  000>> Listener:Received dictionary
 237.948 +14/06/2006 12:48:36.116  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29819
 237.949 +14/06/2006 12:48:36.116  000>> Good datagram received!
 237.950 +14/06/2006 12:48:36.116  000>> Listener:Received RIB
 237.951 +14/06/2006 12:48:36.116  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29820
 237.952 +14/06/2006 12:48:36.116  000>> Good datagram received!
 237.953 +14/06/2006 12:48:36.126  000>> Listener:Received Bundle Offer
 237.954 +14/06/2006 12:48:36.136  000>> Listener:Sending Empty bundle request...
 237.955 +14/06/2006 12:48:36.136  000>> Listener(receiveBOffer):But we can not restart connection...
 237.956 +14/06/2006 12:48:36.136  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29393
 237.957 +14/06/2006 12:48:36.136  000>> 0>>>>>>>>>>Part datagram received!
 237.958 +14/06/2006 12:48:36.136  000>> 0>>>>>>>>>>Part datagram received!
 237.959 +14/06/2006 12:48:36.287  000>> 78>>>>>>>>>>Part datagram received!
 237.960 +14/06/2006 12:48:36.287  000>> 78>>>>>>>>>>Complete!
 237.961 +14/06/2006 12:48:36.287  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29821
 237.962 +14/06/2006 12:48:36.287  000>> Good datagram received!
 237.963 +14/06/2006 12:48:36.287  000>> Initiator:No more requested bundles
 237.964 +14/06/2006 12:48:36.287  000>> Listener(receiveBundles):We can restart connection...
 237.965 +14/06/2006 12:48:36.387  000>> Hello Procedure:SENDSYN
 237.966 +14/06/2006 12:48:36.387  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29394
 237.967 +14/06/2006 12:48:36.407  000>> 91>>>>>>>>>>Part datagram received!
 237.968 +14/06/2006 12:48:36.407  000>> 91>>>>>>>>>>Complete!
 237.969 +14/06/2006 12:48:36.407  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29822
 237.970 +14/06/2006 12:48:36.407  000>> Good datagram received!
 237.971 +14/06/2006 12:48:36.407  000>> Receive Hello:SYNACK
 237.972 +14/06/2006 12:48:36.417  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29395
 237.973 +14/06/2006 12:48:36.517  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
 237.974 +14/06/2006 12:48:36.517  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29396
 237.975 +14/06/2006 12:48:36.517  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29397
 237.976 +14/06/2006 12:48:36.517  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29398
 237.977 +14/06/2006 12:48:36.527  000>> 98>>>>>>>>>>Part datagram received!
 237.978 +14/06/2006 12:48:36.527  000>> 98>>>>>>>>>>Complete!
 237.979 +14/06/2006 12:48:36.527  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29823
 237.980 +14/06/2006 12:48:36.527  000>> Good datagram received!
 237.981 +14/06/2006 12:48:36.527  000>> Listener:Received dictionary
 237.982 +14/06/2006 12:48:36.537  000>> 90>>>>>>>>>>Part datagram received!
 237.983 +14/06/2006 12:48:36.537  000>> 90>>>>>>>>>>Complete!
 237.984 +14/06/2006 12:48:36.537  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29824
 237.985 +14/06/2006 12:48:36.537  000>> Good datagram received!
 237.986 +14/06/2006 12:48:36.537  000>> Listener:Received RIB
 237.987 +14/06/2006 12:48:36.657  000>> 716>>>>>>>>>>Part datagram received!
 237.988 +14/06/2006 12:48:36.657  000>> 716>>>>>>>>>>Complete!
 237.989 +14/06/2006 12:48:36.667  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29825
 237.990 +14/06/2006 12:48:36.667  000>> Good datagram received!
 237.991 +14/06/2006 12:48:36.677  000>> Listener:Received Bundle Offer
 237.992 +14/06/2006 12:48:36.677  000>> Listener:Sending Empty bundle request...
 237.993 +14/06/2006 12:48:36.677  000>> Listener(receiveBOffer):But we can not restart connection...
 237.994 +14/06/2006 12:48:36.677  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29399
 237.995 +14/06/2006 12:48:36.677  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29826
 237.996 +14/06/2006 12:48:36.677  000>> Good datagram received!
 237.997 +14/06/2006 12:48:36.677  000>> Initiator:No more requested bundles
 237.998 +14/06/2006 12:48:36.687  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
 237.999 +14/06/2006 12:48:36.797  000>> 91>>>>>>>>>>Part datagram received!
237.1000 +14/06/2006 12:48:36.797  000>> 91>>>>>>>>>>Complete!
237.1001 +14/06/2006 12:48:36.797  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29827
237.1002 +14/06/2006 12:48:36.797  000>> Good datagram received!
237.1003 +14/06/2006 12:48:36.797  000>> Receive Hello:SYN
237.1004 +14/06/2006 12:48:36.797  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29400
237.1005 +14/06/2006 12:48:36.827  000>> 91>>>>>>>>>>Part datagram received!
237.1006 +14/06/2006 12:48:36.827  000>> 91>>>>>>>>>>Complete!
237.1007 +14/06/2006 12:48:36.827  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29828
237.1008 +14/06/2006 12:48:36.827  000>> Good datagram received!
237.1009 +14/06/2006 12:48:36.827  000>> Receive Hello:ACK
237.1010 +14/06/2006 12:48:36.928  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1011 +14/06/2006 12:48:36.928  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29401
237.1012 +14/06/2006 12:48:36.928  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29402
237.1013 +14/06/2006 12:48:36.928  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29403
237.1014 +14/06/2006 12:48:36.978  000>> 98>>>>>>>>>>Part datagram received!
237.1015 +14/06/2006 12:48:36.978  000>> 98>>>>>>>>>>Complete!
237.1016 +14/06/2006 12:48:36.978  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29829
237.1017 +14/06/2006 12:48:36.978  000>> Good datagram received!
237.1018 +14/06/2006 12:48:36.978  000>> Listener:Received dictionary
237.1019 +14/06/2006 12:48:36.988  000>> 90>>>>>>>>>>Part datagram received!
237.1020 +14/06/2006 12:48:36.988  000>> 90>>>>>>>>>>Complete!
237.1021 +14/06/2006 12:48:36.988  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29830
237.1022 +14/06/2006 12:48:36.988  000>> Good datagram received!
237.1023 +14/06/2006 12:48:36.988  000>> Listener:Received RIB
237.1024 +14/06/2006 12:48:37.158  000>> 716>>>>>>>>>>Part datagram received!
237.1025 +14/06/2006 12:48:37.168  000>> 716>>>>>>>>>>Complete!
237.1026 +14/06/2006 12:48:37.168  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29831
237.1027 +14/06/2006 12:48:37.168  000>> Good datagram received!
237.1028 +14/06/2006 12:48:37.178  000>> Listener:Received Bundle Offer
237.1029 +14/06/2006 12:48:37.178  000>> Listener:Sending Empty bundle request...
237.1030 +14/06/2006 12:48:37.178  000>> Listener(receiveBOffer):But we can not restart connection...
237.1031 +14/06/2006 12:48:37.178  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29404
237.1032 +14/06/2006 12:48:37.178  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29832
237.1033 +14/06/2006 12:48:37.178  000>> Good datagram received!
237.1034 +14/06/2006 12:48:37.188  000>> Initiator:No more requested bundles
237.1035 +14/06/2006 12:48:37.188  000>> Listener(receiveBundles):We can restart connection...
237.1036 +14/06/2006 12:48:37.288  000>> Hello Procedure:SENDSYN
237.1037 +14/06/2006 12:48:37.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29405
237.1038 +14/06/2006 12:48:37.368  000>> 91>>>>>>>>>>Part datagram received!
237.1039 +14/06/2006 12:48:37.368  000>> 91>>>>>>>>>>Complete!
237.1040 +14/06/2006 12:48:37.368  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29833
237.1041 +14/06/2006 12:48:37.368  000>> Good datagram received!
237.1042 +14/06/2006 12:48:37.368  000>> Receive Hello:SYNACK
237.1043 +14/06/2006 12:48:37.368  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29406
237.1044 +14/06/2006 12:48:37.468  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1045 +14/06/2006 12:48:37.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29407
237.1046 +14/06/2006 12:48:37.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29408
237.1047 +14/06/2006 12:48:37.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29409
237.1048 +14/06/2006 12:48:37.488  000>> 98>>>>>>>>>>Part datagram received!
237.1049 +14/06/2006 12:48:37.488  000>> 98>>>>>>>>>>Complete!
237.1050 +14/06/2006 12:48:37.488  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29834
237.1051 +14/06/2006 12:48:37.488  000>> Good datagram received!
237.1052 +14/06/2006 12:48:37.498  000>> Listener:Received dictionary
237.1053 +14/06/2006 12:48:37.498  000>> 90>>>>>>>>>>Part datagram received!
237.1054 +14/06/2006 12:48:37.498  000>> 90>>>>>>>>>>Complete!
237.1055 +14/06/2006 12:48:37.498  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29835
237.1056 +14/06/2006 12:48:37.498  000>> Good datagram received!
237.1057 +14/06/2006 12:48:37.498  000>> Listener:Received RIB
237.1058 +14/06/2006 12:48:37.669  000>> 716>>>>>>>>>>Part datagram received!
237.1059 +14/06/2006 12:48:37.669  000>> 716>>>>>>>>>>Complete!
237.1060 +14/06/2006 12:48:37.669  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29836
237.1061 +14/06/2006 12:48:37.669  000>> Good datagram received!
237.1062 +14/06/2006 12:48:37.679  000>> Listener:Received Bundle Offer
237.1063 +14/06/2006 12:48:37.679  000>> Listener:Sending Empty bundle request...
237.1064 +14/06/2006 12:48:37.679  000>> Listener(receiveBOffer):But we can not restart connection...
237.1065 +14/06/2006 12:48:37.679  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29410
237.1066 +14/06/2006 12:48:37.679  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29837
237.1067 +14/06/2006 12:48:37.689  000>> Good datagram received!
237.1068 +14/06/2006 12:48:37.689  000>> Initiator:No more requested bundles
237.1069 +14/06/2006 12:48:37.689  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.1070 +14/06/2006 12:48:37.829  000>> 91>>>>>>>>>>Part datagram received!
237.1071 +14/06/2006 12:48:37.829  000>> 91>>>>>>>>>>Complete!
237.1072 +14/06/2006 12:48:37.829  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29838
237.1073 +14/06/2006 12:48:37.829  000>> Good datagram received!
237.1074 +14/06/2006 12:48:37.829  000>> Receive Hello:SYN
237.1075 +14/06/2006 12:48:37.829  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29411
237.1076 +14/06/2006 12:48:37.859  000>> 91>>>>>>>>>>Part datagram received!
237.1077 +14/06/2006 12:48:37.859  000>> 91>>>>>>>>>>Complete!
237.1078 +14/06/2006 12:48:37.859  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29839
237.1079 +14/06/2006 12:48:37.859  000>> Good datagram received!
237.1080 +14/06/2006 12:48:37.859  000>> Receive Hello:ACK
237.1081 +14/06/2006 12:48:37.969  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1082 +14/06/2006 12:48:37.969  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29412
237.1083 +14/06/2006 12:48:37.969  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29413
237.1084 +14/06/2006 12:48:37.969  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29414
237.1085 +14/06/2006 12:48:37.989  000>> 98>>>>>>>>>>Part datagram received!
237.1086 +14/06/2006 12:48:37.989  000>> 98>>>>>>>>>>Complete!
237.1087 +14/06/2006 12:48:37.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29840
237.1088 +14/06/2006 12:48:37.989  000>> Good datagram received!
237.1089 +14/06/2006 12:48:37.989  000>> Listener:Received dictionary
237.1090 +14/06/2006 12:48:37.999  000>> 90>>>>>>>>>>Part datagram received!
237.1091 +14/06/2006 12:48:37.999  000>> 90>>>>>>>>>>Complete!
237.1092 +14/06/2006 12:48:37.999  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29841
237.1093 +14/06/2006 12:48:37.999  000>> Good datagram received!
237.1094 +14/06/2006 12:48:37.999  000>> Listener:Received RIB
237.1095 +14/06/2006 12:48:38.169  000>> 716>>>>>>>>>>Part datagram received!
237.1096 +14/06/2006 12:48:38.169  000>> 716>>>>>>>>>>Complete!
237.1097 +14/06/2006 12:48:38.169  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29842
237.1098 +14/06/2006 12:48:38.169  000>> Good datagram received!
237.1099 +14/06/2006 12:48:38.179  000>> Listener:Received Bundle Offer
237.1100 +14/06/2006 12:48:38.179  000>> Listener:Sending Empty bundle request...
237.1101 +14/06/2006 12:48:38.179  000>> Listener(receiveBOffer):But we can not restart connection...
237.1102 +14/06/2006 12:48:38.179  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29415
237.1103 +14/06/2006 12:48:38.189  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29843
237.1104 +14/06/2006 12:48:38.189  000>> Good datagram received!
237.1105 +14/06/2006 12:48:38.189  000>> Initiator:No more requested bundles
237.1106 +14/06/2006 12:48:38.189  000>> Listener(receiveBundles):We can restart connection...
237.1107 +14/06/2006 12:48:38.290  000>> Hello Procedure:SENDSYN
237.1108 +14/06/2006 12:48:38.290  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29416
237.1109 +14/06/2006 12:48:38.370  000>> 91>>>>>>>>>>Part datagram received!
237.1110 +14/06/2006 12:48:38.370  000>> 91>>>>>>>>>>Complete!
237.1111 +14/06/2006 12:48:38.370  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29844
237.1112 +14/06/2006 12:48:38.370  000>> Good datagram received!
237.1113 +14/06/2006 12:48:38.370  000>> Receive Hello:SYNACK
237.1114 +14/06/2006 12:48:38.370  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29417
237.1115 +14/06/2006 12:48:38.470  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1116 +14/06/2006 12:48:38.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29418
237.1117 +14/06/2006 12:48:38.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29419
237.1118 +14/06/2006 12:48:38.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29420
237.1119 +14/06/2006 12:48:38.490  000>> 98>>>>>>>>>>Part datagram received!
237.1120 +14/06/2006 12:48:38.490  000>> 98>>>>>>>>>>Complete!
237.1121 +14/06/2006 12:48:38.490  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29845
237.1122 +14/06/2006 12:48:38.490  000>> Good datagram received!
237.1123 +14/06/2006 12:48:38.490  000>> Listener:Received dictionary
237.1124 +14/06/2006 12:48:38.500  000>> 90>>>>>>>>>>Part datagram received!
237.1125 +14/06/2006 12:48:38.500  000>> 90>>>>>>>>>>Complete!
237.1126 +14/06/2006 12:48:38.500  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29846
237.1127 +14/06/2006 12:48:38.500  000>> Good datagram received!
237.1128 +14/06/2006 12:48:38.500  000>> Listener:Received RIB
237.1129 +14/06/2006 12:48:38.670  000>> 716>>>>>>>>>>Part datagram received!
237.1130 +14/06/2006 12:48:38.670  000>> 716>>>>>>>>>>Complete!
237.1131 +14/06/2006 12:48:38.670  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29847
237.1132 +14/06/2006 12:48:38.670  000>> Good datagram received!
237.1133 +14/06/2006 12:48:38.680  000>> Listener:Received Bundle Offer
237.1134 +14/06/2006 12:48:38.680  000>> Listener:Sending Empty bundle request...
237.1135 +14/06/2006 12:48:38.680  000>> Listener(receiveBOffer):But we can not restart connection...
237.1136 +14/06/2006 12:48:38.680  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29421
237.1137 +14/06/2006 12:48:38.690  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29848
237.1138 +14/06/2006 12:48:38.690  000>> Good datagram received!
237.1139 +14/06/2006 12:48:38.690  000>> Initiator:No more requested bundles
237.1140 +14/06/2006 12:48:38.690  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.1141 +14/06/2006 12:48:38.800  000>> 91>>>>>>>>>>Part datagram received!
237.1142 +14/06/2006 12:48:38.800  000>> 91>>>>>>>>>>Complete!
237.1143 +14/06/2006 12:48:38.800  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29849
237.1144 +14/06/2006 12:48:38.800  000>> Good datagram received!
237.1145 +14/06/2006 12:48:38.800  000>> Receive Hello:SYN
237.1146 +14/06/2006 12:48:38.810  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29422
237.1147 +14/06/2006 12:48:38.830  000>> 91>>>>>>>>>>Part datagram received!
237.1148 +14/06/2006 12:48:38.830  000>> 91>>>>>>>>>>Complete!
237.1149 +14/06/2006 12:48:38.830  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29850
237.1150 +14/06/2006 12:48:38.830  000>> Good datagram received!
237.1151 +14/06/2006 12:48:38.830  000>> Receive Hello:ACK
237.1152 +14/06/2006 12:48:38.930  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1153 +14/06/2006 12:48:38.930  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29423
237.1154 +14/06/2006 12:48:38.930  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29424
237.1155 +14/06/2006 12:48:38.930  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29425
237.1156 +14/06/2006 12:48:38.991  000>> 98>>>>>>>>>>Part datagram received!
237.1157 +14/06/2006 12:48:39.001  000>> 98>>>>>>>>>>Complete!
237.1158 +14/06/2006 12:48:39.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29851
237.1159 +14/06/2006 12:48:39.001  000>> Good datagram received!
237.1160 +14/06/2006 12:48:39.001  000>> Listener:Received dictionary
237.1161 +14/06/2006 12:48:39.001  000>> 90>>>>>>>>>>Part datagram received!
237.1162 +14/06/2006 12:48:39.001  000>> 90>>>>>>>>>>Complete!
237.1163 +14/06/2006 12:48:39.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29852
237.1164 +14/06/2006 12:48:39.001  000>> Good datagram received!
237.1165 +14/06/2006 12:48:39.001  000>> Listener:Received RIB
237.1166 +14/06/2006 12:48:39.171  000>> 716>>>>>>>>>>Part datagram received!
237.1167 +14/06/2006 12:48:39.171  000>> 716>>>>>>>>>>Complete!
237.1168 +14/06/2006 12:48:39.171  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29853
237.1169 +14/06/2006 12:48:39.171  000>> Good datagram received!
237.1170 +14/06/2006 12:48:39.181  000>> Listener:Received Bundle Offer
237.1171 +14/06/2006 12:48:39.181  000>> Listener:Sending Empty bundle request...
237.1172 +14/06/2006 12:48:39.191  000>> Listener(receiveBOffer):But we can not restart connection...
237.1173 +14/06/2006 12:48:39.191  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29426
237.1174 +14/06/2006 12:48:39.191  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29854
237.1175 +14/06/2006 12:48:39.191  000>> Good datagram received!
237.1176 +14/06/2006 12:48:39.191  000>> Initiator:No more requested bundles
237.1177 +14/06/2006 12:48:39.191  000>> Listener(receiveBundles):We can restart connection...
237.1178 +14/06/2006 12:48:39.291  000>> Hello Procedure:SENDSYN
237.1179 +14/06/2006 12:48:39.291  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29427
237.1180 +14/06/2006 12:48:39.371  000>> 91>>>>>>>>>>Part datagram received!
237.1181 +14/06/2006 12:48:39.371  000>> 91>>>>>>>>>>Complete!
237.1182 +14/06/2006 12:48:39.371  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29855
237.1183 +14/06/2006 12:48:39.371  000>> Good datagram received!
237.1184 +14/06/2006 12:48:39.371  000>> Receive Hello:SYNACK
237.1185 +14/06/2006 12:48:39.371  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29428
237.1186 +14/06/2006 12:48:39.471  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1187 +14/06/2006 12:48:39.471  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29429
237.1188 +14/06/2006 12:48:39.471  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29430
237.1189 +14/06/2006 12:48:39.471  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29431
237.1190 +14/06/2006 12:48:39.491  000>> 98>>>>>>>>>>Part datagram received!
237.1191 +14/06/2006 12:48:39.491  000>> 98>>>>>>>>>>Complete!
237.1192 +14/06/2006 12:48:39.491  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29856
237.1193 +14/06/2006 12:48:39.491  000>> Good datagram received!
237.1194 +14/06/2006 12:48:39.501  000>> Listener:Received dictionary
237.1195 +14/06/2006 12:48:39.551  000>> 728>>>>>>>>>>Part datagram received!
237.1196 +14/06/2006 12:48:39.551  000>> 728>>>>>>>>>>Complete!
237.1197 +14/06/2006 12:48:39.551  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29857
237.1198 +14/06/2006 12:48:39.551  000>> Good datagram received!
237.1199 +14/06/2006 12:48:39.551  000>> Listener:Received RIB
237.1200 +14/06/2006 12:48:39.551  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29858
237.1201 +14/06/2006 12:48:39.551  000>> Good datagram received!
237.1202 +14/06/2006 12:48:39.571  000>> Listener:Received Bundle Offer
237.1203 +14/06/2006 12:48:39.571  000>> Listener:Sending Empty bundle request...
237.1204 +14/06/2006 12:48:39.571  000>> Listener(receiveBOffer):But we can not restart connection...
237.1205 +14/06/2006 12:48:39.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29432
237.1206 +14/06/2006 12:48:39.651  000>> 78>>>>>>>>>>Part datagram received!
237.1207 +14/06/2006 12:48:39.651  000>> 78>>>>>>>>>>Complete!
237.1208 +14/06/2006 12:48:39.651  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29859
237.1209 +14/06/2006 12:48:39.651  000>> Good datagram received!
237.1210 +14/06/2006 12:48:39.651  000>> Initiator:No more requested bundles
237.1211 +14/06/2006 12:48:39.661  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.1212 +14/06/2006 12:48:39.772  000>> 91>>>>>>>>>>Part datagram received!
237.1213 +14/06/2006 12:48:39.772  000>> 91>>>>>>>>>>Complete!
237.1214 +14/06/2006 12:48:39.772  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29860
237.1215 +14/06/2006 12:48:39.772  000>> Good datagram received!
237.1216 +14/06/2006 12:48:39.772  000>> Receive Hello:SYN
237.1217 +14/06/2006 12:48:39.772  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29433
237.1218 +14/06/2006 12:48:39.792  000>> 91>>>>>>>>>>Part datagram received!
237.1219 +14/06/2006 12:48:39.792  000>> 91>>>>>>>>>>Complete!
237.1220 +14/06/2006 12:48:39.792  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29861
237.1221 +14/06/2006 12:48:39.792  000>> Good datagram received!
237.1222 +14/06/2006 12:48:39.792  000>> Receive Hello:ACK
237.1223 +14/06/2006 12:48:39.902  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1224 +14/06/2006 12:48:39.902  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29434
237.1225 +14/06/2006 12:48:39.902  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29435
237.1226 +14/06/2006 12:48:39.902  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29436
237.1227 +14/06/2006 12:48:39.992  000>> 98>>>>>>>>>>Part datagram received!
237.1228 +14/06/2006 12:48:39.992  000>> 98>>>>>>>>>>Complete!
237.1229 +14/06/2006 12:48:39.992  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29862
237.1230 +14/06/2006 12:48:39.992  000>> Good datagram received!
237.1231 +14/06/2006 12:48:39.992  000>> Listener:Received dictionary
237.1232 +14/06/2006 12:48:39.992  000>> 90>>>>>>>>>>Part datagram received!
237.1233 +14/06/2006 12:48:39.992  000>> 90>>>>>>>>>>Complete!
237.1234 +14/06/2006 12:48:39.992  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29863
237.1235 +14/06/2006 12:48:39.992  000>> Good datagram received!
237.1236 +14/06/2006 12:48:40.002  000>> Listener:Received RIB
237.1237 +14/06/2006 12:48:40.172  000>> 716>>>>>>>>>>Part datagram received!
237.1238 +14/06/2006 12:48:40.172  000>> 716>>>>>>>>>>Complete!
237.1239 +14/06/2006 12:48:40.172  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29864
237.1240 +14/06/2006 12:48:40.172  000>> Good datagram received!
237.1241 +14/06/2006 12:48:40.192  000>> Listener:Received Bundle Offer
237.1242 +14/06/2006 12:48:40.192  000>> Listener:Sending Empty bundle request...
237.1243 +14/06/2006 12:48:40.192  000>> Listener(receiveBOffer):But we can not restart connection...
237.1244 +14/06/2006 12:48:40.192  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29437
237.1245 +14/06/2006 12:48:40.192  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29865
237.1246 +14/06/2006 12:48:40.192  000>> Good datagram received!
237.1247 +14/06/2006 12:48:40.192  000>> Initiator:No more requested bundles
237.1248 +14/06/2006 12:48:40.192  000>> Listener(receiveBundles):We can restart connection...
237.1249 +14/06/2006 12:48:40.292  000>> Hello Procedure:SENDSYN
237.1250 +14/06/2006 12:48:40.292  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29438
237.1251 +14/06/2006 12:48:40.363  000>> 91>>>>>>>>>>Part datagram received!
237.1252 +14/06/2006 12:48:40.363  000>> 91>>>>>>>>>>Complete!
237.1253 +14/06/2006 12:48:40.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29866
237.1254 +14/06/2006 12:48:40.373  000>> Good datagram received!
237.1255 +14/06/2006 12:48:40.373  000>> Receive Hello:SYNACK
237.1256 +14/06/2006 12:48:40.373  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29439
237.1257 +14/06/2006 12:48:40.473  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1258 +14/06/2006 12:48:40.473  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29440
237.1259 +14/06/2006 12:48:40.473  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29441
237.1260 +14/06/2006 12:48:40.473  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29442
237.1261 +14/06/2006 12:48:40.493  000>> 98>>>>>>>>>>Part datagram received!
237.1262 +14/06/2006 12:48:40.493  000>> 98>>>>>>>>>>Complete!
237.1263 +14/06/2006 12:48:40.503  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29867
237.1264 +14/06/2006 12:48:40.503  000>> Good datagram received!
237.1265 +14/06/2006 12:48:40.503  000>> Listener:Received dictionary
237.1266 +14/06/2006 12:48:40.503  000>> 90>>>>>>>>>>Part datagram received!
237.1267 +14/06/2006 12:48:40.503  000>> 90>>>>>>>>>>Complete!
237.1268 +14/06/2006 12:48:40.503  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29868
237.1269 +14/06/2006 12:48:40.503  000>> Good datagram received!
237.1270 +14/06/2006 12:48:40.503  000>> Listener:Received RIB
237.1271 +14/06/2006 12:48:40.673  000>> 716>>>>>>>>>>Part datagram received!
237.1272 +14/06/2006 12:48:40.673  000>> 716>>>>>>>>>>Complete!
237.1273 +14/06/2006 12:48:40.673  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29869
237.1274 +14/06/2006 12:48:40.673  000>> Good datagram received!
237.1275 +14/06/2006 12:48:40.693  000>> Listener:Received Bundle Offer
237.1276 +14/06/2006 12:48:40.693  000>> Listener:Sending Empty bundle request...
237.1277 +14/06/2006 12:48:40.693  000>> Listener(receiveBOffer):But we can not restart connection...
237.1278 +14/06/2006 12:48:40.693  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29443
237.1279 +14/06/2006 12:48:40.693  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29870
237.1280 +14/06/2006 12:48:40.693  000>> Good datagram received!
237.1281 +14/06/2006 12:48:40.693  000>> Initiator:No more requested bundles
237.1282 +14/06/2006 12:48:40.693  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.1283 +14/06/2006 12:48:40.823  000>> 91>>>>>>>>>>Part datagram received!
237.1284 +14/06/2006 12:48:40.823  000>> 91>>>>>>>>>>Complete!
237.1285 +14/06/2006 12:48:40.833  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29871
237.1286 +14/06/2006 12:48:40.833  000>> Good datagram received!
237.1287 +14/06/2006 12:48:40.833  000>> Receive Hello:SYN
237.1288 +14/06/2006 12:48:40.833  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29444
237.1289 +14/06/2006 12:48:40.853  000>> 91>>>>>>>>>>Part datagram received!
237.1290 +14/06/2006 12:48:40.853  000>> 91>>>>>>>>>>Complete!
237.1291 +14/06/2006 12:48:40.853  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29872
237.1292 +14/06/2006 12:48:40.853  000>> Good datagram received!
237.1293 +14/06/2006 12:48:40.853  000>> Receive Hello:ACK
237.1294 +14/06/2006 12:48:40.963  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1295 +14/06/2006 12:48:40.963  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29445
237.1296 +14/06/2006 12:48:40.963  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29446
237.1297 +14/06/2006 12:48:40.963  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29447
237.1298 +14/06/2006 12:48:40.963  000>> 98>>>>>>>>>>Part datagram received!
237.1299 +14/06/2006 12:48:40.963  000>> 98>>>>>>>>>>Complete!
237.1300 +14/06/2006 12:48:40.963  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29873
237.1301 +14/06/2006 12:48:40.963  000>> Good datagram received!
237.1302 +14/06/2006 12:48:40.963  000>> Listener:Received dictionary
237.1303 +14/06/2006 12:48:40.973  000>> 90>>>>>>>>>>Part datagram received!
237.1304 +14/06/2006 12:48:40.973  000>> 90>>>>>>>>>>Complete!
237.1305 +14/06/2006 12:48:40.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29874
237.1306 +14/06/2006 12:48:40.973  000>> Good datagram received!
237.1307 +14/06/2006 12:48:40.973  000>> Listener:Received RIB
237.1308 +14/06/2006 12:48:40.973  000>> 638>>>>>>>>>>Part datagram received!
237.1309 +14/06/2006 12:48:40.973  000>> 638>>>>>>>>>>Complete!
237.1310 +14/06/2006 12:48:40.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29875
237.1311 +14/06/2006 12:48:40.973  000>> Good datagram received!
237.1312 +14/06/2006 12:48:40.993  000>> Listener:Received Bundle Offer
237.1313 +14/06/2006 12:48:40.993  000>> Listener:Sending Empty bundle request...
237.1314 +14/06/2006 12:48:40.993  000>> Listener(receiveBOffer):But we can not restart connection...
237.1315 +14/06/2006 12:48:40.993  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29448
237.1316 +14/06/2006 12:48:40.993  000>> 0>>>>>>>>>>Part datagram received!
237.1317 +14/06/2006 12:48:40.993  000>> 0>>>>>>>>>>Part datagram received!
237.1318 +14/06/2006 12:48:41.074  000>> 78>>>>>>>>>>Part datagram received!
237.1319 +14/06/2006 12:48:41.074  000>> 78>>>>>>>>>>Complete!
237.1320 +14/06/2006 12:48:41.074  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29876
237.1321 +14/06/2006 12:48:41.074  000>> Good datagram received!
237.1322 +14/06/2006 12:48:41.084  000>> Initiator:No more requested bundles
237.1323 +14/06/2006 12:48:41.084  000>> Listener(receiveBundles):We can restart connection...
237.1324 +14/06/2006 12:48:41.184  000>> Hello Procedure:SENDSYN
237.1325 +14/06/2006 12:48:41.184  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29449
237.1326 +14/06/2006 12:48:41.224  000>> 91>>>>>>>>>>Part datagram received!
237.1327 +14/06/2006 12:48:41.224  000>> 91>>>>>>>>>>Complete!
237.1328 +14/06/2006 12:48:41.224  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29877
237.1329 +14/06/2006 12:48:41.224  000>> Good datagram received!
237.1330 +14/06/2006 12:48:41.224  000>> Receive Hello:SYNACK
237.1331 +14/06/2006 12:48:41.224  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29450
237.1332 +14/06/2006 12:48:41.324  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1333 +14/06/2006 12:48:41.324  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29451
237.1334 +14/06/2006 12:48:41.324  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29452
237.1335 +14/06/2006 12:48:41.324  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29453
237.1336 +14/06/2006 12:48:41.354  000>> 98>>>>>>>>>>Part datagram received!
237.1337 +14/06/2006 12:48:41.354  000>> 98>>>>>>>>>>Complete!
237.1338 +14/06/2006 12:48:41.354  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29878
237.1339 +14/06/2006 12:48:41.354  000>> Good datagram received!
237.1340 +14/06/2006 12:48:41.354  000>> Listener:Received dictionary
237.1341 +14/06/2006 12:48:41.474  000>> 806>>>>>>>>>>Part datagram received!
237.1342 +14/06/2006 12:48:41.474  000>> 806>>>>>>>>>>Complete!
237.1343 +14/06/2006 12:48:41.474  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29879
237.1344 +14/06/2006 12:48:41.474  000>> Good datagram received!
237.1345 +14/06/2006 12:48:41.484  000>> Listener:Received RIB
237.1346 +14/06/2006 12:48:41.484  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29880
237.1347 +14/06/2006 12:48:41.484  000>> Good datagram received!
237.1348 +14/06/2006 12:48:41.494  000>> Listener:Received Bundle Offer
237.1349 +14/06/2006 12:48:41.494  000>> Listener:Sending Empty bundle request...
237.1350 +14/06/2006 12:48:41.494  000>> Listener(receiveBOffer):But we can not restart connection...
237.1351 +14/06/2006 12:48:41.494  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29454
237.1352 +14/06/2006 12:48:41.494  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29881
237.1353 +14/06/2006 12:48:41.494  000>> Good datagram received!
237.1354 +14/06/2006 12:48:41.504  000>> Initiator:No more requested bundles
237.1355 +14/06/2006 12:48:41.504  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.1356 +14/06/2006 12:48:41.614  000>> 91>>>>>>>>>>Part datagram received!
237.1357 +14/06/2006 12:48:41.614  000>> 91>>>>>>>>>>Complete!
237.1358 +14/06/2006 12:48:41.614  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29882
237.1359 +14/06/2006 12:48:41.614  000>> Good datagram received!
237.1360 +14/06/2006 12:48:41.614  000>> Receive Hello:SYN
237.1361 +14/06/2006 12:48:41.614  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29455
237.1362 +14/06/2006 12:48:41.634  000>> 91>>>>>>>>>>Part datagram received!
237.1363 +14/06/2006 12:48:41.644  000>> 91>>>>>>>>>>Complete!
237.1364 +14/06/2006 12:48:41.644  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29883
237.1365 +14/06/2006 12:48:41.644  000>> Good datagram received!
237.1366 +14/06/2006 12:48:41.644  000>> Receive Hello:ACK
237.1367 +14/06/2006 12:48:41.744  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1368 +14/06/2006 12:48:41.744  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29456
237.1369 +14/06/2006 12:48:41.744  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29457
237.1370 +14/06/2006 12:48:41.744  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29458
237.1371 +14/06/2006 12:48:41.744  000>> 98>>>>>>>>>>Part datagram received!
237.1372 +14/06/2006 12:48:41.744  000>> 98>>>>>>>>>>Complete!
237.1373 +14/06/2006 12:48:41.744  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29884
237.1374 +14/06/2006 12:48:41.744  000>> Good datagram received!
237.1375 +14/06/2006 12:48:41.755  000>> Listener:Received dictionary
237.1376 +14/06/2006 12:48:41.755  000>> 90>>>>>>>>>>Part datagram received!
237.1377 +14/06/2006 12:48:41.755  000>> 90>>>>>>>>>>Complete!
237.1378 +14/06/2006 12:48:41.755  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29885
237.1379 +14/06/2006 12:48:41.755  000>> Good datagram received!
237.1380 +14/06/2006 12:48:41.755  000>> Listener:Received RIB
237.1381 +14/06/2006 12:48:41.875  000>> 716>>>>>>>>>>Part datagram received!
237.1382 +14/06/2006 12:48:41.875  000>> 716>>>>>>>>>>Complete!
237.1383 +14/06/2006 12:48:41.875  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29886
237.1384 +14/06/2006 12:48:41.875  000>> Good datagram received!
237.1385 +14/06/2006 12:48:41.895  000>> Listener:Received Bundle Offer
237.1386 +14/06/2006 12:48:41.895  000>> Listener:Sending Empty bundle request...
237.1387 +14/06/2006 12:48:41.895  000>> Listener(receiveBOffer):But we can not restart connection...
237.1388 +14/06/2006 12:48:41.895  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29459
237.1389 +14/06/2006 12:48:41.895  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29887
237.1390 +14/06/2006 12:48:41.895  000>> Good datagram received!
237.1391 +14/06/2006 12:48:41.895  000>> Initiator:No more requested bundles
237.1392 +14/06/2006 12:48:41.895  000>> Listener(receiveBundles):We can restart connection...
237.1393 +14/06/2006 12:48:41.995  000>> Hello Procedure:SENDSYN
237.1394 +14/06/2006 12:48:41.995  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29460
237.1395 +14/06/2006 12:48:42.055  000>> 91>>>>>>>>>>Part datagram received!
237.1396 +14/06/2006 12:48:42.065  000>> 91>>>>>>>>>>Complete!
237.1397 +14/06/2006 12:48:42.065  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29888
237.1398 +14/06/2006 12:48:42.065  000>> Good datagram received!
237.1399 +14/06/2006 12:48:42.065  000>> Receive Hello:SYNACK
237.1400 +14/06/2006 12:48:42.065  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29461
237.1401 +14/06/2006 12:48:42.165  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1402 +14/06/2006 12:48:42.165  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29462
237.1403 +14/06/2006 12:48:42.165  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29463
237.1404 +14/06/2006 12:48:42.165  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29464
237.1405 +14/06/2006 12:48:42.185  000>> 98>>>>>>>>>>Part datagram received!
237.1406 +14/06/2006 12:48:42.185  000>> 98>>>>>>>>>>Complete!
237.1407 +14/06/2006 12:48:42.195  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29889
237.1408 +14/06/2006 12:48:42.195  000>> Good datagram received!
237.1409 +14/06/2006 12:48:42.195  000>> Listener:Received dictionary
237.1410 +14/06/2006 12:48:42.195  000>> 90>>>>>>>>>>Part datagram received!
237.1411 +14/06/2006 12:48:42.195  000>> 90>>>>>>>>>>Complete!
237.1412 +14/06/2006 12:48:42.195  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29890
237.1413 +14/06/2006 12:48:42.195  000>> Good datagram received!
237.1414 +14/06/2006 12:48:42.195  000>> Listener:Received RIB
237.1415 +14/06/2006 12:48:42.375  000>> 716>>>>>>>>>>Part datagram received!
237.1416 +14/06/2006 12:48:42.375  000>> 716>>>>>>>>>>Complete!
237.1417 +14/06/2006 12:48:42.385  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29891
237.1418 +14/06/2006 12:48:42.385  000>> Good datagram received!
237.1419 +14/06/2006 12:48:42.395  000>> Listener:Received Bundle Offer
237.1420 +14/06/2006 12:48:42.395  000>> Listener:Sending Empty bundle request...
237.1421 +14/06/2006 12:48:42.395  000>> Listener(receiveBOffer):But we can not restart connection...
237.1422 +14/06/2006 12:48:42.395  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29465
237.1423 +14/06/2006 12:48:42.395  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29892
237.1424 +14/06/2006 12:48:42.405  000>> Good datagram received!
237.1425 +14/06/2006 12:48:42.405  000>> Initiator:No more requested bundles
237.1426 +14/06/2006 12:48:42.405  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.1427 +14/06/2006 12:48:42.516  000>> 91>>>>>>>>>>Part datagram received!
237.1428 +14/06/2006 12:48:42.516  000>> 91>>>>>>>>>>Complete!
237.1429 +14/06/2006 12:48:42.516  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29893
237.1430 +14/06/2006 12:48:42.516  000>> Good datagram received!
237.1431 +14/06/2006 12:48:42.516  000>> Receive Hello:SYN
237.1432 +14/06/2006 12:48:42.516  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29466
237.1433 +14/06/2006 12:48:42.546  000>> 91>>>>>>>>>>Part datagram received!
237.1434 +14/06/2006 12:48:42.546  000>> 91>>>>>>>>>>Complete!
237.1435 +14/06/2006 12:48:42.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29894
237.1436 +14/06/2006 12:48:42.546  000>> Good datagram received!
237.1437 +14/06/2006 12:48:42.546  000>> Receive Hello:ACK
237.1438 +14/06/2006 12:48:42.646  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1439 +14/06/2006 12:48:42.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29467
237.1440 +14/06/2006 12:48:42.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29468
237.1441 +14/06/2006 12:48:42.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29469
237.1442 +14/06/2006 12:48:42.646  000>> 98>>>>>>>>>>Part datagram received!
237.1443 +14/06/2006 12:48:42.646  000>> 98>>>>>>>>>>Complete!
237.1444 +14/06/2006 12:48:42.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29895
237.1445 +14/06/2006 12:48:42.646  000>> Good datagram received!
237.1446 +14/06/2006 12:48:42.646  000>> Listener:Received dictionary
237.1447 +14/06/2006 12:48:42.656  000>> 90>>>>>>>>>>Part datagram received!
237.1448 +14/06/2006 12:48:42.656  000>> 90>>>>>>>>>>Complete!
237.1449 +14/06/2006 12:48:42.656  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29896
237.1450 +14/06/2006 12:48:42.656  000>> Good datagram received!
237.1451 +14/06/2006 12:48:42.656  000>> Listener:Received RIB
237.1452 +14/06/2006 12:48:42.776  000>> 716>>>>>>>>>>Part datagram received!
237.1453 +14/06/2006 12:48:42.786  000>> 716>>>>>>>>>>Complete!
237.1454 +14/06/2006 12:48:42.786  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29897
237.1455 +14/06/2006 12:48:42.786  000>> Good datagram received!
237.1456 +14/06/2006 12:48:42.796  000>> Listener:Received Bundle Offer
237.1457 +14/06/2006 12:48:42.796  000>> Listener:Sending Empty bundle request...
237.1458 +14/06/2006 12:48:42.796  000>> Listener(receiveBOffer):But we can not restart connection...
237.1459 +14/06/2006 12:48:42.796  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29470
237.1460 +14/06/2006 12:48:42.796  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29898
237.1461 +14/06/2006 12:48:42.806  000>> Good datagram received!
237.1462 +14/06/2006 12:48:42.806  000>> Initiator:No more requested bundles
237.1463 +14/06/2006 12:48:42.806  000>> Listener(receiveBundles):We can restart connection...
237.1464 +14/06/2006 12:48:42.906  000>> Hello Procedure:SENDSYN
237.1465 +14/06/2006 12:48:42.906  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29471
237.1466 +14/06/2006 12:48:42.966  000>> 91>>>>>>>>>>Part datagram received!
237.1467 +14/06/2006 12:48:42.966  000>> 91>>>>>>>>>>Complete!
237.1468 +14/06/2006 12:48:42.966  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29899
237.1469 +14/06/2006 12:48:42.966  000>> Good datagram received!
237.1470 +14/06/2006 12:48:42.966  000>> Receive Hello:SYNACK
237.1471 +14/06/2006 12:48:42.966  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29472
237.1472 +14/06/2006 12:48:43.066  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1473 +14/06/2006 12:48:43.066  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29473
237.1474 +14/06/2006 12:48:43.066  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29474
237.1475 +14/06/2006 12:48:43.066  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29475
237.1476 +14/06/2006 12:48:43.086  000>> 98>>>>>>>>>>Part datagram received!
237.1477 +14/06/2006 12:48:43.086  000>> 98>>>>>>>>>>Complete!
237.1478 +14/06/2006 12:48:43.086  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29900
237.1479 +14/06/2006 12:48:43.086  000>> Good datagram received!
237.1480 +14/06/2006 12:48:43.096  000>> Listener:Received dictionary
237.1481 +14/06/2006 12:48:43.096  000>> 90>>>>>>>>>>Part datagram received!
237.1482 +14/06/2006 12:48:43.096  000>> 90>>>>>>>>>>Complete!
237.1483 +14/06/2006 12:48:43.096  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29901
237.1484 +14/06/2006 12:48:43.096  000>> Good datagram received!
237.1485 +14/06/2006 12:48:43.096  000>> Listener:Received RIB
237.1486 +14/06/2006 12:48:43.277  000>> 716>>>>>>>>>>Part datagram received!
237.1487 +14/06/2006 12:48:43.287  000>> 716>>>>>>>>>>Complete!
237.1488 +14/06/2006 12:48:43.287  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29902
237.1489 +14/06/2006 12:48:43.287  000>> Good datagram received!
237.1490 +14/06/2006 12:48:43.297  000>> Listener:Received Bundle Offer
237.1491 +14/06/2006 12:48:43.297  000>> Listener:Sending Empty bundle request...
237.1492 +14/06/2006 12:48:43.297  000>> Listener(receiveBOffer):But we can not restart connection...
237.1493 +14/06/2006 12:48:43.297  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29476
237.1494 +14/06/2006 12:48:43.297  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29903
237.1495 +14/06/2006 12:48:43.297  000>> Good datagram received!
237.1496 +14/06/2006 12:48:43.307  000>> Initiator:No more requested bundles
237.1497 +14/06/2006 12:48:43.307  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.1498 +14/06/2006 12:48:43.427  000>> 91>>>>>>>>>>Part datagram received!
237.1499 +14/06/2006 12:48:43.427  000>> 91>>>>>>>>>>Complete!
237.1500 +14/06/2006 12:48:43.427  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29904
237.1501 +14/06/2006 12:48:43.427  000>> Good datagram received!
237.1502 +14/06/2006 12:48:43.427  000>> Receive Hello:SYN
237.1503 +14/06/2006 12:48:43.427  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29477
237.1504 +14/06/2006 12:48:43.447  000>> 91>>>>>>>>>>Part datagram received!
237.1505 +14/06/2006 12:48:43.457  000>> 91>>>>>>>>>>Complete!
237.1506 +14/06/2006 12:48:43.457  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29905
237.1507 +14/06/2006 12:48:43.457  000>> Good datagram received!
237.1508 +14/06/2006 12:48:43.457  000>> Receive Hello:ACK
237.1509 +14/06/2006 12:48:43.557  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1510 +14/06/2006 12:48:43.557  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29478
237.1511 +14/06/2006 12:48:43.557  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29479
237.1512 +14/06/2006 12:48:43.557  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29480
237.1513 +14/06/2006 12:48:43.567  000>> 98>>>>>>>>>>Part datagram received!
237.1514 +14/06/2006 12:48:43.567  000>> 98>>>>>>>>>>Complete!
237.1515 +14/06/2006 12:48:43.567  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29906
237.1516 +14/06/2006 12:48:43.567  000>> Good datagram received!
237.1517 +14/06/2006 12:48:43.567  000>> Listener:Received dictionary
237.1518 +14/06/2006 12:48:43.567  000>> 90>>>>>>>>>>Part datagram received!
237.1519 +14/06/2006 12:48:43.567  000>> 90>>>>>>>>>>Complete!
237.1520 +14/06/2006 12:48:43.567  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29907
237.1521 +14/06/2006 12:48:43.567  000>> Good datagram received!
237.1522 +14/06/2006 12:48:43.567  000>> Listener:Received RIB
237.1523 +14/06/2006 12:48:43.687  000>> 716>>>>>>>>>>Part datagram received!
237.1524 +14/06/2006 12:48:43.687  000>> 716>>>>>>>>>>Complete!
237.1525 +14/06/2006 12:48:43.687  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29908
237.1526 +14/06/2006 12:48:43.687  000>> Good datagram received!
237.1527 +14/06/2006 12:48:43.697  000>> Listener:Received Bundle Offer
237.1528 +14/06/2006 12:48:43.697  000>> Listener:Sending Empty bundle request...
237.1529 +14/06/2006 12:48:43.697  000>> Listener(receiveBOffer):But we can not restart connection...
237.1530 +14/06/2006 12:48:43.697  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29481
237.1531 +14/06/2006 12:48:43.697  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29909
237.1532 +14/06/2006 12:48:43.707  000>> Good datagram received!
237.1533 +14/06/2006 12:48:43.707  000>> Initiator:No more requested bundles
237.1534 +14/06/2006 12:48:43.707  000>> Listener(receiveBundles):We can restart connection...
237.1535 +14/06/2006 12:48:43.807  000>> Hello Procedure:SENDSYN
237.1536 +14/06/2006 12:48:43.807  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29482
237.1537 +14/06/2006 12:48:43.868  000>> 91>>>>>>>>>>Part datagram received!
237.1538 +14/06/2006 12:48:43.868  000>> 91>>>>>>>>>>Complete!
237.1539 +14/06/2006 12:48:43.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29910
237.1540 +14/06/2006 12:48:43.868  000>> Good datagram received!
237.1541 +14/06/2006 12:48:43.868  000>> Receive Hello:SYNACK
237.1542 +14/06/2006 12:48:43.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29483
237.1543 +14/06/2006 12:48:43.968  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1544 +14/06/2006 12:48:43.968  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29484
237.1545 +14/06/2006 12:48:43.968  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29485
237.1546 +14/06/2006 12:48:43.968  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29486
237.1547 +14/06/2006 12:48:44.118  000>> 78>>>>>>>>>>Part datagram received!
237.1548 +14/06/2006 12:48:44.118  000>> 78>>>>>>>>>>Complete!
237.1549 +14/06/2006 12:48:44.118  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29911
237.1550 +14/06/2006 12:48:44.118  000>> Good datagram received!
237.1551 +14/06/2006 12:48:44.118  000>> Initiator:No more requested bundles
237.1552 +14/06/2006 12:48:44.118  000>> Initiator:But we can not restart connection...
237.1553 +14/06/2006 12:48:44.288  000>> 826>>>>>>>>>>Part datagram received!
237.1554 +14/06/2006 12:48:44.288  000>> 826>>>>>>>>>>Complete!
237.1555 +14/06/2006 12:48:44.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29912
237.1556 +14/06/2006 12:48:44.288  000>> Good datagram received!
237.1557 +14/06/2006 12:48:44.288  000>> Listener:Received dictionary
237.1558 +14/06/2006 12:48:44.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29913
237.1559 +14/06/2006 12:48:44.288  000>> Good datagram received!
237.1560 +14/06/2006 12:48:44.288  000>> Listener:Received RIB
237.1561 +14/06/2006 12:48:44.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29914
237.1562 +14/06/2006 12:48:44.288  000>> Good datagram received!
237.1563 +14/06/2006 12:48:44.308  000>> Listener:Received Bundle Offer
237.1564 +14/06/2006 12:48:44.308  000>> Listener:Sending Empty bundle request...
237.1565 +14/06/2006 12:48:44.308  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.1566 +14/06/2006 12:48:44.308  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29487
237.1567 +14/06/2006 12:48:44.468  000>> 91>>>>>>>>>>Part datagram received!
237.1568 +14/06/2006 12:48:44.468  000>> 91>>>>>>>>>>Complete!
237.1569 +14/06/2006 12:48:44.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29915
237.1570 +14/06/2006 12:48:44.468  000>> Good datagram received!
237.1571 +14/06/2006 12:48:44.468  000>> Receive Hello:SYN
237.1572 +14/06/2006 12:48:44.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29488
237.1573 +14/06/2006 12:48:44.488  000>> 91>>>>>>>>>>Part datagram received!
237.1574 +14/06/2006 12:48:44.488  000>> 91>>>>>>>>>>Complete!
237.1575 +14/06/2006 12:48:44.488  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29916
237.1576 +14/06/2006 12:48:44.488  000>> Good datagram received!
237.1577 +14/06/2006 12:48:44.488  000>> Receive Hello:ACK
237.1578 +14/06/2006 12:48:44.589  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1579 +14/06/2006 12:48:44.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29489
237.1580 +14/06/2006 12:48:44.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29490
237.1581 +14/06/2006 12:48:44.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29491
237.1582 +14/06/2006 12:48:44.609  000>> 98>>>>>>>>>>Part datagram received!
237.1583 +14/06/2006 12:48:44.609  000>> 98>>>>>>>>>>Complete!
237.1584 +14/06/2006 12:48:44.609  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29917
237.1585 +14/06/2006 12:48:44.609  000>> Good datagram received!
237.1586 +14/06/2006 12:48:44.609  000>> Listener:Received dictionary
237.1587 +14/06/2006 12:48:44.609  000>> 90>>>>>>>>>>Part datagram received!
237.1588 +14/06/2006 12:48:44.609  000>> 90>>>>>>>>>>Complete!
237.1589 +14/06/2006 12:48:44.609  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29918
237.1590 +14/06/2006 12:48:44.609  000>> Good datagram received!
237.1591 +14/06/2006 12:48:44.609  000>> Listener:Received RIB
237.1592 +14/06/2006 12:48:44.789  000>> 716>>>>>>>>>>Part datagram received!
237.1593 +14/06/2006 12:48:44.789  000>> 716>>>>>>>>>>Complete!
237.1594 +14/06/2006 12:48:44.789  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29919
237.1595 +14/06/2006 12:48:44.789  000>> Good datagram received!
237.1596 +14/06/2006 12:48:44.799  000>> Listener:Received Bundle Offer
237.1597 +14/06/2006 12:48:44.809  000>> Listener:Sending Empty bundle request...
237.1598 +14/06/2006 12:48:44.809  000>> Listener(receiveBOffer):But we can not restart connection...
237.1599 +14/06/2006 12:48:44.809  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29492
237.1600 +14/06/2006 12:48:44.809  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29920
237.1601 +14/06/2006 12:48:44.809  000>> Good datagram received!
237.1602 +14/06/2006 12:48:44.809  000>> Initiator:No more requested bundles
237.1603 +14/06/2006 12:48:44.809  000>> Listener(receiveBundles):We can restart connection...
237.1604 +14/06/2006 12:48:44.909  000>> Hello Procedure:SENDSYN
237.1605 +14/06/2006 12:48:44.909  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29493
237.1606 +14/06/2006 12:48:44.979  000>> 91>>>>>>>>>>Part datagram received!
237.1607 +14/06/2006 12:48:44.989  000>> 91>>>>>>>>>>Complete!
237.1608 +14/06/2006 12:48:44.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29921
237.1609 +14/06/2006 12:48:44.989  000>> Good datagram received!
237.1610 +14/06/2006 12:48:44.989  000>> Receive Hello:SYNACK
237.1611 +14/06/2006 12:48:44.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29494
237.1612 +14/06/2006 12:48:45.089  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1613 +14/06/2006 12:48:45.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29495
237.1614 +14/06/2006 12:48:45.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29496
237.1615 +14/06/2006 12:48:45.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29497
237.1616 +14/06/2006 12:48:45.119  000>> 98>>>>>>>>>>Part datagram received!
237.1617 +14/06/2006 12:48:45.119  000>> 98>>>>>>>>>>Complete!
237.1618 +14/06/2006 12:48:45.119  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29922
237.1619 +14/06/2006 12:48:45.119  000>> Good datagram received!
237.1620 +14/06/2006 12:48:45.119  000>> Listener:Received dictionary
237.1621 +14/06/2006 12:48:45.119  000>> 90>>>>>>>>>>Part datagram received!
237.1622 +14/06/2006 12:48:45.119  000>> 90>>>>>>>>>>Complete!
237.1623 +14/06/2006 12:48:45.119  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29923
237.1624 +14/06/2006 12:48:45.119  000>> Good datagram received!
237.1625 +14/06/2006 12:48:45.129  000>> Listener:Received RIB
237.1626 +14/06/2006 12:48:45.290  000>> 716>>>>>>>>>>Part datagram received!
237.1627 +14/06/2006 12:48:45.290  000>> 716>>>>>>>>>>Complete!
237.1628 +14/06/2006 12:48:45.290  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29924
237.1629 +14/06/2006 12:48:45.290  000>> Good datagram received!
237.1630 +14/06/2006 12:48:45.310  000>> Listener:Received Bundle Offer
237.1631 +14/06/2006 12:48:45.310  000>> Listener:Sending Empty bundle request...
237.1632 +14/06/2006 12:48:45.310  000>> Listener(receiveBOffer):But we can not restart connection...
237.1633 +14/06/2006 12:48:45.310  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29498
237.1634 +14/06/2006 12:48:45.310  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29925
237.1635 +14/06/2006 12:48:45.310  000>> Good datagram received!
237.1636 +14/06/2006 12:48:45.310  000>> Initiator:No more requested bundles
237.1637 +14/06/2006 12:48:45.310  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.1638 +14/06/2006 12:48:45.430  000>> 91>>>>>>>>>>Part datagram received!
237.1639 +14/06/2006 12:48:45.430  000>> 91>>>>>>>>>>Complete!
237.1640 +14/06/2006 12:48:45.430  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29926
237.1641 +14/06/2006 12:48:45.430  000>> Good datagram received!
237.1642 +14/06/2006 12:48:45.440  000>> Receive Hello:SYN
237.1643 +14/06/2006 12:48:45.440  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29499
237.1644 +14/06/2006 12:48:45.460  000>> 91>>>>>>>>>>Part datagram received!
237.1645 +14/06/2006 12:48:45.460  000>> 91>>>>>>>>>>Complete!
237.1646 +14/06/2006 12:48:45.460  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29927
237.1647 +14/06/2006 12:48:45.460  000>> Good datagram received!
237.1648 +14/06/2006 12:48:45.460  000>> Receive Hello:ACK
237.1649 +14/06/2006 12:48:45.560  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1650 +14/06/2006 12:48:45.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29500
237.1651 +14/06/2006 12:48:45.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29501
237.1652 +14/06/2006 12:48:45.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29502
237.1653 +14/06/2006 12:48:45.560  000>> 98>>>>>>>>>>Part datagram received!
237.1654 +14/06/2006 12:48:45.560  000>> 98>>>>>>>>>>Complete!
237.1655 +14/06/2006 12:48:45.560  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29928
237.1656 +14/06/2006 12:48:45.570  000>> Good datagram received!
237.1657 +14/06/2006 12:48:45.570  000>> Listener:Received dictionary
237.1658 +14/06/2006 12:48:45.570  000>> 90>>>>>>>>>>Part datagram received!
237.1659 +14/06/2006 12:48:45.570  000>> 90>>>>>>>>>>Complete!
237.1660 +14/06/2006 12:48:45.570  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29929
237.1661 +14/06/2006 12:48:45.570  000>> Good datagram received!
237.1662 +14/06/2006 12:48:45.570  000>> Listener:Received RIB
237.1663 +14/06/2006 12:48:45.690  000>> 716>>>>>>>>>>Part datagram received!
237.1664 +14/06/2006 12:48:45.690  000>> 716>>>>>>>>>>Complete!
237.1665 +14/06/2006 12:48:45.690  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29930
237.1666 +14/06/2006 12:48:45.690  000>> Good datagram received!
237.1667 +14/06/2006 12:48:45.710  000>> Listener:Received Bundle Offer
237.1668 +14/06/2006 12:48:45.710  000>> Listener:Sending Empty bundle request...
237.1669 +14/06/2006 12:48:45.710  000>> Listener(receiveBOffer):But we can not restart connection...
237.1670 +14/06/2006 12:48:45.710  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29503
237.1671 +14/06/2006 12:48:45.710  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29931
237.1672 +14/06/2006 12:48:45.710  000>> Good datagram received!
237.1673 +14/06/2006 12:48:45.710  000>> Initiator:No more requested bundles
237.1674 +14/06/2006 12:48:45.710  000>> Listener(receiveBundles):We can restart connection...
237.1675 +14/06/2006 12:48:45.810  000>> Hello Procedure:SENDSYN
237.1676 +14/06/2006 12:48:45.810  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29504
237.1677 +14/06/2006 12:48:45.890  000>> 91>>>>>>>>>>Part datagram received!
237.1678 +14/06/2006 12:48:45.890  000>> 91>>>>>>>>>>Complete!
237.1679 +14/06/2006 12:48:45.890  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29932
237.1680 +14/06/2006 12:48:45.900  000>> Good datagram received!
237.1681 +14/06/2006 12:48:45.900  000>> Receive Hello:SYNACK
237.1682 +14/06/2006 12:48:45.900  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29505
237.1683 +14/06/2006 12:48:46.001  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1684 +14/06/2006 12:48:46.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29506
237.1685 +14/06/2006 12:48:46.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29507
237.1686 +14/06/2006 12:48:46.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29508
237.1687 +14/06/2006 12:48:46.101  000>> 78>>>>>>>>>>Part datagram received!
237.1688 +14/06/2006 12:48:46.101  000>> 78>>>>>>>>>>Complete!
237.1689 +14/06/2006 12:48:46.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29933
237.1690 +14/06/2006 12:48:46.111  000>> Good datagram received!
237.1691 +14/06/2006 12:48:46.111  000>> Initiator:No more requested bundles
237.1692 +14/06/2006 12:48:46.111  000>> Initiator:But we can not restart connection...
237.1693 +14/06/2006 12:48:46.291  000>> 826>>>>>>>>>>Part datagram received!
237.1694 +14/06/2006 12:48:46.291  000>> 826>>>>>>>>>>Complete!
237.1695 +14/06/2006 12:48:46.291  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29934
237.1696 +14/06/2006 12:48:46.291  000>> Good datagram received!
237.1697 +14/06/2006 12:48:46.291  000>> Listener:Received dictionary
237.1698 +14/06/2006 12:48:46.301  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29935
237.1699 +14/06/2006 12:48:46.301  000>> Good datagram received!
237.1700 +14/06/2006 12:48:46.301  000>> Listener:Received RIB
237.1701 +14/06/2006 12:48:46.301  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29936
237.1702 +14/06/2006 12:48:46.301  000>> Good datagram received!
237.1703 +14/06/2006 12:48:46.311  000>> Listener:Received Bundle Offer
237.1704 +14/06/2006 12:48:46.311  000>> Listener:Sending Empty bundle request...
237.1705 +14/06/2006 12:48:46.321  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.1706 +14/06/2006 12:48:46.321  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29509
237.1707 +14/06/2006 12:48:46.441  000>> 91>>>>>>>>>>Part datagram received!
237.1708 +14/06/2006 12:48:46.441  000>> 91>>>>>>>>>>Complete!
237.1709 +14/06/2006 12:48:46.451  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29937
237.1710 +14/06/2006 12:48:46.451  000>> Good datagram received!
237.1711 +14/06/2006 12:48:46.451  000>> Receive Hello:SYN
237.1712 +14/06/2006 12:48:46.451  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29510
237.1713 +14/06/2006 12:48:46.471  000>> 91>>>>>>>>>>Part datagram received!
237.1714 +14/06/2006 12:48:46.471  000>> 91>>>>>>>>>>Complete!
237.1715 +14/06/2006 12:48:46.471  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29938
237.1716 +14/06/2006 12:48:46.471  000>> Good datagram received!
237.1717 +14/06/2006 12:48:46.481  000>> Receive Hello:ACK
237.1718 +14/06/2006 12:48:46.581  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1719 +14/06/2006 12:48:46.581  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29511
237.1720 +14/06/2006 12:48:46.581  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29512
237.1721 +14/06/2006 12:48:46.581  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29513
237.1722 +14/06/2006 12:48:46.581  000>> 188>>>>>>>>>>Part datagram received!
237.1723 +14/06/2006 12:48:46.581  000>> 188>>>>>>>>>>Complete!
237.1724 +14/06/2006 12:48:46.581  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29939
237.1725 +14/06/2006 12:48:46.581  000>> Good datagram received!
237.1726 +14/06/2006 12:48:46.591  000>> Listener:Received dictionary
237.1727 +14/06/2006 12:48:46.591  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29940
237.1728 +14/06/2006 12:48:46.591  000>> Good datagram received!
237.1729 +14/06/2006 12:48:46.591  000>> Listener:Received RIB
237.1730 +14/06/2006 12:48:46.591  000>> 638>>>>>>>>>>Part datagram received!
237.1731 +14/06/2006 12:48:46.591  000>> 638>>>>>>>>>>Complete!
237.1732 +14/06/2006 12:48:46.591  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29941
237.1733 +14/06/2006 12:48:46.591  000>> Good datagram received!
237.1734 +14/06/2006 12:48:46.611  000>> Listener:Received Bundle Offer
237.1735 +14/06/2006 12:48:46.611  000>> Listener:Sending Empty bundle request...
237.1736 +14/06/2006 12:48:46.611  000>> Listener(receiveBOffer):But we can not restart connection...
237.1737 +14/06/2006 12:48:46.611  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29514
237.1738 +14/06/2006 12:48:46.611  000>> 0>>>>>>>>>>Part datagram received!
237.1739 +14/06/2006 12:48:46.611  000>> 0>>>>>>>>>>Part datagram received!
237.1740 +14/06/2006 12:48:46.692  000>> 78>>>>>>>>>>Part datagram received!
237.1741 +14/06/2006 12:48:46.692  000>> 78>>>>>>>>>>Complete!
237.1742 +14/06/2006 12:48:46.692  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29942
237.1743 +14/06/2006 12:48:46.692  000>> Good datagram received!
237.1744 +14/06/2006 12:48:46.692  000>> Initiator:No more requested bundles
237.1745 +14/06/2006 12:48:46.692  000>> Listener(receiveBundles):We can restart connection...
237.1746 +14/06/2006 12:48:46.792  000>> Hello Procedure:SENDSYN
237.1747 +14/06/2006 12:48:46.792  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29515
237.1748 +14/06/2006 12:48:46.872  000>> 91>>>>>>>>>>Part datagram received!
237.1749 +14/06/2006 12:48:46.872  000>> 91>>>>>>>>>>Complete!
237.1750 +14/06/2006 12:48:46.872  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29943
237.1751 +14/06/2006 12:48:46.872  000>> Good datagram received!
237.1752 +14/06/2006 12:48:46.872  000>> Receive Hello:SYNACK
237.1753 +14/06/2006 12:48:46.872  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29516
237.1754 +14/06/2006 12:48:46.972  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1755 +14/06/2006 12:48:46.972  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29517
237.1756 +14/06/2006 12:48:46.972  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29518
237.1757 +14/06/2006 12:48:46.982  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29519
237.1758 +14/06/2006 12:48:47.112  000>> 78>>>>>>>>>>Part datagram received!
237.1759 +14/06/2006 12:48:47.112  000>> 78>>>>>>>>>>Complete!
237.1760 +14/06/2006 12:48:47.112  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29944
237.1761 +14/06/2006 12:48:47.122  000>> Good datagram received!
237.1762 +14/06/2006 12:48:47.122  000>> Initiator:No more requested bundles
237.1763 +14/06/2006 12:48:47.122  000>> Initiator:But we can not restart connection...
237.1764 +14/06/2006 12:48:47.292  000>> 826>>>>>>>>>>Part datagram received!
237.1765 +14/06/2006 12:48:47.292  000>> 826>>>>>>>>>>Complete!
237.1766 +14/06/2006 12:48:47.292  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29945
237.1767 +14/06/2006 12:48:47.292  000>> Good datagram received!
237.1768 +14/06/2006 12:48:47.292  000>> Listener:Received dictionary
237.1769 +14/06/2006 12:48:47.302  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29946
237.1770 +14/06/2006 12:48:47.302  000>> Good datagram received!
237.1771 +14/06/2006 12:48:47.302  000>> Listener:Received RIB
237.1772 +14/06/2006 12:48:47.302  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29947
237.1773 +14/06/2006 12:48:47.302  000>> Good datagram received!
237.1774 +14/06/2006 12:48:47.312  000>> Listener:Received Bundle Offer
237.1775 +14/06/2006 12:48:47.312  000>> Listener:Sending Empty bundle request...
237.1776 +14/06/2006 12:48:47.323  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.1777 +14/06/2006 12:48:47.323  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29520
237.1778 +14/06/2006 12:48:47.463  000>> 91>>>>>>>>>>Part datagram received!
237.1779 +14/06/2006 12:48:47.463  000>> 91>>>>>>>>>>Complete!
237.1780 +14/06/2006 12:48:47.463  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29948
237.1781 +14/06/2006 12:48:47.463  000>> Good datagram received!
237.1782 +14/06/2006 12:48:47.463  000>> Receive Hello:SYN
237.1783 +14/06/2006 12:48:47.463  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29521
237.1784 +14/06/2006 12:48:47.513  000>> 91>>>>>>>>>>Part datagram received!
237.1785 +14/06/2006 12:48:47.513  000>> 91>>>>>>>>>>Complete!
237.1786 +14/06/2006 12:48:47.513  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29949
237.1787 +14/06/2006 12:48:47.513  000>> Good datagram received!
237.1788 +14/06/2006 12:48:47.513  000>> Receive Hello:ACK
237.1789 +14/06/2006 12:48:47.613  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1790 +14/06/2006 12:48:47.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29522
237.1791 +14/06/2006 12:48:47.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29523
237.1792 +14/06/2006 12:48:47.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29524
237.1793 +14/06/2006 12:48:47.613  000>> 98>>>>>>>>>>Part datagram received!
237.1794 +14/06/2006 12:48:47.613  000>> 98>>>>>>>>>>Complete!
237.1795 +14/06/2006 12:48:47.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29950
237.1796 +14/06/2006 12:48:47.623  000>> Good datagram received!
237.1797 +14/06/2006 12:48:47.623  000>> Listener:Received dictionary
237.1798 +14/06/2006 12:48:47.623  000>> 90>>>>>>>>>>Part datagram received!
237.1799 +14/06/2006 12:48:47.623  000>> 90>>>>>>>>>>Complete!
237.1800 +14/06/2006 12:48:47.623  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29951
237.1801 +14/06/2006 12:48:47.623  000>> Good datagram received!
237.1802 +14/06/2006 12:48:47.623  000>> Listener:Received RIB
237.1803 +14/06/2006 12:48:47.793  000>> 716>>>>>>>>>>Part datagram received!
237.1804 +14/06/2006 12:48:47.793  000>> 716>>>>>>>>>>Complete!
237.1805 +14/06/2006 12:48:47.793  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29952
237.1806 +14/06/2006 12:48:47.803  000>> Good datagram received!
237.1807 +14/06/2006 12:48:47.813  000>> Listener:Received Bundle Offer
237.1808 +14/06/2006 12:48:47.813  000>> Listener:Sending Empty bundle request...
237.1809 +14/06/2006 12:48:47.813  000>> Listener(receiveBOffer):But we can not restart connection...
237.1810 +14/06/2006 12:48:47.813  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29525
237.1811 +14/06/2006 12:48:47.813  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29953
237.1812 +14/06/2006 12:48:47.813  000>> Good datagram received!
237.1813 +14/06/2006 12:48:47.813  000>> Initiator:No more requested bundles
237.1814 +14/06/2006 12:48:47.813  000>> Listener(receiveBundles):We can restart connection...
237.1815 +14/06/2006 12:48:47.913  000>> Hello Procedure:SENDSYN
237.1816 +14/06/2006 12:48:47.913  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29526
237.1817 +14/06/2006 12:48:47.993  000>> 91>>>>>>>>>>Part datagram received!
237.1818 +14/06/2006 12:48:47.993  000>> 91>>>>>>>>>>Complete!
237.1819 +14/06/2006 12:48:47.993  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29954
237.1820 +14/06/2006 12:48:47.993  000>> Good datagram received!
237.1821 +14/06/2006 12:48:47.993  000>> Receive Hello:SYNACK
237.1822 +14/06/2006 12:48:47.993  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29527
237.1823 +14/06/2006 12:48:48.094  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1824 +14/06/2006 12:48:48.094  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29528
237.1825 +14/06/2006 12:48:48.094  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29529
237.1826 +14/06/2006 12:48:48.094  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29530
237.1827 +14/06/2006 12:48:48.114  000>> 98>>>>>>>>>>Part datagram received!
237.1828 +14/06/2006 12:48:48.124  000>> 98>>>>>>>>>>Complete!
237.1829 +14/06/2006 12:48:48.124  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29955
237.1830 +14/06/2006 12:48:48.124  000>> Good datagram received!
237.1831 +14/06/2006 12:48:48.124  000>> Listener:Received dictionary
237.1832 +14/06/2006 12:48:48.124  000>> 90>>>>>>>>>>Part datagram received!
237.1833 +14/06/2006 12:48:48.124  000>> 90>>>>>>>>>>Complete!
237.1834 +14/06/2006 12:48:48.124  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29956
237.1835 +14/06/2006 12:48:48.124  000>> Good datagram received!
237.1836 +14/06/2006 12:48:48.124  000>> Listener:Received RIB
237.1837 +14/06/2006 12:48:48.294  000>> 716>>>>>>>>>>Part datagram received!
237.1838 +14/06/2006 12:48:48.294  000>> 716>>>>>>>>>>Complete!
237.1839 +14/06/2006 12:48:48.304  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29957
237.1840 +14/06/2006 12:48:48.304  000>> Good datagram received!
237.1841 +14/06/2006 12:48:48.314  000>> Listener:Received Bundle Offer
237.1842 +14/06/2006 12:48:48.314  000>> Listener:Sending Empty bundle request...
237.1843 +14/06/2006 12:48:48.314  000>> Listener(receiveBOffer):But we can not restart connection...
237.1844 +14/06/2006 12:48:48.314  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29531
237.1845 +14/06/2006 12:48:48.314  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29958
237.1846 +14/06/2006 12:48:48.314  000>> Good datagram received!
237.1847 +14/06/2006 12:48:48.314  000>> Initiator:No more requested bundles
237.1848 +14/06/2006 12:48:48.324  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.1849 +14/06/2006 12:48:48.434  000>> 91>>>>>>>>>>Part datagram received!
237.1850 +14/06/2006 12:48:48.434  000>> 91>>>>>>>>>>Complete!
237.1851 +14/06/2006 12:48:48.434  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29959
237.1852 +14/06/2006 12:48:48.434  000>> Good datagram received!
237.1853 +14/06/2006 12:48:48.444  000>> Receive Hello:SYN
237.1854 +14/06/2006 12:48:48.444  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29532
237.1855 +14/06/2006 12:48:48.464  000>> 91>>>>>>>>>>Part datagram received!
237.1856 +14/06/2006 12:48:48.464  000>> 91>>>>>>>>>>Complete!
237.1857 +14/06/2006 12:48:48.464  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29960
237.1858 +14/06/2006 12:48:48.464  000>> Good datagram received!
237.1859 +14/06/2006 12:48:48.464  000>> Receive Hello:ACK
237.1860 +14/06/2006 12:48:48.564  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1861 +14/06/2006 12:48:48.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29533
237.1862 +14/06/2006 12:48:48.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29534
237.1863 +14/06/2006 12:48:48.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29535
237.1864 +14/06/2006 12:48:48.564  000>> 98>>>>>>>>>>Part datagram received!
237.1865 +14/06/2006 12:48:48.564  000>> 98>>>>>>>>>>Complete!
237.1866 +14/06/2006 12:48:48.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29961
237.1867 +14/06/2006 12:48:48.564  000>> Good datagram received!
237.1868 +14/06/2006 12:48:48.564  000>> Listener:Received dictionary
237.1869 +14/06/2006 12:48:48.574  000>> 90>>>>>>>>>>Part datagram received!
237.1870 +14/06/2006 12:48:48.574  000>> 90>>>>>>>>>>Complete!
237.1871 +14/06/2006 12:48:48.574  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29962
237.1872 +14/06/2006 12:48:48.574  000>> Good datagram received!
237.1873 +14/06/2006 12:48:48.574  000>> Listener:Received RIB
237.1874 +14/06/2006 12:48:48.704  000>> 716>>>>>>>>>>Part datagram received!
237.1875 +14/06/2006 12:48:48.704  000>> 716>>>>>>>>>>Complete!
237.1876 +14/06/2006 12:48:48.704  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29963
237.1877 +14/06/2006 12:48:48.704  000>> Good datagram received!
237.1878 +14/06/2006 12:48:48.704  000>> Listener:Received Bundle Offer
237.1879 +14/06/2006 12:48:48.704  000>> Listener:Sending Empty bundle request...
237.1880 +14/06/2006 12:48:48.704  000>> Listener(receiveBOffer):But we can not restart connection...
237.1881 +14/06/2006 12:48:48.704  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29536
237.1882 +14/06/2006 12:48:48.704  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29964
237.1883 +14/06/2006 12:48:48.704  000>> Good datagram received!
237.1884 +14/06/2006 12:48:48.704  000>> Initiator:No more requested bundles
237.1885 +14/06/2006 12:48:48.704  000>> Listener(receiveBundles):We can restart connection...
237.1886 +14/06/2006 12:48:48.805  000>> Hello Procedure:SENDSYN
237.1887 +14/06/2006 12:48:48.805  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29537
237.1888 +14/06/2006 12:48:48.955  000>> 91>>>>>>>>>>Part datagram received!
237.1889 +14/06/2006 12:48:48.955  000>> 91>>>>>>>>>>Complete!
237.1890 +14/06/2006 12:48:48.955  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29965
237.1891 +14/06/2006 12:48:48.955  000>> Good datagram received!
237.1892 +14/06/2006 12:48:48.955  000>> Receive Hello:SYNACK
237.1893 +14/06/2006 12:48:48.955  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29538
237.1894 +14/06/2006 12:48:49.055  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1895 +14/06/2006 12:48:49.055  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29539
237.1896 +14/06/2006 12:48:49.055  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29540
237.1897 +14/06/2006 12:48:49.055  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29541
237.1898 +14/06/2006 12:48:49.075  000>> 98>>>>>>>>>>Part datagram received!
237.1899 +14/06/2006 12:48:49.075  000>> 98>>>>>>>>>>Complete!
237.1900 +14/06/2006 12:48:49.075  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29966
237.1901 +14/06/2006 12:48:49.085  000>> Good datagram received!
237.1902 +14/06/2006 12:48:49.085  000>> Listener:Received dictionary
237.1903 +14/06/2006 12:48:49.085  000>> 90>>>>>>>>>>Part datagram received!
237.1904 +14/06/2006 12:48:49.085  000>> 90>>>>>>>>>>Complete!
237.1905 +14/06/2006 12:48:49.085  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29967
237.1906 +14/06/2006 12:48:49.085  000>> Good datagram received!
237.1907 +14/06/2006 12:48:49.085  000>> Listener:Received RIB
237.1908 +14/06/2006 12:48:49.205  000>> 716>>>>>>>>>>Part datagram received!
237.1909 +14/06/2006 12:48:49.205  000>> 716>>>>>>>>>>Complete!
237.1910 +14/06/2006 12:48:49.205  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29968
237.1911 +14/06/2006 12:48:49.205  000>> Good datagram received!
237.1912 +14/06/2006 12:48:49.215  000>> Listener:Received Bundle Offer
237.1913 +14/06/2006 12:48:49.215  000>> Listener:Sending Empty bundle request...
237.1914 +14/06/2006 12:48:49.225  000>> Listener(receiveBOffer):But we can not restart connection...
237.1915 +14/06/2006 12:48:49.225  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29542
237.1916 +14/06/2006 12:48:49.225  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29969
237.1917 +14/06/2006 12:48:49.225  000>> Good datagram received!
237.1918 +14/06/2006 12:48:49.225  000>> Initiator:No more requested bundles
237.1919 +14/06/2006 12:48:49.225  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.1920 +14/06/2006 12:48:49.355  000>> 91>>>>>>>>>>Part datagram received!
237.1921 +14/06/2006 12:48:49.355  000>> 91>>>>>>>>>>Complete!
237.1922 +14/06/2006 12:48:49.355  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29970
237.1923 +14/06/2006 12:48:49.355  000>> Good datagram received!
237.1924 +14/06/2006 12:48:49.365  000>> Receive Hello:SYN
237.1925 +14/06/2006 12:48:49.365  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29543
237.1926 +14/06/2006 12:48:49.395  000>> 91>>>>>>>>>>Part datagram received!
237.1927 +14/06/2006 12:48:49.395  000>> 91>>>>>>>>>>Complete!
237.1928 +14/06/2006 12:48:49.395  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29971
237.1929 +14/06/2006 12:48:49.395  000>> Good datagram received!
237.1930 +14/06/2006 12:48:49.395  000>> Receive Hello:ACK
237.1931 +14/06/2006 12:48:49.496  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1932 +14/06/2006 12:48:49.496  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29544
237.1933 +14/06/2006 12:48:49.496  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29545
237.1934 +14/06/2006 12:48:49.496  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29546
237.1935 +14/06/2006 12:48:49.496  000>> 188>>>>>>>>>>Part datagram received!
237.1936 +14/06/2006 12:48:49.496  000>> 188>>>>>>>>>>Complete!
237.1937 +14/06/2006 12:48:49.496  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29972
237.1938 +14/06/2006 12:48:49.496  000>> Good datagram received!
237.1939 +14/06/2006 12:48:49.496  000>> Listener:Received dictionary
237.1940 +14/06/2006 12:48:49.506  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29973
237.1941 +14/06/2006 12:48:49.506  000>> Good datagram received!
237.1942 +14/06/2006 12:48:49.506  000>> Listener:Received RIB
237.1943 +14/06/2006 12:48:49.506  000>> 638>>>>>>>>>>Part datagram received!
237.1944 +14/06/2006 12:48:49.516  000>> 638>>>>>>>>>>Complete!
237.1945 +14/06/2006 12:48:49.516  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29974
237.1946 +14/06/2006 12:48:49.516  000>> Good datagram received!
237.1947 +14/06/2006 12:48:49.526  000>> Listener:Received Bundle Offer
237.1948 +14/06/2006 12:48:49.526  000>> Listener:Sending Empty bundle request...
237.1949 +14/06/2006 12:48:49.526  000>> Listener(receiveBOffer):But we can not restart connection...
237.1950 +14/06/2006 12:48:49.526  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29547
237.1951 +14/06/2006 12:48:49.526  000>> 0>>>>>>>>>>Part datagram received!
237.1952 +14/06/2006 12:48:49.536  000>> 0>>>>>>>>>>Part datagram received!
237.1953 +14/06/2006 12:48:49.616  000>> 78>>>>>>>>>>Part datagram received!
237.1954 +14/06/2006 12:48:49.616  000>> 78>>>>>>>>>>Complete!
237.1955 +14/06/2006 12:48:49.616  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29975
237.1956 +14/06/2006 12:48:49.616  000>> Good datagram received!
237.1957 +14/06/2006 12:48:49.616  000>> Initiator:No more requested bundles
237.1958 +14/06/2006 12:48:49.616  000>> Listener(receiveBundles):We can restart connection...
237.1959 +14/06/2006 12:48:49.716  000>> Hello Procedure:SENDSYN
237.1960 +14/06/2006 12:48:49.716  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29548
237.1961 +14/06/2006 12:48:49.776  000>> 91>>>>>>>>>>Part datagram received!
237.1962 +14/06/2006 12:48:49.776  000>> 91>>>>>>>>>>Complete!
237.1963 +14/06/2006 12:48:49.776  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29976
237.1964 +14/06/2006 12:48:49.776  000>> Good datagram received!
237.1965 +14/06/2006 12:48:49.776  000>> Receive Hello:SYNACK
237.1966 +14/06/2006 12:48:49.776  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29549
237.1967 +14/06/2006 12:48:49.876  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.1968 +14/06/2006 12:48:49.876  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29550
237.1969 +14/06/2006 12:48:49.876  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29551
237.1970 +14/06/2006 12:48:49.876  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29552
237.1971 +14/06/2006 12:48:49.946  000>> 98>>>>>>>>>>Part datagram received!
237.1972 +14/06/2006 12:48:49.946  000>> 98>>>>>>>>>>Complete!
237.1973 +14/06/2006 12:48:49.946  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29977
237.1974 +14/06/2006 12:48:49.946  000>> Good datagram received!
237.1975 +14/06/2006 12:48:49.946  000>> Listener:Received dictionary
237.1976 +14/06/2006 12:48:49.946  000>> 90>>>>>>>>>>Part datagram received!
237.1977 +14/06/2006 12:48:49.946  000>> 90>>>>>>>>>>Complete!
237.1978 +14/06/2006 12:48:49.946  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29978
237.1979 +14/06/2006 12:48:49.946  000>> Good datagram received!
237.1980 +14/06/2006 12:48:49.946  000>> Listener:Received RIB
237.1981 +14/06/2006 12:48:50.107  000>> 716>>>>>>>>>>Part datagram received!
237.1982 +14/06/2006 12:48:50.107  000>> 716>>>>>>>>>>Complete!
237.1983 +14/06/2006 12:48:50.107  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29979
237.1984 +14/06/2006 12:48:50.107  000>> Good datagram received!
237.1985 +14/06/2006 12:48:50.117  000>> Listener:Received Bundle Offer
237.1986 +14/06/2006 12:48:50.117  000>> Listener:Sending Empty bundle request...
237.1987 +14/06/2006 12:48:50.117  000>> Listener(receiveBOffer):But we can not restart connection...
237.1988 +14/06/2006 12:48:50.117  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29553
237.1989 +14/06/2006 12:48:50.127  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29980
237.1990 +14/06/2006 12:48:50.127  000>> Good datagram received!
237.1991 +14/06/2006 12:48:50.127  000>> Initiator:No more requested bundles
237.1992 +14/06/2006 12:48:50.127  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.1993 +14/06/2006 12:48:50.247  000>> 91>>>>>>>>>>Part datagram received!
237.1994 +14/06/2006 12:48:50.247  000>> 91>>>>>>>>>>Complete!
237.1995 +14/06/2006 12:48:50.247  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29981
237.1996 +14/06/2006 12:48:50.257  000>> Good datagram received!
237.1997 +14/06/2006 12:48:50.257  000>> Receive Hello:SYN
237.1998 +14/06/2006 12:48:50.257  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29554
237.1999 +14/06/2006 12:48:50.277  000>> 91>>>>>>>>>>Part datagram received!
237.2000 +14/06/2006 12:48:50.277  000>> 91>>>>>>>>>>Complete!
237.2001 +14/06/2006 12:48:50.277  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29982
237.2002 +14/06/2006 12:48:50.277  000>> Good datagram received!
237.2003 +14/06/2006 12:48:50.277  000>> Receive Hello:ACK
237.2004 +14/06/2006 12:48:50.387  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2005 +14/06/2006 12:48:50.387  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29555
237.2006 +14/06/2006 12:48:50.387  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29556
237.2007 +14/06/2006 12:48:50.387  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29557
237.2008 +14/06/2006 12:48:50.387  000>> 188>>>>>>>>>>Part datagram received!
237.2009 +14/06/2006 12:48:50.387  000>> 188>>>>>>>>>>Complete!
237.2010 +14/06/2006 12:48:50.387  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29983
237.2011 +14/06/2006 12:48:50.387  000>> Good datagram received!
237.2012 +14/06/2006 12:48:50.387  000>> Listener:Received dictionary
237.2013 +14/06/2006 12:48:50.397  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29984
237.2014 +14/06/2006 12:48:50.397  000>> Good datagram received!
237.2015 +14/06/2006 12:48:50.397  000>> Listener:Received RIB
237.2016 +14/06/2006 12:48:50.397  000>> 638>>>>>>>>>>Part datagram received!
237.2017 +14/06/2006 12:48:50.397  000>> 638>>>>>>>>>>Complete!
237.2018 +14/06/2006 12:48:50.397  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29985
237.2019 +14/06/2006 12:48:50.397  000>> Good datagram received!
237.2020 +14/06/2006 12:48:50.417  000>> Listener:Received Bundle Offer
237.2021 +14/06/2006 12:48:50.417  000>> Listener:Sending Empty bundle request...
237.2022 +14/06/2006 12:48:50.417  000>> Listener(receiveBOffer):But we can not restart connection...
237.2023 +14/06/2006 12:48:50.417  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29558
237.2024 +14/06/2006 12:48:50.417  000>> 0>>>>>>>>>>Part datagram received!
237.2025 +14/06/2006 12:48:50.417  000>> 0>>>>>>>>>>Part datagram received!
237.2026 +14/06/2006 12:48:50.497  000>> 78>>>>>>>>>>Part datagram received!
237.2027 +14/06/2006 12:48:50.497  000>> 78>>>>>>>>>>Complete!
237.2028 +14/06/2006 12:48:50.497  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29986
237.2029 +14/06/2006 12:48:50.497  000>> Good datagram received!
237.2030 +14/06/2006 12:48:50.497  000>> Initiator:No more requested bundles
237.2031 +14/06/2006 12:48:50.497  000>> Listener(receiveBundles):We can restart connection...
237.2032 +14/06/2006 12:48:50.597  000>> Hello Procedure:SENDSYN
237.2033 +14/06/2006 12:48:50.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29559
237.2034 +14/06/2006 12:48:50.667  000>> 91>>>>>>>>>>Part datagram received!
237.2035 +14/06/2006 12:48:50.677  000>> 91>>>>>>>>>>Complete!
237.2036 +14/06/2006 12:48:50.677  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29987
237.2037 +14/06/2006 12:48:50.677  000>> Good datagram received!
237.2038 +14/06/2006 12:48:50.677  000>> Receive Hello:SYNACK
237.2039 +14/06/2006 12:48:50.677  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29560
237.2040 +14/06/2006 12:48:50.777  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2041 +14/06/2006 12:48:50.777  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29561
237.2042 +14/06/2006 12:48:50.777  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29562
237.2043 +14/06/2006 12:48:50.777  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29563
237.2044 +14/06/2006 12:48:50.808  000>> 98>>>>>>>>>>Part datagram received!
237.2045 +14/06/2006 12:48:50.808  000>> 98>>>>>>>>>>Complete!
237.2046 +14/06/2006 12:48:50.808  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29988
237.2047 +14/06/2006 12:48:50.818  000>> Good datagram received!
237.2048 +14/06/2006 12:48:50.818  000>> Listener:Received dictionary
237.2049 +14/06/2006 12:48:50.818  000>> 90>>>>>>>>>>Part datagram received!
237.2050 +14/06/2006 12:48:50.818  000>> 90>>>>>>>>>>Complete!
237.2051 +14/06/2006 12:48:50.818  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29989
237.2052 +14/06/2006 12:48:50.818  000>> Good datagram received!
237.2053 +14/06/2006 12:48:50.818  000>> Listener:Received RIB
237.2054 +14/06/2006 12:48:51.008  000>> 716>>>>>>>>>>Part datagram received!
237.2055 +14/06/2006 12:48:51.008  000>> 716>>>>>>>>>>Complete!
237.2056 +14/06/2006 12:48:51.008  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29990
237.2057 +14/06/2006 12:48:51.008  000>> Good datagram received!
237.2058 +14/06/2006 12:48:51.028  000>> Listener:Received Bundle Offer
237.2059 +14/06/2006 12:48:51.028  000>> Listener:Sending Empty bundle request...
237.2060 +14/06/2006 12:48:51.028  000>> Listener(receiveBOffer):But we can not restart connection...
237.2061 +14/06/2006 12:48:51.028  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29564
237.2062 +14/06/2006 12:48:51.028  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29991
237.2063 +14/06/2006 12:48:51.028  000>> Good datagram received!
237.2064 +14/06/2006 12:48:51.028  000>> Initiator:No more requested bundles
237.2065 +14/06/2006 12:48:51.028  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.2066 +14/06/2006 12:48:51.148  000>> 91>>>>>>>>>>Part datagram received!
237.2067 +14/06/2006 12:48:51.148  000>> 91>>>>>>>>>>Complete!
237.2068 +14/06/2006 12:48:51.148  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29992
237.2069 +14/06/2006 12:48:51.148  000>> Good datagram received!
237.2070 +14/06/2006 12:48:51.158  000>> Receive Hello:SYN
237.2071 +14/06/2006 12:48:51.158  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29565
237.2072 +14/06/2006 12:48:51.178  000>> 91>>>>>>>>>>Part datagram received!
237.2073 +14/06/2006 12:48:51.178  000>> 91>>>>>>>>>>Complete!
237.2074 +14/06/2006 12:48:51.178  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29993
237.2075 +14/06/2006 12:48:51.188  000>> Good datagram received!
237.2076 +14/06/2006 12:48:51.188  000>> Receive Hello:ACK
237.2077 +14/06/2006 12:48:51.288  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2078 +14/06/2006 12:48:51.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29566
237.2079 +14/06/2006 12:48:51.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29567
237.2080 +14/06/2006 12:48:51.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29568
237.2081 +14/06/2006 12:48:51.288  000>> 188>>>>>>>>>>Part datagram received!
237.2082 +14/06/2006 12:48:51.288  000>> 188>>>>>>>>>>Complete!
237.2083 +14/06/2006 12:48:51.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29994
237.2084 +14/06/2006 12:48:51.288  000>> Good datagram received!
237.2085 +14/06/2006 12:48:51.288  000>> Listener:Received dictionary
237.2086 +14/06/2006 12:48:51.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:29995
237.2087 +14/06/2006 12:48:51.298  000>> Good datagram received!
237.2088 +14/06/2006 12:48:51.298  000>> Listener:Received RIB
237.2089 +14/06/2006 12:48:51.298  000>> 638>>>>>>>>>>Part datagram received!
237.2090 +14/06/2006 12:48:51.298  000>> 638>>>>>>>>>>Complete!
237.2091 +14/06/2006 12:48:51.298  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:29996
237.2092 +14/06/2006 12:48:51.298  000>> Good datagram received!
237.2093 +14/06/2006 12:48:51.318  000>> Listener:Received Bundle Offer
237.2094 +14/06/2006 12:48:51.318  000>> Listener:Sending Empty bundle request...
237.2095 +14/06/2006 12:48:51.318  000>> Listener(receiveBOffer):But we can not restart connection...
237.2096 +14/06/2006 12:48:51.318  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29569
237.2097 +14/06/2006 12:48:51.318  000>> 0>>>>>>>>>>Part datagram received!
237.2098 +14/06/2006 12:48:51.318  000>> 0>>>>>>>>>>Part datagram received!
237.2099 +14/06/2006 12:48:51.398  000>> 78>>>>>>>>>>Part datagram received!
237.2100 +14/06/2006 12:48:51.398  000>> 78>>>>>>>>>>Complete!
237.2101 +14/06/2006 12:48:51.398  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:29997
237.2102 +14/06/2006 12:48:51.398  000>> Good datagram received!
237.2103 +14/06/2006 12:48:51.398  000>> Initiator:No more requested bundles
237.2104 +14/06/2006 12:48:51.398  000>> Listener(receiveBundles):We can restart connection...
237.2105 +14/06/2006 12:48:51.499  000>> Hello Procedure:SENDSYN
237.2106 +14/06/2006 12:48:51.499  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29570
237.2107 +14/06/2006 12:48:51.579  000>> 91>>>>>>>>>>Part datagram received!
237.2108 +14/06/2006 12:48:51.579  000>> 91>>>>>>>>>>Complete!
237.2109 +14/06/2006 12:48:51.579  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:29998
237.2110 +14/06/2006 12:48:51.579  000>> Good datagram received!
237.2111 +14/06/2006 12:48:51.579  000>> Receive Hello:SYNACK
237.2112 +14/06/2006 12:48:51.579  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29571
237.2113 +14/06/2006 12:48:51.679  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2114 +14/06/2006 12:48:51.679  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29572
237.2115 +14/06/2006 12:48:51.679  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29573
237.2116 +14/06/2006 12:48:51.679  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29574
237.2117 +14/06/2006 12:48:51.699  000>> 98>>>>>>>>>>Part datagram received!
237.2118 +14/06/2006 12:48:51.699  000>> 98>>>>>>>>>>Complete!
237.2119 +14/06/2006 12:48:51.709  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:29999
237.2120 +14/06/2006 12:48:51.709  000>> Good datagram received!
237.2121 +14/06/2006 12:48:51.709  000>> Listener:Received dictionary
237.2122 +14/06/2006 12:48:51.709  000>> 90>>>>>>>>>>Part datagram received!
237.2123 +14/06/2006 12:48:51.709  000>> 90>>>>>>>>>>Complete!
237.2124 +14/06/2006 12:48:51.709  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30000
237.2125 +14/06/2006 12:48:51.709  000>> Good datagram received!
237.2126 +14/06/2006 12:48:51.709  000>> Listener:Received RIB
237.2127 +14/06/2006 12:48:51.909  000>> 716>>>>>>>>>>Part datagram received!
237.2128 +14/06/2006 12:48:51.909  000>> 716>>>>>>>>>>Complete!
237.2129 +14/06/2006 12:48:51.909  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30001
237.2130 +14/06/2006 12:48:51.909  000>> Good datagram received!
237.2131 +14/06/2006 12:48:51.929  000>> Listener:Received Bundle Offer
237.2132 +14/06/2006 12:48:51.929  000>> Listener:Sending Empty bundle request...
237.2133 +14/06/2006 12:48:51.929  000>> Listener(receiveBOffer):But we can not restart connection...
237.2134 +14/06/2006 12:48:51.929  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29575
237.2135 +14/06/2006 12:48:51.929  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30002
237.2136 +14/06/2006 12:48:51.929  000>> Good datagram received!
237.2137 +14/06/2006 12:48:51.929  000>> Initiator:No more requested bundles
237.2138 +14/06/2006 12:48:51.929  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.2139 +14/06/2006 12:48:52.049  000>> 91>>>>>>>>>>Part datagram received!
237.2140 +14/06/2006 12:48:52.049  000>> 91>>>>>>>>>>Complete!
237.2141 +14/06/2006 12:48:52.049  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30003
237.2142 +14/06/2006 12:48:52.049  000>> Good datagram received!
237.2143 +14/06/2006 12:48:52.059  000>> Receive Hello:SYN
237.2144 +14/06/2006 12:48:52.059  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29576
237.2145 +14/06/2006 12:48:52.089  000>> 91>>>>>>>>>>Part datagram received!
237.2146 +14/06/2006 12:48:52.089  000>> 91>>>>>>>>>>Complete!
237.2147 +14/06/2006 12:48:52.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30004
237.2148 +14/06/2006 12:48:52.089  000>> Good datagram received!
237.2149 +14/06/2006 12:48:52.089  000>> Receive Hello:ACK
237.2150 +14/06/2006 12:48:52.190  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2151 +14/06/2006 12:48:52.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29577
237.2152 +14/06/2006 12:48:52.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29578
237.2153 +14/06/2006 12:48:52.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29579
237.2154 +14/06/2006 12:48:52.190  000>> 98>>>>>>>>>>Part datagram received!
237.2155 +14/06/2006 12:48:52.190  000>> 98>>>>>>>>>>Complete!
237.2156 +14/06/2006 12:48:52.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30005
237.2157 +14/06/2006 12:48:52.200  000>> Good datagram received!
237.2158 +14/06/2006 12:48:52.200  000>> Listener:Received dictionary
237.2159 +14/06/2006 12:48:52.200  000>> 90>>>>>>>>>>Part datagram received!
237.2160 +14/06/2006 12:48:52.200  000>> 90>>>>>>>>>>Complete!
237.2161 +14/06/2006 12:48:52.200  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30006
237.2162 +14/06/2006 12:48:52.200  000>> Good datagram received!
237.2163 +14/06/2006 12:48:52.200  000>> Listener:Received RIB
237.2164 +14/06/2006 12:48:52.310  000>> 716>>>>>>>>>>Part datagram received!
237.2165 +14/06/2006 12:48:52.310  000>> 716>>>>>>>>>>Complete!
237.2166 +14/06/2006 12:48:52.310  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30007
237.2167 +14/06/2006 12:48:52.320  000>> Good datagram received!
237.2168 +14/06/2006 12:48:52.330  000>> Listener:Received Bundle Offer
237.2169 +14/06/2006 12:48:52.330  000>> Listener:Sending Empty bundle request...
237.2170 +14/06/2006 12:48:52.330  000>> Listener(receiveBOffer):But we can not restart connection...
237.2171 +14/06/2006 12:48:52.330  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29580
237.2172 +14/06/2006 12:48:52.330  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30008
237.2173 +14/06/2006 12:48:52.330  000>> Good datagram received!
237.2174 +14/06/2006 12:48:52.330  000>> Initiator:No more requested bundles
237.2175 +14/06/2006 12:48:52.340  000>> Listener(receiveBundles):We can restart connection...
237.2176 +14/06/2006 12:48:52.450  000>> Hello Procedure:SENDSYN
237.2177 +14/06/2006 12:48:52.450  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29581
237.2178 +14/06/2006 12:48:52.480  000>> 91>>>>>>>>>>Part datagram received!
237.2179 +14/06/2006 12:48:52.480  000>> 91>>>>>>>>>>Complete!
237.2180 +14/06/2006 12:48:52.480  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30009
237.2181 +14/06/2006 12:48:52.480  000>> Good datagram received!
237.2182 +14/06/2006 12:48:52.480  000>> Receive Hello:SYNACK
237.2183 +14/06/2006 12:48:52.480  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29582
237.2184 +14/06/2006 12:48:52.580  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2185 +14/06/2006 12:48:52.580  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29583
237.2186 +14/06/2006 12:48:52.580  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29584
237.2187 +14/06/2006 12:48:52.590  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29585
237.2188 +14/06/2006 12:48:52.600  000>> 98>>>>>>>>>>Part datagram received!
237.2189 +14/06/2006 12:48:52.600  000>> 98>>>>>>>>>>Complete!
237.2190 +14/06/2006 12:48:52.610  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30010
237.2191 +14/06/2006 12:48:52.610  000>> Good datagram received!
237.2192 +14/06/2006 12:48:52.610  000>> Listener:Received dictionary
237.2193 +14/06/2006 12:48:52.610  000>> 90>>>>>>>>>>Part datagram received!
237.2194 +14/06/2006 12:48:52.610  000>> 90>>>>>>>>>>Complete!
237.2195 +14/06/2006 12:48:52.610  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30011
237.2196 +14/06/2006 12:48:52.610  000>> Good datagram received!
237.2197 +14/06/2006 12:48:52.610  000>> Listener:Received RIB
237.2198 +14/06/2006 12:48:52.810  000>> 716>>>>>>>>>>Part datagram received!
237.2199 +14/06/2006 12:48:52.820  000>> 716>>>>>>>>>>Complete!
237.2200 +14/06/2006 12:48:52.820  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30012
237.2201 +14/06/2006 12:48:52.820  000>> Good datagram received!
237.2202 +14/06/2006 12:48:52.830  000>> Listener:Received Bundle Offer
237.2203 +14/06/2006 12:48:52.830  000>> Listener:Sending Empty bundle request...
237.2204 +14/06/2006 12:48:52.830  000>> Listener(receiveBOffer):But we can not restart connection...
237.2205 +14/06/2006 12:48:52.830  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29586
237.2206 +14/06/2006 12:48:52.830  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30013
237.2207 +14/06/2006 12:48:52.830  000>> Good datagram received!
237.2208 +14/06/2006 12:48:52.840  000>> Initiator:No more requested bundles
237.2209 +14/06/2006 12:48:52.840  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.2210 +14/06/2006 12:48:52.951  000>> 91>>>>>>>>>>Part datagram received!
237.2211 +14/06/2006 12:48:52.951  000>> 91>>>>>>>>>>Complete!
237.2212 +14/06/2006 12:48:52.951  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30014
237.2213 +14/06/2006 12:48:52.951  000>> Good datagram received!
237.2214 +14/06/2006 12:48:52.951  000>> Receive Hello:SYN
237.2215 +14/06/2006 12:48:52.951  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29587
237.2216 +14/06/2006 12:48:52.971  000>> 91>>>>>>>>>>Part datagram received!
237.2217 +14/06/2006 12:48:52.971  000>> 91>>>>>>>>>>Complete!
237.2218 +14/06/2006 12:48:52.981  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30015
237.2219 +14/06/2006 12:48:52.981  000>> Good datagram received!
237.2220 +14/06/2006 12:48:52.981  000>> Receive Hello:ACK
237.2221 +14/06/2006 12:48:53.081  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2222 +14/06/2006 12:48:53.081  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29588
237.2223 +14/06/2006 12:48:53.081  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29589
237.2224 +14/06/2006 12:48:53.081  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29590
237.2225 +14/06/2006 12:48:53.081  000>> 98>>>>>>>>>>Part datagram received!
237.2226 +14/06/2006 12:48:53.091  000>> 98>>>>>>>>>>Complete!
237.2227 +14/06/2006 12:48:53.091  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30016
237.2228 +14/06/2006 12:48:53.091  000>> Good datagram received!
237.2229 +14/06/2006 12:48:53.091  000>> Listener:Received dictionary
237.2230 +14/06/2006 12:48:53.091  000>> 90>>>>>>>>>>Part datagram received!
237.2231 +14/06/2006 12:48:53.091  000>> 90>>>>>>>>>>Complete!
237.2232 +14/06/2006 12:48:53.091  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30017
237.2233 +14/06/2006 12:48:53.091  000>> Good datagram received!
237.2234 +14/06/2006 12:48:53.091  000>> Listener:Received RIB
237.2235 +14/06/2006 12:48:53.211  000>> 716>>>>>>>>>>Part datagram received!
237.2236 +14/06/2006 12:48:53.211  000>> 716>>>>>>>>>>Complete!
237.2237 +14/06/2006 12:48:53.211  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30018
237.2238 +14/06/2006 12:48:53.211  000>> Good datagram received!
237.2239 +14/06/2006 12:48:53.231  000>> Listener:Received Bundle Offer
237.2240 +14/06/2006 12:48:53.231  000>> Listener:Sending Empty bundle request...
237.2241 +14/06/2006 12:48:53.231  000>> Listener(receiveBOffer):But we can not restart connection...
237.2242 +14/06/2006 12:48:53.231  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29591
237.2243 +14/06/2006 12:48:53.231  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30019
237.2244 +14/06/2006 12:48:53.231  000>> Good datagram received!
237.2245 +14/06/2006 12:48:53.231  000>> Initiator:No more requested bundles
237.2246 +14/06/2006 12:48:53.241  000>> Listener(receiveBundles):We can restart connection...
237.2247 +14/06/2006 12:48:53.341  000>> Hello Procedure:SENDSYN
237.2248 +14/06/2006 12:48:53.341  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29592
237.2249 +14/06/2006 12:48:53.391  000>> 91>>>>>>>>>>Part datagram received!
237.2250 +14/06/2006 12:48:53.401  000>> 91>>>>>>>>>>Complete!
237.2251 +14/06/2006 12:48:53.401  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30020
237.2252 +14/06/2006 12:48:53.401  000>> Good datagram received!
237.2253 +14/06/2006 12:48:53.401  000>> Receive Hello:SYNACK
237.2254 +14/06/2006 12:48:53.401  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29593
237.2255 +14/06/2006 12:48:53.501  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2256 +14/06/2006 12:48:53.501  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29594
237.2257 +14/06/2006 12:48:53.501  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29595
237.2258 +14/06/2006 12:48:53.501  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29596
237.2259 +14/06/2006 12:48:53.521  000>> 98>>>>>>>>>>Part datagram received!
237.2260 +14/06/2006 12:48:53.521  000>> 98>>>>>>>>>>Complete!
237.2261 +14/06/2006 12:48:53.521  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30021
237.2262 +14/06/2006 12:48:53.521  000>> Good datagram received!
237.2263 +14/06/2006 12:48:53.521  000>> Listener:Received dictionary
237.2264 +14/06/2006 12:48:53.622  000>> 728>>>>>>>>>>Part datagram received!
237.2265 +14/06/2006 12:48:53.622  000>> 728>>>>>>>>>>Complete!
237.2266 +14/06/2006 12:48:53.632  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30022
237.2267 +14/06/2006 12:48:53.632  000>> Good datagram received!
237.2268 +14/06/2006 12:48:53.632  000>> Listener:Received RIB
237.2269 +14/06/2006 12:48:53.632  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30023
237.2270 +14/06/2006 12:48:53.632  000>> Good datagram received!
237.2271 +14/06/2006 12:48:53.642  000>> Listener:Received Bundle Offer
237.2272 +14/06/2006 12:48:53.652  000>> Listener:Sending Empty bundle request...
237.2273 +14/06/2006 12:48:53.652  000>> Listener(receiveBOffer):But we can not restart connection...
237.2274 +14/06/2006 12:48:53.652  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29597
237.2275 +14/06/2006 12:48:53.732  000>> 78>>>>>>>>>>Part datagram received!
237.2276 +14/06/2006 12:48:53.732  000>> 78>>>>>>>>>>Complete!
237.2277 +14/06/2006 12:48:53.732  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30024
237.2278 +14/06/2006 12:48:53.732  000>> Good datagram received!
237.2279 +14/06/2006 12:48:53.732  000>> Initiator:No more requested bundles
237.2280 +14/06/2006 12:48:53.732  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.2281 +14/06/2006 12:48:53.842  000>> 91>>>>>>>>>>Part datagram received!
237.2282 +14/06/2006 12:48:53.842  000>> 91>>>>>>>>>>Complete!
237.2283 +14/06/2006 12:48:53.842  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30025
237.2284 +14/06/2006 12:48:53.842  000>> Good datagram received!
237.2285 +14/06/2006 12:48:53.842  000>> Receive Hello:SYN
237.2286 +14/06/2006 12:48:53.842  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29598
237.2287 +14/06/2006 12:48:53.872  000>> 91>>>>>>>>>>Part datagram received!
237.2288 +14/06/2006 12:48:53.872  000>> 91>>>>>>>>>>Complete!
237.2289 +14/06/2006 12:48:53.872  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30026
237.2290 +14/06/2006 12:48:53.872  000>> Good datagram received!
237.2291 +14/06/2006 12:48:53.872  000>> Receive Hello:ACK
237.2292 +14/06/2006 12:48:53.972  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2293 +14/06/2006 12:48:53.972  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29599
237.2294 +14/06/2006 12:48:53.972  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29600
237.2295 +14/06/2006 12:48:53.972  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29601
237.2296 +14/06/2006 12:48:53.972  000>> 98>>>>>>>>>>Part datagram received!
237.2297 +14/06/2006 12:48:53.972  000>> 98>>>>>>>>>>Complete!
237.2298 +14/06/2006 12:48:53.972  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30027
237.2299 +14/06/2006 12:48:53.972  000>> Good datagram received!
237.2300 +14/06/2006 12:48:53.982  000>> Listener:Received dictionary
237.2301 +14/06/2006 12:48:53.982  000>> 90>>>>>>>>>>Part datagram received!
237.2302 +14/06/2006 12:48:53.982  000>> 90>>>>>>>>>>Complete!
237.2303 +14/06/2006 12:48:53.982  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30028
237.2304 +14/06/2006 12:48:53.982  000>> Good datagram received!
237.2305 +14/06/2006 12:48:53.982  000>> Listener:Received RIB
237.2306 +14/06/2006 12:48:53.982  000>> 0>>>>>>>>>>Part datagram received!
237.2307 +14/06/2006 12:48:53.982  000>> 0>>>>>>>>>>Part datagram received!
237.2308 +14/06/2006 12:48:53.982  000>> 638>>>>>>>>>>Part datagram received!
237.2309 +14/06/2006 12:48:53.982  000>> 638>>>>>>>>>>Complete!
237.2310 +14/06/2006 12:48:53.982  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30029
237.2311 +14/06/2006 12:48:53.992  000>> Good datagram received!
237.2312 +14/06/2006 12:48:54.002  000>> Listener:Received Bundle Offer
237.2313 +14/06/2006 12:48:54.002  000>> Listener:Sending Empty bundle request...
237.2314 +14/06/2006 12:48:54.002  000>> Listener(receiveBOffer):But we can not restart connection...
237.2315 +14/06/2006 12:48:54.002  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29602
237.2316 +14/06/2006 12:48:54.082  000>> 78>>>>>>>>>>Part datagram received!
237.2317 +14/06/2006 12:48:54.082  000>> 78>>>>>>>>>>Complete!
237.2318 +14/06/2006 12:48:54.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30030
237.2319 +14/06/2006 12:48:54.082  000>> Good datagram received!
237.2320 +14/06/2006 12:48:54.082  000>> Initiator:No more requested bundles
237.2321 +14/06/2006 12:48:54.082  000>> Listener(receiveBundles):We can restart connection...
237.2322 +14/06/2006 12:48:54.182  000>> Hello Procedure:SENDSYN
237.2323 +14/06/2006 12:48:54.182  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29603
237.2324 +14/06/2006 12:48:54.202  000>> 91>>>>>>>>>>Part datagram received!
237.2325 +14/06/2006 12:48:54.202  000>> 91>>>>>>>>>>Complete!
237.2326 +14/06/2006 12:48:54.202  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30031
237.2327 +14/06/2006 12:48:54.202  000>> Good datagram received!
237.2328 +14/06/2006 12:48:54.202  000>> Receive Hello:SYNACK
237.2329 +14/06/2006 12:48:54.202  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29604
237.2330 +14/06/2006 12:48:54.303  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2331 +14/06/2006 12:48:54.303  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29605
237.2332 +14/06/2006 12:48:54.303  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29606
237.2333 +14/06/2006 12:48:54.303  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29607
237.2334 +14/06/2006 12:48:54.333  000>> 98>>>>>>>>>>Part datagram received!
237.2335 +14/06/2006 12:48:54.333  000>> 98>>>>>>>>>>Complete!
237.2336 +14/06/2006 12:48:54.333  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30032
237.2337 +14/06/2006 12:48:54.343  000>> Good datagram received!
237.2338 +14/06/2006 12:48:54.343  000>> Listener:Received dictionary
237.2339 +14/06/2006 12:48:54.363  000>> 90>>>>>>>>>>Part datagram received!
237.2340 +14/06/2006 12:48:54.363  000>> 90>>>>>>>>>>Complete!
237.2341 +14/06/2006 12:48:54.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30033
237.2342 +14/06/2006 12:48:54.363  000>> Good datagram received!
237.2343 +14/06/2006 12:48:54.363  000>> Listener:Received RIB
237.2344 +14/06/2006 12:48:54.523  000>> 716>>>>>>>>>>Part datagram received!
237.2345 +14/06/2006 12:48:54.523  000>> 716>>>>>>>>>>Complete!
237.2346 +14/06/2006 12:48:54.523  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30034
237.2347 +14/06/2006 12:48:54.523  000>> Good datagram received!
237.2348 +14/06/2006 12:48:54.533  000>> Listener:Received Bundle Offer
237.2349 +14/06/2006 12:48:54.533  000>> Listener:Sending Empty bundle request...
237.2350 +14/06/2006 12:48:54.533  000>> Listener(receiveBOffer):But we can not restart connection...
237.2351 +14/06/2006 12:48:54.533  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29608
237.2352 +14/06/2006 12:48:54.543  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30035
237.2353 +14/06/2006 12:48:54.543  000>> Good datagram received!
237.2354 +14/06/2006 12:48:54.543  000>> Initiator:No more requested bundles
237.2355 +14/06/2006 12:48:54.543  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.2356 +14/06/2006 12:48:54.653  000>> 91>>>>>>>>>>Part datagram received!
237.2357 +14/06/2006 12:48:54.653  000>> 91>>>>>>>>>>Complete!
237.2358 +14/06/2006 12:48:54.653  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30036
237.2359 +14/06/2006 12:48:54.663  000>> Good datagram received!
237.2360 +14/06/2006 12:48:54.663  000>> Receive Hello:SYN
237.2361 +14/06/2006 12:48:54.663  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29609
237.2362 +14/06/2006 12:48:54.984  000>> 91>>>>>>>>>>Part datagram received!
237.2363 +14/06/2006 12:48:54.984  000>> 91>>>>>>>>>>Complete!
237.2364 +14/06/2006 12:48:54.984  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30037
237.2365 +14/06/2006 12:48:54.984  000>> Good datagram received!
237.2366 +14/06/2006 12:48:54.984  000>> Receive Hello:ACK
237.2367 +14/06/2006 12:48:55.084  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2368 +14/06/2006 12:48:55.084  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29610
237.2369 +14/06/2006 12:48:55.084  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29611
237.2370 +14/06/2006 12:48:55.084  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29612
237.2371 +14/06/2006 12:48:55.084  000>> 98>>>>>>>>>>Part datagram received!
237.2372 +14/06/2006 12:48:55.084  000>> 98>>>>>>>>>>Complete!
237.2373 +14/06/2006 12:48:55.094  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30038
237.2374 +14/06/2006 12:48:55.094  000>> Good datagram received!
237.2375 +14/06/2006 12:48:55.094  000>> Listener:Received dictionary
237.2376 +14/06/2006 12:48:55.094  000>> 90>>>>>>>>>>Part datagram received!
237.2377 +14/06/2006 12:48:55.094  000>> 90>>>>>>>>>>Complete!
237.2378 +14/06/2006 12:48:55.094  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30039
237.2379 +14/06/2006 12:48:55.094  000>> Good datagram received!
237.2380 +14/06/2006 12:48:55.094  000>> Listener:Received RIB
237.2381 +14/06/2006 12:48:55.224  000>> 716>>>>>>>>>>Part datagram received!
237.2382 +14/06/2006 12:48:55.224  000>> 716>>>>>>>>>>Complete!
237.2383 +14/06/2006 12:48:55.224  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30040
237.2384 +14/06/2006 12:48:55.224  000>> Good datagram received!
237.2385 +14/06/2006 12:48:55.234  000>> Listener:Received Bundle Offer
237.2386 +14/06/2006 12:48:55.234  000>> Listener:Sending Empty bundle request...
237.2387 +14/06/2006 12:48:55.234  000>> Listener(receiveBOffer):But we can not restart connection...
237.2388 +14/06/2006 12:48:55.234  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29613
237.2389 +14/06/2006 12:48:55.244  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30041
237.2390 +14/06/2006 12:48:55.244  000>> Good datagram received!
237.2391 +14/06/2006 12:48:55.244  000>> Initiator:No more requested bundles
237.2392 +14/06/2006 12:48:55.244  000>> Listener(receiveBundles):We can restart connection...
237.2393 +14/06/2006 12:48:55.344  000>> Hello Procedure:SENDSYN
237.2394 +14/06/2006 12:48:55.344  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29614
237.2395 +14/06/2006 12:48:55.394  000>> 91>>>>>>>>>>Part datagram received!
237.2396 +14/06/2006 12:48:55.404  000>> 91>>>>>>>>>>Complete!
237.2397 +14/06/2006 12:48:55.404  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30042
237.2398 +14/06/2006 12:48:55.404  000>> Good datagram received!
237.2399 +14/06/2006 12:48:55.404  000>> Receive Hello:SYNACK
237.2400 +14/06/2006 12:48:55.404  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29615
237.2401 +14/06/2006 12:48:55.504  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2402 +14/06/2006 12:48:55.504  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29616
237.2403 +14/06/2006 12:48:55.504  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29617
237.2404 +14/06/2006 12:48:55.504  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29618
237.2405 +14/06/2006 12:48:55.534  000>> 98>>>>>>>>>>Part datagram received!
237.2406 +14/06/2006 12:48:55.534  000>> 98>>>>>>>>>>Complete!
237.2407 +14/06/2006 12:48:55.534  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30043
237.2408 +14/06/2006 12:48:55.534  000>> Good datagram received!
237.2409 +14/06/2006 12:48:55.534  000>> Listener:Received dictionary
237.2410 +14/06/2006 12:48:55.544  000>> 90>>>>>>>>>>Part datagram received!
237.2411 +14/06/2006 12:48:55.544  000>> 90>>>>>>>>>>Complete!
237.2412 +14/06/2006 12:48:55.544  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30044
237.2413 +14/06/2006 12:48:55.544  000>> Good datagram received!
237.2414 +14/06/2006 12:48:55.544  000>> Listener:Received RIB
237.2415 +14/06/2006 12:48:55.725  000>> 716>>>>>>>>>>Part datagram received!
237.2416 +14/06/2006 12:48:55.725  000>> 716>>>>>>>>>>Complete!
237.2417 +14/06/2006 12:48:55.725  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30045
237.2418 +14/06/2006 12:48:55.725  000>> Good datagram received!
237.2419 +14/06/2006 12:48:55.735  000>> Listener:Received Bundle Offer
237.2420 +14/06/2006 12:48:55.735  000>> Listener:Sending Empty bundle request...
237.2421 +14/06/2006 12:48:55.735  000>> Listener(receiveBOffer):But we can not restart connection...
237.2422 +14/06/2006 12:48:55.745  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29619
237.2423 +14/06/2006 12:48:55.745  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30046
237.2424 +14/06/2006 12:48:55.745  000>> Good datagram received!
237.2425 +14/06/2006 12:48:55.745  000>> Initiator:No more requested bundles
237.2426 +14/06/2006 12:48:55.745  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.2427 +14/06/2006 12:48:55.865  000>> 91>>>>>>>>>>Part datagram received!
237.2428 +14/06/2006 12:48:55.865  000>> 91>>>>>>>>>>Complete!
237.2429 +14/06/2006 12:48:55.875  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30047
237.2430 +14/06/2006 12:48:55.875  000>> Good datagram received!
237.2431 +14/06/2006 12:48:55.875  000>> Receive Hello:SYN
237.2432 +14/06/2006 12:48:55.875  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29620
237.2433 +14/06/2006 12:48:55.975  000>> 91>>>>>>>>>>Part datagram received!
237.2434 +14/06/2006 12:48:55.975  000>> 91>>>>>>>>>>Complete!
237.2435 +14/06/2006 12:48:55.975  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30048
237.2436 +14/06/2006 12:48:55.975  000>> Good datagram received!
237.2437 +14/06/2006 12:48:55.975  000>> Receive Hello:ACK
237.2438 +14/06/2006 12:48:56.075  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2439 +14/06/2006 12:48:56.075  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29621
237.2440 +14/06/2006 12:48:56.075  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29622
237.2441 +14/06/2006 12:48:56.075  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29623
237.2442 +14/06/2006 12:48:56.075  000>> 98>>>>>>>>>>Part datagram received!
237.2443 +14/06/2006 12:48:56.085  000>> 98>>>>>>>>>>Complete!
237.2444 +14/06/2006 12:48:56.085  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30049
237.2445 +14/06/2006 12:48:56.085  000>> Good datagram received!
237.2446 +14/06/2006 12:48:56.085  000>> Listener:Received dictionary
237.2447 +14/06/2006 12:48:56.085  000>> 90>>>>>>>>>>Part datagram received!
237.2448 +14/06/2006 12:48:56.085  000>> 90>>>>>>>>>>Complete!
237.2449 +14/06/2006 12:48:56.085  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30050
237.2450 +14/06/2006 12:48:56.085  000>> Good datagram received!
237.2451 +14/06/2006 12:48:56.085  000>> Listener:Received RIB
237.2452 +14/06/2006 12:48:56.225  000>> 716>>>>>>>>>>Part datagram received!
237.2453 +14/06/2006 12:48:56.225  000>> 716>>>>>>>>>>Complete!
237.2454 +14/06/2006 12:48:56.225  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30051
237.2455 +14/06/2006 12:48:56.225  000>> Good datagram received!
237.2456 +14/06/2006 12:48:56.235  000>> Listener:Received Bundle Offer
237.2457 +14/06/2006 12:48:56.235  000>> Listener:Sending Empty bundle request...
237.2458 +14/06/2006 12:48:56.245  000>> Listener(receiveBOffer):But we can not restart connection...
237.2459 +14/06/2006 12:48:56.245  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29624
237.2460 +14/06/2006 12:48:56.245  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30052
237.2461 +14/06/2006 12:48:56.245  000>> Good datagram received!
237.2462 +14/06/2006 12:48:56.245  000>> Initiator:No more requested bundles
237.2463 +14/06/2006 12:48:56.245  000>> Listener(receiveBundles):We can restart connection...
237.2464 +14/06/2006 12:48:56.345  000>> Hello Procedure:SENDSYN
237.2465 +14/06/2006 12:48:56.345  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29625
237.2466 +14/06/2006 12:48:56.406  000>> 91>>>>>>>>>>Part datagram received!
237.2467 +14/06/2006 12:48:56.406  000>> 91>>>>>>>>>>Complete!
237.2468 +14/06/2006 12:48:56.406  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30053
237.2469 +14/06/2006 12:48:56.406  000>> Good datagram received!
237.2470 +14/06/2006 12:48:56.406  000>> Receive Hello:SYNACK
237.2471 +14/06/2006 12:48:56.416  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29626
237.2472 +14/06/2006 12:48:56.516  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2473 +14/06/2006 12:48:56.516  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29627
237.2474 +14/06/2006 12:48:56.516  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29628
237.2475 +14/06/2006 12:48:56.526  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29629
237.2476 +14/06/2006 12:48:56.546  000>> 98>>>>>>>>>>Part datagram received!
237.2477 +14/06/2006 12:48:56.546  000>> 98>>>>>>>>>>Complete!
237.2478 +14/06/2006 12:48:56.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30054
237.2479 +14/06/2006 12:48:56.556  000>> Good datagram received!
237.2480 +14/06/2006 12:48:56.556  000>> Listener:Received dictionary
237.2481 +14/06/2006 12:48:56.576  000>> 90>>>>>>>>>>Part datagram received!
237.2482 +14/06/2006 12:48:56.576  000>> 90>>>>>>>>>>Complete!
237.2483 +14/06/2006 12:48:56.576  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30055
237.2484 +14/06/2006 12:48:56.576  000>> Good datagram received!
237.2485 +14/06/2006 12:48:56.576  000>> Listener:Received RIB
237.2486 +14/06/2006 12:48:56.726  000>> 716>>>>>>>>>>Part datagram received!
237.2487 +14/06/2006 12:48:56.726  000>> 716>>>>>>>>>>Complete!
237.2488 +14/06/2006 12:48:56.726  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30056
237.2489 +14/06/2006 12:48:56.726  000>> Good datagram received!
237.2490 +14/06/2006 12:48:56.736  000>> Listener:Received Bundle Offer
237.2491 +14/06/2006 12:48:56.746  000>> Listener:Sending Empty bundle request...
237.2492 +14/06/2006 12:48:56.746  000>> Listener(receiveBOffer):But we can not restart connection...
237.2493 +14/06/2006 12:48:56.746  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29630
237.2494 +14/06/2006 12:48:56.746  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30057
237.2495 +14/06/2006 12:48:56.746  000>> Good datagram received!
237.2496 +14/06/2006 12:48:56.746  000>> Initiator:No more requested bundles
237.2497 +14/06/2006 12:48:56.746  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.2498 +14/06/2006 12:48:56.866  000>> 91>>>>>>>>>>Part datagram received!
237.2499 +14/06/2006 12:48:56.876  000>> 91>>>>>>>>>>Complete!
237.2500 +14/06/2006 12:48:56.876  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30058
237.2501 +14/06/2006 12:48:56.876  000>> Good datagram received!
237.2502 +14/06/2006 12:48:56.876  000>> Receive Hello:SYN
237.2503 +14/06/2006 12:48:56.876  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29631
237.2504 +14/06/2006 12:48:56.976  000>> 91>>>>>>>>>>Part datagram received!
237.2505 +14/06/2006 12:48:56.976  000>> 91>>>>>>>>>>Complete!
237.2506 +14/06/2006 12:48:56.976  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30059
237.2507 +14/06/2006 12:48:56.976  000>> Good datagram received!
237.2508 +14/06/2006 12:48:56.976  000>> Receive Hello:ACK
237.2509 +14/06/2006 12:48:57.077  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2510 +14/06/2006 12:48:57.077  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29632
237.2511 +14/06/2006 12:48:57.077  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29633
237.2512 +14/06/2006 12:48:57.077  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29634
237.2513 +14/06/2006 12:48:57.087  000>> 98>>>>>>>>>>Part datagram received!
237.2514 +14/06/2006 12:48:57.087  000>> 98>>>>>>>>>>Complete!
237.2515 +14/06/2006 12:48:57.087  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30060
237.2516 +14/06/2006 12:48:57.087  000>> Good datagram received!
237.2517 +14/06/2006 12:48:57.097  000>> Listener:Received dictionary
237.2518 +14/06/2006 12:48:57.097  000>> 90>>>>>>>>>>Part datagram received!
237.2519 +14/06/2006 12:48:57.097  000>> 90>>>>>>>>>>Complete!
237.2520 +14/06/2006 12:48:57.097  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30061
237.2521 +14/06/2006 12:48:57.097  000>> Good datagram received!
237.2522 +14/06/2006 12:48:57.097  000>> Listener:Received RIB
237.2523 +14/06/2006 12:48:57.227  000>> 716>>>>>>>>>>Part datagram received!
237.2524 +14/06/2006 12:48:57.227  000>> 716>>>>>>>>>>Complete!
237.2525 +14/06/2006 12:48:57.227  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30062
237.2526 +14/06/2006 12:48:57.227  000>> Good datagram received!
237.2527 +14/06/2006 12:48:57.247  000>> Listener:Received Bundle Offer
237.2528 +14/06/2006 12:48:57.247  000>> Listener:Sending Empty bundle request...
237.2529 +14/06/2006 12:48:57.247  000>> Listener(receiveBOffer):But we can not restart connection...
237.2530 +14/06/2006 12:48:57.247  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29635
237.2531 +14/06/2006 12:48:57.247  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30063
237.2532 +14/06/2006 12:48:57.247  000>> Good datagram received!
237.2533 +14/06/2006 12:48:57.247  000>> Initiator:No more requested bundles
237.2534 +14/06/2006 12:48:57.247  000>> Listener(receiveBundles):We can restart connection...
237.2535 +14/06/2006 12:48:57.347  000>> Hello Procedure:SENDSYN
237.2536 +14/06/2006 12:48:57.347  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29636
237.2537 +14/06/2006 12:48:57.397  000>> 91>>>>>>>>>>Part datagram received!
237.2538 +14/06/2006 12:48:57.397  000>> 91>>>>>>>>>>Complete!
237.2539 +14/06/2006 12:48:57.397  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30064
237.2540 +14/06/2006 12:48:57.397  000>> Good datagram received!
237.2541 +14/06/2006 12:48:57.397  000>> Receive Hello:SYNACK
237.2542 +14/06/2006 12:48:57.407  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29637
237.2543 +14/06/2006 12:48:57.507  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2544 +14/06/2006 12:48:57.507  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29638
237.2545 +14/06/2006 12:48:57.507  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29639
237.2546 +14/06/2006 12:48:57.507  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29640
237.2547 +14/06/2006 12:48:57.527  000>> 98>>>>>>>>>>Part datagram received!
237.2548 +14/06/2006 12:48:57.527  000>> 98>>>>>>>>>>Complete!
237.2549 +14/06/2006 12:48:57.527  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30065
237.2550 +14/06/2006 12:48:57.537  000>> Good datagram received!
237.2551 +14/06/2006 12:48:57.537  000>> Listener:Received dictionary
237.2552 +14/06/2006 12:48:57.537  000>> 90>>>>>>>>>>Part datagram received!
237.2553 +14/06/2006 12:48:57.537  000>> 90>>>>>>>>>>Complete!
237.2554 +14/06/2006 12:48:57.537  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30066
237.2555 +14/06/2006 12:48:57.537  000>> Good datagram received!
237.2556 +14/06/2006 12:48:57.537  000>> Listener:Received RIB
237.2557 +14/06/2006 12:48:57.727  000>> 716>>>>>>>>>>Part datagram received!
237.2558 +14/06/2006 12:48:57.737  000>> 716>>>>>>>>>>Complete!
237.2559 +14/06/2006 12:48:57.737  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30067
237.2560 +14/06/2006 12:48:57.737  000>> Good datagram received!
237.2561 +14/06/2006 12:48:57.748  000>> Listener:Received Bundle Offer
237.2562 +14/06/2006 12:48:57.748  000>> Listener:Sending Empty bundle request...
237.2563 +14/06/2006 12:48:57.748  000>> Listener(receiveBOffer):But we can not restart connection...
237.2564 +14/06/2006 12:48:57.758  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29641
237.2565 +14/06/2006 12:48:57.758  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30068
237.2566 +14/06/2006 12:48:57.758  000>> Good datagram received!
237.2567 +14/06/2006 12:48:57.758  000>> Initiator:No more requested bundles
237.2568 +14/06/2006 12:48:57.758  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.2569 +14/06/2006 12:48:57.878  000>> 91>>>>>>>>>>Part datagram received!
237.2570 +14/06/2006 12:48:57.878  000>> 91>>>>>>>>>>Complete!
237.2571 +14/06/2006 12:48:57.878  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30069
237.2572 +14/06/2006 12:48:57.878  000>> Good datagram received!
237.2573 +14/06/2006 12:48:57.888  000>> Receive Hello:SYN
237.2574 +14/06/2006 12:48:57.888  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29642
237.2575 +14/06/2006 12:48:57.968  000>> 91>>>>>>>>>>Part datagram received!
237.2576 +14/06/2006 12:48:57.968  000>> 91>>>>>>>>>>Complete!
237.2577 +14/06/2006 12:48:57.968  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30070
237.2578 +14/06/2006 12:48:57.968  000>> Good datagram received!
237.2579 +14/06/2006 12:48:57.968  000>> Receive Hello:ACK
237.2580 +14/06/2006 12:48:58.068  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2581 +14/06/2006 12:48:58.068  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29643
237.2582 +14/06/2006 12:48:58.068  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29644
237.2583 +14/06/2006 12:48:58.068  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29645
237.2584 +14/06/2006 12:48:58.068  000>> 98>>>>>>>>>>Part datagram received!
237.2585 +14/06/2006 12:48:58.078  000>> 98>>>>>>>>>>Complete!
237.2586 +14/06/2006 12:48:58.078  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30071
237.2587 +14/06/2006 12:48:58.078  000>> Good datagram received!
237.2588 +14/06/2006 12:48:58.078  000>> Listener:Received dictionary
237.2589 +14/06/2006 12:48:58.078  000>> 90>>>>>>>>>>Part datagram received!
237.2590 +14/06/2006 12:48:58.078  000>> 90>>>>>>>>>>Complete!
237.2591 +14/06/2006 12:48:58.078  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30072
237.2592 +14/06/2006 12:48:58.078  000>> Good datagram received!
237.2593 +14/06/2006 12:48:58.078  000>> Listener:Received RIB
237.2594 +14/06/2006 12:48:58.228  000>> 716>>>>>>>>>>Part datagram received!
237.2595 +14/06/2006 12:48:58.228  000>> 716>>>>>>>>>>Complete!
237.2596 +14/06/2006 12:48:58.228  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30073
237.2597 +14/06/2006 12:48:58.228  000>> Good datagram received!
237.2598 +14/06/2006 12:48:58.248  000>> Listener:Received Bundle Offer
237.2599 +14/06/2006 12:48:58.248  000>> Listener:Sending Empty bundle request...
237.2600 +14/06/2006 12:48:58.248  000>> Listener(receiveBOffer):But we can not restart connection...
237.2601 +14/06/2006 12:48:58.248  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29646
237.2602 +14/06/2006 12:48:58.248  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30074
237.2603 +14/06/2006 12:48:58.258  000>> Good datagram received!
237.2604 +14/06/2006 12:48:58.258  000>> Initiator:No more requested bundles
237.2605 +14/06/2006 12:48:58.258  000>> Listener(receiveBundles):We can restart connection...
237.2606 +14/06/2006 12:48:58.358  000>> Hello Procedure:SENDSYN
237.2607 +14/06/2006 12:48:58.358  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29647
237.2608 +14/06/2006 12:48:58.398  000>> 91>>>>>>>>>>Part datagram received!
237.2609 +14/06/2006 12:48:58.408  000>> 91>>>>>>>>>>Complete!
237.2610 +14/06/2006 12:48:58.408  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30075
237.2611 +14/06/2006 12:48:58.408  000>> Good datagram received!
237.2612 +14/06/2006 12:48:58.408  000>> Receive Hello:SYNACK
237.2613 +14/06/2006 12:48:58.408  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29648
237.2614 +14/06/2006 12:48:58.509  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2615 +14/06/2006 12:48:58.509  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29649
237.2616 +14/06/2006 12:48:58.509  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29650
237.2617 +14/06/2006 12:48:58.509  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29651
237.2618 +14/06/2006 12:48:58.539  000>> 98>>>>>>>>>>Part datagram received!
237.2619 +14/06/2006 12:48:58.539  000>> 98>>>>>>>>>>Complete!
237.2620 +14/06/2006 12:48:58.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30076
237.2621 +14/06/2006 12:48:58.539  000>> Good datagram received!
237.2622 +14/06/2006 12:48:58.539  000>> Listener:Received dictionary
237.2623 +14/06/2006 12:48:58.539  000>> 90>>>>>>>>>>Part datagram received!
237.2624 +14/06/2006 12:48:58.539  000>> 90>>>>>>>>>>Complete!
237.2625 +14/06/2006 12:48:58.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30077
237.2626 +14/06/2006 12:48:58.539  000>> Good datagram received!
237.2627 +14/06/2006 12:48:58.539  000>> Listener:Received RIB
237.2628 +14/06/2006 12:48:58.729  000>> 716>>>>>>>>>>Part datagram received!
237.2629 +14/06/2006 12:48:58.729  000>> 716>>>>>>>>>>Complete!
237.2630 +14/06/2006 12:48:58.729  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30078
237.2631 +14/06/2006 12:48:58.729  000>> Good datagram received!
237.2632 +14/06/2006 12:48:58.749  000>> Listener:Received Bundle Offer
237.2633 +14/06/2006 12:48:58.749  000>> Listener:Sending Empty bundle request...
237.2634 +14/06/2006 12:48:58.749  000>> Listener(receiveBOffer):But we can not restart connection...
237.2635 +14/06/2006 12:48:58.749  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29652
237.2636 +14/06/2006 12:48:58.749  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30079
237.2637 +14/06/2006 12:48:58.759  000>> Good datagram received!
237.2638 +14/06/2006 12:48:58.759  000>> Initiator:No more requested bundles
237.2639 +14/06/2006 12:48:58.759  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.2640 +14/06/2006 12:48:58.959  000>> 91>>>>>>>>>>Part datagram received!
237.2641 +14/06/2006 12:48:58.959  000>> 91>>>>>>>>>>Complete!
237.2642 +14/06/2006 12:48:58.959  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30080
237.2643 +14/06/2006 12:48:58.969  000>> Good datagram received!
237.2644 +14/06/2006 12:48:58.969  000>> Receive Hello:SYN
237.2645 +14/06/2006 12:48:58.969  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29653
237.2646 +14/06/2006 12:48:58.979  000>> 91>>>>>>>>>>Part datagram received!
237.2647 +14/06/2006 12:48:58.979  000>> 91>>>>>>>>>>Complete!
237.2648 +14/06/2006 12:48:58.979  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30081
237.2649 +14/06/2006 12:48:58.979  000>> Good datagram received!
237.2650 +14/06/2006 12:48:58.979  000>> Receive Hello:ACK
237.2651 +14/06/2006 12:48:59.089  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2652 +14/06/2006 12:48:59.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29654
237.2653 +14/06/2006 12:48:59.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29655
237.2654 +14/06/2006 12:48:59.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29656
237.2655 +14/06/2006 12:48:59.089  000>> 188>>>>>>>>>>Part datagram received!
237.2656 +14/06/2006 12:48:59.089  000>> 188>>>>>>>>>>Complete!
237.2657 +14/06/2006 12:48:59.089  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30082
237.2658 +14/06/2006 12:48:59.089  000>> Good datagram received!
237.2659 +14/06/2006 12:48:59.099  000>> Listener:Received dictionary
237.2660 +14/06/2006 12:48:59.099  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30083
237.2661 +14/06/2006 12:48:59.099  000>> Good datagram received!
237.2662 +14/06/2006 12:48:59.099  000>> Listener:Received RIB
237.2663 +14/06/2006 12:48:59.099  000>> 638>>>>>>>>>>Part datagram received!
237.2664 +14/06/2006 12:48:59.099  000>> 638>>>>>>>>>>Complete!
237.2665 +14/06/2006 12:48:59.099  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30084
237.2666 +14/06/2006 12:48:59.099  000>> Good datagram received!
237.2667 +14/06/2006 12:48:59.119  000>> Listener:Received Bundle Offer
237.2668 +14/06/2006 12:48:59.119  000>> Listener:Sending Empty bundle request...
237.2669 +14/06/2006 12:48:59.119  000>> Listener(receiveBOffer):But we can not restart connection...
237.2670 +14/06/2006 12:48:59.119  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29657
237.2671 +14/06/2006 12:48:59.119  000>> 0>>>>>>>>>>Part datagram received!
237.2672 +14/06/2006 12:48:59.119  000>> 0>>>>>>>>>>Part datagram received!
237.2673 +14/06/2006 12:48:59.200  000>> 78>>>>>>>>>>Part datagram received!
237.2674 +14/06/2006 12:48:59.200  000>> 78>>>>>>>>>>Complete!
237.2675 +14/06/2006 12:48:59.200  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30085
237.2676 +14/06/2006 12:48:59.210  000>> Good datagram received!
237.2677 +14/06/2006 12:48:59.210  000>> Initiator:No more requested bundles
237.2678 +14/06/2006 12:48:59.210  000>> Listener(receiveBundles):We can restart connection...
237.2679 +14/06/2006 12:48:59.310  000>> Hello Procedure:SENDSYN
237.2680 +14/06/2006 12:48:59.310  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29658
237.2681 +14/06/2006 12:48:59.370  000>> 91>>>>>>>>>>Part datagram received!
237.2682 +14/06/2006 12:48:59.370  000>> 91>>>>>>>>>>Complete!
237.2683 +14/06/2006 12:48:59.370  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30086
237.2684 +14/06/2006 12:48:59.370  000>> Good datagram received!
237.2685 +14/06/2006 12:48:59.370  000>> Receive Hello:SYNACK
237.2686 +14/06/2006 12:48:59.370  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29659
237.2687 +14/06/2006 12:48:59.470  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2688 +14/06/2006 12:48:59.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29660
237.2689 +14/06/2006 12:48:59.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29661
237.2690 +14/06/2006 12:48:59.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29662
237.2691 +14/06/2006 12:48:59.490  000>> 98>>>>>>>>>>Part datagram received!
237.2692 +14/06/2006 12:48:59.490  000>> 98>>>>>>>>>>Complete!
237.2693 +14/06/2006 12:48:59.500  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30087
237.2694 +14/06/2006 12:48:59.500  000>> Good datagram received!
237.2695 +14/06/2006 12:48:59.500  000>> Listener:Received dictionary
237.2696 +14/06/2006 12:48:59.500  000>> 90>>>>>>>>>>Part datagram received!
237.2697 +14/06/2006 12:48:59.500  000>> 90>>>>>>>>>>Complete!
237.2698 +14/06/2006 12:48:59.500  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30088
237.2699 +14/06/2006 12:48:59.500  000>> Good datagram received!
237.2700 +14/06/2006 12:48:59.500  000>> Listener:Received RIB
237.2701 +14/06/2006 12:48:59.630  000>> 716>>>>>>>>>>Part datagram received!
237.2702 +14/06/2006 12:48:59.640  000>> 716>>>>>>>>>>Complete!
237.2703 +14/06/2006 12:48:59.640  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30089
237.2704 +14/06/2006 12:48:59.640  000>> Good datagram received!
237.2705 +14/06/2006 12:48:59.650  000>> Listener:Received Bundle Offer
237.2706 +14/06/2006 12:48:59.650  000>> Listener:Sending Empty bundle request...
237.2707 +14/06/2006 12:48:59.650  000>> Listener(receiveBOffer):But we can not restart connection...
237.2708 +14/06/2006 12:48:59.650  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29663
237.2709 +14/06/2006 12:48:59.660  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30090
237.2710 +14/06/2006 12:48:59.660  000>> Good datagram received!
237.2711 +14/06/2006 12:48:59.660  000>> Initiator:No more requested bundles
237.2712 +14/06/2006 12:48:59.660  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.2713 +14/06/2006 12:48:59.790  000>> 91>>>>>>>>>>Part datagram received!
237.2714 +14/06/2006 12:48:59.790  000>> 91>>>>>>>>>>Complete!
237.2715 +14/06/2006 12:48:59.790  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30091
237.2716 +14/06/2006 12:48:59.790  000>> Good datagram received!
237.2717 +14/06/2006 12:48:59.800  000>> Receive Hello:SYN
237.2718 +14/06/2006 12:48:59.800  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29664
237.2719 +14/06/2006 12:48:59.830  000>> 91>>>>>>>>>>Part datagram received!
237.2720 +14/06/2006 12:48:59.830  000>> 91>>>>>>>>>>Complete!
237.2721 +14/06/2006 12:48:59.830  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30092
237.2722 +14/06/2006 12:48:59.830  000>> Good datagram received!
237.2723 +14/06/2006 12:48:59.830  000>> Receive Hello:ACK
237.2724 +14/06/2006 12:48:59.931  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2725 +14/06/2006 12:48:59.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29665
237.2726 +14/06/2006 12:48:59.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29666
237.2727 +14/06/2006 12:48:59.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29667
237.2728 +14/06/2006 12:48:59.961  000>> 98>>>>>>>>>>Part datagram received!
237.2729 +14/06/2006 12:48:59.961  000>> 98>>>>>>>>>>Complete!
237.2730 +14/06/2006 12:48:59.961  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30093
237.2731 +14/06/2006 12:48:59.961  000>> Good datagram received!
237.2732 +14/06/2006 12:48:59.961  000>> Listener:Received dictionary
237.2733 +14/06/2006 12:48:59.961  000>> 90>>>>>>>>>>Part datagram received!
237.2734 +14/06/2006 12:48:59.961  000>> 90>>>>>>>>>>Complete!
237.2735 +14/06/2006 12:48:59.961  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30094
237.2736 +14/06/2006 12:48:59.961  000>> Good datagram received!
237.2737 +14/06/2006 12:48:59.961  000>> Listener:Received RIB
237.2738 +14/06/2006 12:49:00.131  000>> 716>>>>>>>>>>Part datagram received!
237.2739 +14/06/2006 12:49:00.141  000>> 716>>>>>>>>>>Complete!
237.2740 +14/06/2006 12:49:00.141  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30095
237.2741 +14/06/2006 12:49:00.141  000>> Good datagram received!
237.2742 +14/06/2006 12:49:00.151  000>> Listener:Received Bundle Offer
237.2743 +14/06/2006 12:49:00.151  000>> Listener:Sending Empty bundle request...
237.2744 +14/06/2006 12:49:00.151  000>> Listener(receiveBOffer):But we can not restart connection...
237.2745 +14/06/2006 12:49:00.151  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29668
237.2746 +14/06/2006 12:49:00.161  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30096
237.2747 +14/06/2006 12:49:00.161  000>> Good datagram received!
237.2748 +14/06/2006 12:49:00.161  000>> Initiator:No more requested bundles
237.2749 +14/06/2006 12:49:00.161  000>> Listener(receiveBundles):We can restart connection...
237.2750 +14/06/2006 12:49:00.261  000>> Hello Procedure:SENDSYN
237.2751 +14/06/2006 12:49:00.261  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29669
237.2752 +14/06/2006 12:49:00.371  000>> 91>>>>>>>>>>Part datagram received!
237.2753 +14/06/2006 12:49:00.371  000>> 91>>>>>>>>>>Complete!
237.2754 +14/06/2006 12:49:00.371  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30097
237.2755 +14/06/2006 12:49:00.371  000>> Good datagram received!
237.2756 +14/06/2006 12:49:00.371  000>> Receive Hello:SYNACK
237.2757 +14/06/2006 12:49:00.371  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29670
237.2758 +14/06/2006 12:49:00.471  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2759 +14/06/2006 12:49:00.471  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29671
237.2760 +14/06/2006 12:49:00.471  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29672
237.2761 +14/06/2006 12:49:00.471  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29673
237.2762 +14/06/2006 12:49:00.501  000>> 98>>>>>>>>>>Part datagram received!
237.2763 +14/06/2006 12:49:00.501  000>> 98>>>>>>>>>>Complete!
237.2764 +14/06/2006 12:49:00.501  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30098
237.2765 +14/06/2006 12:49:00.501  000>> Good datagram received!
237.2766 +14/06/2006 12:49:00.501  000>> Listener:Received dictionary
237.2767 +14/06/2006 12:49:00.501  000>> 90>>>>>>>>>>Part datagram received!
237.2768 +14/06/2006 12:49:00.501  000>> 90>>>>>>>>>>Complete!
237.2769 +14/06/2006 12:49:00.501  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30099
237.2770 +14/06/2006 12:49:00.501  000>> Good datagram received!
237.2771 +14/06/2006 12:49:00.501  000>> Listener:Received RIB
237.2772 +14/06/2006 12:49:00.642  000>> 716>>>>>>>>>>Part datagram received!
237.2773 +14/06/2006 12:49:00.642  000>> 716>>>>>>>>>>Complete!
237.2774 +14/06/2006 12:49:00.642  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30100
237.2775 +14/06/2006 12:49:00.642  000>> Good datagram received!
237.2776 +14/06/2006 12:49:00.652  000>> Listener:Received Bundle Offer
237.2777 +14/06/2006 12:49:00.652  000>> Listener:Sending Empty bundle request...
237.2778 +14/06/2006 12:49:00.662  000>> Listener(receiveBOffer):But we can not restart connection...
237.2779 +14/06/2006 12:49:00.662  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29674
237.2780 +14/06/2006 12:49:00.662  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30101
237.2781 +14/06/2006 12:49:00.662  000>> Good datagram received!
237.2782 +14/06/2006 12:49:00.662  000>> Initiator:No more requested bundles
237.2783 +14/06/2006 12:49:00.662  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.2784 +14/06/2006 12:49:00.782  000>> 91>>>>>>>>>>Part datagram received!
237.2785 +14/06/2006 12:49:00.782  000>> 91>>>>>>>>>>Complete!
237.2786 +14/06/2006 12:49:00.782  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30102
237.2787 +14/06/2006 12:49:00.782  000>> Good datagram received!
237.2788 +14/06/2006 12:49:00.792  000>> Receive Hello:SYN
237.2789 +14/06/2006 12:49:00.792  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29675
237.2790 +14/06/2006 12:49:00.812  000>> 91>>>>>>>>>>Part datagram received!
237.2791 +14/06/2006 12:49:00.812  000>> 91>>>>>>>>>>Complete!
237.2792 +14/06/2006 12:49:00.812  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30103
237.2793 +14/06/2006 12:49:00.812  000>> Good datagram received!
237.2794 +14/06/2006 12:49:00.812  000>> Receive Hello:ACK
237.2795 +14/06/2006 12:49:00.912  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2796 +14/06/2006 12:49:00.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29676
237.2797 +14/06/2006 12:49:00.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29677
237.2798 +14/06/2006 12:49:00.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29678
237.2799 +14/06/2006 12:49:00.942  000>> 98>>>>>>>>>>Part datagram received!
237.2800 +14/06/2006 12:49:00.942  000>> 98>>>>>>>>>>Complete!
237.2801 +14/06/2006 12:49:00.942  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30104
237.2802 +14/06/2006 12:49:00.942  000>> Good datagram received!
237.2803 +14/06/2006 12:49:00.942  000>> Listener:Received dictionary
237.2804 +14/06/2006 12:49:00.942  000>> 90>>>>>>>>>>Part datagram received!
237.2805 +14/06/2006 12:49:00.942  000>> 90>>>>>>>>>>Complete!
237.2806 +14/06/2006 12:49:00.942  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30105
237.2807 +14/06/2006 12:49:00.942  000>> Good datagram received!
237.2808 +14/06/2006 12:49:00.942  000>> Listener:Received RIB
237.2809 +14/06/2006 12:49:01.142  000>> 716>>>>>>>>>>Part datagram received!
237.2810 +14/06/2006 12:49:01.142  000>> 716>>>>>>>>>>Complete!
237.2811 +14/06/2006 12:49:01.142  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30106
237.2812 +14/06/2006 12:49:01.142  000>> Good datagram received!
237.2813 +14/06/2006 12:49:01.152  000>> Listener:Received Bundle Offer
237.2814 +14/06/2006 12:49:01.152  000>> Listener:Sending Empty bundle request...
237.2815 +14/06/2006 12:49:01.162  000>> Listener(receiveBOffer):But we can not restart connection...
237.2816 +14/06/2006 12:49:01.162  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29679
237.2817 +14/06/2006 12:49:01.162  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30107
237.2818 +14/06/2006 12:49:01.162  000>> Good datagram received!
237.2819 +14/06/2006 12:49:01.162  000>> Initiator:No more requested bundles
237.2820 +14/06/2006 12:49:01.162  000>> Listener(receiveBundles):We can restart connection...
237.2821 +14/06/2006 12:49:01.263  000>> Hello Procedure:SENDSYN
237.2822 +14/06/2006 12:49:01.263  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29680
237.2823 +14/06/2006 12:49:01.403  000>> 91>>>>>>>>>>Part datagram received!
237.2824 +14/06/2006 12:49:01.403  000>> 91>>>>>>>>>>Complete!
237.2825 +14/06/2006 12:49:01.403  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30108
237.2826 +14/06/2006 12:49:01.403  000>> Good datagram received!
237.2827 +14/06/2006 12:49:01.403  000>> Receive Hello:SYNACK
237.2828 +14/06/2006 12:49:01.403  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29681
237.2829 +14/06/2006 12:49:01.503  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2830 +14/06/2006 12:49:01.503  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29682
237.2831 +14/06/2006 12:49:01.503  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29683
237.2832 +14/06/2006 12:49:01.503  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29684
237.2833 +14/06/2006 12:49:01.523  000>> 98>>>>>>>>>>Part datagram received!
237.2834 +14/06/2006 12:49:01.523  000>> 98>>>>>>>>>>Complete!
237.2835 +14/06/2006 12:49:01.523  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30109
237.2836 +14/06/2006 12:49:01.523  000>> Good datagram received!
237.2837 +14/06/2006 12:49:01.533  000>> Listener:Received dictionary
237.2838 +14/06/2006 12:49:01.533  000>> 90>>>>>>>>>>Part datagram received!
237.2839 +14/06/2006 12:49:01.533  000>> 90>>>>>>>>>>Complete!
237.2840 +14/06/2006 12:49:01.533  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30110
237.2841 +14/06/2006 12:49:01.533  000>> Good datagram received!
237.2842 +14/06/2006 12:49:01.533  000>> Listener:Received RIB
237.2843 +14/06/2006 12:49:01.643  000>> 716>>>>>>>>>>Part datagram received!
237.2844 +14/06/2006 12:49:01.643  000>> 716>>>>>>>>>>Complete!
237.2845 +14/06/2006 12:49:01.643  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30111
237.2846 +14/06/2006 12:49:01.643  000>> Good datagram received!
237.2847 +14/06/2006 12:49:01.663  000>> Listener:Received Bundle Offer
237.2848 +14/06/2006 12:49:01.663  000>> Listener:Sending Empty bundle request...
237.2849 +14/06/2006 12:49:01.663  000>> Listener(receiveBOffer):But we can not restart connection...
237.2850 +14/06/2006 12:49:01.663  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29685
237.2851 +14/06/2006 12:49:01.663  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30112
237.2852 +14/06/2006 12:49:01.663  000>> Good datagram received!
237.2853 +14/06/2006 12:49:01.663  000>> Initiator:No more requested bundles
237.2854 +14/06/2006 12:49:01.663  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.2855 +14/06/2006 12:49:01.783  000>> 91>>>>>>>>>>Part datagram received!
237.2856 +14/06/2006 12:49:01.783  000>> 91>>>>>>>>>>Complete!
237.2857 +14/06/2006 12:49:01.783  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30113
237.2858 +14/06/2006 12:49:01.783  000>> Good datagram received!
237.2859 +14/06/2006 12:49:01.783  000>> Receive Hello:SYN
237.2860 +14/06/2006 12:49:01.793  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29686
237.2861 +14/06/2006 12:49:01.813  000>> 91>>>>>>>>>>Part datagram received!
237.2862 +14/06/2006 12:49:01.813  000>> 91>>>>>>>>>>Complete!
237.2863 +14/06/2006 12:49:01.813  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30114
237.2864 +14/06/2006 12:49:01.813  000>> Good datagram received!
237.2865 +14/06/2006 12:49:01.813  000>> Receive Hello:ACK
237.2866 +14/06/2006 12:49:01.913  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2867 +14/06/2006 12:49:01.913  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29687
237.2868 +14/06/2006 12:49:01.913  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29688
237.2869 +14/06/2006 12:49:01.913  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29689
237.2870 +14/06/2006 12:49:01.964  000>> 98>>>>>>>>>>Part datagram received!
237.2871 +14/06/2006 12:49:01.974  000>> 98>>>>>>>>>>Complete!
237.2872 +14/06/2006 12:49:01.974  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30115
237.2873 +14/06/2006 12:49:01.974  000>> Good datagram received!
237.2874 +14/06/2006 12:49:01.974  000>> Listener:Received dictionary
237.2875 +14/06/2006 12:49:01.994  000>> 728>>>>>>>>>>Part datagram received!
237.2876 +14/06/2006 12:49:01.994  000>> 728>>>>>>>>>>Complete!
237.2877 +14/06/2006 12:49:01.994  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30116
237.2878 +14/06/2006 12:49:01.994  000>> Good datagram received!
237.2879 +14/06/2006 12:49:01.994  000>> Listener:Received RIB
237.2880 +14/06/2006 12:49:01.994  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30117
237.2881 +14/06/2006 12:49:01.994  000>> Good datagram received!
237.2882 +14/06/2006 12:49:02.014  000>> Listener:Received Bundle Offer
237.2883 +14/06/2006 12:49:02.014  000>> Listener:Sending Empty bundle request...
237.2884 +14/06/2006 12:49:02.014  000>> Listener(receiveBOffer):But we can not restart connection...
237.2885 +14/06/2006 12:49:02.014  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29690
237.2886 +14/06/2006 12:49:02.094  000>> 78>>>>>>>>>>Part datagram received!
237.2887 +14/06/2006 12:49:02.094  000>> 78>>>>>>>>>>Complete!
237.2888 +14/06/2006 12:49:02.094  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30118
237.2889 +14/06/2006 12:49:02.094  000>> Good datagram received!
237.2890 +14/06/2006 12:49:02.094  000>> Initiator:No more requested bundles
237.2891 +14/06/2006 12:49:02.094  000>> Listener(receiveBundles):We can restart connection...
237.2892 +14/06/2006 12:49:02.194  000>> Hello Procedure:SENDSYN
237.2893 +14/06/2006 12:49:02.194  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29691
237.2894 +14/06/2006 12:49:02.214  000>> 91>>>>>>>>>>Part datagram received!
237.2895 +14/06/2006 12:49:02.214  000>> 91>>>>>>>>>>Complete!
237.2896 +14/06/2006 12:49:02.214  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30119
237.2897 +14/06/2006 12:49:02.214  000>> Good datagram received!
237.2898 +14/06/2006 12:49:02.214  000>> Receive Hello:SYNACK
237.2899 +14/06/2006 12:49:02.214  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29692
237.2900 +14/06/2006 12:49:02.324  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2901 +14/06/2006 12:49:02.324  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29693
237.2902 +14/06/2006 12:49:02.324  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29694
237.2903 +14/06/2006 12:49:02.324  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29695
237.2904 +14/06/2006 12:49:02.334  000>> 98>>>>>>>>>>Part datagram received!
237.2905 +14/06/2006 12:49:02.334  000>> 98>>>>>>>>>>Complete!
237.2906 +14/06/2006 12:49:02.334  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30120
237.2907 +14/06/2006 12:49:02.344  000>> Good datagram received!
237.2908 +14/06/2006 12:49:02.344  000>> Listener:Received dictionary
237.2909 +14/06/2006 12:49:02.344  000>> 90>>>>>>>>>>Part datagram received!
237.2910 +14/06/2006 12:49:02.344  000>> 90>>>>>>>>>>Complete!
237.2911 +14/06/2006 12:49:02.344  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30121
237.2912 +14/06/2006 12:49:02.344  000>> Good datagram received!
237.2913 +14/06/2006 12:49:02.344  000>> Listener:Received RIB
237.2914 +14/06/2006 12:49:02.544  000>> 716>>>>>>>>>>Part datagram received!
237.2915 +14/06/2006 12:49:02.544  000>> 716>>>>>>>>>>Complete!
237.2916 +14/06/2006 12:49:02.544  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30122
237.2917 +14/06/2006 12:49:02.544  000>> Good datagram received!
237.2918 +14/06/2006 12:49:02.554  000>> Listener:Received Bundle Offer
237.2919 +14/06/2006 12:49:02.564  000>> Listener:Sending Empty bundle request...
237.2920 +14/06/2006 12:49:02.564  000>> Listener(receiveBOffer):But we can not restart connection...
237.2921 +14/06/2006 12:49:02.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29696
237.2922 +14/06/2006 12:49:02.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30123
237.2923 +14/06/2006 12:49:02.564  000>> Good datagram received!
237.2924 +14/06/2006 12:49:02.564  000>> Initiator:No more requested bundles
237.2925 +14/06/2006 12:49:02.564  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.2926 +14/06/2006 12:49:02.685  000>> 91>>>>>>>>>>Part datagram received!
237.2927 +14/06/2006 12:49:02.685  000>> 91>>>>>>>>>>Complete!
237.2928 +14/06/2006 12:49:02.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30124
237.2929 +14/06/2006 12:49:02.685  000>> Good datagram received!
237.2930 +14/06/2006 12:49:02.685  000>> Receive Hello:SYN
237.2931 +14/06/2006 12:49:02.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29697
237.2932 +14/06/2006 12:49:02.705  000>> 91>>>>>>>>>>Part datagram received!
237.2933 +14/06/2006 12:49:02.705  000>> 91>>>>>>>>>>Complete!
237.2934 +14/06/2006 12:49:02.715  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30125
237.2935 +14/06/2006 12:49:02.715  000>> Good datagram received!
237.2936 +14/06/2006 12:49:02.715  000>> Receive Hello:ACK
237.2937 +14/06/2006 12:49:02.815  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2938 +14/06/2006 12:49:02.815  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29698
237.2939 +14/06/2006 12:49:02.815  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29699
237.2940 +14/06/2006 12:49:02.815  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29700
237.2941 +14/06/2006 12:49:02.815  000>> 98>>>>>>>>>>Part datagram received!
237.2942 +14/06/2006 12:49:02.825  000>> 98>>>>>>>>>>Complete!
237.2943 +14/06/2006 12:49:02.825  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30126
237.2944 +14/06/2006 12:49:02.825  000>> Good datagram received!
237.2945 +14/06/2006 12:49:02.825  000>> Listener:Received dictionary
237.2946 +14/06/2006 12:49:02.825  000>> 90>>>>>>>>>>Part datagram received!
237.2947 +14/06/2006 12:49:02.825  000>> 90>>>>>>>>>>Complete!
237.2948 +14/06/2006 12:49:02.825  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30127
237.2949 +14/06/2006 12:49:02.825  000>> Good datagram received!
237.2950 +14/06/2006 12:49:02.825  000>> Listener:Received RIB
237.2951 +14/06/2006 12:49:02.945  000>> 716>>>>>>>>>>Part datagram received!
237.2952 +14/06/2006 12:49:02.945  000>> 716>>>>>>>>>>Complete!
237.2953 +14/06/2006 12:49:02.945  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30128
237.2954 +14/06/2006 12:49:02.945  000>> Good datagram received!
237.2955 +14/06/2006 12:49:02.965  000>> Listener:Received Bundle Offer
237.2956 +14/06/2006 12:49:02.965  000>> Listener:Sending Empty bundle request...
237.2957 +14/06/2006 12:49:02.965  000>> Listener(receiveBOffer):But we can not restart connection...
237.2958 +14/06/2006 12:49:02.965  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29701
237.2959 +14/06/2006 12:49:02.965  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30129
237.2960 +14/06/2006 12:49:02.965  000>> Good datagram received!
237.2961 +14/06/2006 12:49:02.965  000>> Initiator:No more requested bundles
237.2962 +14/06/2006 12:49:02.965  000>> Listener(receiveBundles):We can restart connection...
237.2963 +14/06/2006 12:49:03.065  000>> Hello Procedure:SENDSYN
237.2964 +14/06/2006 12:49:03.065  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29702
237.2965 +14/06/2006 12:49:03.185  000>> 91>>>>>>>>>>Part datagram received!
237.2966 +14/06/2006 12:49:03.185  000>> 91>>>>>>>>>>Complete!
237.2967 +14/06/2006 12:49:03.185  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30130
237.2968 +14/06/2006 12:49:03.185  000>> Good datagram received!
237.2969 +14/06/2006 12:49:03.185  000>> Receive Hello:SYNACK
237.2970 +14/06/2006 12:49:03.195  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29703
237.2971 +14/06/2006 12:49:03.295  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.2972 +14/06/2006 12:49:03.295  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29704
237.2973 +14/06/2006 12:49:03.295  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29705
237.2974 +14/06/2006 12:49:03.295  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29706
237.2975 +14/06/2006 12:49:03.326  000>> 98>>>>>>>>>>Part datagram received!
237.2976 +14/06/2006 12:49:03.326  000>> 98>>>>>>>>>>Complete!
237.2977 +14/06/2006 12:49:03.326  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30131
237.2978 +14/06/2006 12:49:03.326  000>> Good datagram received!
237.2979 +14/06/2006 12:49:03.326  000>> Listener:Received dictionary
237.2980 +14/06/2006 12:49:03.336  000>> 90>>>>>>>>>>Part datagram received!
237.2981 +14/06/2006 12:49:03.336  000>> 90>>>>>>>>>>Complete!
237.2982 +14/06/2006 12:49:03.336  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30132
237.2983 +14/06/2006 12:49:03.336  000>> Good datagram received!
237.2984 +14/06/2006 12:49:03.336  000>> Listener:Received RIB
237.2985 +14/06/2006 12:49:03.446  000>> 716>>>>>>>>>>Part datagram received!
237.2986 +14/06/2006 12:49:03.446  000>> 716>>>>>>>>>>Complete!
237.2987 +14/06/2006 12:49:03.446  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30133
237.2988 +14/06/2006 12:49:03.446  000>> Good datagram received!
237.2989 +14/06/2006 12:49:03.466  000>> Listener:Received Bundle Offer
237.2990 +14/06/2006 12:49:03.466  000>> Listener:Sending Empty bundle request...
237.2991 +14/06/2006 12:49:03.466  000>> Listener(receiveBOffer):But we can not restart connection...
237.2992 +14/06/2006 12:49:03.466  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29707
237.2993 +14/06/2006 12:49:03.466  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30134
237.2994 +14/06/2006 12:49:03.466  000>> Good datagram received!
237.2995 +14/06/2006 12:49:03.466  000>> Initiator:No more requested bundles
237.2996 +14/06/2006 12:49:03.466  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.2997 +14/06/2006 12:49:03.586  000>> 91>>>>>>>>>>Part datagram received!
237.2998 +14/06/2006 12:49:03.586  000>> 91>>>>>>>>>>Complete!
237.2999 +14/06/2006 12:49:03.586  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30135
237.3000 +14/06/2006 12:49:03.586  000>> Good datagram received!
237.3001 +14/06/2006 12:49:03.596  000>> Receive Hello:SYN
237.3002 +14/06/2006 12:49:03.596  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29708
237.3003 +14/06/2006 12:49:03.616  000>> 91>>>>>>>>>>Part datagram received!
237.3004 +14/06/2006 12:49:03.616  000>> 91>>>>>>>>>>Complete!
237.3005 +14/06/2006 12:49:03.616  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30136
237.3006 +14/06/2006 12:49:03.616  000>> Good datagram received!
237.3007 +14/06/2006 12:49:03.616  000>> Receive Hello:ACK
237.3008 +14/06/2006 12:49:03.716  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3009 +14/06/2006 12:49:03.716  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29709
237.3010 +14/06/2006 12:49:03.716  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29710
237.3011 +14/06/2006 12:49:03.716  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29711
237.3012 +14/06/2006 12:49:03.726  000>> 98>>>>>>>>>>Part datagram received!
237.3013 +14/06/2006 12:49:03.726  000>> 98>>>>>>>>>>Complete!
237.3014 +14/06/2006 12:49:03.726  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30137
237.3015 +14/06/2006 12:49:03.726  000>> Good datagram received!
237.3016 +14/06/2006 12:49:03.726  000>> Listener:Received dictionary
237.3017 +14/06/2006 12:49:03.726  000>> 90>>>>>>>>>>Part datagram received!
237.3018 +14/06/2006 12:49:03.726  000>> 90>>>>>>>>>>Complete!
237.3019 +14/06/2006 12:49:03.726  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30138
237.3020 +14/06/2006 12:49:03.726  000>> Good datagram received!
237.3021 +14/06/2006 12:49:03.726  000>> Listener:Received RIB
237.3022 +14/06/2006 12:49:03.846  000>> 716>>>>>>>>>>Part datagram received!
237.3023 +14/06/2006 12:49:03.846  000>> 716>>>>>>>>>>Complete!
237.3024 +14/06/2006 12:49:03.846  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30139
237.3025 +14/06/2006 12:49:03.846  000>> Good datagram received!
237.3026 +14/06/2006 12:49:03.866  000>> Listener:Received Bundle Offer
237.3027 +14/06/2006 12:49:03.866  000>> Listener:Sending Empty bundle request...
237.3028 +14/06/2006 12:49:03.866  000>> Listener(receiveBOffer):But we can not restart connection...
237.3029 +14/06/2006 12:49:03.866  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29712
237.3030 +14/06/2006 12:49:03.866  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30140
237.3031 +14/06/2006 12:49:03.866  000>> Good datagram received!
237.3032 +14/06/2006 12:49:03.866  000>> Initiator:No more requested bundles
237.3033 +14/06/2006 12:49:03.866  000>> Listener(receiveBundles):We can restart connection...
237.3034 +14/06/2006 12:49:03.966  000>> Hello Procedure:SENDSYN
237.3035 +14/06/2006 12:49:03.966  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29713
237.3036 +14/06/2006 12:49:04.077  000>> 91>>>>>>>>>>Part datagram received!
237.3037 +14/06/2006 12:49:04.077  000>> 91>>>>>>>>>>Complete!
237.3038 +14/06/2006 12:49:04.077  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30141
237.3039 +14/06/2006 12:49:04.077  000>> Good datagram received!
237.3040 +14/06/2006 12:49:04.077  000>> Receive Hello:SYNACK
237.3041 +14/06/2006 12:49:04.077  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29714
237.3042 +14/06/2006 12:49:04.177  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3043 +14/06/2006 12:49:04.177  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29715
237.3044 +14/06/2006 12:49:04.177  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29716
237.3045 +14/06/2006 12:49:04.177  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29717
237.3046 +14/06/2006 12:49:04.207  000>> 98>>>>>>>>>>Part datagram received!
237.3047 +14/06/2006 12:49:04.207  000>> 98>>>>>>>>>>Complete!
237.3048 +14/06/2006 12:49:04.207  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30142
237.3049 +14/06/2006 12:49:04.217  000>> Good datagram received!
237.3050 +14/06/2006 12:49:04.217  000>> Listener:Received dictionary
237.3051 +14/06/2006 12:49:04.237  000>> 90>>>>>>>>>>Part datagram received!
237.3052 +14/06/2006 12:49:04.237  000>> 90>>>>>>>>>>Complete!
237.3053 +14/06/2006 12:49:04.237  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30143
237.3054 +14/06/2006 12:49:04.237  000>> Good datagram received!
237.3055 +14/06/2006 12:49:04.237  000>> Listener:Received RIB
237.3056 +14/06/2006 12:49:04.347  000>> 716>>>>>>>>>>Part datagram received!
237.3057 +14/06/2006 12:49:04.347  000>> 716>>>>>>>>>>Complete!
237.3058 +14/06/2006 12:49:04.347  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30144
237.3059 +14/06/2006 12:49:04.347  000>> Good datagram received!
237.3060 +14/06/2006 12:49:04.367  000>> Listener:Received Bundle Offer
237.3061 +14/06/2006 12:49:04.367  000>> Listener:Sending Empty bundle request...
237.3062 +14/06/2006 12:49:04.367  000>> Listener(receiveBOffer):But we can not restart connection...
237.3063 +14/06/2006 12:49:04.367  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29718
237.3064 +14/06/2006 12:49:04.367  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30145
237.3065 +14/06/2006 12:49:04.367  000>> Good datagram received!
237.3066 +14/06/2006 12:49:04.367  000>> Initiator:No more requested bundles
237.3067 +14/06/2006 12:49:04.367  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.3068 +14/06/2006 12:49:04.487  000>> 91>>>>>>>>>>Part datagram received!
237.3069 +14/06/2006 12:49:04.487  000>> 91>>>>>>>>>>Complete!
237.3070 +14/06/2006 12:49:04.487  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30146
237.3071 +14/06/2006 12:49:04.487  000>> Good datagram received!
237.3072 +14/06/2006 12:49:04.487  000>> Receive Hello:SYN
237.3073 +14/06/2006 12:49:04.497  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29719
237.3074 +14/06/2006 12:49:04.527  000>> 91>>>>>>>>>>Part datagram received!
237.3075 +14/06/2006 12:49:04.527  000>> 91>>>>>>>>>>Complete!
237.3076 +14/06/2006 12:49:04.527  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30147
237.3077 +14/06/2006 12:49:04.527  000>> Good datagram received!
237.3078 +14/06/2006 12:49:04.527  000>> Receive Hello:ACK
237.3079 +14/06/2006 12:49:04.627  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3080 +14/06/2006 12:49:04.627  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29720
237.3081 +14/06/2006 12:49:04.627  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29721
237.3082 +14/06/2006 12:49:04.627  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29722
237.3083 +14/06/2006 12:49:04.627  000>> 98>>>>>>>>>>Part datagram received!
237.3084 +14/06/2006 12:49:04.627  000>> 98>>>>>>>>>>Complete!
237.3085 +14/06/2006 12:49:04.627  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30148
237.3086 +14/06/2006 12:49:04.637  000>> Good datagram received!
237.3087 +14/06/2006 12:49:04.637  000>> Listener:Received dictionary
237.3088 +14/06/2006 12:49:04.637  000>> 90>>>>>>>>>>Part datagram received!
237.3089 +14/06/2006 12:49:04.637  000>> 90>>>>>>>>>>Complete!
237.3090 +14/06/2006 12:49:04.637  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30149
237.3091 +14/06/2006 12:49:04.637  000>> Good datagram received!
237.3092 +14/06/2006 12:49:04.637  000>> Listener:Received RIB
237.3093 +14/06/2006 12:49:04.748  000>> 716>>>>>>>>>>Part datagram received!
237.3094 +14/06/2006 12:49:04.748  000>> 716>>>>>>>>>>Complete!
237.3095 +14/06/2006 12:49:04.748  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30150
237.3096 +14/06/2006 12:49:04.748  000>> Good datagram received!
237.3097 +14/06/2006 12:49:04.768  000>> Listener:Received Bundle Offer
237.3098 +14/06/2006 12:49:04.768  000>> Listener:Sending Empty bundle request...
237.3099 +14/06/2006 12:49:04.768  000>> Listener(receiveBOffer):But we can not restart connection...
237.3100 +14/06/2006 12:49:04.768  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29723
237.3101 +14/06/2006 12:49:04.768  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30151
237.3102 +14/06/2006 12:49:04.768  000>> Good datagram received!
237.3103 +14/06/2006 12:49:04.768  000>> Initiator:No more requested bundles
237.3104 +14/06/2006 12:49:04.768  000>> Listener(receiveBundles):We can restart connection...
237.3105 +14/06/2006 12:49:04.868  000>> Hello Procedure:SENDSYN
237.3106 +14/06/2006 12:49:04.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29724
237.3107 +14/06/2006 12:49:04.968  000>> 91>>>>>>>>>>Part datagram received!
237.3108 +14/06/2006 12:49:04.968  000>> 91>>>>>>>>>>Complete!
237.3109 +14/06/2006 12:49:04.968  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30152
237.3110 +14/06/2006 12:49:04.978  000>> Good datagram received!
237.3111 +14/06/2006 12:49:04.978  000>> Receive Hello:SYNACK
237.3112 +14/06/2006 12:49:04.978  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29725
237.3113 +14/06/2006 12:49:05.078  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3114 +14/06/2006 12:49:05.078  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29726
237.3115 +14/06/2006 12:49:05.078  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29727
237.3116 +14/06/2006 12:49:05.088  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29728
237.3117 +14/06/2006 12:49:05.088  000>> 98>>>>>>>>>>Part datagram received!
237.3118 +14/06/2006 12:49:05.088  000>> 98>>>>>>>>>>Complete!
237.3119 +14/06/2006 12:49:05.098  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30153
237.3120 +14/06/2006 12:49:05.098  000>> Good datagram received!
237.3121 +14/06/2006 12:49:05.098  000>> Listener:Received dictionary
237.3122 +14/06/2006 12:49:05.098  000>> 90>>>>>>>>>>Part datagram received!
237.3123 +14/06/2006 12:49:05.098  000>> 90>>>>>>>>>>Complete!
237.3124 +14/06/2006 12:49:05.098  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30154
237.3125 +14/06/2006 12:49:05.098  000>> Good datagram received!
237.3126 +14/06/2006 12:49:05.098  000>> Listener:Received RIB
237.3127 +14/06/2006 12:49:05.248  000>> 716>>>>>>>>>>Part datagram received!
237.3128 +14/06/2006 12:49:05.248  000>> 716>>>>>>>>>>Complete!
237.3129 +14/06/2006 12:49:05.258  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30155
237.3130 +14/06/2006 12:49:05.258  000>> Good datagram received!
237.3131 +14/06/2006 12:49:05.268  000>> Listener:Received Bundle Offer
237.3132 +14/06/2006 12:49:05.268  000>> Listener:Sending Empty bundle request...
237.3133 +14/06/2006 12:49:05.268  000>> Listener(receiveBOffer):But we can not restart connection...
237.3134 +14/06/2006 12:49:05.268  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29729
237.3135 +14/06/2006 12:49:05.268  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30156
237.3136 +14/06/2006 12:49:05.268  000>> Good datagram received!
237.3137 +14/06/2006 12:49:05.268  000>> Initiator:No more requested bundles
237.3138 +14/06/2006 12:49:05.278  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.3139 +14/06/2006 12:49:05.388  000>> 91>>>>>>>>>>Part datagram received!
237.3140 +14/06/2006 12:49:05.399  000>> 91>>>>>>>>>>Complete!
237.3141 +14/06/2006 12:49:05.399  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30157
237.3142 +14/06/2006 12:49:05.399  000>> Good datagram received!
237.3143 +14/06/2006 12:49:05.399  000>> Receive Hello:SYN
237.3144 +14/06/2006 12:49:05.399  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29730
237.3145 +14/06/2006 12:49:05.429  000>> 91>>>>>>>>>>Part datagram received!
237.3146 +14/06/2006 12:49:05.429  000>> 91>>>>>>>>>>Complete!
237.3147 +14/06/2006 12:49:05.429  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30158
237.3148 +14/06/2006 12:49:05.429  000>> Good datagram received!
237.3149 +14/06/2006 12:49:05.429  000>> Receive Hello:ACK
237.3150 +14/06/2006 12:49:05.539  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3151 +14/06/2006 12:49:05.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29731
237.3152 +14/06/2006 12:49:05.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29732
237.3153 +14/06/2006 12:49:05.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29733
237.3154 +14/06/2006 12:49:05.539  000>> 188>>>>>>>>>>Part datagram received!
237.3155 +14/06/2006 12:49:05.539  000>> 188>>>>>>>>>>Complete!
237.3156 +14/06/2006 12:49:05.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30159
237.3157 +14/06/2006 12:49:05.539  000>> Good datagram received!
237.3158 +14/06/2006 12:49:05.539  000>> Listener:Received dictionary
237.3159 +14/06/2006 12:49:05.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30160
237.3160 +14/06/2006 12:49:05.539  000>> Good datagram received!
237.3161 +14/06/2006 12:49:05.549  000>> Listener:Received RIB
237.3162 +14/06/2006 12:49:05.549  000>> 638>>>>>>>>>>Part datagram received!
237.3163 +14/06/2006 12:49:05.549  000>> 638>>>>>>>>>>Complete!
237.3164 +14/06/2006 12:49:05.549  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30161
237.3165 +14/06/2006 12:49:05.549  000>> Good datagram received!
237.3166 +14/06/2006 12:49:05.559  000>> Listener:Received Bundle Offer
237.3167 +14/06/2006 12:49:05.559  000>> Listener:Sending Empty bundle request...
237.3168 +14/06/2006 12:49:05.569  000>> Listener(receiveBOffer):But we can not restart connection...
237.3169 +14/06/2006 12:49:05.569  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29734
237.3170 +14/06/2006 12:49:05.569  000>> 0>>>>>>>>>>Part datagram received!
237.3171 +14/06/2006 12:49:05.569  000>> 0>>>>>>>>>>Part datagram received!
237.3172 +14/06/2006 12:49:05.649  000>> 78>>>>>>>>>>Part datagram received!
237.3173 +14/06/2006 12:49:05.649  000>> 78>>>>>>>>>>Complete!
237.3174 +14/06/2006 12:49:05.649  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30162
237.3175 +14/06/2006 12:49:05.649  000>> Good datagram received!
237.3176 +14/06/2006 12:49:05.649  000>> Initiator:No more requested bundles
237.3177 +14/06/2006 12:49:05.649  000>> Listener(receiveBundles):We can restart connection...
237.3178 +14/06/2006 12:49:05.749  000>> Hello Procedure:SENDSYN
237.3179 +14/06/2006 12:49:05.749  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29735
237.3180 +14/06/2006 12:49:05.799  000>> 91>>>>>>>>>>Part datagram received!
237.3181 +14/06/2006 12:49:05.799  000>> 91>>>>>>>>>>Complete!
237.3182 +14/06/2006 12:49:05.799  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30163
237.3183 +14/06/2006 12:49:05.799  000>> Good datagram received!
237.3184 +14/06/2006 12:49:05.799  000>> Receive Hello:SYNACK
237.3185 +14/06/2006 12:49:05.799  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29736
237.3186 +14/06/2006 12:49:05.899  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3187 +14/06/2006 12:49:05.899  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29737
237.3188 +14/06/2006 12:49:05.899  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29738
237.3189 +14/06/2006 12:49:05.899  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29739
237.3190 +14/06/2006 12:49:05.959  000>> 98>>>>>>>>>>Part datagram received!
237.3191 +14/06/2006 12:49:05.959  000>> 98>>>>>>>>>>Complete!
237.3192 +14/06/2006 12:49:05.959  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30164
237.3193 +14/06/2006 12:49:05.959  000>> Good datagram received!
237.3194 +14/06/2006 12:49:05.959  000>> Listener:Received dictionary
237.3195 +14/06/2006 12:49:06.160  000>> 806>>>>>>>>>>Part datagram received!
237.3196 +14/06/2006 12:49:06.160  000>> 806>>>>>>>>>>Complete!
237.3197 +14/06/2006 12:49:06.160  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30165
237.3198 +14/06/2006 12:49:06.160  000>> Good datagram received!
237.3199 +14/06/2006 12:49:06.160  000>> Listener:Received RIB
237.3200 +14/06/2006 12:49:06.160  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30166
237.3201 +14/06/2006 12:49:06.160  000>> Good datagram received!
237.3202 +14/06/2006 12:49:06.170  000>> Listener:Received Bundle Offer
237.3203 +14/06/2006 12:49:06.180  000>> Listener:Sending Empty bundle request...
237.3204 +14/06/2006 12:49:06.180  000>> Listener(receiveBOffer):But we can not restart connection...
237.3205 +14/06/2006 12:49:06.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29740
237.3206 +14/06/2006 12:49:06.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30167
237.3207 +14/06/2006 12:49:06.180  000>> Good datagram received!
237.3208 +14/06/2006 12:49:06.180  000>> Initiator:No more requested bundles
237.3209 +14/06/2006 12:49:06.180  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.3210 +14/06/2006 12:49:06.310  000>> 91>>>>>>>>>>Part datagram received!
237.3211 +14/06/2006 12:49:06.320  000>> 91>>>>>>>>>>Complete!
237.3212 +14/06/2006 12:49:06.320  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30168
237.3213 +14/06/2006 12:49:06.320  000>> Good datagram received!
237.3214 +14/06/2006 12:49:06.320  000>> Receive Hello:SYN
237.3215 +14/06/2006 12:49:06.320  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29741
237.3216 +14/06/2006 12:49:06.340  000>> 91>>>>>>>>>>Part datagram received!
237.3217 +14/06/2006 12:49:06.340  000>> 91>>>>>>>>>>Complete!
237.3218 +14/06/2006 12:49:06.340  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30169
237.3219 +14/06/2006 12:49:06.340  000>> Good datagram received!
237.3220 +14/06/2006 12:49:06.340  000>> Receive Hello:ACK
237.3221 +14/06/2006 12:49:06.440  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3222 +14/06/2006 12:49:06.440  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29742
237.3223 +14/06/2006 12:49:06.440  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29743
237.3224 +14/06/2006 12:49:06.450  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29744
237.3225 +14/06/2006 12:49:06.450  000>> 98>>>>>>>>>>Part datagram received!
237.3226 +14/06/2006 12:49:06.450  000>> 98>>>>>>>>>>Complete!
237.3227 +14/06/2006 12:49:06.450  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30170
237.3228 +14/06/2006 12:49:06.450  000>> Good datagram received!
237.3229 +14/06/2006 12:49:06.460  000>> Listener:Received dictionary
237.3230 +14/06/2006 12:49:06.460  000>> 90>>>>>>>>>>Part datagram received!
237.3231 +14/06/2006 12:49:06.460  000>> 90>>>>>>>>>>Complete!
237.3232 +14/06/2006 12:49:06.460  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30171
237.3233 +14/06/2006 12:49:06.460  000>> Good datagram received!
237.3234 +14/06/2006 12:49:06.460  000>> Listener:Received RIB
237.3235 +14/06/2006 12:49:06.660  000>> 716>>>>>>>>>>Part datagram received!
237.3236 +14/06/2006 12:49:06.660  000>> 716>>>>>>>>>>Complete!
237.3237 +14/06/2006 12:49:06.660  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30172
237.3238 +14/06/2006 12:49:06.660  000>> Good datagram received!
237.3239 +14/06/2006 12:49:06.670  000>> Listener:Received Bundle Offer
237.3240 +14/06/2006 12:49:06.670  000>> Listener:Sending Empty bundle request...
237.3241 +14/06/2006 12:49:06.680  000>> Listener(receiveBOffer):But we can not restart connection...
237.3242 +14/06/2006 12:49:06.680  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29745
237.3243 +14/06/2006 12:49:06.680  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30173
237.3244 +14/06/2006 12:49:06.680  000>> Good datagram received!
237.3245 +14/06/2006 12:49:06.680  000>> Initiator:No more requested bundles
237.3246 +14/06/2006 12:49:06.680  000>> Listener(receiveBundles):We can restart connection...
237.3247 +14/06/2006 12:49:06.780  000>> Hello Procedure:SENDSYN
237.3248 +14/06/2006 12:49:06.780  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29746
237.3249 +14/06/2006 12:49:06.881  000>> 91>>>>>>>>>>Part datagram received!
237.3250 +14/06/2006 12:49:06.881  000>> 91>>>>>>>>>>Complete!
237.3251 +14/06/2006 12:49:06.881  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30174
237.3252 +14/06/2006 12:49:06.881  000>> Good datagram received!
237.3253 +14/06/2006 12:49:06.881  000>> Receive Hello:SYNACK
237.3254 +14/06/2006 12:49:06.881  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29747
237.3255 +14/06/2006 12:49:06.991  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3256 +14/06/2006 12:49:06.991  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29748
237.3257 +14/06/2006 12:49:06.991  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29749
237.3258 +14/06/2006 12:49:06.991  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29750
237.3259 +14/06/2006 12:49:07.121  000>> 78>>>>>>>>>>Part datagram received!
237.3260 +14/06/2006 12:49:07.131  000>> 78>>>>>>>>>>Complete!
237.3261 +14/06/2006 12:49:07.131  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30175
237.3262 +14/06/2006 12:49:07.131  000>> Good datagram received!
237.3263 +14/06/2006 12:49:07.131  000>> Initiator:No more requested bundles
237.3264 +14/06/2006 12:49:07.131  000>> Initiator:But we can not restart connection...
237.3265 +14/06/2006 12:49:07.261  000>> 826>>>>>>>>>>Part datagram received!
237.3266 +14/06/2006 12:49:07.261  000>> 826>>>>>>>>>>Complete!
237.3267 +14/06/2006 12:49:07.261  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30176
237.3268 +14/06/2006 12:49:07.261  000>> Good datagram received!
237.3269 +14/06/2006 12:49:07.261  000>> Listener:Received dictionary
237.3270 +14/06/2006 12:49:07.261  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30177
237.3271 +14/06/2006 12:49:07.261  000>> Good datagram received!
237.3272 +14/06/2006 12:49:07.261  000>> Listener:Received RIB
237.3273 +14/06/2006 12:49:07.261  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30178
237.3274 +14/06/2006 12:49:07.261  000>> Good datagram received!
237.3275 +14/06/2006 12:49:07.281  000>> Listener:Received Bundle Offer
237.3276 +14/06/2006 12:49:07.281  000>> Listener:Sending Empty bundle request...
237.3277 +14/06/2006 12:49:07.281  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.3278 +14/06/2006 12:49:07.281  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29751
237.3279 +14/06/2006 12:49:07.421  000>> 91>>>>>>>>>>Part datagram received!
237.3280 +14/06/2006 12:49:07.421  000>> 91>>>>>>>>>>Complete!
237.3281 +14/06/2006 12:49:07.421  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30179
237.3282 +14/06/2006 12:49:07.421  000>> Good datagram received!
237.3283 +14/06/2006 12:49:07.421  000>> Receive Hello:SYN
237.3284 +14/06/2006 12:49:07.421  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29752
237.3285 +14/06/2006 12:49:07.441  000>> 91>>>>>>>>>>Part datagram received!
237.3286 +14/06/2006 12:49:07.451  000>> 91>>>>>>>>>>Complete!
237.3287 +14/06/2006 12:49:07.451  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30180
237.3288 +14/06/2006 12:49:07.451  000>> Good datagram received!
237.3289 +14/06/2006 12:49:07.451  000>> Receive Hello:ACK
237.3290 +14/06/2006 12:49:07.552  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3291 +14/06/2006 12:49:07.552  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29753
237.3292 +14/06/2006 12:49:07.552  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29754
237.3293 +14/06/2006 12:49:07.552  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29755
237.3294 +14/06/2006 12:49:07.552  000>> 98>>>>>>>>>>Part datagram received!
237.3295 +14/06/2006 12:49:07.552  000>> 98>>>>>>>>>>Complete!
237.3296 +14/06/2006 12:49:07.562  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30181
237.3297 +14/06/2006 12:49:07.562  000>> Good datagram received!
237.3298 +14/06/2006 12:49:07.562  000>> Listener:Received dictionary
237.3299 +14/06/2006 12:49:07.562  000>> 90>>>>>>>>>>Part datagram received!
237.3300 +14/06/2006 12:49:07.562  000>> 90>>>>>>>>>>Complete!
237.3301 +14/06/2006 12:49:07.562  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30182
237.3302 +14/06/2006 12:49:07.562  000>> Good datagram received!
237.3303 +14/06/2006 12:49:07.562  000>> Listener:Received RIB
237.3304 +14/06/2006 12:49:07.762  000>> 716>>>>>>>>>>Part datagram received!
237.3305 +14/06/2006 12:49:07.762  000>> 716>>>>>>>>>>Complete!
237.3306 +14/06/2006 12:49:07.762  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30183
237.3307 +14/06/2006 12:49:07.762  000>> Good datagram received!
237.3308 +14/06/2006 12:49:07.772  000>> Listener:Received Bundle Offer
237.3309 +14/06/2006 12:49:07.772  000>> Listener:Sending Empty bundle request...
237.3310 +14/06/2006 12:49:07.772  000>> Listener(receiveBOffer):But we can not restart connection...
237.3311 +14/06/2006 12:49:07.782  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29756
237.3312 +14/06/2006 12:49:07.782  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30184
237.3313 +14/06/2006 12:49:07.782  000>> Good datagram received!
237.3314 +14/06/2006 12:49:07.782  000>> Initiator:No more requested bundles
237.3315 +14/06/2006 12:49:07.782  000>> Listener(receiveBundles):We can restart connection...
237.3316 +14/06/2006 12:49:07.882  000>> Hello Procedure:SENDSYN
237.3317 +14/06/2006 12:49:07.882  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29757
237.3318 +14/06/2006 12:49:07.972  000>> 91>>>>>>>>>>Part datagram received!
237.3319 +14/06/2006 12:49:07.972  000>> 91>>>>>>>>>>Complete!
237.3320 +14/06/2006 12:49:07.972  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30185
237.3321 +14/06/2006 12:49:07.972  000>> Good datagram received!
237.3322 +14/06/2006 12:49:07.982  000>> Receive Hello:SYNACK
237.3323 +14/06/2006 12:49:07.982  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29758
237.3324 +14/06/2006 12:49:08.082  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3325 +14/06/2006 12:49:08.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29759
237.3326 +14/06/2006 12:49:08.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29760
237.3327 +14/06/2006 12:49:08.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29761
237.3328 +14/06/2006 12:49:08.112  000>> 98>>>>>>>>>>Part datagram received!
237.3329 +14/06/2006 12:49:08.112  000>> 98>>>>>>>>>>Complete!
237.3330 +14/06/2006 12:49:08.122  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30186
237.3331 +14/06/2006 12:49:08.122  000>> Good datagram received!
237.3332 +14/06/2006 12:49:08.122  000>> Listener:Received dictionary
237.3333 +14/06/2006 12:49:08.142  000>> 90>>>>>>>>>>Part datagram received!
237.3334 +14/06/2006 12:49:08.142  000>> 90>>>>>>>>>>Complete!
237.3335 +14/06/2006 12:49:08.142  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30187
237.3336 +14/06/2006 12:49:08.142  000>> Good datagram received!
237.3337 +14/06/2006 12:49:08.142  000>> Listener:Received RIB
237.3338 +14/06/2006 12:49:08.263  000>> 716>>>>>>>>>>Part datagram received!
237.3339 +14/06/2006 12:49:08.263  000>> 716>>>>>>>>>>Complete!
237.3340 +14/06/2006 12:49:08.263  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30188
237.3341 +14/06/2006 12:49:08.263  000>> Good datagram received!
237.3342 +14/06/2006 12:49:08.283  000>> Listener:Received Bundle Offer
237.3343 +14/06/2006 12:49:08.283  000>> Listener:Sending Empty bundle request...
237.3344 +14/06/2006 12:49:08.283  000>> Listener(receiveBOffer):But we can not restart connection...
237.3345 +14/06/2006 12:49:08.283  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29762
237.3346 +14/06/2006 12:49:08.283  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30189
237.3347 +14/06/2006 12:49:08.283  000>> Good datagram received!
237.3348 +14/06/2006 12:49:08.283  000>> Initiator:No more requested bundles
237.3349 +14/06/2006 12:49:08.283  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.3350 +14/06/2006 12:49:08.393  000>> 91>>>>>>>>>>Part datagram received!
237.3351 +14/06/2006 12:49:08.393  000>> 91>>>>>>>>>>Complete!
237.3352 +14/06/2006 12:49:08.403  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30190
237.3353 +14/06/2006 12:49:08.403  000>> Good datagram received!
237.3354 +14/06/2006 12:49:08.403  000>> Receive Hello:SYN
237.3355 +14/06/2006 12:49:08.403  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29763
237.3356 +14/06/2006 12:49:08.433  000>> 91>>>>>>>>>>Part datagram received!
237.3357 +14/06/2006 12:49:08.433  000>> 91>>>>>>>>>>Complete!
237.3358 +14/06/2006 12:49:08.433  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30191
237.3359 +14/06/2006 12:49:08.433  000>> Good datagram received!
237.3360 +14/06/2006 12:49:08.433  000>> Receive Hello:ACK
237.3361 +14/06/2006 12:49:08.533  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3362 +14/06/2006 12:49:08.533  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29764
237.3363 +14/06/2006 12:49:08.533  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29765
237.3364 +14/06/2006 12:49:08.533  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29766
237.3365 +14/06/2006 12:49:08.533  000>> 98>>>>>>>>>>Part datagram received!
237.3366 +14/06/2006 12:49:08.533  000>> 98>>>>>>>>>>Complete!
237.3367 +14/06/2006 12:49:08.533  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30192
237.3368 +14/06/2006 12:49:08.533  000>> Good datagram received!
237.3369 +14/06/2006 12:49:08.543  000>> Listener:Received dictionary
237.3370 +14/06/2006 12:49:08.543  000>> 90>>>>>>>>>>Part datagram received!
237.3371 +14/06/2006 12:49:08.543  000>> 90>>>>>>>>>>Complete!
237.3372 +14/06/2006 12:49:08.543  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30193
237.3373 +14/06/2006 12:49:08.543  000>> Good datagram received!
237.3374 +14/06/2006 12:49:08.543  000>> Listener:Received RIB
237.3375 +14/06/2006 12:49:08.663  000>> 716>>>>>>>>>>Part datagram received!
237.3376 +14/06/2006 12:49:08.663  000>> 716>>>>>>>>>>Complete!
237.3377 +14/06/2006 12:49:08.663  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30194
237.3378 +14/06/2006 12:49:08.663  000>> Good datagram received!
237.3379 +14/06/2006 12:49:08.683  000>> Listener:Received Bundle Offer
237.3380 +14/06/2006 12:49:08.683  000>> Listener:Sending Empty bundle request...
237.3381 +14/06/2006 12:49:08.683  000>> Listener(receiveBOffer):But we can not restart connection...
237.3382 +14/06/2006 12:49:08.683  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29767
237.3383 +14/06/2006 12:49:08.683  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30195
237.3384 +14/06/2006 12:49:08.683  000>> Good datagram received!
237.3385 +14/06/2006 12:49:08.683  000>> Initiator:No more requested bundles
237.3386 +14/06/2006 12:49:08.683  000>> Listener(receiveBundles):We can restart connection...
237.3387 +14/06/2006 12:49:08.783  000>> Hello Procedure:SENDSYN
237.3388 +14/06/2006 12:49:08.783  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29768
237.3389 +14/06/2006 12:49:08.884  000>> 91>>>>>>>>>>Part datagram received!
237.3390 +14/06/2006 12:49:08.884  000>> 91>>>>>>>>>>Complete!
237.3391 +14/06/2006 12:49:08.884  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30196
237.3392 +14/06/2006 12:49:08.884  000>> Good datagram received!
237.3393 +14/06/2006 12:49:08.884  000>> Receive Hello:SYNACK
237.3394 +14/06/2006 12:49:08.884  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29769
237.3395 +14/06/2006 12:49:08.984  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3396 +14/06/2006 12:49:08.984  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29770
237.3397 +14/06/2006 12:49:08.984  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29771
237.3398 +14/06/2006 12:49:08.984  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29772
237.3399 +14/06/2006 12:49:09.114  000>> 78>>>>>>>>>>Part datagram received!
237.3400 +14/06/2006 12:49:09.124  000>> 78>>>>>>>>>>Complete!
237.3401 +14/06/2006 12:49:09.124  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30197
237.3402 +14/06/2006 12:49:09.124  000>> Good datagram received!
237.3403 +14/06/2006 12:49:09.124  000>> Initiator:No more requested bundles
237.3404 +14/06/2006 12:49:09.124  000>> Initiator:But we can not restart connection...
237.3405 +14/06/2006 12:49:09.264  000>> 826>>>>>>>>>>Part datagram received!
237.3406 +14/06/2006 12:49:09.264  000>> 826>>>>>>>>>>Complete!
237.3407 +14/06/2006 12:49:09.264  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30198
237.3408 +14/06/2006 12:49:09.264  000>> Good datagram received!
237.3409 +14/06/2006 12:49:09.264  000>> Listener:Received dictionary
237.3410 +14/06/2006 12:49:09.274  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30199
237.3411 +14/06/2006 12:49:09.274  000>> Good datagram received!
237.3412 +14/06/2006 12:49:09.274  000>> Listener:Received RIB
237.3413 +14/06/2006 12:49:09.274  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30200
237.3414 +14/06/2006 12:49:09.274  000>> Good datagram received!
237.3415 +14/06/2006 12:49:09.284  000>> Listener:Received Bundle Offer
237.3416 +14/06/2006 12:49:09.284  000>> Listener:Sending Empty bundle request...
237.3417 +14/06/2006 12:49:09.284  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.3418 +14/06/2006 12:49:09.294  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29773
237.3419 +14/06/2006 12:49:09.424  000>> 91>>>>>>>>>>Part datagram received!
237.3420 +14/06/2006 12:49:09.424  000>> 91>>>>>>>>>>Complete!
237.3421 +14/06/2006 12:49:09.424  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30201
237.3422 +14/06/2006 12:49:09.434  000>> Good datagram received!
237.3423 +14/06/2006 12:49:09.434  000>> Receive Hello:SYN
237.3424 +14/06/2006 12:49:09.434  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29774
237.3425 +14/06/2006 12:49:09.464  000>> 91>>>>>>>>>>Part datagram received!
237.3426 +14/06/2006 12:49:09.464  000>> 91>>>>>>>>>>Complete!
237.3427 +14/06/2006 12:49:09.464  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30202
237.3428 +14/06/2006 12:49:09.464  000>> Good datagram received!
237.3429 +14/06/2006 12:49:09.464  000>> Receive Hello:ACK
237.3430 +14/06/2006 12:49:09.564  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3431 +14/06/2006 12:49:09.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29775
237.3432 +14/06/2006 12:49:09.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29776
237.3433 +14/06/2006 12:49:09.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29777
237.3434 +14/06/2006 12:49:09.575  000>> 98>>>>>>>>>>Part datagram received!
237.3435 +14/06/2006 12:49:09.575  000>> 98>>>>>>>>>>Complete!
237.3436 +14/06/2006 12:49:09.575  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30203
237.3437 +14/06/2006 12:49:09.575  000>> Good datagram received!
237.3438 +14/06/2006 12:49:09.575  000>> Listener:Received dictionary
237.3439 +14/06/2006 12:49:09.575  000>> 90>>>>>>>>>>Part datagram received!
237.3440 +14/06/2006 12:49:09.575  000>> 90>>>>>>>>>>Complete!
237.3441 +14/06/2006 12:49:09.575  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30204
237.3442 +14/06/2006 12:49:09.575  000>> Good datagram received!
237.3443 +14/06/2006 12:49:09.575  000>> Listener:Received RIB
237.3444 +14/06/2006 12:49:09.765  000>> 716>>>>>>>>>>Part datagram received!
237.3445 +14/06/2006 12:49:09.765  000>> 716>>>>>>>>>>Complete!
237.3446 +14/06/2006 12:49:09.765  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30205
237.3447 +14/06/2006 12:49:09.765  000>> Good datagram received!
237.3448 +14/06/2006 12:49:09.785  000>> Listener:Received Bundle Offer
237.3449 +14/06/2006 12:49:09.785  000>> Listener:Sending Empty bundle request...
237.3450 +14/06/2006 12:49:09.785  000>> Listener(receiveBOffer):But we can not restart connection...
237.3451 +14/06/2006 12:49:09.785  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29778
237.3452 +14/06/2006 12:49:09.785  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30206
237.3453 +14/06/2006 12:49:09.785  000>> Good datagram received!
237.3454 +14/06/2006 12:49:09.795  000>> Initiator:No more requested bundles
237.3455 +14/06/2006 12:49:09.795  000>> Listener(receiveBundles):We can restart connection...
237.3456 +14/06/2006 12:49:09.895  000>> Hello Procedure:SENDSYN
237.3457 +14/06/2006 12:49:09.895  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29779
237.3458 +14/06/2006 12:49:10.015  000>> 91>>>>>>>>>>Part datagram received!
237.3459 +14/06/2006 12:49:10.015  000>> 91>>>>>>>>>>Complete!
237.3460 +14/06/2006 12:49:10.015  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30207
237.3461 +14/06/2006 12:49:10.015  000>> Good datagram received!
237.3462 +14/06/2006 12:49:10.015  000>> Receive Hello:SYNACK
237.3463 +14/06/2006 12:49:10.015  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29780
237.3464 +14/06/2006 12:49:10.115  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3465 +14/06/2006 12:49:10.115  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29781
237.3466 +14/06/2006 12:49:10.115  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29782
237.3467 +14/06/2006 12:49:10.115  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29783
237.3468 +14/06/2006 12:49:10.135  000>> 98>>>>>>>>>>Part datagram received!
237.3469 +14/06/2006 12:49:10.135  000>> 98>>>>>>>>>>Complete!
237.3470 +14/06/2006 12:49:10.145  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30208
237.3471 +14/06/2006 12:49:10.145  000>> Good datagram received!
237.3472 +14/06/2006 12:49:10.145  000>> Listener:Received dictionary
237.3473 +14/06/2006 12:49:10.145  000>> 90>>>>>>>>>>Part datagram received!
237.3474 +14/06/2006 12:49:10.145  000>> 90>>>>>>>>>>Complete!
237.3475 +14/06/2006 12:49:10.145  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30209
237.3476 +14/06/2006 12:49:10.145  000>> Good datagram received!
237.3477 +14/06/2006 12:49:10.145  000>> Listener:Received RIB
237.3478 +14/06/2006 12:49:10.266  000>> 716>>>>>>>>>>Part datagram received!
237.3479 +14/06/2006 12:49:10.266  000>> 716>>>>>>>>>>Complete!
237.3480 +14/06/2006 12:49:10.266  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30210
237.3481 +14/06/2006 12:49:10.266  000>> Good datagram received!
237.3482 +14/06/2006 12:49:10.286  000>> Listener:Received Bundle Offer
237.3483 +14/06/2006 12:49:10.286  000>> Listener:Sending Empty bundle request...
237.3484 +14/06/2006 12:49:10.286  000>> Listener(receiveBOffer):But we can not restart connection...
237.3485 +14/06/2006 12:49:10.286  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29784
237.3486 +14/06/2006 12:49:10.286  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30211
237.3487 +14/06/2006 12:49:10.296  000>> Good datagram received!
237.3488 +14/06/2006 12:49:10.296  000>> Initiator:No more requested bundles
237.3489 +14/06/2006 12:49:10.296  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.3490 +14/06/2006 12:49:10.426  000>> 91>>>>>>>>>>Part datagram received!
237.3491 +14/06/2006 12:49:10.426  000>> 91>>>>>>>>>>Complete!
237.3492 +14/06/2006 12:49:10.426  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30212
237.3493 +14/06/2006 12:49:10.426  000>> Good datagram received!
237.3494 +14/06/2006 12:49:10.426  000>> Receive Hello:SYN
237.3495 +14/06/2006 12:49:10.426  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29785
237.3496 +14/06/2006 12:49:10.456  000>> 91>>>>>>>>>>Part datagram received!
237.3497 +14/06/2006 12:49:10.456  000>> 91>>>>>>>>>>Complete!
237.3498 +14/06/2006 12:49:10.456  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30213
237.3499 +14/06/2006 12:49:10.456  000>> Good datagram received!
237.3500 +14/06/2006 12:49:10.456  000>> Receive Hello:ACK
237.3501 +14/06/2006 12:49:10.556  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3502 +14/06/2006 12:49:10.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29786
237.3503 +14/06/2006 12:49:10.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29787
237.3504 +14/06/2006 12:49:10.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29788
237.3505 +14/06/2006 12:49:10.556  000>> 98>>>>>>>>>>Part datagram received!
237.3506 +14/06/2006 12:49:10.556  000>> 98>>>>>>>>>>Complete!
237.3507 +14/06/2006 12:49:10.566  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30214
237.3508 +14/06/2006 12:49:10.566  000>> Good datagram received!
237.3509 +14/06/2006 12:49:10.566  000>> Listener:Received dictionary
237.3510 +14/06/2006 12:49:10.566  000>> 90>>>>>>>>>>Part datagram received!
237.3511 +14/06/2006 12:49:10.566  000>> 90>>>>>>>>>>Complete!
237.3512 +14/06/2006 12:49:10.566  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30215
237.3513 +14/06/2006 12:49:10.566  000>> Good datagram received!
237.3514 +14/06/2006 12:49:10.566  000>> Listener:Received RIB
237.3515 +14/06/2006 12:49:10.666  000>> 716>>>>>>>>>>Part datagram received!
237.3516 +14/06/2006 12:49:10.666  000>> 716>>>>>>>>>>Complete!
237.3517 +14/06/2006 12:49:10.676  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30216
237.3518 +14/06/2006 12:49:10.676  000>> Good datagram received!
237.3519 +14/06/2006 12:49:10.686  000>> Listener:Received Bundle Offer
237.3520 +14/06/2006 12:49:10.686  000>> Listener:Sending Empty bundle request...
237.3521 +14/06/2006 12:49:10.686  000>> Listener(receiveBOffer):But we can not restart connection...
237.3522 +14/06/2006 12:49:10.686  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29789
237.3523 +14/06/2006 12:49:10.686  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30217
237.3524 +14/06/2006 12:49:10.686  000>> Good datagram received!
237.3525 +14/06/2006 12:49:10.696  000>> Initiator:No more requested bundles
237.3526 +14/06/2006 12:49:10.696  000>> Listener(receiveBundles):We can restart connection...
237.3527 +14/06/2006 12:49:10.796  000>> Hello Procedure:SENDSYN
237.3528 +14/06/2006 12:49:10.796  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29790
237.3529 +14/06/2006 12:49:10.896  000>> 91>>>>>>>>>>Part datagram received!
237.3530 +14/06/2006 12:49:10.896  000>> 91>>>>>>>>>>Complete!
237.3531 +14/06/2006 12:49:10.896  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30218
237.3532 +14/06/2006 12:49:10.896  000>> Good datagram received!
237.3533 +14/06/2006 12:49:10.896  000>> Receive Hello:SYNACK
237.3534 +14/06/2006 12:49:10.896  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29791
237.3535 +14/06/2006 12:49:10.997  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3536 +14/06/2006 12:49:10.997  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29792
237.3537 +14/06/2006 12:49:10.997  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29793
237.3538 +14/06/2006 12:49:10.997  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29794
237.3539 +14/06/2006 12:49:11.137  000>> 78>>>>>>>>>>Part datagram received!
237.3540 +14/06/2006 12:49:11.137  000>> 78>>>>>>>>>>Complete!
237.3541 +14/06/2006 12:49:11.137  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30219
237.3542 +14/06/2006 12:49:11.137  000>> Good datagram received!
237.3543 +14/06/2006 12:49:11.137  000>> Initiator:No more requested bundles
237.3544 +14/06/2006 12:49:11.137  000>> Initiator:But we can not restart connection...
237.3545 +14/06/2006 12:49:11.267  000>> 826>>>>>>>>>>Part datagram received!
237.3546 +14/06/2006 12:49:11.267  000>> 826>>>>>>>>>>Complete!
237.3547 +14/06/2006 12:49:11.277  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30220
237.3548 +14/06/2006 12:49:11.277  000>> Good datagram received!
237.3549 +14/06/2006 12:49:11.277  000>> Listener:Received dictionary
237.3550 +14/06/2006 12:49:11.277  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30221
237.3551 +14/06/2006 12:49:11.277  000>> Good datagram received!
237.3552 +14/06/2006 12:49:11.277  000>> Listener:Received RIB
237.3553 +14/06/2006 12:49:11.277  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30222
237.3554 +14/06/2006 12:49:11.277  000>> Good datagram received!
237.3555 +14/06/2006 12:49:11.297  000>> Listener:Received Bundle Offer
237.3556 +14/06/2006 12:49:11.297  000>> Listener:Sending Empty bundle request...
237.3557 +14/06/2006 12:49:11.297  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.3558 +14/06/2006 12:49:11.297  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29795
237.3559 +14/06/2006 12:49:11.427  000>> 91>>>>>>>>>>Part datagram received!
237.3560 +14/06/2006 12:49:11.427  000>> 91>>>>>>>>>>Complete!
237.3561 +14/06/2006 12:49:11.427  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30223
237.3562 +14/06/2006 12:49:11.427  000>> Good datagram received!
237.3563 +14/06/2006 12:49:11.427  000>> Receive Hello:SYN
237.3564 +14/06/2006 12:49:11.427  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29796
237.3565 +14/06/2006 12:49:11.457  000>> 91>>>>>>>>>>Part datagram received!
237.3566 +14/06/2006 12:49:11.457  000>> 91>>>>>>>>>>Complete!
237.3567 +14/06/2006 12:49:11.457  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30224
237.3568 +14/06/2006 12:49:11.457  000>> Good datagram received!
237.3569 +14/06/2006 12:49:11.457  000>> Receive Hello:ACK
237.3570 +14/06/2006 12:49:11.557  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3571 +14/06/2006 12:49:11.557  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29797
237.3572 +14/06/2006 12:49:11.557  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29798
237.3573 +14/06/2006 12:49:11.557  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29799
237.3574 +14/06/2006 12:49:11.557  000>> 98>>>>>>>>>>Part datagram received!
237.3575 +14/06/2006 12:49:11.567  000>> 98>>>>>>>>>>Complete!
237.3576 +14/06/2006 12:49:11.567  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30225
237.3577 +14/06/2006 12:49:11.567  000>> Good datagram received!
237.3578 +14/06/2006 12:49:11.567  000>> Listener:Received dictionary
237.3579 +14/06/2006 12:49:11.567  000>> 90>>>>>>>>>>Part datagram received!
237.3580 +14/06/2006 12:49:11.567  000>> 90>>>>>>>>>>Complete!
237.3581 +14/06/2006 12:49:11.567  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30226
237.3582 +14/06/2006 12:49:11.567  000>> Good datagram received!
237.3583 +14/06/2006 12:49:11.567  000>> Listener:Received RIB
237.3584 +14/06/2006 12:49:11.668  000>> 716>>>>>>>>>>Part datagram received!
237.3585 +14/06/2006 12:49:11.678  000>> 716>>>>>>>>>>Complete!
237.3586 +14/06/2006 12:49:11.678  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30227
237.3587 +14/06/2006 12:49:11.678  000>> Good datagram received!
237.3588 +14/06/2006 12:49:11.688  000>> Listener:Received Bundle Offer
237.3589 +14/06/2006 12:49:11.688  000>> Listener:Sending Empty bundle request...
237.3590 +14/06/2006 12:49:11.688  000>> Listener(receiveBOffer):But we can not restart connection...
237.3591 +14/06/2006 12:49:11.688  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29800
237.3592 +14/06/2006 12:49:11.688  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30228
237.3593 +14/06/2006 12:49:11.688  000>> Good datagram received!
237.3594 +14/06/2006 12:49:11.698  000>> Initiator:No more requested bundles
237.3595 +14/06/2006 12:49:11.698  000>> Listener(receiveBundles):We can restart connection...
237.3596 +14/06/2006 12:49:11.798  000>> Hello Procedure:SENDSYN
237.3597 +14/06/2006 12:49:11.798  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29801
237.3598 +14/06/2006 12:49:11.888  000>> 91>>>>>>>>>>Part datagram received!
237.3599 +14/06/2006 12:49:11.888  000>> 91>>>>>>>>>>Complete!
237.3600 +14/06/2006 12:49:11.888  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30229
237.3601 +14/06/2006 12:49:11.888  000>> Good datagram received!
237.3602 +14/06/2006 12:49:11.888  000>> Receive Hello:SYNACK
237.3603 +14/06/2006 12:49:11.888  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29802
237.3604 +14/06/2006 12:49:11.998  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3605 +14/06/2006 12:49:11.998  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29803
237.3606 +14/06/2006 12:49:11.998  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29804
237.3607 +14/06/2006 12:49:11.998  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29805
237.3608 +14/06/2006 12:49:12.118  000>> 78>>>>>>>>>>Part datagram received!
237.3609 +14/06/2006 12:49:12.118  000>> 78>>>>>>>>>>Complete!
237.3610 +14/06/2006 12:49:12.118  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30230
237.3611 +14/06/2006 12:49:12.128  000>> Good datagram received!
237.3612 +14/06/2006 12:49:12.128  000>> Initiator:No more requested bundles
237.3613 +14/06/2006 12:49:12.128  000>> Initiator:But we can not restart connection...
237.3614 +14/06/2006 12:49:12.278  000>> 826>>>>>>>>>>Part datagram received!
237.3615 +14/06/2006 12:49:12.278  000>> 826>>>>>>>>>>Complete!
237.3616 +14/06/2006 12:49:12.278  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30231
237.3617 +14/06/2006 12:49:12.278  000>> Good datagram received!
237.3618 +14/06/2006 12:49:12.278  000>> Listener:Received dictionary
237.3619 +14/06/2006 12:49:12.278  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30232
237.3620 +14/06/2006 12:49:12.278  000>> Good datagram received!
237.3621 +14/06/2006 12:49:12.278  000>> Listener:Received RIB
237.3622 +14/06/2006 12:49:12.278  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30233
237.3623 +14/06/2006 12:49:12.278  000>> Good datagram received!
237.3624 +14/06/2006 12:49:12.298  000>> Listener:Received Bundle Offer
237.3625 +14/06/2006 12:49:12.298  000>> Listener:Sending Empty bundle request...
237.3626 +14/06/2006 12:49:12.298  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.3627 +14/06/2006 12:49:12.298  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29806
237.3628 +14/06/2006 12:49:12.439  000>> 91>>>>>>>>>>Part datagram received!
237.3629 +14/06/2006 12:49:12.439  000>> 91>>>>>>>>>>Complete!
237.3630 +14/06/2006 12:49:12.439  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30234
237.3631 +14/06/2006 12:49:12.439  000>> Good datagram received!
237.3632 +14/06/2006 12:49:12.439  000>> Receive Hello:SYN
237.3633 +14/06/2006 12:49:12.439  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29807
237.3634 +14/06/2006 12:49:12.459  000>> 91>>>>>>>>>>Part datagram received!
237.3635 +14/06/2006 12:49:12.459  000>> 91>>>>>>>>>>Complete!
237.3636 +14/06/2006 12:49:12.459  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30235
237.3637 +14/06/2006 12:49:12.459  000>> Good datagram received!
237.3638 +14/06/2006 12:49:12.459  000>> Receive Hello:ACK
237.3639 +14/06/2006 12:49:12.559  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3640 +14/06/2006 12:49:12.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29808
237.3641 +14/06/2006 12:49:12.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29809
237.3642 +14/06/2006 12:49:12.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29810
237.3643 +14/06/2006 12:49:12.579  000>> 98>>>>>>>>>>Part datagram received!
237.3644 +14/06/2006 12:49:12.579  000>> 98>>>>>>>>>>Complete!
237.3645 +14/06/2006 12:49:12.579  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30236
237.3646 +14/06/2006 12:49:12.579  000>> Good datagram received!
237.3647 +14/06/2006 12:49:12.579  000>> Listener:Received dictionary
237.3648 +14/06/2006 12:49:12.579  000>> 90>>>>>>>>>>Part datagram received!
237.3649 +14/06/2006 12:49:12.579  000>> 90>>>>>>>>>>Complete!
237.3650 +14/06/2006 12:49:12.579  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30237
237.3651 +14/06/2006 12:49:12.579  000>> Good datagram received!
237.3652 +14/06/2006 12:49:12.579  000>> Listener:Received RIB
237.3653 +14/06/2006 12:49:12.779  000>> 716>>>>>>>>>>Part datagram received!
237.3654 +14/06/2006 12:49:12.779  000>> 716>>>>>>>>>>Complete!
237.3655 +14/06/2006 12:49:12.779  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30238
237.3656 +14/06/2006 12:49:12.779  000>> Good datagram received!
237.3657 +14/06/2006 12:49:12.789  000>> Listener:Received Bundle Offer
237.3658 +14/06/2006 12:49:12.789  000>> Listener:Sending Empty bundle request...
237.3659 +14/06/2006 12:49:12.789  000>> Listener(receiveBOffer):But we can not restart connection...
237.3660 +14/06/2006 12:49:12.789  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29811
237.3661 +14/06/2006 12:49:12.799  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30239
237.3662 +14/06/2006 12:49:12.799  000>> Good datagram received!
237.3663 +14/06/2006 12:49:12.799  000>> Initiator:No more requested bundles
237.3664 +14/06/2006 12:49:12.799  000>> Listener(receiveBundles):We can restart connection...
237.3665 +14/06/2006 12:49:12.899  000>> Hello Procedure:SENDSYN
237.3666 +14/06/2006 12:49:12.899  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29812
237.3667 +14/06/2006 12:49:12.979  000>> 91>>>>>>>>>>Part datagram received!
237.3668 +14/06/2006 12:49:12.979  000>> 91>>>>>>>>>>Complete!
237.3669 +14/06/2006 12:49:12.979  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30240
237.3670 +14/06/2006 12:49:12.979  000>> Good datagram received!
237.3671 +14/06/2006 12:49:12.979  000>> Receive Hello:SYNACK
237.3672 +14/06/2006 12:49:12.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29813
237.3673 +14/06/2006 12:49:13.090  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3674 +14/06/2006 12:49:13.090  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29814
237.3675 +14/06/2006 12:49:13.090  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29815
237.3676 +14/06/2006 12:49:13.090  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29816
237.3677 +14/06/2006 12:49:13.100  000>> 98>>>>>>>>>>Part datagram received!
237.3678 +14/06/2006 12:49:13.100  000>> 98>>>>>>>>>>Complete!
237.3679 +14/06/2006 12:49:13.100  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30241
237.3680 +14/06/2006 12:49:13.100  000>> Good datagram received!
237.3681 +14/06/2006 12:49:13.100  000>> Listener:Received dictionary
237.3682 +14/06/2006 12:49:13.110  000>> 90>>>>>>>>>>Part datagram received!
237.3683 +14/06/2006 12:49:13.110  000>> 90>>>>>>>>>>Complete!
237.3684 +14/06/2006 12:49:13.110  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30242
237.3685 +14/06/2006 12:49:13.110  000>> Good datagram received!
237.3686 +14/06/2006 12:49:13.110  000>> Listener:Received RIB
237.3687 +14/06/2006 12:49:13.280  000>> 716>>>>>>>>>>Part datagram received!
237.3688 +14/06/2006 12:49:13.280  000>> 716>>>>>>>>>>Complete!
237.3689 +14/06/2006 12:49:13.280  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30243
237.3690 +14/06/2006 12:49:13.280  000>> Good datagram received!
237.3691 +14/06/2006 12:49:13.290  000>> Listener:Received Bundle Offer
237.3692 +14/06/2006 12:49:13.290  000>> Listener:Sending Empty bundle request...
237.3693 +14/06/2006 12:49:13.300  000>> Listener(receiveBOffer):But we can not restart connection...
237.3694 +14/06/2006 12:49:13.300  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29817
237.3695 +14/06/2006 12:49:13.300  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30244
237.3696 +14/06/2006 12:49:13.300  000>> Good datagram received!
237.3697 +14/06/2006 12:49:13.300  000>> Initiator:No more requested bundles
237.3698 +14/06/2006 12:49:13.300  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.3699 +14/06/2006 12:49:13.430  000>> 91>>>>>>>>>>Part datagram received!
237.3700 +14/06/2006 12:49:13.430  000>> 91>>>>>>>>>>Complete!
237.3701 +14/06/2006 12:49:13.430  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30245
237.3702 +14/06/2006 12:49:13.430  000>> Good datagram received!
237.3703 +14/06/2006 12:49:13.430  000>> Receive Hello:SYN
237.3704 +14/06/2006 12:49:13.440  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29818
237.3705 +14/06/2006 12:49:13.480  000>> 91>>>>>>>>>>Part datagram received!
237.3706 +14/06/2006 12:49:13.480  000>> 91>>>>>>>>>>Complete!
237.3707 +14/06/2006 12:49:13.480  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30246
237.3708 +14/06/2006 12:49:13.480  000>> Good datagram received!
237.3709 +14/06/2006 12:49:13.480  000>> Receive Hello:ACK
237.3710 +14/06/2006 12:49:13.580  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3711 +14/06/2006 12:49:13.580  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29819
237.3712 +14/06/2006 12:49:13.580  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29820
237.3713 +14/06/2006 12:49:13.580  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29821
237.3714 +14/06/2006 12:49:13.590  000>> 98>>>>>>>>>>Part datagram received!
237.3715 +14/06/2006 12:49:13.590  000>> 98>>>>>>>>>>Complete!
237.3716 +14/06/2006 12:49:13.590  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30247
237.3717 +14/06/2006 12:49:13.590  000>> Good datagram received!
237.3718 +14/06/2006 12:49:13.590  000>> Listener:Received dictionary
237.3719 +14/06/2006 12:49:13.610  000>> 90>>>>>>>>>>Part datagram received!
237.3720 +14/06/2006 12:49:13.610  000>> 90>>>>>>>>>>Complete!
237.3721 +14/06/2006 12:49:13.610  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30248
237.3722 +14/06/2006 12:49:13.610  000>> Good datagram received!
237.3723 +14/06/2006 12:49:13.610  000>> Listener:Received RIB
237.3724 +14/06/2006 12:49:13.781  000>> 716>>>>>>>>>>Part datagram received!
237.3725 +14/06/2006 12:49:13.781  000>> 716>>>>>>>>>>Complete!
237.3726 +14/06/2006 12:49:13.781  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30249
237.3727 +14/06/2006 12:49:13.781  000>> Good datagram received!
237.3728 +14/06/2006 12:49:13.791  000>> Listener:Received Bundle Offer
237.3729 +14/06/2006 12:49:13.801  000>> Listener:Sending Empty bundle request...
237.3730 +14/06/2006 12:49:13.801  000>> Listener(receiveBOffer):But we can not restart connection...
237.3731 +14/06/2006 12:49:13.801  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29822
237.3732 +14/06/2006 12:49:13.801  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30250
237.3733 +14/06/2006 12:49:13.801  000>> Good datagram received!
237.3734 +14/06/2006 12:49:13.801  000>> Initiator:No more requested bundles
237.3735 +14/06/2006 12:49:13.801  000>> Listener(receiveBundles):We can restart connection...
237.3736 +14/06/2006 12:49:13.901  000>> Hello Procedure:SENDSYN
237.3737 +14/06/2006 12:49:13.901  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29823
237.3738 +14/06/2006 12:49:14.001  000>> 91>>>>>>>>>>Part datagram received!
237.3739 +14/06/2006 12:49:14.001  000>> 91>>>>>>>>>>Complete!
237.3740 +14/06/2006 12:49:14.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30251
237.3741 +14/06/2006 12:49:14.001  000>> Good datagram received!
237.3742 +14/06/2006 12:49:14.001  000>> Receive Hello:SYNACK
237.3743 +14/06/2006 12:49:14.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29824
237.3744 +14/06/2006 12:49:14.111  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3745 +14/06/2006 12:49:14.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29825
237.3746 +14/06/2006 12:49:14.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29826
237.3747 +14/06/2006 12:49:14.121  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29827
237.3748 +14/06/2006 12:49:14.131  000>> 98>>>>>>>>>>Part datagram received!
237.3749 +14/06/2006 12:49:14.131  000>> 98>>>>>>>>>>Complete!
237.3750 +14/06/2006 12:49:14.131  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30252
237.3751 +14/06/2006 12:49:14.131  000>> Good datagram received!
237.3752 +14/06/2006 12:49:14.131  000>> Listener:Received dictionary
237.3753 +14/06/2006 12:49:14.131  000>> 90>>>>>>>>>>Part datagram received!
237.3754 +14/06/2006 12:49:14.141  000>> 90>>>>>>>>>>Complete!
237.3755 +14/06/2006 12:49:14.141  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30253
237.3756 +14/06/2006 12:49:14.141  000>> Good datagram received!
237.3757 +14/06/2006 12:49:14.141  000>> Listener:Received RIB
237.3758 +14/06/2006 12:49:14.281  000>> 716>>>>>>>>>>Part datagram received!
237.3759 +14/06/2006 12:49:14.281  000>> 716>>>>>>>>>>Complete!
237.3760 +14/06/2006 12:49:14.281  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30254
237.3761 +14/06/2006 12:49:14.281  000>> Good datagram received!
237.3762 +14/06/2006 12:49:14.301  000>> Listener:Received Bundle Offer
237.3763 +14/06/2006 12:49:14.301  000>> Listener:Sending Empty bundle request...
237.3764 +14/06/2006 12:49:14.301  000>> Listener(receiveBOffer):But we can not restart connection...
237.3765 +14/06/2006 12:49:14.301  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29828
237.3766 +14/06/2006 12:49:14.301  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30255
237.3767 +14/06/2006 12:49:14.301  000>> Good datagram received!
237.3768 +14/06/2006 12:49:14.301  000>> Initiator:No more requested bundles
237.3769 +14/06/2006 12:49:14.301  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.3770 +14/06/2006 12:49:14.431  000>> 91>>>>>>>>>>Part datagram received!
237.3771 +14/06/2006 12:49:14.431  000>> 91>>>>>>>>>>Complete!
237.3772 +14/06/2006 12:49:14.431  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30256
237.3773 +14/06/2006 12:49:14.431  000>> Good datagram received!
237.3774 +14/06/2006 12:49:14.431  000>> Receive Hello:SYN
237.3775 +14/06/2006 12:49:14.431  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29829
237.3776 +14/06/2006 12:49:14.462  000>> 91>>>>>>>>>>Part datagram received!
237.3777 +14/06/2006 12:49:14.462  000>> 91>>>>>>>>>>Complete!
237.3778 +14/06/2006 12:49:14.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30257
237.3779 +14/06/2006 12:49:14.472  000>> Good datagram received!
237.3780 +14/06/2006 12:49:14.472  000>> Receive Hello:ACK
237.3781 +14/06/2006 12:49:14.572  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3782 +14/06/2006 12:49:14.572  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29830
237.3783 +14/06/2006 12:49:14.572  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29831
237.3784 +14/06/2006 12:49:14.572  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29832
237.3785 +14/06/2006 12:49:14.572  000>> 188>>>>>>>>>>Part datagram received!
237.3786 +14/06/2006 12:49:14.572  000>> 188>>>>>>>>>>Complete!
237.3787 +14/06/2006 12:49:14.572  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30258
237.3788 +14/06/2006 12:49:14.572  000>> Good datagram received!
237.3789 +14/06/2006 12:49:14.572  000>> Listener:Received dictionary
237.3790 +14/06/2006 12:49:14.582  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30259
237.3791 +14/06/2006 12:49:14.582  000>> Good datagram received!
237.3792 +14/06/2006 12:49:14.582  000>> Listener:Received RIB
237.3793 +14/06/2006 12:49:14.582  000>> 638>>>>>>>>>>Part datagram received!
237.3794 +14/06/2006 12:49:14.582  000>> 638>>>>>>>>>>Complete!
237.3795 +14/06/2006 12:49:14.582  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30260
237.3796 +14/06/2006 12:49:14.582  000>> Good datagram received!
237.3797 +14/06/2006 12:49:14.592  000>> Listener:Received Bundle Offer
237.3798 +14/06/2006 12:49:14.602  000>> Listener:Sending Empty bundle request...
237.3799 +14/06/2006 12:49:14.602  000>> Listener(receiveBOffer):But we can not restart connection...
237.3800 +14/06/2006 12:49:14.602  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29833
237.3801 +14/06/2006 12:49:14.602  000>> 0>>>>>>>>>>Part datagram received!
237.3802 +14/06/2006 12:49:14.602  000>> 0>>>>>>>>>>Part datagram received!
237.3803 +14/06/2006 12:49:14.682  000>> 78>>>>>>>>>>Part datagram received!
237.3804 +14/06/2006 12:49:14.682  000>> 78>>>>>>>>>>Complete!
237.3805 +14/06/2006 12:49:14.682  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30261
237.3806 +14/06/2006 12:49:14.682  000>> Good datagram received!
237.3807 +14/06/2006 12:49:14.682  000>> Initiator:No more requested bundles
237.3808 +14/06/2006 12:49:14.682  000>> Listener(receiveBundles):We can restart connection...
237.3809 +14/06/2006 12:49:14.782  000>> Hello Procedure:SENDSYN
237.3810 +14/06/2006 12:49:14.782  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29834
237.3811 +14/06/2006 12:49:14.812  000>> 91>>>>>>>>>>Part datagram received!
237.3812 +14/06/2006 12:49:14.812  000>> 91>>>>>>>>>>Complete!
237.3813 +14/06/2006 12:49:14.812  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30262
237.3814 +14/06/2006 12:49:14.812  000>> Good datagram received!
237.3815 +14/06/2006 12:49:14.812  000>> Receive Hello:SYNACK
237.3816 +14/06/2006 12:49:14.812  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29835
237.3817 +14/06/2006 12:49:14.912  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3818 +14/06/2006 12:49:14.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29836
237.3819 +14/06/2006 12:49:14.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29837
237.3820 +14/06/2006 12:49:14.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29838
237.3821 +14/06/2006 12:49:14.972  000>> 98>>>>>>>>>>Part datagram received!
237.3822 +14/06/2006 12:49:14.972  000>> 98>>>>>>>>>>Complete!
237.3823 +14/06/2006 12:49:14.982  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30263
237.3824 +14/06/2006 12:49:14.982  000>> Good datagram received!
237.3825 +14/06/2006 12:49:14.982  000>> Listener:Received dictionary
237.3826 +14/06/2006 12:49:15.082  000>> 806>>>>>>>>>>Part datagram received!
237.3827 +14/06/2006 12:49:15.082  000>> 806>>>>>>>>>>Complete!
237.3828 +14/06/2006 12:49:15.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30264
237.3829 +14/06/2006 12:49:15.082  000>> Good datagram received!
237.3830 +14/06/2006 12:49:15.082  000>> Listener:Received RIB
237.3831 +14/06/2006 12:49:15.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30265
237.3832 +14/06/2006 12:49:15.092  000>> Good datagram received!
237.3833 +14/06/2006 12:49:15.102  000>> Listener:Received Bundle Offer
237.3834 +14/06/2006 12:49:15.102  000>> Listener:Sending Empty bundle request...
237.3835 +14/06/2006 12:49:15.102  000>> Listener(receiveBOffer):But we can not restart connection...
237.3836 +14/06/2006 12:49:15.102  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29839
237.3837 +14/06/2006 12:49:15.102  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30266
237.3838 +14/06/2006 12:49:15.102  000>> Good datagram received!
237.3839 +14/06/2006 12:49:15.102  000>> Initiator:No more requested bundles
237.3840 +14/06/2006 12:49:15.102  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.3841 +14/06/2006 12:49:15.223  000>> 91>>>>>>>>>>Part datagram received!
237.3842 +14/06/2006 12:49:15.223  000>> 91>>>>>>>>>>Complete!
237.3843 +14/06/2006 12:49:15.223  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30267
237.3844 +14/06/2006 12:49:15.233  000>> Good datagram received!
237.3845 +14/06/2006 12:49:15.233  000>> Receive Hello:SYN
237.3846 +14/06/2006 12:49:15.233  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29840
237.3847 +14/06/2006 12:49:15.253  000>> 91>>>>>>>>>>Part datagram received!
237.3848 +14/06/2006 12:49:15.253  000>> 91>>>>>>>>>>Complete!
237.3849 +14/06/2006 12:49:15.253  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30268
237.3850 +14/06/2006 12:49:15.253  000>> Good datagram received!
237.3851 +14/06/2006 12:49:15.263  000>> Receive Hello:ACK
237.3852 +14/06/2006 12:49:15.363  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3853 +14/06/2006 12:49:15.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29841
237.3854 +14/06/2006 12:49:15.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29842
237.3855 +14/06/2006 12:49:15.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29843
237.3856 +14/06/2006 12:49:15.363  000>> 98>>>>>>>>>>Part datagram received!
237.3857 +14/06/2006 12:49:15.363  000>> 98>>>>>>>>>>Complete!
237.3858 +14/06/2006 12:49:15.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30269
237.3859 +14/06/2006 12:49:15.363  000>> Good datagram received!
237.3860 +14/06/2006 12:49:15.363  000>> Listener:Received dictionary
237.3861 +14/06/2006 12:49:15.373  000>> 90>>>>>>>>>>Part datagram received!
237.3862 +14/06/2006 12:49:15.373  000>> 90>>>>>>>>>>Complete!
237.3863 +14/06/2006 12:49:15.373  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30270
237.3864 +14/06/2006 12:49:15.373  000>> Good datagram received!
237.3865 +14/06/2006 12:49:15.373  000>> Listener:Received RIB
237.3866 +14/06/2006 12:49:15.373  000>> 0>>>>>>>>>>Part datagram received!
237.3867 +14/06/2006 12:49:15.373  000>> 0>>>>>>>>>>Part datagram received!
237.3868 +14/06/2006 12:49:15.373  000>> 638>>>>>>>>>>Part datagram received!
237.3869 +14/06/2006 12:49:15.373  000>> 638>>>>>>>>>>Complete!
237.3870 +14/06/2006 12:49:15.373  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30271
237.3871 +14/06/2006 12:49:15.373  000>> Good datagram received!
237.3872 +14/06/2006 12:49:15.393  000>> Listener:Received Bundle Offer
237.3873 +14/06/2006 12:49:15.393  000>> Listener:Sending Empty bundle request...
237.3874 +14/06/2006 12:49:15.393  000>> Listener(receiveBOffer):But we can not restart connection...
237.3875 +14/06/2006 12:49:15.393  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29844
237.3876 +14/06/2006 12:49:15.473  000>> 78>>>>>>>>>>Part datagram received!
237.3877 +14/06/2006 12:49:15.473  000>> 78>>>>>>>>>>Complete!
237.3878 +14/06/2006 12:49:15.473  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30272
237.3879 +14/06/2006 12:49:15.483  000>> Good datagram received!
237.3880 +14/06/2006 12:49:15.483  000>> Initiator:No more requested bundles
237.3881 +14/06/2006 12:49:15.483  000>> Listener(receiveBundles):We can restart connection...
237.3882 +14/06/2006 12:49:15.583  000>> Hello Procedure:SENDSYN
237.3883 +14/06/2006 12:49:15.583  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29845
237.3884 +14/06/2006 12:49:15.613  000>> 91>>>>>>>>>>Part datagram received!
237.3885 +14/06/2006 12:49:15.613  000>> 91>>>>>>>>>>Complete!
237.3886 +14/06/2006 12:49:15.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30273
237.3887 +14/06/2006 12:49:15.613  000>> Good datagram received!
237.3888 +14/06/2006 12:49:15.613  000>> Receive Hello:SYNACK
237.3889 +14/06/2006 12:49:15.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29846
237.3890 +14/06/2006 12:49:15.713  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3891 +14/06/2006 12:49:15.713  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29847
237.3892 +14/06/2006 12:49:15.713  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29848
237.3893 +14/06/2006 12:49:15.713  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29849
237.3894 +14/06/2006 12:49:15.844  000>> 78>>>>>>>>>>Part datagram received!
237.3895 +14/06/2006 12:49:15.844  000>> 78>>>>>>>>>>Complete!
237.3896 +14/06/2006 12:49:15.844  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30274
237.3897 +14/06/2006 12:49:15.844  000>> Good datagram received!
237.3898 +14/06/2006 12:49:15.844  000>> Initiator:No more requested bundles
237.3899 +14/06/2006 12:49:15.844  000>> Initiator:But we can not restart connection...
237.3900 +14/06/2006 12:49:15.984  000>> 826>>>>>>>>>>Part datagram received!
237.3901 +14/06/2006 12:49:15.984  000>> 826>>>>>>>>>>Complete!
237.3902 +14/06/2006 12:49:15.984  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30275
237.3903 +14/06/2006 12:49:15.984  000>> Good datagram received!
237.3904 +14/06/2006 12:49:15.994  000>> Listener:Received dictionary
237.3905 +14/06/2006 12:49:15.994  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30276
237.3906 +14/06/2006 12:49:15.994  000>> Good datagram received!
237.3907 +14/06/2006 12:49:15.994  000>> Listener:Received RIB
237.3908 +14/06/2006 12:49:15.994  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30277
237.3909 +14/06/2006 12:49:15.994  000>> Good datagram received!
237.3910 +14/06/2006 12:49:16.004  000>> Listener:Received Bundle Offer
237.3911 +14/06/2006 12:49:16.004  000>> Listener:Sending Empty bundle request...
237.3912 +14/06/2006 12:49:16.004  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.3913 +14/06/2006 12:49:16.004  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29850
237.3914 +14/06/2006 12:49:16.134  000>> 91>>>>>>>>>>Part datagram received!
237.3915 +14/06/2006 12:49:16.134  000>> 91>>>>>>>>>>Complete!
237.3916 +14/06/2006 12:49:16.144  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30278
237.3917 +14/06/2006 12:49:16.144  000>> Good datagram received!
237.3918 +14/06/2006 12:49:16.144  000>> Receive Hello:SYN
237.3919 +14/06/2006 12:49:16.144  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29851
237.3920 +14/06/2006 12:49:16.224  000>> 91>>>>>>>>>>Part datagram received!
237.3921 +14/06/2006 12:49:16.224  000>> 91>>>>>>>>>>Complete!
237.3922 +14/06/2006 12:49:16.224  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30279
237.3923 +14/06/2006 12:49:16.224  000>> Good datagram received!
237.3924 +14/06/2006 12:49:16.224  000>> Receive Hello:ACK
237.3925 +14/06/2006 12:49:16.334  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3926 +14/06/2006 12:49:16.334  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29852
237.3927 +14/06/2006 12:49:16.334  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29853
237.3928 +14/06/2006 12:49:16.344  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29854
237.3929 +14/06/2006 12:49:16.344  000>> 98>>>>>>>>>>Part datagram received!
237.3930 +14/06/2006 12:49:16.344  000>> 98>>>>>>>>>>Complete!
237.3931 +14/06/2006 12:49:16.344  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30280
237.3932 +14/06/2006 12:49:16.344  000>> Good datagram received!
237.3933 +14/06/2006 12:49:16.344  000>> Listener:Received dictionary
237.3934 +14/06/2006 12:49:16.354  000>> 90>>>>>>>>>>Part datagram received!
237.3935 +14/06/2006 12:49:16.354  000>> 90>>>>>>>>>>Complete!
237.3936 +14/06/2006 12:49:16.354  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30281
237.3937 +14/06/2006 12:49:16.354  000>> Good datagram received!
237.3938 +14/06/2006 12:49:16.354  000>> Listener:Received RIB
237.3939 +14/06/2006 12:49:16.354  000>> 0>>>>>>>>>>Part datagram received!
237.3940 +14/06/2006 12:49:16.354  000>> 0>>>>>>>>>>Part datagram received!
237.3941 +14/06/2006 12:49:16.354  000>> 638>>>>>>>>>>Part datagram received!
237.3942 +14/06/2006 12:49:16.354  000>> 638>>>>>>>>>>Complete!
237.3943 +14/06/2006 12:49:16.354  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30282
237.3944 +14/06/2006 12:49:16.354  000>> Good datagram received!
237.3945 +14/06/2006 12:49:16.374  000>> Listener:Received Bundle Offer
237.3946 +14/06/2006 12:49:16.374  000>> Listener:Sending Empty bundle request...
237.3947 +14/06/2006 12:49:16.374  000>> Listener(receiveBOffer):But we can not restart connection...
237.3948 +14/06/2006 12:49:16.374  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29855
237.3949 +14/06/2006 12:49:16.454  000>> 78>>>>>>>>>>Part datagram received!
237.3950 +14/06/2006 12:49:16.454  000>> 78>>>>>>>>>>Complete!
237.3951 +14/06/2006 12:49:16.454  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30283
237.3952 +14/06/2006 12:49:16.454  000>> Good datagram received!
237.3953 +14/06/2006 12:49:16.454  000>> Initiator:No more requested bundles
237.3954 +14/06/2006 12:49:16.454  000>> Listener(receiveBundles):We can restart connection...
237.3955 +14/06/2006 12:49:16.555  000>> Hello Procedure:SENDSYN
237.3956 +14/06/2006 12:49:16.555  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29856
237.3957 +14/06/2006 12:49:16.575  000>> 91>>>>>>>>>>Part datagram received!
237.3958 +14/06/2006 12:49:16.575  000>> 91>>>>>>>>>>Complete!
237.3959 +14/06/2006 12:49:16.575  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30284
237.3960 +14/06/2006 12:49:16.575  000>> Good datagram received!
237.3961 +14/06/2006 12:49:16.575  000>> Receive Hello:SYNACK
237.3962 +14/06/2006 12:49:16.575  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29857
237.3963 +14/06/2006 12:49:16.675  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.3964 +14/06/2006 12:49:16.675  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29858
237.3965 +14/06/2006 12:49:16.675  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29859
237.3966 +14/06/2006 12:49:16.675  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29860
237.3967 +14/06/2006 12:49:16.705  000>> 98>>>>>>>>>>Part datagram received!
237.3968 +14/06/2006 12:49:16.705  000>> 98>>>>>>>>>>Complete!
237.3969 +14/06/2006 12:49:16.705  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30285
237.3970 +14/06/2006 12:49:16.705  000>> Good datagram received!
237.3971 +14/06/2006 12:49:16.705  000>> Listener:Received dictionary
237.3972 +14/06/2006 12:49:16.735  000>> 90>>>>>>>>>>Part datagram received!
237.3973 +14/06/2006 12:49:16.735  000>> 90>>>>>>>>>>Complete!
237.3974 +14/06/2006 12:49:16.735  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30286
237.3975 +14/06/2006 12:49:16.735  000>> Good datagram received!
237.3976 +14/06/2006 12:49:16.735  000>> Listener:Received RIB
237.3977 +14/06/2006 12:49:16.885  000>> 716>>>>>>>>>>Part datagram received!
237.3978 +14/06/2006 12:49:16.885  000>> 716>>>>>>>>>>Complete!
237.3979 +14/06/2006 12:49:16.885  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30287
237.3980 +14/06/2006 12:49:16.885  000>> Good datagram received!
237.3981 +14/06/2006 12:49:16.895  000>> Listener:Received Bundle Offer
237.3982 +14/06/2006 12:49:16.895  000>> Listener:Sending Empty bundle request...
237.3983 +14/06/2006 12:49:16.895  000>> Listener(receiveBOffer):But we can not restart connection...
237.3984 +14/06/2006 12:49:16.895  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29861
237.3985 +14/06/2006 12:49:16.895  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30288
237.3986 +14/06/2006 12:49:16.895  000>> Good datagram received!
237.3987 +14/06/2006 12:49:16.895  000>> Initiator:No more requested bundles
237.3988 +14/06/2006 12:49:16.895  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.3989 +14/06/2006 12:49:17.085  000>> 91>>>>>>>>>>Part datagram received!
237.3990 +14/06/2006 12:49:17.085  000>> 91>>>>>>>>>>Complete!
237.3991 +14/06/2006 12:49:17.095  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30289
237.3992 +14/06/2006 12:49:17.095  000>> Good datagram received!
237.3993 +14/06/2006 12:49:17.095  000>> Receive Hello:SYN
237.3994 +14/06/2006 12:49:17.095  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29862
237.3995 +14/06/2006 12:49:17.125  000>> 91>>>>>>>>>>Part datagram received!
237.3996 +14/06/2006 12:49:17.125  000>> 91>>>>>>>>>>Complete!
237.3997 +14/06/2006 12:49:17.125  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30290
237.3998 +14/06/2006 12:49:17.125  000>> Good datagram received!
237.3999 +14/06/2006 12:49:17.135  000>> Receive Hello:ACK
237.4000 +14/06/2006 12:49:17.236  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4001 +14/06/2006 12:49:17.236  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29863
237.4002 +14/06/2006 12:49:17.236  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29864
237.4003 +14/06/2006 12:49:17.236  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29865
237.4004 +14/06/2006 12:49:17.236  000>> 98>>>>>>>>>>Part datagram received!
237.4005 +14/06/2006 12:49:17.236  000>> 98>>>>>>>>>>Complete!
237.4006 +14/06/2006 12:49:17.236  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30291
237.4007 +14/06/2006 12:49:17.236  000>> Good datagram received!
237.4008 +14/06/2006 12:49:17.236  000>> Listener:Received dictionary
237.4009 +14/06/2006 12:49:17.246  000>> 0>>>>>>>>>>Part datagram received!
237.4010 +14/06/2006 12:49:17.246  000>> 0>>>>>>>>>>Part datagram received!
237.4011 +14/06/2006 12:49:17.256  000>> 90>>>>>>>>>>Part datagram received!
237.4012 +14/06/2006 12:49:17.256  000>> 90>>>>>>>>>>Complete!
237.4013 +14/06/2006 12:49:17.256  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30292
237.4014 +14/06/2006 12:49:17.256  000>> Good datagram received!
237.4015 +14/06/2006 12:49:17.256  000>> Listener:Received RIB
237.4016 +14/06/2006 12:49:17.256  000>> 638>>>>>>>>>>Part datagram received!
237.4017 +14/06/2006 12:49:17.256  000>> 638>>>>>>>>>>Complete!
237.4018 +14/06/2006 12:49:17.256  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30293
237.4019 +14/06/2006 12:49:17.256  000>> Good datagram received!
237.4020 +14/06/2006 12:49:17.276  000>> Listener:Received Bundle Offer
237.4021 +14/06/2006 12:49:17.276  000>> Listener:Sending Empty bundle request...
237.4022 +14/06/2006 12:49:17.276  000>> Listener(receiveBOffer):But we can not restart connection...
237.4023 +14/06/2006 12:49:17.276  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29866
237.4024 +14/06/2006 12:49:17.356  000>> 78>>>>>>>>>>Part datagram received!
237.4025 +14/06/2006 12:49:17.356  000>> 78>>>>>>>>>>Complete!
237.4026 +14/06/2006 12:49:17.356  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30294
237.4027 +14/06/2006 12:49:17.356  000>> Good datagram received!
237.4028 +14/06/2006 12:49:17.356  000>> Initiator:No more requested bundles
237.4029 +14/06/2006 12:49:17.356  000>> Listener(receiveBundles):We can restart connection...
237.4030 +14/06/2006 12:49:17.456  000>> Hello Procedure:SENDSYN
237.4031 +14/06/2006 12:49:17.456  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29867
237.4032 +14/06/2006 12:49:17.476  000>> 91>>>>>>>>>>Part datagram received!
237.4033 +14/06/2006 12:49:17.476  000>> 91>>>>>>>>>>Complete!
237.4034 +14/06/2006 12:49:17.476  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30295
237.4035 +14/06/2006 12:49:17.476  000>> Good datagram received!
237.4036 +14/06/2006 12:49:17.476  000>> Receive Hello:SYNACK
237.4037 +14/06/2006 12:49:17.486  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29868
237.4038 +14/06/2006 12:49:17.586  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4039 +14/06/2006 12:49:17.586  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29869
237.4040 +14/06/2006 12:49:17.586  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29870
237.4041 +14/06/2006 12:49:17.596  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29871
237.4042 +14/06/2006 12:49:17.626  000>> 98>>>>>>>>>>Part datagram received!
237.4043 +14/06/2006 12:49:17.626  000>> 98>>>>>>>>>>Complete!
237.4044 +14/06/2006 12:49:17.636  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30296
237.4045 +14/06/2006 12:49:17.636  000>> Good datagram received!
237.4046 +14/06/2006 12:49:17.636  000>> Listener:Received dictionary
237.4047 +14/06/2006 12:49:17.646  000>> 90>>>>>>>>>>Part datagram received!
237.4048 +14/06/2006 12:49:17.646  000>> 90>>>>>>>>>>Complete!
237.4049 +14/06/2006 12:49:17.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30297
237.4050 +14/06/2006 12:49:17.646  000>> Good datagram received!
237.4051 +14/06/2006 12:49:17.646  000>> Listener:Received RIB
237.4052 +14/06/2006 12:49:17.796  000>> 716>>>>>>>>>>Part datagram received!
237.4053 +14/06/2006 12:49:17.796  000>> 716>>>>>>>>>>Complete!
237.4054 +14/06/2006 12:49:17.796  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30298
237.4055 +14/06/2006 12:49:17.796  000>> Good datagram received!
237.4056 +14/06/2006 12:49:17.806  000>> Listener:Received Bundle Offer
237.4057 +14/06/2006 12:49:17.806  000>> Listener:Sending Empty bundle request...
237.4058 +14/06/2006 12:49:17.806  000>> Listener(receiveBOffer):But we can not restart connection...
237.4059 +14/06/2006 12:49:17.806  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29872
237.4060 +14/06/2006 12:49:17.816  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30299
237.4061 +14/06/2006 12:49:17.816  000>> Good datagram received!
237.4062 +14/06/2006 12:49:17.816  000>> Initiator:No more requested bundles
237.4063 +14/06/2006 12:49:17.816  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.4064 +14/06/2006 12:49:17.987  000>> 91>>>>>>>>>>Part datagram received!
237.4065 +14/06/2006 12:49:17.987  000>> 91>>>>>>>>>>Complete!
237.4066 +14/06/2006 12:49:17.987  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30300
237.4067 +14/06/2006 12:49:17.987  000>> Good datagram received!
237.4068 +14/06/2006 12:49:17.987  000>> Receive Hello:SYN
237.4069 +14/06/2006 12:49:17.987  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29873
237.4070 +14/06/2006 12:49:18.007  000>> 91>>>>>>>>>>Part datagram received!
237.4071 +14/06/2006 12:49:18.007  000>> 91>>>>>>>>>>Complete!
237.4072 +14/06/2006 12:49:18.007  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30301
237.4073 +14/06/2006 12:49:18.007  000>> Good datagram received!
237.4074 +14/06/2006 12:49:18.007  000>> Receive Hello:ACK
237.4075 +14/06/2006 12:49:18.107  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4076 +14/06/2006 12:49:18.107  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29874
237.4077 +14/06/2006 12:49:18.107  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29875
237.4078 +14/06/2006 12:49:18.107  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29876
237.4079 +14/06/2006 12:49:18.107  000>> 98>>>>>>>>>>Part datagram received!
237.4080 +14/06/2006 12:49:18.107  000>> 98>>>>>>>>>>Complete!
237.4081 +14/06/2006 12:49:18.117  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30302
237.4082 +14/06/2006 12:49:18.117  000>> Good datagram received!
237.4083 +14/06/2006 12:49:18.117  000>> Listener:Received dictionary
237.4084 +14/06/2006 12:49:18.117  000>> 90>>>>>>>>>>Part datagram received!
237.4085 +14/06/2006 12:49:18.117  000>> 90>>>>>>>>>>Complete!
237.4086 +14/06/2006 12:49:18.117  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30303
237.4087 +14/06/2006 12:49:18.117  000>> Good datagram received!
237.4088 +14/06/2006 12:49:18.117  000>> Listener:Received RIB
237.4089 +14/06/2006 12:49:18.297  000>> 716>>>>>>>>>>Part datagram received!
237.4090 +14/06/2006 12:49:18.297  000>> 716>>>>>>>>>>Complete!
237.4091 +14/06/2006 12:49:18.297  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30304
237.4092 +14/06/2006 12:49:18.297  000>> Good datagram received!
237.4093 +14/06/2006 12:49:18.307  000>> Listener:Received Bundle Offer
237.4094 +14/06/2006 12:49:18.307  000>> Listener:Sending Empty bundle request...
237.4095 +14/06/2006 12:49:18.307  000>> Listener(receiveBOffer):But we can not restart connection...
237.4096 +14/06/2006 12:49:18.307  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29877
237.4097 +14/06/2006 12:49:18.317  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30305
237.4098 +14/06/2006 12:49:18.317  000>> Good datagram received!
237.4099 +14/06/2006 12:49:18.317  000>> Initiator:No more requested bundles
237.4100 +14/06/2006 12:49:18.317  000>> Listener(receiveBundles):We can restart connection...
237.4101 +14/06/2006 12:49:18.437  000>> Hello Procedure:SENDSYN
237.4102 +14/06/2006 12:49:18.437  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29878
237.4103 +14/06/2006 12:49:18.497  000>> 91>>>>>>>>>>Part datagram received!
237.4104 +14/06/2006 12:49:18.497  000>> 91>>>>>>>>>>Complete!
237.4105 +14/06/2006 12:49:18.497  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30306
237.4106 +14/06/2006 12:49:18.497  000>> Good datagram received!
237.4107 +14/06/2006 12:49:18.497  000>> Receive Hello:SYNACK
237.4108 +14/06/2006 12:49:18.497  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29879
237.4109 +14/06/2006 12:49:18.597  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4110 +14/06/2006 12:49:18.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29880
237.4111 +14/06/2006 12:49:18.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29881
237.4112 +14/06/2006 12:49:18.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29882
237.4113 +14/06/2006 12:49:18.607  000>> 98>>>>>>>>>>Part datagram received!
237.4114 +14/06/2006 12:49:18.607  000>> 98>>>>>>>>>>Complete!
237.4115 +14/06/2006 12:49:18.607  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30307
237.4116 +14/06/2006 12:49:18.607  000>> Good datagram received!
237.4117 +14/06/2006 12:49:18.618  000>> Listener:Received dictionary
237.4118 +14/06/2006 12:49:18.618  000>> 90>>>>>>>>>>Part datagram received!
237.4119 +14/06/2006 12:49:18.618  000>> 90>>>>>>>>>>Complete!
237.4120 +14/06/2006 12:49:18.618  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30308
237.4121 +14/06/2006 12:49:18.618  000>> Good datagram received!
237.4122 +14/06/2006 12:49:18.618  000>> Listener:Received RIB
237.4123 +14/06/2006 12:49:18.798  000>> 716>>>>>>>>>>Part datagram received!
237.4124 +14/06/2006 12:49:18.798  000>> 716>>>>>>>>>>Complete!
237.4125 +14/06/2006 12:49:18.798  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30309
237.4126 +14/06/2006 12:49:18.798  000>> Good datagram received!
237.4127 +14/06/2006 12:49:18.798  000>> Listener:Received Bundle Offer
237.4128 +14/06/2006 12:49:18.798  000>> Listener:Sending Empty bundle request...
237.4129 +14/06/2006 12:49:18.798  000>> Listener(receiveBOffer):But we can not restart connection...
237.4130 +14/06/2006 12:49:18.798  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29883
237.4131 +14/06/2006 12:49:18.808  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30310
237.4132 +14/06/2006 12:49:18.808  000>> Good datagram received!
237.4133 +14/06/2006 12:49:18.808  000>> Initiator:No more requested bundles
237.4134 +14/06/2006 12:49:18.808  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.4135 +14/06/2006 12:49:18.988  000>> 91>>>>>>>>>>Part datagram received!
237.4136 +14/06/2006 12:49:18.988  000>> 91>>>>>>>>>>Complete!
237.4137 +14/06/2006 12:49:18.988  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30311
237.4138 +14/06/2006 12:49:18.988  000>> Good datagram received!
237.4139 +14/06/2006 12:49:18.988  000>> Receive Hello:SYN
237.4140 +14/06/2006 12:49:18.988  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29884
237.4141 +14/06/2006 12:49:18.998  000>> 91>>>>>>>>>>Part datagram received!
237.4142 +14/06/2006 12:49:19.008  000>> 91>>>>>>>>>>Complete!
237.4143 +14/06/2006 12:49:19.008  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30312
237.4144 +14/06/2006 12:49:19.008  000>> Good datagram received!
237.4145 +14/06/2006 12:49:19.008  000>> Receive Hello:ACK
237.4146 +14/06/2006 12:49:19.108  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4147 +14/06/2006 12:49:19.108  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29885
237.4148 +14/06/2006 12:49:19.108  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29886
237.4149 +14/06/2006 12:49:19.108  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29887
237.4150 +14/06/2006 12:49:19.118  000>> 98>>>>>>>>>>Part datagram received!
237.4151 +14/06/2006 12:49:19.118  000>> 98>>>>>>>>>>Complete!
237.4152 +14/06/2006 12:49:19.118  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30313
237.4153 +14/06/2006 12:49:19.118  000>> Good datagram received!
237.4154 +14/06/2006 12:49:19.118  000>> Listener:Received dictionary
237.4155 +14/06/2006 12:49:19.118  000>> 90>>>>>>>>>>Part datagram received!
237.4156 +14/06/2006 12:49:19.118  000>> 90>>>>>>>>>>Complete!
237.4157 +14/06/2006 12:49:19.118  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30314
237.4158 +14/06/2006 12:49:19.118  000>> Good datagram received!
237.4159 +14/06/2006 12:49:19.128  000>> Listener:Received RIB
237.4160 +14/06/2006 12:49:19.298  000>> 716>>>>>>>>>>Part datagram received!
237.4161 +14/06/2006 12:49:19.298  000>> 716>>>>>>>>>>Complete!
237.4162 +14/06/2006 12:49:19.298  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30315
237.4163 +14/06/2006 12:49:19.298  000>> Good datagram received!
237.4164 +14/06/2006 12:49:19.309  000>> Listener:Received Bundle Offer
237.4165 +14/06/2006 12:49:19.319  000>> Listener:Sending Empty bundle request...
237.4166 +14/06/2006 12:49:19.319  000>> Listener(receiveBOffer):But we can not restart connection...
237.4167 +14/06/2006 12:49:19.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29888
237.4168 +14/06/2006 12:49:19.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30316
237.4169 +14/06/2006 12:49:19.319  000>> Good datagram received!
237.4170 +14/06/2006 12:49:19.319  000>> Initiator:No more requested bundles
237.4171 +14/06/2006 12:49:19.319  000>> Listener(receiveBundles):We can restart connection...
237.4172 +14/06/2006 12:49:19.439  000>> Hello Procedure:SENDSYN
237.4173 +14/06/2006 12:49:19.439  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29889
237.4174 +14/06/2006 12:49:19.489  000>> 91>>>>>>>>>>Part datagram received!
237.4175 +14/06/2006 12:49:19.499  000>> 91>>>>>>>>>>Complete!
237.4176 +14/06/2006 12:49:19.499  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30317
237.4177 +14/06/2006 12:49:19.499  000>> Good datagram received!
237.4178 +14/06/2006 12:49:19.499  000>> Receive Hello:SYNACK
237.4179 +14/06/2006 12:49:19.499  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29890
237.4180 +14/06/2006 12:49:19.599  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4181 +14/06/2006 12:49:19.599  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29891
237.4182 +14/06/2006 12:49:19.599  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29892
237.4183 +14/06/2006 12:49:19.599  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29893
237.4184 +14/06/2006 12:49:19.629  000>> 98>>>>>>>>>>Part datagram received!
237.4185 +14/06/2006 12:49:19.629  000>> 98>>>>>>>>>>Complete!
237.4186 +14/06/2006 12:49:19.629  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30318
237.4187 +14/06/2006 12:49:19.629  000>> Good datagram received!
237.4188 +14/06/2006 12:49:19.629  000>> Listener:Received dictionary
237.4189 +14/06/2006 12:49:19.629  000>> 90>>>>>>>>>>Part datagram received!
237.4190 +14/06/2006 12:49:19.629  000>> 90>>>>>>>>>>Complete!
237.4191 +14/06/2006 12:49:19.629  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30319
237.4192 +14/06/2006 12:49:19.639  000>> Good datagram received!
237.4193 +14/06/2006 12:49:19.639  000>> Listener:Received RIB
237.4194 +14/06/2006 12:49:19.799  000>> 716>>>>>>>>>>Part datagram received!
237.4195 +14/06/2006 12:49:19.799  000>> 716>>>>>>>>>>Complete!
237.4196 +14/06/2006 12:49:19.799  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30320
237.4197 +14/06/2006 12:49:19.799  000>> Good datagram received!
237.4198 +14/06/2006 12:49:19.819  000>> Listener:Received Bundle Offer
237.4199 +14/06/2006 12:49:19.819  000>> Listener:Sending Empty bundle request...
237.4200 +14/06/2006 12:49:19.819  000>> Listener(receiveBOffer):But we can not restart connection...
237.4201 +14/06/2006 12:49:19.819  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29894
237.4202 +14/06/2006 12:49:19.819  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30321
237.4203 +14/06/2006 12:49:19.819  000>> Good datagram received!
237.4204 +14/06/2006 12:49:19.819  000>> Initiator:No more requested bundles
237.4205 +14/06/2006 12:49:19.819  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.4206 +14/06/2006 12:49:19.989  000>> 91>>>>>>>>>>Part datagram received!
237.4207 +14/06/2006 12:49:19.989  000>> 91>>>>>>>>>>Complete!
237.4208 +14/06/2006 12:49:19.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30322
237.4209 +14/06/2006 12:49:19.989  000>> Good datagram received!
237.4210 +14/06/2006 12:49:19.989  000>> Receive Hello:SYN
237.4211 +14/06/2006 12:49:19.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29895
237.4212 +14/06/2006 12:49:20.010  000>> 91>>>>>>>>>>Part datagram received!
237.4213 +14/06/2006 12:49:20.010  000>> 91>>>>>>>>>>Complete!
237.4214 +14/06/2006 12:49:20.010  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30323
237.4215 +14/06/2006 12:49:20.010  000>> Good datagram received!
237.4216 +14/06/2006 12:49:20.010  000>> Receive Hello:ACK
237.4217 +14/06/2006 12:49:20.110  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4218 +14/06/2006 12:49:20.110  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29896
237.4219 +14/06/2006 12:49:20.110  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29897
237.4220 +14/06/2006 12:49:20.110  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29898
237.4221 +14/06/2006 12:49:20.120  000>> 98>>>>>>>>>>Part datagram received!
237.4222 +14/06/2006 12:49:20.120  000>> 98>>>>>>>>>>Complete!
237.4223 +14/06/2006 12:49:20.120  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30324
237.4224 +14/06/2006 12:49:20.120  000>> Good datagram received!
237.4225 +14/06/2006 12:49:20.120  000>> Listener:Received dictionary
237.4226 +14/06/2006 12:49:20.130  000>> 90>>>>>>>>>>Part datagram received!
237.4227 +14/06/2006 12:49:20.130  000>> 90>>>>>>>>>>Complete!
237.4228 +14/06/2006 12:49:20.130  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30325
237.4229 +14/06/2006 12:49:20.130  000>> Good datagram received!
237.4230 +14/06/2006 12:49:20.130  000>> Listener:Received RIB
237.4231 +14/06/2006 12:49:20.300  000>> 716>>>>>>>>>>Part datagram received!
237.4232 +14/06/2006 12:49:20.300  000>> 716>>>>>>>>>>Complete!
237.4233 +14/06/2006 12:49:20.300  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30326
237.4234 +14/06/2006 12:49:20.300  000>> Good datagram received!
237.4235 +14/06/2006 12:49:20.320  000>> Listener:Received Bundle Offer
237.4236 +14/06/2006 12:49:20.320  000>> Listener:Sending Empty bundle request...
237.4237 +14/06/2006 12:49:20.320  000>> Listener(receiveBOffer):But we can not restart connection...
237.4238 +14/06/2006 12:49:20.320  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29899
237.4239 +14/06/2006 12:49:20.320  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30327
237.4240 +14/06/2006 12:49:20.320  000>> Good datagram received!
237.4241 +14/06/2006 12:49:20.320  000>> Initiator:No more requested bundles
237.4242 +14/06/2006 12:49:20.320  000>> Listener(receiveBundles):We can restart connection...
237.4243 +14/06/2006 12:49:20.420  000>> Hello Procedure:SENDSYN
237.4244 +14/06/2006 12:49:20.420  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29900
237.4245 +14/06/2006 12:49:20.510  000>> 91>>>>>>>>>>Part datagram received!
237.4246 +14/06/2006 12:49:20.510  000>> 91>>>>>>>>>>Complete!
237.4247 +14/06/2006 12:49:20.510  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30328
237.4248 +14/06/2006 12:49:20.520  000>> Good datagram received!
237.4249 +14/06/2006 12:49:20.520  000>> Receive Hello:SYNACK
237.4250 +14/06/2006 12:49:20.520  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29901
237.4251 +14/06/2006 12:49:20.620  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4252 +14/06/2006 12:49:20.620  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29902
237.4253 +14/06/2006 12:49:20.620  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29903
237.4254 +14/06/2006 12:49:20.620  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29904
237.4255 +14/06/2006 12:49:20.650  000>> 98>>>>>>>>>>Part datagram received!
237.4256 +14/06/2006 12:49:20.650  000>> 98>>>>>>>>>>Complete!
237.4257 +14/06/2006 12:49:20.650  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30329
237.4258 +14/06/2006 12:49:20.650  000>> Good datagram received!
237.4259 +14/06/2006 12:49:20.650  000>> Listener:Received dictionary
237.4260 +14/06/2006 12:49:20.650  000>> 90>>>>>>>>>>Part datagram received!
237.4261 +14/06/2006 12:49:20.650  000>> 90>>>>>>>>>>Complete!
237.4262 +14/06/2006 12:49:20.650  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30330
237.4263 +14/06/2006 12:49:20.650  000>> Good datagram received!
237.4264 +14/06/2006 12:49:20.650  000>> Listener:Received RIB
237.4265 +14/06/2006 12:49:20.801  000>> 716>>>>>>>>>>Part datagram received!
237.4266 +14/06/2006 12:49:20.801  000>> 716>>>>>>>>>>Complete!
237.4267 +14/06/2006 12:49:20.801  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30331
237.4268 +14/06/2006 12:49:20.801  000>> Good datagram received!
237.4269 +14/06/2006 12:49:20.811  000>> Listener:Received Bundle Offer
237.4270 +14/06/2006 12:49:20.811  000>> Listener:Sending Empty bundle request...
237.4271 +14/06/2006 12:49:20.811  000>> Listener(receiveBOffer):But we can not restart connection...
237.4272 +14/06/2006 12:49:20.811  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29905
237.4273 +14/06/2006 12:49:20.811  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30332
237.4274 +14/06/2006 12:49:20.811  000>> Good datagram received!
237.4275 +14/06/2006 12:49:20.811  000>> Initiator:No more requested bundles
237.4276 +14/06/2006 12:49:20.811  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.4277 +14/06/2006 12:49:20.981  000>> 91>>>>>>>>>>Part datagram received!
237.4278 +14/06/2006 12:49:20.981  000>> 91>>>>>>>>>>Complete!
237.4279 +14/06/2006 12:49:20.981  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30333
237.4280 +14/06/2006 12:49:20.991  000>> Good datagram received!
237.4281 +14/06/2006 12:49:20.991  000>> Receive Hello:SYN
237.4282 +14/06/2006 12:49:20.991  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29906
237.4283 +14/06/2006 12:49:21.001  000>> 91>>>>>>>>>>Part datagram received!
237.4284 +14/06/2006 12:49:21.001  000>> 91>>>>>>>>>>Complete!
237.4285 +14/06/2006 12:49:21.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30334
237.4286 +14/06/2006 12:49:21.001  000>> Good datagram received!
237.4287 +14/06/2006 12:49:21.011  000>> Receive Hello:ACK
237.4288 +14/06/2006 12:49:21.111  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4289 +14/06/2006 12:49:21.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29907
237.4290 +14/06/2006 12:49:21.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29908
237.4291 +14/06/2006 12:49:21.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29909
237.4292 +14/06/2006 12:49:21.111  000>> 188>>>>>>>>>>Part datagram received!
237.4293 +14/06/2006 12:49:21.111  000>> 188>>>>>>>>>>Complete!
237.4294 +14/06/2006 12:49:21.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30335
237.4295 +14/06/2006 12:49:21.111  000>> Good datagram received!
237.4296 +14/06/2006 12:49:21.111  000>> Listener:Received dictionary
237.4297 +14/06/2006 12:49:21.121  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30336
237.4298 +14/06/2006 12:49:21.121  000>> Good datagram received!
237.4299 +14/06/2006 12:49:21.121  000>> Listener:Received RIB
237.4300 +14/06/2006 12:49:21.121  000>> 638>>>>>>>>>>Part datagram received!
237.4301 +14/06/2006 12:49:21.121  000>> 638>>>>>>>>>>Complete!
237.4302 +14/06/2006 12:49:21.121  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30337
237.4303 +14/06/2006 12:49:21.121  000>> Good datagram received!
237.4304 +14/06/2006 12:49:21.141  000>> Listener:Received Bundle Offer
237.4305 +14/06/2006 12:49:21.141  000>> Listener:Sending Empty bundle request...
237.4306 +14/06/2006 12:49:21.141  000>> Listener(receiveBOffer):But we can not restart connection...
237.4307 +14/06/2006 12:49:21.141  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29910
237.4308 +14/06/2006 12:49:21.141  000>> 0>>>>>>>>>>Part datagram received!
237.4309 +14/06/2006 12:49:21.141  000>> 0>>>>>>>>>>Part datagram received!
237.4310 +14/06/2006 12:49:21.221  000>> 78>>>>>>>>>>Part datagram received!
237.4311 +14/06/2006 12:49:21.221  000>> 78>>>>>>>>>>Complete!
237.4312 +14/06/2006 12:49:21.221  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30338
237.4313 +14/06/2006 12:49:21.231  000>> Good datagram received!
237.4314 +14/06/2006 12:49:21.231  000>> Initiator:No more requested bundles
237.4315 +14/06/2006 12:49:21.231  000>> Listener(receiveBundles):We can restart connection...
237.4316 +14/06/2006 12:49:21.331  000>> Hello Procedure:SENDSYN
237.4317 +14/06/2006 12:49:21.331  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29911
237.4318 +14/06/2006 12:49:21.442  000>> 91>>>>>>>>>>Part datagram received!
237.4319 +14/06/2006 12:49:21.442  000>> 91>>>>>>>>>>Complete!
237.4320 +14/06/2006 12:49:21.442  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30339
237.4321 +14/06/2006 12:49:21.442  000>> Good datagram received!
237.4322 +14/06/2006 12:49:21.442  000>> Receive Hello:SYNACK
237.4323 +14/06/2006 12:49:21.442  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29912
237.4324 +14/06/2006 12:49:21.542  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4325 +14/06/2006 12:49:21.542  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29913
237.4326 +14/06/2006 12:49:21.542  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29914
237.4327 +14/06/2006 12:49:21.542  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29915
237.4328 +14/06/2006 12:49:21.562  000>> 98>>>>>>>>>>Part datagram received!
237.4329 +14/06/2006 12:49:21.562  000>> 98>>>>>>>>>>Complete!
237.4330 +14/06/2006 12:49:21.572  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30340
237.4331 +14/06/2006 12:49:21.572  000>> Good datagram received!
237.4332 +14/06/2006 12:49:21.572  000>> Listener:Received dictionary
237.4333 +14/06/2006 12:49:21.572  000>> 90>>>>>>>>>>Part datagram received!
237.4334 +14/06/2006 12:49:21.572  000>> 90>>>>>>>>>>Complete!
237.4335 +14/06/2006 12:49:21.572  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30341
237.4336 +14/06/2006 12:49:21.572  000>> Good datagram received!
237.4337 +14/06/2006 12:49:21.572  000>> Listener:Received RIB
237.4338 +14/06/2006 12:49:21.702  000>> 716>>>>>>>>>>Part datagram received!
237.4339 +14/06/2006 12:49:21.702  000>> 716>>>>>>>>>>Complete!
237.4340 +14/06/2006 12:49:21.702  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30342
237.4341 +14/06/2006 12:49:21.702  000>> Good datagram received!
237.4342 +14/06/2006 12:49:21.722  000>> Listener:Received Bundle Offer
237.4343 +14/06/2006 12:49:21.722  000>> Listener:Sending Empty bundle request...
237.4344 +14/06/2006 12:49:21.722  000>> Listener(receiveBOffer):But we can not restart connection...
237.4345 +14/06/2006 12:49:21.722  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29916
237.4346 +14/06/2006 12:49:21.722  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30343
237.4347 +14/06/2006 12:49:21.722  000>> Good datagram received!
237.4348 +14/06/2006 12:49:21.722  000>> Initiator:No more requested bundles
237.4349 +14/06/2006 12:49:21.722  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.4350 +14/06/2006 12:49:21.852  000>> 91>>>>>>>>>>Part datagram received!
237.4351 +14/06/2006 12:49:21.862  000>> 91>>>>>>>>>>Complete!
237.4352 +14/06/2006 12:49:21.862  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30344
237.4353 +14/06/2006 12:49:21.862  000>> Good datagram received!
237.4354 +14/06/2006 12:49:21.862  000>> Receive Hello:SYN
237.4355 +14/06/2006 12:49:21.862  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29917
237.4356 +14/06/2006 12:49:21.882  000>> 91>>>>>>>>>>Part datagram received!
237.4357 +14/06/2006 12:49:21.882  000>> 91>>>>>>>>>>Complete!
237.4358 +14/06/2006 12:49:21.882  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30345
237.4359 +14/06/2006 12:49:21.882  000>> Good datagram received!
237.4360 +14/06/2006 12:49:21.882  000>> Receive Hello:ACK
237.4361 +14/06/2006 12:49:21.982  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4362 +14/06/2006 12:49:21.982  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29918
237.4363 +14/06/2006 12:49:21.992  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29919
237.4364 +14/06/2006 12:49:21.992  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29920
237.4365 +14/06/2006 12:49:21.992  000>> 98>>>>>>>>>>Part datagram received!
237.4366 +14/06/2006 12:49:21.992  000>> 98>>>>>>>>>>Complete!
237.4367 +14/06/2006 12:49:21.992  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30346
237.4368 +14/06/2006 12:49:21.992  000>> Good datagram received!
237.4369 +14/06/2006 12:49:21.992  000>> Listener:Received dictionary
237.4370 +14/06/2006 12:49:22.002  000>> 90>>>>>>>>>>Part datagram received!
237.4371 +14/06/2006 12:49:22.002  000>> 90>>>>>>>>>>Complete!
237.4372 +14/06/2006 12:49:22.002  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30347
237.4373 +14/06/2006 12:49:22.002  000>> Good datagram received!
237.4374 +14/06/2006 12:49:22.002  000>> Listener:Received RIB
237.4375 +14/06/2006 12:49:22.103  000>> 716>>>>>>>>>>Part datagram received!
237.4376 +14/06/2006 12:49:22.103  000>> 716>>>>>>>>>>Complete!
237.4377 +14/06/2006 12:49:22.103  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30348
237.4378 +14/06/2006 12:49:22.103  000>> Good datagram received!
237.4379 +14/06/2006 12:49:22.123  000>> Listener:Received Bundle Offer
237.4380 +14/06/2006 12:49:22.123  000>> Listener:Sending Empty bundle request...
237.4381 +14/06/2006 12:49:22.123  000>> Listener(receiveBOffer):But we can not restart connection...
237.4382 +14/06/2006 12:49:22.123  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29921
237.4383 +14/06/2006 12:49:22.123  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30349
237.4384 +14/06/2006 12:49:22.123  000>> Good datagram received!
237.4385 +14/06/2006 12:49:22.123  000>> Initiator:No more requested bundles
237.4386 +14/06/2006 12:49:22.123  000>> Listener(receiveBundles):We can restart connection...
237.4387 +14/06/2006 12:49:22.223  000>> Hello Procedure:SENDSYN
237.4388 +14/06/2006 12:49:22.223  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29922
237.4389 +14/06/2006 12:49:22.303  000>> 91>>>>>>>>>>Part datagram received!
237.4390 +14/06/2006 12:49:22.303  000>> 91>>>>>>>>>>Complete!
237.4391 +14/06/2006 12:49:22.303  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30350
237.4392 +14/06/2006 12:49:22.303  000>> Good datagram received!
237.4393 +14/06/2006 12:49:22.303  000>> Receive Hello:SYNACK
237.4394 +14/06/2006 12:49:22.303  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29923
237.4395 +14/06/2006 12:49:22.403  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4396 +14/06/2006 12:49:22.403  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29924
237.4397 +14/06/2006 12:49:22.403  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29925
237.4398 +14/06/2006 12:49:22.413  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29926
237.4399 +14/06/2006 12:49:22.453  000>> 98>>>>>>>>>>Part datagram received!
237.4400 +14/06/2006 12:49:22.453  000>> 98>>>>>>>>>>Complete!
237.4401 +14/06/2006 12:49:22.453  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30351
237.4402 +14/06/2006 12:49:22.453  000>> Good datagram received!
237.4403 +14/06/2006 12:49:22.453  000>> Listener:Received dictionary
237.4404 +14/06/2006 12:49:22.463  000>> 90>>>>>>>>>>Part datagram received!
237.4405 +14/06/2006 12:49:22.463  000>> 90>>>>>>>>>>Complete!
237.4406 +14/06/2006 12:49:22.463  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30352
237.4407 +14/06/2006 12:49:22.463  000>> Good datagram received!
237.4408 +14/06/2006 12:49:22.463  000>> Listener:Received RIB
237.4409 +14/06/2006 12:49:22.603  000>> 716>>>>>>>>>>Part datagram received!
237.4410 +14/06/2006 12:49:22.603  000>> 716>>>>>>>>>>Complete!
237.4411 +14/06/2006 12:49:22.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30353
237.4412 +14/06/2006 12:49:22.613  000>> Good datagram received!
237.4413 +14/06/2006 12:49:22.623  000>> Listener:Received Bundle Offer
237.4414 +14/06/2006 12:49:22.623  000>> Listener:Sending Empty bundle request...
237.4415 +14/06/2006 12:49:22.623  000>> Listener(receiveBOffer):But we can not restart connection...
237.4416 +14/06/2006 12:49:22.623  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29927
237.4417 +14/06/2006 12:49:22.623  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30354
237.4418 +14/06/2006 12:49:22.623  000>> Good datagram received!
237.4419 +14/06/2006 12:49:22.633  000>> Initiator:No more requested bundles
237.4420 +14/06/2006 12:49:22.633  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.4421 +14/06/2006 12:49:22.743  000>> 91>>>>>>>>>>Part datagram received!
237.4422 +14/06/2006 12:49:22.743  000>> 91>>>>>>>>>>Complete!
237.4423 +14/06/2006 12:49:22.743  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30355
237.4424 +14/06/2006 12:49:22.753  000>> Good datagram received!
237.4425 +14/06/2006 12:49:22.753  000>> Receive Hello:SYN
237.4426 +14/06/2006 12:49:22.753  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29928
237.4427 +14/06/2006 12:49:22.773  000>> 91>>>>>>>>>>Part datagram received!
237.4428 +14/06/2006 12:49:22.773  000>> 91>>>>>>>>>>Complete!
237.4429 +14/06/2006 12:49:22.773  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30356
237.4430 +14/06/2006 12:49:22.773  000>> Good datagram received!
237.4431 +14/06/2006 12:49:22.773  000>> Receive Hello:ACK
237.4432 +14/06/2006 12:49:22.874  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4433 +14/06/2006 12:49:22.874  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29929
237.4434 +14/06/2006 12:49:22.874  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29930
237.4435 +14/06/2006 12:49:22.874  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29931
237.4436 +14/06/2006 12:49:22.884  000>> 98>>>>>>>>>>Part datagram received!
237.4437 +14/06/2006 12:49:22.884  000>> 98>>>>>>>>>>Complete!
237.4438 +14/06/2006 12:49:22.884  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30357
237.4439 +14/06/2006 12:49:22.884  000>> Good datagram received!
237.4440 +14/06/2006 12:49:22.884  000>> Listener:Received dictionary
237.4441 +14/06/2006 12:49:22.884  000>> 90>>>>>>>>>>Part datagram received!
237.4442 +14/06/2006 12:49:22.884  000>> 90>>>>>>>>>>Complete!
237.4443 +14/06/2006 12:49:22.884  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30358
237.4444 +14/06/2006 12:49:22.884  000>> Good datagram received!
237.4445 +14/06/2006 12:49:22.894  000>> Listener:Received RIB
237.4446 +14/06/2006 12:49:23.004  000>> 716>>>>>>>>>>Part datagram received!
237.4447 +14/06/2006 12:49:23.014  000>> 716>>>>>>>>>>Complete!
237.4448 +14/06/2006 12:49:23.014  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30359
237.4449 +14/06/2006 12:49:23.014  000>> Good datagram received!
237.4450 +14/06/2006 12:49:23.024  000>> Listener:Received Bundle Offer
237.4451 +14/06/2006 12:49:23.024  000>> Listener:Sending Empty bundle request...
237.4452 +14/06/2006 12:49:23.024  000>> Listener(receiveBOffer):But we can not restart connection...
237.4453 +14/06/2006 12:49:23.024  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29932
237.4454 +14/06/2006 12:49:23.024  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30360
237.4455 +14/06/2006 12:49:23.024  000>> Good datagram received!
237.4456 +14/06/2006 12:49:23.034  000>> Initiator:No more requested bundles
237.4457 +14/06/2006 12:49:23.034  000>> Listener(receiveBundles):We can restart connection...
237.4458 +14/06/2006 12:49:23.134  000>> Hello Procedure:SENDSYN
237.4459 +14/06/2006 12:49:23.134  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29933
237.4460 +14/06/2006 12:49:23.204  000>> 91>>>>>>>>>>Part datagram received!
237.4461 +14/06/2006 12:49:23.204  000>> 91>>>>>>>>>>Complete!
237.4462 +14/06/2006 12:49:23.204  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30361
237.4463 +14/06/2006 12:49:23.204  000>> Good datagram received!
237.4464 +14/06/2006 12:49:23.204  000>> Receive Hello:SYNACK
237.4465 +14/06/2006 12:49:23.204  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29934
237.4466 +14/06/2006 12:49:23.304  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4467 +14/06/2006 12:49:23.304  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29935
237.4468 +14/06/2006 12:49:23.304  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29936
237.4469 +14/06/2006 12:49:23.304  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29937
237.4470 +14/06/2006 12:49:23.334  000>> 98>>>>>>>>>>Part datagram received!
237.4471 +14/06/2006 12:49:23.344  000>> 98>>>>>>>>>>Complete!
237.4472 +14/06/2006 12:49:23.344  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30362
237.4473 +14/06/2006 12:49:23.344  000>> Good datagram received!
237.4474 +14/06/2006 12:49:23.344  000>> Listener:Received dictionary
237.4475 +14/06/2006 12:49:23.344  000>> 90>>>>>>>>>>Part datagram received!
237.4476 +14/06/2006 12:49:23.344  000>> 90>>>>>>>>>>Complete!
237.4477 +14/06/2006 12:49:23.344  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30363
237.4478 +14/06/2006 12:49:23.344  000>> Good datagram received!
237.4479 +14/06/2006 12:49:23.344  000>> Listener:Received RIB
237.4480 +14/06/2006 12:49:23.515  000>> 716>>>>>>>>>>Part datagram received!
237.4481 +14/06/2006 12:49:23.515  000>> 716>>>>>>>>>>Complete!
237.4482 +14/06/2006 12:49:23.515  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30364
237.4483 +14/06/2006 12:49:23.515  000>> Good datagram received!
237.4484 +14/06/2006 12:49:23.525  000>> Listener:Received Bundle Offer
237.4485 +14/06/2006 12:49:23.525  000>> Listener:Sending Empty bundle request...
237.4486 +14/06/2006 12:49:23.525  000>> Listener(receiveBOffer):But we can not restart connection...
237.4487 +14/06/2006 12:49:23.525  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29938
237.4488 +14/06/2006 12:49:23.535  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30365
237.4489 +14/06/2006 12:49:23.535  000>> Good datagram received!
237.4490 +14/06/2006 12:49:23.535  000>> Initiator:No more requested bundles
237.4491 +14/06/2006 12:49:23.535  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.4492 +14/06/2006 12:49:23.645  000>> 91>>>>>>>>>>Part datagram received!
237.4493 +14/06/2006 12:49:23.645  000>> 91>>>>>>>>>>Complete!
237.4494 +14/06/2006 12:49:23.645  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30366
237.4495 +14/06/2006 12:49:23.655  000>> Good datagram received!
237.4496 +14/06/2006 12:49:23.655  000>> Receive Hello:SYN
237.4497 +14/06/2006 12:49:23.655  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29939
237.4498 +14/06/2006 12:49:23.675  000>> 91>>>>>>>>>>Part datagram received!
237.4499 +14/06/2006 12:49:23.675  000>> 91>>>>>>>>>>Complete!
237.4500 +14/06/2006 12:49:23.675  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30367
237.4501 +14/06/2006 12:49:23.675  000>> Good datagram received!
237.4502 +14/06/2006 12:49:23.675  000>> Receive Hello:ACK
237.4503 +14/06/2006 12:49:23.775  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4504 +14/06/2006 12:49:23.775  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29940
237.4505 +14/06/2006 12:49:23.775  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29941
237.4506 +14/06/2006 12:49:23.775  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29942
237.4507 +14/06/2006 12:49:23.785  000>> 98>>>>>>>>>>Part datagram received!
237.4508 +14/06/2006 12:49:23.785  000>> 98>>>>>>>>>>Complete!
237.4509 +14/06/2006 12:49:23.785  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30368
237.4510 +14/06/2006 12:49:23.785  000>> Good datagram received!
237.4511 +14/06/2006 12:49:23.785  000>> Listener:Received dictionary
237.4512 +14/06/2006 12:49:23.785  000>> 90>>>>>>>>>>Part datagram received!
237.4513 +14/06/2006 12:49:23.785  000>> 90>>>>>>>>>>Complete!
237.4514 +14/06/2006 12:49:23.785  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30369
237.4515 +14/06/2006 12:49:23.785  000>> Good datagram received!
237.4516 +14/06/2006 12:49:23.785  000>> Listener:Received RIB
237.4517 +14/06/2006 12:49:23.915  000>> 716>>>>>>>>>>Part datagram received!
237.4518 +14/06/2006 12:49:23.915  000>> 716>>>>>>>>>>Complete!
237.4519 +14/06/2006 12:49:23.915  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30370
237.4520 +14/06/2006 12:49:23.915  000>> Good datagram received!
237.4521 +14/06/2006 12:49:23.925  000>> Listener:Received Bundle Offer
237.4522 +14/06/2006 12:49:23.925  000>> Listener:Sending Empty bundle request...
237.4523 +14/06/2006 12:49:23.925  000>> Listener(receiveBOffer):But we can not restart connection...
237.4524 +14/06/2006 12:49:23.935  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29943
237.4525 +14/06/2006 12:49:23.935  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30371
237.4526 +14/06/2006 12:49:23.935  000>> Good datagram received!
237.4527 +14/06/2006 12:49:23.935  000>> Initiator:No more requested bundles
237.4528 +14/06/2006 12:49:23.935  000>> Listener(receiveBundles):We can restart connection...
237.4529 +14/06/2006 12:49:24.035  000>> Hello Procedure:SENDSYN
237.4530 +14/06/2006 12:49:24.035  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29944
237.4531 +14/06/2006 12:49:24.105  000>> 91>>>>>>>>>>Part datagram received!
237.4532 +14/06/2006 12:49:24.105  000>> 91>>>>>>>>>>Complete!
237.4533 +14/06/2006 12:49:24.105  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30372
237.4534 +14/06/2006 12:49:24.105  000>> Good datagram received!
237.4535 +14/06/2006 12:49:24.105  000>> Receive Hello:SYNACK
237.4536 +14/06/2006 12:49:24.105  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29945
237.4537 +14/06/2006 12:49:24.206  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4538 +14/06/2006 12:49:24.206  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29946
237.4539 +14/06/2006 12:49:24.206  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29947
237.4540 +14/06/2006 12:49:24.206  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29948
237.4541 +14/06/2006 12:49:24.226  000>> 98>>>>>>>>>>Part datagram received!
237.4542 +14/06/2006 12:49:24.236  000>> 98>>>>>>>>>>Complete!
237.4543 +14/06/2006 12:49:24.236  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30373
237.4544 +14/06/2006 12:49:24.236  000>> Good datagram received!
237.4545 +14/06/2006 12:49:24.236  000>> Listener:Received dictionary
237.4546 +14/06/2006 12:49:24.236  000>> 90>>>>>>>>>>Part datagram received!
237.4547 +14/06/2006 12:49:24.236  000>> 90>>>>>>>>>>Complete!
237.4548 +14/06/2006 12:49:24.236  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30374
237.4549 +14/06/2006 12:49:24.236  000>> Good datagram received!
237.4550 +14/06/2006 12:49:24.246  000>> Listener:Received RIB
237.4551 +14/06/2006 12:49:24.416  000>> 716>>>>>>>>>>Part datagram received!
237.4552 +14/06/2006 12:49:24.416  000>> 716>>>>>>>>>>Complete!
237.4553 +14/06/2006 12:49:24.416  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30375
237.4554 +14/06/2006 12:49:24.416  000>> Good datagram received!
237.4555 +14/06/2006 12:49:24.436  000>> Listener:Received Bundle Offer
237.4556 +14/06/2006 12:49:24.436  000>> Listener:Sending Empty bundle request...
237.4557 +14/06/2006 12:49:24.436  000>> Listener(receiveBOffer):But we can not restart connection...
237.4558 +14/06/2006 12:49:24.436  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29949
237.4559 +14/06/2006 12:49:24.436  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30376
237.4560 +14/06/2006 12:49:24.436  000>> Good datagram received!
237.4561 +14/06/2006 12:49:24.436  000>> Initiator:No more requested bundles
237.4562 +14/06/2006 12:49:24.436  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.4563 +14/06/2006 12:49:24.556  000>> 91>>>>>>>>>>Part datagram received!
237.4564 +14/06/2006 12:49:24.556  000>> 91>>>>>>>>>>Complete!
237.4565 +14/06/2006 12:49:24.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30377
237.4566 +14/06/2006 12:49:24.566  000>> Good datagram received!
237.4567 +14/06/2006 12:49:24.566  000>> Receive Hello:SYN
237.4568 +14/06/2006 12:49:24.566  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29950
237.4569 +14/06/2006 12:49:24.586  000>> 91>>>>>>>>>>Part datagram received!
237.4570 +14/06/2006 12:49:24.586  000>> 91>>>>>>>>>>Complete!
237.4571 +14/06/2006 12:49:24.586  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30378
237.4572 +14/06/2006 12:49:24.586  000>> Good datagram received!
237.4573 +14/06/2006 12:49:24.586  000>> Receive Hello:ACK
237.4574 +14/06/2006 12:49:24.686  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4575 +14/06/2006 12:49:24.686  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29951
237.4576 +14/06/2006 12:49:24.686  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29952
237.4577 +14/06/2006 12:49:24.686  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29953
237.4578 +14/06/2006 12:49:24.686  000>> 98>>>>>>>>>>Part datagram received!
237.4579 +14/06/2006 12:49:24.696  000>> 98>>>>>>>>>>Complete!
237.4580 +14/06/2006 12:49:24.696  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30379
237.4581 +14/06/2006 12:49:24.696  000>> Good datagram received!
237.4582 +14/06/2006 12:49:24.696  000>> Listener:Received dictionary
237.4583 +14/06/2006 12:49:24.696  000>> 90>>>>>>>>>>Part datagram received!
237.4584 +14/06/2006 12:49:24.696  000>> 90>>>>>>>>>>Complete!
237.4585 +14/06/2006 12:49:24.696  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30380
237.4586 +14/06/2006 12:49:24.706  000>> Good datagram received!
237.4587 +14/06/2006 12:49:24.706  000>> Listener:Received RIB
237.4588 +14/06/2006 12:49:24.816  000>> 716>>>>>>>>>>Part datagram received!
237.4589 +14/06/2006 12:49:24.816  000>> 716>>>>>>>>>>Complete!
237.4590 +14/06/2006 12:49:24.816  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30381
237.4591 +14/06/2006 12:49:24.816  000>> Good datagram received!
237.4592 +14/06/2006 12:49:24.826  000>> Listener:Received Bundle Offer
237.4593 +14/06/2006 12:49:24.836  000>> Listener:Sending Empty bundle request...
237.4594 +14/06/2006 12:49:24.836  000>> Listener(receiveBOffer):But we can not restart connection...
237.4595 +14/06/2006 12:49:24.836  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29954
237.4596 +14/06/2006 12:49:24.836  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30382
237.4597 +14/06/2006 12:49:24.836  000>> Good datagram received!
237.4598 +14/06/2006 12:49:24.836  000>> Initiator:No more requested bundles
237.4599 +14/06/2006 12:49:24.836  000>> Listener(receiveBundles):We can restart connection...
237.4600 +14/06/2006 12:49:24.937  000>> Hello Procedure:SENDSYN
237.4601 +14/06/2006 12:49:24.937  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29955
237.4602 +14/06/2006 12:49:24.997  000>> 91>>>>>>>>>>Part datagram received!
237.4603 +14/06/2006 12:49:24.997  000>> 91>>>>>>>>>>Complete!
237.4604 +14/06/2006 12:49:25.007  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30383
237.4605 +14/06/2006 12:49:25.007  000>> Good datagram received!
237.4606 +14/06/2006 12:49:25.007  000>> Receive Hello:SYNACK
237.4607 +14/06/2006 12:49:25.007  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29956
237.4608 +14/06/2006 12:49:25.107  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4609 +14/06/2006 12:49:25.107  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29957
237.4610 +14/06/2006 12:49:25.107  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29958
237.4611 +14/06/2006 12:49:25.107  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29959
237.4612 +14/06/2006 12:49:25.117  000>> 98>>>>>>>>>>Part datagram received!
237.4613 +14/06/2006 12:49:25.127  000>> 98>>>>>>>>>>Complete!
237.4614 +14/06/2006 12:49:25.127  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30384
237.4615 +14/06/2006 12:49:25.127  000>> Good datagram received!
237.4616 +14/06/2006 12:49:25.127  000>> Listener:Received dictionary
237.4617 +14/06/2006 12:49:25.127  000>> 90>>>>>>>>>>Part datagram received!
237.4618 +14/06/2006 12:49:25.127  000>> 90>>>>>>>>>>Complete!
237.4619 +14/06/2006 12:49:25.127  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30385
237.4620 +14/06/2006 12:49:25.127  000>> Good datagram received!
237.4621 +14/06/2006 12:49:25.127  000>> Listener:Received RIB
237.4622 +14/06/2006 12:49:25.317  000>> 716>>>>>>>>>>Part datagram received!
237.4623 +14/06/2006 12:49:25.317  000>> 716>>>>>>>>>>Complete!
237.4624 +14/06/2006 12:49:25.317  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30386
237.4625 +14/06/2006 12:49:25.317  000>> Good datagram received!
237.4626 +14/06/2006 12:49:25.337  000>> Listener:Received Bundle Offer
237.4627 +14/06/2006 12:49:25.337  000>> Listener:Sending Empty bundle request...
237.4628 +14/06/2006 12:49:25.337  000>> Listener(receiveBOffer):But we can not restart connection...
237.4629 +14/06/2006 12:49:25.337  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29960
237.4630 +14/06/2006 12:49:25.337  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30387
237.4631 +14/06/2006 12:49:25.337  000>> Good datagram received!
237.4632 +14/06/2006 12:49:25.337  000>> Initiator:No more requested bundles
237.4633 +14/06/2006 12:49:25.337  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.4634 +14/06/2006 12:49:25.457  000>> 91>>>>>>>>>>Part datagram received!
237.4635 +14/06/2006 12:49:25.467  000>> 91>>>>>>>>>>Complete!
237.4636 +14/06/2006 12:49:25.467  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30388
237.4637 +14/06/2006 12:49:25.467  000>> Good datagram received!
237.4638 +14/06/2006 12:49:25.467  000>> Receive Hello:SYN
237.4639 +14/06/2006 12:49:25.467  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29961
237.4640 +14/06/2006 12:49:25.487  000>> 91>>>>>>>>>>Part datagram received!
237.4641 +14/06/2006 12:49:25.487  000>> 91>>>>>>>>>>Complete!
237.4642 +14/06/2006 12:49:25.487  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30389
237.4643 +14/06/2006 12:49:25.487  000>> Good datagram received!
237.4644 +14/06/2006 12:49:25.487  000>> Receive Hello:ACK
237.4645 +14/06/2006 12:49:25.588  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4646 +14/06/2006 12:49:25.588  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29962
237.4647 +14/06/2006 12:49:25.588  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29963
237.4648 +14/06/2006 12:49:25.588  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29964
237.4649 +14/06/2006 12:49:25.588  000>> 98>>>>>>>>>>Part datagram received!
237.4650 +14/06/2006 12:49:25.588  000>> 98>>>>>>>>>>Complete!
237.4651 +14/06/2006 12:49:25.588  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30390
237.4652 +14/06/2006 12:49:25.588  000>> Good datagram received!
237.4653 +14/06/2006 12:49:25.588  000>> Listener:Received dictionary
237.4654 +14/06/2006 12:49:25.598  000>> 90>>>>>>>>>>Part datagram received!
237.4655 +14/06/2006 12:49:25.598  000>> 90>>>>>>>>>>Complete!
237.4656 +14/06/2006 12:49:25.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30391
237.4657 +14/06/2006 12:49:25.598  000>> Good datagram received!
237.4658 +14/06/2006 12:49:25.598  000>> Listener:Received RIB
237.4659 +14/06/2006 12:49:25.718  000>> 716>>>>>>>>>>Part datagram received!
237.4660 +14/06/2006 12:49:25.718  000>> 716>>>>>>>>>>Complete!
237.4661 +14/06/2006 12:49:25.718  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30392
237.4662 +14/06/2006 12:49:25.718  000>> Good datagram received!
237.4663 +14/06/2006 12:49:25.728  000>> Listener:Received Bundle Offer
237.4664 +14/06/2006 12:49:25.728  000>> Listener:Sending Empty bundle request...
237.4665 +14/06/2006 12:49:25.728  000>> Listener(receiveBOffer):But we can not restart connection...
237.4666 +14/06/2006 12:49:25.728  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29965
237.4667 +14/06/2006 12:49:25.728  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30393
237.4668 +14/06/2006 12:49:25.728  000>> Good datagram received!
237.4669 +14/06/2006 12:49:25.728  000>> Initiator:No more requested bundles
237.4670 +14/06/2006 12:49:25.728  000>> Listener(receiveBundles):We can restart connection...
237.4671 +14/06/2006 12:49:25.828  000>> Hello Procedure:SENDSYN
237.4672 +14/06/2006 12:49:25.828  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29966
237.4673 +14/06/2006 12:49:25.918  000>> 91>>>>>>>>>>Part datagram received!
237.4674 +14/06/2006 12:49:25.918  000>> 91>>>>>>>>>>Complete!
237.4675 +14/06/2006 12:49:25.918  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30394
237.4676 +14/06/2006 12:49:25.918  000>> Good datagram received!
237.4677 +14/06/2006 12:49:25.918  000>> Receive Hello:SYNACK
237.4678 +14/06/2006 12:49:25.918  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29967
237.4679 +14/06/2006 12:49:26.018  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4680 +14/06/2006 12:49:26.018  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29968
237.4681 +14/06/2006 12:49:26.018  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29969
237.4682 +14/06/2006 12:49:26.018  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29970
237.4683 +14/06/2006 12:49:26.158  000>> 78>>>>>>>>>>Part datagram received!
237.4684 +14/06/2006 12:49:26.158  000>> 78>>>>>>>>>>Complete!
237.4685 +14/06/2006 12:49:26.158  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30395
237.4686 +14/06/2006 12:49:26.158  000>> Good datagram received!
237.4687 +14/06/2006 12:49:26.158  000>> Initiator:No more requested bundles
237.4688 +14/06/2006 12:49:26.158  000>> Initiator:But we can not restart connection...
237.4689 +14/06/2006 12:49:26.319  000>> 826>>>>>>>>>>Part datagram received!
237.4690 +14/06/2006 12:49:26.319  000>> 826>>>>>>>>>>Complete!
237.4691 +14/06/2006 12:49:26.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30396
237.4692 +14/06/2006 12:49:26.319  000>> Good datagram received!
237.4693 +14/06/2006 12:49:26.319  000>> Listener:Received dictionary
237.4694 +14/06/2006 12:49:26.329  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30397
237.4695 +14/06/2006 12:49:26.329  000>> Good datagram received!
237.4696 +14/06/2006 12:49:26.329  000>> Listener:Received RIB
237.4697 +14/06/2006 12:49:26.329  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30398
237.4698 +14/06/2006 12:49:26.329  000>> Good datagram received!
237.4699 +14/06/2006 12:49:26.339  000>> Listener:Received Bundle Offer
237.4700 +14/06/2006 12:49:26.339  000>> Listener:Sending Empty bundle request...
237.4701 +14/06/2006 12:49:26.339  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.4702 +14/06/2006 12:49:26.349  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29971
237.4703 +14/06/2006 12:49:26.479  000>> 91>>>>>>>>>>Part datagram received!
237.4704 +14/06/2006 12:49:26.479  000>> 91>>>>>>>>>>Complete!
237.4705 +14/06/2006 12:49:26.489  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30399
237.4706 +14/06/2006 12:49:26.489  000>> Good datagram received!
237.4707 +14/06/2006 12:49:26.489  000>> Receive Hello:SYN
237.4708 +14/06/2006 12:49:26.489  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29972
237.4709 +14/06/2006 12:49:26.519  000>> 91>>>>>>>>>>Part datagram received!
237.4710 +14/06/2006 12:49:26.519  000>> 91>>>>>>>>>>Complete!
237.4711 +14/06/2006 12:49:26.519  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30400
237.4712 +14/06/2006 12:49:26.519  000>> Good datagram received!
237.4713 +14/06/2006 12:49:26.519  000>> Receive Hello:ACK
237.4714 +14/06/2006 12:49:26.619  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4715 +14/06/2006 12:49:26.619  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29973
237.4716 +14/06/2006 12:49:26.619  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29974
237.4717 +14/06/2006 12:49:26.619  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29975
237.4718 +14/06/2006 12:49:26.639  000>> 98>>>>>>>>>>Part datagram received!
237.4719 +14/06/2006 12:49:26.639  000>> 98>>>>>>>>>>Complete!
237.4720 +14/06/2006 12:49:26.639  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30401
237.4721 +14/06/2006 12:49:26.639  000>> Good datagram received!
237.4722 +14/06/2006 12:49:26.639  000>> Listener:Received dictionary
237.4723 +14/06/2006 12:49:26.639  000>> 90>>>>>>>>>>Part datagram received!
237.4724 +14/06/2006 12:49:26.639  000>> 90>>>>>>>>>>Complete!
237.4725 +14/06/2006 12:49:26.639  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30402
237.4726 +14/06/2006 12:49:26.639  000>> Good datagram received!
237.4727 +14/06/2006 12:49:26.639  000>> Listener:Received RIB
237.4728 +14/06/2006 12:49:26.819  000>> 716>>>>>>>>>>Part datagram received!
237.4729 +14/06/2006 12:49:26.819  000>> 716>>>>>>>>>>Complete!
237.4730 +14/06/2006 12:49:26.819  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30403
237.4731 +14/06/2006 12:49:26.819  000>> Good datagram received!
237.4732 +14/06/2006 12:49:26.829  000>> Listener:Received Bundle Offer
237.4733 +14/06/2006 12:49:26.829  000>> Listener:Sending Empty bundle request...
237.4734 +14/06/2006 12:49:26.829  000>> Listener(receiveBOffer):But we can not restart connection...
237.4735 +14/06/2006 12:49:26.829  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29976
237.4736 +14/06/2006 12:49:26.829  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30404
237.4737 +14/06/2006 12:49:26.829  000>> Good datagram received!
237.4738 +14/06/2006 12:49:26.829  000>> Initiator:No more requested bundles
237.4739 +14/06/2006 12:49:26.829  000>> Listener(receiveBundles):We can restart connection...
237.4740 +14/06/2006 12:49:26.929  000>> Hello Procedure:SENDSYN
237.4741 +14/06/2006 12:49:26.929  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29977
237.4742 +14/06/2006 12:49:27.020  000>> 91>>>>>>>>>>Part datagram received!
237.4743 +14/06/2006 12:49:27.020  000>> 91>>>>>>>>>>Complete!
237.4744 +14/06/2006 12:49:27.020  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30405
237.4745 +14/06/2006 12:49:27.020  000>> Good datagram received!
237.4746 +14/06/2006 12:49:27.030  000>> Receive Hello:SYNACK
237.4747 +14/06/2006 12:49:27.030  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29978
237.4748 +14/06/2006 12:49:27.130  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4749 +14/06/2006 12:49:27.130  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29979
237.4750 +14/06/2006 12:49:27.130  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29980
237.4751 +14/06/2006 12:49:27.130  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29981
237.4752 +14/06/2006 12:49:27.140  000>> 98>>>>>>>>>>Part datagram received!
237.4753 +14/06/2006 12:49:27.140  000>> 98>>>>>>>>>>Complete!
237.4754 +14/06/2006 12:49:27.150  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30406
237.4755 +14/06/2006 12:49:27.150  000>> Good datagram received!
237.4756 +14/06/2006 12:49:27.150  000>> Listener:Received dictionary
237.4757 +14/06/2006 12:49:27.160  000>> 90>>>>>>>>>>Part datagram received!
237.4758 +14/06/2006 12:49:27.160  000>> 90>>>>>>>>>>Complete!
237.4759 +14/06/2006 12:49:27.160  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30407
237.4760 +14/06/2006 12:49:27.160  000>> Good datagram received!
237.4761 +14/06/2006 12:49:27.160  000>> Listener:Received RIB
237.4762 +14/06/2006 12:49:27.320  000>> 716>>>>>>>>>>Part datagram received!
237.4763 +14/06/2006 12:49:27.320  000>> 716>>>>>>>>>>Complete!
237.4764 +14/06/2006 12:49:27.320  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30408
237.4765 +14/06/2006 12:49:27.320  000>> Good datagram received!
237.4766 +14/06/2006 12:49:27.340  000>> Listener:Received Bundle Offer
237.4767 +14/06/2006 12:49:27.340  000>> Listener:Sending Empty bundle request...
237.4768 +14/06/2006 12:49:27.340  000>> Listener(receiveBOffer):But we can not restart connection...
237.4769 +14/06/2006 12:49:27.340  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29982
237.4770 +14/06/2006 12:49:27.340  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30409
237.4771 +14/06/2006 12:49:27.340  000>> Good datagram received!
237.4772 +14/06/2006 12:49:27.340  000>> Initiator:No more requested bundles
237.4773 +14/06/2006 12:49:27.340  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.4774 +14/06/2006 12:49:27.470  000>> 91>>>>>>>>>>Part datagram received!
237.4775 +14/06/2006 12:49:27.470  000>> 91>>>>>>>>>>Complete!
237.4776 +14/06/2006 12:49:27.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30410
237.4777 +14/06/2006 12:49:27.470  000>> Good datagram received!
237.4778 +14/06/2006 12:49:27.470  000>> Receive Hello:SYN
237.4779 +14/06/2006 12:49:27.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29983
237.4780 +14/06/2006 12:49:27.500  000>> 91>>>>>>>>>>Part datagram received!
237.4781 +14/06/2006 12:49:27.500  000>> 91>>>>>>>>>>Complete!
237.4782 +14/06/2006 12:49:27.500  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30411
237.4783 +14/06/2006 12:49:27.500  000>> Good datagram received!
237.4784 +14/06/2006 12:49:27.500  000>> Receive Hello:ACK
237.4785 +14/06/2006 12:49:27.600  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4786 +14/06/2006 12:49:27.600  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29984
237.4787 +14/06/2006 12:49:27.600  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29985
237.4788 +14/06/2006 12:49:27.600  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29986
237.4789 +14/06/2006 12:49:27.600  000>> 98>>>>>>>>>>Part datagram received!
237.4790 +14/06/2006 12:49:27.600  000>> 98>>>>>>>>>>Complete!
237.4791 +14/06/2006 12:49:27.600  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30412
237.4792 +14/06/2006 12:49:27.610  000>> Good datagram received!
237.4793 +14/06/2006 12:49:27.610  000>> Listener:Received dictionary
237.4794 +14/06/2006 12:49:27.610  000>> 90>>>>>>>>>>Part datagram received!
237.4795 +14/06/2006 12:49:27.610  000>> 90>>>>>>>>>>Complete!
237.4796 +14/06/2006 12:49:27.610  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30413
237.4797 +14/06/2006 12:49:27.610  000>> Good datagram received!
237.4798 +14/06/2006 12:49:27.610  000>> Listener:Received RIB
237.4799 +14/06/2006 12:49:27.721  000>> 716>>>>>>>>>>Part datagram received!
237.4800 +14/06/2006 12:49:27.721  000>> 716>>>>>>>>>>Complete!
237.4801 +14/06/2006 12:49:27.721  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30414
237.4802 +14/06/2006 12:49:27.721  000>> Good datagram received!
237.4803 +14/06/2006 12:49:27.731  000>> Listener:Received Bundle Offer
237.4804 +14/06/2006 12:49:27.731  000>> Listener:Sending Empty bundle request...
237.4805 +14/06/2006 12:49:27.731  000>> Listener(receiveBOffer):But we can not restart connection...
237.4806 +14/06/2006 12:49:27.731  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29987
237.4807 +14/06/2006 12:49:27.731  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30415
237.4808 +14/06/2006 12:49:27.731  000>> Good datagram received!
237.4809 +14/06/2006 12:49:27.731  000>> Initiator:No more requested bundles
237.4810 +14/06/2006 12:49:27.731  000>> Listener(receiveBundles):We can restart connection...
237.4811 +14/06/2006 12:49:27.831  000>> Hello Procedure:SENDSYN
237.4812 +14/06/2006 12:49:27.831  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29988
237.4813 +14/06/2006 12:49:28.001  000>> 91>>>>>>>>>>Part datagram received!
237.4814 +14/06/2006 12:49:28.001  000>> 91>>>>>>>>>>Complete!
237.4815 +14/06/2006 12:49:28.011  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30416
237.4816 +14/06/2006 12:49:28.011  000>> Good datagram received!
237.4817 +14/06/2006 12:49:28.011  000>> Receive Hello:SYNACK
237.4818 +14/06/2006 12:49:28.011  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29989
237.4819 +14/06/2006 12:49:28.111  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4820 +14/06/2006 12:49:28.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29990
237.4821 +14/06/2006 12:49:28.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29991
237.4822 +14/06/2006 12:49:28.111  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29992
237.4823 +14/06/2006 12:49:28.121  000>> 98>>>>>>>>>>Part datagram received!
237.4824 +14/06/2006 12:49:28.121  000>> 98>>>>>>>>>>Complete!
237.4825 +14/06/2006 12:49:28.131  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30417
237.4826 +14/06/2006 12:49:28.131  000>> Good datagram received!
237.4827 +14/06/2006 12:49:28.131  000>> Listener:Received dictionary
237.4828 +14/06/2006 12:49:28.131  000>> 90>>>>>>>>>>Part datagram received!
237.4829 +14/06/2006 12:49:28.131  000>> 90>>>>>>>>>>Complete!
237.4830 +14/06/2006 12:49:28.131  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30418
237.4831 +14/06/2006 12:49:28.131  000>> Good datagram received!
237.4832 +14/06/2006 12:49:28.131  000>> Listener:Received RIB
237.4833 +14/06/2006 12:49:28.321  000>> 716>>>>>>>>>>Part datagram received!
237.4834 +14/06/2006 12:49:28.321  000>> 716>>>>>>>>>>Complete!
237.4835 +14/06/2006 12:49:28.331  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30419
237.4836 +14/06/2006 12:49:28.331  000>> Good datagram received!
237.4837 +14/06/2006 12:49:28.341  000>> Listener:Received Bundle Offer
237.4838 +14/06/2006 12:49:28.341  000>> Listener:Sending Empty bundle request...
237.4839 +14/06/2006 12:49:28.341  000>> Listener(receiveBOffer):But we can not restart connection...
237.4840 +14/06/2006 12:49:28.341  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29993
237.4841 +14/06/2006 12:49:28.341  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30420
237.4842 +14/06/2006 12:49:28.341  000>> Good datagram received!
237.4843 +14/06/2006 12:49:28.341  000>> Initiator:No more requested bundles
237.4844 +14/06/2006 12:49:28.352  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.4845 +14/06/2006 12:49:28.472  000>> 91>>>>>>>>>>Part datagram received!
237.4846 +14/06/2006 12:49:28.472  000>> 91>>>>>>>>>>Complete!
237.4847 +14/06/2006 12:49:28.472  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30421
237.4848 +14/06/2006 12:49:28.472  000>> Good datagram received!
237.4849 +14/06/2006 12:49:28.482  000>> Receive Hello:SYN
237.4850 +14/06/2006 12:49:28.482  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29994
237.4851 +14/06/2006 12:49:28.502  000>> 91>>>>>>>>>>Part datagram received!
237.4852 +14/06/2006 12:49:28.502  000>> 91>>>>>>>>>>Complete!
237.4853 +14/06/2006 12:49:28.502  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30422
237.4854 +14/06/2006 12:49:28.502  000>> Good datagram received!
237.4855 +14/06/2006 12:49:28.502  000>> Receive Hello:ACK
237.4856 +14/06/2006 12:49:28.602  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4857 +14/06/2006 12:49:28.602  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:29995
237.4858 +14/06/2006 12:49:28.602  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:29996
237.4859 +14/06/2006 12:49:28.602  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:29997
237.4860 +14/06/2006 12:49:28.612  000>> 98>>>>>>>>>>Part datagram received!
237.4861 +14/06/2006 12:49:28.612  000>> 98>>>>>>>>>>Complete!
237.4862 +14/06/2006 12:49:28.612  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30423
237.4863 +14/06/2006 12:49:28.612  000>> Good datagram received!
237.4864 +14/06/2006 12:49:28.612  000>> Listener:Received dictionary
237.4865 +14/06/2006 12:49:28.612  000>> 90>>>>>>>>>>Part datagram received!
237.4866 +14/06/2006 12:49:28.612  000>> 90>>>>>>>>>>Complete!
237.4867 +14/06/2006 12:49:28.612  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30424
237.4868 +14/06/2006 12:49:28.612  000>> Good datagram received!
237.4869 +14/06/2006 12:49:28.612  000>> Listener:Received RIB
237.4870 +14/06/2006 12:49:28.722  000>> 716>>>>>>>>>>Part datagram received!
237.4871 +14/06/2006 12:49:28.722  000>> 716>>>>>>>>>>Complete!
237.4872 +14/06/2006 12:49:28.732  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30425
237.4873 +14/06/2006 12:49:28.732  000>> Good datagram received!
237.4874 +14/06/2006 12:49:28.732  000>> Listener:Received Bundle Offer
237.4875 +14/06/2006 12:49:28.732  000>> Listener:Sending Empty bundle request...
237.4876 +14/06/2006 12:49:28.732  000>> Listener(receiveBOffer):But we can not restart connection...
237.4877 +14/06/2006 12:49:28.732  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:29998
237.4878 +14/06/2006 12:49:28.732  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30426
237.4879 +14/06/2006 12:49:28.732  000>> Good datagram received!
237.4880 +14/06/2006 12:49:28.732  000>> Initiator:No more requested bundles
237.4881 +14/06/2006 12:49:28.732  000>> Listener(receiveBundles):We can restart connection...
237.4882 +14/06/2006 12:49:28.832  000>> Hello Procedure:SENDSYN
237.4883 +14/06/2006 12:49:28.832  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:29999
237.4884 +14/06/2006 12:49:28.912  000>> 91>>>>>>>>>>Part datagram received!
237.4885 +14/06/2006 12:49:28.912  000>> 91>>>>>>>>>>Complete!
237.4886 +14/06/2006 12:49:28.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30427
237.4887 +14/06/2006 12:49:28.912  000>> Good datagram received!
237.4888 +14/06/2006 12:49:28.912  000>> Receive Hello:SYNACK
237.4889 +14/06/2006 12:49:28.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30000
237.4890 +14/06/2006 12:49:29.012  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4891 +14/06/2006 12:49:29.012  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30001
237.4892 +14/06/2006 12:49:29.012  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30002
237.4893 +14/06/2006 12:49:29.012  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30003
237.4894 +14/06/2006 12:49:29.153  000>> 78>>>>>>>>>>Part datagram received!
237.4895 +14/06/2006 12:49:29.153  000>> 78>>>>>>>>>>Complete!
237.4896 +14/06/2006 12:49:29.153  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30428
237.4897 +14/06/2006 12:49:29.153  000>> Good datagram received!
237.4898 +14/06/2006 12:49:29.153  000>> Initiator:No more requested bundles
237.4899 +14/06/2006 12:49:29.153  000>> Initiator:But we can not restart connection...
237.4900 +14/06/2006 12:49:29.333  000>> 826>>>>>>>>>>Part datagram received!
237.4901 +14/06/2006 12:49:29.333  000>> 826>>>>>>>>>>Complete!
237.4902 +14/06/2006 12:49:29.333  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30429
237.4903 +14/06/2006 12:49:29.333  000>> Good datagram received!
237.4904 +14/06/2006 12:49:29.333  000>> Listener:Received dictionary
237.4905 +14/06/2006 12:49:29.333  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30430
237.4906 +14/06/2006 12:49:29.333  000>> Good datagram received!
237.4907 +14/06/2006 12:49:29.333  000>> Listener:Received RIB
237.4908 +14/06/2006 12:49:29.333  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30431
237.4909 +14/06/2006 12:49:29.333  000>> Good datagram received!
237.4910 +14/06/2006 12:49:29.353  000>> Listener:Received Bundle Offer
237.4911 +14/06/2006 12:49:29.353  000>> Listener:Sending Empty bundle request...
237.4912 +14/06/2006 12:49:29.353  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.4913 +14/06/2006 12:49:29.353  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30004
237.4914 +14/06/2006 12:49:29.483  000>> 91>>>>>>>>>>Part datagram received!
237.4915 +14/06/2006 12:49:29.483  000>> 91>>>>>>>>>>Complete!
237.4916 +14/06/2006 12:49:29.483  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30432
237.4917 +14/06/2006 12:49:29.493  000>> Good datagram received!
237.4918 +14/06/2006 12:49:29.493  000>> Receive Hello:SYN
237.4919 +14/06/2006 12:49:29.493  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30005
237.4920 +14/06/2006 12:49:29.513  000>> 91>>>>>>>>>>Part datagram received!
237.4921 +14/06/2006 12:49:29.513  000>> 91>>>>>>>>>>Complete!
237.4922 +14/06/2006 12:49:29.513  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30433
237.4923 +14/06/2006 12:49:29.513  000>> Good datagram received!
237.4924 +14/06/2006 12:49:29.523  000>> Receive Hello:ACK
237.4925 +14/06/2006 12:49:29.623  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4926 +14/06/2006 12:49:29.623  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30006
237.4927 +14/06/2006 12:49:29.623  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30007
237.4928 +14/06/2006 12:49:29.623  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30008
237.4929 +14/06/2006 12:49:29.643  000>> 826>>>>>>>>>>Part datagram received!
237.4930 +14/06/2006 12:49:29.643  000>> 826>>>>>>>>>>Complete!
237.4931 +14/06/2006 12:49:29.643  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30434
237.4932 +14/06/2006 12:49:29.643  000>> Good datagram received!
237.4933 +14/06/2006 12:49:29.643  000>> Listener:Received dictionary
237.4934 +14/06/2006 12:49:29.653  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30435
237.4935 +14/06/2006 12:49:29.653  000>> Good datagram received!
237.4936 +14/06/2006 12:49:29.653  000>> Listener:Received RIB
237.4937 +14/06/2006 12:49:29.653  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30436
237.4938 +14/06/2006 12:49:29.653  000>> Good datagram received!
237.4939 +14/06/2006 12:49:29.663  000>> Listener:Received Bundle Offer
237.4940 +14/06/2006 12:49:29.663  000>> Listener:Sending Empty bundle request...
237.4941 +14/06/2006 12:49:29.663  000>> Listener(receiveBOffer):But we can not restart connection...
237.4942 +14/06/2006 12:49:29.673  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30009
237.4943 +14/06/2006 12:49:29.744  000>> 78>>>>>>>>>>Part datagram received!
237.4944 +14/06/2006 12:49:29.744  000>> 78>>>>>>>>>>Complete!
237.4945 +14/06/2006 12:49:29.754  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30437
237.4946 +14/06/2006 12:49:29.754  000>> Good datagram received!
237.4947 +14/06/2006 12:49:29.754  000>> Initiator:No more requested bundles
237.4948 +14/06/2006 12:49:29.754  000>> Listener(receiveBundles):We can restart connection...
237.4949 +14/06/2006 12:49:29.854  000>> Hello Procedure:SENDSYN
237.4950 +14/06/2006 12:49:29.854  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30010
237.4951 +14/06/2006 12:49:30.004  000>> 91>>>>>>>>>>Part datagram received!
237.4952 +14/06/2006 12:49:30.014  000>> 91>>>>>>>>>>Complete!
237.4953 +14/06/2006 12:49:30.014  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30438
237.4954 +14/06/2006 12:49:30.014  000>> Good datagram received!
237.4955 +14/06/2006 12:49:30.014  000>> Receive Hello:SYNACK
237.4956 +14/06/2006 12:49:30.014  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30011
237.4957 +14/06/2006 12:49:30.114  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4958 +14/06/2006 12:49:30.114  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30012
237.4959 +14/06/2006 12:49:30.114  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30013
237.4960 +14/06/2006 12:49:30.114  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30014
237.4961 +14/06/2006 12:49:30.134  000>> 98>>>>>>>>>>Part datagram received!
237.4962 +14/06/2006 12:49:30.144  000>> 98>>>>>>>>>>Complete!
237.4963 +14/06/2006 12:49:30.144  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30439
237.4964 +14/06/2006 12:49:30.144  000>> Good datagram received!
237.4965 +14/06/2006 12:49:30.144  000>> Listener:Received dictionary
237.4966 +14/06/2006 12:49:30.154  000>> 90>>>>>>>>>>Part datagram received!
237.4967 +14/06/2006 12:49:30.154  000>> 90>>>>>>>>>>Complete!
237.4968 +14/06/2006 12:49:30.154  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30440
237.4969 +14/06/2006 12:49:30.154  000>> Good datagram received!
237.4970 +14/06/2006 12:49:30.154  000>> Listener:Received RIB
237.4971 +14/06/2006 12:49:30.354  000>> 716>>>>>>>>>>Part datagram received!
237.4972 +14/06/2006 12:49:30.354  000>> 716>>>>>>>>>>Complete!
237.4973 +14/06/2006 12:49:30.354  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30441
237.4974 +14/06/2006 12:49:30.354  000>> Good datagram received!
237.4975 +14/06/2006 12:49:30.374  000>> Listener:Received Bundle Offer
237.4976 +14/06/2006 12:49:30.374  000>> Listener:Sending Empty bundle request...
237.4977 +14/06/2006 12:49:30.374  000>> Listener(receiveBOffer):But we can not restart connection...
237.4978 +14/06/2006 12:49:30.374  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30015
237.4979 +14/06/2006 12:49:30.374  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30442
237.4980 +14/06/2006 12:49:30.374  000>> Good datagram received!
237.4981 +14/06/2006 12:49:30.374  000>> Initiator:No more requested bundles
237.4982 +14/06/2006 12:49:30.374  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.4983 +14/06/2006 12:49:30.515  000>> 91>>>>>>>>>>Part datagram received!
237.4984 +14/06/2006 12:49:30.515  000>> 91>>>>>>>>>>Complete!
237.4985 +14/06/2006 12:49:30.515  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30443
237.4986 +14/06/2006 12:49:30.515  000>> Good datagram received!
237.4987 +14/06/2006 12:49:30.515  000>> Receive Hello:SYN
237.4988 +14/06/2006 12:49:30.515  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30016
237.4989 +14/06/2006 12:49:30.545  000>> 91>>>>>>>>>>Part datagram received!
237.4990 +14/06/2006 12:49:30.545  000>> 91>>>>>>>>>>Complete!
237.4991 +14/06/2006 12:49:30.545  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30444
237.4992 +14/06/2006 12:49:30.545  000>> Good datagram received!
237.4993 +14/06/2006 12:49:30.545  000>> Receive Hello:ACK
237.4994 +14/06/2006 12:49:30.645  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.4995 +14/06/2006 12:49:30.645  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30017
237.4996 +14/06/2006 12:49:30.645  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30018
237.4997 +14/06/2006 12:49:30.645  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30019
237.4998 +14/06/2006 12:49:30.645  000>> 98>>>>>>>>>>Part datagram received!
237.4999 +14/06/2006 12:49:30.645  000>> 98>>>>>>>>>>Complete!
237.5000 +14/06/2006 12:49:30.655  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30445
237.5001 +14/06/2006 12:49:30.655  000>> Good datagram received!
237.5002 +14/06/2006 12:49:30.655  000>> Listener:Received dictionary
237.5003 +14/06/2006 12:49:30.655  000>> 90>>>>>>>>>>Part datagram received!
237.5004 +14/06/2006 12:49:30.655  000>> 90>>>>>>>>>>Complete!
237.5005 +14/06/2006 12:49:30.655  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30446
237.5006 +14/06/2006 12:49:30.655  000>> Good datagram received!
237.5007 +14/06/2006 12:49:30.655  000>> Listener:Received RIB
237.5008 +14/06/2006 12:49:30.835  000>> 716>>>>>>>>>>Part datagram received!
237.5009 +14/06/2006 12:49:30.835  000>> 716>>>>>>>>>>Complete!
237.5010 +14/06/2006 12:49:30.835  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30447
237.5011 +14/06/2006 12:49:30.835  000>> Good datagram received!
237.5012 +14/06/2006 12:49:30.835  000>> Listener:Received Bundle Offer
237.5013 +14/06/2006 12:49:30.835  000>> Listener:Sending Empty bundle request...
237.5014 +14/06/2006 12:49:30.845  000>> Listener(receiveBOffer):But we can not restart connection...
237.5015 +14/06/2006 12:49:30.845  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30020
237.5016 +14/06/2006 12:49:30.845  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30448
237.5017 +14/06/2006 12:49:30.845  000>> Good datagram received!
237.5018 +14/06/2006 12:49:30.845  000>> Initiator:No more requested bundles
237.5019 +14/06/2006 12:49:30.845  000>> Listener(receiveBundles):We can restart connection...
237.5020 +14/06/2006 12:49:30.945  000>> Hello Procedure:SENDSYN
237.5021 +14/06/2006 12:49:30.945  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30021
237.5022 +14/06/2006 12:49:31.015  000>> 91>>>>>>>>>>Part datagram received!
237.5023 +14/06/2006 12:49:31.015  000>> 91>>>>>>>>>>Complete!
237.5024 +14/06/2006 12:49:31.015  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30449
237.5025 +14/06/2006 12:49:31.015  000>> Good datagram received!
237.5026 +14/06/2006 12:49:31.015  000>> Receive Hello:SYNACK
237.5027 +14/06/2006 12:49:31.015  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30022
237.5028 +14/06/2006 12:49:31.115  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5029 +14/06/2006 12:49:31.115  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30023
237.5030 +14/06/2006 12:49:31.115  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30024
237.5031 +14/06/2006 12:49:31.115  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30025
237.5032 +14/06/2006 12:49:31.125  000>> 98>>>>>>>>>>Part datagram received!
237.5033 +14/06/2006 12:49:31.125  000>> 98>>>>>>>>>>Complete!
237.5034 +14/06/2006 12:49:31.136  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30450
237.5035 +14/06/2006 12:49:31.136  000>> Good datagram received!
237.5036 +14/06/2006 12:49:31.136  000>> Listener:Received dictionary
237.5037 +14/06/2006 12:49:31.136  000>> 90>>>>>>>>>>Part datagram received!
237.5038 +14/06/2006 12:49:31.136  000>> 90>>>>>>>>>>Complete!
237.5039 +14/06/2006 12:49:31.136  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30451
237.5040 +14/06/2006 12:49:31.136  000>> Good datagram received!
237.5041 +14/06/2006 12:49:31.136  000>> Listener:Received RIB
237.5042 +14/06/2006 12:49:31.336  000>> 716>>>>>>>>>>Part datagram received!
237.5043 +14/06/2006 12:49:31.336  000>> 716>>>>>>>>>>Complete!
237.5044 +14/06/2006 12:49:31.336  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30452
237.5045 +14/06/2006 12:49:31.336  000>> Good datagram received!
237.5046 +14/06/2006 12:49:31.356  000>> Listener:Received Bundle Offer
237.5047 +14/06/2006 12:49:31.356  000>> Listener:Sending Empty bundle request...
237.5048 +14/06/2006 12:49:31.356  000>> Listener(receiveBOffer):But we can not restart connection...
237.5049 +14/06/2006 12:49:31.356  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30026
237.5050 +14/06/2006 12:49:31.356  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30453
237.5051 +14/06/2006 12:49:31.356  000>> Good datagram received!
237.5052 +14/06/2006 12:49:31.356  000>> Initiator:No more requested bundles
237.5053 +14/06/2006 12:49:31.356  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.5054 +14/06/2006 12:49:31.486  000>> 91>>>>>>>>>>Part datagram received!
237.5055 +14/06/2006 12:49:31.486  000>> 91>>>>>>>>>>Complete!
237.5056 +14/06/2006 12:49:31.486  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30454
237.5057 +14/06/2006 12:49:31.486  000>> Good datagram received!
237.5058 +14/06/2006 12:49:31.486  000>> Receive Hello:SYN
237.5059 +14/06/2006 12:49:31.486  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30027
237.5060 +14/06/2006 12:49:31.516  000>> 91>>>>>>>>>>Part datagram received!
237.5061 +14/06/2006 12:49:31.516  000>> 91>>>>>>>>>>Complete!
237.5062 +14/06/2006 12:49:31.516  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30455
237.5063 +14/06/2006 12:49:31.516  000>> Good datagram received!
237.5064 +14/06/2006 12:49:31.516  000>> Receive Hello:ACK
237.5065 +14/06/2006 12:49:31.616  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5066 +14/06/2006 12:49:31.616  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30028
237.5067 +14/06/2006 12:49:31.616  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30029
237.5068 +14/06/2006 12:49:31.616  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30030
237.5069 +14/06/2006 12:49:31.656  000>> 826>>>>>>>>>>Part datagram received!
237.5070 +14/06/2006 12:49:31.656  000>> 826>>>>>>>>>>Complete!
237.5071 +14/06/2006 12:49:31.656  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30456
237.5072 +14/06/2006 12:49:31.656  000>> Good datagram received!
237.5073 +14/06/2006 12:49:31.656  000>> Listener:Received dictionary
237.5074 +14/06/2006 12:49:31.656  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30457
237.5075 +14/06/2006 12:49:31.656  000>> Good datagram received!
237.5076 +14/06/2006 12:49:31.656  000>> Listener:Received RIB
237.5077 +14/06/2006 12:49:31.656  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30458
237.5078 +14/06/2006 12:49:31.656  000>> Good datagram received!
237.5079 +14/06/2006 12:49:31.666  000>> Listener:Received Bundle Offer
237.5080 +14/06/2006 12:49:31.666  000>> Listener:Sending Empty bundle request...
237.5081 +14/06/2006 12:49:31.666  000>> Listener(receiveBOffer):But we can not restart connection...
237.5082 +14/06/2006 12:49:31.666  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30031
237.5083 +14/06/2006 12:49:31.746  000>> 78>>>>>>>>>>Part datagram received!
237.5084 +14/06/2006 12:49:31.746  000>> 78>>>>>>>>>>Complete!
237.5085 +14/06/2006 12:49:31.746  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30459
237.5086 +14/06/2006 12:49:31.746  000>> Good datagram received!
237.5087 +14/06/2006 12:49:31.746  000>> Initiator:No more requested bundles
237.5088 +14/06/2006 12:49:31.746  000>> Listener(receiveBundles):We can restart connection...
237.5089 +14/06/2006 12:49:31.847  000>> Hello Procedure:SENDSYN
237.5090 +14/06/2006 12:49:31.847  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30032
237.5091 +14/06/2006 12:49:31.917  000>> 91>>>>>>>>>>Part datagram received!
237.5092 +14/06/2006 12:49:31.917  000>> 91>>>>>>>>>>Complete!
237.5093 +14/06/2006 12:49:31.917  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30460
237.5094 +14/06/2006 12:49:31.917  000>> Good datagram received!
237.5095 +14/06/2006 12:49:31.917  000>> Receive Hello:SYNACK
237.5096 +14/06/2006 12:49:31.917  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30033
237.5097 +14/06/2006 12:49:32.017  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5098 +14/06/2006 12:49:32.017  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30034
237.5099 +14/06/2006 12:49:32.017  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30035
237.5100 +14/06/2006 12:49:32.027  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30036
237.5101 +14/06/2006 12:49:32.147  000>> 78>>>>>>>>>>Part datagram received!
237.5102 +14/06/2006 12:49:32.147  000>> 78>>>>>>>>>>Complete!
237.5103 +14/06/2006 12:49:32.147  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30461
237.5104 +14/06/2006 12:49:32.147  000>> Good datagram received!
237.5105 +14/06/2006 12:49:32.147  000>> Initiator:No more requested bundles
237.5106 +14/06/2006 12:49:32.147  000>> Initiator:But we can not restart connection...
237.5107 +14/06/2006 12:49:32.337  000>> 826>>>>>>>>>>Part datagram received!
237.5108 +14/06/2006 12:49:32.337  000>> 826>>>>>>>>>>Complete!
237.5109 +14/06/2006 12:49:32.337  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30462
237.5110 +14/06/2006 12:49:32.337  000>> Good datagram received!
237.5111 +14/06/2006 12:49:32.337  000>> Listener:Received dictionary
237.5112 +14/06/2006 12:49:32.337  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30463
237.5113 +14/06/2006 12:49:32.347  000>> Good datagram received!
237.5114 +14/06/2006 12:49:32.347  000>> Listener:Received RIB
237.5115 +14/06/2006 12:49:32.347  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30464
237.5116 +14/06/2006 12:49:32.347  000>> Good datagram received!
237.5117 +14/06/2006 12:49:32.357  000>> Listener:Received Bundle Offer
237.5118 +14/06/2006 12:49:32.357  000>> Listener:Sending Empty bundle request...
237.5119 +14/06/2006 12:49:32.357  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.5120 +14/06/2006 12:49:32.357  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30037
237.5121 +14/06/2006 12:49:32.487  000>> 91>>>>>>>>>>Part datagram received!
237.5122 +14/06/2006 12:49:32.487  000>> 91>>>>>>>>>>Complete!
237.5123 +14/06/2006 12:49:32.487  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30465
237.5124 +14/06/2006 12:49:32.487  000>> Good datagram received!
237.5125 +14/06/2006 12:49:32.487  000>> Receive Hello:SYN
237.5126 +14/06/2006 12:49:32.497  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30038
237.5127 +14/06/2006 12:49:32.517  000>> 91>>>>>>>>>>Part datagram received!
237.5128 +14/06/2006 12:49:32.517  000>> 91>>>>>>>>>>Complete!
237.5129 +14/06/2006 12:49:32.517  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30466
237.5130 +14/06/2006 12:49:32.517  000>> Good datagram received!
237.5131 +14/06/2006 12:49:32.517  000>> Receive Hello:ACK
237.5132 +14/06/2006 12:49:32.618  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5133 +14/06/2006 12:49:32.618  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30039
237.5134 +14/06/2006 12:49:32.618  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30040
237.5135 +14/06/2006 12:49:32.618  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30041
237.5136 +14/06/2006 12:49:32.628  000>> 98>>>>>>>>>>Part datagram received!
237.5137 +14/06/2006 12:49:32.628  000>> 98>>>>>>>>>>Complete!
237.5138 +14/06/2006 12:49:32.628  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30467
237.5139 +14/06/2006 12:49:32.628  000>> Good datagram received!
237.5140 +14/06/2006 12:49:32.628  000>> Listener:Received dictionary
237.5141 +14/06/2006 12:49:32.628  000>> 90>>>>>>>>>>Part datagram received!
237.5142 +14/06/2006 12:49:32.628  000>> 90>>>>>>>>>>Complete!
237.5143 +14/06/2006 12:49:32.628  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30468
237.5144 +14/06/2006 12:49:32.628  000>> Good datagram received!
237.5145 +14/06/2006 12:49:32.628  000>> Listener:Received RIB
237.5146 +14/06/2006 12:49:32.738  000>> 716>>>>>>>>>>Part datagram received!
237.5147 +14/06/2006 12:49:32.738  000>> 716>>>>>>>>>>Complete!
237.5148 +14/06/2006 12:49:32.738  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30469
237.5149 +14/06/2006 12:49:32.738  000>> Good datagram received!
237.5150 +14/06/2006 12:49:32.748  000>> Listener:Received Bundle Offer
237.5151 +14/06/2006 12:49:32.748  000>> Listener:Sending Empty bundle request...
237.5152 +14/06/2006 12:49:32.748  000>> Listener(receiveBOffer):But we can not restart connection...
237.5153 +14/06/2006 12:49:32.748  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30042
237.5154 +14/06/2006 12:49:32.748  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30470
237.5155 +14/06/2006 12:49:32.748  000>> Good datagram received!
237.5156 +14/06/2006 12:49:32.748  000>> Initiator:No more requested bundles
237.5157 +14/06/2006 12:49:32.748  000>> Listener(receiveBundles):We can restart connection...
237.5158 +14/06/2006 12:49:32.848  000>> Hello Procedure:SENDSYN
237.5159 +14/06/2006 12:49:32.848  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30043
237.5160 +14/06/2006 12:49:32.918  000>> 91>>>>>>>>>>Part datagram received!
237.5161 +14/06/2006 12:49:32.918  000>> 91>>>>>>>>>>Complete!
237.5162 +14/06/2006 12:49:32.918  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30471
237.5163 +14/06/2006 12:49:32.918  000>> Good datagram received!
237.5164 +14/06/2006 12:49:32.918  000>> Receive Hello:SYNACK
237.5165 +14/06/2006 12:49:32.918  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30044
237.5166 +14/06/2006 12:49:33.018  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5167 +14/06/2006 12:49:33.018  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30045
237.5168 +14/06/2006 12:49:33.018  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30046
237.5169 +14/06/2006 12:49:33.028  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30047
237.5170 +14/06/2006 12:49:33.048  000>> 98>>>>>>>>>>Part datagram received!
237.5171 +14/06/2006 12:49:33.048  000>> 98>>>>>>>>>>Complete!
237.5172 +14/06/2006 12:49:33.048  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30472
237.5173 +14/06/2006 12:49:33.048  000>> Good datagram received!
237.5174 +14/06/2006 12:49:33.048  000>> Listener:Received dictionary
237.5175 +14/06/2006 12:49:33.048  000>> 90>>>>>>>>>>Part datagram received!
237.5176 +14/06/2006 12:49:33.048  000>> 90>>>>>>>>>>Complete!
237.5177 +14/06/2006 12:49:33.048  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30473
237.5178 +14/06/2006 12:49:33.058  000>> Good datagram received!
237.5179 +14/06/2006 12:49:33.058  000>> Listener:Received RIB
237.5180 +14/06/2006 12:49:33.239  000>> 716>>>>>>>>>>Part datagram received!
237.5181 +14/06/2006 12:49:33.239  000>> 716>>>>>>>>>>Complete!
237.5182 +14/06/2006 12:49:33.239  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30474
237.5183 +14/06/2006 12:49:33.249  000>> Good datagram received!
237.5184 +14/06/2006 12:49:33.259  000>> Listener:Received Bundle Offer
237.5185 +14/06/2006 12:49:33.259  000>> Listener:Sending Empty bundle request...
237.5186 +14/06/2006 12:49:33.259  000>> Listener(receiveBOffer):But we can not restart connection...
237.5187 +14/06/2006 12:49:33.259  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30048
237.5188 +14/06/2006 12:49:33.259  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30475
237.5189 +14/06/2006 12:49:33.259  000>> Good datagram received!
237.5190 +14/06/2006 12:49:33.259  000>> Initiator:No more requested bundles
237.5191 +14/06/2006 12:49:33.259  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.5192 +14/06/2006 12:49:33.399  000>> 91>>>>>>>>>>Part datagram received!
237.5193 +14/06/2006 12:49:33.399  000>> 91>>>>>>>>>>Complete!
237.5194 +14/06/2006 12:49:33.399  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30476
237.5195 +14/06/2006 12:49:33.399  000>> Good datagram received!
237.5196 +14/06/2006 12:49:33.399  000>> Receive Hello:SYN
237.5197 +14/06/2006 12:49:33.399  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30049
237.5198 +14/06/2006 12:49:33.419  000>> 91>>>>>>>>>>Part datagram received!
237.5199 +14/06/2006 12:49:33.419  000>> 91>>>>>>>>>>Complete!
237.5200 +14/06/2006 12:49:33.419  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30477
237.5201 +14/06/2006 12:49:33.419  000>> Good datagram received!
237.5202 +14/06/2006 12:49:33.429  000>> Receive Hello:ACK
237.5203 +14/06/2006 12:49:33.529  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5204 +14/06/2006 12:49:33.529  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30050
237.5205 +14/06/2006 12:49:33.529  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30051
237.5206 +14/06/2006 12:49:33.529  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30052
237.5207 +14/06/2006 12:49:33.529  000>> 98>>>>>>>>>>Part datagram received!
237.5208 +14/06/2006 12:49:33.529  000>> 98>>>>>>>>>>Complete!
237.5209 +14/06/2006 12:49:33.529  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30478
237.5210 +14/06/2006 12:49:33.529  000>> Good datagram received!
237.5211 +14/06/2006 12:49:33.529  000>> Listener:Received dictionary
237.5212 +14/06/2006 12:49:33.539  000>> 90>>>>>>>>>>Part datagram received!
237.5213 +14/06/2006 12:49:33.539  000>> 90>>>>>>>>>>Complete!
237.5214 +14/06/2006 12:49:33.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30479
237.5215 +14/06/2006 12:49:33.539  000>> Good datagram received!
237.5216 +14/06/2006 12:49:33.539  000>> Listener:Received RIB
237.5217 +14/06/2006 12:49:33.539  000>> 0>>>>>>>>>>Part datagram received!
237.5218 +14/06/2006 12:49:33.539  000>> 0>>>>>>>>>>Part datagram received!
237.5219 +14/06/2006 12:49:33.549  000>> 638>>>>>>>>>>Part datagram received!
237.5220 +14/06/2006 12:49:33.549  000>> 638>>>>>>>>>>Complete!
237.5221 +14/06/2006 12:49:33.549  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30480
237.5222 +14/06/2006 12:49:33.549  000>> Good datagram received!
237.5223 +14/06/2006 12:49:33.559  000>> Listener:Received Bundle Offer
237.5224 +14/06/2006 12:49:33.559  000>> Listener:Sending Empty bundle request...
237.5225 +14/06/2006 12:49:33.569  000>> Listener(receiveBOffer):But we can not restart connection...
237.5226 +14/06/2006 12:49:33.569  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30053
237.5227 +14/06/2006 12:49:33.649  000>> 78>>>>>>>>>>Part datagram received!
237.5228 +14/06/2006 12:49:33.649  000>> 78>>>>>>>>>>Complete!
237.5229 +14/06/2006 12:49:33.649  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30481
237.5230 +14/06/2006 12:49:33.649  000>> Good datagram received!
237.5231 +14/06/2006 12:49:33.649  000>> Initiator:No more requested bundles
237.5232 +14/06/2006 12:49:33.649  000>> Listener(receiveBundles):We can restart connection...
237.5233 +14/06/2006 12:49:33.749  000>> Hello Procedure:SENDSYN
237.5234 +14/06/2006 12:49:33.749  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30054
237.5235 +14/06/2006 12:49:33.789  000>> 91>>>>>>>>>>Part datagram received!
237.5236 +14/06/2006 12:49:33.789  000>> 91>>>>>>>>>>Complete!
237.5237 +14/06/2006 12:49:33.789  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30482
237.5238 +14/06/2006 12:49:33.789  000>> Good datagram received!
237.5239 +14/06/2006 12:49:33.789  000>> Receive Hello:SYNACK
237.5240 +14/06/2006 12:49:33.789  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30055
237.5241 +14/06/2006 12:49:33.889  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5242 +14/06/2006 12:49:33.889  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30056
237.5243 +14/06/2006 12:49:33.889  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30057
237.5244 +14/06/2006 12:49:33.889  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30058
237.5245 +14/06/2006 12:49:34.060  000>> 78>>>>>>>>>>Part datagram received!
237.5246 +14/06/2006 12:49:34.060  000>> 78>>>>>>>>>>Complete!
237.5247 +14/06/2006 12:49:34.070  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30483
237.5248 +14/06/2006 12:49:34.070  000>> Good datagram received!
237.5249 +14/06/2006 12:49:34.070  000>> Initiator:No more requested bundles
237.5250 +14/06/2006 12:49:34.070  000>> Initiator:But we can not restart connection...
237.5251 +14/06/2006 12:49:34.250  000>> 826>>>>>>>>>>Part datagram received!
237.5252 +14/06/2006 12:49:34.250  000>> 826>>>>>>>>>>Complete!
237.5253 +14/06/2006 12:49:34.250  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30484
237.5254 +14/06/2006 12:49:34.250  000>> Good datagram received!
237.5255 +14/06/2006 12:49:34.250  000>> Listener:Received dictionary
237.5256 +14/06/2006 12:49:34.250  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30485
237.5257 +14/06/2006 12:49:34.250  000>> Good datagram received!
237.5258 +14/06/2006 12:49:34.250  000>> Listener:Received RIB
237.5259 +14/06/2006 12:49:34.250  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30486
237.5260 +14/06/2006 12:49:34.250  000>> Good datagram received!
237.5261 +14/06/2006 12:49:34.270  000>> Listener:Received Bundle Offer
237.5262 +14/06/2006 12:49:34.270  000>> Listener:Sending Empty bundle request...
237.5263 +14/06/2006 12:49:34.270  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.5264 +14/06/2006 12:49:34.270  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30059
237.5265 +14/06/2006 12:49:34.410  000>> 91>>>>>>>>>>Part datagram received!
237.5266 +14/06/2006 12:49:34.410  000>> 91>>>>>>>>>>Complete!
237.5267 +14/06/2006 12:49:34.410  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30487
237.5268 +14/06/2006 12:49:34.410  000>> Good datagram received!
237.5269 +14/06/2006 12:49:34.410  000>> Receive Hello:SYN
237.5270 +14/06/2006 12:49:34.410  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30060
237.5271 +14/06/2006 12:49:34.470  000>> 91>>>>>>>>>>Part datagram received!
237.5272 +14/06/2006 12:49:34.470  000>> 91>>>>>>>>>>Complete!
237.5273 +14/06/2006 12:49:34.470  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30488
237.5274 +14/06/2006 12:49:34.470  000>> Good datagram received!
237.5275 +14/06/2006 12:49:34.470  000>> Receive Hello:ACK
237.5276 +14/06/2006 12:49:34.570  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5277 +14/06/2006 12:49:34.570  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30061
237.5278 +14/06/2006 12:49:34.570  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30062
237.5279 +14/06/2006 12:49:34.570  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30063
237.5280 +14/06/2006 12:49:34.570  000>> 98>>>>>>>>>>Part datagram received!
237.5281 +14/06/2006 12:49:34.570  000>> 98>>>>>>>>>>Complete!
237.5282 +14/06/2006 12:49:34.570  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30489
237.5283 +14/06/2006 12:49:34.570  000>> Good datagram received!
237.5284 +14/06/2006 12:49:34.580  000>> Listener:Received dictionary
237.5285 +14/06/2006 12:49:34.580  000>> 90>>>>>>>>>>Part datagram received!
237.5286 +14/06/2006 12:49:34.580  000>> 90>>>>>>>>>>Complete!
237.5287 +14/06/2006 12:49:34.580  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30490
237.5288 +14/06/2006 12:49:34.580  000>> Good datagram received!
237.5289 +14/06/2006 12:49:34.580  000>> Listener:Received RIB
237.5290 +14/06/2006 12:49:34.590  000>> 638>>>>>>>>>>Part datagram received!
237.5291 +14/06/2006 12:49:34.590  000>> 638>>>>>>>>>>Complete!
237.5292 +14/06/2006 12:49:34.590  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30491
237.5293 +14/06/2006 12:49:34.590  000>> Good datagram received!
237.5294 +14/06/2006 12:49:34.600  000>> Listener:Received Bundle Offer
237.5295 +14/06/2006 12:49:34.600  000>> Listener:Sending Empty bundle request...
237.5296 +14/06/2006 12:49:34.600  000>> Listener(receiveBOffer):But we can not restart connection...
237.5297 +14/06/2006 12:49:34.611  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30064
237.5298 +14/06/2006 12:49:34.611  000>> 0>>>>>>>>>>Part datagram received!
237.5299 +14/06/2006 12:49:34.611  000>> 0>>>>>>>>>>Part datagram received!
237.5300 +14/06/2006 12:49:34.691  000>> 78>>>>>>>>>>Part datagram received!
237.5301 +14/06/2006 12:49:34.691  000>> 78>>>>>>>>>>Complete!
237.5302 +14/06/2006 12:49:34.691  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30492
237.5303 +14/06/2006 12:49:34.691  000>> Good datagram received!
237.5304 +14/06/2006 12:49:34.691  000>> Initiator:No more requested bundles
237.5305 +14/06/2006 12:49:34.691  000>> Listener(receiveBundles):We can restart connection...
237.5306 +14/06/2006 12:49:34.791  000>> Hello Procedure:SENDSYN
237.5307 +14/06/2006 12:49:34.791  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30065
237.5308 +14/06/2006 12:49:34.831  000>> 91>>>>>>>>>>Part datagram received!
237.5309 +14/06/2006 12:49:34.831  000>> 91>>>>>>>>>>Complete!
237.5310 +14/06/2006 12:49:34.831  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30493
237.5311 +14/06/2006 12:49:34.831  000>> Good datagram received!
237.5312 +14/06/2006 12:49:34.831  000>> Receive Hello:SYNACK
237.5313 +14/06/2006 12:49:34.831  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30066
237.5314 +14/06/2006 12:49:34.931  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5315 +14/06/2006 12:49:34.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30067
237.5316 +14/06/2006 12:49:34.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30068
237.5317 +14/06/2006 12:49:34.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30069
237.5318 +14/06/2006 12:49:35.051  000>> 78>>>>>>>>>>Part datagram received!
237.5319 +14/06/2006 12:49:35.051  000>> 78>>>>>>>>>>Complete!
237.5320 +14/06/2006 12:49:35.051  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30494
237.5321 +14/06/2006 12:49:35.051  000>> Good datagram received!
237.5322 +14/06/2006 12:49:35.051  000>> Initiator:No more requested bundles
237.5323 +14/06/2006 12:49:35.051  000>> Initiator:But we can not restart connection...
237.5324 +14/06/2006 12:49:35.251  000>> 826>>>>>>>>>>Part datagram received!
237.5325 +14/06/2006 12:49:35.251  000>> 826>>>>>>>>>>Complete!
237.5326 +14/06/2006 12:49:35.251  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30495
237.5327 +14/06/2006 12:49:35.251  000>> Good datagram received!
237.5328 +14/06/2006 12:49:35.251  000>> Listener:Received dictionary
237.5329 +14/06/2006 12:49:35.251  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30496
237.5330 +14/06/2006 12:49:35.251  000>> Good datagram received!
237.5331 +14/06/2006 12:49:35.251  000>> Listener:Received RIB
237.5332 +14/06/2006 12:49:35.251  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30497
237.5333 +14/06/2006 12:49:35.261  000>> Good datagram received!
237.5334 +14/06/2006 12:49:35.271  000>> Listener:Received Bundle Offer
237.5335 +14/06/2006 12:49:35.271  000>> Listener:Sending Empty bundle request...
237.5336 +14/06/2006 12:49:35.271  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.5337 +14/06/2006 12:49:35.271  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30070
237.5338 +14/06/2006 12:49:35.402  000>> 91>>>>>>>>>>Part datagram received!
237.5339 +14/06/2006 12:49:35.402  000>> 91>>>>>>>>>>Complete!
237.5340 +14/06/2006 12:49:35.402  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30498
237.5341 +14/06/2006 12:49:35.402  000>> Good datagram received!
237.5342 +14/06/2006 12:49:35.402  000>> Receive Hello:SYN
237.5343 +14/06/2006 12:49:35.402  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30071
237.5344 +14/06/2006 12:49:35.432  000>> 91>>>>>>>>>>Part datagram received!
237.5345 +14/06/2006 12:49:35.432  000>> 91>>>>>>>>>>Complete!
237.5346 +14/06/2006 12:49:35.432  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30499
237.5347 +14/06/2006 12:49:35.432  000>> Good datagram received!
237.5348 +14/06/2006 12:49:35.442  000>> Receive Hello:ACK
237.5349 +14/06/2006 12:49:35.542  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5350 +14/06/2006 12:49:35.542  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30072
237.5351 +14/06/2006 12:49:35.542  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30073
237.5352 +14/06/2006 12:49:35.542  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30074
237.5353 +14/06/2006 12:49:35.542  000>> 826>>>>>>>>>>Part datagram received!
237.5354 +14/06/2006 12:49:35.552  000>> 826>>>>>>>>>>Complete!
237.5355 +14/06/2006 12:49:35.552  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30500
237.5356 +14/06/2006 12:49:35.552  000>> Good datagram received!
237.5357 +14/06/2006 12:49:35.552  000>> Listener:Received dictionary
237.5358 +14/06/2006 12:49:35.552  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30501
237.5359 +14/06/2006 12:49:35.552  000>> Good datagram received!
237.5360 +14/06/2006 12:49:35.552  000>> Listener:Received RIB
237.5361 +14/06/2006 12:49:35.552  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30502
237.5362 +14/06/2006 12:49:35.552  000>> Good datagram received!
237.5363 +14/06/2006 12:49:35.572  000>> Listener:Received Bundle Offer
237.5364 +14/06/2006 12:49:35.572  000>> Listener:Sending Empty bundle request...
237.5365 +14/06/2006 12:49:35.572  000>> Listener(receiveBOffer):But we can not restart connection...
237.5366 +14/06/2006 12:49:35.572  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30075
237.5367 +14/06/2006 12:49:35.582  000>> 0>>>>>>>>>>Part datagram received!
237.5368 +14/06/2006 12:49:35.582  000>> 0>>>>>>>>>>Part datagram received!
237.5369 +14/06/2006 12:49:35.772  000>> 78>>>>>>>>>>Part datagram received!
237.5370 +14/06/2006 12:49:35.772  000>> 78>>>>>>>>>>Complete!
237.5371 +14/06/2006 12:49:35.772  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30503
237.5372 +14/06/2006 12:49:35.772  000>> Good datagram received!
237.5373 +14/06/2006 12:49:35.772  000>> Initiator:No more requested bundles
237.5374 +14/06/2006 12:49:35.772  000>> Listener(receiveBundles):We can restart connection...
237.5375 +14/06/2006 12:49:35.872  000>> Hello Procedure:SENDSYN
237.5376 +14/06/2006 12:49:35.872  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30076
237.5377 +14/06/2006 12:49:35.912  000>> 91>>>>>>>>>>Part datagram received!
237.5378 +14/06/2006 12:49:35.912  000>> 91>>>>>>>>>>Complete!
237.5379 +14/06/2006 12:49:35.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30504
237.5380 +14/06/2006 12:49:35.912  000>> Good datagram received!
237.5381 +14/06/2006 12:49:35.912  000>> Receive Hello:SYNACK
237.5382 +14/06/2006 12:49:35.912  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30077
237.5383 +14/06/2006 12:49:36.013  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5384 +14/06/2006 12:49:36.013  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30078
237.5385 +14/06/2006 12:49:36.013  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30079
237.5386 +14/06/2006 12:49:36.013  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30080
237.5387 +14/06/2006 12:49:36.173  000>> 78>>>>>>>>>>Part datagram received!
237.5388 +14/06/2006 12:49:36.173  000>> 78>>>>>>>>>>Complete!
237.5389 +14/06/2006 12:49:36.173  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30505
237.5390 +14/06/2006 12:49:36.173  000>> Good datagram received!
237.5391 +14/06/2006 12:49:36.173  000>> Initiator:No more requested bundles
237.5392 +14/06/2006 12:49:36.173  000>> Initiator:But we can not restart connection...
237.5393 +14/06/2006 12:49:36.363  000>> 826>>>>>>>>>>Part datagram received!
237.5394 +14/06/2006 12:49:36.363  000>> 826>>>>>>>>>>Complete!
237.5395 +14/06/2006 12:49:36.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30506
237.5396 +14/06/2006 12:49:36.363  000>> Good datagram received!
237.5397 +14/06/2006 12:49:36.363  000>> Listener:Received dictionary
237.5398 +14/06/2006 12:49:36.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30507
237.5399 +14/06/2006 12:49:36.363  000>> Good datagram received!
237.5400 +14/06/2006 12:49:36.363  000>> Listener:Received RIB
237.5401 +14/06/2006 12:49:36.363  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30508
237.5402 +14/06/2006 12:49:36.373  000>> Good datagram received!
237.5403 +14/06/2006 12:49:36.383  000>> Listener:Received Bundle Offer
237.5404 +14/06/2006 12:49:36.383  000>> Listener:Sending Empty bundle request...
237.5405 +14/06/2006 12:49:36.383  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.5406 +14/06/2006 12:49:36.383  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30081
237.5407 +14/06/2006 12:49:36.523  000>> 91>>>>>>>>>>Part datagram received!
237.5408 +14/06/2006 12:49:36.523  000>> 91>>>>>>>>>>Complete!
237.5409 +14/06/2006 12:49:36.523  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30509
237.5410 +14/06/2006 12:49:36.523  000>> Good datagram received!
237.5411 +14/06/2006 12:49:36.523  000>> Receive Hello:SYN
237.5412 +14/06/2006 12:49:36.523  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30082
237.5413 +14/06/2006 12:49:36.543  000>> 91>>>>>>>>>>Part datagram received!
237.5414 +14/06/2006 12:49:36.543  000>> 91>>>>>>>>>>Complete!
237.5415 +14/06/2006 12:49:36.543  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30510
237.5416 +14/06/2006 12:49:36.543  000>> Good datagram received!
237.5417 +14/06/2006 12:49:36.543  000>> Receive Hello:ACK
237.5418 +14/06/2006 12:49:36.643  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5419 +14/06/2006 12:49:36.643  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30083
237.5420 +14/06/2006 12:49:36.643  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30084
237.5421 +14/06/2006 12:49:36.643  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30085
237.5422 +14/06/2006 12:49:36.653  000>> 98>>>>>>>>>>Part datagram received!
237.5423 +14/06/2006 12:49:36.653  000>> 98>>>>>>>>>>Complete!
237.5424 +14/06/2006 12:49:36.653  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30511
237.5425 +14/06/2006 12:49:36.653  000>> Good datagram received!
237.5426 +14/06/2006 12:49:36.653  000>> Listener:Received dictionary
237.5427 +14/06/2006 12:49:36.653  000>> 90>>>>>>>>>>Part datagram received!
237.5428 +14/06/2006 12:49:36.653  000>> 90>>>>>>>>>>Complete!
237.5429 +14/06/2006 12:49:36.653  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30512
237.5430 +14/06/2006 12:49:36.653  000>> Good datagram received!
237.5431 +14/06/2006 12:49:36.653  000>> Listener:Received RIB
237.5432 +14/06/2006 12:49:36.854  000>> 716>>>>>>>>>>Part datagram received!
237.5433 +14/06/2006 12:49:36.854  000>> 716>>>>>>>>>>Complete!
237.5434 +14/06/2006 12:49:36.854  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30513
237.5435 +14/06/2006 12:49:36.854  000>> Good datagram received!
237.5436 +14/06/2006 12:49:36.854  000>> Listener:Received Bundle Offer
237.5437 +14/06/2006 12:49:36.864  000>> Listener:Sending Empty bundle request...
237.5438 +14/06/2006 12:49:36.864  000>> Listener(receiveBOffer):But we can not restart connection...
237.5439 +14/06/2006 12:49:36.864  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30086
237.5440 +14/06/2006 12:49:36.864  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30514
237.5441 +14/06/2006 12:49:36.864  000>> Good datagram received!
237.5442 +14/06/2006 12:49:36.864  000>> Initiator:No more requested bundles
237.5443 +14/06/2006 12:49:36.864  000>> Listener(receiveBundles):We can restart connection...
237.5444 +14/06/2006 12:49:36.964  000>> Hello Procedure:SENDSYN
237.5445 +14/06/2006 12:49:36.964  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30087
237.5446 +14/06/2006 12:49:37.034  000>> 91>>>>>>>>>>Part datagram received!
237.5447 +14/06/2006 12:49:37.034  000>> 91>>>>>>>>>>Complete!
237.5448 +14/06/2006 12:49:37.034  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30515
237.5449 +14/06/2006 12:49:37.034  000>> Good datagram received!
237.5450 +14/06/2006 12:49:37.034  000>> Receive Hello:SYNACK
237.5451 +14/06/2006 12:49:37.034  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30088
237.5452 +14/06/2006 12:49:37.134  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5453 +14/06/2006 12:49:37.134  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30089
237.5454 +14/06/2006 12:49:37.134  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30090
237.5455 +14/06/2006 12:49:37.134  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30091
237.5456 +14/06/2006 12:49:37.154  000>> 98>>>>>>>>>>Part datagram received!
237.5457 +14/06/2006 12:49:37.164  000>> 98>>>>>>>>>>Complete!
237.5458 +14/06/2006 12:49:37.164  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30516
237.5459 +14/06/2006 12:49:37.164  000>> Good datagram received!
237.5460 +14/06/2006 12:49:37.164  000>> Listener:Received dictionary
237.5461 +14/06/2006 12:49:37.164  000>> 90>>>>>>>>>>Part datagram received!
237.5462 +14/06/2006 12:49:37.164  000>> 90>>>>>>>>>>Complete!
237.5463 +14/06/2006 12:49:37.164  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30517
237.5464 +14/06/2006 12:49:37.164  000>> Good datagram received!
237.5465 +14/06/2006 12:49:37.164  000>> Listener:Received RIB
237.5466 +14/06/2006 12:49:37.354  000>> 716>>>>>>>>>>Part datagram received!
237.5467 +14/06/2006 12:49:37.354  000>> 716>>>>>>>>>>Complete!
237.5468 +14/06/2006 12:49:37.354  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30518
237.5469 +14/06/2006 12:49:37.354  000>> Good datagram received!
237.5470 +14/06/2006 12:49:37.374  000>> Listener:Received Bundle Offer
237.5471 +14/06/2006 12:49:37.374  000>> Listener:Sending Empty bundle request...
237.5472 +14/06/2006 12:49:37.374  000>> Listener(receiveBOffer):But we can not restart connection...
237.5473 +14/06/2006 12:49:37.374  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30092
237.5474 +14/06/2006 12:49:37.374  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30519
237.5475 +14/06/2006 12:49:37.374  000>> Good datagram received!
237.5476 +14/06/2006 12:49:37.374  000>> Initiator:No more requested bundles
237.5477 +14/06/2006 12:49:37.374  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.5478 +14/06/2006 12:49:37.505  000>> 91>>>>>>>>>>Part datagram received!
237.5479 +14/06/2006 12:49:37.505  000>> 91>>>>>>>>>>Complete!
237.5480 +14/06/2006 12:49:37.505  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30520
237.5481 +14/06/2006 12:49:37.505  000>> Good datagram received!
237.5482 +14/06/2006 12:49:37.505  000>> Receive Hello:SYN
237.5483 +14/06/2006 12:49:37.505  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30093
237.5484 +14/06/2006 12:49:37.525  000>> 91>>>>>>>>>>Part datagram received!
237.5485 +14/06/2006 12:49:37.525  000>> 91>>>>>>>>>>Complete!
237.5486 +14/06/2006 12:49:37.525  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30521
237.5487 +14/06/2006 12:49:37.525  000>> Good datagram received!
237.5488 +14/06/2006 12:49:37.525  000>> Receive Hello:ACK
237.5489 +14/06/2006 12:49:37.625  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5490 +14/06/2006 12:49:37.625  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30094
237.5491 +14/06/2006 12:49:37.625  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30095
237.5492 +14/06/2006 12:49:37.625  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30096
237.5493 +14/06/2006 12:49:37.635  000>> 98>>>>>>>>>>Part datagram received!
237.5494 +14/06/2006 12:49:37.635  000>> 98>>>>>>>>>>Complete!
237.5495 +14/06/2006 12:49:37.635  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30522
237.5496 +14/06/2006 12:49:37.635  000>> Good datagram received!
237.5497 +14/06/2006 12:49:37.635  000>> Listener:Received dictionary
237.5498 +14/06/2006 12:49:37.635  000>> 90>>>>>>>>>>Part datagram received!
237.5499 +14/06/2006 12:49:37.635  000>> 90>>>>>>>>>>Complete!
237.5500 +14/06/2006 12:49:37.635  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30523
237.5501 +14/06/2006 12:49:37.635  000>> Good datagram received!
237.5502 +14/06/2006 12:49:37.635  000>> Listener:Received RIB
237.5503 +14/06/2006 12:49:37.755  000>> 716>>>>>>>>>>Part datagram received!
237.5504 +14/06/2006 12:49:37.755  000>> 716>>>>>>>>>>Complete!
237.5505 +14/06/2006 12:49:37.755  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30524
237.5506 +14/06/2006 12:49:37.755  000>> Good datagram received!
237.5507 +14/06/2006 12:49:37.765  000>> Listener:Received Bundle Offer
237.5508 +14/06/2006 12:49:37.765  000>> Listener:Sending Empty bundle request...
237.5509 +14/06/2006 12:49:37.765  000>> Listener(receiveBOffer):But we can not restart connection...
237.5510 +14/06/2006 12:49:37.765  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30097
237.5511 +14/06/2006 12:49:37.765  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30525
237.5512 +14/06/2006 12:49:37.765  000>> Good datagram received!
237.5513 +14/06/2006 12:49:37.765  000>> Initiator:No more requested bundles
237.5514 +14/06/2006 12:49:37.765  000>> Listener(receiveBundles):We can restart connection...
237.5515 +14/06/2006 12:49:37.865  000>> Hello Procedure:SENDSYN
237.5516 +14/06/2006 12:49:37.865  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30098
237.5517 +14/06/2006 12:49:37.925  000>> 91>>>>>>>>>>Part datagram received!
237.5518 +14/06/2006 12:49:37.925  000>> 91>>>>>>>>>>Complete!
237.5519 +14/06/2006 12:49:37.925  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30526
237.5520 +14/06/2006 12:49:37.925  000>> Good datagram received!
237.5521 +14/06/2006 12:49:37.925  000>> Receive Hello:SYNACK
237.5522 +14/06/2006 12:49:37.925  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30099
237.5523 +14/06/2006 12:49:38.025  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5524 +14/06/2006 12:49:38.025  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30100
237.5525 +14/06/2006 12:49:38.025  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30101
237.5526 +14/06/2006 12:49:38.025  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30102
237.5527 +14/06/2006 12:49:38.156  000>> 78>>>>>>>>>>Part datagram received!
237.5528 +14/06/2006 12:49:38.156  000>> 78>>>>>>>>>>Complete!
237.5529 +14/06/2006 12:49:38.156  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30527
237.5530 +14/06/2006 12:49:38.166  000>> Good datagram received!
237.5531 +14/06/2006 12:49:38.166  000>> Initiator:No more requested bundles
237.5532 +14/06/2006 12:49:38.166  000>> Initiator:But we can not restart connection...
237.5533 +14/06/2006 12:49:38.356  000>> 826>>>>>>>>>>Part datagram received!
237.5534 +14/06/2006 12:49:38.356  000>> 826>>>>>>>>>>Complete!
237.5535 +14/06/2006 12:49:38.356  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30528
237.5536 +14/06/2006 12:49:38.356  000>> Good datagram received!
237.5537 +14/06/2006 12:49:38.356  000>> Listener:Received dictionary
237.5538 +14/06/2006 12:49:38.366  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30529
237.5539 +14/06/2006 12:49:38.366  000>> Good datagram received!
237.5540 +14/06/2006 12:49:38.366  000>> Listener:Received RIB
237.5541 +14/06/2006 12:49:38.366  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30530
237.5542 +14/06/2006 12:49:38.366  000>> Good datagram received!
237.5543 +14/06/2006 12:49:38.376  000>> Listener:Received Bundle Offer
237.5544 +14/06/2006 12:49:38.376  000>> Listener:Sending Empty bundle request...
237.5545 +14/06/2006 12:49:38.376  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.5546 +14/06/2006 12:49:38.386  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30103
237.5547 +14/06/2006 12:49:38.516  000>> 91>>>>>>>>>>Part datagram received!
237.5548 +14/06/2006 12:49:38.526  000>> 91>>>>>>>>>>Complete!
237.5549 +14/06/2006 12:49:38.526  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30531
237.5550 +14/06/2006 12:49:38.526  000>> Good datagram received!
237.5551 +14/06/2006 12:49:38.526  000>> Receive Hello:SYN
237.5552 +14/06/2006 12:49:38.526  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30104
237.5553 +14/06/2006 12:49:38.546  000>> 91>>>>>>>>>>Part datagram received!
237.5554 +14/06/2006 12:49:38.546  000>> 91>>>>>>>>>>Complete!
237.5555 +14/06/2006 12:49:38.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30532
237.5556 +14/06/2006 12:49:38.546  000>> Good datagram received!
237.5557 +14/06/2006 12:49:38.546  000>> Receive Hello:ACK
237.5558 +14/06/2006 12:49:38.646  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5559 +14/06/2006 12:49:38.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30105
237.5560 +14/06/2006 12:49:38.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30106
237.5561 +14/06/2006 12:49:38.646  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30107
237.5562 +14/06/2006 12:49:38.656  000>> 98>>>>>>>>>>Part datagram received!
237.5563 +14/06/2006 12:49:38.656  000>> 98>>>>>>>>>>Complete!
237.5564 +14/06/2006 12:49:38.656  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30533
237.5565 +14/06/2006 12:49:38.656  000>> Good datagram received!
237.5566 +14/06/2006 12:49:38.656  000>> Listener:Received dictionary
237.5567 +14/06/2006 12:49:38.656  000>> 90>>>>>>>>>>Part datagram received!
237.5568 +14/06/2006 12:49:38.656  000>> 90>>>>>>>>>>Complete!
237.5569 +14/06/2006 12:49:38.656  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30534
237.5570 +14/06/2006 12:49:38.656  000>> Good datagram received!
237.5571 +14/06/2006 12:49:38.656  000>> Listener:Received RIB
237.5572 +14/06/2006 12:49:38.857  000>> 716>>>>>>>>>>Part datagram received!
237.5573 +14/06/2006 12:49:38.857  000>> 716>>>>>>>>>>Complete!
237.5574 +14/06/2006 12:49:38.857  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30535
237.5575 +14/06/2006 12:49:38.857  000>> Good datagram received!
237.5576 +14/06/2006 12:49:38.867  000>> Listener:Received Bundle Offer
237.5577 +14/06/2006 12:49:38.867  000>> Listener:Sending Empty bundle request...
237.5578 +14/06/2006 12:49:38.867  000>> Listener(receiveBOffer):But we can not restart connection...
237.5579 +14/06/2006 12:49:38.867  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30108
237.5580 +14/06/2006 12:49:38.867  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30536
237.5581 +14/06/2006 12:49:38.867  000>> Good datagram received!
237.5582 +14/06/2006 12:49:38.867  000>> Initiator:No more requested bundles
237.5583 +14/06/2006 12:49:38.867  000>> Listener(receiveBundles):We can restart connection...
237.5584 +14/06/2006 12:49:38.967  000>> Hello Procedure:SENDSYN
237.5585 +14/06/2006 12:49:38.967  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30109
237.5586 +14/06/2006 12:49:39.027  000>> 91>>>>>>>>>>Part datagram received!
237.5587 +14/06/2006 12:49:39.027  000>> 91>>>>>>>>>>Complete!
237.5588 +14/06/2006 12:49:39.027  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30537
237.5589 +14/06/2006 12:49:39.027  000>> Good datagram received!
237.5590 +14/06/2006 12:49:39.037  000>> Receive Hello:SYNACK
237.5591 +14/06/2006 12:49:39.037  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30110
237.5592 +14/06/2006 12:49:39.137  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5593 +14/06/2006 12:49:39.137  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30111
237.5594 +14/06/2006 12:49:39.137  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30112
237.5595 +14/06/2006 12:49:39.147  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30113
237.5596 +14/06/2006 12:49:39.157  000>> 98>>>>>>>>>>Part datagram received!
237.5597 +14/06/2006 12:49:39.157  000>> 98>>>>>>>>>>Complete!
237.5598 +14/06/2006 12:49:39.157  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30538
237.5599 +14/06/2006 12:49:39.157  000>> Good datagram received!
237.5600 +14/06/2006 12:49:39.157  000>> Listener:Received dictionary
237.5601 +14/06/2006 12:49:39.157  000>> 90>>>>>>>>>>Part datagram received!
237.5602 +14/06/2006 12:49:39.157  000>> 90>>>>>>>>>>Complete!
237.5603 +14/06/2006 12:49:39.157  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30539
237.5604 +14/06/2006 12:49:39.157  000>> Good datagram received!
237.5605 +14/06/2006 12:49:39.167  000>> Listener:Received RIB
237.5606 +14/06/2006 12:49:39.357  000>> 716>>>>>>>>>>Part datagram received!
237.5607 +14/06/2006 12:49:39.367  000>> 716>>>>>>>>>>Complete!
237.5608 +14/06/2006 12:49:39.367  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30540
237.5609 +14/06/2006 12:49:39.367  000>> Good datagram received!
237.5610 +14/06/2006 12:49:39.377  000>> Listener:Received Bundle Offer
237.5611 +14/06/2006 12:49:39.377  000>> Listener:Sending Empty bundle request...
237.5612 +14/06/2006 12:49:39.377  000>> Listener(receiveBOffer):But we can not restart connection...
237.5613 +14/06/2006 12:49:39.377  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30114
237.5614 +14/06/2006 12:49:39.377  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30541
237.5615 +14/06/2006 12:49:39.387  000>> Good datagram received!
237.5616 +14/06/2006 12:49:39.387  000>> Initiator:No more requested bundles
237.5617 +14/06/2006 12:49:39.387  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.5618 +14/06/2006 12:49:39.518  000>> 91>>>>>>>>>>Part datagram received!
237.5619 +14/06/2006 12:49:39.518  000>> 91>>>>>>>>>>Complete!
237.5620 +14/06/2006 12:49:39.518  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30542
237.5621 +14/06/2006 12:49:39.518  000>> Good datagram received!
237.5622 +14/06/2006 12:49:39.518  000>> Receive Hello:SYN
237.5623 +14/06/2006 12:49:39.518  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30115
237.5624 +14/06/2006 12:49:39.538  000>> 91>>>>>>>>>>Part datagram received!
237.5625 +14/06/2006 12:49:39.538  000>> 91>>>>>>>>>>Complete!
237.5626 +14/06/2006 12:49:39.538  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30543
237.5627 +14/06/2006 12:49:39.538  000>> Good datagram received!
237.5628 +14/06/2006 12:49:39.538  000>> Receive Hello:ACK
237.5629 +14/06/2006 12:49:39.638  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5630 +14/06/2006 12:49:39.638  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30116
237.5631 +14/06/2006 12:49:39.638  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30117
237.5632 +14/06/2006 12:49:39.638  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30118
237.5633 +14/06/2006 12:49:39.658  000>> 98>>>>>>>>>>Part datagram received!
237.5634 +14/06/2006 12:49:39.658  000>> 98>>>>>>>>>>Complete!
237.5635 +14/06/2006 12:49:39.658  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30544
237.5636 +14/06/2006 12:49:39.658  000>> Good datagram received!
237.5637 +14/06/2006 12:49:39.658  000>> Listener:Received dictionary
237.5638 +14/06/2006 12:49:39.658  000>> 90>>>>>>>>>>Part datagram received!
237.5639 +14/06/2006 12:49:39.658  000>> 90>>>>>>>>>>Complete!
237.5640 +14/06/2006 12:49:39.658  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30545
237.5641 +14/06/2006 12:49:39.658  000>> Good datagram received!
237.5642 +14/06/2006 12:49:39.658  000>> Listener:Received RIB
237.5643 +14/06/2006 12:49:39.858  000>> 716>>>>>>>>>>Part datagram received!
237.5644 +14/06/2006 12:49:39.858  000>> 716>>>>>>>>>>Complete!
237.5645 +14/06/2006 12:49:39.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30546
237.5646 +14/06/2006 12:49:39.868  000>> Good datagram received!
237.5647 +14/06/2006 12:49:39.868  000>> Listener:Received Bundle Offer
237.5648 +14/06/2006 12:49:39.868  000>> Listener:Sending Empty bundle request...
237.5649 +14/06/2006 12:49:39.868  000>> Listener(receiveBOffer):But we can not restart connection...
237.5650 +14/06/2006 12:49:39.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30119
237.5651 +14/06/2006 12:49:39.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30547
237.5652 +14/06/2006 12:49:39.868  000>> Good datagram received!
237.5653 +14/06/2006 12:49:39.868  000>> Initiator:No more requested bundles
237.5654 +14/06/2006 12:49:39.868  000>> Listener(receiveBundles):We can restart connection...
237.5655 +14/06/2006 12:49:39.968  000>> Hello Procedure:SENDSYN
237.5656 +14/06/2006 12:49:39.968  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30120
237.5657 +14/06/2006 12:49:40.038  000>> 91>>>>>>>>>>Part datagram received!
237.5658 +14/06/2006 12:49:40.038  000>> 91>>>>>>>>>>Complete!
237.5659 +14/06/2006 12:49:40.038  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30548
237.5660 +14/06/2006 12:49:40.038  000>> Good datagram received!
237.5661 +14/06/2006 12:49:40.038  000>> Receive Hello:SYNACK
237.5662 +14/06/2006 12:49:40.038  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30121
237.5663 +14/06/2006 12:49:40.138  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5664 +14/06/2006 12:49:40.138  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30122
237.5665 +14/06/2006 12:49:40.138  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30123
237.5666 +14/06/2006 12:49:40.138  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30124
237.5667 +14/06/2006 12:49:40.168  000>> 98>>>>>>>>>>Part datagram received!
237.5668 +14/06/2006 12:49:40.168  000>> 98>>>>>>>>>>Complete!
237.5669 +14/06/2006 12:49:40.168  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30549
237.5670 +14/06/2006 12:49:40.168  000>> Good datagram received!
237.5671 +14/06/2006 12:49:40.168  000>> Listener:Received dictionary
237.5672 +14/06/2006 12:49:40.179  000>> 90>>>>>>>>>>Part datagram received!
237.5673 +14/06/2006 12:49:40.179  000>> 90>>>>>>>>>>Complete!
237.5674 +14/06/2006 12:49:40.179  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30550
237.5675 +14/06/2006 12:49:40.179  000>> Good datagram received!
237.5676 +14/06/2006 12:49:40.179  000>> Listener:Received RIB
237.5677 +14/06/2006 12:49:40.359  000>> 716>>>>>>>>>>Part datagram received!
237.5678 +14/06/2006 12:49:40.369  000>> 716>>>>>>>>>>Complete!
237.5679 +14/06/2006 12:49:40.369  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30551
237.5680 +14/06/2006 12:49:40.369  000>> Good datagram received!
237.5681 +14/06/2006 12:49:40.379  000>> Listener:Received Bundle Offer
237.5682 +14/06/2006 12:49:40.379  000>> Listener:Sending Empty bundle request...
237.5683 +14/06/2006 12:49:40.379  000>> Listener(receiveBOffer):But we can not restart connection...
237.5684 +14/06/2006 12:49:40.379  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30125
237.5685 +14/06/2006 12:49:40.379  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30552
237.5686 +14/06/2006 12:49:40.389  000>> Good datagram received!
237.5687 +14/06/2006 12:49:40.389  000>> Initiator:No more requested bundles
237.5688 +14/06/2006 12:49:40.389  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.5689 +14/06/2006 12:49:40.519  000>> 91>>>>>>>>>>Part datagram received!
237.5690 +14/06/2006 12:49:40.519  000>> 91>>>>>>>>>>Complete!
237.5691 +14/06/2006 12:49:40.519  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30553
237.5692 +14/06/2006 12:49:40.519  000>> Good datagram received!
237.5693 +14/06/2006 12:49:40.519  000>> Receive Hello:SYN
237.5694 +14/06/2006 12:49:40.519  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30126
237.5695 +14/06/2006 12:49:40.559  000>> 91>>>>>>>>>>Part datagram received!
237.5696 +14/06/2006 12:49:40.559  000>> 91>>>>>>>>>>Complete!
237.5697 +14/06/2006 12:49:40.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30554
237.5698 +14/06/2006 12:49:40.559  000>> Good datagram received!
237.5699 +14/06/2006 12:49:40.559  000>> Receive Hello:ACK
237.5700 +14/06/2006 12:49:40.659  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5701 +14/06/2006 12:49:40.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30127
237.5702 +14/06/2006 12:49:40.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30128
237.5703 +14/06/2006 12:49:40.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30129
237.5704 +14/06/2006 12:49:40.669  000>> 98>>>>>>>>>>Part datagram received!
237.5705 +14/06/2006 12:49:40.669  000>> 98>>>>>>>>>>Complete!
237.5706 +14/06/2006 12:49:40.669  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30555
237.5707 +14/06/2006 12:49:40.669  000>> Good datagram received!
237.5708 +14/06/2006 12:49:40.669  000>> Listener:Received dictionary
237.5709 +14/06/2006 12:49:40.689  000>> 90>>>>>>>>>>Part datagram received!
237.5710 +14/06/2006 12:49:40.689  000>> 90>>>>>>>>>>Complete!
237.5711 +14/06/2006 12:49:40.689  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30556
237.5712 +14/06/2006 12:49:40.689  000>> Good datagram received!
237.5713 +14/06/2006 12:49:40.689  000>> Listener:Received RIB
237.5714 +14/06/2006 12:49:40.870  000>> 716>>>>>>>>>>Part datagram received!
237.5715 +14/06/2006 12:49:40.870  000>> 716>>>>>>>>>>Complete!
237.5716 +14/06/2006 12:49:40.870  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30557
237.5717 +14/06/2006 12:49:40.870  000>> Good datagram received!
237.5718 +14/06/2006 12:49:40.870  000>> Listener:Received Bundle Offer
237.5719 +14/06/2006 12:49:40.870  000>> Listener:Sending Empty bundle request...
237.5720 +14/06/2006 12:49:40.870  000>> Listener(receiveBOffer):But we can not restart connection...
237.5721 +14/06/2006 12:49:40.870  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30130
237.5722 +14/06/2006 12:49:40.870  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30558
237.5723 +14/06/2006 12:49:40.870  000>> Good datagram received!
237.5724 +14/06/2006 12:49:40.870  000>> Initiator:No more requested bundles
237.5725 +14/06/2006 12:49:40.870  000>> Listener(receiveBundles):We can restart connection...
237.5726 +14/06/2006 12:49:40.970  000>> Hello Procedure:SENDSYN
237.5727 +14/06/2006 12:49:40.970  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30131
237.5728 +14/06/2006 12:49:41.030  000>> 91>>>>>>>>>>Part datagram received!
237.5729 +14/06/2006 12:49:41.030  000>> 91>>>>>>>>>>Complete!
237.5730 +14/06/2006 12:49:41.030  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30559
237.5731 +14/06/2006 12:49:41.030  000>> Good datagram received!
237.5732 +14/06/2006 12:49:41.030  000>> Receive Hello:SYNACK
237.5733 +14/06/2006 12:49:41.030  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30132
237.5734 +14/06/2006 12:49:41.140  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5735 +14/06/2006 12:49:41.140  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30133
237.5736 +14/06/2006 12:49:41.140  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30134
237.5737 +14/06/2006 12:49:41.140  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30135
237.5738 +14/06/2006 12:49:41.160  000>> 98>>>>>>>>>>Part datagram received!
237.5739 +14/06/2006 12:49:41.160  000>> 98>>>>>>>>>>Complete!
237.5740 +14/06/2006 12:49:41.160  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30560
237.5741 +14/06/2006 12:49:41.160  000>> Good datagram received!
237.5742 +14/06/2006 12:49:41.160  000>> Listener:Received dictionary
237.5743 +14/06/2006 12:49:41.160  000>> 90>>>>>>>>>>Part datagram received!
237.5744 +14/06/2006 12:49:41.160  000>> 90>>>>>>>>>>Complete!
237.5745 +14/06/2006 12:49:41.160  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30561
237.5746 +14/06/2006 12:49:41.170  000>> Good datagram received!
237.5747 +14/06/2006 12:49:41.170  000>> Listener:Received RIB
237.5748 +14/06/2006 12:49:41.270  000>> 716>>>>>>>>>>Part datagram received!
237.5749 +14/06/2006 12:49:41.270  000>> 716>>>>>>>>>>Complete!
237.5750 +14/06/2006 12:49:41.270  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30562
237.5751 +14/06/2006 12:49:41.270  000>> Good datagram received!
237.5752 +14/06/2006 12:49:41.280  000>> Listener:Received Bundle Offer
237.5753 +14/06/2006 12:49:41.280  000>> Listener:Sending Empty bundle request...
237.5754 +14/06/2006 12:49:41.280  000>> Listener(receiveBOffer):But we can not restart connection...
237.5755 +14/06/2006 12:49:41.290  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30136
237.5756 +14/06/2006 12:49:41.290  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30563
237.5757 +14/06/2006 12:49:41.290  000>> Good datagram received!
237.5758 +14/06/2006 12:49:41.290  000>> Initiator:No more requested bundles
237.5759 +14/06/2006 12:49:41.290  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.5760 +14/06/2006 12:49:41.420  000>> 91>>>>>>>>>>Part datagram received!
237.5761 +14/06/2006 12:49:41.420  000>> 91>>>>>>>>>>Complete!
237.5762 +14/06/2006 12:49:41.420  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30564
237.5763 +14/06/2006 12:49:41.420  000>> Good datagram received!
237.5764 +14/06/2006 12:49:41.420  000>> Receive Hello:SYN
237.5765 +14/06/2006 12:49:41.420  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30137
237.5766 +14/06/2006 12:49:41.440  000>> 91>>>>>>>>>>Part datagram received!
237.5767 +14/06/2006 12:49:41.440  000>> 91>>>>>>>>>>Complete!
237.5768 +14/06/2006 12:49:41.440  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30565
237.5769 +14/06/2006 12:49:41.440  000>> Good datagram received!
237.5770 +14/06/2006 12:49:41.450  000>> Receive Hello:ACK
237.5771 +14/06/2006 12:49:41.550  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5772 +14/06/2006 12:49:41.550  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30138
237.5773 +14/06/2006 12:49:41.550  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30139
237.5774 +14/06/2006 12:49:41.550  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30140
237.5775 +14/06/2006 12:49:41.550  000>> 188>>>>>>>>>>Part datagram received!
237.5776 +14/06/2006 12:49:41.550  000>> 188>>>>>>>>>>Complete!
237.5777 +14/06/2006 12:49:41.550  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30566
237.5778 +14/06/2006 12:49:41.561  000>> Good datagram received!
237.5779 +14/06/2006 12:49:41.561  000>> Listener:Received dictionary
237.5780 +14/06/2006 12:49:41.561  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30567
237.5781 +14/06/2006 12:49:41.561  000>> Good datagram received!
237.5782 +14/06/2006 12:49:41.561  000>> Listener:Received RIB
237.5783 +14/06/2006 12:49:41.561  000>> 638>>>>>>>>>>Part datagram received!
237.5784 +14/06/2006 12:49:41.561  000>> 638>>>>>>>>>>Complete!
237.5785 +14/06/2006 12:49:41.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30568
237.5786 +14/06/2006 12:49:41.571  000>> Good datagram received!
237.5787 +14/06/2006 12:49:41.581  000>> Listener:Received Bundle Offer
237.5788 +14/06/2006 12:49:41.581  000>> Listener:Sending Empty bundle request...
237.5789 +14/06/2006 12:49:41.581  000>> Listener(receiveBOffer):But we can not restart connection...
237.5790 +14/06/2006 12:49:41.581  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30141
237.5791 +14/06/2006 12:49:41.581  000>> 0>>>>>>>>>>Part datagram received!
237.5792 +14/06/2006 12:49:41.581  000>> 0>>>>>>>>>>Part datagram received!
237.5793 +14/06/2006 12:49:41.661  000>> 78>>>>>>>>>>Part datagram received!
237.5794 +14/06/2006 12:49:41.671  000>> 78>>>>>>>>>>Complete!
237.5795 +14/06/2006 12:49:41.671  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30569
237.5796 +14/06/2006 12:49:41.671  000>> Good datagram received!
237.5797 +14/06/2006 12:49:41.671  000>> Initiator:No more requested bundles
237.5798 +14/06/2006 12:49:41.671  000>> Listener(receiveBundles):We can restart connection...
237.5799 +14/06/2006 12:49:41.771  000>> Hello Procedure:SENDSYN
237.5800 +14/06/2006 12:49:41.771  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30142
237.5801 +14/06/2006 12:49:41.831  000>> 91>>>>>>>>>>Part datagram received!
237.5802 +14/06/2006 12:49:41.831  000>> 91>>>>>>>>>>Complete!
237.5803 +14/06/2006 12:49:41.831  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30570
237.5804 +14/06/2006 12:49:41.831  000>> Good datagram received!
237.5805 +14/06/2006 12:49:41.831  000>> Receive Hello:SYNACK
237.5806 +14/06/2006 12:49:41.831  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30143
237.5807 +14/06/2006 12:49:41.931  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5808 +14/06/2006 12:49:41.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30144
237.5809 +14/06/2006 12:49:41.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30145
237.5810 +14/06/2006 12:49:41.931  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30146
237.5811 +14/06/2006 12:49:42.061  000>> 78>>>>>>>>>>Part datagram received!
237.5812 +14/06/2006 12:49:42.061  000>> 78>>>>>>>>>>Complete!
237.5813 +14/06/2006 12:49:42.061  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30571
237.5814 +14/06/2006 12:49:42.061  000>> Good datagram received!
237.5815 +14/06/2006 12:49:42.071  000>> Initiator:No more requested bundles
237.5816 +14/06/2006 12:49:42.071  000>> Initiator:But we can not restart connection...
237.5817 +14/06/2006 12:49:42.171  000>> 826>>>>>>>>>>Part datagram received!
237.5818 +14/06/2006 12:49:42.171  000>> 826>>>>>>>>>>Complete!
237.5819 +14/06/2006 12:49:42.171  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30572
237.5820 +14/06/2006 12:49:42.171  000>> Good datagram received!
237.5821 +14/06/2006 12:49:42.171  000>> Listener:Received dictionary
237.5822 +14/06/2006 12:49:42.171  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30573
237.5823 +14/06/2006 12:49:42.171  000>> Good datagram received!
237.5824 +14/06/2006 12:49:42.171  000>> Listener:Received RIB
237.5825 +14/06/2006 12:49:42.181  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30574
237.5826 +14/06/2006 12:49:42.181  000>> Good datagram received!
237.5827 +14/06/2006 12:49:42.191  000>> Listener:Received Bundle Offer
237.5828 +14/06/2006 12:49:42.191  000>> Listener:Sending Empty bundle request...
237.5829 +14/06/2006 12:49:42.191  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.5830 +14/06/2006 12:49:42.191  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30147
237.5831 +14/06/2006 12:49:42.322  000>> 91>>>>>>>>>>Part datagram received!
237.5832 +14/06/2006 12:49:42.322  000>> 91>>>>>>>>>>Complete!
237.5833 +14/06/2006 12:49:42.322  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30575
237.5834 +14/06/2006 12:49:42.322  000>> Good datagram received!
237.5835 +14/06/2006 12:49:42.322  000>> Receive Hello:SYN
237.5836 +14/06/2006 12:49:42.322  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30148
237.5837 +14/06/2006 12:49:42.342  000>> 91>>>>>>>>>>Part datagram received!
237.5838 +14/06/2006 12:49:42.352  000>> 91>>>>>>>>>>Complete!
237.5839 +14/06/2006 12:49:42.352  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30576
237.5840 +14/06/2006 12:49:42.352  000>> Good datagram received!
237.5841 +14/06/2006 12:49:42.352  000>> Receive Hello:ACK
237.5842 +14/06/2006 12:49:42.452  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5843 +14/06/2006 12:49:42.452  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30149
237.5844 +14/06/2006 12:49:42.452  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30150
237.5845 +14/06/2006 12:49:42.452  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30151
237.5846 +14/06/2006 12:49:42.452  000>> 98>>>>>>>>>>Part datagram received!
237.5847 +14/06/2006 12:49:42.452  000>> 98>>>>>>>>>>Complete!
237.5848 +14/06/2006 12:49:42.452  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30577
237.5849 +14/06/2006 12:49:42.452  000>> Good datagram received!
237.5850 +14/06/2006 12:49:42.452  000>> Listener:Received dictionary
237.5851 +14/06/2006 12:49:42.462  000>> 90>>>>>>>>>>Part datagram received!
237.5852 +14/06/2006 12:49:42.462  000>> 90>>>>>>>>>>Complete!
237.5853 +14/06/2006 12:49:42.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30578
237.5854 +14/06/2006 12:49:42.462  000>> Good datagram received!
237.5855 +14/06/2006 12:49:42.462  000>> Listener:Received RIB
237.5856 +14/06/2006 12:49:42.462  000>> 0>>>>>>>>>>Part datagram received!
237.5857 +14/06/2006 12:49:42.462  000>> 0>>>>>>>>>>Part datagram received!
237.5858 +14/06/2006 12:49:42.502  000>> 638>>>>>>>>>>Part datagram received!
237.5859 +14/06/2006 12:49:42.502  000>> 638>>>>>>>>>>Complete!
237.5860 +14/06/2006 12:49:42.502  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30579
237.5861 +14/06/2006 12:49:42.502  000>> Good datagram received!
237.5862 +14/06/2006 12:49:42.522  000>> Listener:Received Bundle Offer
237.5863 +14/06/2006 12:49:42.522  000>> Listener:Sending Empty bundle request...
237.5864 +14/06/2006 12:49:42.522  000>> Listener(receiveBOffer):But we can not restart connection...
237.5865 +14/06/2006 12:49:42.522  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30152
237.5866 +14/06/2006 12:49:42.602  000>> 78>>>>>>>>>>Part datagram received!
237.5867 +14/06/2006 12:49:42.602  000>> 78>>>>>>>>>>Complete!
237.5868 +14/06/2006 12:49:42.602  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30580
237.5869 +14/06/2006 12:49:42.602  000>> Good datagram received!
237.5870 +14/06/2006 12:49:42.602  000>> Initiator:No more requested bundles
237.5871 +14/06/2006 12:49:42.602  000>> Listener(receiveBundles):We can restart connection...
237.5872 +14/06/2006 12:49:42.702  000>> Hello Procedure:SENDSYN
237.5873 +14/06/2006 12:49:42.702  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30153
237.5874 +14/06/2006 12:49:42.722  000>> 91>>>>>>>>>>Part datagram received!
237.5875 +14/06/2006 12:49:42.722  000>> 91>>>>>>>>>>Complete!
237.5876 +14/06/2006 12:49:42.722  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30581
237.5877 +14/06/2006 12:49:42.722  000>> Good datagram received!
237.5878 +14/06/2006 12:49:42.722  000>> Receive Hello:SYNACK
237.5879 +14/06/2006 12:49:42.722  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30154
237.5880 +14/06/2006 12:49:42.822  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5881 +14/06/2006 12:49:42.822  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30155
237.5882 +14/06/2006 12:49:42.822  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30156
237.5883 +14/06/2006 12:49:42.822  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30157
237.5884 +14/06/2006 12:49:42.842  000>> 98>>>>>>>>>>Part datagram received!
237.5885 +14/06/2006 12:49:42.842  000>> 98>>>>>>>>>>Complete!
237.5886 +14/06/2006 12:49:42.852  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30582
237.5887 +14/06/2006 12:49:42.852  000>> Good datagram received!
237.5888 +14/06/2006 12:49:42.852  000>> Listener:Received dictionary
237.5889 +14/06/2006 12:49:42.852  000>> 90>>>>>>>>>>Part datagram received!
237.5890 +14/06/2006 12:49:42.852  000>> 90>>>>>>>>>>Complete!
237.5891 +14/06/2006 12:49:42.852  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30583
237.5892 +14/06/2006 12:49:42.852  000>> Good datagram received!
237.5893 +14/06/2006 12:49:42.852  000>> Listener:Received RIB
237.5894 +14/06/2006 12:49:42.973  000>> 716>>>>>>>>>>Part datagram received!
237.5895 +14/06/2006 12:49:42.973  000>> 716>>>>>>>>>>Complete!
237.5896 +14/06/2006 12:49:42.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30584
237.5897 +14/06/2006 12:49:42.973  000>> Good datagram received!
237.5898 +14/06/2006 12:49:42.983  000>> Listener:Received Bundle Offer
237.5899 +14/06/2006 12:49:42.983  000>> Listener:Sending Empty bundle request...
237.5900 +14/06/2006 12:49:42.983  000>> Listener(receiveBOffer):But we can not restart connection...
237.5901 +14/06/2006 12:49:42.983  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30158
237.5902 +14/06/2006 12:49:42.983  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30585
237.5903 +14/06/2006 12:49:42.983  000>> Good datagram received!
237.5904 +14/06/2006 12:49:42.983  000>> Initiator:No more requested bundles
237.5905 +14/06/2006 12:49:42.983  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.5906 +14/06/2006 12:49:43.123  000>> 91>>>>>>>>>>Part datagram received!
237.5907 +14/06/2006 12:49:43.133  000>> 91>>>>>>>>>>Complete!
237.5908 +14/06/2006 12:49:43.133  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30586
237.5909 +14/06/2006 12:49:43.133  000>> Good datagram received!
237.5910 +14/06/2006 12:49:43.133  000>> Receive Hello:SYN
237.5911 +14/06/2006 12:49:43.133  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30159
237.5912 +14/06/2006 12:49:43.163  000>> 91>>>>>>>>>>Part datagram received!
237.5913 +14/06/2006 12:49:43.163  000>> 91>>>>>>>>>>Complete!
237.5914 +14/06/2006 12:49:43.163  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30587
237.5915 +14/06/2006 12:49:43.173  000>> Good datagram received!
237.5916 +14/06/2006 12:49:43.173  000>> Receive Hello:ACK
237.5917 +14/06/2006 12:49:43.273  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5918 +14/06/2006 12:49:43.273  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30160
237.5919 +14/06/2006 12:49:43.273  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30161
237.5920 +14/06/2006 12:49:43.273  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30162
237.5921 +14/06/2006 12:49:43.273  000>> 98>>>>>>>>>>Part datagram received!
237.5922 +14/06/2006 12:49:43.273  000>> 98>>>>>>>>>>Complete!
237.5923 +14/06/2006 12:49:43.273  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30588
237.5924 +14/06/2006 12:49:43.273  000>> Good datagram received!
237.5925 +14/06/2006 12:49:43.273  000>> Listener:Received dictionary
237.5926 +14/06/2006 12:49:43.283  000>> 0>>>>>>>>>>Part datagram received!
237.5927 +14/06/2006 12:49:43.283  000>> 0>>>>>>>>>>Part datagram received!
237.5928 +14/06/2006 12:49:43.293  000>> 90>>>>>>>>>>Part datagram received!
237.5929 +14/06/2006 12:49:43.293  000>> 90>>>>>>>>>>Complete!
237.5930 +14/06/2006 12:49:43.293  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30589
237.5931 +14/06/2006 12:49:43.293  000>> Good datagram received!
237.5932 +14/06/2006 12:49:43.293  000>> Listener:Received RIB
237.5933 +14/06/2006 12:49:43.293  000>> 638>>>>>>>>>>Part datagram received!
237.5934 +14/06/2006 12:49:43.293  000>> 638>>>>>>>>>>Complete!
237.5935 +14/06/2006 12:49:43.293  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30590
237.5936 +14/06/2006 12:49:43.293  000>> Good datagram received!
237.5937 +14/06/2006 12:49:43.313  000>> Listener:Received Bundle Offer
237.5938 +14/06/2006 12:49:43.313  000>> Listener:Sending Empty bundle request...
237.5939 +14/06/2006 12:49:43.313  000>> Listener(receiveBOffer):But we can not restart connection...
237.5940 +14/06/2006 12:49:43.313  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30163
237.5941 +14/06/2006 12:49:43.393  000>> 78>>>>>>>>>>Part datagram received!
237.5942 +14/06/2006 12:49:43.393  000>> 78>>>>>>>>>>Complete!
237.5943 +14/06/2006 12:49:43.393  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30591
237.5944 +14/06/2006 12:49:43.393  000>> Good datagram received!
237.5945 +14/06/2006 12:49:43.393  000>> Initiator:No more requested bundles
237.5946 +14/06/2006 12:49:43.393  000>> Listener(receiveBundles):We can restart connection...
237.5947 +14/06/2006 12:49:43.493  000>> Hello Procedure:SENDSYN
237.5948 +14/06/2006 12:49:43.493  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30164
237.5949 +14/06/2006 12:49:43.513  000>> 91>>>>>>>>>>Part datagram received!
237.5950 +14/06/2006 12:49:43.513  000>> 91>>>>>>>>>>Complete!
237.5951 +14/06/2006 12:49:43.513  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30592
237.5952 +14/06/2006 12:49:43.513  000>> Good datagram received!
237.5953 +14/06/2006 12:49:43.513  000>> Receive Hello:SYNACK
237.5954 +14/06/2006 12:49:43.513  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30165
237.5955 +14/06/2006 12:49:43.613  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5956 +14/06/2006 12:49:43.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30166
237.5957 +14/06/2006 12:49:43.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30167
237.5958 +14/06/2006 12:49:43.613  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30168
237.5959 +14/06/2006 12:49:43.643  000>> 98>>>>>>>>>>Part datagram received!
237.5960 +14/06/2006 12:49:43.654  000>> 98>>>>>>>>>>Complete!
237.5961 +14/06/2006 12:49:43.654  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30593
237.5962 +14/06/2006 12:49:43.654  000>> Good datagram received!
237.5963 +14/06/2006 12:49:43.654  000>> Listener:Received dictionary
237.5964 +14/06/2006 12:49:43.654  000>> 90>>>>>>>>>>Part datagram received!
237.5965 +14/06/2006 12:49:43.654  000>> 90>>>>>>>>>>Complete!
237.5966 +14/06/2006 12:49:43.654  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30594
237.5967 +14/06/2006 12:49:43.654  000>> Good datagram received!
237.5968 +14/06/2006 12:49:43.664  000>> Listener:Received RIB
237.5969 +14/06/2006 12:49:43.774  000>> 716>>>>>>>>>>Part datagram received!
237.5970 +14/06/2006 12:49:43.774  000>> 716>>>>>>>>>>Complete!
237.5971 +14/06/2006 12:49:43.774  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30595
237.5972 +14/06/2006 12:49:43.774  000>> Good datagram received!
237.5973 +14/06/2006 12:49:43.794  000>> Listener:Received Bundle Offer
237.5974 +14/06/2006 12:49:43.794  000>> Listener:Sending Empty bundle request...
237.5975 +14/06/2006 12:49:43.794  000>> Listener(receiveBOffer):But we can not restart connection...
237.5976 +14/06/2006 12:49:43.794  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30169
237.5977 +14/06/2006 12:49:43.794  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30596
237.5978 +14/06/2006 12:49:43.794  000>> Good datagram received!
237.5979 +14/06/2006 12:49:43.794  000>> Initiator:No more requested bundles
237.5980 +14/06/2006 12:49:43.794  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.5981 +14/06/2006 12:49:44.024  000>> 91>>>>>>>>>>Part datagram received!
237.5982 +14/06/2006 12:49:44.024  000>> 91>>>>>>>>>>Complete!
237.5983 +14/06/2006 12:49:44.034  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30597
237.5984 +14/06/2006 12:49:44.034  000>> Good datagram received!
237.5985 +14/06/2006 12:49:44.034  000>> Receive Hello:SYN
237.5986 +14/06/2006 12:49:44.034  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30170
237.5987 +14/06/2006 12:49:44.044  000>> 91>>>>>>>>>>Part datagram received!
237.5988 +14/06/2006 12:49:44.044  000>> 91>>>>>>>>>>Complete!
237.5989 +14/06/2006 12:49:44.044  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30598
237.5990 +14/06/2006 12:49:44.054  000>> Good datagram received!
237.5991 +14/06/2006 12:49:44.054  000>> Receive Hello:ACK
237.5992 +14/06/2006 12:49:44.154  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.5993 +14/06/2006 12:49:44.154  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30171
237.5994 +14/06/2006 12:49:44.154  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30172
237.5995 +14/06/2006 12:49:44.154  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30173
237.5996 +14/06/2006 12:49:44.154  000>> 188>>>>>>>>>>Part datagram received!
237.5997 +14/06/2006 12:49:44.154  000>> 188>>>>>>>>>>Complete!
237.5998 +14/06/2006 12:49:44.154  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30599
237.5999 +14/06/2006 12:49:44.154  000>> Good datagram received!
237.6000 +14/06/2006 12:49:44.164  000>> Listener:Received dictionary
237.6001 +14/06/2006 12:49:44.164  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30600
237.6002 +14/06/2006 12:49:44.164  000>> Good datagram received!
237.6003 +14/06/2006 12:49:44.164  000>> Listener:Received RIB
237.6004 +14/06/2006 12:49:44.164  000>> 638>>>>>>>>>>Part datagram received!
237.6005 +14/06/2006 12:49:44.164  000>> 638>>>>>>>>>>Complete!
237.6006 +14/06/2006 12:49:44.164  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30601
237.6007 +14/06/2006 12:49:44.164  000>> Good datagram received!
237.6008 +14/06/2006 12:49:44.184  000>> Listener:Received Bundle Offer
237.6009 +14/06/2006 12:49:44.184  000>> Listener:Sending Empty bundle request...
237.6010 +14/06/2006 12:49:44.184  000>> Listener(receiveBOffer):But we can not restart connection...
237.6011 +14/06/2006 12:49:44.184  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30174
237.6012 +14/06/2006 12:49:44.264  000>> 78>>>>>>>>>>Part datagram received!
237.6013 +14/06/2006 12:49:44.264  000>> 78>>>>>>>>>>Complete!
237.6014 +14/06/2006 12:49:44.274  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30602
237.6015 +14/06/2006 12:49:44.274  000>> Good datagram received!
237.6016 +14/06/2006 12:49:44.274  000>> Initiator:No more requested bundles
237.6017 +14/06/2006 12:49:44.274  000>> Listener(receiveBundles):We can restart connection...
237.6018 +14/06/2006 12:49:44.375  000>> Hello Procedure:SENDSYN
237.6019 +14/06/2006 12:49:44.375  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30175
237.6020 +14/06/2006 12:49:44.395  000>> 91>>>>>>>>>>Part datagram received!
237.6021 +14/06/2006 12:49:44.395  000>> 91>>>>>>>>>>Complete!
237.6022 +14/06/2006 12:49:44.395  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30603
237.6023 +14/06/2006 12:49:44.395  000>> Good datagram received!
237.6024 +14/06/2006 12:49:44.395  000>> Receive Hello:SYNACK
237.6025 +14/06/2006 12:49:44.405  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30176
237.6026 +14/06/2006 12:49:44.505  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6027 +14/06/2006 12:49:44.505  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30177
237.6028 +14/06/2006 12:49:44.505  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30178
237.6029 +14/06/2006 12:49:44.505  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30179
237.6030 +14/06/2006 12:49:44.525  000>> 98>>>>>>>>>>Part datagram received!
237.6031 +14/06/2006 12:49:44.525  000>> 98>>>>>>>>>>Complete!
237.6032 +14/06/2006 12:49:44.525  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30604
237.6033 +14/06/2006 12:49:44.525  000>> Good datagram received!
237.6034 +14/06/2006 12:49:44.525  000>> Listener:Received dictionary
237.6035 +14/06/2006 12:49:44.675  000>> 806>>>>>>>>>>Part datagram received!
237.6036 +14/06/2006 12:49:44.675  000>> 806>>>>>>>>>>Complete!
237.6037 +14/06/2006 12:49:44.675  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30605
237.6038 +14/06/2006 12:49:44.675  000>> Good datagram received!
237.6039 +14/06/2006 12:49:44.685  000>> Listener:Received RIB
237.6040 +14/06/2006 12:49:44.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30606
237.6041 +14/06/2006 12:49:44.685  000>> Good datagram received!
237.6042 +14/06/2006 12:49:44.695  000>> Listener:Received Bundle Offer
237.6043 +14/06/2006 12:49:44.695  000>> Listener:Sending Empty bundle request...
237.6044 +14/06/2006 12:49:44.695  000>> Listener(receiveBOffer):But we can not restart connection...
237.6045 +14/06/2006 12:49:44.695  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30180
237.6046 +14/06/2006 12:49:44.695  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30607
237.6047 +14/06/2006 12:49:44.705  000>> Good datagram received!
237.6048 +14/06/2006 12:49:44.705  000>> Initiator:No more requested bundles
237.6049 +14/06/2006 12:49:44.705  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.6050 +14/06/2006 12:49:44.845  000>> 91>>>>>>>>>>Part datagram received!
237.6051 +14/06/2006 12:49:44.855  000>> 91>>>>>>>>>>Complete!
237.6052 +14/06/2006 12:49:44.855  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30608
237.6053 +14/06/2006 12:49:44.855  000>> Good datagram received!
237.6054 +14/06/2006 12:49:44.855  000>> Receive Hello:SYN
237.6055 +14/06/2006 12:49:44.855  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30181
237.6056 +14/06/2006 12:49:44.875  000>> 91>>>>>>>>>>Part datagram received!
237.6057 +14/06/2006 12:49:44.875  000>> 91>>>>>>>>>>Complete!
237.6058 +14/06/2006 12:49:44.875  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30609
237.6059 +14/06/2006 12:49:44.875  000>> Good datagram received!
237.6060 +14/06/2006 12:49:44.885  000>> Receive Hello:ACK
237.6061 +14/06/2006 12:49:44.985  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6062 +14/06/2006 12:49:44.985  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30182
237.6063 +14/06/2006 12:49:44.985  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30183
237.6064 +14/06/2006 12:49:44.985  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30184
237.6065 +14/06/2006 12:49:45.046  000>> 98>>>>>>>>>>Part datagram received!
237.6066 +14/06/2006 12:49:45.046  000>> 98>>>>>>>>>>Complete!
237.6067 +14/06/2006 12:49:45.046  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30610
237.6068 +14/06/2006 12:49:45.046  000>> Good datagram received!
237.6069 +14/06/2006 12:49:45.046  000>> Listener:Received dictionary
237.6070 +14/06/2006 12:49:45.106  000>> 728>>>>>>>>>>Part datagram received!
237.6071 +14/06/2006 12:49:45.106  000>> 728>>>>>>>>>>Complete!
237.6072 +14/06/2006 12:49:45.106  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30611
237.6073 +14/06/2006 12:49:45.106  000>> Good datagram received!
237.6074 +14/06/2006 12:49:45.116  000>> Listener:Received RIB
237.6075 +14/06/2006 12:49:45.116  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30612
237.6076 +14/06/2006 12:49:45.116  000>> Good datagram received!
237.6077 +14/06/2006 12:49:45.126  000>> Listener:Received Bundle Offer
237.6078 +14/06/2006 12:49:45.126  000>> Listener:Sending Empty bundle request...
237.6079 +14/06/2006 12:49:45.126  000>> Listener(receiveBOffer):But we can not restart connection...
237.6080 +14/06/2006 12:49:45.126  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30185
237.6081 +14/06/2006 12:49:45.206  000>> 78>>>>>>>>>>Part datagram received!
237.6082 +14/06/2006 12:49:45.206  000>> 78>>>>>>>>>>Complete!
237.6083 +14/06/2006 12:49:45.206  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30613
237.6084 +14/06/2006 12:49:45.216  000>> Good datagram received!
237.6085 +14/06/2006 12:49:45.216  000>> Initiator:No more requested bundles
237.6086 +14/06/2006 12:49:45.216  000>> Listener(receiveBundles):We can restart connection...
237.6087 +14/06/2006 12:49:45.316  000>> Hello Procedure:SENDSYN
237.6088 +14/06/2006 12:49:45.316  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30186
237.6089 +14/06/2006 12:49:45.336  000>> 91>>>>>>>>>>Part datagram received!
237.6090 +14/06/2006 12:49:45.336  000>> 91>>>>>>>>>>Complete!
237.6091 +14/06/2006 12:49:45.336  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30614
237.6092 +14/06/2006 12:49:45.336  000>> Good datagram received!
237.6093 +14/06/2006 12:49:45.336  000>> Receive Hello:SYNACK
237.6094 +14/06/2006 12:49:45.336  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30187
237.6095 +14/06/2006 12:49:45.436  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6096 +14/06/2006 12:49:45.436  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30188
237.6097 +14/06/2006 12:49:45.436  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30189
237.6098 +14/06/2006 12:49:45.436  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30190
237.6099 +14/06/2006 12:49:45.466  000>> 98>>>>>>>>>>Part datagram received!
237.6100 +14/06/2006 12:49:45.476  000>> 98>>>>>>>>>>Complete!
237.6101 +14/06/2006 12:49:45.476  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30615
237.6102 +14/06/2006 12:49:45.476  000>> Good datagram received!
237.6103 +14/06/2006 12:49:45.476  000>> Listener:Received dictionary
237.6104 +14/06/2006 12:49:45.506  000>> 728>>>>>>>>>>Part datagram received!
237.6105 +14/06/2006 12:49:45.506  000>> 728>>>>>>>>>>Complete!
237.6106 +14/06/2006 12:49:45.506  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30616
237.6107 +14/06/2006 12:49:45.516  000>> Good datagram received!
237.6108 +14/06/2006 12:49:45.516  000>> Listener:Received RIB
237.6109 +14/06/2006 12:49:45.516  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30617
237.6110 +14/06/2006 12:49:45.516  000>> Good datagram received!
237.6111 +14/06/2006 12:49:45.526  000>> Listener:Received Bundle Offer
237.6112 +14/06/2006 12:49:45.526  000>> Listener:Sending Empty bundle request...
237.6113 +14/06/2006 12:49:45.526  000>> Listener(receiveBOffer):But we can not restart connection...
237.6114 +14/06/2006 12:49:45.536  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30191
237.6115 +14/06/2006 12:49:45.616  000>> 78>>>>>>>>>>Part datagram received!
237.6116 +14/06/2006 12:49:45.616  000>> 78>>>>>>>>>>Complete!
237.6117 +14/06/2006 12:49:45.616  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30618
237.6118 +14/06/2006 12:49:45.616  000>> Good datagram received!
237.6119 +14/06/2006 12:49:45.616  000>> Initiator:No more requested bundles
237.6120 +14/06/2006 12:49:45.616  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.6121 +14/06/2006 12:49:45.696  000>> 91>>>>>>>>>>Part datagram received!
237.6122 +14/06/2006 12:49:45.696  000>> 91>>>>>>>>>>Complete!
237.6123 +14/06/2006 12:49:45.696  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30619
237.6124 +14/06/2006 12:49:45.696  000>> Good datagram received!
237.6125 +14/06/2006 12:49:45.696  000>> Receive Hello:SYN
237.6126 +14/06/2006 12:49:45.696  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30192
237.6127 +14/06/2006 12:49:45.737  000>> 91>>>>>>>>>>Part datagram received!
237.6128 +14/06/2006 12:49:45.737  000>> 91>>>>>>>>>>Complete!
237.6129 +14/06/2006 12:49:45.737  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30620
237.6130 +14/06/2006 12:49:45.737  000>> Good datagram received!
237.6131 +14/06/2006 12:49:45.737  000>> Receive Hello:ACK
237.6132 +14/06/2006 12:49:45.837  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6133 +14/06/2006 12:49:45.837  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30193
237.6134 +14/06/2006 12:49:45.837  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30194
237.6135 +14/06/2006 12:49:45.837  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30195
237.6136 +14/06/2006 12:49:45.847  000>> 98>>>>>>>>>>Part datagram received!
237.6137 +14/06/2006 12:49:45.847  000>> 98>>>>>>>>>>Complete!
237.6138 +14/06/2006 12:49:45.847  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30621
237.6139 +14/06/2006 12:49:45.847  000>> Good datagram received!
237.6140 +14/06/2006 12:49:45.847  000>> Listener:Received dictionary
237.6141 +14/06/2006 12:49:45.847  000>> 90>>>>>>>>>>Part datagram received!
237.6142 +14/06/2006 12:49:45.847  000>> 90>>>>>>>>>>Complete!
237.6143 +14/06/2006 12:49:45.847  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30622
237.6144 +14/06/2006 12:49:45.847  000>> Good datagram received!
237.6145 +14/06/2006 12:49:45.857  000>> Listener:Received RIB
237.6146 +14/06/2006 12:49:45.977  000>> 716>>>>>>>>>>Part datagram received!
237.6147 +14/06/2006 12:49:45.987  000>> 716>>>>>>>>>>Complete!
237.6148 +14/06/2006 12:49:45.987  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30623
237.6149 +14/06/2006 12:49:45.987  000>> Good datagram received!
237.6150 +14/06/2006 12:49:45.997  000>> Listener:Received Bundle Offer
237.6151 +14/06/2006 12:49:45.997  000>> Listener:Sending Empty bundle request...
237.6152 +14/06/2006 12:49:45.997  000>> Listener(receiveBOffer):But we can not restart connection...
237.6153 +14/06/2006 12:49:45.997  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30196
237.6154 +14/06/2006 12:49:45.997  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30624
237.6155 +14/06/2006 12:49:45.997  000>> Good datagram received!
237.6156 +14/06/2006 12:49:46.007  000>> Initiator:No more requested bundles
237.6157 +14/06/2006 12:49:46.007  000>> Listener(receiveBundles):We can restart connection...
237.6158 +14/06/2006 12:49:46.107  000>> Hello Procedure:SENDSYN
237.6159 +14/06/2006 12:49:46.107  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30197
237.6160 +14/06/2006 12:49:46.237  000>> 91>>>>>>>>>>Part datagram received!
237.6161 +14/06/2006 12:49:46.237  000>> 91>>>>>>>>>>Complete!
237.6162 +14/06/2006 12:49:46.237  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30625
237.6163 +14/06/2006 12:49:46.237  000>> Good datagram received!
237.6164 +14/06/2006 12:49:46.237  000>> Receive Hello:SYNACK
237.6165 +14/06/2006 12:49:46.237  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30198
237.6166 +14/06/2006 12:49:46.337  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6167 +14/06/2006 12:49:46.337  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30199
237.6168 +14/06/2006 12:49:46.337  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30200
237.6169 +14/06/2006 12:49:46.337  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30201
237.6170 +14/06/2006 12:49:46.367  000>> 98>>>>>>>>>>Part datagram received!
237.6171 +14/06/2006 12:49:46.367  000>> 98>>>>>>>>>>Complete!
237.6172 +14/06/2006 12:49:46.367  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30626
237.6173 +14/06/2006 12:49:46.367  000>> Good datagram received!
237.6174 +14/06/2006 12:49:46.367  000>> Listener:Received dictionary
237.6175 +14/06/2006 12:49:46.367  000>> 90>>>>>>>>>>Part datagram received!
237.6176 +14/06/2006 12:49:46.367  000>> 90>>>>>>>>>>Complete!
237.6177 +14/06/2006 12:49:46.367  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30627
237.6178 +14/06/2006 12:49:46.367  000>> Good datagram received!
237.6179 +14/06/2006 12:49:46.367  000>> Listener:Received RIB
237.6180 +14/06/2006 12:49:46.498  000>> 716>>>>>>>>>>Part datagram received!
237.6181 +14/06/2006 12:49:46.498  000>> 716>>>>>>>>>>Complete!
237.6182 +14/06/2006 12:49:46.498  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30628
237.6183 +14/06/2006 12:49:46.498  000>> Good datagram received!
237.6184 +14/06/2006 12:49:46.518  000>> Listener:Received Bundle Offer
237.6185 +14/06/2006 12:49:46.518  000>> Listener:Sending Empty bundle request...
237.6186 +14/06/2006 12:49:46.518  000>> Listener(receiveBOffer):But we can not restart connection...
237.6187 +14/06/2006 12:49:46.518  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30202
237.6188 +14/06/2006 12:49:46.518  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30629
237.6189 +14/06/2006 12:49:46.518  000>> Good datagram received!
237.6190 +14/06/2006 12:49:46.518  000>> Initiator:No more requested bundles
237.6191 +14/06/2006 12:49:46.518  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.6192 +14/06/2006 12:49:46.668  000>> 91>>>>>>>>>>Part datagram received!
237.6193 +14/06/2006 12:49:46.678  000>> 91>>>>>>>>>>Complete!
237.6194 +14/06/2006 12:49:46.678  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30630
237.6195 +14/06/2006 12:49:46.678  000>> Good datagram received!
237.6196 +14/06/2006 12:49:46.678  000>> Receive Hello:SYN
237.6197 +14/06/2006 12:49:46.678  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30203
237.6198 +14/06/2006 12:49:46.698  000>> 91>>>>>>>>>>Part datagram received!
237.6199 +14/06/2006 12:49:46.698  000>> 91>>>>>>>>>>Complete!
237.6200 +14/06/2006 12:49:46.708  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30631
237.6201 +14/06/2006 12:49:46.708  000>> Good datagram received!
237.6202 +14/06/2006 12:49:46.708  000>> Receive Hello:ACK
237.6203 +14/06/2006 12:49:46.808  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6204 +14/06/2006 12:49:46.808  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30204
237.6205 +14/06/2006 12:49:46.808  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30205
237.6206 +14/06/2006 12:49:46.808  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30206
237.6207 +14/06/2006 12:49:46.808  000>> 188>>>>>>>>>>Part datagram received!
237.6208 +14/06/2006 12:49:46.808  000>> 188>>>>>>>>>>Complete!
237.6209 +14/06/2006 12:49:46.808  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30632
237.6210 +14/06/2006 12:49:46.808  000>> Good datagram received!
237.6211 +14/06/2006 12:49:46.818  000>> Listener:Received dictionary
237.6212 +14/06/2006 12:49:46.818  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30633
237.6213 +14/06/2006 12:49:46.818  000>> Good datagram received!
237.6214 +14/06/2006 12:49:46.818  000>> Listener:Received RIB
237.6215 +14/06/2006 12:49:46.818  000>> 638>>>>>>>>>>Part datagram received!
237.6216 +14/06/2006 12:49:46.818  000>> 638>>>>>>>>>>Complete!
237.6217 +14/06/2006 12:49:46.818  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30634
237.6218 +14/06/2006 12:49:46.818  000>> Good datagram received!
237.6219 +14/06/2006 12:49:46.838  000>> Listener:Received Bundle Offer
237.6220 +14/06/2006 12:49:46.838  000>> Listener:Sending Empty bundle request...
237.6221 +14/06/2006 12:49:46.838  000>> Listener(receiveBOffer):But we can not restart connection...
237.6222 +14/06/2006 12:49:46.838  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30207
237.6223 +14/06/2006 12:49:46.838  000>> 0>>>>>>>>>>Part datagram received!
237.6224 +14/06/2006 12:49:46.838  000>> 0>>>>>>>>>>Part datagram received!
237.6225 +14/06/2006 12:49:46.918  000>> 78>>>>>>>>>>Part datagram received!
237.6226 +14/06/2006 12:49:46.918  000>> 78>>>>>>>>>>Complete!
237.6227 +14/06/2006 12:49:46.918  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30635
237.6228 +14/06/2006 12:49:46.918  000>> Good datagram received!
237.6229 +14/06/2006 12:49:46.918  000>> Initiator:No more requested bundles
237.6230 +14/06/2006 12:49:46.918  000>> Listener(receiveBundles):We can restart connection...
237.6231 +14/06/2006 12:49:47.018  000>> Hello Procedure:SENDSYN
237.6232 +14/06/2006 12:49:47.018  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30208
237.6233 +14/06/2006 12:49:47.028  000>> 91>>>>>>>>>>Part datagram received!
237.6234 +14/06/2006 12:49:47.038  000>> 91>>>>>>>>>>Complete!
237.6235 +14/06/2006 12:49:47.038  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30636
237.6236 +14/06/2006 12:49:47.038  000>> Good datagram received!
237.6237 +14/06/2006 12:49:47.038  000>> Receive Hello:SYNACK
237.6238 +14/06/2006 12:49:47.038  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30209
237.6239 +14/06/2006 12:49:47.139  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6240 +14/06/2006 12:49:47.139  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30210
237.6241 +14/06/2006 12:49:47.139  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30211
237.6242 +14/06/2006 12:49:47.139  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30212
237.6243 +14/06/2006 12:49:47.169  000>> 98>>>>>>>>>>Part datagram received!
237.6244 +14/06/2006 12:49:47.169  000>> 98>>>>>>>>>>Complete!
237.6245 +14/06/2006 12:49:47.169  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30637
237.6246 +14/06/2006 12:49:47.169  000>> Good datagram received!
237.6247 +14/06/2006 12:49:47.169  000>> Listener:Received dictionary
237.6248 +14/06/2006 12:49:47.169  000>> 90>>>>>>>>>>Part datagram received!
237.6249 +14/06/2006 12:49:47.169  000>> 90>>>>>>>>>>Complete!
237.6250 +14/06/2006 12:49:47.169  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30638
237.6251 +14/06/2006 12:49:47.169  000>> Good datagram received!
237.6252 +14/06/2006 12:49:47.169  000>> Listener:Received RIB
237.6253 +14/06/2006 12:49:47.289  000>> 716>>>>>>>>>>Part datagram received!
237.6254 +14/06/2006 12:49:47.289  000>> 716>>>>>>>>>>Complete!
237.6255 +14/06/2006 12:49:47.289  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30639
237.6256 +14/06/2006 12:49:47.289  000>> Good datagram received!
237.6257 +14/06/2006 12:49:47.299  000>> Listener:Received Bundle Offer
237.6258 +14/06/2006 12:49:47.299  000>> Listener:Sending Empty bundle request...
237.6259 +14/06/2006 12:49:47.309  000>> Listener(receiveBOffer):But we can not restart connection...
237.6260 +14/06/2006 12:49:47.309  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30213
237.6261 +14/06/2006 12:49:47.309  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30640
237.6262 +14/06/2006 12:49:47.309  000>> Good datagram received!
237.6263 +14/06/2006 12:49:47.309  000>> Initiator:No more requested bundles
237.6264 +14/06/2006 12:49:47.309  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.6265 +14/06/2006 12:49:47.459  000>> 91>>>>>>>>>>Part datagram received!
237.6266 +14/06/2006 12:49:47.459  000>> 91>>>>>>>>>>Complete!
237.6267 +14/06/2006 12:49:47.459  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30641
237.6268 +14/06/2006 12:49:47.459  000>> Good datagram received!
237.6269 +14/06/2006 12:49:47.459  000>> Receive Hello:SYN
237.6270 +14/06/2006 12:49:47.469  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30214
237.6271 +14/06/2006 12:49:47.479  000>> 91>>>>>>>>>>Part datagram received!
237.6272 +14/06/2006 12:49:47.489  000>> 91>>>>>>>>>>Complete!
237.6273 +14/06/2006 12:49:47.489  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30642
237.6274 +14/06/2006 12:49:47.489  000>> Good datagram received!
237.6275 +14/06/2006 12:49:47.489  000>> Receive Hello:ACK
237.6276 +14/06/2006 12:49:47.589  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6277 +14/06/2006 12:49:47.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30215
237.6278 +14/06/2006 12:49:47.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30216
237.6279 +14/06/2006 12:49:47.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30217
237.6280 +14/06/2006 12:49:47.589  000>> 98>>>>>>>>>>Part datagram received!
237.6281 +14/06/2006 12:49:47.589  000>> 98>>>>>>>>>>Complete!
237.6282 +14/06/2006 12:49:47.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30643
237.6283 +14/06/2006 12:49:47.599  000>> Good datagram received!
237.6284 +14/06/2006 12:49:47.599  000>> Listener:Received dictionary
237.6285 +14/06/2006 12:49:47.599  000>> 90>>>>>>>>>>Part datagram received!
237.6286 +14/06/2006 12:49:47.599  000>> 90>>>>>>>>>>Complete!
237.6287 +14/06/2006 12:49:47.599  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30644
237.6288 +14/06/2006 12:49:47.599  000>> Good datagram received!
237.6289 +14/06/2006 12:49:47.599  000>> Listener:Received RIB
237.6290 +14/06/2006 12:49:47.789  000>> 716>>>>>>>>>>Part datagram received!
237.6291 +14/06/2006 12:49:47.789  000>> 716>>>>>>>>>>Complete!
237.6292 +14/06/2006 12:49:47.789  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30645
237.6293 +14/06/2006 12:49:47.789  000>> Good datagram received!
237.6294 +14/06/2006 12:49:47.799  000>> Listener:Received Bundle Offer
237.6295 +14/06/2006 12:49:47.799  000>> Listener:Sending Empty bundle request...
237.6296 +14/06/2006 12:49:47.809  000>> Listener(receiveBOffer):But we can not restart connection...
237.6297 +14/06/2006 12:49:47.809  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30218
237.6298 +14/06/2006 12:49:47.809  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30646
237.6299 +14/06/2006 12:49:47.809  000>> Good datagram received!
237.6300 +14/06/2006 12:49:47.809  000>> Initiator:No more requested bundles
237.6301 +14/06/2006 12:49:47.809  000>> Listener(receiveBundles):We can restart connection...
237.6302 +14/06/2006 12:49:47.910  000>> Hello Procedure:SENDSYN
237.6303 +14/06/2006 12:49:47.910  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30219
237.6304 +14/06/2006 12:49:47.940  000>> 91>>>>>>>>>>Part datagram received!
237.6305 +14/06/2006 12:49:47.940  000>> 91>>>>>>>>>>Complete!
237.6306 +14/06/2006 12:49:47.940  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30647
237.6307 +14/06/2006 12:49:47.940  000>> Good datagram received!
237.6308 +14/06/2006 12:49:47.940  000>> Receive Hello:SYNACK
237.6309 +14/06/2006 12:49:47.940  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30220
237.6310 +14/06/2006 12:49:48.040  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6311 +14/06/2006 12:49:48.040  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30221
237.6312 +14/06/2006 12:49:48.040  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30222
237.6313 +14/06/2006 12:49:48.040  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30223
237.6314 +14/06/2006 12:49:48.180  000>> 78>>>>>>>>>>Part datagram received!
237.6315 +14/06/2006 12:49:48.180  000>> 78>>>>>>>>>>Complete!
237.6316 +14/06/2006 12:49:48.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30648
237.6317 +14/06/2006 12:49:48.180  000>> Good datagram received!
237.6318 +14/06/2006 12:49:48.180  000>> Initiator:No more requested bundles
237.6319 +14/06/2006 12:49:48.180  000>> Initiator:But we can not restart connection...
237.6320 +14/06/2006 12:49:48.290  000>> 826>>>>>>>>>>Part datagram received!
237.6321 +14/06/2006 12:49:48.290  000>> 826>>>>>>>>>>Complete!
237.6322 +14/06/2006 12:49:48.290  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30649
237.6323 +14/06/2006 12:49:48.290  000>> Good datagram received!
237.6324 +14/06/2006 12:49:48.290  000>> Listener:Received dictionary
237.6325 +14/06/2006 12:49:48.290  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30650
237.6326 +14/06/2006 12:49:48.290  000>> Good datagram received!
237.6327 +14/06/2006 12:49:48.300  000>> Listener:Received RIB
237.6328 +14/06/2006 12:49:48.300  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30651
237.6329 +14/06/2006 12:49:48.300  000>> Good datagram received!
237.6330 +14/06/2006 12:49:48.310  000>> Listener:Received Bundle Offer
237.6331 +14/06/2006 12:49:48.310  000>> Listener:Sending Empty bundle request...
237.6332 +14/06/2006 12:49:48.310  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.6333 +14/06/2006 12:49:48.310  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30224
237.6334 +14/06/2006 12:49:48.440  000>> 91>>>>>>>>>>Part datagram received!
237.6335 +14/06/2006 12:49:48.440  000>> 91>>>>>>>>>>Complete!
237.6336 +14/06/2006 12:49:48.440  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30652
237.6337 +14/06/2006 12:49:48.440  000>> Good datagram received!
237.6338 +14/06/2006 12:49:48.440  000>> Receive Hello:SYN
237.6339 +14/06/2006 12:49:48.440  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30225
237.6340 +14/06/2006 12:49:48.460  000>> 91>>>>>>>>>>Part datagram received!
237.6341 +14/06/2006 12:49:48.460  000>> 91>>>>>>>>>>Complete!
237.6342 +14/06/2006 12:49:48.460  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30653
237.6343 +14/06/2006 12:49:48.470  000>> Good datagram received!
237.6344 +14/06/2006 12:49:48.470  000>> Receive Hello:ACK
237.6345 +14/06/2006 12:49:48.571  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6346 +14/06/2006 12:49:48.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30226
237.6347 +14/06/2006 12:49:48.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30227
237.6348 +14/06/2006 12:49:48.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30228
237.6349 +14/06/2006 12:49:48.571  000>> 98>>>>>>>>>>Part datagram received!
237.6350 +14/06/2006 12:49:48.571  000>> 98>>>>>>>>>>Complete!
237.6351 +14/06/2006 12:49:48.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30654
237.6352 +14/06/2006 12:49:48.571  000>> Good datagram received!
237.6353 +14/06/2006 12:49:48.571  000>> Listener:Received dictionary
237.6354 +14/06/2006 12:49:48.581  000>> 90>>>>>>>>>>Part datagram received!
237.6355 +14/06/2006 12:49:48.581  000>> 90>>>>>>>>>>Complete!
237.6356 +14/06/2006 12:49:48.581  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30655
237.6357 +14/06/2006 12:49:48.581  000>> Good datagram received!
237.6358 +14/06/2006 12:49:48.581  000>> Listener:Received RIB
237.6359 +14/06/2006 12:49:48.581  000>> 0>>>>>>>>>>Part datagram received!
237.6360 +14/06/2006 12:49:48.581  000>> 0>>>>>>>>>>Part datagram received!
237.6361 +14/06/2006 12:49:48.581  000>> 638>>>>>>>>>>Part datagram received!
237.6362 +14/06/2006 12:49:48.581  000>> 638>>>>>>>>>>Complete!
237.6363 +14/06/2006 12:49:48.591  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30656
237.6364 +14/06/2006 12:49:48.591  000>> Good datagram received!
237.6365 +14/06/2006 12:49:48.601  000>> Listener:Received Bundle Offer
237.6366 +14/06/2006 12:49:48.601  000>> Listener:Sending Empty bundle request...
237.6367 +14/06/2006 12:49:48.601  000>> Listener(receiveBOffer):But we can not restart connection...
237.6368 +14/06/2006 12:49:48.601  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30229
237.6369 +14/06/2006 12:49:48.691  000>> 78>>>>>>>>>>Part datagram received!
237.6370 +14/06/2006 12:49:48.691  000>> 78>>>>>>>>>>Complete!
237.6371 +14/06/2006 12:49:48.691  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30657
237.6372 +14/06/2006 12:49:48.691  000>> Good datagram received!
237.6373 +14/06/2006 12:49:48.691  000>> Initiator:No more requested bundles
237.6374 +14/06/2006 12:49:48.691  000>> Listener(receiveBundles):We can restart connection...
237.6375 +14/06/2006 12:49:48.791  000>> Hello Procedure:SENDSYN
237.6376 +14/06/2006 12:49:48.791  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30230
237.6377 +14/06/2006 12:49:48.811  000>> 91>>>>>>>>>>Part datagram received!
237.6378 +14/06/2006 12:49:48.811  000>> 91>>>>>>>>>>Complete!
237.6379 +14/06/2006 12:49:48.811  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30658
237.6380 +14/06/2006 12:49:48.811  000>> Good datagram received!
237.6381 +14/06/2006 12:49:48.811  000>> Receive Hello:SYNACK
237.6382 +14/06/2006 12:49:48.811  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30231
237.6383 +14/06/2006 12:49:48.911  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6384 +14/06/2006 12:49:48.911  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30232
237.6385 +14/06/2006 12:49:48.911  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30233
237.6386 +14/06/2006 12:49:48.921  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30234
237.6387 +14/06/2006 12:49:49.051  000>> 98>>>>>>>>>>Part datagram received!
237.6388 +14/06/2006 12:49:49.051  000>> 98>>>>>>>>>>Complete!
237.6389 +14/06/2006 12:49:49.051  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30659
237.6390 +14/06/2006 12:49:49.051  000>> Good datagram received!
237.6391 +14/06/2006 12:49:49.051  000>> Listener:Received dictionary
237.6392 +14/06/2006 12:49:49.051  000>> 90>>>>>>>>>>Part datagram received!
237.6393 +14/06/2006 12:49:49.051  000>> 90>>>>>>>>>>Complete!
237.6394 +14/06/2006 12:49:49.061  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30660
237.6395 +14/06/2006 12:49:49.061  000>> Good datagram received!
237.6396 +14/06/2006 12:49:49.061  000>> Listener:Received RIB
237.6397 +14/06/2006 12:49:49.191  000>> 716>>>>>>>>>>Part datagram received!
237.6398 +14/06/2006 12:49:49.191  000>> 716>>>>>>>>>>Complete!
237.6399 +14/06/2006 12:49:49.191  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30661
237.6400 +14/06/2006 12:49:49.191  000>> Good datagram received!
237.6401 +14/06/2006 12:49:49.212  000>> Listener:Received Bundle Offer
237.6402 +14/06/2006 12:49:49.212  000>> Listener:Sending Empty bundle request...
237.6403 +14/06/2006 12:49:49.212  000>> Listener(receiveBOffer):But we can not restart connection...
237.6404 +14/06/2006 12:49:49.212  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30235
237.6405 +14/06/2006 12:49:49.212  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30662
237.6406 +14/06/2006 12:49:49.212  000>> Good datagram received!
237.6407 +14/06/2006 12:49:49.212  000>> Initiator:No more requested bundles
237.6408 +14/06/2006 12:49:49.212  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.6409 +14/06/2006 12:49:49.332  000>> 91>>>>>>>>>>Part datagram received!
237.6410 +14/06/2006 12:49:49.342  000>> 91>>>>>>>>>>Complete!
237.6411 +14/06/2006 12:49:49.342  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30663
237.6412 +14/06/2006 12:49:49.342  000>> Good datagram received!
237.6413 +14/06/2006 12:49:49.342  000>> Receive Hello:SYN
237.6414 +14/06/2006 12:49:49.342  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30236
237.6415 +14/06/2006 12:49:49.362  000>> 91>>>>>>>>>>Part datagram received!
237.6416 +14/06/2006 12:49:49.362  000>> 91>>>>>>>>>>Complete!
237.6417 +14/06/2006 12:49:49.362  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30664
237.6418 +14/06/2006 12:49:49.362  000>> Good datagram received!
237.6419 +14/06/2006 12:49:49.362  000>> Receive Hello:ACK
237.6420 +14/06/2006 12:49:49.462  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6421 +14/06/2006 12:49:49.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30237
237.6422 +14/06/2006 12:49:49.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30238
237.6423 +14/06/2006 12:49:49.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30239
237.6424 +14/06/2006 12:49:49.472  000>> 98>>>>>>>>>>Part datagram received!
237.6425 +14/06/2006 12:49:49.472  000>> 98>>>>>>>>>>Complete!
237.6426 +14/06/2006 12:49:49.472  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30665
237.6427 +14/06/2006 12:49:49.472  000>> Good datagram received!
237.6428 +14/06/2006 12:49:49.472  000>> Listener:Received dictionary
237.6429 +14/06/2006 12:49:49.472  000>> 90>>>>>>>>>>Part datagram received!
237.6430 +14/06/2006 12:49:49.472  000>> 90>>>>>>>>>>Complete!
237.6431 +14/06/2006 12:49:49.482  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30666
237.6432 +14/06/2006 12:49:49.482  000>> Good datagram received!
237.6433 +14/06/2006 12:49:49.482  000>> Listener:Received RIB
237.6434 +14/06/2006 12:49:49.592  000>> 716>>>>>>>>>>Part datagram received!
237.6435 +14/06/2006 12:49:49.592  000>> 716>>>>>>>>>>Complete!
237.6436 +14/06/2006 12:49:49.592  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30667
237.6437 +14/06/2006 12:49:49.592  000>> Good datagram received!
237.6438 +14/06/2006 12:49:49.612  000>> Listener:Received Bundle Offer
237.6439 +14/06/2006 12:49:49.612  000>> Listener:Sending Empty bundle request...
237.6440 +14/06/2006 12:49:49.612  000>> Listener(receiveBOffer):But we can not restart connection...
237.6441 +14/06/2006 12:49:49.612  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30240
237.6442 +14/06/2006 12:49:49.612  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30668
237.6443 +14/06/2006 12:49:49.612  000>> Good datagram received!
237.6444 +14/06/2006 12:49:49.612  000>> Initiator:No more requested bundles
237.6445 +14/06/2006 12:49:49.612  000>> Listener(receiveBundles):We can restart connection...
237.6446 +14/06/2006 12:49:49.712  000>> Hello Procedure:SENDSYN
237.6447 +14/06/2006 12:49:49.712  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30241
237.6448 +14/06/2006 12:49:49.742  000>> 91>>>>>>>>>>Part datagram received!
237.6449 +14/06/2006 12:49:49.742  000>> 91>>>>>>>>>>Complete!
237.6450 +14/06/2006 12:49:49.742  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30669
237.6451 +14/06/2006 12:49:49.742  000>> Good datagram received!
237.6452 +14/06/2006 12:49:49.742  000>> Receive Hello:SYNACK
237.6453 +14/06/2006 12:49:49.742  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30242
237.6454 +14/06/2006 12:49:49.842  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6455 +14/06/2006 12:49:49.842  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30243
237.6456 +14/06/2006 12:49:49.842  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30244
237.6457 +14/06/2006 12:49:49.842  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30245
237.6458 +14/06/2006 12:49:49.872  000>> 98>>>>>>>>>>Part datagram received!
237.6459 +14/06/2006 12:49:49.872  000>> 98>>>>>>>>>>Complete!
237.6460 +14/06/2006 12:49:49.872  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30670
237.6461 +14/06/2006 12:49:49.872  000>> Good datagram received!
237.6462 +14/06/2006 12:49:49.872  000>> Listener:Received dictionary
237.6463 +14/06/2006 12:49:49.872  000>> 90>>>>>>>>>>Part datagram received!
237.6464 +14/06/2006 12:49:49.872  000>> 90>>>>>>>>>>Complete!
237.6465 +14/06/2006 12:49:49.872  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30671
237.6466 +14/06/2006 12:49:49.872  000>> Good datagram received!
237.6467 +14/06/2006 12:49:49.872  000>> Listener:Received RIB
237.6468 +14/06/2006 12:49:49.993  000>> 716>>>>>>>>>>Part datagram received!
237.6469 +14/06/2006 12:49:49.993  000>> 716>>>>>>>>>>Complete!
237.6470 +14/06/2006 12:49:49.993  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30672
237.6471 +14/06/2006 12:49:49.993  000>> Good datagram received!
237.6472 +14/06/2006 12:49:50.013  000>> Listener:Received Bundle Offer
237.6473 +14/06/2006 12:49:50.013  000>> Listener:Sending Empty bundle request...
237.6474 +14/06/2006 12:49:50.013  000>> Listener(receiveBOffer):But we can not restart connection...
237.6475 +14/06/2006 12:49:50.013  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30246
237.6476 +14/06/2006 12:49:50.013  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30673
237.6477 +14/06/2006 12:49:50.013  000>> Good datagram received!
237.6478 +14/06/2006 12:49:50.013  000>> Initiator:No more requested bundles
237.6479 +14/06/2006 12:49:50.013  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.6480 +14/06/2006 12:49:50.173  000>> 91>>>>>>>>>>Part datagram received!
237.6481 +14/06/2006 12:49:50.173  000>> 91>>>>>>>>>>Complete!
237.6482 +14/06/2006 12:49:50.173  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30674
237.6483 +14/06/2006 12:49:50.173  000>> Good datagram received!
237.6484 +14/06/2006 12:49:50.173  000>> Receive Hello:SYN
237.6485 +14/06/2006 12:49:50.173  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30247
237.6486 +14/06/2006 12:49:50.203  000>> 91>>>>>>>>>>Part datagram received!
237.6487 +14/06/2006 12:49:50.203  000>> 91>>>>>>>>>>Complete!
237.6488 +14/06/2006 12:49:50.203  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30675
237.6489 +14/06/2006 12:49:50.203  000>> Good datagram received!
237.6490 +14/06/2006 12:49:50.203  000>> Receive Hello:ACK
237.6491 +14/06/2006 12:49:50.303  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6492 +14/06/2006 12:49:50.303  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30248
237.6493 +14/06/2006 12:49:50.303  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30249
237.6494 +14/06/2006 12:49:50.303  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30250
237.6495 +14/06/2006 12:49:50.343  000>> 98>>>>>>>>>>Part datagram received!
237.6496 +14/06/2006 12:49:50.343  000>> 98>>>>>>>>>>Complete!
237.6497 +14/06/2006 12:49:50.343  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30676
237.6498 +14/06/2006 12:49:50.343  000>> Good datagram received!
237.6499 +14/06/2006 12:49:50.343  000>> Listener:Received dictionary
237.6500 +14/06/2006 12:49:50.343  000>> 90>>>>>>>>>>Part datagram received!
237.6501 +14/06/2006 12:49:50.343  000>> 90>>>>>>>>>>Complete!
237.6502 +14/06/2006 12:49:50.353  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30677
237.6503 +14/06/2006 12:49:50.353  000>> Good datagram received!
237.6504 +14/06/2006 12:49:50.353  000>> Listener:Received RIB
237.6505 +14/06/2006 12:49:50.493  000>> 716>>>>>>>>>>Part datagram received!
237.6506 +14/06/2006 12:49:50.493  000>> 716>>>>>>>>>>Complete!
237.6507 +14/06/2006 12:49:50.493  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30678
237.6508 +14/06/2006 12:49:50.493  000>> Good datagram received!
237.6509 +14/06/2006 12:49:50.513  000>> Listener:Received Bundle Offer
237.6510 +14/06/2006 12:49:50.513  000>> Listener:Sending Empty bundle request...
237.6511 +14/06/2006 12:49:50.513  000>> Listener(receiveBOffer):But we can not restart connection...
237.6512 +14/06/2006 12:49:50.513  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30251
237.6513 +14/06/2006 12:49:50.513  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30679
237.6514 +14/06/2006 12:49:50.513  000>> Good datagram received!
237.6515 +14/06/2006 12:49:50.513  000>> Initiator:No more requested bundles
237.6516 +14/06/2006 12:49:50.513  000>> Listener(receiveBundles):We can restart connection...
237.6517 +14/06/2006 12:49:50.614  000>> Hello Procedure:SENDSYN
237.6518 +14/06/2006 12:49:50.614  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30252
237.6519 +14/06/2006 12:49:50.644  000>> 91>>>>>>>>>>Part datagram received!
237.6520 +14/06/2006 12:49:50.644  000>> 91>>>>>>>>>>Complete!
237.6521 +14/06/2006 12:49:50.644  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30680
237.6522 +14/06/2006 12:49:50.644  000>> Good datagram received!
237.6523 +14/06/2006 12:49:50.644  000>> Receive Hello:SYNACK
237.6524 +14/06/2006 12:49:50.644  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30253
237.6525 +14/06/2006 12:49:50.744  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6526 +14/06/2006 12:49:50.744  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30254
237.6527 +14/06/2006 12:49:50.744  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30255
237.6528 +14/06/2006 12:49:50.744  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30256
237.6529 +14/06/2006 12:49:50.774  000>> 98>>>>>>>>>>Part datagram received!
237.6530 +14/06/2006 12:49:50.774  000>> 98>>>>>>>>>>Complete!
237.6531 +14/06/2006 12:49:50.774  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30681
237.6532 +14/06/2006 12:49:50.774  000>> Good datagram received!
237.6533 +14/06/2006 12:49:50.774  000>> Listener:Received dictionary
237.6534 +14/06/2006 12:49:50.774  000>> 90>>>>>>>>>>Part datagram received!
237.6535 +14/06/2006 12:49:50.774  000>> 90>>>>>>>>>>Complete!
237.6536 +14/06/2006 12:49:50.774  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30682
237.6537 +14/06/2006 12:49:50.774  000>> Good datagram received!
237.6538 +14/06/2006 12:49:50.774  000>> Listener:Received RIB
237.6539 +14/06/2006 12:49:50.894  000>> 716>>>>>>>>>>Part datagram received!
237.6540 +14/06/2006 12:49:50.894  000>> 716>>>>>>>>>>Complete!
237.6541 +14/06/2006 12:49:50.904  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30683
237.6542 +14/06/2006 12:49:50.904  000>> Good datagram received!
237.6543 +14/06/2006 12:49:50.914  000>> Listener:Received Bundle Offer
237.6544 +14/06/2006 12:49:50.914  000>> Listener:Sending Empty bundle request...
237.6545 +14/06/2006 12:49:50.914  000>> Listener(receiveBOffer):But we can not restart connection...
237.6546 +14/06/2006 12:49:50.914  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30257
237.6547 +14/06/2006 12:49:50.914  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30684
237.6548 +14/06/2006 12:49:50.914  000>> Good datagram received!
237.6549 +14/06/2006 12:49:50.914  000>> Initiator:No more requested bundles
237.6550 +14/06/2006 12:49:50.924  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.6551 +14/06/2006 12:49:51.054  000>> 91>>>>>>>>>>Part datagram received!
237.6552 +14/06/2006 12:49:51.054  000>> 91>>>>>>>>>>Complete!
237.6553 +14/06/2006 12:49:51.054  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30685
237.6554 +14/06/2006 12:49:51.054  000>> Good datagram received!
237.6555 +14/06/2006 12:49:51.054  000>> Receive Hello:SYN
237.6556 +14/06/2006 12:49:51.054  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30258
237.6557 +14/06/2006 12:49:51.074  000>> 91>>>>>>>>>>Part datagram received!
237.6558 +14/06/2006 12:49:51.074  000>> 91>>>>>>>>>>Complete!
237.6559 +14/06/2006 12:49:51.074  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30686
237.6560 +14/06/2006 12:49:51.074  000>> Good datagram received!
237.6561 +14/06/2006 12:49:51.074  000>> Receive Hello:ACK
237.6562 +14/06/2006 12:49:51.174  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6563 +14/06/2006 12:49:51.174  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30259
237.6564 +14/06/2006 12:49:51.174  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30260
237.6565 +14/06/2006 12:49:51.174  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30261
237.6566 +14/06/2006 12:49:51.184  000>> 98>>>>>>>>>>Part datagram received!
237.6567 +14/06/2006 12:49:51.184  000>> 98>>>>>>>>>>Complete!
237.6568 +14/06/2006 12:49:51.184  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30687
237.6569 +14/06/2006 12:49:51.184  000>> Good datagram received!
237.6570 +14/06/2006 12:49:51.184  000>> Listener:Received dictionary
237.6571 +14/06/2006 12:49:51.184  000>> 90>>>>>>>>>>Part datagram received!
237.6572 +14/06/2006 12:49:51.184  000>> 90>>>>>>>>>>Complete!
237.6573 +14/06/2006 12:49:51.184  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30688
237.6574 +14/06/2006 12:49:51.184  000>> Good datagram received!
237.6575 +14/06/2006 12:49:51.184  000>> Listener:Received RIB
237.6576 +14/06/2006 12:49:51.294  000>> 716>>>>>>>>>>Part datagram received!
237.6577 +14/06/2006 12:49:51.305  000>> 716>>>>>>>>>>Complete!
237.6578 +14/06/2006 12:49:51.305  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30689
237.6579 +14/06/2006 12:49:51.305  000>> Good datagram received!
237.6580 +14/06/2006 12:49:51.315  000>> Listener:Received Bundle Offer
237.6581 +14/06/2006 12:49:51.315  000>> Listener:Sending Empty bundle request...
237.6582 +14/06/2006 12:49:51.315  000>> Listener(receiveBOffer):But we can not restart connection...
237.6583 +14/06/2006 12:49:51.315  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30262
237.6584 +14/06/2006 12:49:51.315  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30690
237.6585 +14/06/2006 12:49:51.325  000>> Good datagram received!
237.6586 +14/06/2006 12:49:51.325  000>> Initiator:No more requested bundles
237.6587 +14/06/2006 12:49:51.325  000>> Listener(receiveBundles):We can restart connection...
237.6588 +14/06/2006 12:49:51.425  000>> Hello Procedure:SENDSYN
237.6589 +14/06/2006 12:49:51.425  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30263
237.6590 +14/06/2006 12:49:51.445  000>> 91>>>>>>>>>>Part datagram received!
237.6591 +14/06/2006 12:49:51.445  000>> 91>>>>>>>>>>Complete!
237.6592 +14/06/2006 12:49:51.445  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30691
237.6593 +14/06/2006 12:49:51.445  000>> Good datagram received!
237.6594 +14/06/2006 12:49:51.445  000>> Receive Hello:SYNACK
237.6595 +14/06/2006 12:49:51.445  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30264
237.6596 +14/06/2006 12:49:51.545  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6597 +14/06/2006 12:49:51.545  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30265
237.6598 +14/06/2006 12:49:51.545  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30266
237.6599 +14/06/2006 12:49:51.545  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30267
237.6600 +14/06/2006 12:49:51.575  000>> 98>>>>>>>>>>Part datagram received!
237.6601 +14/06/2006 12:49:51.575  000>> 98>>>>>>>>>>Complete!
237.6602 +14/06/2006 12:49:51.575  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30692
237.6603 +14/06/2006 12:49:51.575  000>> Good datagram received!
237.6604 +14/06/2006 12:49:51.575  000>> Listener:Received dictionary
237.6605 +14/06/2006 12:49:51.575  000>> 90>>>>>>>>>>Part datagram received!
237.6606 +14/06/2006 12:49:51.575  000>> 90>>>>>>>>>>Complete!
237.6607 +14/06/2006 12:49:51.575  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30693
237.6608 +14/06/2006 12:49:51.575  000>> Good datagram received!
237.6609 +14/06/2006 12:49:51.585  000>> Listener:Received RIB
237.6610 +14/06/2006 12:49:51.695  000>> 716>>>>>>>>>>Part datagram received!
237.6611 +14/06/2006 12:49:51.705  000>> 716>>>>>>>>>>Complete!
237.6612 +14/06/2006 12:49:51.705  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30694
237.6613 +14/06/2006 12:49:51.705  000>> Good datagram received!
237.6614 +14/06/2006 12:49:51.715  000>> Listener:Received Bundle Offer
237.6615 +14/06/2006 12:49:51.715  000>> Listener:Sending Empty bundle request...
237.6616 +14/06/2006 12:49:51.715  000>> Listener(receiveBOffer):But we can not restart connection...
237.6617 +14/06/2006 12:49:51.715  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30268
237.6618 +14/06/2006 12:49:51.715  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30695
237.6619 +14/06/2006 12:49:51.715  000>> Good datagram received!
237.6620 +14/06/2006 12:49:51.725  000>> Initiator:No more requested bundles
237.6621 +14/06/2006 12:49:51.725  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.6622 +14/06/2006 12:49:51.865  000>> 91>>>>>>>>>>Part datagram received!
237.6623 +14/06/2006 12:49:51.865  000>> 91>>>>>>>>>>Complete!
237.6624 +14/06/2006 12:49:51.865  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30696
237.6625 +14/06/2006 12:49:51.865  000>> Good datagram received!
237.6626 +14/06/2006 12:49:51.865  000>> Receive Hello:SYN
237.6627 +14/06/2006 12:49:51.865  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30269
237.6628 +14/06/2006 12:49:51.895  000>> 91>>>>>>>>>>Part datagram received!
237.6629 +14/06/2006 12:49:51.895  000>> 91>>>>>>>>>>Complete!
237.6630 +14/06/2006 12:49:51.905  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30697
237.6631 +14/06/2006 12:49:51.905  000>> Good datagram received!
237.6632 +14/06/2006 12:49:51.905  000>> Receive Hello:ACK
237.6633 +14/06/2006 12:49:52.006  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6634 +14/06/2006 12:49:52.006  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30270
237.6635 +14/06/2006 12:49:52.006  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30271
237.6636 +14/06/2006 12:49:52.016  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30272
237.6637 +14/06/2006 12:49:52.056  000>> 98>>>>>>>>>>Part datagram received!
237.6638 +14/06/2006 12:49:52.056  000>> 98>>>>>>>>>>Complete!
237.6639 +14/06/2006 12:49:52.056  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30698
237.6640 +14/06/2006 12:49:52.056  000>> Good datagram received!
237.6641 +14/06/2006 12:49:52.056  000>> Listener:Received dictionary
237.6642 +14/06/2006 12:49:52.056  000>> 90>>>>>>>>>>Part datagram received!
237.6643 +14/06/2006 12:49:52.056  000>> 90>>>>>>>>>>Complete!
237.6644 +14/06/2006 12:49:52.056  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30699
237.6645 +14/06/2006 12:49:52.056  000>> Good datagram received!
237.6646 +14/06/2006 12:49:52.066  000>> Listener:Received RIB
237.6647 +14/06/2006 12:49:52.206  000>> 716>>>>>>>>>>Part datagram received!
237.6648 +14/06/2006 12:49:52.206  000>> 716>>>>>>>>>>Complete!
237.6649 +14/06/2006 12:49:52.206  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30700
237.6650 +14/06/2006 12:49:52.206  000>> Good datagram received!
237.6651 +14/06/2006 12:49:52.216  000>> Listener:Received Bundle Offer
237.6652 +14/06/2006 12:49:52.216  000>> Listener:Sending Empty bundle request...
237.6653 +14/06/2006 12:49:52.216  000>> Listener(receiveBOffer):But we can not restart connection...
237.6654 +14/06/2006 12:49:52.216  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30273
237.6655 +14/06/2006 12:49:52.226  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30701
237.6656 +14/06/2006 12:49:52.226  000>> Good datagram received!
237.6657 +14/06/2006 12:49:52.226  000>> Initiator:No more requested bundles
237.6658 +14/06/2006 12:49:52.226  000>> Listener(receiveBundles):We can restart connection...
237.6659 +14/06/2006 12:49:52.326  000>> Hello Procedure:SENDSYN
237.6660 +14/06/2006 12:49:52.326  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30274
237.6661 +14/06/2006 12:49:52.446  000>> 91>>>>>>>>>>Part datagram received!
237.6662 +14/06/2006 12:49:52.446  000>> 91>>>>>>>>>>Complete!
237.6663 +14/06/2006 12:49:52.446  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30702
237.6664 +14/06/2006 12:49:52.446  000>> Good datagram received!
237.6665 +14/06/2006 12:49:52.446  000>> Receive Hello:SYNACK
237.6666 +14/06/2006 12:49:52.446  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30275
237.6667 +14/06/2006 12:49:52.546  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6668 +14/06/2006 12:49:52.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30276
237.6669 +14/06/2006 12:49:52.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30277
237.6670 +14/06/2006 12:49:52.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30278
237.6671 +14/06/2006 12:49:52.576  000>> 98>>>>>>>>>>Part datagram received!
237.6672 +14/06/2006 12:49:52.576  000>> 98>>>>>>>>>>Complete!
237.6673 +14/06/2006 12:49:52.576  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30703
237.6674 +14/06/2006 12:49:52.576  000>> Good datagram received!
237.6675 +14/06/2006 12:49:52.576  000>> Listener:Received dictionary
237.6676 +14/06/2006 12:49:52.576  000>> 90>>>>>>>>>>Part datagram received!
237.6677 +14/06/2006 12:49:52.576  000>> 90>>>>>>>>>>Complete!
237.6678 +14/06/2006 12:49:52.586  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30704
237.6679 +14/06/2006 12:49:52.586  000>> Good datagram received!
237.6680 +14/06/2006 12:49:52.586  000>> Listener:Received RIB
237.6681 +14/06/2006 12:49:52.707  000>> 716>>>>>>>>>>Part datagram received!
237.6682 +14/06/2006 12:49:52.707  000>> 716>>>>>>>>>>Complete!
237.6683 +14/06/2006 12:49:52.707  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30705
237.6684 +14/06/2006 12:49:52.707  000>> Good datagram received!
237.6685 +14/06/2006 12:49:52.717  000>> Listener:Received Bundle Offer
237.6686 +14/06/2006 12:49:52.717  000>> Listener:Sending Empty bundle request...
237.6687 +14/06/2006 12:49:52.717  000>> Listener(receiveBOffer):But we can not restart connection...
237.6688 +14/06/2006 12:49:52.717  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30279
237.6689 +14/06/2006 12:49:52.727  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30706
237.6690 +14/06/2006 12:49:52.727  000>> Good datagram received!
237.6691 +14/06/2006 12:49:52.727  000>> Initiator:No more requested bundles
237.6692 +14/06/2006 12:49:52.727  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.6693 +14/06/2006 12:49:52.837  000>> 91>>>>>>>>>>Part datagram received!
237.6694 +14/06/2006 12:49:52.847  000>> 91>>>>>>>>>>Complete!
237.6695 +14/06/2006 12:49:52.847  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30707
237.6696 +14/06/2006 12:49:52.847  000>> Good datagram received!
237.6697 +14/06/2006 12:49:52.847  000>> Receive Hello:SYN
237.6698 +14/06/2006 12:49:52.847  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30280
237.6699 +14/06/2006 12:49:52.867  000>> 91>>>>>>>>>>Part datagram received!
237.6700 +14/06/2006 12:49:52.867  000>> 91>>>>>>>>>>Complete!
237.6701 +14/06/2006 12:49:52.867  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30708
237.6702 +14/06/2006 12:49:52.867  000>> Good datagram received!
237.6703 +14/06/2006 12:49:52.867  000>> Receive Hello:ACK
237.6704 +14/06/2006 12:49:52.967  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6705 +14/06/2006 12:49:52.967  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30281
237.6706 +14/06/2006 12:49:52.967  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30282
237.6707 +14/06/2006 12:49:52.967  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30283
237.6708 +14/06/2006 12:49:53.047  000>> 98>>>>>>>>>>Part datagram received!
237.6709 +14/06/2006 12:49:53.047  000>> 98>>>>>>>>>>Complete!
237.6710 +14/06/2006 12:49:53.047  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30709
237.6711 +14/06/2006 12:49:53.057  000>> Good datagram received!
237.6712 +14/06/2006 12:49:53.057  000>> Listener:Received dictionary
237.6713 +14/06/2006 12:49:53.057  000>> 90>>>>>>>>>>Part datagram received!
237.6714 +14/06/2006 12:49:53.057  000>> 90>>>>>>>>>>Complete!
237.6715 +14/06/2006 12:49:53.057  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30710
237.6716 +14/06/2006 12:49:53.057  000>> Good datagram received!
237.6717 +14/06/2006 12:49:53.057  000>> Listener:Received RIB
237.6718 +14/06/2006 12:49:53.207  000>> 716>>>>>>>>>>Part datagram received!
237.6719 +14/06/2006 12:49:53.207  000>> 716>>>>>>>>>>Complete!
237.6720 +14/06/2006 12:49:53.207  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30711
237.6721 +14/06/2006 12:49:53.207  000>> Good datagram received!
237.6722 +14/06/2006 12:49:53.217  000>> Listener:Received Bundle Offer
237.6723 +14/06/2006 12:49:53.227  000>> Listener:Sending Empty bundle request...
237.6724 +14/06/2006 12:49:53.227  000>> Listener(receiveBOffer):But we can not restart connection...
237.6725 +14/06/2006 12:49:53.227  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30284
237.6726 +14/06/2006 12:49:53.227  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30712
237.6727 +14/06/2006 12:49:53.227  000>> Good datagram received!
237.6728 +14/06/2006 12:49:53.227  000>> Initiator:No more requested bundles
237.6729 +14/06/2006 12:49:53.227  000>> Listener(receiveBundles):We can restart connection...
237.6730 +14/06/2006 12:49:53.327  000>> Hello Procedure:SENDSYN
237.6731 +14/06/2006 12:49:53.327  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30285
237.6732 +14/06/2006 12:49:53.458  000>> 91>>>>>>>>>>Part datagram received!
237.6733 +14/06/2006 12:49:53.458  000>> 91>>>>>>>>>>Complete!
237.6734 +14/06/2006 12:49:53.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30713
237.6735 +14/06/2006 12:49:53.468  000>> Good datagram received!
237.6736 +14/06/2006 12:49:53.468  000>> Receive Hello:SYNACK
237.6737 +14/06/2006 12:49:53.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30286
237.6738 +14/06/2006 12:49:53.568  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6739 +14/06/2006 12:49:53.568  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30287
237.6740 +14/06/2006 12:49:53.568  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30288
237.6741 +14/06/2006 12:49:53.568  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30289
237.6742 +14/06/2006 12:49:53.598  000>> 98>>>>>>>>>>Part datagram received!
237.6743 +14/06/2006 12:49:53.598  000>> 98>>>>>>>>>>Complete!
237.6744 +14/06/2006 12:49:53.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30714
237.6745 +14/06/2006 12:49:53.598  000>> Good datagram received!
237.6746 +14/06/2006 12:49:53.598  000>> Listener:Received dictionary
237.6747 +14/06/2006 12:49:53.608  000>> 90>>>>>>>>>>Part datagram received!
237.6748 +14/06/2006 12:49:53.608  000>> 90>>>>>>>>>>Complete!
237.6749 +14/06/2006 12:49:53.608  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30715
237.6750 +14/06/2006 12:49:53.608  000>> Good datagram received!
237.6751 +14/06/2006 12:49:53.608  000>> Listener:Received RIB
237.6752 +14/06/2006 12:49:53.708  000>> 716>>>>>>>>>>Part datagram received!
237.6753 +14/06/2006 12:49:53.708  000>> 716>>>>>>>>>>Complete!
237.6754 +14/06/2006 12:49:53.708  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30716
237.6755 +14/06/2006 12:49:53.708  000>> Good datagram received!
237.6756 +14/06/2006 12:49:53.718  000>> Listener:Received Bundle Offer
237.6757 +14/06/2006 12:49:53.728  000>> Listener:Sending Empty bundle request...
237.6758 +14/06/2006 12:49:53.728  000>> Listener(receiveBOffer):But we can not restart connection...
237.6759 +14/06/2006 12:49:53.728  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30290
237.6760 +14/06/2006 12:49:53.728  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30717
237.6761 +14/06/2006 12:49:53.728  000>> Good datagram received!
237.6762 +14/06/2006 12:49:53.728  000>> Initiator:No more requested bundles
237.6763 +14/06/2006 12:49:53.728  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.6764 +14/06/2006 12:49:53.848  000>> 91>>>>>>>>>>Part datagram received!
237.6765 +14/06/2006 12:49:53.848  000>> 91>>>>>>>>>>Complete!
237.6766 +14/06/2006 12:49:53.848  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30718
237.6767 +14/06/2006 12:49:53.848  000>> Good datagram received!
237.6768 +14/06/2006 12:49:53.848  000>> Receive Hello:SYN
237.6769 +14/06/2006 12:49:53.848  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30291
237.6770 +14/06/2006 12:49:53.868  000>> 91>>>>>>>>>>Part datagram received!
237.6771 +14/06/2006 12:49:53.868  000>> 91>>>>>>>>>>Complete!
237.6772 +14/06/2006 12:49:53.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30719
237.6773 +14/06/2006 12:49:53.868  000>> Good datagram received!
237.6774 +14/06/2006 12:49:53.868  000>> Receive Hello:ACK
237.6775 +14/06/2006 12:49:53.968  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6776 +14/06/2006 12:49:53.968  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30292
237.6777 +14/06/2006 12:49:53.978  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30293
237.6778 +14/06/2006 12:49:53.978  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30294
237.6779 +14/06/2006 12:49:54.058  000>> 98>>>>>>>>>>Part datagram received!
237.6780 +14/06/2006 12:49:54.058  000>> 98>>>>>>>>>>Complete!
237.6781 +14/06/2006 12:49:54.058  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30720
237.6782 +14/06/2006 12:49:54.058  000>> Good datagram received!
237.6783 +14/06/2006 12:49:54.058  000>> Listener:Received dictionary
237.6784 +14/06/2006 12:49:54.068  000>> 90>>>>>>>>>>Part datagram received!
237.6785 +14/06/2006 12:49:54.068  000>> 90>>>>>>>>>>Complete!
237.6786 +14/06/2006 12:49:54.068  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30721
237.6787 +14/06/2006 12:49:54.068  000>> Good datagram received!
237.6788 +14/06/2006 12:49:54.068  000>> Listener:Received RIB
237.6789 +14/06/2006 12:49:54.209  000>> 716>>>>>>>>>>Part datagram received!
237.6790 +14/06/2006 12:49:54.209  000>> 716>>>>>>>>>>Complete!
237.6791 +14/06/2006 12:49:54.209  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30722
237.6792 +14/06/2006 12:49:54.209  000>> Good datagram received!
237.6793 +14/06/2006 12:49:54.229  000>> Listener:Received Bundle Offer
237.6794 +14/06/2006 12:49:54.229  000>> Listener:Sending Empty bundle request...
237.6795 +14/06/2006 12:49:54.229  000>> Listener(receiveBOffer):But we can not restart connection...
237.6796 +14/06/2006 12:49:54.229  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30295
237.6797 +14/06/2006 12:49:54.229  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30723
237.6798 +14/06/2006 12:49:54.229  000>> Good datagram received!
237.6799 +14/06/2006 12:49:54.229  000>> Initiator:No more requested bundles
237.6800 +14/06/2006 12:49:54.229  000>> Listener(receiveBundles):We can restart connection...
237.6801 +14/06/2006 12:49:54.329  000>> Hello Procedure:SENDSYN
237.6802 +14/06/2006 12:49:54.329  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30296
237.6803 +14/06/2006 12:49:54.459  000>> 91>>>>>>>>>>Part datagram received!
237.6804 +14/06/2006 12:49:54.459  000>> 91>>>>>>>>>>Complete!
237.6805 +14/06/2006 12:49:54.459  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30724
237.6806 +14/06/2006 12:49:54.469  000>> Good datagram received!
237.6807 +14/06/2006 12:49:54.469  000>> Receive Hello:SYNACK
237.6808 +14/06/2006 12:49:54.469  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30297
237.6809 +14/06/2006 12:49:54.569  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6810 +14/06/2006 12:49:54.569  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30298
237.6811 +14/06/2006 12:49:54.569  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30299
237.6812 +14/06/2006 12:49:54.579  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30300
237.6813 +14/06/2006 12:49:54.589  000>> 98>>>>>>>>>>Part datagram received!
237.6814 +14/06/2006 12:49:54.589  000>> 98>>>>>>>>>>Complete!
237.6815 +14/06/2006 12:49:54.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30725
237.6816 +14/06/2006 12:49:54.599  000>> Good datagram received!
237.6817 +14/06/2006 12:49:54.599  000>> Listener:Received dictionary
237.6818 +14/06/2006 12:49:54.619  000>> 90>>>>>>>>>>Part datagram received!
237.6819 +14/06/2006 12:49:54.619  000>> 90>>>>>>>>>>Complete!
237.6820 +14/06/2006 12:49:54.619  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30726
237.6821 +14/06/2006 12:49:54.619  000>> Good datagram received!
237.6822 +14/06/2006 12:49:54.619  000>> Listener:Received RIB
237.6823 +14/06/2006 12:49:54.810  000>> 716>>>>>>>>>>Part datagram received!
237.6824 +14/06/2006 12:49:54.810  000>> 716>>>>>>>>>>Complete!
237.6825 +14/06/2006 12:49:54.810  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30727
237.6826 +14/06/2006 12:49:54.810  000>> Good datagram received!
237.6827 +14/06/2006 12:49:54.830  000>> Listener:Received Bundle Offer
237.6828 +14/06/2006 12:49:54.830  000>> Listener:Sending Empty bundle request...
237.6829 +14/06/2006 12:49:54.830  000>> Listener(receiveBOffer):But we can not restart connection...
237.6830 +14/06/2006 12:49:54.830  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30301
237.6831 +14/06/2006 12:49:54.830  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30728
237.6832 +14/06/2006 12:49:54.830  000>> Good datagram received!
237.6833 +14/06/2006 12:49:54.830  000>> Initiator:No more requested bundles
237.6834 +14/06/2006 12:49:54.830  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.6835 +14/06/2006 12:49:55.050  000>> 91>>>>>>>>>>Part datagram received!
237.6836 +14/06/2006 12:49:55.050  000>> 91>>>>>>>>>>Complete!
237.6837 +14/06/2006 12:49:55.050  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30729
237.6838 +14/06/2006 12:49:55.050  000>> Good datagram received!
237.6839 +14/06/2006 12:49:55.050  000>> Receive Hello:SYN
237.6840 +14/06/2006 12:49:55.050  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30302
237.6841 +14/06/2006 12:49:55.070  000>> 91>>>>>>>>>>Part datagram received!
237.6842 +14/06/2006 12:49:55.070  000>> 91>>>>>>>>>>Complete!
237.6843 +14/06/2006 12:49:55.070  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30730
237.6844 +14/06/2006 12:49:55.070  000>> Good datagram received!
237.6845 +14/06/2006 12:49:55.070  000>> Receive Hello:ACK
237.6846 +14/06/2006 12:49:55.180  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6847 +14/06/2006 12:49:55.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30303
237.6848 +14/06/2006 12:49:55.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30304
237.6849 +14/06/2006 12:49:55.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30305
237.6850 +14/06/2006 12:49:55.180  000>> 98>>>>>>>>>>Part datagram received!
237.6851 +14/06/2006 12:49:55.180  000>> 98>>>>>>>>>>Complete!
237.6852 +14/06/2006 12:49:55.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30731
237.6853 +14/06/2006 12:49:55.180  000>> Good datagram received!
237.6854 +14/06/2006 12:49:55.190  000>> Listener:Received dictionary
237.6855 +14/06/2006 12:49:55.190  000>> 728>>>>>>>>>>Part datagram received!
237.6856 +14/06/2006 12:49:55.190  000>> 728>>>>>>>>>>Complete!
237.6857 +14/06/2006 12:49:55.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30732
237.6858 +14/06/2006 12:49:55.190  000>> Good datagram received!
237.6859 +14/06/2006 12:49:55.190  000>> Listener:Received RIB
237.6860 +14/06/2006 12:49:55.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30733
237.6861 +14/06/2006 12:49:55.190  000>> Good datagram received!
237.6862 +14/06/2006 12:49:55.210  000>> Listener:Received Bundle Offer
237.6863 +14/06/2006 12:49:55.210  000>> Listener:Sending Empty bundle request...
237.6864 +14/06/2006 12:49:55.210  000>> Listener(receiveBOffer):But we can not restart connection...
237.6865 +14/06/2006 12:49:55.210  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30306
237.6866 +14/06/2006 12:49:55.210  000>> 0>>>>>>>>>>Part datagram received!
237.6867 +14/06/2006 12:49:55.210  000>> 0>>>>>>>>>>Part datagram received!
237.6868 +14/06/2006 12:49:55.210  000>> 0>>>>>>>>>>Part datagram received!
237.6869 +14/06/2006 12:49:55.290  000>> 78>>>>>>>>>>Part datagram received!
237.6870 +14/06/2006 12:49:55.300  000>> 78>>>>>>>>>>Complete!
237.6871 +14/06/2006 12:49:55.300  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30734
237.6872 +14/06/2006 12:49:55.300  000>> Good datagram received!
237.6873 +14/06/2006 12:49:55.300  000>> Initiator:No more requested bundles
237.6874 +14/06/2006 12:49:55.300  000>> Listener(receiveBundles):We can restart connection...
237.6875 +14/06/2006 12:49:55.400  000>> Hello Procedure:SENDSYN
237.6876 +14/06/2006 12:49:55.400  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30307
237.6877 +14/06/2006 12:49:55.410  000>> 91>>>>>>>>>>Part datagram received!
237.6878 +14/06/2006 12:49:55.410  000>> 91>>>>>>>>>>Complete!
237.6879 +14/06/2006 12:49:55.410  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30735
237.6880 +14/06/2006 12:49:55.410  000>> Good datagram received!
237.6881 +14/06/2006 12:49:55.420  000>> Receive Hello:SYNACK
237.6882 +14/06/2006 12:49:55.420  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30308
237.6883 +14/06/2006 12:49:55.521  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6884 +14/06/2006 12:49:55.521  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30309
237.6885 +14/06/2006 12:49:55.521  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30310
237.6886 +14/06/2006 12:49:55.521  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30311
237.6887 +14/06/2006 12:49:55.531  000>> 98>>>>>>>>>>Part datagram received!
237.6888 +14/06/2006 12:49:55.541  000>> 98>>>>>>>>>>Complete!
237.6889 +14/06/2006 12:49:55.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30736
237.6890 +14/06/2006 12:49:55.541  000>> Good datagram received!
237.6891 +14/06/2006 12:49:55.541  000>> Listener:Received dictionary
237.6892 +14/06/2006 12:49:55.711  000>> 806>>>>>>>>>>Part datagram received!
237.6893 +14/06/2006 12:49:55.711  000>> 806>>>>>>>>>>Complete!
237.6894 +14/06/2006 12:49:55.711  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30737
237.6895 +14/06/2006 12:49:55.711  000>> Good datagram received!
237.6896 +14/06/2006 12:49:55.721  000>> Listener:Received RIB
237.6897 +14/06/2006 12:49:55.721  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30738
237.6898 +14/06/2006 12:49:55.721  000>> Good datagram received!
237.6899 +14/06/2006 12:49:55.731  000>> Listener:Received Bundle Offer
237.6900 +14/06/2006 12:49:55.731  000>> Listener:Sending Empty bundle request...
237.6901 +14/06/2006 12:49:55.731  000>> Listener(receiveBOffer):But we can not restart connection...
237.6902 +14/06/2006 12:49:55.731  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30312
237.6903 +14/06/2006 12:49:55.731  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30739
237.6904 +14/06/2006 12:49:55.731  000>> Good datagram received!
237.6905 +14/06/2006 12:49:55.741  000>> Initiator:No more requested bundles
237.6906 +14/06/2006 12:49:55.741  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.6907 +14/06/2006 12:49:55.861  000>> 91>>>>>>>>>>Part datagram received!
237.6908 +14/06/2006 12:49:55.861  000>> 91>>>>>>>>>>Complete!
237.6909 +14/06/2006 12:49:55.861  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30740
237.6910 +14/06/2006 12:49:55.861  000>> Good datagram received!
237.6911 +14/06/2006 12:49:55.861  000>> Receive Hello:SYN
237.6912 +14/06/2006 12:49:55.861  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30313
237.6913 +14/06/2006 12:49:55.891  000>> 91>>>>>>>>>>Part datagram received!
237.6914 +14/06/2006 12:49:55.891  000>> 91>>>>>>>>>>Complete!
237.6915 +14/06/2006 12:49:55.891  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30741
237.6916 +14/06/2006 12:49:55.891  000>> Good datagram received!
237.6917 +14/06/2006 12:49:55.891  000>> Receive Hello:ACK
237.6918 +14/06/2006 12:49:55.991  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6919 +14/06/2006 12:49:55.991  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30314
237.6920 +14/06/2006 12:49:55.991  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30315
237.6921 +14/06/2006 12:49:55.991  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30316
237.6922 +14/06/2006 12:49:56.061  000>> 98>>>>>>>>>>Part datagram received!
237.6923 +14/06/2006 12:49:56.061  000>> 98>>>>>>>>>>Complete!
237.6924 +14/06/2006 12:49:56.061  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30742
237.6925 +14/06/2006 12:49:56.061  000>> Good datagram received!
237.6926 +14/06/2006 12:49:56.061  000>> Listener:Received dictionary
237.6927 +14/06/2006 12:49:56.071  000>> 90>>>>>>>>>>Part datagram received!
237.6928 +14/06/2006 12:49:56.071  000>> 90>>>>>>>>>>Complete!
237.6929 +14/06/2006 12:49:56.071  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30743
237.6930 +14/06/2006 12:49:56.071  000>> Good datagram received!
237.6931 +14/06/2006 12:49:56.071  000>> Listener:Received RIB
237.6932 +14/06/2006 12:49:56.212  000>> 716>>>>>>>>>>Part datagram received!
237.6933 +14/06/2006 12:49:56.212  000>> 716>>>>>>>>>>Complete!
237.6934 +14/06/2006 12:49:56.212  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30744
237.6935 +14/06/2006 12:49:56.212  000>> Good datagram received!
237.6936 +14/06/2006 12:49:56.232  000>> Listener:Received Bundle Offer
237.6937 +14/06/2006 12:49:56.232  000>> Listener:Sending Empty bundle request...
237.6938 +14/06/2006 12:49:56.232  000>> Listener(receiveBOffer):But we can not restart connection...
237.6939 +14/06/2006 12:49:56.232  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30317
237.6940 +14/06/2006 12:49:56.232  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30745
237.6941 +14/06/2006 12:49:56.242  000>> Good datagram received!
237.6942 +14/06/2006 12:49:56.242  000>> Initiator:No more requested bundles
237.6943 +14/06/2006 12:49:56.242  000>> Listener(receiveBundles):We can restart connection...
237.6944 +14/06/2006 12:49:56.342  000>> Hello Procedure:SENDSYN
237.6945 +14/06/2006 12:49:56.342  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30318
237.6946 +14/06/2006 12:49:56.462  000>> 91>>>>>>>>>>Part datagram received!
237.6947 +14/06/2006 12:49:56.462  000>> 91>>>>>>>>>>Complete!
237.6948 +14/06/2006 12:49:56.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30746
237.6949 +14/06/2006 12:49:56.462  000>> Good datagram received!
237.6950 +14/06/2006 12:49:56.462  000>> Receive Hello:SYNACK
237.6951 +14/06/2006 12:49:56.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30319
237.6952 +14/06/2006 12:49:56.562  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6953 +14/06/2006 12:49:56.562  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30320
237.6954 +14/06/2006 12:49:56.562  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30321
237.6955 +14/06/2006 12:49:56.572  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30322
237.6956 +14/06/2006 12:49:56.582  000>> 98>>>>>>>>>>Part datagram received!
237.6957 +14/06/2006 12:49:56.592  000>> 98>>>>>>>>>>Complete!
237.6958 +14/06/2006 12:49:56.592  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30747
237.6959 +14/06/2006 12:49:56.592  000>> Good datagram received!
237.6960 +14/06/2006 12:49:56.592  000>> Listener:Received dictionary
237.6961 +14/06/2006 12:49:56.592  000>> 90>>>>>>>>>>Part datagram received!
237.6962 +14/06/2006 12:49:56.592  000>> 90>>>>>>>>>>Complete!
237.6963 +14/06/2006 12:49:56.602  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30748
237.6964 +14/06/2006 12:49:56.602  000>> Good datagram received!
237.6965 +14/06/2006 12:49:56.602  000>> Listener:Received RIB
237.6966 +14/06/2006 12:49:56.712  000>> 716>>>>>>>>>>Part datagram received!
237.6967 +14/06/2006 12:49:56.712  000>> 716>>>>>>>>>>Complete!
237.6968 +14/06/2006 12:49:56.712  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30749
237.6969 +14/06/2006 12:49:56.722  000>> Good datagram received!
237.6970 +14/06/2006 12:49:56.732  000>> Listener:Received Bundle Offer
237.6971 +14/06/2006 12:49:56.732  000>> Listener:Sending Empty bundle request...
237.6972 +14/06/2006 12:49:56.732  000>> Listener(receiveBOffer):But we can not restart connection...
237.6973 +14/06/2006 12:49:56.732  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30323
237.6974 +14/06/2006 12:49:56.732  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30750
237.6975 +14/06/2006 12:49:56.732  000>> Good datagram received!
237.6976 +14/06/2006 12:49:56.732  000>> Initiator:No more requested bundles
237.6977 +14/06/2006 12:49:56.742  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.6978 +14/06/2006 12:49:56.852  000>> 91>>>>>>>>>>Part datagram received!
237.6979 +14/06/2006 12:49:56.863  000>> 91>>>>>>>>>>Complete!
237.6980 +14/06/2006 12:49:56.863  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30751
237.6981 +14/06/2006 12:49:56.863  000>> Good datagram received!
237.6982 +14/06/2006 12:49:56.863  000>> Receive Hello:SYN
237.6983 +14/06/2006 12:49:56.863  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30324
237.6984 +14/06/2006 12:49:56.883  000>> 91>>>>>>>>>>Part datagram received!
237.6985 +14/06/2006 12:49:56.883  000>> 91>>>>>>>>>>Complete!
237.6986 +14/06/2006 12:49:56.883  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30752
237.6987 +14/06/2006 12:49:56.883  000>> Good datagram received!
237.6988 +14/06/2006 12:49:56.883  000>> Receive Hello:ACK
237.6989 +14/06/2006 12:49:56.993  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.6990 +14/06/2006 12:49:56.993  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30325
237.6991 +14/06/2006 12:49:56.993  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30326
237.6992 +14/06/2006 12:49:56.993  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30327
237.6993 +14/06/2006 12:49:57.063  000>> 98>>>>>>>>>>Part datagram received!
237.6994 +14/06/2006 12:49:57.063  000>> 98>>>>>>>>>>Complete!
237.6995 +14/06/2006 12:49:57.063  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30753
237.6996 +14/06/2006 12:49:57.063  000>> Good datagram received!
237.6997 +14/06/2006 12:49:57.063  000>> Listener:Received dictionary
237.6998 +14/06/2006 12:49:57.073  000>> 90>>>>>>>>>>Part datagram received!
237.6999 +14/06/2006 12:49:57.073  000>> 90>>>>>>>>>>Complete!
237.7000 +14/06/2006 12:49:57.073  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30754
237.7001 +14/06/2006 12:49:57.073  000>> Good datagram received!
237.7002 +14/06/2006 12:49:57.073  000>> Listener:Received RIB
237.7003 +14/06/2006 12:49:57.213  000>> 716>>>>>>>>>>Part datagram received!
237.7004 +14/06/2006 12:49:57.223  000>> 716>>>>>>>>>>Complete!
237.7005 +14/06/2006 12:49:57.223  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30755
237.7006 +14/06/2006 12:49:57.223  000>> Good datagram received!
237.7007 +14/06/2006 12:49:57.233  000>> Listener:Received Bundle Offer
237.7008 +14/06/2006 12:49:57.233  000>> Listener:Sending Empty bundle request...
237.7009 +14/06/2006 12:49:57.233  000>> Listener(receiveBOffer):But we can not restart connection...
237.7010 +14/06/2006 12:49:57.243  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30328
237.7011 +14/06/2006 12:49:57.243  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30756
237.7012 +14/06/2006 12:49:57.243  000>> Good datagram received!
237.7013 +14/06/2006 12:49:57.243  000>> Initiator:No more requested bundles
237.7014 +14/06/2006 12:49:57.243  000>> Listener(receiveBundles):We can restart connection...
237.7015 +14/06/2006 12:49:57.343  000>> Hello Procedure:SENDSYN
237.7016 +14/06/2006 12:49:57.343  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30329
237.7017 +14/06/2006 12:49:57.453  000>> 91>>>>>>>>>>Part datagram received!
237.7018 +14/06/2006 12:49:57.453  000>> 91>>>>>>>>>>Complete!
237.7019 +14/06/2006 12:49:57.453  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30757
237.7020 +14/06/2006 12:49:57.453  000>> Good datagram received!
237.7021 +14/06/2006 12:49:57.453  000>> Receive Hello:SYNACK
237.7022 +14/06/2006 12:49:57.453  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30330
237.7023 +14/06/2006 12:49:57.553  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7024 +14/06/2006 12:49:57.553  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30331
237.7025 +14/06/2006 12:49:57.553  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30332
237.7026 +14/06/2006 12:49:57.553  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30333
237.7027 +14/06/2006 12:49:57.594  000>> 98>>>>>>>>>>Part datagram received!
237.7028 +14/06/2006 12:49:57.594  000>> 98>>>>>>>>>>Complete!
237.7029 +14/06/2006 12:49:57.594  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30758
237.7030 +14/06/2006 12:49:57.594  000>> Good datagram received!
237.7031 +14/06/2006 12:49:57.594  000>> Listener:Received dictionary
237.7032 +14/06/2006 12:49:57.614  000>> 90>>>>>>>>>>Part datagram received!
237.7033 +14/06/2006 12:49:57.614  000>> 90>>>>>>>>>>Complete!
237.7034 +14/06/2006 12:49:57.614  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30759
237.7035 +14/06/2006 12:49:57.614  000>> Good datagram received!
237.7036 +14/06/2006 12:49:57.614  000>> Listener:Received RIB
237.7037 +14/06/2006 12:49:57.834  000>> 716>>>>>>>>>>Part datagram received!
237.7038 +14/06/2006 12:49:57.834  000>> 716>>>>>>>>>>Complete!
237.7039 +14/06/2006 12:49:57.834  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30760
237.7040 +14/06/2006 12:49:57.834  000>> Good datagram received!
237.7041 +14/06/2006 12:49:57.844  000>> Listener:Received Bundle Offer
237.7042 +14/06/2006 12:49:57.844  000>> Listener:Sending Empty bundle request...
237.7043 +14/06/2006 12:49:57.854  000>> Listener(receiveBOffer):But we can not restart connection...
237.7044 +14/06/2006 12:49:57.854  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30334
237.7045 +14/06/2006 12:49:57.854  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30761
237.7046 +14/06/2006 12:49:57.854  000>> Good datagram received!
237.7047 +14/06/2006 12:49:57.854  000>> Initiator:No more requested bundles
237.7048 +14/06/2006 12:49:57.854  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.7049 +14/06/2006 12:49:58.054  000>> 91>>>>>>>>>>Part datagram received!
237.7050 +14/06/2006 12:49:58.064  000>> 91>>>>>>>>>>Complete!
237.7051 +14/06/2006 12:49:58.064  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30762
237.7052 +14/06/2006 12:49:58.064  000>> Good datagram received!
237.7053 +14/06/2006 12:49:58.064  000>> Receive Hello:SYN
237.7054 +14/06/2006 12:49:58.064  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30335
237.7055 +14/06/2006 12:49:58.084  000>> 91>>>>>>>>>>Part datagram received!
237.7056 +14/06/2006 12:49:58.084  000>> 91>>>>>>>>>>Complete!
237.7057 +14/06/2006 12:49:58.084  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30763
237.7058 +14/06/2006 12:49:58.084  000>> Good datagram received!
237.7059 +14/06/2006 12:49:58.084  000>> Receive Hello:ACK
237.7060 +14/06/2006 12:49:58.184  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7061 +14/06/2006 12:49:58.184  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30336
237.7062 +14/06/2006 12:49:58.184  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30337
237.7063 +14/06/2006 12:49:58.184  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30338
237.7064 +14/06/2006 12:49:58.194  000>> 98>>>>>>>>>>Part datagram received!
237.7065 +14/06/2006 12:49:58.194  000>> 98>>>>>>>>>>Complete!
237.7066 +14/06/2006 12:49:58.194  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30764
237.7067 +14/06/2006 12:49:58.194  000>> Good datagram received!
237.7068 +14/06/2006 12:49:58.194  000>> Listener:Received dictionary
237.7069 +14/06/2006 12:49:58.204  000>> 90>>>>>>>>>>Part datagram received!
237.7070 +14/06/2006 12:49:58.204  000>> 90>>>>>>>>>>Complete!
237.7071 +14/06/2006 12:49:58.204  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30765
237.7072 +14/06/2006 12:49:58.204  000>> Good datagram received!
237.7073 +14/06/2006 12:49:58.204  000>> Listener:Received RIB
237.7074 +14/06/2006 12:49:58.325  000>> 716>>>>>>>>>>Part datagram received!
237.7075 +14/06/2006 12:49:58.325  000>> 716>>>>>>>>>>Complete!
237.7076 +14/06/2006 12:49:58.325  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30766
237.7077 +14/06/2006 12:49:58.325  000>> Good datagram received!
237.7078 +14/06/2006 12:49:58.335  000>> Listener:Received Bundle Offer
237.7079 +14/06/2006 12:49:58.335  000>> Listener:Sending Empty bundle request...
237.7080 +14/06/2006 12:49:58.335  000>> Listener(receiveBOffer):But we can not restart connection...
237.7081 +14/06/2006 12:49:58.345  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30339
237.7082 +14/06/2006 12:49:58.345  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30767
237.7083 +14/06/2006 12:49:58.345  000>> Good datagram received!
237.7084 +14/06/2006 12:49:58.345  000>> Initiator:No more requested bundles
237.7085 +14/06/2006 12:49:58.345  000>> Listener(receiveBundles):We can restart connection...
237.7086 +14/06/2006 12:49:58.445  000>> Hello Procedure:SENDSYN
237.7087 +14/06/2006 12:49:58.445  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30340
237.7088 +14/06/2006 12:49:58.555  000>> 91>>>>>>>>>>Part datagram received!
237.7089 +14/06/2006 12:49:58.555  000>> 91>>>>>>>>>>Complete!
237.7090 +14/06/2006 12:49:58.555  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30768
237.7091 +14/06/2006 12:49:58.555  000>> Good datagram received!
237.7092 +14/06/2006 12:49:58.555  000>> Receive Hello:SYNACK
237.7093 +14/06/2006 12:49:58.555  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30341
237.7094 +14/06/2006 12:49:58.655  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7095 +14/06/2006 12:49:58.655  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30342
237.7096 +14/06/2006 12:49:58.655  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30343
237.7097 +14/06/2006 12:49:58.655  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30344
237.7098 +14/06/2006 12:49:58.685  000>> 98>>>>>>>>>>Part datagram received!
237.7099 +14/06/2006 12:49:58.685  000>> 98>>>>>>>>>>Complete!
237.7100 +14/06/2006 12:49:58.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30769
237.7101 +14/06/2006 12:49:58.685  000>> Good datagram received!
237.7102 +14/06/2006 12:49:58.685  000>> Listener:Received dictionary
237.7103 +14/06/2006 12:49:58.695  000>> 90>>>>>>>>>>Part datagram received!
237.7104 +14/06/2006 12:49:58.695  000>> 90>>>>>>>>>>Complete!
237.7105 +14/06/2006 12:49:58.695  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30770
237.7106 +14/06/2006 12:49:58.695  000>> Good datagram received!
237.7107 +14/06/2006 12:49:58.695  000>> Listener:Received RIB
237.7108 +14/06/2006 12:49:58.825  000>> 716>>>>>>>>>>Part datagram received!
237.7109 +14/06/2006 12:49:58.825  000>> 716>>>>>>>>>>Complete!
237.7110 +14/06/2006 12:49:58.825  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30771
237.7111 +14/06/2006 12:49:58.825  000>> Good datagram received!
237.7112 +14/06/2006 12:49:58.835  000>> Listener:Received Bundle Offer
237.7113 +14/06/2006 12:49:58.835  000>> Listener:Sending Empty bundle request...
237.7114 +14/06/2006 12:49:58.845  000>> Listener(receiveBOffer):But we can not restart connection...
237.7115 +14/06/2006 12:49:58.845  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30345
237.7116 +14/06/2006 12:49:58.845  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30772
237.7117 +14/06/2006 12:49:58.845  000>> Good datagram received!
237.7118 +14/06/2006 12:49:58.845  000>> Initiator:No more requested bundles
237.7119 +14/06/2006 12:49:58.845  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.7120 +14/06/2006 12:49:59.056  000>> 91>>>>>>>>>>Part datagram received!
237.7121 +14/06/2006 12:49:59.056  000>> 91>>>>>>>>>>Complete!
237.7122 +14/06/2006 12:49:59.056  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30773
237.7123 +14/06/2006 12:49:59.056  000>> Good datagram received!
237.7124 +14/06/2006 12:49:59.056  000>> Receive Hello:SYN
237.7125 +14/06/2006 12:49:59.056  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30346
237.7126 +14/06/2006 12:49:59.076  000>> 91>>>>>>>>>>Part datagram received!
237.7127 +14/06/2006 12:49:59.076  000>> 91>>>>>>>>>>Complete!
237.7128 +14/06/2006 12:49:59.076  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30774
237.7129 +14/06/2006 12:49:59.076  000>> Good datagram received!
237.7130 +14/06/2006 12:49:59.076  000>> Receive Hello:ACK
237.7131 +14/06/2006 12:49:59.176  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7132 +14/06/2006 12:49:59.176  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30347
237.7133 +14/06/2006 12:49:59.176  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30348
237.7134 +14/06/2006 12:49:59.186  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30349
237.7135 +14/06/2006 12:49:59.186  000>> 188>>>>>>>>>>Part datagram received!
237.7136 +14/06/2006 12:49:59.186  000>> 188>>>>>>>>>>Complete!
237.7137 +14/06/2006 12:49:59.186  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30775
237.7138 +14/06/2006 12:49:59.186  000>> Good datagram received!
237.7139 +14/06/2006 12:49:59.186  000>> Listener:Received dictionary
237.7140 +14/06/2006 12:49:59.186  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30776
237.7141 +14/06/2006 12:49:59.186  000>> Good datagram received!
237.7142 +14/06/2006 12:49:59.186  000>> Listener:Received RIB
237.7143 +14/06/2006 12:49:59.196  000>> 638>>>>>>>>>>Part datagram received!
237.7144 +14/06/2006 12:49:59.196  000>> 638>>>>>>>>>>Complete!
237.7145 +14/06/2006 12:49:59.196  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30777
237.7146 +14/06/2006 12:49:59.196  000>> Good datagram received!
237.7147 +14/06/2006 12:49:59.206  000>> Listener:Received Bundle Offer
237.7148 +14/06/2006 12:49:59.206  000>> Listener:Sending Empty bundle request...
237.7149 +14/06/2006 12:49:59.206  000>> Listener(receiveBOffer):But we can not restart connection...
237.7150 +14/06/2006 12:49:59.206  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30350
237.7151 +14/06/2006 12:49:59.216  000>> 0>>>>>>>>>>Part datagram received!
237.7152 +14/06/2006 12:49:59.216  000>> 0>>>>>>>>>>Part datagram received!
237.7153 +14/06/2006 12:49:59.296  000>> 78>>>>>>>>>>Part datagram received!
237.7154 +14/06/2006 12:49:59.296  000>> 78>>>>>>>>>>Complete!
237.7155 +14/06/2006 12:49:59.296  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30778
237.7156 +14/06/2006 12:49:59.296  000>> Good datagram received!
237.7157 +14/06/2006 12:49:59.296  000>> Initiator:No more requested bundles
237.7158 +14/06/2006 12:49:59.296  000>> Listener(receiveBundles):We can restart connection...
237.7159 +14/06/2006 12:49:59.396  000>> Hello Procedure:SENDSYN
237.7160 +14/06/2006 12:49:59.396  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30351
237.7161 +14/06/2006 12:49:59.446  000>> 91>>>>>>>>>>Part datagram received!
237.7162 +14/06/2006 12:49:59.456  000>> 91>>>>>>>>>>Complete!
237.7163 +14/06/2006 12:49:59.456  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30779
237.7164 +14/06/2006 12:49:59.456  000>> Good datagram received!
237.7165 +14/06/2006 12:49:59.456  000>> Receive Hello:SYNACK
237.7166 +14/06/2006 12:49:59.456  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30352
237.7167 +14/06/2006 12:49:59.556  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7168 +14/06/2006 12:49:59.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30353
237.7169 +14/06/2006 12:49:59.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30354
237.7170 +14/06/2006 12:49:59.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30355
237.7171 +14/06/2006 12:49:59.566  000>> 98>>>>>>>>>>Part datagram received!
237.7172 +14/06/2006 12:49:59.566  000>> 98>>>>>>>>>>Complete!
237.7173 +14/06/2006 12:49:59.566  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30780
237.7174 +14/06/2006 12:49:59.576  000>> Good datagram received!
237.7175 +14/06/2006 12:49:59.576  000>> Listener:Received dictionary
237.7176 +14/06/2006 12:49:59.576  000>> 90>>>>>>>>>>Part datagram received!
237.7177 +14/06/2006 12:49:59.576  000>> 90>>>>>>>>>>Complete!
237.7178 +14/06/2006 12:49:59.576  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30781
237.7179 +14/06/2006 12:49:59.576  000>> Good datagram received!
237.7180 +14/06/2006 12:49:59.576  000>> Listener:Received RIB
237.7181 +14/06/2006 12:49:59.727  000>> 716>>>>>>>>>>Part datagram received!
237.7182 +14/06/2006 12:49:59.727  000>> 716>>>>>>>>>>Complete!
237.7183 +14/06/2006 12:49:59.727  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30782
237.7184 +14/06/2006 12:49:59.727  000>> Good datagram received!
237.7185 +14/06/2006 12:49:59.747  000>> Listener:Received Bundle Offer
237.7186 +14/06/2006 12:49:59.747  000>> Listener:Sending Empty bundle request...
237.7187 +14/06/2006 12:49:59.747  000>> Listener(receiveBOffer):But we can not restart connection...
237.7188 +14/06/2006 12:49:59.747  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30356
237.7189 +14/06/2006 12:49:59.747  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30783
237.7190 +14/06/2006 12:49:59.747  000>> Good datagram received!
237.7191 +14/06/2006 12:49:59.747  000>> Initiator:No more requested bundles
237.7192 +14/06/2006 12:49:59.747  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.7193 +14/06/2006 12:49:59.877  000>> 91>>>>>>>>>>Part datagram received!
237.7194 +14/06/2006 12:49:59.877  000>> 91>>>>>>>>>>Complete!
237.7195 +14/06/2006 12:49:59.877  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30784
237.7196 +14/06/2006 12:49:59.877  000>> Good datagram received!
237.7197 +14/06/2006 12:49:59.877  000>> Receive Hello:SYN
237.7198 +14/06/2006 12:49:59.877  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30357
237.7199 +14/06/2006 12:49:59.897  000>> 91>>>>>>>>>>Part datagram received!
237.7200 +14/06/2006 12:49:59.897  000>> 91>>>>>>>>>>Complete!
237.7201 +14/06/2006 12:49:59.897  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30785
237.7202 +14/06/2006 12:49:59.897  000>> Good datagram received!
237.7203 +14/06/2006 12:49:59.897  000>> Receive Hello:ACK
237.7204 +14/06/2006 12:49:59.997  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7205 +14/06/2006 12:49:59.997  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30358
237.7206 +14/06/2006 12:49:59.997  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30359
237.7207 +14/06/2006 12:49:59.997  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30360
237.7208 +14/06/2006 12:50:00.077  000>> 98>>>>>>>>>>Part datagram received!
237.7209 +14/06/2006 12:50:00.077  000>> 98>>>>>>>>>>Complete!
237.7210 +14/06/2006 12:50:00.087  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30786
237.7211 +14/06/2006 12:50:00.087  000>> Good datagram received!
237.7212 +14/06/2006 12:50:00.087  000>> Listener:Received dictionary
237.7213 +14/06/2006 12:50:00.087  000>> 90>>>>>>>>>>Part datagram received!
237.7214 +14/06/2006 12:50:00.087  000>> 90>>>>>>>>>>Complete!
237.7215 +14/06/2006 12:50:00.087  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30787
237.7216 +14/06/2006 12:50:00.087  000>> Good datagram received!
237.7217 +14/06/2006 12:50:00.087  000>> Listener:Received RIB
237.7218 +14/06/2006 12:50:00.227  000>> 716>>>>>>>>>>Part datagram received!
237.7219 +14/06/2006 12:50:00.227  000>> 716>>>>>>>>>>Complete!
237.7220 +14/06/2006 12:50:00.227  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30788
237.7221 +14/06/2006 12:50:00.227  000>> Good datagram received!
237.7222 +14/06/2006 12:50:00.247  000>> Listener:Received Bundle Offer
237.7223 +14/06/2006 12:50:00.247  000>> Listener:Sending Empty bundle request...
237.7224 +14/06/2006 12:50:00.247  000>> Listener(receiveBOffer):But we can not restart connection...
237.7225 +14/06/2006 12:50:00.247  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30361
237.7226 +14/06/2006 12:50:00.247  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30789
237.7227 +14/06/2006 12:50:00.247  000>> Good datagram received!
237.7228 +14/06/2006 12:50:00.247  000>> Initiator:No more requested bundles
237.7229 +14/06/2006 12:50:00.247  000>> Listener(receiveBundles):We can restart connection...
237.7230 +14/06/2006 12:50:00.348  000>> Hello Procedure:SENDSYN
237.7231 +14/06/2006 12:50:00.348  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30362
237.7232 +14/06/2006 12:50:00.458  000>> 91>>>>>>>>>>Part datagram received!
237.7233 +14/06/2006 12:50:00.458  000>> 91>>>>>>>>>>Complete!
237.7234 +14/06/2006 12:50:00.458  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30790
237.7235 +14/06/2006 12:50:00.458  000>> Good datagram received!
237.7236 +14/06/2006 12:50:00.458  000>> Receive Hello:SYNACK
237.7237 +14/06/2006 12:50:00.458  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30363
237.7238 +14/06/2006 12:50:00.558  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7239 +14/06/2006 12:50:00.558  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30364
237.7240 +14/06/2006 12:50:00.558  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30365
237.7241 +14/06/2006 12:50:00.558  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30366
237.7242 +14/06/2006 12:50:00.598  000>> 98>>>>>>>>>>Part datagram received!
237.7243 +14/06/2006 12:50:00.598  000>> 98>>>>>>>>>>Complete!
237.7244 +14/06/2006 12:50:00.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30791
237.7245 +14/06/2006 12:50:00.598  000>> Good datagram received!
237.7246 +14/06/2006 12:50:00.598  000>> Listener:Received dictionary
237.7247 +14/06/2006 12:50:00.598  000>> 90>>>>>>>>>>Part datagram received!
237.7248 +14/06/2006 12:50:00.598  000>> 90>>>>>>>>>>Complete!
237.7249 +14/06/2006 12:50:00.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30792
237.7250 +14/06/2006 12:50:00.598  000>> Good datagram received!
237.7251 +14/06/2006 12:50:00.598  000>> Listener:Received RIB
237.7252 +14/06/2006 12:50:00.728  000>> 716>>>>>>>>>>Part datagram received!
237.7253 +14/06/2006 12:50:00.728  000>> 716>>>>>>>>>>Complete!
237.7254 +14/06/2006 12:50:00.728  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30793
237.7255 +14/06/2006 12:50:00.728  000>> Good datagram received!
237.7256 +14/06/2006 12:50:00.748  000>> Listener:Received Bundle Offer
237.7257 +14/06/2006 12:50:00.748  000>> Listener:Sending Empty bundle request...
237.7258 +14/06/2006 12:50:00.748  000>> Listener(receiveBOffer):But we can not restart connection...
237.7259 +14/06/2006 12:50:00.748  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30367
237.7260 +14/06/2006 12:50:00.748  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30794
237.7261 +14/06/2006 12:50:00.748  000>> Good datagram received!
237.7262 +14/06/2006 12:50:00.748  000>> Initiator:No more requested bundles
237.7263 +14/06/2006 12:50:00.748  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.7264 +14/06/2006 12:50:00.878  000>> 91>>>>>>>>>>Part datagram received!
237.7265 +14/06/2006 12:50:00.878  000>> 91>>>>>>>>>>Complete!
237.7266 +14/06/2006 12:50:00.878  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30795
237.7267 +14/06/2006 12:50:00.878  000>> Good datagram received!
237.7268 +14/06/2006 12:50:00.878  000>> Receive Hello:SYN
237.7269 +14/06/2006 12:50:00.878  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30368
237.7270 +14/06/2006 12:50:00.898  000>> 91>>>>>>>>>>Part datagram received!
237.7271 +14/06/2006 12:50:00.898  000>> 91>>>>>>>>>>Complete!
237.7272 +14/06/2006 12:50:00.898  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30796
237.7273 +14/06/2006 12:50:00.908  000>> Good datagram received!
237.7274 +14/06/2006 12:50:00.908  000>> Receive Hello:ACK
237.7275 +14/06/2006 12:50:01.008  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7276 +14/06/2006 12:50:01.008  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30369
237.7277 +14/06/2006 12:50:01.008  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30370
237.7278 +14/06/2006 12:50:01.008  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30371
237.7279 +14/06/2006 12:50:01.059  000>> 98>>>>>>>>>>Part datagram received!
237.7280 +14/06/2006 12:50:01.059  000>> 98>>>>>>>>>>Complete!
237.7281 +14/06/2006 12:50:01.059  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30797
237.7282 +14/06/2006 12:50:01.059  000>> Good datagram received!
237.7283 +14/06/2006 12:50:01.059  000>> Listener:Received dictionary
237.7284 +14/06/2006 12:50:01.059  000>> 90>>>>>>>>>>Part datagram received!
237.7285 +14/06/2006 12:50:01.059  000>> 90>>>>>>>>>>Complete!
237.7286 +14/06/2006 12:50:01.059  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30798
237.7287 +14/06/2006 12:50:01.059  000>> Good datagram received!
237.7288 +14/06/2006 12:50:01.059  000>> Listener:Received RIB
237.7289 +14/06/2006 12:50:01.229  000>> 716>>>>>>>>>>Part datagram received!
237.7290 +14/06/2006 12:50:01.229  000>> 716>>>>>>>>>>Complete!
237.7291 +14/06/2006 12:50:01.229  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30799
237.7292 +14/06/2006 12:50:01.229  000>> Good datagram received!
237.7293 +14/06/2006 12:50:01.249  000>> Listener:Received Bundle Offer
237.7294 +14/06/2006 12:50:01.249  000>> Listener:Sending Empty bundle request...
237.7295 +14/06/2006 12:50:01.249  000>> Listener(receiveBOffer):But we can not restart connection...
237.7296 +14/06/2006 12:50:01.249  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30372
237.7297 +14/06/2006 12:50:01.249  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30800
237.7298 +14/06/2006 12:50:01.249  000>> Good datagram received!
237.7299 +14/06/2006 12:50:01.249  000>> Initiator:No more requested bundles
237.7300 +14/06/2006 12:50:01.249  000>> Listener(receiveBundles):We can restart connection...
237.7301 +14/06/2006 12:50:01.349  000>> Hello Procedure:SENDSYN
237.7302 +14/06/2006 12:50:01.349  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30373
237.7303 +14/06/2006 12:50:01.439  000>> 91>>>>>>>>>>Part datagram received!
237.7304 +14/06/2006 12:50:01.439  000>> 91>>>>>>>>>>Complete!
237.7305 +14/06/2006 12:50:01.439  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30801
237.7306 +14/06/2006 12:50:01.439  000>> Good datagram received!
237.7307 +14/06/2006 12:50:01.439  000>> Receive Hello:SYNACK
237.7308 +14/06/2006 12:50:01.449  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30374
237.7309 +14/06/2006 12:50:01.549  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7310 +14/06/2006 12:50:01.549  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30375
237.7311 +14/06/2006 12:50:01.549  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30376
237.7312 +14/06/2006 12:50:01.549  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30377
237.7313 +14/06/2006 12:50:01.569  000>> 98>>>>>>>>>>Part datagram received!
237.7314 +14/06/2006 12:50:01.569  000>> 98>>>>>>>>>>Complete!
237.7315 +14/06/2006 12:50:01.569  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30802
237.7316 +14/06/2006 12:50:01.569  000>> Good datagram received!
237.7317 +14/06/2006 12:50:01.569  000>> Listener:Received dictionary
237.7318 +14/06/2006 12:50:01.579  000>> 90>>>>>>>>>>Part datagram received!
237.7319 +14/06/2006 12:50:01.579  000>> 90>>>>>>>>>>Complete!
237.7320 +14/06/2006 12:50:01.579  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30803
237.7321 +14/06/2006 12:50:01.579  000>> Good datagram received!
237.7322 +14/06/2006 12:50:01.579  000>> Listener:Received RIB
237.7323 +14/06/2006 12:50:01.730  000>> 716>>>>>>>>>>Part datagram received!
237.7324 +14/06/2006 12:50:01.740  000>> 716>>>>>>>>>>Complete!
237.7325 +14/06/2006 12:50:01.740  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30804
237.7326 +14/06/2006 12:50:01.740  000>> Good datagram received!
237.7327 +14/06/2006 12:50:01.750  000>> Listener:Received Bundle Offer
237.7328 +14/06/2006 12:50:01.750  000>> Listener:Sending Empty bundle request...
237.7329 +14/06/2006 12:50:01.750  000>> Listener(receiveBOffer):But we can not restart connection...
237.7330 +14/06/2006 12:50:01.750  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30378
237.7331 +14/06/2006 12:50:01.750  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30805
237.7332 +14/06/2006 12:50:01.760  000>> Good datagram received!
237.7333 +14/06/2006 12:50:01.760  000>> Initiator:No more requested bundles
237.7334 +14/06/2006 12:50:01.760  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.7335 +14/06/2006 12:50:01.890  000>> 91>>>>>>>>>>Part datagram received!
237.7336 +14/06/2006 12:50:01.890  000>> 91>>>>>>>>>>Complete!
237.7337 +14/06/2006 12:50:01.890  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30806
237.7338 +14/06/2006 12:50:01.890  000>> Good datagram received!
237.7339 +14/06/2006 12:50:01.890  000>> Receive Hello:SYN
237.7340 +14/06/2006 12:50:01.890  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30379
237.7341 +14/06/2006 12:50:01.920  000>> 91>>>>>>>>>>Part datagram received!
237.7342 +14/06/2006 12:50:01.920  000>> 91>>>>>>>>>>Complete!
237.7343 +14/06/2006 12:50:01.920  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30807
237.7344 +14/06/2006 12:50:01.920  000>> Good datagram received!
237.7345 +14/06/2006 12:50:01.920  000>> Receive Hello:ACK
237.7346 +14/06/2006 12:50:02.020  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7347 +14/06/2006 12:50:02.020  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30380
237.7348 +14/06/2006 12:50:02.030  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30381
237.7349 +14/06/2006 12:50:02.030  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30382
237.7350 +14/06/2006 12:50:02.050  000>> 98>>>>>>>>>>Part datagram received!
237.7351 +14/06/2006 12:50:02.050  000>> 98>>>>>>>>>>Complete!
237.7352 +14/06/2006 12:50:02.050  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30808
237.7353 +14/06/2006 12:50:02.050  000>> Good datagram received!
237.7354 +14/06/2006 12:50:02.050  000>> Listener:Received dictionary
237.7355 +14/06/2006 12:50:02.050  000>> 90>>>>>>>>>>Part datagram received!
237.7356 +14/06/2006 12:50:02.050  000>> 90>>>>>>>>>>Complete!
237.7357 +14/06/2006 12:50:02.050  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30809
237.7358 +14/06/2006 12:50:02.050  000>> Good datagram received!
237.7359 +14/06/2006 12:50:02.050  000>> Listener:Received RIB
237.7360 +14/06/2006 12:50:02.230  000>> 716>>>>>>>>>>Part datagram received!
237.7361 +14/06/2006 12:50:02.240  000>> 716>>>>>>>>>>Complete!
237.7362 +14/06/2006 12:50:02.240  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30810
237.7363 +14/06/2006 12:50:02.240  000>> Good datagram received!
237.7364 +14/06/2006 12:50:02.250  000>> Listener:Received Bundle Offer
237.7365 +14/06/2006 12:50:02.250  000>> Listener:Sending Empty bundle request...
237.7366 +14/06/2006 12:50:02.260  000>> Listener(receiveBOffer):But we can not restart connection...
237.7367 +14/06/2006 12:50:02.260  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30383
237.7368 +14/06/2006 12:50:02.260  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30811
237.7369 +14/06/2006 12:50:02.260  000>> Good datagram received!
237.7370 +14/06/2006 12:50:02.260  000>> Initiator:No more requested bundles
237.7371 +14/06/2006 12:50:02.260  000>> Listener(receiveBundles):We can restart connection...
237.7372 +14/06/2006 12:50:02.360  000>> Hello Procedure:SENDSYN
237.7373 +14/06/2006 12:50:02.360  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30384
237.7374 +14/06/2006 12:50:02.441  000>> 91>>>>>>>>>>Part datagram received!
237.7375 +14/06/2006 12:50:02.441  000>> 91>>>>>>>>>>Complete!
237.7376 +14/06/2006 12:50:02.441  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30812
237.7377 +14/06/2006 12:50:02.441  000>> Good datagram received!
237.7378 +14/06/2006 12:50:02.441  000>> Receive Hello:SYNACK
237.7379 +14/06/2006 12:50:02.441  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30385
237.7380 +14/06/2006 12:50:02.541  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7381 +14/06/2006 12:50:02.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30386
237.7382 +14/06/2006 12:50:02.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30387
237.7383 +14/06/2006 12:50:02.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30388
237.7384 +14/06/2006 12:50:02.571  000>> 98>>>>>>>>>>Part datagram received!
237.7385 +14/06/2006 12:50:02.571  000>> 98>>>>>>>>>>Complete!
237.7386 +14/06/2006 12:50:02.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30813
237.7387 +14/06/2006 12:50:02.571  000>> Good datagram received!
237.7388 +14/06/2006 12:50:02.571  000>> Listener:Received dictionary
237.7389 +14/06/2006 12:50:02.581  000>> 90>>>>>>>>>>Part datagram received!
237.7390 +14/06/2006 12:50:02.581  000>> 90>>>>>>>>>>Complete!
237.7391 +14/06/2006 12:50:02.581  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30814
237.7392 +14/06/2006 12:50:02.581  000>> Good datagram received!
237.7393 +14/06/2006 12:50:02.581  000>> Listener:Received RIB
237.7394 +14/06/2006 12:50:02.731  000>> 716>>>>>>>>>>Part datagram received!
237.7395 +14/06/2006 12:50:02.741  000>> 716>>>>>>>>>>Complete!
237.7396 +14/06/2006 12:50:02.741  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30815
237.7397 +14/06/2006 12:50:02.741  000>> Good datagram received!
237.7398 +14/06/2006 12:50:02.751  000>> Listener:Received Bundle Offer
237.7399 +14/06/2006 12:50:02.751  000>> Listener:Sending Empty bundle request...
237.7400 +14/06/2006 12:50:02.751  000>> Listener(receiveBOffer):But we can not restart connection...
237.7401 +14/06/2006 12:50:02.751  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30389
237.7402 +14/06/2006 12:50:02.751  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30816
237.7403 +14/06/2006 12:50:02.751  000>> Good datagram received!
237.7404 +14/06/2006 12:50:02.761  000>> Initiator:No more requested bundles
237.7405 +14/06/2006 12:50:02.761  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.7406 +14/06/2006 12:50:02.881  000>> 91>>>>>>>>>>Part datagram received!
237.7407 +14/06/2006 12:50:02.881  000>> 91>>>>>>>>>>Complete!
237.7408 +14/06/2006 12:50:02.881  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30817
237.7409 +14/06/2006 12:50:02.881  000>> Good datagram received!
237.7410 +14/06/2006 12:50:02.881  000>> Receive Hello:SYN
237.7411 +14/06/2006 12:50:02.881  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30390
237.7412 +14/06/2006 12:50:02.911  000>> 91>>>>>>>>>>Part datagram received!
237.7413 +14/06/2006 12:50:02.911  000>> 91>>>>>>>>>>Complete!
237.7414 +14/06/2006 12:50:02.911  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30818
237.7415 +14/06/2006 12:50:02.911  000>> Good datagram received!
237.7416 +14/06/2006 12:50:02.911  000>> Receive Hello:ACK
237.7417 +14/06/2006 12:50:03.011  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7418 +14/06/2006 12:50:03.011  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30391
237.7419 +14/06/2006 12:50:03.011  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30392
237.7420 +14/06/2006 12:50:03.011  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30393
237.7421 +14/06/2006 12:50:03.021  000>> 98>>>>>>>>>>Part datagram received!
237.7422 +14/06/2006 12:50:03.021  000>> 98>>>>>>>>>>Complete!
237.7423 +14/06/2006 12:50:03.021  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30819
237.7424 +14/06/2006 12:50:03.021  000>> Good datagram received!
237.7425 +14/06/2006 12:50:03.021  000>> Listener:Received dictionary
237.7426 +14/06/2006 12:50:03.031  000>> 90>>>>>>>>>>Part datagram received!
237.7427 +14/06/2006 12:50:03.031  000>> 90>>>>>>>>>>Complete!
237.7428 +14/06/2006 12:50:03.031  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30820
237.7429 +14/06/2006 12:50:03.031  000>> Good datagram received!
237.7430 +14/06/2006 12:50:03.031  000>> Listener:Received RIB
237.7431 +14/06/2006 12:50:03.132  000>> 716>>>>>>>>>>Part datagram received!
237.7432 +14/06/2006 12:50:03.142  000>> 716>>>>>>>>>>Complete!
237.7433 +14/06/2006 12:50:03.142  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30821
237.7434 +14/06/2006 12:50:03.142  000>> Good datagram received!
237.7435 +14/06/2006 12:50:03.152  000>> Listener:Received Bundle Offer
237.7436 +14/06/2006 12:50:03.152  000>> Listener:Sending Empty bundle request...
237.7437 +14/06/2006 12:50:03.152  000>> Listener(receiveBOffer):But we can not restart connection...
237.7438 +14/06/2006 12:50:03.152  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30394
237.7439 +14/06/2006 12:50:03.152  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30822
237.7440 +14/06/2006 12:50:03.152  000>> Good datagram received!
237.7441 +14/06/2006 12:50:03.162  000>> Initiator:No more requested bundles
237.7442 +14/06/2006 12:50:03.162  000>> Listener(receiveBundles):We can restart connection...
237.7443 +14/06/2006 12:50:03.262  000>> Hello Procedure:SENDSYN
237.7444 +14/06/2006 12:50:03.262  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30395
237.7445 +14/06/2006 12:50:03.332  000>> 91>>>>>>>>>>Part datagram received!
237.7446 +14/06/2006 12:50:03.332  000>> 91>>>>>>>>>>Complete!
237.7447 +14/06/2006 12:50:03.342  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30823
237.7448 +14/06/2006 12:50:03.342  000>> Good datagram received!
237.7449 +14/06/2006 12:50:03.342  000>> Receive Hello:SYNACK
237.7450 +14/06/2006 12:50:03.342  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30396
237.7451 +14/06/2006 12:50:03.442  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7452 +14/06/2006 12:50:03.442  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30397
237.7453 +14/06/2006 12:50:03.442  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30398
237.7454 +14/06/2006 12:50:03.442  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30399
237.7455 +14/06/2006 12:50:03.462  000>> 98>>>>>>>>>>Part datagram received!
237.7456 +14/06/2006 12:50:03.462  000>> 98>>>>>>>>>>Complete!
237.7457 +14/06/2006 12:50:03.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30824
237.7458 +14/06/2006 12:50:03.462  000>> Good datagram received!
237.7459 +14/06/2006 12:50:03.462  000>> Listener:Received dictionary
237.7460 +14/06/2006 12:50:03.462  000>> 90>>>>>>>>>>Part datagram received!
237.7461 +14/06/2006 12:50:03.462  000>> 90>>>>>>>>>>Complete!
237.7462 +14/06/2006 12:50:03.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30825
237.7463 +14/06/2006 12:50:03.462  000>> Good datagram received!
237.7464 +14/06/2006 12:50:03.472  000>> Listener:Received RIB
237.7465 +14/06/2006 12:50:03.642  000>> 716>>>>>>>>>>Part datagram received!
237.7466 +14/06/2006 12:50:03.642  000>> 716>>>>>>>>>>Complete!
237.7467 +14/06/2006 12:50:03.642  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30826
237.7468 +14/06/2006 12:50:03.642  000>> Good datagram received!
237.7469 +14/06/2006 12:50:03.652  000>> Listener:Received Bundle Offer
237.7470 +14/06/2006 12:50:03.652  000>> Listener:Sending Empty bundle request...
237.7471 +14/06/2006 12:50:03.652  000>> Listener(receiveBOffer):But we can not restart connection...
237.7472 +14/06/2006 12:50:03.652  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30400
237.7473 +14/06/2006 12:50:03.662  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30827
237.7474 +14/06/2006 12:50:03.662  000>> Good datagram received!
237.7475 +14/06/2006 12:50:03.662  000>> Initiator:No more requested bundles
237.7476 +14/06/2006 12:50:03.662  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.7477 +14/06/2006 12:50:03.782  000>> 91>>>>>>>>>>Part datagram received!
237.7478 +14/06/2006 12:50:03.782  000>> 91>>>>>>>>>>Complete!
237.7479 +14/06/2006 12:50:03.782  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30828
237.7480 +14/06/2006 12:50:03.782  000>> Good datagram received!
237.7481 +14/06/2006 12:50:03.782  000>> Receive Hello:SYN
237.7482 +14/06/2006 12:50:03.782  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30401
237.7483 +14/06/2006 12:50:03.812  000>> 91>>>>>>>>>>Part datagram received!
237.7484 +14/06/2006 12:50:03.812  000>> 91>>>>>>>>>>Complete!
237.7485 +14/06/2006 12:50:03.812  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30829
237.7486 +14/06/2006 12:50:03.812  000>> Good datagram received!
237.7487 +14/06/2006 12:50:03.812  000>> Receive Hello:ACK
237.7488 +14/06/2006 12:50:03.913  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7489 +14/06/2006 12:50:03.913  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30402
237.7490 +14/06/2006 12:50:03.913  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30403
237.7491 +14/06/2006 12:50:03.913  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30404
237.7492 +14/06/2006 12:50:03.913  000>> 98>>>>>>>>>>Part datagram received!
237.7493 +14/06/2006 12:50:03.913  000>> 98>>>>>>>>>>Complete!
237.7494 +14/06/2006 12:50:03.913  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30830
237.7495 +14/06/2006 12:50:03.913  000>> Good datagram received!
237.7496 +14/06/2006 12:50:03.923  000>> Listener:Received dictionary
237.7497 +14/06/2006 12:50:03.923  000>> 90>>>>>>>>>>Part datagram received!
237.7498 +14/06/2006 12:50:03.923  000>> 90>>>>>>>>>>Complete!
237.7499 +14/06/2006 12:50:03.923  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30831
237.7500 +14/06/2006 12:50:03.923  000>> Good datagram received!
237.7501 +14/06/2006 12:50:03.923  000>> Listener:Received RIB
237.7502 +14/06/2006 12:50:04.053  000>> 716>>>>>>>>>>Part datagram received!
237.7503 +14/06/2006 12:50:04.053  000>> 716>>>>>>>>>>Complete!
237.7504 +14/06/2006 12:50:04.053  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30832
237.7505 +14/06/2006 12:50:04.053  000>> Good datagram received!
237.7506 +14/06/2006 12:50:04.073  000>> Listener:Received Bundle Offer
237.7507 +14/06/2006 12:50:04.073  000>> Listener:Sending Empty bundle request...
237.7508 +14/06/2006 12:50:04.073  000>> Listener(receiveBOffer):But we can not restart connection...
237.7509 +14/06/2006 12:50:04.073  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30405
237.7510 +14/06/2006 12:50:04.073  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30833
237.7511 +14/06/2006 12:50:04.073  000>> Good datagram received!
237.7512 +14/06/2006 12:50:04.073  000>> Initiator:No more requested bundles
237.7513 +14/06/2006 12:50:04.073  000>> Listener(receiveBundles):We can restart connection...
237.7514 +14/06/2006 12:50:04.173  000>> Hello Procedure:SENDSYN
237.7515 +14/06/2006 12:50:04.173  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30406
237.7516 +14/06/2006 12:50:04.243  000>> 91>>>>>>>>>>Part datagram received!
237.7517 +14/06/2006 12:50:04.253  000>> 91>>>>>>>>>>Complete!
237.7518 +14/06/2006 12:50:04.253  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30834
237.7519 +14/06/2006 12:50:04.253  000>> Good datagram received!
237.7520 +14/06/2006 12:50:04.253  000>> Receive Hello:SYNACK
237.7521 +14/06/2006 12:50:04.253  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30407
237.7522 +14/06/2006 12:50:04.353  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7523 +14/06/2006 12:50:04.353  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30408
237.7524 +14/06/2006 12:50:04.353  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30409
237.7525 +14/06/2006 12:50:04.353  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30410
237.7526 +14/06/2006 12:50:04.373  000>> 98>>>>>>>>>>Part datagram received!
237.7527 +14/06/2006 12:50:04.373  000>> 98>>>>>>>>>>Complete!
237.7528 +14/06/2006 12:50:04.373  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30835
237.7529 +14/06/2006 12:50:04.373  000>> Good datagram received!
237.7530 +14/06/2006 12:50:04.373  000>> Listener:Received dictionary
237.7531 +14/06/2006 12:50:04.373  000>> 90>>>>>>>>>>Part datagram received!
237.7532 +14/06/2006 12:50:04.373  000>> 90>>>>>>>>>>Complete!
237.7533 +14/06/2006 12:50:04.373  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30836
237.7534 +14/06/2006 12:50:04.373  000>> Good datagram received!
237.7535 +14/06/2006 12:50:04.383  000>> Listener:Received RIB
237.7536 +14/06/2006 12:50:04.544  000>> 716>>>>>>>>>>Part datagram received!
237.7537 +14/06/2006 12:50:04.544  000>> 716>>>>>>>>>>Complete!
237.7538 +14/06/2006 12:50:04.544  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30837
237.7539 +14/06/2006 12:50:04.544  000>> Good datagram received!
237.7540 +14/06/2006 12:50:04.554  000>> Listener:Received Bundle Offer
237.7541 +14/06/2006 12:50:04.554  000>> Listener:Sending Empty bundle request...
237.7542 +14/06/2006 12:50:04.554  000>> Listener(receiveBOffer):But we can not restart connection...
237.7543 +14/06/2006 12:50:04.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30411
237.7544 +14/06/2006 12:50:04.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30838
237.7545 +14/06/2006 12:50:04.564  000>> Good datagram received!
237.7546 +14/06/2006 12:50:04.564  000>> Initiator:No more requested bundles
237.7547 +14/06/2006 12:50:04.564  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.7548 +14/06/2006 12:50:04.684  000>> 91>>>>>>>>>>Part datagram received!
237.7549 +14/06/2006 12:50:04.684  000>> 91>>>>>>>>>>Complete!
237.7550 +14/06/2006 12:50:04.684  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30839
237.7551 +14/06/2006 12:50:04.684  000>> Good datagram received!
237.7552 +14/06/2006 12:50:04.684  000>> Receive Hello:SYN
237.7553 +14/06/2006 12:50:04.684  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30412
237.7554 +14/06/2006 12:50:04.714  000>> 91>>>>>>>>>>Part datagram received!
237.7555 +14/06/2006 12:50:04.714  000>> 91>>>>>>>>>>Complete!
237.7556 +14/06/2006 12:50:04.714  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30840
237.7557 +14/06/2006 12:50:04.714  000>> Good datagram received!
237.7558 +14/06/2006 12:50:04.714  000>> Receive Hello:ACK
237.7559 +14/06/2006 12:50:04.814  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7560 +14/06/2006 12:50:04.814  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30413
237.7561 +14/06/2006 12:50:04.814  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30414
237.7562 +14/06/2006 12:50:04.814  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30415
237.7563 +14/06/2006 12:50:04.814  000>> 98>>>>>>>>>>Part datagram received!
237.7564 +14/06/2006 12:50:04.814  000>> 98>>>>>>>>>>Complete!
237.7565 +14/06/2006 12:50:04.814  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30841
237.7566 +14/06/2006 12:50:04.814  000>> Good datagram received!
237.7567 +14/06/2006 12:50:04.814  000>> Listener:Received dictionary
237.7568 +14/06/2006 12:50:04.824  000>> 90>>>>>>>>>>Part datagram received!
237.7569 +14/06/2006 12:50:04.824  000>> 90>>>>>>>>>>Complete!
237.7570 +14/06/2006 12:50:04.824  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30842
237.7571 +14/06/2006 12:50:04.824  000>> Good datagram received!
237.7572 +14/06/2006 12:50:04.824  000>> Listener:Received RIB
237.7573 +14/06/2006 12:50:04.824  000>> 0>>>>>>>>>>Part datagram received!
237.7574 +14/06/2006 12:50:04.824  000>> 0>>>>>>>>>>Part datagram received!
237.7575 +14/06/2006 12:50:04.824  000>> 638>>>>>>>>>>Part datagram received!
237.7576 +14/06/2006 12:50:04.824  000>> 638>>>>>>>>>>Complete!
237.7577 +14/06/2006 12:50:04.824  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30843
237.7578 +14/06/2006 12:50:04.824  000>> Good datagram received!
237.7579 +14/06/2006 12:50:04.844  000>> Listener:Received Bundle Offer
237.7580 +14/06/2006 12:50:04.844  000>> Listener:Sending Empty bundle request...
237.7581 +14/06/2006 12:50:04.844  000>> Listener(receiveBOffer):But we can not restart connection...
237.7582 +14/06/2006 12:50:04.844  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30416
237.7583 +14/06/2006 12:50:04.924  000>> 78>>>>>>>>>>Part datagram received!
237.7584 +14/06/2006 12:50:04.924  000>> 78>>>>>>>>>>Complete!
237.7585 +14/06/2006 12:50:04.924  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30844
237.7586 +14/06/2006 12:50:04.924  000>> Good datagram received!
237.7587 +14/06/2006 12:50:04.924  000>> Initiator:No more requested bundles
237.7588 +14/06/2006 12:50:04.924  000>> Listener(receiveBundles):We can restart connection...
237.7589 +14/06/2006 12:50:05.024  000>> Hello Procedure:SENDSYN
237.7590 +14/06/2006 12:50:05.024  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30417
237.7591 +14/06/2006 12:50:05.044  000>> 91>>>>>>>>>>Part datagram received!
237.7592 +14/06/2006 12:50:05.044  000>> 91>>>>>>>>>>Complete!
237.7593 +14/06/2006 12:50:05.044  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30845
237.7594 +14/06/2006 12:50:05.044  000>> Good datagram received!
237.7595 +14/06/2006 12:50:05.044  000>> Receive Hello:SYNACK
237.7596 +14/06/2006 12:50:05.044  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30418
237.7597 +14/06/2006 12:50:05.144  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7598 +14/06/2006 12:50:05.144  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30419
237.7599 +14/06/2006 12:50:05.144  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30420
237.7600 +14/06/2006 12:50:05.144  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30421
237.7601 +14/06/2006 12:50:05.164  000>> 98>>>>>>>>>>Part datagram received!
237.7602 +14/06/2006 12:50:05.164  000>> 98>>>>>>>>>>Complete!
237.7603 +14/06/2006 12:50:05.164  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30846
237.7604 +14/06/2006 12:50:05.164  000>> Good datagram received!
237.7605 +14/06/2006 12:50:05.164  000>> Listener:Received dictionary
237.7606 +14/06/2006 12:50:05.164  000>> 90>>>>>>>>>>Part datagram received!
237.7607 +14/06/2006 12:50:05.164  000>> 90>>>>>>>>>>Complete!
237.7608 +14/06/2006 12:50:05.164  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30847
237.7609 +14/06/2006 12:50:05.164  000>> Good datagram received!
237.7610 +14/06/2006 12:50:05.174  000>> Listener:Received RIB
237.7611 +14/06/2006 12:50:05.345  000>> 716>>>>>>>>>>Part datagram received!
237.7612 +14/06/2006 12:50:05.345  000>> 716>>>>>>>>>>Complete!
237.7613 +14/06/2006 12:50:05.345  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30848
237.7614 +14/06/2006 12:50:05.345  000>> Good datagram received!
237.7615 +14/06/2006 12:50:05.365  000>> Listener:Received Bundle Offer
237.7616 +14/06/2006 12:50:05.365  000>> Listener:Sending Empty bundle request...
237.7617 +14/06/2006 12:50:05.365  000>> Listener(receiveBOffer):But we can not restart connection...
237.7618 +14/06/2006 12:50:05.365  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30422
237.7619 +14/06/2006 12:50:05.365  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30849
237.7620 +14/06/2006 12:50:05.365  000>> Good datagram received!
237.7621 +14/06/2006 12:50:05.365  000>> Initiator:No more requested bundles
237.7622 +14/06/2006 12:50:05.365  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.7623 +14/06/2006 12:50:05.485  000>> 91>>>>>>>>>>Part datagram received!
237.7624 +14/06/2006 12:50:05.485  000>> 91>>>>>>>>>>Complete!
237.7625 +14/06/2006 12:50:05.485  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30850
237.7626 +14/06/2006 12:50:05.485  000>> Good datagram received!
237.7627 +14/06/2006 12:50:05.485  000>> Receive Hello:SYN
237.7628 +14/06/2006 12:50:05.485  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30423
237.7629 +14/06/2006 12:50:05.515  000>> 91>>>>>>>>>>Part datagram received!
237.7630 +14/06/2006 12:50:05.515  000>> 91>>>>>>>>>>Complete!
237.7631 +14/06/2006 12:50:05.515  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30851
237.7632 +14/06/2006 12:50:05.515  000>> Good datagram received!
237.7633 +14/06/2006 12:50:05.515  000>> Receive Hello:ACK
237.7634 +14/06/2006 12:50:05.615  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7635 +14/06/2006 12:50:05.615  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30424
237.7636 +14/06/2006 12:50:05.615  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30425
237.7637 +14/06/2006 12:50:05.615  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30426
237.7638 +14/06/2006 12:50:05.615  000>> 98>>>>>>>>>>Part datagram received!
237.7639 +14/06/2006 12:50:05.615  000>> 98>>>>>>>>>>Complete!
237.7640 +14/06/2006 12:50:05.615  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30852
237.7641 +14/06/2006 12:50:05.615  000>> Good datagram received!
237.7642 +14/06/2006 12:50:05.615  000>> Listener:Received dictionary
237.7643 +14/06/2006 12:50:05.625  000>> 0>>>>>>>>>>Part datagram received!
237.7644 +14/06/2006 12:50:05.625  000>> 0>>>>>>>>>>Part datagram received!
237.7645 +14/06/2006 12:50:05.625  000>> 90>>>>>>>>>>Part datagram received!
237.7646 +14/06/2006 12:50:05.625  000>> 90>>>>>>>>>>Complete!
237.7647 +14/06/2006 12:50:05.625  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30853
237.7648 +14/06/2006 12:50:05.625  000>> Good datagram received!
237.7649 +14/06/2006 12:50:05.625  000>> Listener:Received RIB
237.7650 +14/06/2006 12:50:05.625  000>> 638>>>>>>>>>>Part datagram received!
237.7651 +14/06/2006 12:50:05.625  000>> 638>>>>>>>>>>Complete!
237.7652 +14/06/2006 12:50:05.625  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30854
237.7653 +14/06/2006 12:50:05.625  000>> Good datagram received!
237.7654 +14/06/2006 12:50:05.645  000>> Listener:Received Bundle Offer
237.7655 +14/06/2006 12:50:05.645  000>> Listener:Sending Empty bundle request...
237.7656 +14/06/2006 12:50:05.645  000>> Listener(receiveBOffer):But we can not restart connection...
237.7657 +14/06/2006 12:50:05.645  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30427
237.7658 +14/06/2006 12:50:05.725  000>> 78>>>>>>>>>>Part datagram received!
237.7659 +14/06/2006 12:50:05.725  000>> 78>>>>>>>>>>Complete!
237.7660 +14/06/2006 12:50:05.725  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30855
237.7661 +14/06/2006 12:50:05.725  000>> Good datagram received!
237.7662 +14/06/2006 12:50:05.735  000>> Initiator:No more requested bundles
237.7663 +14/06/2006 12:50:05.735  000>> Listener(receiveBundles):We can restart connection...
237.7664 +14/06/2006 12:50:05.835  000>> Hello Procedure:SENDSYN
237.7665 +14/06/2006 12:50:05.835  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30428
237.7666 +14/06/2006 12:50:05.895  000>> 91>>>>>>>>>>Part datagram received!
237.7667 +14/06/2006 12:50:05.895  000>> 91>>>>>>>>>>Complete!
237.7668 +14/06/2006 12:50:05.895  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30856
237.7669 +14/06/2006 12:50:05.895  000>> Good datagram received!
237.7670 +14/06/2006 12:50:05.895  000>> Receive Hello:SYNACK
237.7671 +14/06/2006 12:50:05.906  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30429
237.7672 +14/06/2006 12:50:06.006  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7673 +14/06/2006 12:50:06.006  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30430
237.7674 +14/06/2006 12:50:06.006  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30431
237.7675 +14/06/2006 12:50:06.006  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30432
237.7676 +14/06/2006 12:50:06.096  000>> 78>>>>>>>>>>Part datagram received!
237.7677 +14/06/2006 12:50:06.096  000>> 78>>>>>>>>>>Complete!
237.7678 +14/06/2006 12:50:06.096  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30857
237.7679 +14/06/2006 12:50:06.096  000>> Good datagram received!
237.7680 +14/06/2006 12:50:06.096  000>> Initiator:No more requested bundles
237.7681 +14/06/2006 12:50:06.096  000>> Initiator:But we can not restart connection...
237.7682 +14/06/2006 12:50:06.246  000>> 826>>>>>>>>>>Part datagram received!
237.7683 +14/06/2006 12:50:06.246  000>> 826>>>>>>>>>>Complete!
237.7684 +14/06/2006 12:50:06.246  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30858
237.7685 +14/06/2006 12:50:06.246  000>> Good datagram received!
237.7686 +14/06/2006 12:50:06.246  000>> Listener:Received dictionary
237.7687 +14/06/2006 12:50:06.256  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30859
237.7688 +14/06/2006 12:50:06.256  000>> Good datagram received!
237.7689 +14/06/2006 12:50:06.256  000>> Listener:Received RIB
237.7690 +14/06/2006 12:50:06.256  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30860
237.7691 +14/06/2006 12:50:06.256  000>> Good datagram received!
237.7692 +14/06/2006 12:50:06.266  000>> Listener:Received Bundle Offer
237.7693 +14/06/2006 12:50:06.276  000>> Listener:Sending Empty bundle request...
237.7694 +14/06/2006 12:50:06.276  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.7695 +14/06/2006 12:50:06.276  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30433
237.7696 +14/06/2006 12:50:06.396  000>> 91>>>>>>>>>>Part datagram received!
237.7697 +14/06/2006 12:50:06.396  000>> 91>>>>>>>>>>Complete!
237.7698 +14/06/2006 12:50:06.396  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30861
237.7699 +14/06/2006 12:50:06.396  000>> Good datagram received!
237.7700 +14/06/2006 12:50:06.396  000>> Receive Hello:SYN
237.7701 +14/06/2006 12:50:06.396  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30434
237.7702 +14/06/2006 12:50:06.446  000>> 91>>>>>>>>>>Part datagram received!
237.7703 +14/06/2006 12:50:06.446  000>> 91>>>>>>>>>>Complete!
237.7704 +14/06/2006 12:50:06.446  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30862
237.7705 +14/06/2006 12:50:06.446  000>> Good datagram received!
237.7706 +14/06/2006 12:50:06.446  000>> Receive Hello:ACK
237.7707 +14/06/2006 12:50:06.546  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7708 +14/06/2006 12:50:06.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30435
237.7709 +14/06/2006 12:50:06.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30436
237.7710 +14/06/2006 12:50:06.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30437
237.7711 +14/06/2006 12:50:06.546  000>> 98>>>>>>>>>>Part datagram received!
237.7712 +14/06/2006 12:50:06.546  000>> 98>>>>>>>>>>Complete!
237.7713 +14/06/2006 12:50:06.546  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30863
237.7714 +14/06/2006 12:50:06.546  000>> Good datagram received!
237.7715 +14/06/2006 12:50:06.556  000>> Listener:Received dictionary
237.7716 +14/06/2006 12:50:06.556  000>> 90>>>>>>>>>>Part datagram received!
237.7717 +14/06/2006 12:50:06.556  000>> 90>>>>>>>>>>Complete!
237.7718 +14/06/2006 12:50:06.556  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30864
237.7719 +14/06/2006 12:50:06.556  000>> Good datagram received!
237.7720 +14/06/2006 12:50:06.556  000>> Listener:Received RIB
237.7721 +14/06/2006 12:50:06.556  000>> 0>>>>>>>>>>Part datagram received!
237.7722 +14/06/2006 12:50:06.556  000>> 0>>>>>>>>>>Part datagram received!
237.7723 +14/06/2006 12:50:06.576  000>> 638>>>>>>>>>>Part datagram received!
237.7724 +14/06/2006 12:50:06.576  000>> 638>>>>>>>>>>Complete!
237.7725 +14/06/2006 12:50:06.576  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30865
237.7726 +14/06/2006 12:50:06.576  000>> Good datagram received!
237.7727 +14/06/2006 12:50:06.586  000>> Listener:Received Bundle Offer
237.7728 +14/06/2006 12:50:06.597  000>> Listener:Sending Empty bundle request...
237.7729 +14/06/2006 12:50:06.597  000>> Listener(receiveBOffer):But we can not restart connection...
237.7730 +14/06/2006 12:50:06.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30438
237.7731 +14/06/2006 12:50:06.677  000>> 78>>>>>>>>>>Part datagram received!
237.7732 +14/06/2006 12:50:06.677  000>> 78>>>>>>>>>>Complete!
237.7733 +14/06/2006 12:50:06.677  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30866
237.7734 +14/06/2006 12:50:06.677  000>> Good datagram received!
237.7735 +14/06/2006 12:50:06.677  000>> Initiator:No more requested bundles
237.7736 +14/06/2006 12:50:06.677  000>> Listener(receiveBundles):We can restart connection...
237.7737 +14/06/2006 12:50:06.777  000>> Hello Procedure:SENDSYN
237.7738 +14/06/2006 12:50:06.777  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30439
237.7739 +14/06/2006 12:50:06.797  000>> 91>>>>>>>>>>Part datagram received!
237.7740 +14/06/2006 12:50:06.797  000>> 91>>>>>>>>>>Complete!
237.7741 +14/06/2006 12:50:06.797  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30867
237.7742 +14/06/2006 12:50:06.797  000>> Good datagram received!
237.7743 +14/06/2006 12:50:06.797  000>> Receive Hello:SYNACK
237.7744 +14/06/2006 12:50:06.797  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30440
237.7745 +14/06/2006 12:50:06.897  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7746 +14/06/2006 12:50:06.897  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30441
237.7747 +14/06/2006 12:50:06.897  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30442
237.7748 +14/06/2006 12:50:06.897  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30443
237.7749 +14/06/2006 12:50:06.917  000>> 98>>>>>>>>>>Part datagram received!
237.7750 +14/06/2006 12:50:06.917  000>> 98>>>>>>>>>>Complete!
237.7751 +14/06/2006 12:50:06.917  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30868
237.7752 +14/06/2006 12:50:06.917  000>> Good datagram received!
237.7753 +14/06/2006 12:50:06.917  000>> Listener:Received dictionary
237.7754 +14/06/2006 12:50:06.917  000>> 90>>>>>>>>>>Part datagram received!
237.7755 +14/06/2006 12:50:06.927  000>> 90>>>>>>>>>>Complete!
237.7756 +14/06/2006 12:50:06.927  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30869
237.7757 +14/06/2006 12:50:06.927  000>> Good datagram received!
237.7758 +14/06/2006 12:50:06.927  000>> Listener:Received RIB
237.7759 +14/06/2006 12:50:07.047  000>> 716>>>>>>>>>>Part datagram received!
237.7760 +14/06/2006 12:50:07.047  000>> 716>>>>>>>>>>Complete!
237.7761 +14/06/2006 12:50:07.047  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30870
237.7762 +14/06/2006 12:50:07.047  000>> Good datagram received!
237.7763 +14/06/2006 12:50:07.067  000>> Listener:Received Bundle Offer
237.7764 +14/06/2006 12:50:07.067  000>> Listener:Sending Empty bundle request...
237.7765 +14/06/2006 12:50:07.067  000>> Listener(receiveBOffer):But we can not restart connection...
237.7766 +14/06/2006 12:50:07.067  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30444
237.7767 +14/06/2006 12:50:07.067  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30871
237.7768 +14/06/2006 12:50:07.067  000>> Good datagram received!
237.7769 +14/06/2006 12:50:07.077  000>> Initiator:No more requested bundles
237.7770 +14/06/2006 12:50:07.077  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.7771 +14/06/2006 12:50:07.217  000>> 91>>>>>>>>>>Part datagram received!
237.7772 +14/06/2006 12:50:07.217  000>> 91>>>>>>>>>>Complete!
237.7773 +14/06/2006 12:50:07.217  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30872
237.7774 +14/06/2006 12:50:07.217  000>> Good datagram received!
237.7775 +14/06/2006 12:50:07.217  000>> Receive Hello:SYN
237.7776 +14/06/2006 12:50:07.217  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30445
237.7777 +14/06/2006 12:50:07.247  000>> 91>>>>>>>>>>Part datagram received!
237.7778 +14/06/2006 12:50:07.247  000>> 91>>>>>>>>>>Complete!
237.7779 +14/06/2006 12:50:07.247  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30873
237.7780 +14/06/2006 12:50:07.247  000>> Good datagram received!
237.7781 +14/06/2006 12:50:07.247  000>> Receive Hello:ACK
237.7782 +14/06/2006 12:50:07.348  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7783 +14/06/2006 12:50:07.348  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30446
237.7784 +14/06/2006 12:50:07.348  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30447
237.7785 +14/06/2006 12:50:07.348  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30448
237.7786 +14/06/2006 12:50:07.378  000>> 98>>>>>>>>>>Part datagram received!
237.7787 +14/06/2006 12:50:07.378  000>> 98>>>>>>>>>>Complete!
237.7788 +14/06/2006 12:50:07.378  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30874
237.7789 +14/06/2006 12:50:07.378  000>> Good datagram received!
237.7790 +14/06/2006 12:50:07.388  000>> Listener:Received dictionary
237.7791 +14/06/2006 12:50:07.388  000>> 90>>>>>>>>>>Part datagram received!
237.7792 +14/06/2006 12:50:07.388  000>> 90>>>>>>>>>>Complete!
237.7793 +14/06/2006 12:50:07.388  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30875
237.7794 +14/06/2006 12:50:07.388  000>> Good datagram received!
237.7795 +14/06/2006 12:50:07.388  000>> Listener:Received RIB
237.7796 +14/06/2006 12:50:07.548  000>> 716>>>>>>>>>>Part datagram received!
237.7797 +14/06/2006 12:50:07.548  000>> 716>>>>>>>>>>Complete!
237.7798 +14/06/2006 12:50:07.548  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30876
237.7799 +14/06/2006 12:50:07.558  000>> Good datagram received!
237.7800 +14/06/2006 12:50:07.568  000>> Listener:Received Bundle Offer
237.7801 +14/06/2006 12:50:07.568  000>> Listener:Sending Empty bundle request...
237.7802 +14/06/2006 12:50:07.568  000>> Listener(receiveBOffer):But we can not restart connection...
237.7803 +14/06/2006 12:50:07.568  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30449
237.7804 +14/06/2006 12:50:07.568  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30877
237.7805 +14/06/2006 12:50:07.568  000>> Good datagram received!
237.7806 +14/06/2006 12:50:07.568  000>> Initiator:No more requested bundles
237.7807 +14/06/2006 12:50:07.568  000>> Listener(receiveBundles):We can restart connection...
237.7808 +14/06/2006 12:50:07.668  000>> Hello Procedure:SENDSYN
237.7809 +14/06/2006 12:50:07.668  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30450
237.7810 +14/06/2006 12:50:07.768  000>> 91>>>>>>>>>>Part datagram received!
237.7811 +14/06/2006 12:50:07.768  000>> 91>>>>>>>>>>Complete!
237.7812 +14/06/2006 12:50:07.768  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30878
237.7813 +14/06/2006 12:50:07.768  000>> Good datagram received!
237.7814 +14/06/2006 12:50:07.768  000>> Receive Hello:SYNACK
237.7815 +14/06/2006 12:50:07.768  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30451
237.7816 +14/06/2006 12:50:07.868  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7817 +14/06/2006 12:50:07.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30452
237.7818 +14/06/2006 12:50:07.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30453
237.7819 +14/06/2006 12:50:07.868  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30454
237.7820 +14/06/2006 12:50:07.888  000>> 98>>>>>>>>>>Part datagram received!
237.7821 +14/06/2006 12:50:07.888  000>> 98>>>>>>>>>>Complete!
237.7822 +14/06/2006 12:50:07.888  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30879
237.7823 +14/06/2006 12:50:07.888  000>> Good datagram received!
237.7824 +14/06/2006 12:50:07.898  000>> Listener:Received dictionary
237.7825 +14/06/2006 12:50:07.898  000>> 90>>>>>>>>>>Part datagram received!
237.7826 +14/06/2006 12:50:07.898  000>> 90>>>>>>>>>>Complete!
237.7827 +14/06/2006 12:50:07.898  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30880
237.7828 +14/06/2006 12:50:07.898  000>> Good datagram received!
237.7829 +14/06/2006 12:50:07.898  000>> Listener:Received RIB
237.7830 +14/06/2006 12:50:08.049  000>> 716>>>>>>>>>>Part datagram received!
237.7831 +14/06/2006 12:50:08.049  000>> 716>>>>>>>>>>Complete!
237.7832 +14/06/2006 12:50:08.049  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30881
237.7833 +14/06/2006 12:50:08.059  000>> Good datagram received!
237.7834 +14/06/2006 12:50:08.069  000>> Listener:Received Bundle Offer
237.7835 +14/06/2006 12:50:08.069  000>> Listener:Sending Empty bundle request...
237.7836 +14/06/2006 12:50:08.069  000>> Listener(receiveBOffer):But we can not restart connection...
237.7837 +14/06/2006 12:50:08.069  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30455
237.7838 +14/06/2006 12:50:08.069  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30882
237.7839 +14/06/2006 12:50:08.069  000>> Good datagram received!
237.7840 +14/06/2006 12:50:08.069  000>> Initiator:No more requested bundles
237.7841 +14/06/2006 12:50:08.079  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.7842 +14/06/2006 12:50:08.189  000>> 91>>>>>>>>>>Part datagram received!
237.7843 +14/06/2006 12:50:08.189  000>> 91>>>>>>>>>>Complete!
237.7844 +14/06/2006 12:50:08.189  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30883
237.7845 +14/06/2006 12:50:08.189  000>> Good datagram received!
237.7846 +14/06/2006 12:50:08.189  000>> Receive Hello:SYN
237.7847 +14/06/2006 12:50:08.189  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30456
237.7848 +14/06/2006 12:50:08.209  000>> 91>>>>>>>>>>Part datagram received!
237.7849 +14/06/2006 12:50:08.219  000>> 91>>>>>>>>>>Complete!
237.7850 +14/06/2006 12:50:08.219  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30884
237.7851 +14/06/2006 12:50:08.219  000>> Good datagram received!
237.7852 +14/06/2006 12:50:08.219  000>> Receive Hello:ACK
237.7853 +14/06/2006 12:50:08.319  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7854 +14/06/2006 12:50:08.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30457
237.7855 +14/06/2006 12:50:08.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30458
237.7856 +14/06/2006 12:50:08.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30459
237.7857 +14/06/2006 12:50:08.319  000>> 98>>>>>>>>>>Part datagram received!
237.7858 +14/06/2006 12:50:08.319  000>> 98>>>>>>>>>>Complete!
237.7859 +14/06/2006 12:50:08.329  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30885
237.7860 +14/06/2006 12:50:08.329  000>> Good datagram received!
237.7861 +14/06/2006 12:50:08.329  000>> Listener:Received dictionary
237.7862 +14/06/2006 12:50:08.329  000>> 90>>>>>>>>>>Part datagram received!
237.7863 +14/06/2006 12:50:08.329  000>> 90>>>>>>>>>>Complete!
237.7864 +14/06/2006 12:50:08.329  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30886
237.7865 +14/06/2006 12:50:08.329  000>> Good datagram received!
237.7866 +14/06/2006 12:50:08.339  000>> Listener:Received RIB
237.7867 +14/06/2006 12:50:08.339  000>> 0>>>>>>>>>>Part datagram received!
237.7868 +14/06/2006 12:50:08.339  000>> 0>>>>>>>>>>Part datagram received!
237.7869 +14/06/2006 12:50:08.339  000>> 638>>>>>>>>>>Part datagram received!
237.7870 +14/06/2006 12:50:08.339  000>> 638>>>>>>>>>>Complete!
237.7871 +14/06/2006 12:50:08.339  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30887
237.7872 +14/06/2006 12:50:08.339  000>> Good datagram received!
237.7873 +14/06/2006 12:50:08.359  000>> Listener:Received Bundle Offer
237.7874 +14/06/2006 12:50:08.359  000>> Listener:Sending Empty bundle request...
237.7875 +14/06/2006 12:50:08.359  000>> Listener(receiveBOffer):But we can not restart connection...
237.7876 +14/06/2006 12:50:08.359  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30460
237.7877 +14/06/2006 12:50:08.439  000>> 78>>>>>>>>>>Part datagram received!
237.7878 +14/06/2006 12:50:08.439  000>> 78>>>>>>>>>>Complete!
237.7879 +14/06/2006 12:50:08.439  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30888
237.7880 +14/06/2006 12:50:08.439  000>> Good datagram received!
237.7881 +14/06/2006 12:50:08.439  000>> Initiator:No more requested bundles
237.7882 +14/06/2006 12:50:08.439  000>> Listener(receiveBundles):We can restart connection...
237.7883 +14/06/2006 12:50:08.539  000>> Hello Procedure:SENDSYN
237.7884 +14/06/2006 12:50:08.539  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30461
237.7885 +14/06/2006 12:50:08.549  000>> 91>>>>>>>>>>Part datagram received!
237.7886 +14/06/2006 12:50:08.559  000>> 91>>>>>>>>>>Complete!
237.7887 +14/06/2006 12:50:08.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30889
237.7888 +14/06/2006 12:50:08.559  000>> Good datagram received!
237.7889 +14/06/2006 12:50:08.559  000>> Receive Hello:SYNACK
237.7890 +14/06/2006 12:50:08.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30462
237.7891 +14/06/2006 12:50:08.659  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7892 +14/06/2006 12:50:08.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30463
237.7893 +14/06/2006 12:50:08.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30464
237.7894 +14/06/2006 12:50:08.659  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30465
237.7895 +14/06/2006 12:50:08.679  000>> 98>>>>>>>>>>Part datagram received!
237.7896 +14/06/2006 12:50:08.679  000>> 98>>>>>>>>>>Complete!
237.7897 +14/06/2006 12:50:08.679  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30890
237.7898 +14/06/2006 12:50:08.679  000>> Good datagram received!
237.7899 +14/06/2006 12:50:08.679  000>> Listener:Received dictionary
237.7900 +14/06/2006 12:50:08.679  000>> 90>>>>>>>>>>Part datagram received!
237.7901 +14/06/2006 12:50:08.679  000>> 90>>>>>>>>>>Complete!
237.7902 +14/06/2006 12:50:08.679  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30891
237.7903 +14/06/2006 12:50:08.690  000>> Good datagram received!
237.7904 +14/06/2006 12:50:08.690  000>> Listener:Received RIB
237.7905 +14/06/2006 12:50:08.850  000>> 716>>>>>>>>>>Part datagram received!
237.7906 +14/06/2006 12:50:08.860  000>> 716>>>>>>>>>>Complete!
237.7907 +14/06/2006 12:50:08.860  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30892
237.7908 +14/06/2006 12:50:08.860  000>> Good datagram received!
237.7909 +14/06/2006 12:50:08.870  000>> Listener:Received Bundle Offer
237.7910 +14/06/2006 12:50:08.870  000>> Listener:Sending Empty bundle request...
237.7911 +14/06/2006 12:50:08.870  000>> Listener(receiveBOffer):But we can not restart connection...
237.7912 +14/06/2006 12:50:08.870  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30466
237.7913 +14/06/2006 12:50:08.870  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30893
237.7914 +14/06/2006 12:50:08.880  000>> Good datagram received!
237.7915 +14/06/2006 12:50:08.880  000>> Initiator:No more requested bundles
237.7916 +14/06/2006 12:50:08.880  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.7917 +14/06/2006 12:50:09.060  000>> 91>>>>>>>>>>Part datagram received!
237.7918 +14/06/2006 12:50:09.060  000>> 91>>>>>>>>>>Complete!
237.7919 +14/06/2006 12:50:09.060  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30894
237.7920 +14/06/2006 12:50:09.060  000>> Good datagram received!
237.7921 +14/06/2006 12:50:09.060  000>> Receive Hello:SYN
237.7922 +14/06/2006 12:50:09.060  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30467
237.7923 +14/06/2006 12:50:09.080  000>> 91>>>>>>>>>>Part datagram received!
237.7924 +14/06/2006 12:50:09.080  000>> 91>>>>>>>>>>Complete!
237.7925 +14/06/2006 12:50:09.080  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30895
237.7926 +14/06/2006 12:50:09.080  000>> Good datagram received!
237.7927 +14/06/2006 12:50:09.080  000>> Receive Hello:ACK
237.7928 +14/06/2006 12:50:09.180  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7929 +14/06/2006 12:50:09.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30468
237.7930 +14/06/2006 12:50:09.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30469
237.7931 +14/06/2006 12:50:09.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30470
237.7932 +14/06/2006 12:50:09.180  000>> 98>>>>>>>>>>Part datagram received!
237.7933 +14/06/2006 12:50:09.180  000>> 98>>>>>>>>>>Complete!
237.7934 +14/06/2006 12:50:09.180  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30896
237.7935 +14/06/2006 12:50:09.180  000>> Good datagram received!
237.7936 +14/06/2006 12:50:09.180  000>> Listener:Received dictionary
237.7937 +14/06/2006 12:50:09.190  000>> 90>>>>>>>>>>Part datagram received!
237.7938 +14/06/2006 12:50:09.190  000>> 90>>>>>>>>>>Complete!
237.7939 +14/06/2006 12:50:09.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30897
237.7940 +14/06/2006 12:50:09.190  000>> Good datagram received!
237.7941 +14/06/2006 12:50:09.190  000>> Listener:Received RIB
237.7942 +14/06/2006 12:50:09.190  000>> 0>>>>>>>>>>Part datagram received!
237.7943 +14/06/2006 12:50:09.190  000>> 0>>>>>>>>>>Part datagram received!
237.7944 +14/06/2006 12:50:09.190  000>> 638>>>>>>>>>>Part datagram received!
237.7945 +14/06/2006 12:50:09.190  000>> 638>>>>>>>>>>Complete!
237.7946 +14/06/2006 12:50:09.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30898
237.7947 +14/06/2006 12:50:09.190  000>> Good datagram received!
237.7948 +14/06/2006 12:50:09.210  000>> Listener:Received Bundle Offer
237.7949 +14/06/2006 12:50:09.210  000>> Listener:Sending Empty bundle request...
237.7950 +14/06/2006 12:50:09.210  000>> Listener(receiveBOffer):But we can not restart connection...
237.7951 +14/06/2006 12:50:09.210  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30471
237.7952 +14/06/2006 12:50:09.290  000>> 78>>>>>>>>>>Part datagram received!
237.7953 +14/06/2006 12:50:09.290  000>> 78>>>>>>>>>>Complete!
237.7954 +14/06/2006 12:50:09.290  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30899
237.7955 +14/06/2006 12:50:09.290  000>> Good datagram received!
237.7956 +14/06/2006 12:50:09.290  000>> Initiator:No more requested bundles
237.7957 +14/06/2006 12:50:09.290  000>> Listener(receiveBundles):We can restart connection...
237.7958 +14/06/2006 12:50:09.391  000>> Hello Procedure:SENDSYN
237.7959 +14/06/2006 12:50:09.391  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30472
237.7960 +14/06/2006 12:50:09.411  000>> 91>>>>>>>>>>Part datagram received!
237.7961 +14/06/2006 12:50:09.411  000>> 91>>>>>>>>>>Complete!
237.7962 +14/06/2006 12:50:09.411  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30900
237.7963 +14/06/2006 12:50:09.411  000>> Good datagram received!
237.7964 +14/06/2006 12:50:09.411  000>> Receive Hello:SYNACK
237.7965 +14/06/2006 12:50:09.411  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30473
237.7966 +14/06/2006 12:50:09.511  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.7967 +14/06/2006 12:50:09.511  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30474
237.7968 +14/06/2006 12:50:09.511  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30475
237.7969 +14/06/2006 12:50:09.511  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30476
237.7970 +14/06/2006 12:50:09.601  000>> 78>>>>>>>>>>Part datagram received!
237.7971 +14/06/2006 12:50:09.601  000>> 78>>>>>>>>>>Complete!
237.7972 +14/06/2006 12:50:09.601  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30901
237.7973 +14/06/2006 12:50:09.601  000>> Good datagram received!
237.7974 +14/06/2006 12:50:09.611  000>> Initiator:No more requested bundles
237.7975 +14/06/2006 12:50:09.611  000>> Initiator:But we can not restart connection...
237.7976 +14/06/2006 12:50:09.761  000>> 826>>>>>>>>>>Part datagram received!
237.7977 +14/06/2006 12:50:09.761  000>> 826>>>>>>>>>>Complete!
237.7978 +14/06/2006 12:50:09.761  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30902
237.7979 +14/06/2006 12:50:09.761  000>> Good datagram received!
237.7980 +14/06/2006 12:50:09.761  000>> Listener:Received dictionary
237.7981 +14/06/2006 12:50:09.761  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30903
237.7982 +14/06/2006 12:50:09.761  000>> Good datagram received!
237.7983 +14/06/2006 12:50:09.761  000>> Listener:Received RIB
237.7984 +14/06/2006 12:50:09.761  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30904
237.7985 +14/06/2006 12:50:09.761  000>> Good datagram received!
237.7986 +14/06/2006 12:50:09.781  000>> Listener:Received Bundle Offer
237.7987 +14/06/2006 12:50:09.781  000>> Listener:Sending Empty bundle request...
237.7988 +14/06/2006 12:50:09.781  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.7989 +14/06/2006 12:50:09.781  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30477
237.7990 +14/06/2006 12:50:09.911  000>> 91>>>>>>>>>>Part datagram received!
237.7991 +14/06/2006 12:50:09.911  000>> 91>>>>>>>>>>Complete!
237.7992 +14/06/2006 12:50:09.911  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30905
237.7993 +14/06/2006 12:50:09.911  000>> Good datagram received!
237.7994 +14/06/2006 12:50:09.911  000>> Receive Hello:SYN
237.7995 +14/06/2006 12:50:09.911  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30478
237.7996 +14/06/2006 12:50:09.941  000>> 91>>>>>>>>>>Part datagram received!
237.7997 +14/06/2006 12:50:09.941  000>> 91>>>>>>>>>>Complete!
237.7998 +14/06/2006 12:50:09.941  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30906
237.7999 +14/06/2006 12:50:09.941  000>> Good datagram received!
237.8000 +14/06/2006 12:50:09.941  000>> Receive Hello:ACK
237.8001 +14/06/2006 12:50:10.041  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8002 +14/06/2006 12:50:10.041  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30479
237.8003 +14/06/2006 12:50:10.041  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30480
237.8004 +14/06/2006 12:50:10.041  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30481
237.8005 +14/06/2006 12:50:10.071  000>> 98>>>>>>>>>>Part datagram received!
237.8006 +14/06/2006 12:50:10.071  000>> 98>>>>>>>>>>Complete!
237.8007 +14/06/2006 12:50:10.071  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30907
237.8008 +14/06/2006 12:50:10.071  000>> Good datagram received!
237.8009 +14/06/2006 12:50:10.071  000>> Listener:Received dictionary
237.8010 +14/06/2006 12:50:10.082  000>> 90>>>>>>>>>>Part datagram received!
237.8011 +14/06/2006 12:50:10.082  000>> 90>>>>>>>>>>Complete!
237.8012 +14/06/2006 12:50:10.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30908
237.8013 +14/06/2006 12:50:10.082  000>> Good datagram received!
237.8014 +14/06/2006 12:50:10.092  000>> Listener:Received RIB
237.8015 +14/06/2006 12:50:10.262  000>> 716>>>>>>>>>>Part datagram received!
237.8016 +14/06/2006 12:50:10.262  000>> 716>>>>>>>>>>Complete!
237.8017 +14/06/2006 12:50:10.262  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30909
237.8018 +14/06/2006 12:50:10.262  000>> Good datagram received!
237.8019 +14/06/2006 12:50:10.272  000>> Listener:Received Bundle Offer
237.8020 +14/06/2006 12:50:10.272  000>> Listener:Sending Empty bundle request...
237.8021 +14/06/2006 12:50:10.282  000>> Listener(receiveBOffer):But we can not restart connection...
237.8022 +14/06/2006 12:50:10.282  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30482
237.8023 +14/06/2006 12:50:10.282  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30910
237.8024 +14/06/2006 12:50:10.282  000>> Good datagram received!
237.8025 +14/06/2006 12:50:10.282  000>> Initiator:No more requested bundles
237.8026 +14/06/2006 12:50:10.282  000>> Listener(receiveBundles):We can restart connection...
237.8027 +14/06/2006 12:50:10.382  000>> Hello Procedure:SENDSYN
237.8028 +14/06/2006 12:50:10.382  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30483
237.8029 +14/06/2006 12:50:10.452  000>> 91>>>>>>>>>>Part datagram received!
237.8030 +14/06/2006 12:50:10.452  000>> 91>>>>>>>>>>Complete!
237.8031 +14/06/2006 12:50:10.452  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30911
237.8032 +14/06/2006 12:50:10.452  000>> Good datagram received!
237.8033 +14/06/2006 12:50:10.452  000>> Receive Hello:SYNACK
237.8034 +14/06/2006 12:50:10.462  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30484
237.8035 +14/06/2006 12:50:10.562  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8036 +14/06/2006 12:50:10.562  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30485
237.8037 +14/06/2006 12:50:10.562  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30486
237.8038 +14/06/2006 12:50:10.562  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30487
237.8039 +14/06/2006 12:50:10.612  000>> 98>>>>>>>>>>Part datagram received!
237.8040 +14/06/2006 12:50:10.622  000>> 98>>>>>>>>>>Complete!
237.8041 +14/06/2006 12:50:10.622  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30912
237.8042 +14/06/2006 12:50:10.622  000>> Good datagram received!
237.8043 +14/06/2006 12:50:10.622  000>> Listener:Received dictionary
237.8044 +14/06/2006 12:50:10.622  000>> 90>>>>>>>>>>Part datagram received!
237.8045 +14/06/2006 12:50:10.622  000>> 90>>>>>>>>>>Complete!
237.8046 +14/06/2006 12:50:10.622  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30913
237.8047 +14/06/2006 12:50:10.622  000>> Good datagram received!
237.8048 +14/06/2006 12:50:10.622  000>> Listener:Received RIB
237.8049 +14/06/2006 12:50:10.762  000>> 716>>>>>>>>>>Part datagram received!
237.8050 +14/06/2006 12:50:10.762  000>> 716>>>>>>>>>>Complete!
237.8051 +14/06/2006 12:50:10.762  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30914
237.8052 +14/06/2006 12:50:10.762  000>> Good datagram received!
237.8053 +14/06/2006 12:50:10.783  000>> Listener:Received Bundle Offer
237.8054 +14/06/2006 12:50:10.783  000>> Listener:Sending Empty bundle request...
237.8055 +14/06/2006 12:50:10.783  000>> Listener(receiveBOffer):But we can not restart connection...
237.8056 +14/06/2006 12:50:10.783  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30488
237.8057 +14/06/2006 12:50:10.783  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30915
237.8058 +14/06/2006 12:50:10.783  000>> Good datagram received!
237.8059 +14/06/2006 12:50:10.783  000>> Initiator:No more requested bundles
237.8060 +14/06/2006 12:50:10.783  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.8061 +14/06/2006 12:50:10.933  000>> 91>>>>>>>>>>Part datagram received!
237.8062 +14/06/2006 12:50:10.933  000>> 91>>>>>>>>>>Complete!
237.8063 +14/06/2006 12:50:10.933  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30916
237.8064 +14/06/2006 12:50:10.933  000>> Good datagram received!
237.8065 +14/06/2006 12:50:10.933  000>> Receive Hello:SYN
237.8066 +14/06/2006 12:50:10.933  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30489
237.8067 +14/06/2006 12:50:10.953  000>> 91>>>>>>>>>>Part datagram received!
237.8068 +14/06/2006 12:50:10.963  000>> 91>>>>>>>>>>Complete!
237.8069 +14/06/2006 12:50:10.963  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30917
237.8070 +14/06/2006 12:50:10.963  000>> Good datagram received!
237.8071 +14/06/2006 12:50:10.963  000>> Receive Hello:ACK
237.8072 +14/06/2006 12:50:11.063  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8073 +14/06/2006 12:50:11.063  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30490
237.8074 +14/06/2006 12:50:11.063  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30491
237.8075 +14/06/2006 12:50:11.063  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30492
237.8076 +14/06/2006 12:50:11.063  000>> 98>>>>>>>>>>Part datagram received!
237.8077 +14/06/2006 12:50:11.063  000>> 98>>>>>>>>>>Complete!
237.8078 +14/06/2006 12:50:11.063  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30918
237.8079 +14/06/2006 12:50:11.063  000>> Good datagram received!
237.8080 +14/06/2006 12:50:11.073  000>> Listener:Received dictionary
237.8081 +14/06/2006 12:50:11.073  000>> 90>>>>>>>>>>Part datagram received!
237.8082 +14/06/2006 12:50:11.073  000>> 90>>>>>>>>>>Complete!
237.8083 +14/06/2006 12:50:11.073  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30919
237.8084 +14/06/2006 12:50:11.073  000>> Good datagram received!
237.8085 +14/06/2006 12:50:11.073  000>> Listener:Received RIB
237.8086 +14/06/2006 12:50:11.263  000>> 716>>>>>>>>>>Part datagram received!
237.8087 +14/06/2006 12:50:11.263  000>> 716>>>>>>>>>>Complete!
237.8088 +14/06/2006 12:50:11.263  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30920
237.8089 +14/06/2006 12:50:11.263  000>> Good datagram received!
237.8090 +14/06/2006 12:50:11.283  000>> Listener:Received Bundle Offer
237.8091 +14/06/2006 12:50:11.283  000>> Listener:Sending Empty bundle request...
237.8092 +14/06/2006 12:50:11.283  000>> Listener(receiveBOffer):But we can not restart connection...
237.8093 +14/06/2006 12:50:11.283  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30493
237.8094 +14/06/2006 12:50:11.283  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30921
237.8095 +14/06/2006 12:50:11.283  000>> Good datagram received!
237.8096 +14/06/2006 12:50:11.283  000>> Initiator:No more requested bundles
237.8097 +14/06/2006 12:50:11.283  000>> Listener(receiveBundles):We can restart connection...
237.8098 +14/06/2006 12:50:11.383  000>> Hello Procedure:SENDSYN
237.8099 +14/06/2006 12:50:11.383  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30494
237.8100 +14/06/2006 12:50:11.453  000>> 91>>>>>>>>>>Part datagram received!
237.8101 +14/06/2006 12:50:11.453  000>> 91>>>>>>>>>>Complete!
237.8102 +14/06/2006 12:50:11.453  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30922
237.8103 +14/06/2006 12:50:11.453  000>> Good datagram received!
237.8104 +14/06/2006 12:50:11.463  000>> Receive Hello:SYNACK
237.8105 +14/06/2006 12:50:11.463  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30495
237.8106 +14/06/2006 12:50:11.564  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8107 +14/06/2006 12:50:11.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30496
237.8108 +14/06/2006 12:50:11.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30497
237.8109 +14/06/2006 12:50:11.564  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30498
237.8110 +14/06/2006 12:50:11.584  000>> 98>>>>>>>>>>Part datagram received!
237.8111 +14/06/2006 12:50:11.584  000>> 98>>>>>>>>>>Complete!
237.8112 +14/06/2006 12:50:11.584  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30923
237.8113 +14/06/2006 12:50:11.584  000>> Good datagram received!
237.8114 +14/06/2006 12:50:11.584  000>> Listener:Received dictionary
237.8115 +14/06/2006 12:50:11.604  000>> 728>>>>>>>>>>Part datagram received!
237.8116 +14/06/2006 12:50:11.604  000>> 728>>>>>>>>>>Complete!
237.8117 +14/06/2006 12:50:11.604  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30924
237.8118 +14/06/2006 12:50:11.604  000>> Good datagram received!
237.8119 +14/06/2006 12:50:11.614  000>> Listener:Received RIB
237.8120 +14/06/2006 12:50:11.614  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30925
237.8121 +14/06/2006 12:50:11.614  000>> Good datagram received!
237.8122 +14/06/2006 12:50:11.624  000>> Listener:Received Bundle Offer
237.8123 +14/06/2006 12:50:11.624  000>> Listener:Sending Empty bundle request...
237.8124 +14/06/2006 12:50:11.624  000>> Listener(receiveBOffer):But we can not restart connection...
237.8125 +14/06/2006 12:50:11.624  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30499
237.8126 +14/06/2006 12:50:11.704  000>> 78>>>>>>>>>>Part datagram received!
237.8127 +14/06/2006 12:50:11.704  000>> 78>>>>>>>>>>Complete!
237.8128 +14/06/2006 12:50:11.704  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30926
237.8129 +14/06/2006 12:50:11.704  000>> Good datagram received!
237.8130 +14/06/2006 12:50:11.704  000>> Initiator:No more requested bundles
237.8131 +14/06/2006 12:50:11.714  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.8132 +14/06/2006 12:50:11.864  000>> 91>>>>>>>>>>Part datagram received!
237.8133 +14/06/2006 12:50:11.864  000>> 91>>>>>>>>>>Complete!
237.8134 +14/06/2006 12:50:11.864  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30927
237.8135 +14/06/2006 12:50:11.864  000>> Good datagram received!
237.8136 +14/06/2006 12:50:11.864  000>> Receive Hello:SYN
237.8137 +14/06/2006 12:50:11.864  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30500
237.8138 +14/06/2006 12:50:11.894  000>> 91>>>>>>>>>>Part datagram received!
237.8139 +14/06/2006 12:50:11.894  000>> 91>>>>>>>>>>Complete!
237.8140 +14/06/2006 12:50:11.894  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30928
237.8141 +14/06/2006 12:50:11.894  000>> Good datagram received!
237.8142 +14/06/2006 12:50:11.894  000>> Receive Hello:ACK
237.8143 +14/06/2006 12:50:11.994  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8144 +14/06/2006 12:50:11.994  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30501
237.8145 +14/06/2006 12:50:11.994  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30502
237.8146 +14/06/2006 12:50:11.994  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30503
237.8147 +14/06/2006 12:50:12.074  000>> 98>>>>>>>>>>Part datagram received!
237.8148 +14/06/2006 12:50:12.074  000>> 98>>>>>>>>>>Complete!
237.8149 +14/06/2006 12:50:12.074  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30929
237.8150 +14/06/2006 12:50:12.074  000>> Good datagram received!
237.8151 +14/06/2006 12:50:12.074  000>> Listener:Received dictionary
237.8152 +14/06/2006 12:50:12.074  000>> 90>>>>>>>>>>Part datagram received!
237.8153 +14/06/2006 12:50:12.074  000>> 90>>>>>>>>>>Complete!
237.8154 +14/06/2006 12:50:12.084  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30930
237.8155 +14/06/2006 12:50:12.084  000>> Good datagram received!
237.8156 +14/06/2006 12:50:12.084  000>> Listener:Received RIB
237.8157 +14/06/2006 12:50:12.265  000>> 716>>>>>>>>>>Part datagram received!
237.8158 +14/06/2006 12:50:12.265  000>> 716>>>>>>>>>>Complete!
237.8159 +14/06/2006 12:50:12.265  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30931
237.8160 +14/06/2006 12:50:12.265  000>> Good datagram received!
237.8161 +14/06/2006 12:50:12.285  000>> Listener:Received Bundle Offer
237.8162 +14/06/2006 12:50:12.285  000>> Listener:Sending Empty bundle request...
237.8163 +14/06/2006 12:50:12.285  000>> Listener(receiveBOffer):But we can not restart connection...
237.8164 +14/06/2006 12:50:12.285  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30504
237.8165 +14/06/2006 12:50:12.285  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30932
237.8166 +14/06/2006 12:50:12.285  000>> Good datagram received!
237.8167 +14/06/2006 12:50:12.285  000>> Initiator:No more requested bundles
237.8168 +14/06/2006 12:50:12.285  000>> Listener(receiveBundles):We can restart connection...
237.8169 +14/06/2006 12:50:12.385  000>> Hello Procedure:SENDSYN
237.8170 +14/06/2006 12:50:12.385  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30505
237.8171 +14/06/2006 12:50:12.455  000>> 91>>>>>>>>>>Part datagram received!
237.8172 +14/06/2006 12:50:12.455  000>> 91>>>>>>>>>>Complete!
237.8173 +14/06/2006 12:50:12.465  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30933
237.8174 +14/06/2006 12:50:12.465  000>> Good datagram received!
237.8175 +14/06/2006 12:50:12.465  000>> Receive Hello:SYNACK
237.8176 +14/06/2006 12:50:12.465  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30506
237.8177 +14/06/2006 12:50:12.565  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8178 +14/06/2006 12:50:12.565  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30507
237.8179 +14/06/2006 12:50:12.565  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30508
237.8180 +14/06/2006 12:50:12.565  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30509
237.8181 +14/06/2006 12:50:12.585  000>> 98>>>>>>>>>>Part datagram received!
237.8182 +14/06/2006 12:50:12.585  000>> 98>>>>>>>>>>Complete!
237.8183 +14/06/2006 12:50:12.585  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30934
237.8184 +14/06/2006 12:50:12.585  000>> Good datagram received!
237.8185 +14/06/2006 12:50:12.585  000>> Listener:Received dictionary
237.8186 +14/06/2006 12:50:12.595  000>> 90>>>>>>>>>>Part datagram received!
237.8187 +14/06/2006 12:50:12.595  000>> 90>>>>>>>>>>Complete!
237.8188 +14/06/2006 12:50:12.595  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30935
237.8189 +14/06/2006 12:50:12.595  000>> Good datagram received!
237.8190 +14/06/2006 12:50:12.595  000>> Listener:Received RIB
237.8191 +14/06/2006 12:50:12.765  000>> 716>>>>>>>>>>Part datagram received!
237.8192 +14/06/2006 12:50:12.765  000>> 716>>>>>>>>>>Complete!
237.8193 +14/06/2006 12:50:12.765  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30936
237.8194 +14/06/2006 12:50:12.765  000>> Good datagram received!
237.8195 +14/06/2006 12:50:12.785  000>> Listener:Received Bundle Offer
237.8196 +14/06/2006 12:50:12.785  000>> Listener:Sending Empty bundle request...
237.8197 +14/06/2006 12:50:12.785  000>> Listener(receiveBOffer):But we can not restart connection...
237.8198 +14/06/2006 12:50:12.785  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30510
237.8199 +14/06/2006 12:50:12.785  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30937
237.8200 +14/06/2006 12:50:12.785  000>> Good datagram received!
237.8201 +14/06/2006 12:50:12.785  000>> Initiator:No more requested bundles
237.8202 +14/06/2006 12:50:12.785  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.8203 +14/06/2006 12:50:12.906  000>> 91>>>>>>>>>>Part datagram received!
237.8204 +14/06/2006 12:50:12.906  000>> 91>>>>>>>>>>Complete!
237.8205 +14/06/2006 12:50:12.906  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30938
237.8206 +14/06/2006 12:50:12.906  000>> Good datagram received!
237.8207 +14/06/2006 12:50:12.906  000>> Receive Hello:SYN
237.8208 +14/06/2006 12:50:12.906  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30511
237.8209 +14/06/2006 12:50:12.936  000>> 91>>>>>>>>>>Part datagram received!
237.8210 +14/06/2006 12:50:12.936  000>> 91>>>>>>>>>>Complete!
237.8211 +14/06/2006 12:50:12.936  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30939
237.8212 +14/06/2006 12:50:12.936  000>> Good datagram received!
237.8213 +14/06/2006 12:50:12.936  000>> Receive Hello:ACK
237.8214 +14/06/2006 12:50:13.036  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8215 +14/06/2006 12:50:13.036  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30512
237.8216 +14/06/2006 12:50:13.036  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30513
237.8217 +14/06/2006 12:50:13.046  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30514
237.8218 +14/06/2006 12:50:13.086  000>> 98>>>>>>>>>>Part datagram received!
237.8219 +14/06/2006 12:50:13.086  000>> 98>>>>>>>>>>Complete!
237.8220 +14/06/2006 12:50:13.086  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30940
237.8221 +14/06/2006 12:50:13.086  000>> Good datagram received!
237.8222 +14/06/2006 12:50:13.086  000>> Listener:Received dictionary
237.8223 +14/06/2006 12:50:13.086  000>> 90>>>>>>>>>>Part datagram received!
237.8224 +14/06/2006 12:50:13.086  000>> 90>>>>>>>>>>Complete!
237.8225 +14/06/2006 12:50:13.086  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30941
237.8226 +14/06/2006 12:50:13.096  000>> Good datagram received!
237.8227 +14/06/2006 12:50:13.096  000>> Listener:Received RIB
237.8228 +14/06/2006 12:50:13.266  000>> 716>>>>>>>>>>Part datagram received!
237.8229 +14/06/2006 12:50:13.266  000>> 716>>>>>>>>>>Complete!
237.8230 +14/06/2006 12:50:13.266  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30942
237.8231 +14/06/2006 12:50:13.266  000>> Good datagram received!
237.8232 +14/06/2006 12:50:13.286  000>> Listener:Received Bundle Offer
237.8233 +14/06/2006 12:50:13.286  000>> Listener:Sending Empty bundle request...
237.8234 +14/06/2006 12:50:13.286  000>> Listener(receiveBOffer):But we can not restart connection...
237.8235 +14/06/2006 12:50:13.286  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30515
237.8236 +14/06/2006 12:50:13.286  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30943
237.8237 +14/06/2006 12:50:13.286  000>> Good datagram received!
237.8238 +14/06/2006 12:50:13.286  000>> Initiator:No more requested bundles
237.8239 +14/06/2006 12:50:13.286  000>> Listener(receiveBundles):We can restart connection...
237.8240 +14/06/2006 12:50:13.386  000>> Hello Procedure:SENDSYN
237.8241 +14/06/2006 12:50:13.386  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30516
237.8242 +14/06/2006 12:50:13.476  000>> 91>>>>>>>>>>Part datagram received!
237.8243 +14/06/2006 12:50:13.476  000>> 91>>>>>>>>>>Complete!
237.8244 +14/06/2006 12:50:13.476  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30944
237.8245 +14/06/2006 12:50:13.476  000>> Good datagram received!
237.8246 +14/06/2006 12:50:13.476  000>> Receive Hello:SYNACK
237.8247 +14/06/2006 12:50:13.476  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30517
237.8248 +14/06/2006 12:50:13.577  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8249 +14/06/2006 12:50:13.577  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30518
237.8250 +14/06/2006 12:50:13.577  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30519
237.8251 +14/06/2006 12:50:13.577  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30520
237.8252 +14/06/2006 12:50:13.617  000>> 98>>>>>>>>>>Part datagram received!
237.8253 +14/06/2006 12:50:13.617  000>> 98>>>>>>>>>>Complete!
237.8254 +14/06/2006 12:50:13.617  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30945
237.8255 +14/06/2006 12:50:13.617  000>> Good datagram received!
237.8256 +14/06/2006 12:50:13.617  000>> Listener:Received dictionary
237.8257 +14/06/2006 12:50:13.627  000>> 90>>>>>>>>>>Part datagram received!
237.8258 +14/06/2006 12:50:13.627  000>> 90>>>>>>>>>>Complete!
237.8259 +14/06/2006 12:50:13.627  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30946
237.8260 +14/06/2006 12:50:13.627  000>> Good datagram received!
237.8261 +14/06/2006 12:50:13.627  000>> Listener:Received RIB
237.8262 +14/06/2006 12:50:13.767  000>> 716>>>>>>>>>>Part datagram received!
237.8263 +14/06/2006 12:50:13.777  000>> 716>>>>>>>>>>Complete!
237.8264 +14/06/2006 12:50:13.777  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30947
237.8265 +14/06/2006 12:50:13.777  000>> Good datagram received!
237.8266 +14/06/2006 12:50:13.787  000>> Listener:Received Bundle Offer
237.8267 +14/06/2006 12:50:13.787  000>> Listener:Sending Empty bundle request...
237.8268 +14/06/2006 12:50:13.787  000>> Listener(receiveBOffer):But we can not restart connection...
237.8269 +14/06/2006 12:50:13.787  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30521
237.8270 +14/06/2006 12:50:13.787  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30948
237.8271 +14/06/2006 12:50:13.797  000>> Good datagram received!
237.8272 +14/06/2006 12:50:13.797  000>> Initiator:No more requested bundles
237.8273 +14/06/2006 12:50:13.797  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.8274 +14/06/2006 12:50:13.917  000>> 91>>>>>>>>>>Part datagram received!
237.8275 +14/06/2006 12:50:13.917  000>> 91>>>>>>>>>>Complete!
237.8276 +14/06/2006 12:50:13.917  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30949
237.8277 +14/06/2006 12:50:13.917  000>> Good datagram received!
237.8278 +14/06/2006 12:50:13.917  000>> Receive Hello:SYN
237.8279 +14/06/2006 12:50:13.917  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30522
237.8280 +14/06/2006 12:50:13.957  000>> 91>>>>>>>>>>Part datagram received!
237.8281 +14/06/2006 12:50:13.957  000>> 91>>>>>>>>>>Complete!
237.8282 +14/06/2006 12:50:13.957  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30950
237.8283 +14/06/2006 12:50:13.957  000>> Good datagram received!
237.8284 +14/06/2006 12:50:13.957  000>> Receive Hello:ACK
237.8285 +14/06/2006 12:50:14.057  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8286 +14/06/2006 12:50:14.057  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30523
237.8287 +14/06/2006 12:50:14.057  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30524
237.8288 +14/06/2006 12:50:14.057  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30525
237.8289 +14/06/2006 12:50:14.087  000>> 98>>>>>>>>>>Part datagram received!
237.8290 +14/06/2006 12:50:14.087  000>> 98>>>>>>>>>>Complete!
237.8291 +14/06/2006 12:50:14.087  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30951
237.8292 +14/06/2006 12:50:14.087  000>> Good datagram received!
237.8293 +14/06/2006 12:50:14.087  000>> Listener:Received dictionary
237.8294 +14/06/2006 12:50:14.097  000>> 90>>>>>>>>>>Part datagram received!
237.8295 +14/06/2006 12:50:14.097  000>> 90>>>>>>>>>>Complete!
237.8296 +14/06/2006 12:50:14.097  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30952
237.8297 +14/06/2006 12:50:14.097  000>> Good datagram received!
237.8298 +14/06/2006 12:50:14.097  000>> Listener:Received RIB
237.8299 +14/06/2006 12:50:14.268  000>> 716>>>>>>>>>>Part datagram received!
237.8300 +14/06/2006 12:50:14.278  000>> 716>>>>>>>>>>Complete!
237.8301 +14/06/2006 12:50:14.278  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30953
237.8302 +14/06/2006 12:50:14.278  000>> Good datagram received!
237.8303 +14/06/2006 12:50:14.288  000>> Listener:Received Bundle Offer
237.8304 +14/06/2006 12:50:14.288  000>> Listener:Sending Empty bundle request...
237.8305 +14/06/2006 12:50:14.288  000>> Listener(receiveBOffer):But we can not restart connection...
237.8306 +14/06/2006 12:50:14.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30526
237.8307 +14/06/2006 12:50:14.288  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30954
237.8308 +14/06/2006 12:50:14.298  000>> Good datagram received!
237.8309 +14/06/2006 12:50:14.298  000>> Initiator:No more requested bundles
237.8310 +14/06/2006 12:50:14.298  000>> Listener(receiveBundles):We can restart connection...
237.8311 +14/06/2006 12:50:14.398  000>> Hello Procedure:SENDSYN
237.8312 +14/06/2006 12:50:14.398  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30527
237.8313 +14/06/2006 12:50:14.458  000>> 91>>>>>>>>>>Part datagram received!
237.8314 +14/06/2006 12:50:14.458  000>> 91>>>>>>>>>>Complete!
237.8315 +14/06/2006 12:50:14.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30955
237.8316 +14/06/2006 12:50:14.468  000>> Good datagram received!
237.8317 +14/06/2006 12:50:14.468  000>> Receive Hello:SYNACK
237.8318 +14/06/2006 12:50:14.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30528
237.8319 +14/06/2006 12:50:14.568  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8320 +14/06/2006 12:50:14.568  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30529
237.8321 +14/06/2006 12:50:14.568  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30530
237.8322 +14/06/2006 12:50:14.568  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30531
237.8323 +14/06/2006 12:50:14.588  000>> 98>>>>>>>>>>Part datagram received!
237.8324 +14/06/2006 12:50:14.588  000>> 98>>>>>>>>>>Complete!
237.8325 +14/06/2006 12:50:14.588  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30956
237.8326 +14/06/2006 12:50:14.588  000>> Good datagram received!
237.8327 +14/06/2006 12:50:14.588  000>> Listener:Received dictionary
237.8328 +14/06/2006 12:50:14.598  000>> 90>>>>>>>>>>Part datagram received!
237.8329 +14/06/2006 12:50:14.598  000>> 90>>>>>>>>>>Complete!
237.8330 +14/06/2006 12:50:14.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30957
237.8331 +14/06/2006 12:50:14.598  000>> Good datagram received!
237.8332 +14/06/2006 12:50:14.598  000>> Listener:Received RIB
237.8333 +14/06/2006 12:50:14.778  000>> 716>>>>>>>>>>Part datagram received!
237.8334 +14/06/2006 12:50:14.778  000>> 716>>>>>>>>>>Complete!
237.8335 +14/06/2006 12:50:14.778  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30958
237.8336 +14/06/2006 12:50:14.778  000>> Good datagram received!
237.8337 +14/06/2006 12:50:14.788  000>> Listener:Received Bundle Offer
237.8338 +14/06/2006 12:50:14.788  000>> Listener:Sending Empty bundle request...
237.8339 +14/06/2006 12:50:14.788  000>> Listener(receiveBOffer):But we can not restart connection...
237.8340 +14/06/2006 12:50:14.788  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30532
237.8341 +14/06/2006 12:50:14.798  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30959
237.8342 +14/06/2006 12:50:14.798  000>> Good datagram received!
237.8343 +14/06/2006 12:50:14.798  000>> Initiator:No more requested bundles
237.8344 +14/06/2006 12:50:14.798  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.8345 +14/06/2006 12:50:14.918  000>> 91>>>>>>>>>>Part datagram received!
237.8346 +14/06/2006 12:50:14.918  000>> 91>>>>>>>>>>Complete!
237.8347 +14/06/2006 12:50:14.918  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30960
237.8348 +14/06/2006 12:50:14.918  000>> Good datagram received!
237.8349 +14/06/2006 12:50:14.918  000>> Receive Hello:SYN
237.8350 +14/06/2006 12:50:14.918  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30533
237.8351 +14/06/2006 12:50:14.938  000>> 91>>>>>>>>>>Part datagram received!
237.8352 +14/06/2006 12:50:14.938  000>> 91>>>>>>>>>>Complete!
237.8353 +14/06/2006 12:50:14.938  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30961
237.8354 +14/06/2006 12:50:14.938  000>> Good datagram received!
237.8355 +14/06/2006 12:50:14.949  000>> Receive Hello:ACK
237.8356 +14/06/2006 12:50:15.049  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8357 +14/06/2006 12:50:15.049  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30534
237.8358 +14/06/2006 12:50:15.049  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30535
237.8359 +14/06/2006 12:50:15.049  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30536
237.8360 +14/06/2006 12:50:15.069  000>> 98>>>>>>>>>>Part datagram received!
237.8361 +14/06/2006 12:50:15.069  000>> 98>>>>>>>>>>Complete!
237.8362 +14/06/2006 12:50:15.069  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30962
237.8363 +14/06/2006 12:50:15.069  000>> Good datagram received!
237.8364 +14/06/2006 12:50:15.069  000>> Listener:Received dictionary
237.8365 +14/06/2006 12:50:15.079  000>> 90>>>>>>>>>>Part datagram received!
237.8366 +14/06/2006 12:50:15.079  000>> 90>>>>>>>>>>Complete!
237.8367 +14/06/2006 12:50:15.079  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30963
237.8368 +14/06/2006 12:50:15.079  000>> Good datagram received!
237.8369 +14/06/2006 12:50:15.079  000>> Listener:Received RIB
237.8370 +14/06/2006 12:50:15.279  000>> 716>>>>>>>>>>Part datagram received!
237.8371 +14/06/2006 12:50:15.279  000>> 716>>>>>>>>>>Complete!
237.8372 +14/06/2006 12:50:15.279  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30964
237.8373 +14/06/2006 12:50:15.279  000>> Good datagram received!
237.8374 +14/06/2006 12:50:15.289  000>> Listener:Received Bundle Offer
237.8375 +14/06/2006 12:50:15.289  000>> Listener:Sending Empty bundle request...
237.8376 +14/06/2006 12:50:15.289  000>> Listener(receiveBOffer):But we can not restart connection...
237.8377 +14/06/2006 12:50:15.299  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30537
237.8378 +14/06/2006 12:50:15.299  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30965
237.8379 +14/06/2006 12:50:15.299  000>> Good datagram received!
237.8380 +14/06/2006 12:50:15.299  000>> Initiator:No more requested bundles
237.8381 +14/06/2006 12:50:15.299  000>> Listener(receiveBundles):We can restart connection...
237.8382 +14/06/2006 12:50:15.399  000>> Hello Procedure:SENDSYN
237.8383 +14/06/2006 12:50:15.399  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30538
237.8384 +14/06/2006 12:50:15.459  000>> 91>>>>>>>>>>Part datagram received!
237.8385 +14/06/2006 12:50:15.459  000>> 91>>>>>>>>>>Complete!
237.8386 +14/06/2006 12:50:15.459  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30966
237.8387 +14/06/2006 12:50:15.459  000>> Good datagram received!
237.8388 +14/06/2006 12:50:15.459  000>> Receive Hello:SYNACK
237.8389 +14/06/2006 12:50:15.459  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30539
237.8390 +14/06/2006 12:50:15.559  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8391 +14/06/2006 12:50:15.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30540
237.8392 +14/06/2006 12:50:15.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30541
237.8393 +14/06/2006 12:50:15.559  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30542
237.8394 +14/06/2006 12:50:15.589  000>> 98>>>>>>>>>>Part datagram received!
237.8395 +14/06/2006 12:50:15.589  000>> 98>>>>>>>>>>Complete!
237.8396 +14/06/2006 12:50:15.589  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30967
237.8397 +14/06/2006 12:50:15.589  000>> Good datagram received!
237.8398 +14/06/2006 12:50:15.589  000>> Listener:Received dictionary
237.8399 +14/06/2006 12:50:15.599  000>> 728>>>>>>>>>>Part datagram received!
237.8400 +14/06/2006 12:50:15.599  000>> 728>>>>>>>>>>Complete!
237.8401 +14/06/2006 12:50:15.599  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30968
237.8402 +14/06/2006 12:50:15.599  000>> Good datagram received!
237.8403 +14/06/2006 12:50:15.599  000>> Listener:Received RIB
237.8404 +14/06/2006 12:50:15.609  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30969
237.8405 +14/06/2006 12:50:15.609  000>> Good datagram received!
237.8406 +14/06/2006 12:50:15.629  000>> Listener:Received Bundle Offer
237.8407 +14/06/2006 12:50:15.629  000>> Listener:Sending Empty bundle request...
237.8408 +14/06/2006 12:50:15.629  000>> Listener(receiveBOffer):But we can not restart connection...
237.8409 +14/06/2006 12:50:15.629  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30543
237.8410 +14/06/2006 12:50:15.730  000>> 78>>>>>>>>>>Part datagram received!
237.8411 +14/06/2006 12:50:15.740  000>> 78>>>>>>>>>>Complete!
237.8412 +14/06/2006 12:50:15.740  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30970
237.8413 +14/06/2006 12:50:15.740  000>> Good datagram received!
237.8414 +14/06/2006 12:50:15.740  000>> Initiator:No more requested bundles
237.8415 +14/06/2006 12:50:15.740  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.8416 +14/06/2006 12:50:15.790  000>> 91>>>>>>>>>>Part datagram received!
237.8417 +14/06/2006 12:50:15.790  000>> 91>>>>>>>>>>Complete!
237.8418 +14/06/2006 12:50:15.790  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30971
237.8419 +14/06/2006 12:50:15.790  000>> Good datagram received!
237.8420 +14/06/2006 12:50:15.790  000>> Receive Hello:SYN
237.8421 +14/06/2006 12:50:15.790  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30544
237.8422 +14/06/2006 12:50:15.850  000>> 91>>>>>>>>>>Part datagram received!
237.8423 +14/06/2006 12:50:15.850  000>> 91>>>>>>>>>>Complete!
237.8424 +14/06/2006 12:50:15.850  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30972
237.8425 +14/06/2006 12:50:15.850  000>> Good datagram received!
237.8426 +14/06/2006 12:50:15.850  000>> Receive Hello:ACK
237.8427 +14/06/2006 12:50:15.950  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8428 +14/06/2006 12:50:15.950  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30545
237.8429 +14/06/2006 12:50:15.950  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30546
237.8430 +14/06/2006 12:50:15.950  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30547
237.8431 +14/06/2006 12:50:15.970  000>> 98>>>>>>>>>>Part datagram received!
237.8432 +14/06/2006 12:50:15.970  000>> 98>>>>>>>>>>Complete!
237.8433 +14/06/2006 12:50:15.970  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30973
237.8434 +14/06/2006 12:50:15.970  000>> Good datagram received!
237.8435 +14/06/2006 12:50:15.970  000>> Listener:Received dictionary
237.8436 +14/06/2006 12:50:15.970  000>> 728>>>>>>>>>>Part datagram received!
237.8437 +14/06/2006 12:50:15.970  000>> 728>>>>>>>>>>Complete!
237.8438 +14/06/2006 12:50:15.970  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30974
237.8439 +14/06/2006 12:50:15.970  000>> Good datagram received!
237.8440 +14/06/2006 12:50:15.970  000>> Listener:Received RIB
237.8441 +14/06/2006 12:50:15.970  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30975
237.8442 +14/06/2006 12:50:15.970  000>> Good datagram received!
237.8443 +14/06/2006 12:50:15.980  000>> Listener:Received Bundle Offer
237.8444 +14/06/2006 12:50:15.980  000>> Listener:Sending Empty bundle request...
237.8445 +14/06/2006 12:50:15.980  000>> Listener(receiveBOffer):But we can not restart connection...
237.8446 +14/06/2006 12:50:15.980  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30548
237.8447 +14/06/2006 12:50:16.030  000>> 78>>>>>>>>>>Part datagram received!
237.8448 +14/06/2006 12:50:16.030  000>> 78>>>>>>>>>>Complete!
237.8449 +14/06/2006 12:50:16.030  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30976
237.8450 +14/06/2006 12:50:16.030  000>> Good datagram received!
237.8451 +14/06/2006 12:50:16.030  000>> Initiator:No more requested bundles
237.8452 +14/06/2006 12:50:16.030  000>> Listener(receiveBundles):We can restart connection...
237.8453 +14/06/2006 12:50:16.130  000>> Hello Procedure:SENDSYN
237.8454 +14/06/2006 12:50:16.130  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30549
237.8455 +14/06/2006 12:50:16.160  000>> 91>>>>>>>>>>Part datagram received!
237.8456 +14/06/2006 12:50:16.160  000>> 91>>>>>>>>>>Complete!
237.8457 +14/06/2006 12:50:16.160  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30977
237.8458 +14/06/2006 12:50:16.160  000>> Good datagram received!
237.8459 +14/06/2006 12:50:16.160  000>> Receive Hello:SYNACK
237.8460 +14/06/2006 12:50:16.160  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30550
237.8461 +14/06/2006 12:50:16.260  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8462 +14/06/2006 12:50:16.260  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30551
237.8463 +14/06/2006 12:50:16.260  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30552
237.8464 +14/06/2006 12:50:16.260  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30553
237.8465 +14/06/2006 12:50:16.280  000>> 98>>>>>>>>>>Part datagram received!
237.8466 +14/06/2006 12:50:16.280  000>> 98>>>>>>>>>>Complete!
237.8467 +14/06/2006 12:50:16.280  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30978
237.8468 +14/06/2006 12:50:16.280  000>> Good datagram received!
237.8469 +14/06/2006 12:50:16.280  000>> Listener:Received dictionary
237.8470 +14/06/2006 12:50:16.290  000>> 90>>>>>>>>>>Part datagram received!
237.8471 +14/06/2006 12:50:16.290  000>> 90>>>>>>>>>>Complete!
237.8472 +14/06/2006 12:50:16.290  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30979
237.8473 +14/06/2006 12:50:16.290  000>> Good datagram received!
237.8474 +14/06/2006 12:50:16.290  000>> Listener:Received RIB
237.8475 +14/06/2006 12:50:16.481  000>> 716>>>>>>>>>>Part datagram received!
237.8476 +14/06/2006 12:50:16.481  000>> 716>>>>>>>>>>Complete!
237.8477 +14/06/2006 12:50:16.481  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30980
237.8478 +14/06/2006 12:50:16.481  000>> Good datagram received!
237.8479 +14/06/2006 12:50:16.501  000>> Listener:Received Bundle Offer
237.8480 +14/06/2006 12:50:16.501  000>> Listener:Sending Empty bundle request...
237.8481 +14/06/2006 12:50:16.501  000>> Listener(receiveBOffer):But we can not restart connection...
237.8482 +14/06/2006 12:50:16.501  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30554
237.8483 +14/06/2006 12:50:16.501  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30981
237.8484 +14/06/2006 12:50:16.501  000>> Good datagram received!
237.8485 +14/06/2006 12:50:16.501  000>> Initiator:No more requested bundles
237.8486 +14/06/2006 12:50:16.501  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.8487 +14/06/2006 12:50:16.621  000>> 91>>>>>>>>>>Part datagram received!
237.8488 +14/06/2006 12:50:16.621  000>> 91>>>>>>>>>>Complete!
237.8489 +14/06/2006 12:50:16.621  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30982
237.8490 +14/06/2006 12:50:16.621  000>> Good datagram received!
237.8491 +14/06/2006 12:50:16.621  000>> Receive Hello:SYN
237.8492 +14/06/2006 12:50:16.621  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30555
237.8493 +14/06/2006 12:50:16.641  000>> 91>>>>>>>>>>Part datagram received!
237.8494 +14/06/2006 12:50:16.641  000>> 91>>>>>>>>>>Complete!
237.8495 +14/06/2006 12:50:16.641  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30983
237.8496 +14/06/2006 12:50:16.641  000>> Good datagram received!
237.8497 +14/06/2006 12:50:16.641  000>> Receive Hello:ACK
237.8498 +14/06/2006 12:50:16.741  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8499 +14/06/2006 12:50:16.741  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30556
237.8500 +14/06/2006 12:50:16.741  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30557
237.8501 +14/06/2006 12:50:16.741  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30558
237.8502 +14/06/2006 12:50:16.761  000>> 98>>>>>>>>>>Part datagram received!
237.8503 +14/06/2006 12:50:16.771  000>> 98>>>>>>>>>>Complete!
237.8504 +14/06/2006 12:50:16.771  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30984
237.8505 +14/06/2006 12:50:16.771  000>> Good datagram received!
237.8506 +14/06/2006 12:50:16.771  000>> Listener:Received dictionary
237.8507 +14/06/2006 12:50:16.771  000>> 90>>>>>>>>>>Part datagram received!
237.8508 +14/06/2006 12:50:16.771  000>> 90>>>>>>>>>>Complete!
237.8509 +14/06/2006 12:50:16.771  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30985
237.8510 +14/06/2006 12:50:16.771  000>> Good datagram received!
237.8511 +14/06/2006 12:50:16.771  000>> Listener:Received RIB
237.8512 +14/06/2006 12:50:16.881  000>> 716>>>>>>>>>>Part datagram received!
237.8513 +14/06/2006 12:50:16.881  000>> 716>>>>>>>>>>Complete!
237.8514 +14/06/2006 12:50:16.881  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30986
237.8515 +14/06/2006 12:50:16.881  000>> Good datagram received!
237.8516 +14/06/2006 12:50:16.901  000>> Listener:Received Bundle Offer
237.8517 +14/06/2006 12:50:16.901  000>> Listener:Sending Empty bundle request...
237.8518 +14/06/2006 12:50:16.901  000>> Listener(receiveBOffer):But we can not restart connection...
237.8519 +14/06/2006 12:50:16.901  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30559
237.8520 +14/06/2006 12:50:16.901  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30987
237.8521 +14/06/2006 12:50:16.901  000>> Good datagram received!
237.8522 +14/06/2006 12:50:16.901  000>> Initiator:No more requested bundles
237.8523 +14/06/2006 12:50:16.901  000>> Listener(receiveBundles):We can restart connection...
237.8524 +14/06/2006 12:50:17.001  000>> Hello Procedure:SENDSYN
237.8525 +14/06/2006 12:50:17.001  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30560
237.8526 +14/06/2006 12:50:17.082  000>> 91>>>>>>>>>>Part datagram received!
237.8527 +14/06/2006 12:50:17.082  000>> 91>>>>>>>>>>Complete!
237.8528 +14/06/2006 12:50:17.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30988
237.8529 +14/06/2006 12:50:17.082  000>> Good datagram received!
237.8530 +14/06/2006 12:50:17.082  000>> Receive Hello:SYNACK
237.8531 +14/06/2006 12:50:17.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30561
237.8532 +14/06/2006 12:50:17.182  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8533 +14/06/2006 12:50:17.182  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30562
237.8534 +14/06/2006 12:50:17.182  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30563
237.8535 +14/06/2006 12:50:17.192  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30564
237.8536 +14/06/2006 12:50:17.202  000>> 98>>>>>>>>>>Part datagram received!
237.8537 +14/06/2006 12:50:17.202  000>> 98>>>>>>>>>>Complete!
237.8538 +14/06/2006 12:50:17.202  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30989
237.8539 +14/06/2006 12:50:17.202  000>> Good datagram received!
237.8540 +14/06/2006 12:50:17.202  000>> Listener:Received dictionary
237.8541 +14/06/2006 12:50:17.212  000>> 90>>>>>>>>>>Part datagram received!
237.8542 +14/06/2006 12:50:17.212  000>> 90>>>>>>>>>>Complete!
237.8543 +14/06/2006 12:50:17.212  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30990
237.8544 +14/06/2006 12:50:17.212  000>> Good datagram received!
237.8545 +14/06/2006 12:50:17.212  000>> Listener:Received RIB
237.8546 +14/06/2006 12:50:17.382  000>> 716>>>>>>>>>>Part datagram received!
237.8547 +14/06/2006 12:50:17.382  000>> 716>>>>>>>>>>Complete!
237.8548 +14/06/2006 12:50:17.382  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30991
237.8549 +14/06/2006 12:50:17.382  000>> Good datagram received!
237.8550 +14/06/2006 12:50:17.402  000>> Listener:Received Bundle Offer
237.8551 +14/06/2006 12:50:17.402  000>> Listener:Sending Empty bundle request...
237.8552 +14/06/2006 12:50:17.402  000>> Listener(receiveBOffer):But we can not restart connection...
237.8553 +14/06/2006 12:50:17.402  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30565
237.8554 +14/06/2006 12:50:17.402  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30992
237.8555 +14/06/2006 12:50:17.402  000>> Good datagram received!
237.8556 +14/06/2006 12:50:17.402  000>> Initiator:No more requested bundles
237.8557 +14/06/2006 12:50:17.402  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.8558 +14/06/2006 12:50:17.522  000>> 91>>>>>>>>>>Part datagram received!
237.8559 +14/06/2006 12:50:17.522  000>> 91>>>>>>>>>>Complete!
237.8560 +14/06/2006 12:50:17.522  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30993
237.8561 +14/06/2006 12:50:17.522  000>> Good datagram received!
237.8562 +14/06/2006 12:50:17.522  000>> Receive Hello:SYN
237.8563 +14/06/2006 12:50:17.522  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30566
237.8564 +14/06/2006 12:50:17.542  000>> 91>>>>>>>>>>Part datagram received!
237.8565 +14/06/2006 12:50:17.542  000>> 91>>>>>>>>>>Complete!
237.8566 +14/06/2006 12:50:17.542  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30994
237.8567 +14/06/2006 12:50:17.542  000>> Good datagram received!
237.8568 +14/06/2006 12:50:17.542  000>> Receive Hello:ACK
237.8569 +14/06/2006 12:50:17.642  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8570 +14/06/2006 12:50:17.642  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30567
237.8571 +14/06/2006 12:50:17.642  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30568
237.8572 +14/06/2006 12:50:17.642  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30569
237.8573 +14/06/2006 12:50:17.652  000>> 98>>>>>>>>>>Part datagram received!
237.8574 +14/06/2006 12:50:17.652  000>> 98>>>>>>>>>>Complete!
237.8575 +14/06/2006 12:50:17.652  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:30995
237.8576 +14/06/2006 12:50:17.652  000>> Good datagram received!
237.8577 +14/06/2006 12:50:17.652  000>> Listener:Received dictionary
237.8578 +14/06/2006 12:50:17.652  000>> 90>>>>>>>>>>Part datagram received!
237.8579 +14/06/2006 12:50:17.652  000>> 90>>>>>>>>>>Complete!
237.8580 +14/06/2006 12:50:17.652  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:30996
237.8581 +14/06/2006 12:50:17.662  000>> Good datagram received!
237.8582 +14/06/2006 12:50:17.662  000>> Listener:Received RIB
237.8583 +14/06/2006 12:50:17.783  000>> 716>>>>>>>>>>Part datagram received!
237.8584 +14/06/2006 12:50:17.783  000>> 716>>>>>>>>>>Complete!
237.8585 +14/06/2006 12:50:17.783  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:30997
237.8586 +14/06/2006 12:50:17.783  000>> Good datagram received!
237.8587 +14/06/2006 12:50:17.803  000>> Listener:Received Bundle Offer
237.8588 +14/06/2006 12:50:17.803  000>> Listener:Sending Empty bundle request...
237.8589 +14/06/2006 12:50:17.803  000>> Listener(receiveBOffer):But we can not restart connection...
237.8590 +14/06/2006 12:50:17.803  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30570
237.8591 +14/06/2006 12:50:17.803  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:30998
237.8592 +14/06/2006 12:50:17.803  000>> Good datagram received!
237.8593 +14/06/2006 12:50:17.803  000>> Initiator:No more requested bundles
237.8594 +14/06/2006 12:50:17.803  000>> Listener(receiveBundles):We can restart connection...
237.8595 +14/06/2006 12:50:17.903  000>> Hello Procedure:SENDSYN
237.8596 +14/06/2006 12:50:17.903  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30571
237.8597 +14/06/2006 12:50:17.973  000>> 91>>>>>>>>>>Part datagram received!
237.8598 +14/06/2006 12:50:17.973  000>> 91>>>>>>>>>>Complete!
237.8599 +14/06/2006 12:50:17.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:30999
237.8600 +14/06/2006 12:50:17.973  000>> Good datagram received!
237.8601 +14/06/2006 12:50:17.973  000>> Receive Hello:SYNACK
237.8602 +14/06/2006 12:50:17.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30572
237.8603 +14/06/2006 12:50:18.073  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8604 +14/06/2006 12:50:18.073  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30573
237.8605 +14/06/2006 12:50:18.073  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30574
237.8606 +14/06/2006 12:50:18.073  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30575
237.8607 +14/06/2006 12:50:18.213  000>> 78>>>>>>>>>>Part datagram received!
237.8608 +14/06/2006 12:50:18.213  000>> 78>>>>>>>>>>Complete!
237.8609 +14/06/2006 12:50:18.213  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31000
237.8610 +14/06/2006 12:50:18.213  000>> Good datagram received!
237.8611 +14/06/2006 12:50:18.213  000>> Initiator:No more requested bundles
237.8612 +14/06/2006 12:50:18.213  000>> Initiator:But we can not restart connection...
237.8613 +14/06/2006 12:50:18.383  000>> 826>>>>>>>>>>Part datagram received!
237.8614 +14/06/2006 12:50:18.383  000>> 826>>>>>>>>>>Complete!
237.8615 +14/06/2006 12:50:18.383  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31001
237.8616 +14/06/2006 12:50:18.383  000>> Good datagram received!
237.8617 +14/06/2006 12:50:18.393  000>> Listener:Received dictionary
237.8618 +14/06/2006 12:50:18.393  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31002
237.8619 +14/06/2006 12:50:18.393  000>> Good datagram received!
237.8620 +14/06/2006 12:50:18.393  000>> Listener:Received RIB
237.8621 +14/06/2006 12:50:18.393  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31003
237.8622 +14/06/2006 12:50:18.393  000>> Good datagram received!
237.8623 +14/06/2006 12:50:18.403  000>> Listener:Received Bundle Offer
237.8624 +14/06/2006 12:50:18.403  000>> Listener:Sending Empty bundle request...
237.8625 +14/06/2006 12:50:18.403  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.8626 +14/06/2006 12:50:18.413  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30576
237.8627 +14/06/2006 12:50:18.554  000>> 91>>>>>>>>>>Part datagram received!
237.8628 +14/06/2006 12:50:18.554  000>> 91>>>>>>>>>>Complete!
237.8629 +14/06/2006 12:50:18.554  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31004
237.8630 +14/06/2006 12:50:18.554  000>> Good datagram received!
237.8631 +14/06/2006 12:50:18.554  000>> Receive Hello:SYN
237.8632 +14/06/2006 12:50:18.554  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30577
237.8633 +14/06/2006 12:50:18.574  000>> 91>>>>>>>>>>Part datagram received!
237.8634 +14/06/2006 12:50:18.574  000>> 91>>>>>>>>>>Complete!
237.8635 +14/06/2006 12:50:18.574  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31005
237.8636 +14/06/2006 12:50:18.574  000>> Good datagram received!
237.8637 +14/06/2006 12:50:18.584  000>> Receive Hello:ACK
237.8638 +14/06/2006 12:50:18.684  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8639 +14/06/2006 12:50:18.684  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30578
237.8640 +14/06/2006 12:50:18.684  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30579
237.8641 +14/06/2006 12:50:18.684  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30580
237.8642 +14/06/2006 12:50:18.684  000>> 98>>>>>>>>>>Part datagram received!
237.8643 +14/06/2006 12:50:18.684  000>> 98>>>>>>>>>>Complete!
237.8644 +14/06/2006 12:50:18.684  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31006
237.8645 +14/06/2006 12:50:18.684  000>> Good datagram received!
237.8646 +14/06/2006 12:50:18.694  000>> Listener:Received dictionary
237.8647 +14/06/2006 12:50:18.694  000>> 0>>>>>>>>>>Part datagram received!
237.8648 +14/06/2006 12:50:18.694  000>> 0>>>>>>>>>>Part datagram received!
237.8649 +14/06/2006 12:50:18.694  000>> 90>>>>>>>>>>Part datagram received!
237.8650 +14/06/2006 12:50:18.694  000>> 90>>>>>>>>>>Complete!
237.8651 +14/06/2006 12:50:18.694  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31007
237.8652 +14/06/2006 12:50:18.694  000>> Good datagram received!
237.8653 +14/06/2006 12:50:18.694  000>> Listener:Received RIB
237.8654 +14/06/2006 12:50:18.714  000>> 638>>>>>>>>>>Part datagram received!
237.8655 +14/06/2006 12:50:18.714  000>> 638>>>>>>>>>>Complete!
237.8656 +14/06/2006 12:50:18.714  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31008
237.8657 +14/06/2006 12:50:18.714  000>> Good datagram received!
237.8658 +14/06/2006 12:50:18.724  000>> Listener:Received Bundle Offer
237.8659 +14/06/2006 12:50:18.724  000>> Listener:Sending Empty bundle request...
237.8660 +14/06/2006 12:50:18.724  000>> Listener(receiveBOffer):But we can not restart connection...
237.8661 +14/06/2006 12:50:18.724  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30581
237.8662 +14/06/2006 12:50:18.804  000>> 78>>>>>>>>>>Part datagram received!
237.8663 +14/06/2006 12:50:18.804  000>> 78>>>>>>>>>>Complete!
237.8664 +14/06/2006 12:50:18.804  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31009
237.8665 +14/06/2006 12:50:18.804  000>> Good datagram received!
237.8666 +14/06/2006 12:50:18.804  000>> Initiator:No more requested bundles
237.8667 +14/06/2006 12:50:18.814  000>> Listener(receiveBundles):We can restart connection...
237.8668 +14/06/2006 12:50:18.914  000>> Hello Procedure:SENDSYN
237.8669 +14/06/2006 12:50:18.914  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30582
237.8670 +14/06/2006 12:50:18.954  000>> 91>>>>>>>>>>Part datagram received!
237.8671 +14/06/2006 12:50:18.954  000>> 91>>>>>>>>>>Complete!
237.8672 +14/06/2006 12:50:18.954  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31010
237.8673 +14/06/2006 12:50:18.954  000>> Good datagram received!
237.8674 +14/06/2006 12:50:18.954  000>> Receive Hello:SYNACK
237.8675 +14/06/2006 12:50:18.954  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30583
237.8676 +14/06/2006 12:50:19.054  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8677 +14/06/2006 12:50:19.054  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30584
237.8678 +14/06/2006 12:50:19.054  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30585
237.8679 +14/06/2006 12:50:19.054  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30586
237.8680 +14/06/2006 12:50:19.215  000>> 78>>>>>>>>>>Part datagram received!
237.8681 +14/06/2006 12:50:19.215  000>> 78>>>>>>>>>>Complete!
237.8682 +14/06/2006 12:50:19.215  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31011
237.8683 +14/06/2006 12:50:19.215  000>> Good datagram received!
237.8684 +14/06/2006 12:50:19.215  000>> Initiator:No more requested bundles
237.8685 +14/06/2006 12:50:19.215  000>> Initiator:But we can not restart connection...
237.8686 +14/06/2006 12:50:19.385  000>> 826>>>>>>>>>>Part datagram received!
237.8687 +14/06/2006 12:50:19.385  000>> 826>>>>>>>>>>Complete!
237.8688 +14/06/2006 12:50:19.395  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31012
237.8689 +14/06/2006 12:50:19.395  000>> Good datagram received!
237.8690 +14/06/2006 12:50:19.395  000>> Listener:Received dictionary
237.8691 +14/06/2006 12:50:19.395  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31013
237.8692 +14/06/2006 12:50:19.395  000>> Good datagram received!
237.8693 +14/06/2006 12:50:19.395  000>> Listener:Received RIB
237.8694 +14/06/2006 12:50:19.395  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31014
237.8695 +14/06/2006 12:50:19.395  000>> Good datagram received!
237.8696 +14/06/2006 12:50:19.415  000>> Listener:Received Bundle Offer
237.8697 +14/06/2006 12:50:19.415  000>> Listener:Sending Empty bundle request...
237.8698 +14/06/2006 12:50:19.415  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.8699 +14/06/2006 12:50:19.415  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30587
237.8700 +14/06/2006 12:50:19.535  000>> 91>>>>>>>>>>Part datagram received!
237.8701 +14/06/2006 12:50:19.535  000>> 91>>>>>>>>>>Complete!
237.8702 +14/06/2006 12:50:19.535  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31015
237.8703 +14/06/2006 12:50:19.535  000>> Good datagram received!
237.8704 +14/06/2006 12:50:19.535  000>> Receive Hello:SYN
237.8705 +14/06/2006 12:50:19.535  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30588
237.8706 +14/06/2006 12:50:19.555  000>> 91>>>>>>>>>>Part datagram received!
237.8707 +14/06/2006 12:50:19.555  000>> 91>>>>>>>>>>Complete!
237.8708 +14/06/2006 12:50:19.555  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31016
237.8709 +14/06/2006 12:50:19.565  000>> Good datagram received!
237.8710 +14/06/2006 12:50:19.565  000>> Receive Hello:ACK
237.8711 +14/06/2006 12:50:19.665  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8712 +14/06/2006 12:50:19.665  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30589
237.8713 +14/06/2006 12:50:19.665  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30590
237.8714 +14/06/2006 12:50:19.665  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30591
237.8715 +14/06/2006 12:50:19.665  000>> 98>>>>>>>>>>Part datagram received!
237.8716 +14/06/2006 12:50:19.665  000>> 98>>>>>>>>>>Complete!
237.8717 +14/06/2006 12:50:19.665  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31017
237.8718 +14/06/2006 12:50:19.665  000>> Good datagram received!
237.8719 +14/06/2006 12:50:19.675  000>> Listener:Received dictionary
237.8720 +14/06/2006 12:50:19.675  000>> 90>>>>>>>>>>Part datagram received!
237.8721 +14/06/2006 12:50:19.675  000>> 90>>>>>>>>>>Complete!
237.8722 +14/06/2006 12:50:19.675  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31018
237.8723 +14/06/2006 12:50:19.675  000>> Good datagram received!
237.8724 +14/06/2006 12:50:19.675  000>> Listener:Received RIB
237.8725 +14/06/2006 12:50:19.675  000>> 0>>>>>>>>>>Part datagram received!
237.8726 +14/06/2006 12:50:19.675  000>> 0>>>>>>>>>>Part datagram received!
237.8727 +14/06/2006 12:50:19.675  000>> 638>>>>>>>>>>Part datagram received!
237.8728 +14/06/2006 12:50:19.675  000>> 638>>>>>>>>>>Complete!
237.8729 +14/06/2006 12:50:19.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31019
237.8730 +14/06/2006 12:50:19.685  000>> Good datagram received!
237.8731 +14/06/2006 12:50:19.695  000>> Listener:Received Bundle Offer
237.8732 +14/06/2006 12:50:19.695  000>> Listener:Sending Empty bundle request...
237.8733 +14/06/2006 12:50:19.695  000>> Listener(receiveBOffer):But we can not restart connection...
237.8734 +14/06/2006 12:50:19.695  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30592
237.8735 +14/06/2006 12:50:19.785  000>> 78>>>>>>>>>>Part datagram received!
237.8736 +14/06/2006 12:50:19.785  000>> 78>>>>>>>>>>Complete!
237.8737 +14/06/2006 12:50:19.785  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31020
237.8738 +14/06/2006 12:50:19.785  000>> Good datagram received!
237.8739 +14/06/2006 12:50:19.785  000>> Initiator:No more requested bundles
237.8740 +14/06/2006 12:50:19.785  000>> Listener(receiveBundles):We can restart connection...
237.8741 +14/06/2006 12:50:19.886  000>> Hello Procedure:SENDSYN
237.8742 +14/06/2006 12:50:19.886  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30593
237.8743 +14/06/2006 12:50:19.906  000>> 91>>>>>>>>>>Part datagram received!
237.8744 +14/06/2006 12:50:19.906  000>> 91>>>>>>>>>>Complete!
237.8745 +14/06/2006 12:50:19.906  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31021
237.8746 +14/06/2006 12:50:19.906  000>> Good datagram received!
237.8747 +14/06/2006 12:50:19.916  000>> Receive Hello:SYNACK
237.8748 +14/06/2006 12:50:19.916  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30594
237.8749 +14/06/2006 12:50:20.016  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8750 +14/06/2006 12:50:20.016  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30595
237.8751 +14/06/2006 12:50:20.016  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30596
237.8752 +14/06/2006 12:50:20.016  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30597
237.8753 +14/06/2006 12:50:20.126  000>> 78>>>>>>>>>>Part datagram received!
237.8754 +14/06/2006 12:50:20.126  000>> 78>>>>>>>>>>Complete!
237.8755 +14/06/2006 12:50:20.126  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31022
237.8756 +14/06/2006 12:50:20.126  000>> Good datagram received!
237.8757 +14/06/2006 12:50:20.126  000>> Initiator:No more requested bundles
237.8758 +14/06/2006 12:50:20.126  000>> Initiator:But we can not restart connection...
237.8759 +14/06/2006 12:50:20.296  000>> 826>>>>>>>>>>Part datagram received!
237.8760 +14/06/2006 12:50:20.296  000>> 826>>>>>>>>>>Complete!
237.8761 +14/06/2006 12:50:20.296  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31023
237.8762 +14/06/2006 12:50:20.296  000>> Good datagram received!
237.8763 +14/06/2006 12:50:20.296  000>> Listener:Received dictionary
237.8764 +14/06/2006 12:50:20.296  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31024
237.8765 +14/06/2006 12:50:20.296  000>> Good datagram received!
237.8766 +14/06/2006 12:50:20.296  000>> Listener:Received RIB
237.8767 +14/06/2006 12:50:20.296  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31025
237.8768 +14/06/2006 12:50:20.296  000>> Good datagram received!
237.8769 +14/06/2006 12:50:20.316  000>> Listener:Received Bundle Offer
237.8770 +14/06/2006 12:50:20.316  000>> Listener:Sending Empty bundle request...
237.8771 +14/06/2006 12:50:20.316  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.8772 +14/06/2006 12:50:20.316  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30598
237.8773 +14/06/2006 12:50:20.436  000>> 91>>>>>>>>>>Part datagram received!
237.8774 +14/06/2006 12:50:20.436  000>> 91>>>>>>>>>>Complete!
237.8775 +14/06/2006 12:50:20.436  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31026
237.8776 +14/06/2006 12:50:20.436  000>> Good datagram received!
237.8777 +14/06/2006 12:50:20.436  000>> Receive Hello:SYN
237.8778 +14/06/2006 12:50:20.436  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30599
237.8779 +14/06/2006 12:50:20.466  000>> 91>>>>>>>>>>Part datagram received!
237.8780 +14/06/2006 12:50:20.466  000>> 91>>>>>>>>>>Complete!
237.8781 +14/06/2006 12:50:20.466  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31027
237.8782 +14/06/2006 12:50:20.466  000>> Good datagram received!
237.8783 +14/06/2006 12:50:20.466  000>> Receive Hello:ACK
237.8784 +14/06/2006 12:50:20.567  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8785 +14/06/2006 12:50:20.567  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30600
237.8786 +14/06/2006 12:50:20.567  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30601
237.8787 +14/06/2006 12:50:20.567  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30602
237.8788 +14/06/2006 12:50:20.567  000>> 98>>>>>>>>>>Part datagram received!
237.8789 +14/06/2006 12:50:20.567  000>> 98>>>>>>>>>>Complete!
237.8790 +14/06/2006 12:50:20.567  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31028
237.8791 +14/06/2006 12:50:20.567  000>> Good datagram received!
237.8792 +14/06/2006 12:50:20.577  000>> Listener:Received dictionary
237.8793 +14/06/2006 12:50:20.577  000>> 90>>>>>>>>>>Part datagram received!
237.8794 +14/06/2006 12:50:20.577  000>> 90>>>>>>>>>>Complete!
237.8795 +14/06/2006 12:50:20.577  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31029
237.8796 +14/06/2006 12:50:20.577  000>> Good datagram received!
237.8797 +14/06/2006 12:50:20.577  000>> Listener:Received RIB
237.8798 +14/06/2006 12:50:20.577  000>> 0>>>>>>>>>>Part datagram received!
237.8799 +14/06/2006 12:50:20.577  000>> 0>>>>>>>>>>Part datagram received!
237.8800 +14/06/2006 12:50:20.587  000>> 638>>>>>>>>>>Part datagram received!
237.8801 +14/06/2006 12:50:20.587  000>> 638>>>>>>>>>>Complete!
237.8802 +14/06/2006 12:50:20.587  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31030
237.8803 +14/06/2006 12:50:20.587  000>> Good datagram received!
237.8804 +14/06/2006 12:50:20.597  000>> Listener:Received Bundle Offer
237.8805 +14/06/2006 12:50:20.597  000>> Listener:Sending Empty bundle request...
237.8806 +14/06/2006 12:50:20.597  000>> Listener(receiveBOffer):But we can not restart connection...
237.8807 +14/06/2006 12:50:20.607  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30603
237.8808 +14/06/2006 12:50:20.677  000>> 78>>>>>>>>>>Part datagram received!
237.8809 +14/06/2006 12:50:20.677  000>> 78>>>>>>>>>>Complete!
237.8810 +14/06/2006 12:50:20.687  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31031
237.8811 +14/06/2006 12:50:20.687  000>> Good datagram received!
237.8812 +14/06/2006 12:50:20.687  000>> Initiator:No more requested bundles
237.8813 +14/06/2006 12:50:20.687  000>> Listener(receiveBundles):We can restart connection...
237.8814 +14/06/2006 12:50:20.787  000>> Hello Procedure:SENDSYN
237.8815 +14/06/2006 12:50:20.787  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30604
237.8816 +14/06/2006 12:50:20.807  000>> 91>>>>>>>>>>Part datagram received!
237.8817 +14/06/2006 12:50:20.807  000>> 91>>>>>>>>>>Complete!
237.8818 +14/06/2006 12:50:20.807  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31032
237.8819 +14/06/2006 12:50:20.807  000>> Good datagram received!
237.8820 +14/06/2006 12:50:20.807  000>> Receive Hello:SYNACK
237.8821 +14/06/2006 12:50:20.807  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30605
237.8822 +14/06/2006 12:50:20.907  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8823 +14/06/2006 12:50:20.907  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30606
237.8824 +14/06/2006 12:50:20.907  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30607
237.8825 +14/06/2006 12:50:20.907  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30608
237.8826 +14/06/2006 12:50:20.937  000>> 98>>>>>>>>>>Part datagram received!
237.8827 +14/06/2006 12:50:20.937  000>> 98>>>>>>>>>>Complete!
237.8828 +14/06/2006 12:50:20.937  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31033
237.8829 +14/06/2006 12:50:20.937  000>> Good datagram received!
237.8830 +14/06/2006 12:50:20.937  000>> Listener:Received dictionary
237.8831 +14/06/2006 12:50:20.937  000>> 90>>>>>>>>>>Part datagram received!
237.8832 +14/06/2006 12:50:20.947  000>> 90>>>>>>>>>>Complete!
237.8833 +14/06/2006 12:50:20.947  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31034
237.8834 +14/06/2006 12:50:20.947  000>> Good datagram received!
237.8835 +14/06/2006 12:50:20.947  000>> Listener:Received RIB
237.8836 +14/06/2006 12:50:21.097  000>> 716>>>>>>>>>>Part datagram received!
237.8837 +14/06/2006 12:50:21.097  000>> 716>>>>>>>>>>Complete!
237.8838 +14/06/2006 12:50:21.097  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31035
237.8839 +14/06/2006 12:50:21.097  000>> Good datagram received!
237.8840 +14/06/2006 12:50:21.107  000>> Listener:Received Bundle Offer
237.8841 +14/06/2006 12:50:21.107  000>> Listener:Sending Empty bundle request...
237.8842 +14/06/2006 12:50:21.107  000>> Listener(receiveBOffer):But we can not restart connection...
237.8843 +14/06/2006 12:50:21.117  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30609
237.8844 +14/06/2006 12:50:21.117  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31036
237.8845 +14/06/2006 12:50:21.117  000>> Good datagram received!
237.8846 +14/06/2006 12:50:21.117  000>> Initiator:No more requested bundles
237.8847 +14/06/2006 12:50:21.117  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.8848 +14/06/2006 12:50:21.258  000>> 91>>>>>>>>>>Part datagram received!
237.8849 +14/06/2006 12:50:21.258  000>> 91>>>>>>>>>>Complete!
237.8850 +14/06/2006 12:50:21.258  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31037
237.8851 +14/06/2006 12:50:21.258  000>> Good datagram received!
237.8852 +14/06/2006 12:50:21.258  000>> Receive Hello:SYN
237.8853 +14/06/2006 12:50:21.258  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30610
237.8854 +14/06/2006 12:50:21.298  000>> 91>>>>>>>>>>Part datagram received!
237.8855 +14/06/2006 12:50:21.298  000>> 91>>>>>>>>>>Complete!
237.8856 +14/06/2006 12:50:21.298  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31038
237.8857 +14/06/2006 12:50:21.298  000>> Good datagram received!
237.8858 +14/06/2006 12:50:21.298  000>> Receive Hello:ACK
237.8859 +14/06/2006 12:50:21.398  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8860 +14/06/2006 12:50:21.398  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30611
237.8861 +14/06/2006 12:50:21.398  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30612
237.8862 +14/06/2006 12:50:21.398  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30613
237.8863 +14/06/2006 12:50:21.438  000>> 98>>>>>>>>>>Part datagram received!
237.8864 +14/06/2006 12:50:21.438  000>> 98>>>>>>>>>>Complete!
237.8865 +14/06/2006 12:50:21.438  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31039
237.8866 +14/06/2006 12:50:21.438  000>> Good datagram received!
237.8867 +14/06/2006 12:50:21.438  000>> Listener:Received dictionary
237.8868 +14/06/2006 12:50:21.438  000>> 90>>>>>>>>>>Part datagram received!
237.8869 +14/06/2006 12:50:21.438  000>> 90>>>>>>>>>>Complete!
237.8870 +14/06/2006 12:50:21.448  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31040
237.8871 +14/06/2006 12:50:21.448  000>> Good datagram received!
237.8872 +14/06/2006 12:50:21.448  000>> Listener:Received RIB
237.8873 +14/06/2006 12:50:21.598  000>> 716>>>>>>>>>>Part datagram received!
237.8874 +14/06/2006 12:50:21.598  000>> 716>>>>>>>>>>Complete!
237.8875 +14/06/2006 12:50:21.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31041
237.8876 +14/06/2006 12:50:21.598  000>> Good datagram received!
237.8877 +14/06/2006 12:50:21.608  000>> Listener:Received Bundle Offer
237.8878 +14/06/2006 12:50:21.608  000>> Listener:Sending Empty bundle request...
237.8879 +14/06/2006 12:50:21.618  000>> Listener(receiveBOffer):But we can not restart connection...
237.8880 +14/06/2006 12:50:21.618  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30614
237.8881 +14/06/2006 12:50:21.618  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31042
237.8882 +14/06/2006 12:50:21.618  000>> Good datagram received!
237.8883 +14/06/2006 12:50:21.618  000>> Initiator:No more requested bundles
237.8884 +14/06/2006 12:50:21.618  000>> Listener(receiveBundles):We can restart connection...
237.8885 +14/06/2006 12:50:21.718  000>> Hello Procedure:SENDSYN
237.8886 +14/06/2006 12:50:21.718  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30615
237.8887 +14/06/2006 12:50:21.768  000>> 91>>>>>>>>>>Part datagram received!
237.8888 +14/06/2006 12:50:21.768  000>> 91>>>>>>>>>>Complete!
237.8889 +14/06/2006 12:50:21.768  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31043
237.8890 +14/06/2006 12:50:21.768  000>> Good datagram received!
237.8891 +14/06/2006 12:50:21.768  000>> Receive Hello:SYNACK
237.8892 +14/06/2006 12:50:21.768  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30616
237.8893 +14/06/2006 12:50:21.878  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8894 +14/06/2006 12:50:21.878  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30617
237.8895 +14/06/2006 12:50:21.878  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30618
237.8896 +14/06/2006 12:50:21.878  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30619
237.8897 +14/06/2006 12:50:21.919  000>> 98>>>>>>>>>>Part datagram received!
237.8898 +14/06/2006 12:50:21.919  000>> 98>>>>>>>>>>Complete!
237.8899 +14/06/2006 12:50:21.919  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31044
237.8900 +14/06/2006 12:50:21.919  000>> Good datagram received!
237.8901 +14/06/2006 12:50:21.919  000>> Listener:Received dictionary
237.8902 +14/06/2006 12:50:21.939  000>> 90>>>>>>>>>>Part datagram received!
237.8903 +14/06/2006 12:50:21.939  000>> 90>>>>>>>>>>Complete!
237.8904 +14/06/2006 12:50:21.939  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31045
237.8905 +14/06/2006 12:50:21.939  000>> Good datagram received!
237.8906 +14/06/2006 12:50:21.949  000>> Listener:Received RIB
237.8907 +14/06/2006 12:50:22.099  000>> 716>>>>>>>>>>Part datagram received!
237.8908 +14/06/2006 12:50:22.099  000>> 716>>>>>>>>>>Complete!
237.8909 +14/06/2006 12:50:22.099  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31046
237.8910 +14/06/2006 12:50:22.099  000>> Good datagram received!
237.8911 +14/06/2006 12:50:22.109  000>> Listener:Received Bundle Offer
237.8912 +14/06/2006 12:50:22.119  000>> Listener:Sending Empty bundle request...
237.8913 +14/06/2006 12:50:22.119  000>> Listener(receiveBOffer):But we can not restart connection...
237.8914 +14/06/2006 12:50:22.119  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30620
237.8915 +14/06/2006 12:50:22.119  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31047
237.8916 +14/06/2006 12:50:22.119  000>> Good datagram received!
237.8917 +14/06/2006 12:50:22.119  000>> Initiator:No more requested bundles
237.8918 +14/06/2006 12:50:22.119  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.8919 +14/06/2006 12:50:22.249  000>> 91>>>>>>>>>>Part datagram received!
237.8920 +14/06/2006 12:50:22.249  000>> 91>>>>>>>>>>Complete!
237.8921 +14/06/2006 12:50:22.249  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31048
237.8922 +14/06/2006 12:50:22.249  000>> Good datagram received!
237.8923 +14/06/2006 12:50:22.249  000>> Receive Hello:SYN
237.8924 +14/06/2006 12:50:22.249  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30621
237.8925 +14/06/2006 12:50:22.269  000>> 91>>>>>>>>>>Part datagram received!
237.8926 +14/06/2006 12:50:22.279  000>> 91>>>>>>>>>>Complete!
237.8927 +14/06/2006 12:50:22.279  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31049
237.8928 +14/06/2006 12:50:22.279  000>> Good datagram received!
237.8929 +14/06/2006 12:50:22.279  000>> Receive Hello:ACK
237.8930 +14/06/2006 12:50:22.379  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8931 +14/06/2006 12:50:22.379  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30622
237.8932 +14/06/2006 12:50:22.379  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30623
237.8933 +14/06/2006 12:50:22.379  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30624
237.8934 +14/06/2006 12:50:22.379  000>> 98>>>>>>>>>>Part datagram received!
237.8935 +14/06/2006 12:50:22.379  000>> 98>>>>>>>>>>Complete!
237.8936 +14/06/2006 12:50:22.379  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31050
237.8937 +14/06/2006 12:50:22.379  000>> Good datagram received!
237.8938 +14/06/2006 12:50:22.389  000>> Listener:Received dictionary
237.8939 +14/06/2006 12:50:22.389  000>> 90>>>>>>>>>>Part datagram received!
237.8940 +14/06/2006 12:50:22.389  000>> 90>>>>>>>>>>Complete!
237.8941 +14/06/2006 12:50:22.389  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31051
237.8942 +14/06/2006 12:50:22.389  000>> Good datagram received!
237.8943 +14/06/2006 12:50:22.389  000>> Listener:Received RIB
237.8944 +14/06/2006 12:50:22.389  000>> 0>>>>>>>>>>Part datagram received!
237.8945 +14/06/2006 12:50:22.389  000>> 0>>>>>>>>>>Part datagram received!
237.8946 +14/06/2006 12:50:22.389  000>> 638>>>>>>>>>>Part datagram received!
237.8947 +14/06/2006 12:50:22.389  000>> 638>>>>>>>>>>Complete!
237.8948 +14/06/2006 12:50:22.399  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31052
237.8949 +14/06/2006 12:50:22.399  000>> Good datagram received!
237.8950 +14/06/2006 12:50:22.409  000>> Listener:Received Bundle Offer
237.8951 +14/06/2006 12:50:22.409  000>> Listener:Sending Empty bundle request...
237.8952 +14/06/2006 12:50:22.409  000>> Listener(receiveBOffer):But we can not restart connection...
237.8953 +14/06/2006 12:50:22.409  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30625
237.8954 +14/06/2006 12:50:22.489  000>> 78>>>>>>>>>>Part datagram received!
237.8955 +14/06/2006 12:50:22.489  000>> 78>>>>>>>>>>Complete!
237.8956 +14/06/2006 12:50:22.489  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31053
237.8957 +14/06/2006 12:50:22.499  000>> Good datagram received!
237.8958 +14/06/2006 12:50:22.499  000>> Initiator:No more requested bundles
237.8959 +14/06/2006 12:50:22.499  000>> Listener(receiveBundles):We can restart connection...
237.8960 +14/06/2006 12:50:22.600  000>> Hello Procedure:SENDSYN
237.8961 +14/06/2006 12:50:22.600  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30626
237.8962 +14/06/2006 12:50:22.620  000>> 91>>>>>>>>>>Part datagram received!
237.8963 +14/06/2006 12:50:22.620  000>> 91>>>>>>>>>>Complete!
237.8964 +14/06/2006 12:50:22.620  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31054
237.8965 +14/06/2006 12:50:22.620  000>> Good datagram received!
237.8966 +14/06/2006 12:50:22.620  000>> Receive Hello:SYNACK
237.8967 +14/06/2006 12:50:22.630  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30627
237.8968 +14/06/2006 12:50:22.730  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.8969 +14/06/2006 12:50:22.730  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30628
237.8970 +14/06/2006 12:50:22.730  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30629
237.8971 +14/06/2006 12:50:22.730  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30630
237.8972 +14/06/2006 12:50:22.750  000>> 98>>>>>>>>>>Part datagram received!
237.8973 +14/06/2006 12:50:22.750  000>> 98>>>>>>>>>>Complete!
237.8974 +14/06/2006 12:50:22.750  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31055
237.8975 +14/06/2006 12:50:22.750  000>> Good datagram received!
237.8976 +14/06/2006 12:50:22.750  000>> Listener:Received dictionary
237.8977 +14/06/2006 12:50:22.770  000>> 728>>>>>>>>>>Part datagram received!
237.8978 +14/06/2006 12:50:22.770  000>> 728>>>>>>>>>>Complete!
237.8979 +14/06/2006 12:50:22.770  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31056
237.8980 +14/06/2006 12:50:22.770  000>> Good datagram received!
237.8981 +14/06/2006 12:50:22.770  000>> Listener:Received RIB
237.8982 +14/06/2006 12:50:22.770  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31057
237.8983 +14/06/2006 12:50:22.770  000>> Good datagram received!
237.8984 +14/06/2006 12:50:22.790  000>> Listener:Received Bundle Offer
237.8985 +14/06/2006 12:50:22.790  000>> Listener:Sending Empty bundle request...
237.8986 +14/06/2006 12:50:22.790  000>> Listener(receiveBOffer):But we can not restart connection...
237.8987 +14/06/2006 12:50:22.790  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30631
237.8988 +14/06/2006 12:50:22.870  000>> 78>>>>>>>>>>Part datagram received!
237.8989 +14/06/2006 12:50:22.870  000>> 78>>>>>>>>>>Complete!
237.8990 +14/06/2006 12:50:22.870  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31058
237.8991 +14/06/2006 12:50:22.870  000>> Good datagram received!
237.8992 +14/06/2006 12:50:22.870  000>> Initiator:No more requested bundles
237.8993 +14/06/2006 12:50:22.870  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.8994 +14/06/2006 12:50:23.000  000>> 91>>>>>>>>>>Part datagram received!
237.8995 +14/06/2006 12:50:23.000  000>> 91>>>>>>>>>>Complete!
237.8996 +14/06/2006 12:50:23.000  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31059
237.8997 +14/06/2006 12:50:23.000  000>> Good datagram received!
237.8998 +14/06/2006 12:50:23.000  000>> Receive Hello:SYN
237.8999 +14/06/2006 12:50:23.000  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30632
237.9000 +14/06/2006 12:50:23.080  000>> 91>>>>>>>>>>Part datagram received!
237.9001 +14/06/2006 12:50:23.080  000>> 91>>>>>>>>>>Complete!
237.9002 +14/06/2006 12:50:23.090  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31060
237.9003 +14/06/2006 12:50:23.090  000>> Good datagram received!
237.9004 +14/06/2006 12:50:23.090  000>> Receive Hello:ACK
237.9005 +14/06/2006 12:50:23.190  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9006 +14/06/2006 12:50:23.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30633
237.9007 +14/06/2006 12:50:23.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30634
237.9008 +14/06/2006 12:50:23.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30635
237.9009 +14/06/2006 12:50:23.190  000>> 98>>>>>>>>>>Part datagram received!
237.9010 +14/06/2006 12:50:23.190  000>> 98>>>>>>>>>>Complete!
237.9011 +14/06/2006 12:50:23.190  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31061
237.9012 +14/06/2006 12:50:23.190  000>> Good datagram received!
237.9013 +14/06/2006 12:50:23.200  000>> Listener:Received dictionary
237.9014 +14/06/2006 12:50:23.200  000>> 90>>>>>>>>>>Part datagram received!
237.9015 +14/06/2006 12:50:23.200  000>> 90>>>>>>>>>>Complete!
237.9016 +14/06/2006 12:50:23.200  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31062
237.9017 +14/06/2006 12:50:23.200  000>> Good datagram received!
237.9018 +14/06/2006 12:50:23.200  000>> Listener:Received RIB
237.9019 +14/06/2006 12:50:23.200  000>> 0>>>>>>>>>>Part datagram received!
237.9020 +14/06/2006 12:50:23.200  000>> 638>>>>>>>>>>Part datagram received!
237.9021 +14/06/2006 12:50:23.210  000>> 638>>>>>>>>>>Complete!
237.9022 +14/06/2006 12:50:23.210  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31063
237.9023 +14/06/2006 12:50:23.210  000>> Good datagram received!
237.9024 +14/06/2006 12:50:23.220  000>> Listener:Received Bundle Offer
237.9025 +14/06/2006 12:50:23.220  000>> Listener:Sending Empty bundle request...
237.9026 +14/06/2006 12:50:23.220  000>> Listener(receiveBOffer):But we can not restart connection...
237.9027 +14/06/2006 12:50:23.230  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30636
237.9028 +14/06/2006 12:50:23.230  000>> 0>>>>>>>>>>Part datagram received!
237.9029 +14/06/2006 12:50:23.311  000>> 78>>>>>>>>>>Part datagram received!
237.9030 +14/06/2006 12:50:23.311  000>> 78>>>>>>>>>>Complete!
237.9031 +14/06/2006 12:50:23.311  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31064
237.9032 +14/06/2006 12:50:23.311  000>> Good datagram received!
237.9033 +14/06/2006 12:50:23.311  000>> Initiator:No more requested bundles
237.9034 +14/06/2006 12:50:23.311  000>> Listener(receiveBundles):We can restart connection...
237.9035 +14/06/2006 12:50:23.411  000>> Hello Procedure:SENDSYN
237.9036 +14/06/2006 12:50:23.411  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30637
237.9037 +14/06/2006 12:50:23.431  000>> 91>>>>>>>>>>Part datagram received!
237.9038 +14/06/2006 12:50:23.431  000>> 91>>>>>>>>>>Complete!
237.9039 +14/06/2006 12:50:23.441  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31065
237.9040 +14/06/2006 12:50:23.441  000>> Good datagram received!
237.9041 +14/06/2006 12:50:23.441  000>> Receive Hello:SYNACK
237.9042 +14/06/2006 12:50:23.441  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30638
237.9043 +14/06/2006 12:50:23.541  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9044 +14/06/2006 12:50:23.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30639
237.9045 +14/06/2006 12:50:23.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30640
237.9046 +14/06/2006 12:50:23.541  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30641
237.9047 +14/06/2006 12:50:23.611  000>> 78>>>>>>>>>>Part datagram received!
237.9048 +14/06/2006 12:50:23.611  000>> 78>>>>>>>>>>Complete!
237.9049 +14/06/2006 12:50:23.611  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31066
237.9050 +14/06/2006 12:50:23.611  000>> Good datagram received!
237.9051 +14/06/2006 12:50:23.611  000>> Initiator:No more requested bundles
237.9052 +14/06/2006 12:50:23.611  000>> Initiator:But we can not restart connection...
237.9053 +14/06/2006 12:50:23.801  000>> 826>>>>>>>>>>Part datagram received!
237.9054 +14/06/2006 12:50:23.801  000>> 826>>>>>>>>>>Complete!
237.9055 +14/06/2006 12:50:23.801  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31067
237.9056 +14/06/2006 12:50:23.801  000>> Good datagram received!
237.9057 +14/06/2006 12:50:23.801  000>> Listener:Received dictionary
237.9058 +14/06/2006 12:50:23.811  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31068
237.9059 +14/06/2006 12:50:23.811  000>> Good datagram received!
237.9060 +14/06/2006 12:50:23.811  000>> Listener:Received RIB
237.9061 +14/06/2006 12:50:23.811  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31069
237.9062 +14/06/2006 12:50:23.811  000>> Good datagram received!
237.9063 +14/06/2006 12:50:23.821  000>> Listener:Received Bundle Offer
237.9064 +14/06/2006 12:50:23.821  000>> Listener:Sending Empty bundle request...
237.9065 +14/06/2006 12:50:23.821  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.9066 +14/06/2006 12:50:23.821  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30642
237.9067 +14/06/2006 12:50:23.951  000>> 91>>>>>>>>>>Part datagram received!
237.9068 +14/06/2006 12:50:23.951  000>> 91>>>>>>>>>>Complete!
237.9069 +14/06/2006 12:50:23.951  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31070
237.9070 +14/06/2006 12:50:23.951  000>> Good datagram received!
237.9071 +14/06/2006 12:50:23.951  000>> Receive Hello:SYN
237.9072 +14/06/2006 12:50:23.951  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30643
237.9073 +14/06/2006 12:50:23.971  000>> 91>>>>>>>>>>Part datagram received!
237.9074 +14/06/2006 12:50:23.971  000>> 91>>>>>>>>>>Complete!
237.9075 +14/06/2006 12:50:23.981  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31071
237.9076 +14/06/2006 12:50:23.981  000>> Good datagram received!
237.9077 +14/06/2006 12:50:23.981  000>> Receive Hello:ACK
237.9078 +14/06/2006 12:50:24.082  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9079 +14/06/2006 12:50:24.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30644
237.9080 +14/06/2006 12:50:24.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30645
237.9081 +14/06/2006 12:50:24.082  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30646
237.9082 +14/06/2006 12:50:24.102  000>> 98>>>>>>>>>>Part datagram received!
237.9083 +14/06/2006 12:50:24.102  000>> 98>>>>>>>>>>Complete!
237.9084 +14/06/2006 12:50:24.102  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31072
237.9085 +14/06/2006 12:50:24.102  000>> Good datagram received!
237.9086 +14/06/2006 12:50:24.102  000>> Listener:Received dictionary
237.9087 +14/06/2006 12:50:24.112  000>> 90>>>>>>>>>>Part datagram received!
237.9088 +14/06/2006 12:50:24.112  000>> 90>>>>>>>>>>Complete!
237.9089 +14/06/2006 12:50:24.112  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31073
237.9090 +14/06/2006 12:50:24.112  000>> Good datagram received!
237.9091 +14/06/2006 12:50:24.112  000>> Listener:Received RIB
237.9092 +14/06/2006 12:50:24.302  000>> 716>>>>>>>>>>Part datagram received!
237.9093 +14/06/2006 12:50:24.302  000>> 716>>>>>>>>>>Complete!
237.9094 +14/06/2006 12:50:24.302  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31074
237.9095 +14/06/2006 12:50:24.312  000>> Good datagram received!
237.9096 +14/06/2006 12:50:24.322  000>> Listener:Received Bundle Offer
237.9097 +14/06/2006 12:50:24.322  000>> Listener:Sending Empty bundle request...
237.9098 +14/06/2006 12:50:24.322  000>> Listener(receiveBOffer):But we can not restart connection...
237.9099 +14/06/2006 12:50:24.322  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30647
237.9100 +14/06/2006 12:50:24.322  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31075
237.9101 +14/06/2006 12:50:24.322  000>> Good datagram received!
237.9102 +14/06/2006 12:50:24.322  000>> Initiator:No more requested bundles
237.9103 +14/06/2006 12:50:24.322  000>> Listener(receiveBundles):We can restart connection...
237.9104 +14/06/2006 12:50:24.422  000>> Hello Procedure:SENDSYN
237.9105 +14/06/2006 12:50:24.422  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30648
237.9106 +14/06/2006 12:50:24.472  000>> 91>>>>>>>>>>Part datagram received!
237.9107 +14/06/2006 12:50:24.472  000>> 91>>>>>>>>>>Complete!
237.9108 +14/06/2006 12:50:24.472  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31076
237.9109 +14/06/2006 12:50:24.472  000>> Good datagram received!
237.9110 +14/06/2006 12:50:24.472  000>> Receive Hello:SYNACK
237.9111 +14/06/2006 12:50:24.482  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30649
237.9112 +14/06/2006 12:50:24.582  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9113 +14/06/2006 12:50:24.582  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30650
237.9114 +14/06/2006 12:50:24.582  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30651
237.9115 +14/06/2006 12:50:24.582  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30652
237.9116 +14/06/2006 12:50:24.592  000>> 98>>>>>>>>>>Part datagram received!
237.9117 +14/06/2006 12:50:24.592  000>> 98>>>>>>>>>>Complete!
237.9118 +14/06/2006 12:50:24.592  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31077
237.9119 +14/06/2006 12:50:24.592  000>> Good datagram received!
237.9120 +14/06/2006 12:50:24.592  000>> Listener:Received dictionary
237.9121 +14/06/2006 12:50:24.602  000>> 90>>>>>>>>>>Part datagram received!
237.9122 +14/06/2006 12:50:24.602  000>> 90>>>>>>>>>>Complete!
237.9123 +14/06/2006 12:50:24.602  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31078
237.9124 +14/06/2006 12:50:24.602  000>> Good datagram received!
237.9125 +14/06/2006 12:50:24.602  000>> Listener:Received RIB
237.9126 +14/06/2006 12:50:24.703  000>> 716>>>>>>>>>>Part datagram received!
237.9127 +14/06/2006 12:50:24.703  000>> 716>>>>>>>>>>Complete!
237.9128 +14/06/2006 12:50:24.703  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31079
237.9129 +14/06/2006 12:50:24.703  000>> Good datagram received!
237.9130 +14/06/2006 12:50:24.723  000>> Listener:Received Bundle Offer
237.9131 +14/06/2006 12:50:24.723  000>> Listener:Sending Empty bundle request...
237.9132 +14/06/2006 12:50:24.723  000>> Listener(receiveBOffer):But we can not restart connection...
237.9133 +14/06/2006 12:50:24.723  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30653
237.9134 +14/06/2006 12:50:24.723  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31080
237.9135 +14/06/2006 12:50:24.723  000>> Good datagram received!
237.9136 +14/06/2006 12:50:24.723  000>> Initiator:No more requested bundles
237.9137 +14/06/2006 12:50:24.723  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.9138 +14/06/2006 12:50:24.843  000>> 91>>>>>>>>>>Part datagram received!
237.9139 +14/06/2006 12:50:24.843  000>> 91>>>>>>>>>>Complete!
237.9140 +14/06/2006 12:50:24.843  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31081
237.9141 +14/06/2006 12:50:24.843  000>> Good datagram received!
237.9142 +14/06/2006 12:50:24.843  000>> Receive Hello:SYN
237.9143 +14/06/2006 12:50:24.843  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30654
237.9144 +14/06/2006 12:50:24.863  000>> 91>>>>>>>>>>Part datagram received!
237.9145 +14/06/2006 12:50:24.863  000>> 91>>>>>>>>>>Complete!
237.9146 +14/06/2006 12:50:24.863  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31082
237.9147 +14/06/2006 12:50:24.863  000>> Good datagram received!
237.9148 +14/06/2006 12:50:24.873  000>> Receive Hello:ACK
237.9149 +14/06/2006 12:50:24.973  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9150 +14/06/2006 12:50:24.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30655
237.9151 +14/06/2006 12:50:24.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30656
237.9152 +14/06/2006 12:50:24.973  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30657
237.9153 +14/06/2006 12:50:25.093  000>> 98>>>>>>>>>>Part datagram received!
237.9154 +14/06/2006 12:50:25.103  000>> 98>>>>>>>>>>Complete!
237.9155 +14/06/2006 12:50:25.103  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31083
237.9156 +14/06/2006 12:50:25.103  000>> Good datagram received!
237.9157 +14/06/2006 12:50:25.103  000>> Listener:Received dictionary
237.9158 +14/06/2006 12:50:25.103  000>> 90>>>>>>>>>>Part datagram received!
237.9159 +14/06/2006 12:50:25.103  000>> 90>>>>>>>>>>Complete!
237.9160 +14/06/2006 12:50:25.103  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31084
237.9161 +14/06/2006 12:50:25.103  000>> Good datagram received!
237.9162 +14/06/2006 12:50:25.113  000>> Listener:Received RIB
237.9163 +14/06/2006 12:50:25.203  000>> 716>>>>>>>>>>Part datagram received!
237.9164 +14/06/2006 12:50:25.203  000>> 716>>>>>>>>>>Complete!
237.9165 +14/06/2006 12:50:25.203  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31085
237.9166 +14/06/2006 12:50:25.213  000>> Good datagram received!
237.9167 +14/06/2006 12:50:25.223  000>> Listener:Received Bundle Offer
237.9168 +14/06/2006 12:50:25.223  000>> Listener:Sending Empty bundle request...
237.9169 +14/06/2006 12:50:25.223  000>> Listener(receiveBOffer):But we can not restart connection...
237.9170 +14/06/2006 12:50:25.223  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30658
237.9171 +14/06/2006 12:50:25.223  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31086
237.9172 +14/06/2006 12:50:25.223  000>> Good datagram received!
237.9173 +14/06/2006 12:50:25.223  000>> Initiator:No more requested bundles
237.9174 +14/06/2006 12:50:25.233  000>> Listener(receiveBundles):We can restart connection...
237.9175 +14/06/2006 12:50:25.333  000>> Hello Procedure:SENDSYN
237.9176 +14/06/2006 12:50:25.333  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30659
237.9177 +14/06/2006 12:50:25.374  000>> 91>>>>>>>>>>Part datagram received!
237.9178 +14/06/2006 12:50:25.374  000>> 91>>>>>>>>>>Complete!
237.9179 +14/06/2006 12:50:25.374  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31087
237.9180 +14/06/2006 12:50:25.374  000>> Good datagram received!
237.9181 +14/06/2006 12:50:25.374  000>> Receive Hello:SYNACK
237.9182 +14/06/2006 12:50:25.384  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30660
237.9183 +14/06/2006 12:50:25.484  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9184 +14/06/2006 12:50:25.484  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30661
237.9185 +14/06/2006 12:50:25.484  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30662
237.9186 +14/06/2006 12:50:25.484  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30663
237.9187 +14/06/2006 12:50:25.514  000>> 98>>>>>>>>>>Part datagram received!
237.9188 +14/06/2006 12:50:25.514  000>> 98>>>>>>>>>>Complete!
237.9189 +14/06/2006 12:50:25.514  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31088
237.9190 +14/06/2006 12:50:25.514  000>> Good datagram received!
237.9191 +14/06/2006 12:50:25.524  000>> Listener:Received dictionary
237.9192 +14/06/2006 12:50:25.534  000>> 728>>>>>>>>>>Part datagram received!
237.9193 +14/06/2006 12:50:25.534  000>> 728>>>>>>>>>>Complete!
237.9194 +14/06/2006 12:50:25.534  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31089
237.9195 +14/06/2006 12:50:25.534  000>> Good datagram received!
237.9196 +14/06/2006 12:50:25.534  000>> Listener:Received RIB
237.9197 +14/06/2006 12:50:25.534  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31090
237.9198 +14/06/2006 12:50:25.534  000>> Good datagram received!
237.9199 +14/06/2006 12:50:25.554  000>> Listener:Received Bundle Offer
237.9200 +14/06/2006 12:50:25.554  000>> Listener:Sending Empty bundle request...
237.9201 +14/06/2006 12:50:25.554  000>> Listener(receiveBOffer):But we can not restart connection...
237.9202 +14/06/2006 12:50:25.554  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30664
237.9203 +14/06/2006 12:50:25.634  000>> 78>>>>>>>>>>Part datagram received!
237.9204 +14/06/2006 12:50:25.634  000>> 78>>>>>>>>>>Complete!
237.9205 +14/06/2006 12:50:25.634  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31091
237.9206 +14/06/2006 12:50:25.634  000>> Good datagram received!
237.9207 +14/06/2006 12:50:25.644  000>> Initiator:No more requested bundles
237.9208 +14/06/2006 12:50:25.644  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.9209 +14/06/2006 12:50:25.724  000>> 91>>>>>>>>>>Part datagram received!
237.9210 +14/06/2006 12:50:25.724  000>> 91>>>>>>>>>>Complete!
237.9211 +14/06/2006 12:50:25.724  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31092
237.9212 +14/06/2006 12:50:25.724  000>> Good datagram received!
237.9213 +14/06/2006 12:50:25.724  000>> Receive Hello:SYN
237.9214 +14/06/2006 12:50:25.724  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30665
237.9215 +14/06/2006 12:50:25.744  000>> 91>>>>>>>>>>Part datagram received!
237.9216 +14/06/2006 12:50:25.744  000>> 91>>>>>>>>>>Complete!
237.9217 +14/06/2006 12:50:25.744  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31093
237.9218 +14/06/2006 12:50:25.744  000>> Good datagram received!
237.9219 +14/06/2006 12:50:25.744  000>> Receive Hello:ACK
237.9220 +14/06/2006 12:50:25.844  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9221 +14/06/2006 12:50:25.844  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30666
237.9222 +14/06/2006 12:50:25.844  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30667
237.9223 +14/06/2006 12:50:25.844  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30668
237.9224 +14/06/2006 12:50:25.864  000>> 98>>>>>>>>>>Part datagram received!
237.9225 +14/06/2006 12:50:25.864  000>> 98>>>>>>>>>>Complete!
237.9226 +14/06/2006 12:50:25.864  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31094
237.9227 +14/06/2006 12:50:25.874  000>> Good datagram received!
237.9228 +14/06/2006 12:50:25.874  000>> Listener:Received dictionary
237.9229 +14/06/2006 12:50:25.874  000>> 90>>>>>>>>>>Part datagram received!
237.9230 +14/06/2006 12:50:25.874  000>> 90>>>>>>>>>>Complete!
237.9231 +14/06/2006 12:50:25.874  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31095
237.9232 +14/06/2006 12:50:25.874  000>> Good datagram received!
237.9233 +14/06/2006 12:50:25.874  000>> Listener:Received RIB
237.9234 +14/06/2006 12:50:26.004  000>> 716>>>>>>>>>>Part datagram received!
237.9235 +14/06/2006 12:50:26.014  000>> 716>>>>>>>>>>Complete!
237.9236 +14/06/2006 12:50:26.014  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31096
237.9237 +14/06/2006 12:50:26.014  000>> Good datagram received!
237.9238 +14/06/2006 12:50:26.024  000>> Listener:Received Bundle Offer
237.9239 +14/06/2006 12:50:26.024  000>> Listener:Sending Empty bundle request...
237.9240 +14/06/2006 12:50:26.024  000>> Listener(receiveBOffer):But we can not restart connection...
237.9241 +14/06/2006 12:50:26.024  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30669
237.9242 +14/06/2006 12:50:26.024  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31097
237.9243 +14/06/2006 12:50:26.034  000>> Good datagram received!
237.9244 +14/06/2006 12:50:26.034  000>> Initiator:No more requested bundles
237.9245 +14/06/2006 12:50:26.034  000>> Listener(receiveBundles):We can restart connection...
237.9246 +14/06/2006 12:50:26.135  000>> Hello Procedure:SENDSYN
237.9247 +14/06/2006 12:50:26.135  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30670
237.9248 +14/06/2006 12:50:26.175  000>> 91>>>>>>>>>>Part datagram received!
237.9249 +14/06/2006 12:50:26.175  000>> 91>>>>>>>>>>Complete!
237.9250 +14/06/2006 12:50:26.175  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31098
237.9251 +14/06/2006 12:50:26.175  000>> Good datagram received!
237.9252 +14/06/2006 12:50:26.175  000>> Receive Hello:SYNACK
237.9253 +14/06/2006 12:50:26.175  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30671
237.9254 +14/06/2006 12:50:26.275  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9255 +14/06/2006 12:50:26.275  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30672
237.9256 +14/06/2006 12:50:26.275  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30673
237.9257 +14/06/2006 12:50:26.275  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30674
237.9258 +14/06/2006 12:50:26.295  000>> 98>>>>>>>>>>Part datagram received!
237.9259 +14/06/2006 12:50:26.295  000>> 98>>>>>>>>>>Complete!
237.9260 +14/06/2006 12:50:26.295  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31099
237.9261 +14/06/2006 12:50:26.295  000>> Good datagram received!
237.9262 +14/06/2006 12:50:26.295  000>> Listener:Received dictionary
237.9263 +14/06/2006 12:50:26.305  000>> 90>>>>>>>>>>Part datagram received!
237.9264 +14/06/2006 12:50:26.305  000>> 90>>>>>>>>>>Complete!
237.9265 +14/06/2006 12:50:26.305  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31100
237.9266 +14/06/2006 12:50:26.305  000>> Good datagram received!
237.9267 +14/06/2006 12:50:26.305  000>> Listener:Received RIB
237.9268 +14/06/2006 12:50:26.415  000>> 716>>>>>>>>>>Part datagram received!
237.9269 +14/06/2006 12:50:26.415  000>> 716>>>>>>>>>>Complete!
237.9270 +14/06/2006 12:50:26.415  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31101
237.9271 +14/06/2006 12:50:26.415  000>> Good datagram received!
237.9272 +14/06/2006 12:50:26.425  000>> Listener:Received Bundle Offer
237.9273 +14/06/2006 12:50:26.425  000>> Listener:Sending Empty bundle request...
237.9274 +14/06/2006 12:50:26.425  000>> Listener(receiveBOffer):But we can not restart connection...
237.9275 +14/06/2006 12:50:26.425  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30675
237.9276 +14/06/2006 12:50:26.435  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31102
237.9277 +14/06/2006 12:50:26.435  000>> Good datagram received!
237.9278 +14/06/2006 12:50:26.435  000>> Initiator:No more requested bundles
237.9279 +14/06/2006 12:50:26.435  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.9280 +14/06/2006 12:50:26.555  000>> 91>>>>>>>>>>Part datagram received!
237.9281 +14/06/2006 12:50:26.555  000>> 91>>>>>>>>>>Complete!
237.9282 +14/06/2006 12:50:26.555  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31103
237.9283 +14/06/2006 12:50:26.555  000>> Good datagram received!
237.9284 +14/06/2006 12:50:26.555  000>> Receive Hello:SYN
237.9285 +14/06/2006 12:50:26.555  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30676
237.9286 +14/06/2006 12:50:26.585  000>> 91>>>>>>>>>>Part datagram received!
237.9287 +14/06/2006 12:50:26.585  000>> 91>>>>>>>>>>Complete!
237.9288 +14/06/2006 12:50:26.585  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31104
237.9289 +14/06/2006 12:50:26.585  000>> Good datagram received!
237.9290 +14/06/2006 12:50:26.585  000>> Receive Hello:ACK
237.9291 +14/06/2006 12:50:26.685  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9292 +14/06/2006 12:50:26.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30677
237.9293 +14/06/2006 12:50:26.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30678
237.9294 +14/06/2006 12:50:26.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30679
237.9295 +14/06/2006 12:50:26.685  000>> 98>>>>>>>>>>Part datagram received!
237.9296 +14/06/2006 12:50:26.685  000>> 98>>>>>>>>>>Complete!
237.9297 +14/06/2006 12:50:26.685  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31105
237.9298 +14/06/2006 12:50:26.685  000>> Good datagram received!
237.9299 +14/06/2006 12:50:26.695  000>> Listener:Received dictionary
237.9300 +14/06/2006 12:50:26.695  000>> 90>>>>>>>>>>Part datagram received!
237.9301 +14/06/2006 12:50:26.695  000>> 90>>>>>>>>>>Complete!
237.9302 +14/06/2006 12:50:26.695  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31106
237.9303 +14/06/2006 12:50:26.695  000>> Good datagram received!
237.9304 +14/06/2006 12:50:26.695  000>> Listener:Received RIB
237.9305 +14/06/2006 12:50:26.695  000>> 0>>>>>>>>>>Part datagram received!
237.9306 +14/06/2006 12:50:26.695  000>> 0>>>>>>>>>>Part datagram received!
237.9307 +14/06/2006 12:50:26.695  000>> 638>>>>>>>>>>Part datagram received!
237.9308 +14/06/2006 12:50:26.695  000>> 638>>>>>>>>>>Complete!
237.9309 +14/06/2006 12:50:26.705  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31107
237.9310 +14/06/2006 12:50:26.705  000>> Good datagram received!
237.9311 +14/06/2006 12:50:26.715  000>> Listener:Received Bundle Offer
237.9312 +14/06/2006 12:50:26.715  000>> Listener:Sending Empty bundle request...
237.9313 +14/06/2006 12:50:26.715  000>> Listener(receiveBOffer):But we can not restart connection...
237.9314 +14/06/2006 12:50:26.715  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30680
237.9315 +14/06/2006 12:50:26.796  000>> 78>>>>>>>>>>Part datagram received!
237.9316 +14/06/2006 12:50:26.796  000>> 78>>>>>>>>>>Complete!
237.9317 +14/06/2006 12:50:26.796  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31108
237.9318 +14/06/2006 12:50:26.796  000>> Good datagram received!
237.9319 +14/06/2006 12:50:26.806  000>> Initiator:No more requested bundles
237.9320 +14/06/2006 12:50:26.806  000>> Listener(receiveBundles):We can restart connection...
237.9321 +14/06/2006 12:50:26.906  000>> Hello Procedure:SENDSYN
237.9322 +14/06/2006 12:50:26.906  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30681
237.9323 +14/06/2006 12:50:26.926  000>> 91>>>>>>>>>>Part datagram received!
237.9324 +14/06/2006 12:50:26.926  000>> 91>>>>>>>>>>Complete!
237.9325 +14/06/2006 12:50:26.926  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31109
237.9326 +14/06/2006 12:50:26.926  000>> Good datagram received!
237.9327 +14/06/2006 12:50:26.926  000>> Receive Hello:SYNACK
237.9328 +14/06/2006 12:50:26.926  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30682
237.9329 +14/06/2006 12:50:27.026  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9330 +14/06/2006 12:50:27.026  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30683
237.9331 +14/06/2006 12:50:27.026  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30684
237.9332 +14/06/2006 12:50:27.026  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30685
237.9333 +14/06/2006 12:50:27.136  000>> 78>>>>>>>>>>Part datagram received!
237.9334 +14/06/2006 12:50:27.136  000>> 78>>>>>>>>>>Complete!
237.9335 +14/06/2006 12:50:27.136  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31110
237.9336 +14/06/2006 12:50:27.146  000>> Good datagram received!
237.9337 +14/06/2006 12:50:27.146  000>> Initiator:No more requested bundles
237.9338 +14/06/2006 12:50:27.146  000>> Initiator:But we can not restart connection...
237.9339 +14/06/2006 12:50:27.316  000>> 826>>>>>>>>>>Part datagram received!
237.9340 +14/06/2006 12:50:27.316  000>> 826>>>>>>>>>>Complete!
237.9341 +14/06/2006 12:50:27.316  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31111
237.9342 +14/06/2006 12:50:27.316  000>> Good datagram received!
237.9343 +14/06/2006 12:50:27.316  000>> Listener:Received dictionary
237.9344 +14/06/2006 12:50:27.316  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31112
237.9345 +14/06/2006 12:50:27.316  000>> Good datagram received!
237.9346 +14/06/2006 12:50:27.316  000>> Listener:Received RIB
237.9347 +14/06/2006 12:50:27.326  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31113
237.9348 +14/06/2006 12:50:27.326  000>> Good datagram received!
237.9349 +14/06/2006 12:50:27.336  000>> Listener:Received Bundle Offer
237.9350 +14/06/2006 12:50:27.336  000>> Listener:Sending Empty bundle request...
237.9351 +14/06/2006 12:50:27.336  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.9352 +14/06/2006 12:50:27.336  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30686
237.9353 +14/06/2006 12:50:27.467  000>> 91>>>>>>>>>>Part datagram received!
237.9354 +14/06/2006 12:50:27.467  000>> 91>>>>>>>>>>Complete!
237.9355 +14/06/2006 12:50:27.467  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31114
237.9356 +14/06/2006 12:50:27.467  000>> Good datagram received!
237.9357 +14/06/2006 12:50:27.467  000>> Receive Hello:SYN
237.9358 +14/06/2006 12:50:27.467  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30687
237.9359 +14/06/2006 12:50:27.487  000>> 91>>>>>>>>>>Part datagram received!
237.9360 +14/06/2006 12:50:27.487  000>> 91>>>>>>>>>>Complete!
237.9361 +14/06/2006 12:50:27.497  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31115
237.9362 +14/06/2006 12:50:27.497  000>> Good datagram received!
237.9363 +14/06/2006 12:50:27.497  000>> Receive Hello:ACK
237.9364 +14/06/2006 12:50:27.597  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9365 +14/06/2006 12:50:27.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30688
237.9366 +14/06/2006 12:50:27.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30689
237.9367 +14/06/2006 12:50:27.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30690
237.9368 +14/06/2006 12:50:27.597  000>> 98>>>>>>>>>>Part datagram received!
237.9369 +14/06/2006 12:50:27.597  000>> 98>>>>>>>>>>Complete!
237.9370 +14/06/2006 12:50:27.597  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31116
237.9371 +14/06/2006 12:50:27.607  000>> Good datagram received!
237.9372 +14/06/2006 12:50:27.607  000>> Listener:Received dictionary
237.9373 +14/06/2006 12:50:27.607  000>> 90>>>>>>>>>>Part datagram received!
237.9374 +14/06/2006 12:50:27.607  000>> 90>>>>>>>>>>Complete!
237.9375 +14/06/2006 12:50:27.607  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31117
237.9376 +14/06/2006 12:50:27.607  000>> Good datagram received!
237.9377 +14/06/2006 12:50:27.607  000>> Listener:Received RIB
237.9378 +14/06/2006 12:50:27.717  000>> 716>>>>>>>>>>Part datagram received!
237.9379 +14/06/2006 12:50:27.717  000>> 716>>>>>>>>>>Complete!
237.9380 +14/06/2006 12:50:27.717  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31118
237.9381 +14/06/2006 12:50:27.717  000>> Good datagram received!
237.9382 +14/06/2006 12:50:27.727  000>> Listener:Received Bundle Offer
237.9383 +14/06/2006 12:50:27.727  000>> Listener:Sending Empty bundle request...
237.9384 +14/06/2006 12:50:27.727  000>> Listener(receiveBOffer):But we can not restart connection...
237.9385 +14/06/2006 12:50:27.737  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30691
237.9386 +14/06/2006 12:50:27.737  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31119
237.9387 +14/06/2006 12:50:27.737  000>> Good datagram received!
237.9388 +14/06/2006 12:50:27.737  000>> Initiator:No more requested bundles
237.9389 +14/06/2006 12:50:27.737  000>> Listener(receiveBundles):We can restart connection...
237.9390 +14/06/2006 12:50:27.837  000>> Hello Procedure:SENDSYN
237.9391 +14/06/2006 12:50:27.837  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30692
237.9392 +14/06/2006 12:50:27.877  000>> 91>>>>>>>>>>Part datagram received!
237.9393 +14/06/2006 12:50:27.877  000>> 91>>>>>>>>>>Complete!
237.9394 +14/06/2006 12:50:27.877  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31120
237.9395 +14/06/2006 12:50:27.877  000>> Good datagram received!
237.9396 +14/06/2006 12:50:27.877  000>> Receive Hello:SYNACK
237.9397 +14/06/2006 12:50:27.887  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30693
237.9398 +14/06/2006 12:50:27.987  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9399 +14/06/2006 12:50:27.987  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30694
237.9400 +14/06/2006 12:50:27.987  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30695
237.9401 +14/06/2006 12:50:27.987  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30696
237.9402 +14/06/2006 12:50:28.137  000>> 78>>>>>>>>>>Part datagram received!
237.9403 +14/06/2006 12:50:28.137  000>> 78>>>>>>>>>>Complete!
237.9404 +14/06/2006 12:50:28.137  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31121
237.9405 +14/06/2006 12:50:28.137  000>> Good datagram received!
237.9406 +14/06/2006 12:50:28.137  000>> Initiator:No more requested bundles
237.9407 +14/06/2006 12:50:28.137  000>> Initiator:But we can not restart connection...
237.9408 +14/06/2006 12:50:28.318  000>> 826>>>>>>>>>>Part datagram received!
237.9409 +14/06/2006 12:50:28.318  000>> 826>>>>>>>>>>Complete!
237.9410 +14/06/2006 12:50:28.318  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31122
237.9411 +14/06/2006 12:50:28.318  000>> Good datagram received!
237.9412 +14/06/2006 12:50:28.318  000>> Listener:Received dictionary
237.9413 +14/06/2006 12:50:28.318  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31123
237.9414 +14/06/2006 12:50:28.318  000>> Good datagram received!
237.9415 +14/06/2006 12:50:28.318  000>> Listener:Received RIB
237.9416 +14/06/2006 12:50:28.328  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31124
237.9417 +14/06/2006 12:50:28.328  000>> Good datagram received!
237.9418 +14/06/2006 12:50:28.338  000>> Listener:Received Bundle Offer
237.9419 +14/06/2006 12:50:28.338  000>> Listener:Sending Empty bundle request...
237.9420 +14/06/2006 12:50:28.338  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.9421 +14/06/2006 12:50:28.338  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30697
237.9422 +14/06/2006 12:50:28.468  000>> 91>>>>>>>>>>Part datagram received!
237.9423 +14/06/2006 12:50:28.468  000>> 91>>>>>>>>>>Complete!
237.9424 +14/06/2006 12:50:28.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31125
237.9425 +14/06/2006 12:50:28.468  000>> Good datagram received!
237.9426 +14/06/2006 12:50:28.468  000>> Receive Hello:SYN
237.9427 +14/06/2006 12:50:28.468  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30698
237.9428 +14/06/2006 12:50:28.488  000>> 91>>>>>>>>>>Part datagram received!
237.9429 +14/06/2006 12:50:28.488  000>> 91>>>>>>>>>>Complete!
237.9430 +14/06/2006 12:50:28.488  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31126
237.9431 +14/06/2006 12:50:28.488  000>> Good datagram received!
237.9432 +14/06/2006 12:50:28.498  000>> Receive Hello:ACK
237.9433 +14/06/2006 12:50:28.598  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9434 +14/06/2006 12:50:28.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30699
237.9435 +14/06/2006 12:50:28.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30700
237.9436 +14/06/2006 12:50:28.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30701
237.9437 +14/06/2006 12:50:28.598  000>> 98>>>>>>>>>>Part datagram received!
237.9438 +14/06/2006 12:50:28.598  000>> 98>>>>>>>>>>Complete!
237.9439 +14/06/2006 12:50:28.598  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31127
237.9440 +14/06/2006 12:50:28.608  000>> Good datagram received!
237.9441 +14/06/2006 12:50:28.608  000>> Listener:Received dictionary
237.9442 +14/06/2006 12:50:28.608  000>> 90>>>>>>>>>>Part datagram received!
237.9443 +14/06/2006 12:50:28.608  000>> 90>>>>>>>>>>Complete!
237.9444 +14/06/2006 12:50:28.608  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31128
237.9445 +14/06/2006 12:50:28.608  000>> Good datagram received!
237.9446 +14/06/2006 12:50:28.608  000>> Listener:Received RIB
237.9447 +14/06/2006 12:50:28.718  000>> 716>>>>>>>>>>Part datagram received!
237.9448 +14/06/2006 12:50:28.718  000>> 716>>>>>>>>>>Complete!
237.9449 +14/06/2006 12:50:28.718  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31129
237.9450 +14/06/2006 12:50:28.718  000>> Good datagram received!
237.9451 +14/06/2006 12:50:28.738  000>> Listener:Received Bundle Offer
237.9452 +14/06/2006 12:50:28.738  000>> Listener:Sending Empty bundle request...
237.9453 +14/06/2006 12:50:28.738  000>> Listener(receiveBOffer):But we can not restart connection...
237.9454 +14/06/2006 12:50:28.738  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30702
237.9455 +14/06/2006 12:50:28.738  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31130
237.9456 +14/06/2006 12:50:28.738  000>> Good datagram received!
237.9457 +14/06/2006 12:50:28.738  000>> Initiator:No more requested bundles
237.9458 +14/06/2006 12:50:28.738  000>> Listener(receiveBundles):We can restart connection...
237.9459 +14/06/2006 12:50:28.838  000>> Hello Procedure:SENDSYN
237.9460 +14/06/2006 12:50:28.838  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30703
237.9461 +14/06/2006 12:50:28.879  000>> 91>>>>>>>>>>Part datagram received!
237.9462 +14/06/2006 12:50:28.879  000>> 91>>>>>>>>>>Complete!
237.9463 +14/06/2006 12:50:28.879  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31131
237.9464 +14/06/2006 12:50:28.879  000>> Good datagram received!
237.9465 +14/06/2006 12:50:28.879  000>> Receive Hello:SYNACK
237.9466 +14/06/2006 12:50:28.889  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30704
237.9467 +14/06/2006 12:50:28.989  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9468 +14/06/2006 12:50:28.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30705
237.9469 +14/06/2006 12:50:28.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30706
237.9470 +14/06/2006 12:50:28.989  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30707
237.9471 +14/06/2006 12:50:29.139  000>> 78>>>>>>>>>>Part datagram received!
237.9472 +14/06/2006 12:50:29.139  000>> 78>>>>>>>>>>Complete!
237.9473 +14/06/2006 12:50:29.139  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31132
237.9474 +14/06/2006 12:50:29.139  000>> Good datagram received!
237.9475 +14/06/2006 12:50:29.139  000>> Initiator:No more requested bundles
237.9476 +14/06/2006 12:50:29.139  000>> Initiator:But we can not restart connection...
237.9477 +14/06/2006 12:50:29.319  000>> 826>>>>>>>>>>Part datagram received!
237.9478 +14/06/2006 12:50:29.319  000>> 826>>>>>>>>>>Complete!
237.9479 +14/06/2006 12:50:29.319  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31133
237.9480 +14/06/2006 12:50:29.319  000>> Good datagram received!
237.9481 +14/06/2006 12:50:29.319  000>> Listener:Received dictionary
237.9482 +14/06/2006 12:50:29.329  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31134
237.9483 +14/06/2006 12:50:29.329  000>> Good datagram received!
237.9484 +14/06/2006 12:50:29.329  000>> Listener:Received RIB
237.9485 +14/06/2006 12:50:29.329  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31135
237.9486 +14/06/2006 12:50:29.329  000>> Good datagram received!
237.9487 +14/06/2006 12:50:29.339  000>> Listener:Received Bundle Offer
237.9488 +14/06/2006 12:50:29.339  000>> Listener:Sending Empty bundle request...
237.9489 +14/06/2006 12:50:29.339  000>> Listener(receiveBOffer):We can not restart connection(SLAVE)
237.9490 +14/06/2006 12:50:29.339  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30708
237.9491 +14/06/2006 12:50:29.499  000>> 91>>>>>>>>>>Part datagram received!
237.9492 +14/06/2006 12:50:29.499  000>> 91>>>>>>>>>>Complete!
237.9493 +14/06/2006 12:50:29.499  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31136
237.9494 +14/06/2006 12:50:29.499  000>> Good datagram received!
237.9495 +14/06/2006 12:50:29.499  000>> Receive Hello:SYN
237.9496 +14/06/2006 12:50:29.499  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30709
237.9497 +14/06/2006 12:50:29.519  000>> 91>>>>>>>>>>Part datagram received!
237.9498 +14/06/2006 12:50:29.519  000>> 91>>>>>>>>>>Complete!
237.9499 +14/06/2006 12:50:29.519  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31137
237.9500 +14/06/2006 12:50:29.529  000>> Good datagram received!
237.9501 +14/06/2006 12:50:29.529  000>> Receive Hello:ACK
237.9502 +14/06/2006 12:50:29.630  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9503 +14/06/2006 12:50:29.630  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30710
237.9504 +14/06/2006 12:50:29.630  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30711
237.9505 +14/06/2006 12:50:29.630  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30712
237.9506 +14/06/2006 12:50:29.640  000>> 98>>>>>>>>>>Part datagram received!
237.9507 +14/06/2006 12:50:29.640  000>> 98>>>>>>>>>>Complete!
237.9508 +14/06/2006 12:50:29.640  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31138
237.9509 +14/06/2006 12:50:29.640  000>> Good datagram received!
237.9510 +14/06/2006 12:50:29.640  000>> Listener:Received dictionary
237.9511 +14/06/2006 12:50:29.650  000>> 90>>>>>>>>>>Part datagram received!
237.9512 +14/06/2006 12:50:29.650  000>> 90>>>>>>>>>>Complete!
237.9513 +14/06/2006 12:50:29.650  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31139
237.9514 +14/06/2006 12:50:29.650  000>> Good datagram received!
237.9515 +14/06/2006 12:50:29.650  000>> Listener:Received RIB
237.9516 +14/06/2006 12:50:29.870  000>> 716>>>>>>>>>>Part datagram received!
237.9517 +14/06/2006 12:50:29.870  000>> 716>>>>>>>>>>Complete!
237.9518 +14/06/2006 12:50:29.870  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31140
237.9519 +14/06/2006 12:50:29.870  000>> Good datagram received!
237.9520 +14/06/2006 12:50:29.880  000>> Listener:Received Bundle Offer
237.9521 +14/06/2006 12:50:29.880  000>> Listener:Sending Empty bundle request...
237.9522 +14/06/2006 12:50:29.880  000>> Listener(receiveBOffer):But we can not restart connection...
237.9523 +14/06/2006 12:50:29.880  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30713
237.9524 +14/06/2006 12:50:29.890  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31141
237.9525 +14/06/2006 12:50:29.890  000>> Good datagram received!
237.9526 +14/06/2006 12:50:29.890  000>> Initiator:No more requested bundles
237.9527 +14/06/2006 12:50:29.890  000>> Listener(receiveBundles):We can restart connection...
237.9528 +14/06/2006 12:50:29.990  000>> Hello Procedure:SENDSYN
237.9529 +14/06/2006 12:50:29.990  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30714
237.9530 +14/06/2006 12:50:30.110  000>> 91>>>>>>>>>>Part datagram received!
237.9531 +14/06/2006 12:50:30.110  000>> 91>>>>>>>>>>Complete!
237.9532 +14/06/2006 12:50:30.110  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31142
237.9533 +14/06/2006 12:50:30.110  000>> Good datagram received!
237.9534 +14/06/2006 12:50:30.110  000>> Receive Hello:SYNACK
237.9535 +14/06/2006 12:50:30.110  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30715
237.9536 +14/06/2006 12:50:30.210  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9537 +14/06/2006 12:50:30.210  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30716
237.9538 +14/06/2006 12:50:30.210  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30717
237.9539 +14/06/2006 12:50:30.210  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30718
237.9540 +14/06/2006 12:50:30.240  000>> 98>>>>>>>>>>Part datagram received!
237.9541 +14/06/2006 12:50:30.240  000>> 98>>>>>>>>>>Complete!
237.9542 +14/06/2006 12:50:30.240  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31143
237.9543 +14/06/2006 12:50:30.240  000>> Good datagram received!
237.9544 +14/06/2006 12:50:30.240  000>> Listener:Received dictionary
237.9545 +14/06/2006 12:50:30.251  000>> 90>>>>>>>>>>Part datagram received!
237.9546 +14/06/2006 12:50:30.251  000>> 90>>>>>>>>>>Complete!
237.9547 +14/06/2006 12:50:30.251  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:161 Size:32 Nr:31144
237.9548 +14/06/2006 12:50:30.251  000>> Good datagram received!
237.9549 +14/06/2006 12:50:30.251  000>> Listener:Received RIB
237.9550 +14/06/2006 12:50:30.421  000>> 716>>>>>>>>>>Part datagram received!
237.9551 +14/06/2006 12:50:30.421  000>> 716>>>>>>>>>>Complete!
237.9552 +14/06/2006 12:50:30.421  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:162 Size:580 Nr:31145
237.9553 +14/06/2006 12:50:30.431  000>> Good datagram received!
237.9554 +14/06/2006 12:50:30.441  000>> Listener:Received Bundle Offer
237.9555 +14/06/2006 12:50:30.441  000>> Listener:Sending Empty bundle request...
237.9556 +14/06/2006 12:50:30.441  000>> Listener(receiveBOffer):But we can not restart connection...
237.9557 +14/06/2006 12:50:30.441  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:163 Size:20 Nr:30719
237.9558 +14/06/2006 12:50:30.441  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:163 Size:20 Nr:31146
237.9559 +14/06/2006 12:50:30.441  000>> Good datagram received!
237.9560 +14/06/2006 12:50:30.441  000>> Initiator:No more requested bundles
237.9561 +14/06/2006 12:50:30.441  000>> Listener(receiveBundles):We can not restart connection(SLAVE)
237.9562 +14/06/2006 12:50:30.571  000>> 91>>>>>>>>>>Part datagram received!
237.9563 +14/06/2006 12:50:30.571  000>> 91>>>>>>>>>>Complete!
237.9564 +14/06/2006 12:50:30.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31147
237.9565 +14/06/2006 12:50:30.571  000>> Good datagram received!
237.9566 +14/06/2006 12:50:30.571  000>> Receive Hello:SYN
237.9567 +14/06/2006 12:50:30.571  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:1 Size:32 Nr:30720
237.9568 +14/06/2006 12:50:30.591  000>> 91>>>>>>>>>>Part datagram received!
237.9569 +14/06/2006 12:50:30.591  000>> 91>>>>>>>>>>Complete!
237.9570 +14/06/2006 12:50:30.601  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:1 Size:33 Nr:31148
237.9571 +14/06/2006 12:50:30.601  000>> Good datagram received!
237.9572 +14/06/2006 12:50:30.601  000>> Receive Hello:ACK
237.9573 +14/06/2006 12:50:30.701  000>> Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER
237.9574 +14/06/2006 12:50:30.701  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:160 Size:41 Nr:30721
237.9575 +14/06/2006 12:50:30.701  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:161 Size:32 Nr:30722
237.9576 +14/06/2006 12:50:30.701  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram sent:162 Size:740 Nr:30723
237.9577 +14/06/2006 12:50:30.701  000>> 98>>>>>>>>>>Part datagram received!
237.9578 +14/06/2006 12:50:30.701  000>> 98>>>>>>>>>>Complete!
237.9579 +14/06/2006 12:50:30.701  000>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXDatagram received:160 Size:40 Nr:31149
237.9580 +14/06/2006 12:50:30.701  000>> Good datagram received!
237.9581 +14/06/2006 12:50:30.701  000>> Listener:Received dictionary
237.9582 +14/06/2006 12:50:30.711  000>> >>>>>>>>>>>>Error:1
237.9583 +14/06/2006 12:50:30.711  000>> >>>>>>>>>>>>Disconected!
237.9584 +14/06/2006 12:50:30.751  888>> 0
237.9585 +14/06/2006 12:50:59.833  000>> Connection removed:192.168.10.50Deleting connectinon!
237.9586 +14/06/2006 12:50:59.833  888>> Destructor
   238.1 Binary file x86/Win32/prophet.ncb has changed
   239.1 Binary file x86/Win32/prophet.opt has changed
   240.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   240.2 +++ b/x86/Win32/prophet.plg	Thu Jun 26 17:39:40 2008 +0100
   240.3 @@ -0,0 +1,54 @@
   240.4 +<html>
   240.5 +<body>
   240.6 +<pre>
   240.7 +<h1>Build Log</h1>
   240.8 +<h3>
   240.9 +--------------------Configuration: prophet - Win32 Release--------------------
  240.10 +</h3>
  240.11 +<h3>Command Lines</h3>
  240.12 +Creating temporary file "C:\DOCUME~1\Samo\LOCALS~1\Temp\RSP503.tmp" with contents
  240.13 +[
  240.14 +"C:\Qt\4.0.1\lib\qtmain.lib" "C:\Qt\4.0.1\lib\QtCore4.lib" "C:\Qt\4.0.1\lib\QtGui4.lib" "C:\Qt\4.0.1\lib\QtNetwork4.lib" /nologo /subsystem:windows /incremental:yes /pdb:"release/prophet.pdb" /machine:IX86 /out:"release/prophet.exe" /libpath:"C:\Qt\4.0.1\lib" 
  240.15 +.\release\DTNInterface.obj
  240.16 +.\release\bundle.obj
  240.17 +.\release\bundleManager.obj
  240.18 +.\release\connection.obj
  240.19 +.\release\dataPacket.obj
  240.20 +.\release\debugWidget.obj
  240.21 +.\release\hello.obj
  240.22 +.\release\main.obj
  240.23 +.\release\messageFile.obj
  240.24 +.\release\msgWidget.obj
  240.25 +.\release\neighbourAwareness.obj
  240.26 +.\release\node.obj
  240.27 +.\release\nodeManager.obj
  240.28 +.\release\readFile.obj
  240.29 +.\release\tcpClient.obj
  240.30 +.\release\tlv.obj
  240.31 +.\release\moc_DTNInterface.obj
  240.32 +.\release\moc_bundle.obj
  240.33 +.\release\moc_bundleManager.obj
  240.34 +.\release\moc_connection.obj
  240.35 +.\release\moc_dataPacket.obj
  240.36 +.\release\moc_debugWidget.obj
  240.37 +.\release\moc_hello.obj
  240.38 +.\release\moc_messageFile.obj
  240.39 +.\release\moc_msgWidget.obj
  240.40 +.\release\moc_neighbourAwareness.obj
  240.41 +.\release\moc_node.obj
  240.42 +.\release\moc_nodeManager.obj
  240.43 +.\release\moc_readFile.obj
  240.44 +.\release\moc_tcpClient.obj
  240.45 +.\release\moc_tlv.obj
  240.46 +]
  240.47 +Creating command line "link.exe @C:\DOCUME~1\Samo\LOCALS~1\Temp\RSP503.tmp"
  240.48 +<h3>Output Window</h3>
  240.49 +Linking...
  240.50 +
  240.51 +
  240.52 +
  240.53 +<h3>Results</h3>
  240.54 +prophet.exe - 0 error(s), 0 warning(s)
  240.55 +</pre>
  240.56 +</body>
  240.57 +</html>
   241.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   241.2 +++ b/x86/Win32/prophet.pro	Thu Jun 26 17:39:40 2008 +0100
   241.3 @@ -0,0 +1,45 @@
   241.4 +######################################################################
   241.5 +# Automatically generated by qmake (2.00a) Mon May 8 16:48:24 2006
   241.6 +######################################################################
   241.7 +TEMPLATE = app
   241.8 +QT+=gui network
   241.9 +QT-=
  241.10 +TARGET += 
  241.11 +DEPENDPATH += .
  241.12 +INCLUDEPATH += .
  241.13 +CONFIG += qt release
  241.14 +# Input
  241.15 +HEADERS += 	neighbourAwareness.h\
  241.16 +			bundle.h \
  241.17 +        		msgWidget.h \
  241.18 +			bundleManager.h \
  241.19 +			debugWidget.h \
  241.20 +			node.h \
  241.21 +			nodeManager.h \
  241.22 +			connection.h \
  241.23 +			tlv.h \
  241.24 +			messageFile.h \
  241.25 +			hello.h \				
  241.26 +			main.h \	   
  241.27 +			dataPacket.h \
  241.28 +			readFile.h \
  241.29 +			DTNInterface.h\
  241.30 +			tcpClient.h\
  241.31 +			
  241.32 +			
  241.33 +SOURCES += 	main.cpp \
  241.34 +			bundle.cpp \
  241.35 +			msgWidget.cpp \
  241.36 +			bundleManager.cpp \
  241.37 +			debugWidget.cpp \
  241.38 +			node.cpp \
  241.39 +			nodeManager.cpp \
  241.40 +			connection.cpp \
  241.41 +			hello.cpp \
  241.42 +			tlv.cpp \
  241.43 +			dataPacket.cpp \
  241.44 +			messageFile.cpp\
  241.45 +			neighbourAwareness.cpp\
  241.46 +			readFile.cpp \
  241.47 +			DTNInterface.cpp\
  241.48 +			tcpClient.cpp\
   242.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   242.2 +++ b/x86/Win32/readFile.cpp	Thu Jun 26 17:39:40 2008 +0100
   242.3 @@ -0,0 +1,660 @@
   242.4 +#include <QFile>
   242.5 +#include <QString>
   242.6 +#include <QHostAddress>
   242.7 +#include <readFile.h>
   242.8 +
   242.9 +ReadFile::ReadFile()
  242.10 +{
  242.11 +	QFile configuration("prophet.ini");
  242.12 +}
  242.13 +
  242.14 +float ReadFile::getBeta()
  242.15 +{
  242.16 +	QFile configuration("prophet.ini");
  242.17 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  242.18 +	QString line;
  242.19 +	QString search="BETA=";
  242.20 +	line=configuration.readLine();
  242.21 +	while(line.size()>0)
  242.22 +	{
  242.23 +		if(line.indexOf(search)!=-1)
  242.24 +		{
  242.25 +			line.remove(search,Qt::CaseInsensitive);
  242.26 +			return line.toFloat();
  242.27 +		}
  242.28 +		line=configuration.readLine();
  242.29 +		
  242.30 +	}
  242.31 +	configuration.close();
  242.32 +	return (float)0.25;
  242.33 +}
  242.34 +
  242.35 +float ReadFile::getGamma()
  242.36 +{
  242.37 +	QFile configuration("prophet.ini");
  242.38 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  242.39 +	QString line;
  242.40 +	QString search="GAMMA=";
  242.41 +	line=configuration.readLine();
  242.42 +	while(line.size()>0)
  242.43 +	{
  242.44 +		if(line.indexOf(search)!=-1)
  242.45 +		{
  242.46 +			line.remove(search,Qt::CaseInsensitive);
  242.47 +			return line.toFloat();
  242.48 +		}
  242.49 +		line=configuration.readLine();
  242.50 +		
  242.51 +	}
  242.52 +		configuration.close();
  242.53 +
  242.54 +	return (float)0.99;
  242.55 +}
  242.56 +
  242.57 +float ReadFile::getPEncounter()
  242.58 +{
  242.59 +	QFile configuration("prophet.ini");
  242.60 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  242.61 +	QString line;
  242.62 +	QString search="PENCOUNTER=";
  242.63 +	line=configuration.readLine();
  242.64 +	while(line.size()>0)
  242.65 +	{
  242.66 +		if(line.indexOf(search)!=-1)
  242.67 +		{
  242.68 +			line.remove(search,Qt::CaseInsensitive);
  242.69 +			return line.toFloat();
  242.70 +		}
  242.71 +		line=configuration.readLine();
  242.72 +		
  242.73 +	}
  242.74 +		configuration.close();
  242.75 +
  242.76 +	return (float)0.75;
  242.77 +}
  242.78 +
  242.79 +int ReadFile::getListenerTimer()
  242.80 +{
  242.81 +	QFile configuration("prophet.ini");
  242.82 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  242.83 +	QString line;
  242.84 +	QString search="LISTENERTIMER=";
  242.85 +	line=configuration.readLine();
  242.86 +	while(line.size()>0)
  242.87 +	{
  242.88 +		if(line.indexOf(search)!=-1)
  242.89 +		{
  242.90 +			line.remove(search,Qt::CaseInsensitive);
  242.91 +			return line.toInt();
  242.92 +		}
  242.93 +		line=configuration.readLine();
  242.94 +		
  242.95 +	}
  242.96 +		configuration.close();
  242.97 +
  242.98 +	return 1000;
  242.99 +}
 242.100 +
 242.101 +
 242.102 +
 242.103 +int ReadFile::getInitiatorTimer()
 242.104 +{
 242.105 +	QFile configuration("prophet.ini");
 242.106 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.107 +	QString line;
 242.108 +	QString search="INITIATORTIMER=";
 242.109 +	line=configuration.readLine();
 242.110 +	while(line.size()>0)
 242.111 +	{
 242.112 +		if(line.indexOf(search)!=-1)
 242.113 +		{
 242.114 +			line.remove(search,Qt::CaseInsensitive);
 242.115 +			return line.toInt();
 242.116 +		}
 242.117 +		line=configuration.readLine();
 242.118 +		
 242.119 +	}
 242.120 +		configuration.close();
 242.121 +
 242.122 +	return 1000;
 242.123 +}
 242.124 +
 242.125 +int ReadFile::getHelloTimer()
 242.126 +{
 242.127 +	QFile configuration("prophet.ini");
 242.128 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.129 +	QString line;
 242.130 +	QString search="HELLOTIMER=";
 242.131 +	line=configuration.readLine();
 242.132 +	while(line.size()>0)
 242.133 +	{
 242.134 +		if(line.indexOf(search)!=-1)
 242.135 +		{
 242.136 +			line.remove(search,Qt::CaseInsensitive);
 242.137 +			return line.toInt();
 242.138 +		}
 242.139 +		line=configuration.readLine();
 242.140 +		
 242.141 +	}
 242.142 +		configuration.close();
 242.143 +
 242.144 +	return 1000;
 242.145 +}
 242.146 +
 242.147 +int ReadFile::getAgingTimer()
 242.148 +{
 242.149 +	QFile configuration("prophet.ini");
 242.150 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.151 +	QString line;
 242.152 +	QString search="AGINGTIMER=";
 242.153 +	line=configuration.readLine();
 242.154 +	while(line.size()>0)
 242.155 +	{
 242.156 +		if(line.indexOf(search)!=-1)
 242.157 +		{
 242.158 +			line.remove(search,Qt::CaseInsensitive);
 242.159 +			return line.toInt();
 242.160 +		}
 242.161 +		line=configuration.readLine();
 242.162 +		
 242.163 +	}
 242.164 +		configuration.close();
 242.165 +
 242.166 +	return 1000;
 242.167 +}
 242.168 +
 242.169 +int ReadFile::getDTNHostPort()
 242.170 +{
 242.171 +	QFile configuration("prophet.ini");
 242.172 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.173 +	QString line;
 242.174 +	QString search="DTNHOSTPORT=";
 242.175 +	line=configuration.readLine();
 242.176 +	while(line.size()>0)
 242.177 +	{
 242.178 +		if(line.indexOf(search)!=-1)
 242.179 +		{
 242.180 +			line.remove(search,Qt::CaseInsensitive);
 242.181 +			return line.toInt();
 242.182 +		}
 242.183 +		line=configuration.readLine();
 242.184 +		
 242.185 +	}
 242.186 +		configuration.close();
 242.187 +
 242.188 +	return 21;
 242.189 +
 242.190 +}	
 242.191 +
 242.192 +int ReadFile::getStorageSize()
 242.193 +{
 242.194 +	QFile configuration("prophet.ini");
 242.195 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.196 +	QString line;
 242.197 +	QString search="STORAGESIZE=";
 242.198 +	line=configuration.readLine();
 242.199 +	while(line.size()>0)
 242.200 +	{
 242.201 +		if(line.indexOf(search)!=-1)
 242.202 +		{
 242.203 +			line.remove(search,Qt::CaseInsensitive);
 242.204 +			return line.toInt();
 242.205 +		}
 242.206 +		line=configuration.readLine();
 242.207 +		
 242.208 +	}
 242.209 +		configuration.close();
 242.210 +
 242.211 +	return 1000;
 242.212 +
 242.213 +}	
 242.214 +
 242.215 +int ReadFile::getAlive()
 242.216 +{
 242.217 +	QFile configuration("prophet.ini");
 242.218 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.219 +	QString line;
 242.220 +	QString search="ALIVE=";
 242.221 +	line=configuration.readLine();
 242.222 +	while(line.size()>0)
 242.223 +	{
 242.224 +		if(line.indexOf(search)!=-1)
 242.225 +		{
 242.226 +			line.remove(search,Qt::CaseInsensitive);
 242.227 +			return line.toInt();
 242.228 +		}
 242.229 +		line=configuration.readLine();
 242.230 +		
 242.231 +	}
 242.232 +		configuration.close();
 242.233 +
 242.234 +	return 15;
 242.235 +
 242.236 +}	
 242.237 +
 242.238 +
 242.239 +int ReadFile::getBroadcastTimer()
 242.240 +{
 242.241 +	QFile configuration("prophet.ini");
 242.242 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.243 +	QString line;
 242.244 +	QString search="BROADCAST=";
 242.245 +	line=configuration.readLine();
 242.246 +	while(line.size()>0)
 242.247 +	{
 242.248 +		if(line.indexOf(search)!=-1)
 242.249 +		{
 242.250 +			line.remove(search,Qt::CaseInsensitive);
 242.251 +			return line.toInt();
 242.252 +		}
 242.253 +		line=configuration.readLine();
 242.254 +		
 242.255 +	}
 242.256 +		configuration.close();
 242.257 +
 242.258 +	return 1;
 242.259 +
 242.260 +}
 242.261 +
 242.262 +
 242.263 +int ReadFile::getHello()
 242.264 +{
 242.265 +	QFile configuration("prophet.ini");
 242.266 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.267 +	QString line;
 242.268 +	QString search="HELLO=";
 242.269 +	line=configuration.readLine();
 242.270 +	while(line.size()>0)
 242.271 +	{
 242.272 +		if(line.indexOf(search)!=-1)
 242.273 +		{
 242.274 +			line.remove(search,Qt::CaseInsensitive);
 242.275 +			return line.toInt();
 242.276 +		}
 242.277 +		line=configuration.readLine();
 242.278 +		
 242.279 +	}
 242.280 +		configuration.close();
 242.281 +
 242.282 +	return 1;
 242.283 +
 242.284 +}
 242.285 +
 242.286 +
 242.287 +int ReadFile::getRouting()
 242.288 +{
 242.289 +	QFile configuration("prophet.ini");
 242.290 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.291 +	QString line;
 242.292 +	QString search="ROUTING=";
 242.293 +	line=configuration.readLine();
 242.294 +	while(line.size()>0)
 242.295 +	{
 242.296 +		if(line.indexOf(search)!=-1)
 242.297 +		{
 242.298 +			line.remove(search,Qt::CaseInsensitive);
 242.299 +			return line.toInt();
 242.300 +		}
 242.301 +		line=configuration.readLine();
 242.302 +		
 242.303 +	}
 242.304 +		configuration.close();
 242.305 +
 242.306 +	return 1;
 242.307 +}
 242.308 +
 242.309 +
 242.310 +
 242.311 +int ReadFile::getAgeFileNodes()
 242.312 +{
 242.313 +	QFile configuration("prophet.ini");
 242.314 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.315 +	QString line;
 242.316 +	QString search="AGEFILENODES=";
 242.317 +	line=configuration.readLine();
 242.318 +	while(line.size()>0)
 242.319 +	{
 242.320 +		if(line.indexOf(search)!=-1)
 242.321 +		{
 242.322 +			line.remove(search,Qt::CaseInsensitive);
 242.323 +			return line.toInt();
 242.324 +		}
 242.325 +		line=configuration.readLine();
 242.326 +		
 242.327 +	}
 242.328 +		configuration.close();
 242.329 +
 242.330 +	return 1;
 242.331 +}
 242.332 +
 242.333 +int ReadFile::getContiniusUpdate()
 242.334 +{
 242.335 +	QFile configuration("prophet.ini");
 242.336 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.337 +	QString line;
 242.338 +	QString search="CONTINIUSUPDATE=";
 242.339 +	line=configuration.readLine();
 242.340 +	while(line.size()>0)
 242.341 +	{
 242.342 +		if(line.indexOf(search)!=-1)
 242.343 +		{
 242.344 +			line.remove(search,Qt::CaseInsensitive);
 242.345 +			return line.toInt();
 242.346 +		}
 242.347 +		line=configuration.readLine();
 242.348 +		
 242.349 +	}
 242.350 +		configuration.close();
 242.351 +
 242.352 +	return 1;
 242.353 +}
 242.354 +
 242.355 +
 242.356 +int ReadFile::getNodeId()
 242.357 +{
 242.358 +	QFile configuration("prophet.ini");
 242.359 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.360 +	QString line;
 242.361 +	QString search="NODEID=";
 242.362 +	line=configuration.readLine();
 242.363 +	while(line.size()>0)
 242.364 +	{
 242.365 +		if(line.indexOf(search)!=-1)
 242.366 +		{
 242.367 +			line.remove(search,Qt::CaseInsensitive);
 242.368 +			return line.toInt();
 242.369 +		}
 242.370 +		line=configuration.readLine();
 242.371 +		
 242.372 +	}
 242.373 +		configuration.close();
 242.374 +
 242.375 +	return 0;
 242.376 +}
 242.377 +
 242.378 +int ReadFile::getUseFileBundles()
 242.379 +{
 242.380 +	QFile configuration("prophet.ini");
 242.381 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.382 +	QString line;
 242.383 +	QString search="USEFILEBUNDLES=";
 242.384 +	line=configuration.readLine();
 242.385 +	while(line.size()>0)
 242.386 +	{
 242.387 +		if(line.indexOf(search)!=-1)
 242.388 +		{
 242.389 +			line.remove(search,Qt::CaseInsensitive);
 242.390 +			return line.toInt();
 242.391 +		}
 242.392 +		line=configuration.readLine();
 242.393 +		
 242.394 +	}
 242.395 +		configuration.close();
 242.396 +
 242.397 +	return 1;
 242.398 +}
 242.399 +
 242.400 +
 242.401 +int ReadFile::getWriteToFileTimer()
 242.402 +{
 242.403 +	QFile configuration("prophet.ini");
 242.404 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.405 +	QString line;
 242.406 +	QString search="WRITETOFILETIMER=";
 242.407 +	line=configuration.readLine();
 242.408 +	while(line.size()>0)
 242.409 +	{
 242.410 +		if(line.indexOf(search)!=-1)
 242.411 +		{
 242.412 +			line.remove(search,Qt::CaseInsensitive);
 242.413 +			return line.toInt();
 242.414 +		}
 242.415 +		line=configuration.readLine();
 242.416 +		
 242.417 +	}
 242.418 +		configuration.close();
 242.419 +
 242.420 +	return 60;
 242.421 +}
 242.422 +
 242.423 +
 242.424 +int ReadFile::getLogOption()
 242.425 +{
 242.426 +	QFile configuration("prophet.ini");
 242.427 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.428 +	QString line;
 242.429 +	QString search="LOGING=";
 242.430 +	line=configuration.readLine();
 242.431 +	while(line.size()>0)
 242.432 +	{
 242.433 +		if(line.indexOf(search)!=-1)
 242.434 +		{
 242.435 +			line.remove(search,Qt::CaseInsensitive);
 242.436 +			return line.toInt();
 242.437 +		}
 242.438 +		line=configuration.readLine();
 242.439 +		
 242.440 +	}
 242.441 +		configuration.close();
 242.442 +
 242.443 +	return 60;
 242.444 +}	
 242.445 +
 242.446 +int ReadFile::getUseFileNodes()
 242.447 +{
 242.448 +	QFile configuration("prophet.ini");
 242.449 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.450 +	QString line;
 242.451 +	QString search="USEFILENODES=";
 242.452 +	line=configuration.readLine();
 242.453 +	while(line.size()>0)
 242.454 +	{
 242.455 +		if(line.indexOf(search)!=-1)
 242.456 +		{
 242.457 +			line.remove(search,Qt::CaseInsensitive);
 242.458 +			return line.toInt();
 242.459 +		}
 242.460 +		line=configuration.readLine();
 242.461 +		
 242.462 +	}
 242.463 +		configuration.close();
 242.464 +
 242.465 +	return 0;
 242.466 +}	
 242.467 +
 242.468 +QString ReadFile::getNodeName()
 242.469 +{
 242.470 +	QFile configuration("prophet.ini");
 242.471 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.472 +	QString line;
 242.473 +	QString search="NODENAME=";
 242.474 +	line=configuration.readLine();
 242.475 +	while(line.size()>0)
 242.476 +	{
 242.477 +		if(line.indexOf(search)!=-1)
 242.478 +		{
 242.479 +			line.remove(search,Qt::CaseInsensitive);
 242.480 +			line.chop(1);
 242.481 +			return line;
 242.482 +		}
 242.483 +		line=configuration.readLine();
 242.484 +		
 242.485 +	}
 242.486 +		configuration.close();
 242.487 +
 242.488 +	QString ret="unknown";
 242.489 +	return ret;
 242.490 +}
 242.491 +
 242.492 +QString ReadFile::getStoragePath()
 242.493 +{
 242.494 +	QFile configuration("prophet.ini");
 242.495 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.496 +	QString line;
 242.497 +	QString search="STORAGEPATH=";
 242.498 +	line=configuration.readLine();
 242.499 +	while(line.size()>0)
 242.500 +	{
 242.501 +		if(line.indexOf(search)!=-1)
 242.502 +		{
 242.503 +			line.remove(search,Qt::CaseInsensitive);
 242.504 +			line.chop(1);
 242.505 +			return line;
 242.506 +		}
 242.507 +		line=configuration.readLine();
 242.508 +		
 242.509 +	}
 242.510 +	QString ret="";
 242.511 +		configuration.close();
 242.512 +
 242.513 +	return ret;
 242.514 +}
 242.515 +
 242.516 +QString ReadFile::getLogPath()
 242.517 +{
 242.518 +	QFile configuration("prophet.ini");
 242.519 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.520 +	QString line;
 242.521 +	QString search="LOGPATH=";
 242.522 +	line=configuration.readLine();
 242.523 +	while(line.size()>0)
 242.524 +	{
 242.525 +		if(line.indexOf(search)!=-1)
 242.526 +		{
 242.527 +			line.remove(search,Qt::CaseInsensitive);
 242.528 +			line.chop(1);
 242.529 +			return line;
 242.530 +		}
 242.531 +		line=configuration.readLine();
 242.532 +		
 242.533 +	}
 242.534 +	QString ret="";
 242.535 +			configuration.close();
 242.536 +
 242.537 +	return ret;
 242.538 +}
 242.539 +QString ReadFile::getMsgPath()
 242.540 +{
 242.541 +	QFile configuration("prophet.ini");
 242.542 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.543 +	QString line;
 242.544 +	QString search="MSGPATH=";
 242.545 +	line=configuration.readLine();
 242.546 +	while(line.size()>0)
 242.547 +	{
 242.548 +		if(line.indexOf(search)!=-1)
 242.549 +		{
 242.550 +			line.remove(search,Qt::CaseInsensitive);
 242.551 +			line.chop(1);
 242.552 +			return line;
 242.553 +		}
 242.554 +		line=configuration.readLine();
 242.555 +		
 242.556 +	}
 242.557 +	QString ret="";
 242.558 +		configuration.close();
 242.559 +
 242.560 +	return ret;
 242.561 +}
 242.562 +
 242.563 +QHostAddress ReadFile::getNodeIp()
 242.564 +{
 242.565 +	QFile configuration("prophet.ini");
 242.566 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.567 +	QString line;
 242.568 +	QString search="NODEIP=";
 242.569 +	line=configuration.readLine();
 242.570 +	while(line.size()>0)
 242.571 +	{
 242.572 +		if(line.indexOf(search)!=-1)
 242.573 +		{
 242.574 +			line.remove(search,Qt::CaseInsensitive);
 242.575 +			QHostAddress ip(line);
 242.576 +			return ip;
 242.577 +
 242.578 +		}
 242.579 +		line=configuration.readLine();
 242.580 +	
 242.581 +	}
 242.582 +		configuration.close();
 242.583 +
 242.584 +	QHostAddress ret("192.168.10.1");
 242.585 +	return ret;
 242.586 +}
 242.587 +
 242.588 +QHostAddress ReadFile::getBroadcast()
 242.589 +{
 242.590 +	QFile configuration("prophet.ini");
 242.591 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.592 +	QString line;
 242.593 +	QString search="NODEBROADCAST=";
 242.594 +	line=configuration.readLine();
 242.595 +	while(line.size()>0)
 242.596 +	{
 242.597 +		if(line.indexOf(search)!=-1)
 242.598 +		{
 242.599 +			line.remove(search,Qt::CaseInsensitive);
 242.600 +			QHostAddress ip(line);
 242.601 +			return ip;
 242.602 +
 242.603 +		}
 242.604 +		line=configuration.readLine();
 242.605 +	}
 242.606 +	QHostAddress ret("255.255.255.255");
 242.607 +		configuration.close();
 242.608 +
 242.609 +	return ret;
 242.610 +
 242.611 +}
 242.612 +
 242.613 +QHostAddress ReadFile::getNodeIp2()
 242.614 +{
 242.615 +	QFile configuration("prophet.ini");
 242.616 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.617 +	QString line;
 242.618 +	QString search="NODEIP2=";
 242.619 +	line=configuration.readLine();
 242.620 +	while(line.size()>0)
 242.621 +	{
 242.622 +		if(line.indexOf(search)!=-1)
 242.623 +		{
 242.624 +			line.remove(search,Qt::CaseInsensitive);
 242.625 +			QHostAddress ip(line);
 242.626 +			return ip;
 242.627 +
 242.628 +		}
 242.629 +		line=configuration.readLine();
 242.630 +	
 242.631 +	}
 242.632 +	QHostAddress ret("192.168.10.1");
 242.633 +		configuration.close();
 242.634 +
 242.635 +	return ret;
 242.636 +
 242.637 +}
 242.638 +
 242.639 +QHostAddress ReadFile::getDTNHostName()
 242.640 +{
 242.641 +	QFile configuration("prophet.ini");
 242.642 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 242.643 +	QString line;
 242.644 +	QString search="DTNHOSTNAME=";
 242.645 +	line=configuration.readLine();
 242.646 +	while(line.size()>0)
 242.647 +	{
 242.648 +		if(line.indexOf(search)!=-1)
 242.649 +		{
 242.650 +			line.remove(search,Qt::CaseInsensitive);
 242.651 +			QHostAddress ip(line);
 242.652 +			return ip;
 242.653 +
 242.654 +		}
 242.655 +		line=configuration.readLine();
 242.656 +	
 242.657 +	}
 242.658 +	QHostAddress ret("192.168.10.1");
 242.659 +		configuration.close();
 242.660 +
 242.661 +	return ret;
 242.662 +
 242.663 +}
   243.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   243.2 +++ b/x86/Win32/readFile.h	Thu Jun 26 17:39:40 2008 +0100
   243.3 @@ -0,0 +1,49 @@
   243.4 +#ifndef READFILE_H
   243.5 +#define READFILE_H
   243.6 +
   243.7 +#include <QtCore>
   243.8 +#include <QtNetwork>
   243.9 +
  243.10 +
  243.11 +
  243.12 +class ReadFile: public QObject
  243.13 +{
  243.14 +	Q_OBJECT
  243.15 +
  243.16 +	public:
  243.17 +
  243.18 +	QFile configuration;
  243.19 +
  243.20 +	ReadFile();
  243.21 +	float getGamma();
  243.22 +	float getBeta();
  243.23 +	float getPEncounter();
  243.24 +	int getNodeId();
  243.25 +	int getAgingTimer();
  243.26 +	int getHelloTimer();
  243.27 +	int getInitiatorTimer();
  243.28 +	int getListenerTimer();
  243.29 +	int getDTNHostPort();
  243.30 +	int getStorageSize();
  243.31 +	int getAlive();
  243.32 +	int getBroadcastTimer();
  243.33 +	int getHello();
  243.34 +	int getContiniusUpdate();
  243.35 +	int getRouting();
  243.36 +	int getUseFileNodes();
  243.37 +	int getWriteToFileTimer();
  243.38 +	int getAgeFileNodes();
  243.39 +	int getUseFileBundles();
  243.40 +	int getLogOption();
  243.41 +	QString getStoragePath();
  243.42 +	QString getMsgPath();
  243.43 +	QString getLogPath();
  243.44 +
  243.45 +	QString getNodeName();
  243.46 +	QHostAddress getNodeIp();
  243.47 +	QHostAddress getNodeIp2();
  243.48 +	QHostAddress getDTNHostName();
  243.49 +	QHostAddress getBroadcast();
  243.50 +};
  243.51 +
  243.52 +#endif
   244.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   244.2 +++ b/x86/Win32/tcpClient.cpp	Thu Jun 26 17:39:40 2008 +0100
   244.3 @@ -0,0 +1,101 @@
   244.4 +#include "tcpClient.h"
   244.5 +
   244.6 +TcpClient::TcpClient(QObject* parent) : QTcpSocket(parent)
   244.7 +{
   244.8 +
   244.9 +	timer = new QTimer;
  244.10 +	timer->setSingleShot(true);
  244.11 +	connect(timer, SIGNAL(timeout()), this, SLOT(reconnectToHost()));
  244.12 +	connect(this, SIGNAL(stateChanged(QAbstractSocket::SocketState)), this, SLOT(hostStateChanged(QAbstractSocket::SocketState)));
  244.13 +	connect(this, SIGNAL(error(QAbstractSocket::SocketError)), this, SLOT(hostError(QAbstractSocket::SocketError)));
  244.14 +	connect(this, SIGNAL(readyRead()), this, SLOT(hostReadyRead()));
  244.15 +	int i = readBufferSize();
  244.16 +	setReadBufferSize(0);
  244.17 +	currentHostIndex = 0;
  244.18 +}
  244.19 +
  244.20 +TcpClient::~TcpClient()
  244.21 +{
  244.22 +}
  244.23 +
  244.24 +void TcpClient::addHost(QString hn, int hp)
  244.25 +{
  244.26 +	hostNames << hn;
  244.27 +	hostPorts << hp;
  244.28 +	currentHostIndex = hostNames.count()-1;
  244.29 +	if ((state() == QAbstractSocket::UnconnectedState) && (hostNames.count() == 1))
  244.30 +		connectToHost(hostNames[currentHostIndex], hostPorts[currentHostIndex]);
  244.31 +}
  244.32 +
  244.33 +void TcpClient::reconnectToHost()
  244.34 +{
  244.35 +	if (hostNames.count() == 0)
  244.36 +		return;
  244.37 +	currentHostIndex++;
  244.38 +	currentHostIndex = currentHostIndex % hostNames.count();
  244.39 +	connectToHost(hostNames[currentHostIndex], hostPorts[currentHostIndex]);
  244.40 +}
  244.41 +
  244.42 +void TcpClient::hostStateChanged(QAbstractSocket::SocketState state)
  244.43 +{
  244.44 +	switch (state)
  244.45 +	{
  244.46 +	case QAbstractSocket::ConnectedState:
  244.47 +		{
  244.48 +			QList<QString>::iterator it;
  244.49 +			it = commands.begin();
  244.50 +			while (it != commands.end())
  244.51 +			{
  244.52 +				write((*it).toAscii());
  244.53 +				it++;
  244.54 +			}
  244.55 +			emit connected();
  244.56 +		}
  244.57 +		break;
  244.58 +	case QAbstractSocket::UnconnectedState:
  244.59 +		timer->start(2000);
  244.60 +		emit disconnected();
  244.61 +		break;
  244.62 +	}
  244.63 +}
  244.64 +
  244.65 +void TcpClient::hostError(QAbstractSocket::SocketError error)
  244.66 +{
  244.67 +	abort();
  244.68 +	timer->start(2000);
  244.69 +	emit disconnected();
  244.70 +}
  244.71 +
  244.72 +void TcpClient::hostReadyRead()
  244.73 +{
  244.74 +	buffer += readAll();
  244.75 +	int from = 0;
  244.76 +	int idx;
  244.77 +	int size = buffer.size();
  244.78 +	QByteArray end=buffer.mid(size-5);
  244.79 +	idx = end.indexOf("dtn%", from);
  244.80 +	if (idx != -1)
  244.81 +	{
  244.82 +		QByteArray oddan;
  244.83 +		oddan.append(buffer);
  244.84 +		int velikos = oddan.size();
  244.85 +		emit newAnswer(oddan);
  244.86 +		buffer.clear();
  244.87 +	}
  244.88 +}
  244.89 +
  244.90 +void TcpClient::appendCommand(int id, QString cmd)
  244.91 +{
  244.92 +	cmd += QString("\r");
  244.93 +	commands.append(cmd);
  244.94 +	if (state() == QAbstractSocket::ConnectedState)
  244.95 +		write(cmd.toAscii());
  244.96 +}
  244.97 +
  244.98 +bool TcpClient::isConnected()
  244.99 +{
 244.100 +	if (state() == QAbstractSocket::ConnectedState)
 244.101 +		return true;
 244.102 +	else
 244.103 +		return false;
 244.104 +}
   245.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   245.2 +++ b/x86/Win32/tcpClient.h	Thu Jun 26 17:39:40 2008 +0100
   245.3 @@ -0,0 +1,40 @@
   245.4 +#ifndef TCPCLIENT_H
   245.5 +#define TCPCLIENT_H
   245.6 +
   245.7 +#include <QtCore>
   245.8 +#include <QTcpSocket>
   245.9 +#include <QTextCodec>
  245.10 +
  245.11 +class TcpClient : public QTcpSocket
  245.12 +{
  245.13 +	Q_OBJECT
  245.14 +
  245.15 +public:
  245.16 +	TcpClient(QObject* parent = 0);
  245.17 +	~TcpClient();
  245.18 +	virtual void addHost(QString hn, int hp);
  245.19 +	virtual void appendCommand(int id, QString cmd);
  245.20 +	virtual bool isConnected();
  245.21 +
  245.22 +public slots:
  245.23 +	virtual void reconnectToHost();
  245.24 +	virtual void hostStateChanged(QAbstractSocket::SocketState state);
  245.25 +	virtual void hostError(QAbstractSocket::SocketError error);
  245.26 +	virtual void hostReadyRead();
  245.27 +
  245.28 +signals:
  245.29 +	void newAnswer(QByteArray answ);
  245.30 +	void connected();
  245.31 +	void disconnected();
  245.32 +	
  245.33 +private:
  245.34 +	QList<QString> commands;
  245.35 +	QList<int> ids;
  245.36 +	QByteArray buffer;
  245.37 +	QTimer* timer;
  245.38 +	QList<QString> hostNames;
  245.39 +	QList<int> hostPorts;
  245.40 +	int currentHostIndex;
  245.41 +};
  245.42 +
  245.43 +#endif
   246.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   246.2 +++ b/x86/Win32/tlv.cpp	Thu Jun 26 17:39:40 2008 +0100
   246.3 @@ -0,0 +1,500 @@
   246.4 +#include <QtCore>
   246.5 +#include <tlv.h>
   246.6 +#include <hello.h>
   246.7 +#include <messageFile.h>
   246.8 +#include <readFile.h>
   246.9 +
  246.10 +
  246.11 +
  246.12 +//WARNING: SOME OF THE STRUCTURES HAS BEEN MODIFIED AND ARE NOT THE SAME AS IN DRAFT!
  246.13 +struct HelloHeader
  246.14 +{
  246.15 +	qint32 type;
  246.16 +	qint32 function;
  246.17 +	qint32 timer;
  246.18 +	qint32 nameLenght;
  246.19 +	qint32 nodeId;
  246.20 +	qint32 nodeType;
  246.21 +};
  246.22 +
  246.23 +struct DictionaryHeader 
  246.24 +{
  246.25 +	qint32 type;
  246.26 +	qint32 flags;
  246.27 +	qint32 lenght;
  246.28 +	qint32 entryCount;
  246.29 +	qint32 reserved;
  246.30 +};
  246.31 +
  246.32 +struct BundleListHeader 
  246.33 +{
  246.34 +	qint32 type;
  246.35 +	qint32 flags;
  246.36 +	qint32 lenght;
  246.37 +	qint32 entryCount;
  246.38 +	qint32 reserved;
  246.39 +};
  246.40 +
  246.41 +struct BundleListItem 
  246.42 +{
  246.43 +	qint32 destinationId;
  246.44 +	qint32 BFlags;
  246.45 +	qint32 reserved;
  246.46 +	qint32 bundleId;
  246.47 +};
  246.48 +
  246.49 +struct BundleDataHeader 
  246.50 +{
  246.51 +	qint32 sourceId;
  246.52 +	qint32 destinationId;
  246.53 +	qint32 bundleId;
  246.54 +	qint32 BFlags;
  246.55 +	qint32 reserved;
  246.56 +	qint32 dataLenght;	
  246.57 +	qint32 sourceStringLenght;
  246.58 +	qint32 destinationStringLenght;
  246.59 +	uint time;
  246.60 +};
  246.61 +
  246.62 +
  246.63 +struct DictionaryNodeHeader 
  246.64 +{
  246.65 +	qint32 stringId;
  246.66 +	qint32 lenght;
  246.67 +	qint32 reserved;
  246.68 +};
  246.69 +
  246.70 +struct RIBNodeHeader 
  246.71 +{
  246.72 +	qint32 stringId;
  246.73 +	float probability;
  246.74 +	qint32 RIBFlag;
  246.75 +};
  246.76 +
  246.77 +struct Header 
  246.78 +{
  246.79 +	qint32 type;
  246.80 +
  246.81 +};
  246.82 +
  246.83 +
  246.84 +
  246.85 +TLV::TLV(QObject *parent)
  246.86 +{
  246.87 +	ReadFile conf;
  246.88 +	fileOption=conf.getUseFileBundles();
  246.89 +	if(fileOption==1)
  246.90 +	{
  246.91 +		QString storagePath=conf.getStoragePath();
  246.92 +		dir.setPath(storagePath);
  246.93 +	}
  246.94 +}
  246.95 +
  246.96 +
  246.97 +
  246.98 +void TLV::receiveDatagram(QByteArray datagram)
  246.99 +{
 246.100 +	Header* TLVType;
 246.101 +	TLVType= (Header*) datagram.constData();
 246.102 +	qint32 datagramIndex;
 246.103 +	//Read out TLV Type
 246.104 +	QByteArray temp;
 246.105 +	Hello newHello;
 246.106 +	QList<Node> receivedNodes;
 246.107 +	QList<Bundle> receivedBundles;
 246.108 +	QString name;
 246.109 +	struct DictionaryHeader *dictionaryHeader; //It is the same for RIB
 246.110 +	struct BundleListHeader *bundleHeader;
 246.111 +	struct HelloHeader *hello;
 246.112 +	qint32 entryCount;	
 246.113 +	qint32 lenght;
 246.114 +	switch(TLVType->type)
 246.115 +	{
 246.116 +		//Hello massage forming
 246.117 +		case 0x01:	//////log->addLog(0,(QString)"TLV receiving Hello datagram...");
 246.118 +					hello= (HelloHeader*) datagram.constData();
 246.119 + 					newHello.HFunction=(qint32)hello->function;
 246.120 +					newHello.timer =(qint32)hello->timer;
 246.121 +					newHello.senderId=(qint32)hello->nodeId;
 246.122 +					newHello.senderType =(qint32)hello->nodeType;
 246.123 +					lenght = (qint32)hello->nameLenght;
 246.124 +					datagram.remove(0,sizeof(HelloHeader));
 246.125 +					name=datagram.mid(0,lenght);
 246.126 +					newHello.setSenderName(name);
 246.127 +					emit sendHello(newHello);
 246.128 +		break;
 246.129 +		//RIB
 246.130 +		case 0xA1:	//////log->addLog(0,(QString)"TLV receiving RIB datagram...");
 246.131 +					dictionaryHeader = (DictionaryHeader*) datagram.constData();
 246.132 +					entryCount=dictionaryHeader->entryCount;
 246.133 +					datagram.remove(0,sizeof(DictionaryHeader));
 246.134 +					for (ushort i = 0; i < entryCount; ++i) 
 246.135 +					{
 246.136 +						//Resolving data from datagram
 246.137 +						struct RIBNodeHeader *nodeHeader = (RIBNodeHeader*) datagram.constData();
 246.138 +						qint32 stringId = (qint32)nodeHeader->stringId;
 246.139 +						qint32 flag = (qint32)nodeHeader->RIBFlag;
 246.140 +						float probability = (float)nodeHeader->probability;
 246.141 +						datagram.remove(0,sizeof(RIBNodeHeader));
 246.142 +						//Setting node variables
 246.143 +						Node tempNode;
 246.144 +						tempNode.setContent(stringId,probability,flag,"X");
 246.145 +						//Adding variables in the list
 246.146 +						receivedNodes.append(tempNode);
 246.147 +					}
 246.148 +					emit sendRIB(receivedNodes);
 246.149 +		break;
 246.150 +		//BUNDLE OFFER RECEIVED
 246.151 +		case 0xA2:	//////log->addLog(0,(QString)"TLV receiving Bundle offer datagram...");
 246.152 +					bundleHeader = (BundleListHeader*) datagram.constData();
 246.153 +					entryCount=(qint32)bundleHeader->entryCount;
 246.154 +					datagramIndex=sizeof(BundleListHeader);
 246.155 +					datagram.remove(0,datagramIndex);
 246.156 +					for (ushort i = 0; i < entryCount; ++i) 
 246.157 +					{
 246.158 +						//Resolving data from datagram
 246.159 +						struct BundleListItem *bundleItem;
 246.160 +						bundleItem = (BundleListItem*) datagram.constData();
 246.161 +						
 246.162 +						qint32 destId = (qint32)bundleItem->destinationId;
 246.163 +						qint32 bundId = (qint32)bundleItem->bundleId;
 246.164 +						qint32 BFlags = (qint32)bundleItem->BFlags;
 246.165 +						qint32 reserved = (qint32)bundleItem->reserved;
 246.166 +						datagram.remove(0,sizeof(BundleListItem));
 246.167 +						//Setting Bundle variables
 246.168 +						Bundle tempBundle;
 246.169 +						tempBundle.destinationId = destId;
 246.170 +						tempBundle.id = bundId;
 246.171 +						tempBundle.options = BFlags;
 246.172 +						//Adding variables in the list
 246.173 +						receivedBundles.append(tempBundle);
 246.174 +					}
 246.175 +					emit sendBundleOffer(receivedBundles);
 246.176 +		break;
 246.177 +		//BUNDLE REQUEST RECEIVED
 246.178 +		case 0xA3:	//////log->addLog(0,(QString)"TLV receiving Bundle Request datagram...");
 246.179 +					bundleHeader = (BundleListHeader*) datagram.constData();
 246.180 +					entryCount=bundleHeader->entryCount;
 246.181 +					datagramIndex=sizeof(BundleListHeader);
 246.182 +					datagram.remove(0,datagramIndex);
 246.183 +					for (ushort i = 0; i < entryCount; ++i) 
 246.184 +					{
 246.185 +						//Resolving data from datagram
 246.186 +						struct BundleListItem *bundleItem;
 246.187 +						bundleItem = (BundleListItem*) datagram.constData();
 246.188 +						
 246.189 +						qint32 destId = (qint32)bundleItem->destinationId;
 246.190 +						qint32 bundId = (qint32)bundleItem->bundleId;
 246.191 +						qint32 BFlags = (qint32)bundleItem->BFlags;
 246.192 +						qint32 reserved = (qint32)bundleItem->reserved;
 246.193 +						datagram.remove(0,sizeof(BundleListItem));
 246.194 +						//Setting Bundle variables
 246.195 +						Bundle tempBundle;
 246.196 +						tempBundle.destinationId = destId;
 246.197 +						tempBundle.id = bundId;
 246.198 +						tempBundle.options = BFlags;
 246.199 +						//Adding variables in the list
 246.200 +						receivedBundles.append(tempBundle);
 246.201 +					}
 246.202 +					emit sendBundleRequest(receivedBundles);
 246.203 +		break;
 246.204 +		//Dictionary
 246.205 +		case 0xA0:	//////log->addLog(0,(QString)"TLV receiving Dictionary datagram...");
 246.206 +					dictionaryHeader = (DictionaryHeader*) datagram.constData();
 246.207 +					entryCount=dictionaryHeader->entryCount;
 246.208 +					datagram.remove(0,sizeof(DictionaryHeader));
 246.209 +					for (ushort i = 0; i < entryCount; ++i) 
 246.210 +					{
 246.211 +						QString nodeName;
 246.212 +						//Resolving data from datagram
 246.213 +						struct DictionaryNodeHeader * nodeHeader = (DictionaryNodeHeader*) datagram.constData();
 246.214 +						qint32 stringId = (qint32)nodeHeader->stringId;
 246.215 +						qint32 lenght = (qint32)nodeHeader->lenght;
 246.216 +						datagram.remove(0,sizeof(DictionaryNodeHeader)); //Because stings terminator
 246.217 +						nodeName=datagram.mid(0,lenght);
 246.218 +						datagram.remove(0,lenght);
 246.219 +						//Setting node variables
 246.220 +						Node tempNode;
 246.221 +						tempNode.setContent(stringId,0.0,-1,nodeName);
 246.222 +						//Adding variables in the list
 246.223 +						receivedNodes.append(tempNode);
 246.224 +					}
 246.225 +					emit sendDictionary(receivedNodes);
 246.226 +		break;		
 246.227 +		//BUNDLE DATA RECEIVED
 246.228 +		case 0xA4:	//////log->addLog(0,(QString)"TLV receiving Bundle data datagram...");
 246.229 +					bundleHeader = (BundleListHeader*) datagram.constData();
 246.230 +					entryCount=bundleHeader->entryCount;
 246.231 +					datagramIndex=sizeof(BundleListHeader);
 246.232 +					datagram.remove(0,datagramIndex);
 246.233 +					for (ushort i = 0; i < entryCount; ++i) 
 246.234 +					{
 246.235 +						//Resolving data from datagram
 246.236 +						struct BundleDataHeader *bundleItem;
 246.237 +						bundleItem = (BundleDataHeader*) datagram.constData();
 246.238 +						
 246.239 +						qint32 destId = (qint32)bundleItem->destinationId;
 246.240 +						qint32 srcId = (qint32)bundleItem->sourceId;
 246.241 +						qint32 bundId = (qint32)bundleItem->bundleId;
 246.242 +						qint32 BFlags = (qint32)bundleItem->BFlags;
 246.243 +						qint32 reserved = (qint32)bundleItem->reserved;
 246.244 +						qint32 lenght = (qint32)bundleItem->dataLenght;
 246.245 +						qint32 srclenght = (qint32)bundleItem->sourceStringLenght;
 246.246 +						qint32 dstlenght = (qint32)bundleItem->destinationStringLenght;
 246.247 +						
 246.248 +						QDateTime time;
 246.249 +						time.setTime_t(bundleItem->time);
 246.250 +						datagram.remove(0,sizeof(BundleDataHeader));
 246.251 +						//Setting Bundle variables
 246.252 +						Bundle tempBundle;
 246.253 +						tempBundle.destinationId = destId;
 246.254 +						tempBundle.sourceId = srcId;
 246.255 +						tempBundle.id = bundId;
 246.256 +						tempBundle.options = BFlags;
 246.257 +						tempBundle.timeStamp = time;
 246.258 +						QByteArray datagramPart;
 246.259 +						datagramPart=datagram.mid(0,lenght);
 246.260 +						tempBundle.data=datagramPart;
 246.261 +						datagram.remove(0,lenght);
 246.262 +						
 246.263 +						datagramPart=datagram.mid(0,srclenght);
 246.264 +						tempBundle.sourceString=datagramPart;
 246.265 +						datagram.remove(0,srclenght);
 246.266 +						datagramPart=datagram.mid(0,dstlenght);
 246.267 +						tempBundle.destinationString=datagramPart;
 246.268 +						datagram.remove(0,dstlenght);
 246.269 +						//Adding variables in the list
 246.270 +						receivedBundles.append(tempBundle);
 246.271 +					}
 246.272 +					emit sendBundleData(receivedBundles);
 246.273 +		break;
 246.274 +		default:	//////log->addLog(0,(QString)"TLV receiving Unknown datagram...");
 246.275 +					//QString name;
 246.276 +					temp = datagram.mid(2,1);
 246.277 +//					function = temp.toushort();
 246.278 +					temp = datagram.mid(32,1);
 246.279 +//					timer = temp.toushort();
 246.280 +					temp = datagram.mid(40,1);
 246.281 +//					nameLenght = temp.toushort();
 246.282 +					temp = datagram.mid(48,0);
 246.283 +					newHello.setFunction(0);
 246.284 +					newHello.setTimer(0);
 246.285 +					newHello.setSenderName(0);
 246.286 +
 246.287 +		break;
 246.288 +	}
 246.289 +
 246.290 +}
 246.291 +
 246.292 +
 246.293 +void TLV::receiveHello(Hello hello)
 246.294 +{
 246.295 +	//Setting up variables
 246.296 +	struct HelloHeader header;
 246.297 +	QString nodeName = hello.getSenderName();
 246.298 +	header.type = 0x01;//Hello 
 246.299 +	header.function = (qint32)hello.getFunction();
 246.300 +	header.timer = (qint32)hello.getTimer();
 246.301 +	header.nodeId = (qint32)hello.senderId;
 246.302 +	header.nodeType = (qint32)hello.senderType;
 246.303 +	header.nameLenght = (qint32)nodeName.size();
 246.304 +	//Preparing heder
 246.305 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(HelloHeader));	
 246.306 +	//Adding Addres Strings
 246.307 +	newDatagram.append(nodeName.toAscii());
 246.308 +	//Sending our TLV datagram
 246.309 +	//////log->addLog(0,(QString)"TLV sending Hello datagram...");
 246.310 +	emit sendDatagram(newDatagram);
 246.311 +}
 246.312 +
 246.313 +
 246.314 +//Create Dictionary
 246.315 +void TLV::createDictionary(QList<Node> nodeList)
 246.316 +{
 246.317 +	//Setting up variables
 246.318 +	struct DictionaryHeader header;
 246.319 +	header.type = 0xA0;//Dictionary 
 246.320 +	header.flags = 0x00;
 246.321 +	header.lenght = 0x00;
 246.322 +	header.entryCount=(qint32)(nodeList.size());
 246.323 +	header.reserved = 0x00;
 246.324 +	//Preparing heder
 246.325 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(DictionaryHeader));	
 246.326 +	//Adding Addres Strings
 246.327 +	Node tempNode;
 246.328 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 246.329 +	{
 246.330 +		struct DictionaryNodeHeader newNodeHeader;
 246.331 +		//Resolving data from list
 246.332 +        tempNode = nodeList.at(i);
 246.333 +		newNodeHeader.stringId = (qint32)tempNode.getId();
 246.334 +		newNodeHeader.reserved=0x00;
 246.335 +		newNodeHeader.lenght= (qint32)tempNode.nodeName.size();
 246.336 +		//Puting data to datagram
 246.337 +		QByteArray nodeDatagram = QByteArray::fromRawData((char *)&newNodeHeader, sizeof(newNodeHeader));	
 246.338 +		nodeDatagram.append(tempNode.nodeName);
 246.339 +		newDatagram.append(nodeDatagram);
 246.340 +    }
 246.341 +	//////log->addLog(0,(QString)"TLV Sending dictionary datagram...");
 246.342 +	emit sendDatagram(newDatagram);
 246.343 +
 246.344 +}
 246.345 +
 246.346 +//Create RIB
 246.347 +void TLV::createRIB(QList<Node> nodeList)
 246.348 +{
 246.349 +	//Setting up variables
 246.350 +	struct DictionaryHeader header; //It is the same as Dictionary
 246.351 +	header.type = 0xA1;//RIB Type
 246.352 +	header.flags = 0x00;
 246.353 +	header.lenght = 0x00;
 246.354 +	header.entryCount=(qint32)nodeList.size();
 246.355 +	header.reserved = 0x00;
 246.356 +	//Preparing heder
 246.357 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(DictionaryHeader));	
 246.358 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 246.359 +	{
 246.360 +		Node tempNode;
 246.361 +		struct RIBNodeHeader  newNodeHeader;
 246.362 +		//Resolving data from list
 246.363 +        tempNode = nodeList.at(i);
 246.364 +		newNodeHeader.stringId = (qint32)tempNode.getId();
 246.365 +		newNodeHeader.probability = tempNode.getProbability();
 246.366 +		newNodeHeader.RIBFlag = (qint32)tempNode.getFlag();
 246.367 +		//Puting data to datagram
 246.368 +		QByteArray nodeDatagram = QByteArray::fromRawData((char *)&newNodeHeader, sizeof(newNodeHeader));	
 246.369 +		newDatagram.append(nodeDatagram);
 246.370 +    }
 246.371 +	//////log->addLog(0,(QString)"TLV Sending RIB datagram...");
 246.372 +	emit sendDatagram(newDatagram);
 246.373 +
 246.374 +}
 246.375 +
 246.376 +
 246.377 +//Create BundleOffer
 246.378 +void TLV::createBundleOffer(QList<Bundle> bundleList)
 246.379 +{
 246.380 +	//Setting up variables
 246.381 +	struct BundleListHeader header;
 246.382 +	header.type = 0xA2;//Offer
 246.383 +	header.flags = 0x22;
 246.384 +	header.lenght = 0x00;
 246.385 +	header.entryCount=(qint32)bundleList.size();
 246.386 +	header.reserved = 0x00;
 246.387 +	//Preparing heder
 246.388 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(BundleListHeader));	
 246.389 +	//Adding bundles
 246.390 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 246.391 +	{
 246.392 +		struct BundleListItem newBundleItem;
 246.393 +		//Resolving data from list
 246.394 +        Bundle tempBundle = bundleList.at(i);
 246.395 +		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 246.396 +		newBundleItem.bundleId=(qint32)tempBundle.id;
 246.397 +		newBundleItem.BFlags=(qint32)tempBundle.options;
 246.398 +		newBundleItem.reserved=0xaa;
 246.399 +		//Puting data to datagram
 246.400 +		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(newBundleItem));	
 246.401 +		newDatagram.append(bundleDatagram);
 246.402 +    }
 246.403 +	//////log->addLog(0,(QString)"TLV Sending bundle offer...");
 246.404 +	emit sendDatagram(newDatagram);
 246.405 +
 246.406 +}
 246.407 +
 246.408 +//Create BundleOffer
 246.409 +void TLV::createBundleRequest(QList<Bundle> bundleList)
 246.410 +{
 246.411 +	//Setting up variables
 246.412 +	struct BundleListHeader header;
 246.413 +	header.type = 0xA3;//Request
 246.414 +	header.flags = 0x22;
 246.415 +	header.lenght = 0x00;
 246.416 +	header.entryCount=bundleList.size();
 246.417 +	header.reserved = 0x00;
 246.418 +	//Preparing heder
 246.419 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(BundleListHeader));	
 246.420 +	//Adding bundles
 246.421 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 246.422 +	{
 246.423 +		struct BundleListItem newBundleItem;
 246.424 +		//Resolving data from list
 246.425 +        Bundle tempBundle = bundleList.at(i);
 246.426 +		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 246.427 +		newBundleItem.bundleId=(qint32)tempBundle.id;
 246.428 +		newBundleItem.BFlags=(qint32)tempBundle.options;
 246.429 +		newBundleItem.reserved=0xaa;
 246.430 +		//Puting data to datagram
 246.431 +		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(BundleListItem));	
 246.432 +		newDatagram.append(bundleDatagram);
 246.433 +    }
 246.434 +	//////log->addLog(0,(QString)"TLV Sending bundle request...");
 246.435 +	emit sendDatagram(newDatagram);
 246.436 +
 246.437 +}
 246.438 +
 246.439 +
 246.440 +///Create BundleOffer
 246.441 +void TLV::createBundleData(QList<Bundle> bundleList)
 246.442 +{
 246.443 +
 246.444 +	
 246.445 +	//Setting up variables
 246.446 +	struct BundleListHeader header;
 246.447 +	header.type = 0xA4;//Bundle Data
 246.448 +	header.flags = 0x22;
 246.449 +	header.lenght = 0x00;
 246.450 +	header.entryCount=bundleList.size();
 246.451 +	header.reserved = 0x00;
 246.452 +	//Preparing heder
 246.453 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(header));	
 246.454 +	//Adding bundles
 246.455 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 246.456 +	{
 246.457 +		struct BundleDataHeader newBundleItem;
 246.458 +		//Resolving data from list
 246.459 +        Bundle tempBundle = bundleList.at(i);
 246.460 +		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 246.461 +		newBundleItem.sourceId=(qint32)tempBundle.sourceId;
 246.462 +		newBundleItem.bundleId=(qint32)tempBundle.id;
 246.463 +		newBundleItem.BFlags=(qint32)tempBundle.options;
 246.464 +		newBundleItem.reserved=0xaa;
 246.465 +		newBundleItem.time = tempBundle.timeStamp.toTime_t ();
 246.466 +		//Get bundle data
 246.467 +		QByteArray data;
 246.468 +		if(fileOption==1)
 246.469 +		{
 246.470 +			QString filename;
 246.471 +			filename=QString("%1").arg((int)tempBundle.id);
 246.472 +			QFile file(dir.filePath(filename));
 246.473 +			if (file.open(QIODevice::ReadOnly))
 246.474 +			{
 246.475 +			    data=file.readAll();
 246.476 +			    file.close();
 246.477 +			}
 246.478 +
 246.479 +		}
 246.480 +		else
 246.481 +			data = tempBundle.data;
 246.482 +		newBundleItem.dataLenght=(qint32)data.size();
 246.483 +		//Get bundle source string
 246.484 +		QByteArray srcData = tempBundle.sourceString;
 246.485 +		newBundleItem.sourceStringLenght=(qint32)srcData.size();
 246.486 +		//Get bundle destination string
 246.487 +		QByteArray dstData = tempBundle.destinationString;
 246.488 +		newBundleItem.destinationStringLenght=(qint32)dstData.size();
 246.489 +		//Puting item header to datagram
 246.490 +		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(newBundleItem));	
 246.491 +		//Puting item data to datagram
 246.492 +		bundleDatagram.append(data);
 246.493 +		bundleDatagram.append(srcData);
 246.494 +		bundleDatagram.append(dstData);
 246.495 +		//Adding it to main datagram
 246.496 +		newDatagram.append(bundleDatagram);
 246.497 +
 246.498 +    }
 246.499 +	//////log->addLog(0,(QString)"TLV Sending bundle data...");
 246.500 +	emit sendDatagram(newDatagram);
 246.501 +}
 246.502 +
 246.503 +
   247.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   247.2 +++ b/x86/Win32/tlv.h	Thu Jun 26 17:39:40 2008 +0100
   247.3 @@ -0,0 +1,37 @@
   247.4 +#ifndef TLV_H
   247.5 +#define TLV_H
   247.6 +
   247.7 +#include <QtCore>
   247.8 +#include <hello.h>
   247.9 +#include <node.h>
  247.10 +#include <bundle.h>
  247.11 +
  247.12 +class TLV : public QObject
  247.13 +{
  247.14 +
  247.15 +Q_OBJECT 
  247.16 +	public:
  247.17 +		TLV(QObject *parent = 0);
  247.18 +		int fileOption;
  247.19 +		QDir dir;
  247.20 +
  247.21 +	signals:
  247.22 +		void sendDatagram(QByteArray);
  247.23 +		void sendHello(Hello);
  247.24 +		void sendDictionary(QList<Node>);
  247.25 +		void sendRIB(QList<Node>);
  247.26 +		void sendBundleOffer(QList<Bundle>);
  247.27 +		void sendBundleRequest(QList<Bundle>);
  247.28 +		void sendBundleData(QList<Bundle>);
  247.29 +		
  247.30 +	public slots:
  247.31 +		void receiveHello(Hello);
  247.32 +		void receiveDatagram(QByteArray);
  247.33 +		void createDictionary(QList<Node>);
  247.34 +		void createRIB(QList<Node>);
  247.35 +		void createBundleOffer(QList<Bundle>);
  247.36 +		void createBundleRequest(QList<Bundle>);
  247.37 +		void createBundleData(QList<Bundle>);
  247.38 +};
  247.39 +
  247.40 +#endif
  247.41 \ No newline at end of file
   248.1 --- a/x86/bundle.cpp	Wed Jan 03 09:17:10 2007 +0000
   248.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   248.3 @@ -1,125 +0,0 @@
   248.4 -#include <QtCore>
   248.5 -#include <bundle.h>
   248.6 -
   248.7 -///////////////////////////////////////
   248.8 -//Bundle options:
   248.9 -//BIT 0: Send ACK to this bundle option
  248.10 -//BIT 1: ACK Bundle
  248.11 -//BIT 2: PRoPHET Message
  248.12 -//BIT 3: This bundle is an ack (used in bundle requests for letting the other 
  248.13 -//		 node know that the bundle was received. NOT THE PRoPHET ACK!)
  248.14 -//////////////////////////////////////
  248.15 -
  248.16 -
  248.17 -Bundle::Bundle(QObject *parent)
  248.18 -{
  248.19 -			id=0;
  248.20 -			sourceId=0;
  248.21 -			destinationId=0;
  248.22 -			data.clear();
  248.23 -			options=0;
  248.24 -			sourceString.clear();
  248.25 -			destinationString.clear();
  248.26 -			dataLength=0;
  248.27 -}
  248.28 -
  248.29 -
  248.30 -Bundle& Bundle::operator=(const Bundle& other)
  248.31 -{
  248.32 - id = other.id;
  248.33 - sourceId = other.sourceId;
  248.34 - destinationId = other.destinationId;
  248.35 - data = other.data;
  248.36 - timeStamp = other.timeStamp;
  248.37 - options = other.options;
  248.38 - sourceString = other.sourceString;
  248.39 - destinationString = other.destinationString;
  248.40 - dataLength = other.dataLength;
  248.41 - return *this;
  248.42 -}
  248.43 -
  248.44 -Bundle::Bundle(const Bundle& other)
  248.45 -{
  248.46 - id = other.id;
  248.47 - sourceId = other.sourceId;
  248.48 - destinationId = other.destinationId;
  248.49 - data = other.data;
  248.50 - timeStamp = other.timeStamp;
  248.51 - options = other.options;
  248.52 - sourceString = other.sourceString;
  248.53 - destinationString = other.destinationString;
  248.54 - dataLength = other.dataLength;
  248.55 -}	
  248.56 -	
  248.57 -void Bundle::setContent(int seq,int s,int d,QByteArray m,int opt,QByteArray src,QByteArray dst)
  248.58 -{
  248.59 -	timeStamp=timeStamp.currentDateTime();
  248.60 -	id=((seq%10000)+(d*10000)+(s*10000000));
  248.61 -	sourceId=s;
  248.62 -	destinationId=d;
  248.63 -	data=m; 
  248.64 -	options=opt;
  248.65 -	sourceString = src;
  248.66 -	destinationString = dst;
  248.67 -	dataLength=data.size();
  248.68 -
  248.69 -
  248.70 -}
  248.71 -void Bundle::setContent(int seq,int s,int d,QByteArray m,int opt)
  248.72 -{
  248.73 -	timeStamp=timeStamp.currentDateTime();
  248.74 -	id=((seq%10000)+(d*10000)+(s*10000000));
  248.75 -	sourceId=s;
  248.76 -	destinationId=d;
  248.77 -	data=m;
  248.78 -	sourceString.clear();
  248.79 -	destinationString.clear();
  248.80 -	options=opt;
  248.81 -	dataLength=data.size();
  248.82 -
  248.83 -}
  248.84 -
  248.85 -void Bundle::setAck(){
  248.86 -	options |= 0x8; //set ack-bit
  248.87 -}
  248.88 -
  248.89 -void Bundle::unSetAck(){
  248.90 -	options &= 0xF7; //un-set ack-bit
  248.91 -}
  248.92 -
  248.93 -bool Bundle::isAck(){
  248.94 -	if((options & 0x08)==0x08)
  248.95 -		return 1;
  248.96 -	else
  248.97 -		return 0;
  248.98 -}
  248.99 -int Bundle::getId()
 248.100 -{
 248.101 -	return id;
 248.102 -}
 248.103 -
 248.104 -int Bundle::getSourceId()
 248.105 -{
 248.106 -	return sourceId;
 248.107 -}
 248.108 -
 248.109 -int Bundle::getDestinationId()
 248.110 -{
 248.111 -	return destinationId;
 248.112 -}
 248.113 -
 248.114 -QByteArray Bundle::getData()
 248.115 -{
 248.116 -	return data;
 248.117 -}
 248.118 -
 248.119 -QDateTime Bundle::getTime()
 248.120 -{
 248.121 -	return timeStamp;
 248.122 -}
 248.123 -
 248.124 -
 248.125 -int Bundle::getOptions()
 248.126 -{
 248.127 -	return options;
 248.128 -}
   249.1 --- a/x86/bundle.h	Wed Jan 03 09:17:10 2007 +0000
   249.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   249.3 @@ -1,151 +0,0 @@
   249.4 -#ifndef BUNDLE_H
   249.5 -#define BUNDLE_H
   249.6 -
   249.7 -#include <QtCore>
   249.8 -
   249.9 -/*! \brief This class represents a bundle within PRoPHET.
  249.10 - */
  249.11 -class Bundle : public QObject
  249.12 -{
  249.13 -
  249.14 -Q_OBJECT 
  249.15 -	public:
  249.16 -	int id;
  249.17 -	int sourceId;
  249.18 -	int destinationId;
  249.19 -	QByteArray data;
  249.20 -	QByteArray sourceString;
  249.21 -	QByteArray destinationString;
  249.22 -	QDateTime timeStamp;
  249.23 -	int options;
  249.24 -	int dataLength;
  249.25 -	// The id of the last node that sent the bundle.
  249.26 -	// Used for keeping track of which bundles have been sent to which nodes.
  249.27 -	int lastSender;
  249.28 -
  249.29 -
  249.30 -	Bundle(QObject *parent = 0);
  249.31 -	Bundle(const Bundle& other);
  249.32 -	Bundle& operator=(const Bundle& other);
  249.33 -
  249.34 -	/*! \brief Sets the content of this Bundle.
  249.35 -	 * @param seq The sequence number of this Bundle??? Used for 
  249.36 -	 * calculating the id.
  249.37 -	 * @param s The id of the source node this Bundle originated from.
  249.38 -	 * @param d The id of the destination node of this Bundle.
  249.39 -	 * @param m The data payload of this Bundle.
  249.40 -	 * @param opt The options for this bundle. Only the three LSBits are used
  249.41 -	 * \verbatim
  249.42 -	           3                2                   1              0
  249.43 -	  -------------------------------------------------------------------
  249.44 -	  ... | 1=Ack     | 0 = PRoPHET bundle | 1 = Ack me       | Not used |
  249.45 -	      | 0=Non-ack | 1 = DTN bundle     | 0 = Don't ack me |          |
  249.46 -	  -------------------------------------------------------------------
  249.47 -	  \endverbatim
  249.48 -	 * @param src The string name of the source node.
  249.49 -	 * @param dst The string name of the destination node.
  249.50 -	 */void setContent(int,int s,int d,QByteArray m,int opt,QByteArray src,QByteArray dst);
  249.51 -	
  249.52 -	/*!
  249.53 -	 * Sets the content of this Bundle.
  249.54 -	 * @param seq The sequence number of this Bundle??? Used for 
  249.55 -	 * calculating the id.
  249.56 -	 * @param s The id of the source node this Bundle originated from.
  249.57 -	 * @param d The id of the destination node of this Bundle.
  249.58 -	 * @param m The data payload of this Bundle.
  249.59 -	 * @param opt The options for this bundle. Only the three LSBits are used
  249.60 -	 * \verbatim
  249.61 -	          3                2                   1              0
  249.62 -	  -------------------------------------------------------------------
  249.63 -	  ... | 1=Ack     | 0 = PRoPHET bundle | 1 = Ack me       | Not used |
  249.64 -	      | 0=Non-ack | 1 = DTN bundle     | 0 = Don't ack me |          |
  249.65 -	  -------------------------------------------------------------------
  249.66 -	  \endverbatim
  249.67 -	 */
  249.68 -	void setContent(int,int,int,QByteArray,int);
  249.69 -	
  249.70 -	//! Sets the (non-PRoPHET) ack bit of this bundle.
  249.71 -	/*!
  249.72 -	 * This is used for ackin bundles on the connection level, so that each 
  249.73 -	 * bundle is only sent once in bundle offers.
  249.74 -	 */
  249.75 -	void setAck();
  249.76 -	
  249.77 -	//! Resets the (non-PRoPHET) ack bit of this bundle.
  249.78 -	/*!
  249.79 -	 * This is used for ackin bundles on the connection level, so that each 
  249.80 -	 * bundle is only sent once in bundle offers.
  249.81 -	 */
  249.82 -	void unSetAck();
  249.83 -
  249.84 -	//! Checks whether this bundle has the (non PRoPHET) ack bit set.
  249.85 -	/*!
  249.86 -	 * @return true if the (non PRoPHET) ack bit is set, false otherwise.
  249.87 -	 */
  249.88 -	bool isAck();
  249.89 -
  249.90 -	//! Sets the last sender of this bundle.
  249.91 -	/*!
  249.92 -	 * Used for keeping track of which bundles have already been sent to 
  249.93 -	 * certains nodes.
  249.94 -	 * @param sender the id of the last sender.
  249.95 -	 */
  249.96 -	void setLastSender(int sender){
  249.97 -		lastSender = sender;
  249.98 -	}
  249.99 -
 249.100 -	//! Returns the id if the last sender
 249.101 -	/*!
 249.102 -	 * Used for keeping track of which bundles have already been sent to 
 249.103 -	 * certain nodes.
 249.104 -	 * @return the id of the last sender
 249.105 -	 */
 249.106 -	int getLastSender(){
 249.107 -		return lastSender;
 249.108 -	}
 249.109 -
 249.110 -	/*!
 249.111 -	 * Returns the id of the Bundle.
 249.112 -	 * @return The id of this Bundle.
 249.113 -	 */
 249.114 -	int getId(); 
 249.115 -	
 249.116 -	/*!
 249.117 -	 * Returns the source id of this Bundle.
 249.118 -	 * @return The source id of this Bundle.
 249.119 -	 */
 249.120 -	int getSourceId();
 249.121 -	
 249.122 -	/*!
 249.123 -	 * Returns the destination id of this Bundle.
 249.124 -	 * @return The destination id of this Bundle.
 249.125 -	 */
 249.126 -	int getDestinationId();
 249.127 -	
 249.128 -	/*!
 249.129 -	 * Returns the timestamp of when this Bundle was created.
 249.130 -	 * @return The timestamp of when this Bundle was created.
 249.131 -	 */
 249.132 -	QDateTime getTime();
 249.133 -	
 249.134 -	/*!
 249.135 -	 * Returns the data payload of this Bundle.
 249.136 -	 * @return The data payload of this Bundle.
 249.137 -	 */
 249.138 -	QByteArray getData();
 249.139 -	
 249.140 -	/*!
 249.141 -	 * Returns the options of this Bundle. Only the three LSBits are used.
 249.142 -	 * \verbatim
 249.143 -	          3                2                   1              0
 249.144 -	  -------------------------------------------------------------------
 249.145 -	  ... | 1=Ack     | 0 = PRoPHET bundle | 1 = Ack me       | Not used |
 249.146 -	      | 0=Non-ack | 1 = DTN bundle     | 0 = Don't ack me |          |
 249.147 -	  -------------------------------------------------------------------
 249.148 -	  \endverbatim
 249.149 -	 */
 249.150 -	int getOptions();
 249.151 -	
 249.152 -};
 249.153 -
 249.154 -#endif
   250.1 --- a/x86/bundleListFileIO.cpp	Wed Jan 03 09:17:10 2007 +0000
   250.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   250.3 @@ -1,111 +0,0 @@
   250.4 -#include <QtCore>
   250.5 -#include <bundleListFileIO.h>
   250.6 -#include <readFile.h>
   250.7 -
   250.8 -BundleListFileIO::BundleListFileIO(QHash<int,int> *h, QDir storageDir, QString fileName)
   250.9 -{
  250.10 -	hash = h;
  250.11 -	file = new QFile(storageDir.filePath(fileName));
  250.12 -	ReadFile conf;
  250.13 -	fileOption=conf.getUseFileHash();
  250.14 -	int WRITETIMER =conf.getWriteToFileTimer();
  250.15 -	if(fileOption==1)
  250.16 -	{
  250.17 -		timer = new QTimer();
  250.18 -		connect(timer, SIGNAL(timeout()), this, SLOT(writeAll()));
  250.19 -		timer->start(WRITETIMER);
  250.20 -	}
  250.21 -
  250.22 -}
  250.23 -
  250.24 -int BundleListFileIO::writeItem(int key)
  250.25 -{
  250.26 -	if(file->open(QIODevice::WriteOnly |QIODevice::Append| QIODevice::Text))
  250.27 -	{
  250.28 -		//add the key
  250.29 -		QString s = QString("%1").arg((int)key);
  250.30 -		//a tab to make things look nice
  250.31 -		s.append("\t");
  250.32 -		//add the values of the key
  250.33 -		QList<int> l = hash->values(key);
  250.34 -		for(int i=0; i<l.size(); i++)
  250.35 -		{
  250.36 -			s.append(QString("%1").arg((int)l.at(i)));
  250.37 -			s.append(";");	//we use ; as separator
  250.38 -		}
  250.39 -		s.remove(s.size()-1,1); //remove the last ;
  250.40 -		s.append("\n");
  250.41 -		file->write(s.toAscii());
  250.42 -		file->close();
  250.43 -		return 0;
  250.44 -	}else
  250.45 -	{
  250.46 -		//file IO error
  250.47 -		return -1;
  250.48 -	}
  250.49 -}
  250.50 -
  250.51 -int BundleListFileIO::writeAll()
  250.52 -{
  250.53 -	//erase anything in the file
  250.54 -	file->open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text);
  250.55 -	file->close();
  250.56 -	//then write each key and its values
  250.57 -	//QList<int> l = hash->uniqueKeys(); //!!This method doesn't exist
  250.58 -	QList<int> keys = hash->keys();
  250.59 -	QList<int> uniqueKeys;
  250.60 -	for(int i=0; i<keys.size(); i++)
  250.61 -	{
  250.62 -		if(!uniqueKeys.contains(keys.at(i)))
  250.63 -		{
  250.64 -			uniqueKeys.append(keys.at(i));
  250.65 -		}
  250.66 -	}
  250.67 -	int ret = 0;
  250.68 -	for(int i=0; i<uniqueKeys.size(); i++)
  250.69 -	{
  250.70 -		int status = writeItem(uniqueKeys.at(i));
  250.71 -		if(status < 0)
  250.72 -			ret = status;
  250.73 -	}
  250.74 -	return ret;
  250.75 -}
  250.76 -
  250.77 -int BundleListFileIO::readAll()
  250.78 -{
  250.79 -	if (file->open(QIODevice::ReadOnly|QIODevice::Text))
  250.80 -	{
  250.81 -		QString line = file->readLine();
  250.82 -		while(line.size() > 0)
  250.83 -		{
  250.84 -			bool ok;
  250.85 -			QRegExp sep("[\t ]+");	//all tabs and spaces
  250.86 -			int key = line.section(sep, 0, 0).toInt(&ok, 10);
  250.87 -			if(!ok)
  250.88 -			{
  250.89 -				file->close();
  250.90 -				return -2;
  250.91 -			}
  250.92 -			QString values = line.section(sep, -1, -1);
  250.93 -			QStringList valuesList = values.split(";");
  250.94 -			for(int i=0; i<valuesList.size(); i++)
  250.95 -			{
  250.96 -				int value = valuesList.at(i).toInt();
  250.97 -				if(!ok)
  250.98 -				{
  250.99 -					file->close();
 250.100 -					return -2;
 250.101 -				}
 250.102 -				hash->insertMulti(key, value);
 250.103 -			}
 250.104 -			line = file->readLine();
 250.105 -		}
 250.106 -		file->close();
 250.107 -		return 0;
 250.108 -	}else
 250.109 -	{
 250.110 -		//file IO error
 250.111 -		return -1;
 250.112 -	}
 250.113 -}
 250.114 -
   251.1 --- a/x86/bundleListFileIO.h	Wed Jan 03 09:17:10 2007 +0000
   251.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   251.3 @@ -1,54 +0,0 @@
   251.4 -#ifndef BUNDLELISTFILEIO_H
   251.5 -#define BUNDLELISTFILEIO_H
   251.6 -#include <QtCore>
   251.7 -
   251.8 -//! Handles the file IO for the QMultiHash that keeps track of which nodes have received certain bundles.
   251.9 -/*! The QMultiHash should have integer bundle ids as keys and a list of 
  251.10 - * integer node ids as values.
  251.11 - */
  251.12 -class BundleListFileIO : public QObject
  251.13 -{
  251.14 -	Q_OBJECT
  251.15 -
  251.16 -	public:
  251.17 -		BundleListFileIO(QObject *parent = 0);
  251.18 -		BundleListFileIO(const BundleListFileIO& other);
  251.19 -		BundleListFileIO& operator=(const BundleListFileIO& other);;
  251.20 -
  251.21 -		//!Creates a new BundleListFileIO object.
  251.22 -		/*!
  251.23 -		 * @param hash the QMultiHash used for storing bundle->node mappings.
  251.24 -		 * @param fileName the name of the file used for storing the hash.
  251.25 -		 */
  251.26 -		BundleListFileIO(QHash<int,int> *hash, QDir storageDir, QString fileName);
  251.27 -
  251.28 -		//! Writes the specified item to the file.
  251.29 -		/*! If the key already exists in the file, the old one is overwritten.
  251.30 -		 * @param key the key od what should be written to file.
  251.31 -		 * @return 0 if success, -1 otherwise
  251.32 -		 */
  251.33 -		int writeItem(int key);
  251.34 -
  251.35 -		//! Reads all keys and values from file and inserts them into the hash.
  251.36 -		/*! If keys read from file already exist in the hash the values from 
  251.37 -		 * file are appended to the values in the hash.
  251.38 -		 * @return 0 if successful reading file, -1 if file IO error, -2 if parse error.
  251.39 -		 */
  251.40 -		int readAll();
  251.41 -
  251.42 -		//! Writes all items in the hash to file
  251.43 -		/*!
  251.44 -		 * @return 0 if all items were written successfully, -1 otherwise. 
  251.45 -		 * Even if -1 is returned, as many items as possible are written to 
  251.46 -		 * file.
  251.47 -		 */
  251.48 -private slots:
  251.49 -		int writeAll();
  251.50 -
  251.51 -	private:
  251.52 -		QHash<int,int> *hash;
  251.53 -		QFile* file;
  251.54 -		QTimer* timer;
  251.55 -		int fileOption;
  251.56 -};
  251.57 -#endif
   252.1 --- a/x86/bundleManager.cpp	Wed Jan 03 09:17:10 2007 +0000
   252.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   252.3 @@ -1,767 +0,0 @@
   252.4 -#include <QtCore>
   252.5 -#include <bundleManager.h>
   252.6 -#include <bundle.h>
   252.7 -#include <readFile.h>
   252.8 -#include <nodeManager.h>
   252.9 -#include <bundleListFileIO.h>
  252.10 -#include <stdlib.h>
  252.11 -
  252.12 -#define BUNDLEDESTUPDATE 1000
  252.13 -#define TTLTIMER 1000
  252.14 -
  252.15 -BundleManager::BundleManager(int id)
  252.16 -{
  252.17 -	ourId=id;
  252.18 -	ReadFile conf;
  252.19 -	memoryStorageSize=conf.getMemoryStorageSize();
  252.20 -	fileStorageSize=conf.getStorageSize();
  252.21 -	fileOption=conf.getUseFileBundles();
  252.22 -	TTLOption=conf.getUseTTL();
  252.23 -	TTLValue=conf.getTTL();
  252.24 -	smartOffer=conf.getSmartOffer();
  252.25 -	if(TTLOption==1)
  252.26 -	{
  252.27 -		TTLTimer = new QTimer();
  252.28 -		TTLTimer->start(TTLTIMER);
  252.29 -		connect(TTLTimer, SIGNAL(timeout()), this, SLOT(checkTTL()));
  252.30 -	}
  252.31 -	routing=conf.getRouting();
  252.32 -	int WRITETIMER =conf.getWriteToFileTimer();
  252.33 -	storagePath=conf.getStoragePath();
  252.34 -	dir.setPath(storagePath);
  252.35 -	//Create the dir if it does not exist
  252.36 -	if(!dir.exists())
  252.37 -		dir.mkpath(dir.path());
  252.38 -	QString msgDirPath=conf.getMsgPath();
  252.39 -	msgDir.setPath(msgDirPath);
  252.40 -	option=conf.getUseFileBundles();
  252.41 -	logOption=conf.getLogOption();
  252.42 -	if(fileOption==1)
  252.43 -	{
  252.44 -		readFromFile();
  252.45 -		writeToFileTimer = new QTimer();
  252.46 -		connect(writeToFileTimer, SIGNAL(timeout()), this, SLOT(saveToFile()));
  252.47 -		writeToFileTimer->start(WRITETIMER);
  252.48 -		emit sendDebugBundleList(bundleList);
  252.49 -	}
  252.50 -	else
  252.51 -	{
  252.52 -		int seed = 10000;		/* choose a seed value */
  252.53 -		srand(seed);		/*initialize random number generator*/
  252.54 -		seq = (int)(rand()*1000000);
  252.55 -	}
  252.56 -
  252.57 -
  252.58 -	timer = new QTimer();
  252.59 -	showFirstTime=0;
  252.60 -	timer->start(5000);
  252.61 -	connect(timer, SIGNAL(timeout()), this, SLOT(emitDebugList()));
  252.62 -	if(logOption==1)
  252.63 -	{
  252.64 -		log = new MessageFile;
  252.65 -		log->set("transfer.log", 1000000, 5);
  252.66 -	}
  252.67 -	QString fileName = "bundleHash.txt";
  252.68 -	hashFile = new BundleListFileIO(&transferredBundleHash,
  252.69 -													 dir,
  252.70 -													 fileName);
  252.71 -	//get all bundle->node mappings from file
  252.72 -
  252.73 -	int res; 
  252.74 -	if(conf.getUseFileHash()==1)
  252.75 -		res= hashFile->readAll();
  252.76 -	if(logOption==1)
  252.77 -	{
  252.78 -	    QString logString;
  252.79 -	    logString.append("Imported to hash from file, result(0=ok): ");	
  252.80 -	    logString.append(QString("%1").arg((int)res));
  252.81 -	    log->addLog(0,logString);
  252.82 -	}
  252.83 -}
  252.84 -
  252.85 -void BundleManager::emitDebugList()
  252.86 -{
  252.87 -	if(showFirstTime==0)
  252.88 -	{
  252.89 -		emit sendDebugBundleList(bundleList);
  252.90 -		showFirstTime=1;
  252.91 -	}
  252.92 -
  252.93 -}
  252.94 -void BundleManager::saveToFile()
  252.95 -{
  252.96 -	QFile file(dir.filePath("bundles.txt"));
  252.97 -	if(file.open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text))
  252.98 -	{
  252.99 -	    QDateTime realTime;
 252.100 -	    realTime=realTime.currentDateTime ();
 252.101 -	    QString time=realTime.toString("MM/dd/yyyy hh:mm:ss");
 252.102 -	    time.append("\n");
 252.103 -	    file.write(time.toAscii ());
 252.104 -	    QString seqString;
 252.105 -	    seqString.append(QString("%1").arg((int)seq));
 252.106 -	    seqString.append("\n");
 252.107 -	    file.write(seqString.toAscii ());
 252.108 -	    for (ushort i = 0; i < bundleList.size(); ++i) 
 252.109 -	    {
 252.110 -		QString bundleString;
 252.111 -		bundleString.append(QString("%1").arg((int)bundleList.at(i).id));
 252.112 -		bundleString.append("\t");
 252.113 -		bundleString.append(QString("%1").arg((int)bundleList.at(i).sourceId));
 252.114 -		bundleString.append("\t");
 252.115 -		bundleString.append(QString("%1").arg((int)bundleList.at(i).destinationId));
 252.116 -		bundleString.append("\t");
 252.117 -		bundleString.append(bundleList.at(i).sourceString);
 252.118 -		bundleString.append("\t");
 252.119 -		bundleString.append(bundleList.at(i).destinationString);
 252.120 -		bundleString.append("\t");
 252.121 -		QDateTime Dtime = bundleList.at(i).timeStamp;
 252.122 -		QString time=Dtime.toString("MM/dd/yyyy hh:mm:ss");
 252.123 -		bundleString.append(time);
 252.124 -		bundleString.append("\t");
 252.125 -		bundleString.append(QString("%1").arg((int)bundleList.at(i).options));
 252.126 -		bundleString.append("\t");
 252.127 -		bundleString.append(QString("%1").arg((int)bundleList.at(i).dataLength));
 252.128 -		bundleString.append("\n");
 252.129 -		file.write(bundleString.toAscii ());
 252.130 -	    }
 252.131 -	    file.close();
 252.132 -	}
 252.133 -}
 252.134 -
 252.135 -void BundleManager::readFromFile()
 252.136 -{
 252.137 -	QFile file(dir.filePath("bundles.txt"));
 252.138 -	if (file.open(QIODevice::ReadOnly|QIODevice::Text))
 252.139 -	{
 252.140 -		QString firstLine;
 252.141 -		QString seqLine;
 252.142 -		QString line;
 252.143 -		//First we read date and time
 252.144 -		firstLine=file.readLine();
 252.145 -		//Then we read bundle sequence number
 252.146 -		seqLine=file.readLine();
 252.147 -		seq=seqLine.toInt(0,10);
 252.148 -		//Then we add nodes
 252.149 -		line=file.readLine();
 252.150 -		while(line.size()>0)
 252.151 -		{
 252.152 -			//Parsing node
 252.153 -			int pos;
 252.154 -			QString temp;
 252.155 -			Bundle newBundle;
 252.156 -			//Bundle ID
 252.157 -			pos=line.indexOf("\t",0);
 252.158 -			temp=line.mid(0,pos);
 252.159 -			newBundle.id=temp.toInt(0,10);
 252.160 -			line.remove(0,pos+1);
 252.161 -			//Bundle source ID
 252.162 -			pos=line.indexOf("\t",0);
 252.163 -			temp=line.mid(0,pos);
 252.164 -			newBundle.sourceId=temp.toInt(0,10);
 252.165 -			line.remove(0,pos+1);
 252.166 -			//Bundle destination ID
 252.167 -			pos=line.indexOf("\t",0);
 252.168 -			temp=line.mid(0,pos);
 252.169 -			newBundle.destinationId=temp.toInt(0,10);
 252.170 -			line.remove(0,pos+1);
 252.171 -			//Bundle source string
 252.172 -			pos=line.indexOf("\t",0);
 252.173 -			temp=line.mid(0,pos);
 252.174 -			newBundle.sourceString=temp.toAscii();
 252.175 -			line.remove(0,pos+1);
 252.176 -			//Bundle destination string
 252.177 -			pos=line.indexOf("\t",0);
 252.178 -			temp=line.mid(0,pos);
 252.179 -			newBundle.destinationString=temp.toAscii();
 252.180 -			line.remove(0,pos+1);
 252.181 -			//Bundle timestamp
 252.182 -			pos=line.indexOf("\t",0);
 252.183 -			temp=line.mid(0,pos);
 252.184 -			QDateTime time;
 252.185 -			time=time.fromString(temp,"MM/dd/yyyy hh:mm:ss");
 252.186 -			newBundle.timeStamp=time;
 252.187 -			line.remove(0,pos+1);
 252.188 -			//Bundle options
 252.189 -			pos=line.indexOf("\t",0);
 252.190 -			temp=line.mid(0,pos);
 252.191 -			newBundle.options=temp.toInt(0,10);
 252.192 -			line.remove(0,pos+1);
 252.193 -			//Bundle datalength
 252.194 -			pos=line.indexOf("\t",0);
 252.195 -			temp=line.mid(0,pos);
 252.196 -			newBundle.dataLength=temp.toInt(0,10);
 252.197 -			line.remove(0,pos+1);
 252.198 -			//Adding Node
 252.199 -			QString bundlefilename;
 252.200 -			bundlefilename=QString("%1").arg((int)newBundle.id);
 252.201 -			QFile bundleFile(dir.filePath(bundlefilename));
 252.202 -			if (bundleFile.open(QIODevice::ReadOnly))
 252.203 -			{
 252.204 -			    int size=bundleFile.size();
 252.205 -			    bundleFile.close();
 252.206 -				if(bundleFile.size()>0)
 252.207 -				{
 252.208 -					bundleList.append(newBundle);
 252.209 -				}
 252.210 -			}
 252.211 -
 252.212 -
 252.213 -			line=file.readLine();
 252.214 -		}
 252.215 -		file.close();
 252.216 -	}
 252.217 -	//DEBUG
 252.218 -	emit sendDebugBundleList(bundleList);
 252.219 -	emit sendMemoryStorage(getMemoryStorageSize());
 252.220 -	emit sendFileStorage(getFileStorageSize());
 252.221 -
 252.222 -}
 252.223 -
 252.224 -QList<Bundle> BundleManager::getBundleList()
 252.225 -{	
 252.226 -	return bundleList;
 252.227 -}
 252.228 -
 252.229 -int BundleManager::getMemoryStorageSize()
 252.230 -{	
 252.231 -	int size=0;
 252.232 -	for (ushort i = 0; i < bundleList.size(); ++i) 
 252.233 -	{
 252.234 -		size+=getMemoryBundleSize(bundleList.at(i));
 252.235 -	}
 252.236 -	return size;
 252.237 -}
 252.238 -
 252.239 -int BundleManager::getFileStorageSize()
 252.240 -{	
 252.241 -	int size=0;
 252.242 -	for (ushort i = 0; i < bundleList.size(); ++i) 
 252.243 -	{
 252.244 -		size+=getFileBundleSize(bundleList.at(i));
 252.245 -	}
 252.246 -	return size;
 252.247 -}
 252.248 -
 252.249 -int BundleManager::getMemoryBundleSize(Bundle bundle)
 252.250 -{	
 252.251 -	int size=0;
 252.252 -	size+=sizeof(Bundle);
 252.253 -	size+=bundle.data.size();
 252.254 -	size+=bundle.destinationString.size();
 252.255 -	size+=bundle.sourceString.size();
 252.256 -	return size;
 252.257 -}
 252.258 -
 252.259 -int BundleManager::getFileBundleSize(Bundle bundle)
 252.260 -{	
 252.261 -	if(fileOption==1)
 252.262 -	{
 252.263 -		QString filename;
 252.264 -		filename=QString("%1").arg((int)bundle.id);
 252.265 -		QFile file(dir.filePath(filename));
 252.266 -		return file.size();
 252.267 -	}
 252.268 -	return 0;
 252.269 -}
 252.270 -
 252.271 -
 252.272 -QList<Bundle> BundleManager::getBundleOffer(QList<Node> ourList,QList<Node> encoutnerList,int encounterId)
 252.273 -{
 252.274 -	QList<Bundle> newBundleList;
 252.275 -//	return bundleList;
 252.276 -
 252.277 -	switch(routing)
 252.278 -	{
 252.279 -		case 0:	//EPIDEMIC ROUTING - I like it.. ;)	
 252.280 -			//We have to check for each bundle
 252.281 -			for (ushort i = 0; i < bundleList.size(); ++i) 
 252.282 -			{
 252.283 -				//We have to exclude our own bundles
 252.284 -				if(bundleList.at(i).destinationId!=ourId)
 252.285 -				{		
 252.286 -					if(smartOffer==1)
 252.287 -					{
 252.288 -					    // only offer the bundle if it was not already sent to the 
 252.289 -					    // encountered node.
 252.290 -					    QList<int> l = transferredBundleHash.values(bundleList.at(i).id);
 252.291 -					    if(!l.contains(encounterId))
 252.292 -					    {
 252.293 -							Bundle tempBundle;
 252.294 -							tempBundle=bundleList.at(i);
 252.295 -							newBundleList.append(tempBundle);
 252.296 -							if(logOption==1)
 252.297 -							{
 252.298 -							    QString logString;
 252.299 -		    					logString.append("Bundle: ");	
 252.300 -							    logString.append(QString("%1").arg((int)tempBundle.id));
 252.301 -		    					logString.append(" with encounterId: ");	
 252.302 -							    logString.append(QString("%1").arg((int)encounterId));
 252.303 -		    					logString.append(" not in hash, adding it to offer.");	
 252.304 -		    					log->addLog(0,logString);
 252.305 -							}
 252.306 -						}else
 252.307 -						{
 252.308 -							if(logOption==1)
 252.309 -							{
 252.310 -							    QString logString;
 252.311 -		    					logString.append("Bundle: ");	
 252.312 -							    logString.append(QString("%1").arg((int)bundleList.at(i).id));
 252.313 -		    					logString.append(" with encounterId: ");	
 252.314 -							    logString.append(QString("%1").arg((int)encounterId));
 252.315 -		    					logString.append(" is in hash, not adding it to offer.");	
 252.316 -		    					log->addLog(0,logString);
 252.317 -							}
 252.318 -						}
 252.319 -					}
 252.320 -					else // no smartOffer
 252.321 -					{
 252.322 -					    Bundle tempBundle;
 252.323 -					    tempBundle=bundleList.at(i);
 252.324 -					    newBundleList.append(tempBundle);	
 252.325 -    				}
 252.326 -					
 252.327 -				}
 252.328 -			}
 252.329 -			return newBundleList;
 252.330 -				return bundleList; break;	//this does nothing, probably should be removed
 252.331 -		case 1: //PROPHET ROUTING: GRTR  P_(B,D)>P_(A,D) - A bit more advanced
 252.332 -		//We have to check for each bundle
 252.333 -			for (ushort i = 0; i < bundleList.size(); ++i) 
 252.334 -			{
 252.335 -				//We have to exclude our own bundles
 252.336 -				if(bundleList.at(i).destinationId!=ourId)
 252.337 -				{		
 252.338 -					float ourProbability = -1.0;
 252.339 -					float encounterProbability = -1.0;
 252.340 -					int bundleDestination = bundleList.at(i).destinationId;
 252.341 -					//First we get our probability
 252.342 -					for (ushort n = 0; n < ourList.size(); ++n) 
 252.343 -					{
 252.344 -						int nodeId=ourList.at(n).nodeId;
 252.345 -						if(nodeId==bundleDestination)
 252.346 -							ourProbability = ourList.at(n).probability;
 252.347 -						}
 252.348 -					//Then we get encouter probability
 252.349 -					for (ushort n = 0; n < encoutnerList.size(); ++n) 
 252.350 -					{
 252.351 -						int nodeId=encoutnerList.at(n).nodeId;
 252.352 -						if(encoutnerList.at(n).nodeId==bundleDestination)
 252.353 -							encounterProbability = encoutnerList.at(n).probability;
 252.354 -					}
 252.355 -					//GTRT and Epidemic for ACKS
 252.356 -					if((((encounterProbability>ourProbability)||(bundleDestination==encounterId))&&(bundleDestination!=0)))//||(((bundleList.at(i).options&0x02)==0x02)))
 252.357 -					{		
 252.358 -					    if(smartOffer==1)
 252.359 -			    	    {
 252.360 -							// only send the bundle if it was not already sent to the 
 252.361 -							// encountered node.
 252.362 -							QList<int> l = transferredBundleHash.values(bundleList.at(i).id);
 252.363 -							if(!l.contains(encounterId))
 252.364 -							{
 252.365 -							    Bundle tempBundle;
 252.366 -							    tempBundle=bundleList.at(i);
 252.367 -							    newBundleList.append(tempBundle);
 252.368 -								if(logOption==1)
 252.369 -								{
 252.370 -								    QString logString;
 252.371 -			    					logString.append("Bundle: ");	
 252.372 -								    logString.append(QString("%1").arg((int)tempBundle.id));
 252.373 -		    						logString.append(" with encounterId: ");	
 252.374 -								    logString.append(QString("%1").arg((int)encounterId));
 252.375 -		    						logString.append(" not in hash, adding it to offer.");	
 252.376 -		    						log->addLog(0,logString);
 252.377 -								}
 252.378 -    						}else
 252.379 -							{
 252.380 -								if(logOption==1)
 252.381 -								{
 252.382 -							    	QString logString;
 252.383 -		    						logString.append("Bundle: ");	
 252.384 -								    logString.append(QString("%1").arg((int)bundleList.at(i).id));
 252.385 -		    						logString.append(" with encounterId: ");	
 252.386 -								    logString.append(QString("%1").arg((int)encounterId));
 252.387 -		    						logString.append(" is in hash, not adding it to offer.");	
 252.388 -		    						log->addLog(0,logString);
 252.389 -								}
 252.390 -							}
 252.391 -					    }
 252.392 -					    else	//no smartOffer
 252.393 -					    {
 252.394 -					        Bundle tempBundle;
 252.395 -					        tempBundle=bundleList.at(i);
 252.396 -					        newBundleList.append(tempBundle);
 252.397 -    					    }
 252.398 -					}
 252.399 -				}
 252.400 -			}
 252.401 -			return newBundleList;
 252.402 -			break;
 252.403 -	}
 252.404 -	return bundleList;
 252.405 -}
 252.406 -
 252.407 -void BundleManager::updateBundlesDestinations(NodeManager* nodeManager)
 252.408 -{
 252.409 -	for (ushort i = 0; i < bundleList.size(); ++i) 
 252.410 -	{
 252.411 -		Bundle tempBundle;
 252.412 -		if(bundleList.at(i).destinationId==0)
 252.413 -		{
 252.414 -			QString source;
 252.415 -			QString destination;
 252.416 -			QString temp;
 252.417 -			int pos;
 252.418 -			tempBundle=bundleList.at(i);
 252.419 -/*			temp=tempBundle.sourceString;
 252.420 -			pos=temp.indexOf("://",0);
 252.421 -			temp.remove(0,pos+3);
 252.422 -			pos=temp.indexOf("/",0);
 252.423 -			source=temp.mid(0,pos);*/
 252.424 -			temp=tempBundle.destinationString;
 252.425 -			pos=temp.indexOf("://",0);
 252.426 -			temp.remove(0,pos+3);
 252.427 -			pos=temp.indexOf("/",0);
 252.428 -			destination=temp.mid(0,pos);
 252.429 -			tempBundle.destinationId=nodeManager->getId(destination);
 252.430 -			bundleList.replace(i,tempBundle);
 252.431 -			emit sendDebugBundleList(bundleList);
 252.432 -		}
 252.433 -	} 
 252.434 -
 252.435 -}
 252.436 -
 252.437 -QList<Bundle> BundleManager::prepareBundels(QList<Bundle> receivedList, int senderId)
 252.438 -{
 252.439 -	//Add any acked bundles to the hash with bundle->node mappings, then remove 
 252.440 -	//it from the received list.
 252.441 -	for(int i=0; i<receivedList.size(); i++)
 252.442 -	{
 252.443 -		Bundle b = receivedList.at(i);
 252.444 -		if(b.isAck())
 252.445 -		{
 252.446 -			//Only add the sender to the hash if not alrady in it
 252.447 -			QList<int> l = transferredBundleHash.values(b.id);
 252.448 -			if(!l.contains(senderId)){
 252.449 -				transferredBundleHash.insertMulti(b.id,senderId);
 252.450 -				if(logOption==1){
 252.451 -					QString logString;
 252.452 -					logString.append("Received smart-offer ack for Bundle: ");	
 252.453 -					logString.append(QString("%1").arg((int)b.id));
 252.454 -					logString.append(", adding it to hash. Sender: ");	
 252.455 -					logString.append(QString("%1").arg((int)senderId));
 252.456 -					log->addLog(0,logString);
 252.457 -				}
 252.458 -			}
 252.459 -			receivedList.removeAt(i);
 252.460 -		}
 252.461 -	}
 252.462 -	
 252.463 -	QList<Bundle> newBundleList;
 252.464 -	//We have to find and add all the bundles with data to the list
 252.465 -	for (ushort i = 0; i < bundleList.size(); ++i) 
 252.466 -	{
 252.467 -		for (ushort j = 0; j < receivedList.size(); ++j) 
 252.468 -		{
 252.469 -			if(bundleList.at(i).id==receivedList.at(j).id)
 252.470 -				newBundleList.append(bundleList.at(i));
 252.471 -		}	
 252.472 -	}
 252.473 -	return newBundleList; 
 252.474 -}
 252.475 -
 252.476 -
 252.477 -QList<Bundle> BundleManager::prepareBundelRequest(QList<Bundle> receivedList)
 252.478 -{
 252.479 -	//We take only bundles that we don't have
 252.480 -	//Currently no memory restrictions!!!
 252.481 -	for (ushort i = 0; i < bundleList.size(); ++i) 
 252.482 -	{
 252.483 -		for (ushort j = 0; j < receivedList.size(); ++j) 
 252.484 -		{
 252.485 -			if((bundleList.at(i).id==receivedList.at(j).id))//||(bundleList.at(i).options==receivedList.at(j).id))
 252.486 -			{
 252.487 -				receivedList.removeAt(j);
 252.488 -				j=0;
 252.489 -			}
 252.490 -		}	
 252.491 -	}
 252.492 -
 252.493 -	return receivedList; //We have to add some memory restrictions
 252.494 -}
 252.495 -
 252.496 -
 252.497 -
 252.498 -void BundleManager::addBundleList(QList<Bundle> receivedList)
 252.499 -{
 252.500 -	for (ushort n = 0; n < receivedList.size(); ++n)
 252.501 -	{
 252.502 -		Bundle newBundle;
 252.503 -		newBundle=receivedList.at(n);
 252.504 -		addBundle(newBundle);
 252.505 -	}	
 252.506 -}
 252.507 -
 252.508 -
 252.509 -//This is internal slot for adding bundles to the list
 252.510 -void BundleManager::storeBundle(Bundle newBundle)
 252.511 -{
 252.512 -
 252.513 -	//we obtain space for bundle
 252.514 -	//FIFO 
 252.515 -	while( 
 252.516 -		 (((getMemoryStorageSize()+getMemoryBundleSize(newBundle))>memoryStorageSize)||
 252.517 -		 ((getFileStorageSize()+getFileBundleSize(newBundle))>fileStorageSize))&&
 252.518 -		 (bundleList.size()>0)
 252.519 -		 )
 252.520 -	{
 252.521 -		if(fileOption==1)
 252.522 -		{
 252.523 -			Bundle firstBundle;
 252.524 -			firstBundle=bundleList.first();
 252.525 -			QString filename;
 252.526 -			filename=QString("%1").arg((int)firstBundle.id);
 252.527 -			QFile file(dir.filePath(filename));
 252.528 -			file.remove();
 252.529 -		}
 252.530 -		bundleList.removeFirst();
 252.531 -	}
 252.532 -	//Then we add it to the list
 252.533 -	if(fileOption==1)
 252.534 -	{
 252.535 -		QString filename;
 252.536 -		filename=QString("%1").arg((int)newBundle.id);
 252.537 -		QFile file(dir.filePath(filename));
 252.538 -		if (file.open(QIODevice::WriteOnly))
 252.539 -		{
 252.540 -			file.write(newBundle.data);
 252.541 -			newBundle.data.clear();
 252.542 -			file.close();
 252.543 -		}
 252.544 -	}
 252.545 -	bundleList.append(newBundle);
 252.546 -
 252.547 -		
 252.548 -	//DEBUG
 252.549 -	emit sendDebugBundleList(bundleList);
 252.550 -	emit sendMemoryStorage(getMemoryStorageSize());
 252.551 -	emit sendFileStorage(getFileStorageSize());
 252.552 -
 252.553 -
 252.554 -
 252.555 -}
 252.556 -
 252.557 -//This is external slot for receivng bundles
 252.558 -void BundleManager::addBundle(Bundle newBundle)
 252.559 -{
 252.560 -	int isInTheList=0;
 252.561 - 	Bundle tempBundle=newBundle;
 252.562 -	//Checking that we don't have the same bundle
 252.563 -	//or that wedidn't get any ACK for this bundle sofar
 252.564 -	for (ushort n = 0; n < bundleList.size(); ++n)
 252.565 -	{
 252.566 -		if(tempBundle.id==bundleList.at(n).id)
 252.567 -			isInTheList++;
 252.568 -		//Is there allready an ack for this bundle
 252.569 -		if((bundleList.at(n).options&0x02)==0x02)
 252.570 -		{		
 252.571 -			QByteArray data;
 252.572 -			if(fileOption==1)
 252.573 -			{
 252.574 -				QString filename;
 252.575 -				filename=QString("%1").arg((int)bundleList.at(n).id);
 252.576 -				QFile file(dir.filePath(filename));
 252.577 -				if(file.exists()==1)
 252.578 -				{
 252.579 -					if (file.open(QIODevice::ReadOnly))
 252.580 -					{
 252.581 -						data=file.readAll();
 252.582 -			    			file.close();
 252.583 -					}
 252.584 -				}
 252.585 -			}
 252.586 -			else
 252.587 -			{
 252.588 -				data = tempBundle.data;
 252.589 -			}
 252.590 -			if(tempBundle.id==data.toInt(0,10))   //Checking the bundle ACK bit
 252.591 -				isInTheList++;
 252.592 -		}
 252.593 -	}	
 252.594 -	if(isInTheList==0)
 252.595 -	{
 252.596 -		//We add a new bundle record to log file
 252.597 - 		if(logOption==1)
 252.598 -		{
 252.599 -		    QString logString;
 252.600 -		    logString.append("Bundle ID:");	
 252.601 -		    logString.append(QString("%1").arg((int)tempBundle.id));
 252.602 -		    logString.append(" SRC:");
 252.603 -		    logString.append(QString("%1").arg((int)tempBundle.sourceId));
 252.604 -		    logString.append(" ");
 252.605 -		    logString.append(tempBundle.sourceString);
 252.606 -		    logString.append(" DST:");
 252.607 -		    logString.append(QString("%1").arg((int)tempBundle.destinationId));
 252.608 -		    logString.append(" ");
 252.609 -		    logString.append(" Size:");
 252.610 -		    logString.append(QString("%1").arg((int)tempBundle.data.size()));
 252.611 -		    logString.append(tempBundle.destinationString);
 252.612 -		    log->addLog(0,logString);
 252.613 -		}
 252.614 -		//If this is a bundle endpoint we add it	
 252.615 -		if(tempBundle.destinationId==ourId)
 252.616 -		{
 252.617 -			//First we check if the Bundle is not ACK
 252.618 -			if((tempBundle.options&0x02)!=0x02)//Checking the bundle ACK bit
 252.619 -			{
 252.620 -				//We pass the bundle to Application layer
 252.621 -				//If this is a PRoPHET message...
 252.622 -				if((tempBundle.options&0x04)==0x04)//Checking the "PRoPHET" message bit
 252.623 -				{
 252.624 -					//We add a new msg
 252.625 -					QString filename;
 252.626 -					filename.append(tempBundle.timeStamp.toString("MM-dd_hh-mm"));
 252.627 -					filename.append("_ID_");
 252.628 -					filename.append(QString("%1").arg((int)tempBundle.id));
 252.629 -					filename.append("_FROM_");
 252.630 -					filename.append(tempBundle.sourceString);
 252.631 -					QFile file(msgDir.filePath(filename));
 252.632 -					if(file.open(QIODevice::WriteOnly|QIODevice::Truncate))
 252.633 -					{
 252.634 -						file.write(tempBundle.data);
 252.635 -						file.close();
 252.636 -					}
 252.637 -				}
 252.638 -				//Otherwise we pass it to the DTN
 252.639 -				else
 252.640 -				{
 252.641 -					QString logString;
 252.642 -					logString.append("Adding bundle to DTN  ID:");	
 252.643 -					logString.append(QString("%1").arg((int)tempBundle.id));
 252.644 -					logString.append(" SRC:");
 252.645 -					logString.append(QString("%1").arg((int)tempBundle.sourceId));
 252.646 -					logString.append(" ");
 252.647 -					logString.append(tempBundle.sourceString);
 252.648 -					logString.append(" DST:");
 252.649 -					logString.append(QString("%1").arg((int)tempBundle.destinationId));
 252.650 -					logString.append(" ");
 252.651 -					logString.append(tempBundle.destinationString);
 252.652 -					logString.append(" Size:");
 252.653 -					logString.append(QString("%1").arg((int)tempBundle.data.size()));
 252.654 -				    log->addLog(0,logString);
 252.655 -					emit sendDeliveredBundle(tempBundle);
 252.656 -				}
 252.657 -				//We store the bundle to our list
 252.658 -				//Adding recived bundle to storage if we are the ENDPOINT!!!!!!!!!!!!!
 252.659 -				storeBundle(tempBundle);
 252.660 -				//Then we check if we need to ACK this bundle
 252.661 -				if((tempBundle.options&0x01)==0x01)
 252.662 -				{
 252.663 -					//We create ACK
 252.664 -					Bundle ACKBundle;
 252.665 -					//And put the ACKed bundle ID to data field
 252.666 -					QByteArray ACKData;
 252.667 -					ACKData.setNum(tempBundle.id);
 252.668 -					int ACKOption;
 252.669 -					ACKOption = tempBundle.options;
 252.670 -					//We clear the ACKOption bit and set the ACK bit 
 252.671 -					ACKOption=ACKOption|0x02;
 252.672 -					ACKOption=ACKOption&0xFFFE;
 252.673 -					ACKBundle.setContent(seq,tempBundle.destinationId,tempBundle.sourceId,ACKData,ACKOption,tempBundle.destinationString,tempBundle.sourceString);
 252.674 -					seq++;
 252.675 -					//and add it to the list
 252.676 -					storeBundle(ACKBundle);
 252.677 -				}
 252.678 -			}
 252.679 -			//This is the ACK Bundle for us
 252.680 -			else
 252.681 -			{
 252.682 -				//Adding recived bundle to storage
 252.683 -				storeBundle(tempBundle);
 252.684 -				//Here can we pass some ACK inforation for application layer
 252.685 -				qint32 bundleId=tempBundle.data.toInt(0,10);
 252.686 -				removeBundle(bundleId);
 252.687 -			}
 252.688 -		}
 252.689 -		//This is not bundle's endpoint
 252.690 -		else
 252.691 -		{
 252.692 -			//If this is ACK of one of bundle that we have we remove it 
 252.693 -			if((tempBundle.options&0x02)==0x02)//Checking the bundle ACK bit
 252.694 -			{
 252.695 -				qint32 bundleId=tempBundle.data.toInt(0,10);
 252.696 -				removeBundle(bundleId);
 252.697 -			}
 252.698 -			storeBundle(tempBundle);
 252.699 -		}
 252.700 -
 252.701 -	}
 252.702 -}
 252.703 -
 252.704 -bool BundleManager::removeBundle(int bundleID)
 252.705 -{
 252.706 -	//First we search for the bundle
 252.707 -	for (ushort i = 0; i < bundleList.size(); ++i) 
 252.708 -	{
 252.709 -		if(bundleID==bundleList.at(i).id)
 252.710 -		{
 252.711 -			//Then we dele it
 252.712 -			if(fileOption==1)
 252.713 -			{
 252.714 -				QString filename;
 252.715 -				filename=QString("%1").arg((int)bundleList.at(i).id);
 252.716 -				QFile file(dir.filePath(filename));
 252.717 -				if(file.exists()==1)
 252.718 -				{
 252.719 -					file.remove();
 252.720 -				}
 252.721 -			}
 252.722 -			bundleList.removeAt(i);			
 252.723 -			//DEBUG
 252.724 -			emit sendDebugBundleList(bundleList);
 252.725 -			emit sendMemoryStorage(getMemoryStorageSize());
 252.726 -			emit sendFileStorage(getFileStorageSize());
 252.727 -			return 1;
 252.728 -		}
 252.729 -	}
 252.730 -	return 0;
 252.731 -
 252.732 -}
 252.733 -
 252.734 -
 252.735 -void BundleManager::checkTTL()
 252.736 -{
 252.737 -	if(TTLOption==1)
 252.738 -	{
 252.739 -		QDateTime currentTime;
 252.740 -		currentTime=currentTime.currentDateTime();
 252.741 -		int currentTimeInSeconds=currentTime.toTime_t();
 252.742 -		for (ushort i = 0; i < bundleList.size(); ++i) 
 252.743 -		{
 252.744 -			int bundleTime=bundleList.at(i).timeStamp.toTime_t();
 252.745 -			if((bundleList.at(i).timeStamp.toTime_t()+TTLValue)<currentTimeInSeconds)
 252.746 -			{
 252.747 -				//Then we delete it
 252.748 -				removeBundle(bundleList.at(i).id);
 252.749 -				i=0;
 252.750 -			}
 252.751 -		}
 252.752 -	}
 252.753 -}
 252.754 -
 252.755 -void BundleManager::removeAllBundles()
 252.756 -{
 252.757 -	while(bundleList.size()>0)
 252.758 -	{
 252.759 -		removeBundle(bundleList.first().id);
 252.760 -	}
 252.761 -}
 252.762 -
 252.763 -int BundleManager::getSeq()
 252.764 -{
 252.765 -	seq++;
 252.766 -	seq%=1000000;
 252.767 -	return seq;
 252.768 -}
 252.769 -
 252.770 -
   253.1 --- a/x86/bundleManager.h	Wed Jan 03 09:17:10 2007 +0000
   253.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   253.3 @@ -1,172 +0,0 @@
   253.4 -#ifndef BUNDLEMANAGER_H
   253.5 -#define BUNDLEMANAGER_H
   253.6 -#include <QtCore>
   253.7 -#include <bundle.h>
   253.8 -#include <node.h>
   253.9 -#include <nodeManager.h>
  253.10 -#include <messageFile.h>
  253.11 -#include <bundleListFileIO.h>
  253.12 -
  253.13 -/*! \brief This class keeps track of bundles and handles bundle storage, both 
  253.14 - * in memory and on disk. 
  253.15 - *
  253.16 - * PRoPHET routing is also done in this class (but should be moved 
  253.17 - * to its own object.
  253.18 - */
  253.19 -class BundleManager : public QObject
  253.20 -{
  253.21 -	Q_OBJECT
  253.22 -
  253.23 -public:
  253.24 -	BundleManager(int);
  253.25 -	int getMemoryStorageSize();
  253.26 -	int getMemoryBundleSize(Bundle);
  253.27 -	int getFileStorageSize();
  253.28 -	int getFileBundleSize(Bundle);
  253.29 -	QList<Bundle> getBundleList();
  253.30 -
  253.31 -	//Returns the list of bundles that are to be offered to the encountered node.
  253.32 -	/*!
  253.33 -	 * Returns the list of bundles that are to be offered to the encountered 
  253.34 -	 * node.
  253.35 -	 * @param ourList our list of known nodes (from node manager).
  253.36 -	 * @param encoutnerlist the node list of the encountered node.
  253.37 -	 * @param encounterId the node id of the encountered node.
  253.38 -	 * @return the list of bundles that are to be offered to the encountered 
  253.39 -	 * node.
  253.40 -	 */
  253.41 -	QList<Bundle> getBundleOffer(QList<Node> ourList,QList<Node> encoutnerList,int encounterId);
  253.42 -	QList<Bundle> prepareBundelRequest(QList<Bundle>);
  253.43 -
  253.44 -	// Builds the list of bundles that are to be transferred to the encountered node.
  253.45 -	/*!
  253.46 -	 * @param receivedList the list of requested bundles.
  253.47 -	 * @param senderId the id of the node this Bundle was received from. 
  253.48 -	 * Note: This is NOT the source id.
  253.49 -	 * @return the list of bundles that will be sent to the other node.
  253.50 -	 */
  253.51 -	QList<Bundle> prepareBundels(QList<Bundle>, int senderId);
  253.52 -
  253.53 -private:
  253.54 -	QTimer *timer;
  253.55 -	QTimer *TTLTimer;
  253.56 -	int routing;	//0=epidemic, 1=GRTR
  253.57 -	int fileOption;
  253.58 -	int TTLOption;
  253.59 -	int TTLValue;
  253.60 -	int ACKOption;
  253.61 -	int memoryStorageSize;
  253.62 -	int fileStorageSize;
  253.63 -	int ourId;
  253.64 -	int seq;
  253.65 -	int smartOffer;
  253.66 -
  253.67 -	// keeps track of which nodes each bundle was sent to
  253.68 -	// key = bundle id, value = list of node ids
  253.69 -	// (should be declared private)
  253.70 -	QMultiHash<int, int> transferredBundleHash;
  253.71 -    BundleListFileIO* hashFile;
  253.72 -
  253.73 -	QTimer *writeToFileTimer;
  253.74 -	QList<Bundle> bundleList;
  253.75 -
  253.76 -	QDir dir;
  253.77 -	QDir msgDir;
  253.78 -	QString storagePath;
  253.79 -	int option;
  253.80 -	int logOption;
  253.81 -	MessageFile *log;
  253.82 -	bool showFirstTime;
  253.83 -
  253.84 -signals:
  253.85 -	/*!
  253.86 -	 * Emits the specified Bundle. (Used for passing bundles to DTN)
  253.87 -	 */
  253.88 -	void sendDeliveredBundle(Bundle);
  253.89 -	
  253.90 -		/*!
  253.91 -	 * Emits the memory usage of the bundle list in bytes(?).
  253.92 -	 */
  253.93 -	void sendMemoryStorage(int);
  253.94 -	
  253.95 -	/*!
  253.96 -	 * Emits the size (in bytes?) of the file storage.
  253.97 -	 */
  253.98 -	void sendFileStorage(int);
  253.99 -	
 253.100 -	/*!
 253.101 -	 * Emits the bundle list (to the GUI).
 253.102 -	 */
 253.103 -	void sendDebugBundleList(QList<Bundle>);
 253.104 -
 253.105 -public slots:
 253.106 -	/*!
 253.107 -	 * External method to get a  bundle sequence number.
 253.108 -	 */
 253.109 -	int getSeq();
 253.110 -
 253.111 -	/*!
 253.112 -	 * External slot for receiving bundles. Received bundles are 
 253.113 -	 * appropriately dispatched to either the application layer (an NSIM 
 253.114 -	 * bundle) or to DTN.
 253.115 -	 */
 253.116 -	void addBundle(Bundle);
 253.117 -	
 253.118 -	/*!
 253.119 -	 * Goes through the bundle list searching for bundles who's destination 
 253.120 -	 * id=0 and assigning the correct destination for any such bundles. 
 253.121 -	 * This function is a workaround for the situation when bundles are 
 253.122 -	 * received before this client is aware of (has a probability for) the 
 253.123 -	 * destination node.
 253.124 -	 */
 253.125 -	void updateBundlesDestinations(NodeManager*);
 253.126 -	
 253.127 -	/*!
 253.128 -	 * Inserts all bundles in the list to the list of this bundleManager.
 253.129 -	 * @param receivedList a list of bundles to be added to this 
 253.130 -	 * bundleManagers list.
 253.131 -	 */
 253.132 -	void addBundleList(QList<Bundle>);
 253.133 -	
 253.134 -private slots:
 253.135 -	/*!
 253.136 -	 * Saves the bundle list to the file bundles.txt.
 253.137 -	 */
 253.138 -	void saveToFile();
 253.139 -	
 253.140 -	/*!
 253.141 -	 * Updates the bundle list in memory to match the one stored on disk in 
 253.142 -	 * bundles.txt.
 253.143 -	 */
 253.144 -	void readFromFile();
 253.145 -	
 253.146 -	/*!
 253.147 -	 * Removes the specified bundle from the list.
 253.148 -	 * @param bundleID the id of the bundle to be removed.
 253.149 -	 */
 253.150 -	bool removeBundle(int);
 253.151 -	
 253.152 -	/*!
 253.153 -	 * Triggers sending the bundle list to the GUI.
 253.154 -	 */	
 253.155 -	void emitDebugList();
 253.156 -	
 253.157 -	/*!
 253.158 -	 * Iterates through the bundle list and removes any bundles which have 
 253.159 -	 * an outdated timestamp.
 253.160 -	 */
 253.161 -	void checkTTL();
 253.162 -	
 253.163 -	/*!
 253.164 -	 * Removes all bundles from the list.
 253.165 -	 */
 253.166 -	void removeAllBundles();
 253.167 -	
 253.168 -	/*!
 253.169 -	 * Internal slot for adding a bundle to the list.
 253.170 -	 */
 253.171 -	void storeBundle(Bundle);
 253.172 -
 253.173 -
 253.174 -};
 253.175 -#endif
   254.1 --- a/x86/bundleWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
   254.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   254.3 @@ -1,176 +0,0 @@
   254.4 -#include <QtGui>
   254.5 -#include <bundleWidget.h>
   254.6 -#include <readFile.h>
   254.7 -
   254.8 -
   254.9 -BundleWidget::BundleWidget(QWidget *parent)
  254.10 -        : QWidget(parent)
  254.11 -{
  254.12 -#ifdef PDAGUI
  254.13 -//	setFixedSize(230, 300);
  254.14 -#else
  254.15 -	setFixedSize(990, 660);
  254.16 -#endif //PDAGUI
  254.17 -	
  254.18 -	ReadFile conf;
  254.19 -
  254.20 -#ifndef PDAGUI
  254.21 -	//List group
  254.22 -	QGroupBox *bundleBox = new QGroupBox("Bundle list");
  254.23 -#endif //PDAGUI
  254.24 -
  254.25 -	//Bundle table
  254.26 -	table = new QTableWidget(200, 9, this);
  254.27 -    QStringList horizontalLabels;
  254.28 -    horizontalLabels << "ID" << "TimeStamp" << "SrcStr" << "DestStr"<< "Source" << "Dest" << "Data" << "Options" << "Size";
  254.29 -	table->setHorizontalHeaderLabels(horizontalLabels); 
  254.30 -
  254.31 -
  254.32 -	//Final grid layout
  254.33 -    QGridLayout *bundleGroup = new QGridLayout;
  254.34 -	bundleGroup->addWidget(table, 0, 0);
  254.35 -#ifdef PDAGUI
  254.36 -	bundleGroup->setMargin(0);
  254.37 -	bundleGroup->setSpacing(0);
  254.38 -//	bundleBox->setFixedSize(230, 270);
  254.39 -#else
  254.40 -	bundleBox->setFixedSize(950, 550);
  254.41 -	bundleBox->setLayout(bundleGroup);
  254.42 -#endif //PDAGUI
  254.43 -
  254.44 -#ifndef PDAGUI
  254.45 -	QGroupBox *buttonBox = new QGroupBox("Administration");
  254.46 -#endif //PDAGUI
  254.47 -#ifdef PDAGUI
  254.48 -	removeSelected = new QPushButton("Remove Selected");
  254.49 -	removeAll = new QPushButton("Remove All");
  254.50 -#else
  254.51 -	removeSelected = new QPushButton("Remove Selected One");
  254.52 -	removeAll = new QPushButton("Remove All Bundles");
  254.53 -#endif //PDAGUI
  254.54 -	connect(removeSelected, SIGNAL(pressed()), this, SLOT(removeSelectedSlot()));
  254.55 -	connect(removeAll, SIGNAL(pressed()), this, SLOT(removeAllSlot()));
  254.56 -
  254.57 -
  254.58 -	//Final grid layout
  254.59 -    QGridLayout *administrationGroup = new QGridLayout;
  254.60 -
  254.61 -	administrationGroup->addWidget(removeSelected, 0, 0);
  254.62 -	administrationGroup->addWidget(removeAll, 0, 1);
  254.63 -
  254.64 -#ifdef PDAGUI
  254.65 -	administrationGroup->setMargin(0);
  254.66 -	administrationGroup->setSpacing(0);
  254.67 -// 	buttonBox->setFixedSize(230, 30);
  254.68 -//	buttonBox->setLayout(administrationGroup);
  254.69 -	//Define final layout
  254.70 -	QVBoxLayout *layout = new QVBoxLayout;
  254.71 -	layout->setMargin(0);
  254.72 -	layout->setSpacing(0);
  254.73 -	QWidget *tempWidget1 = new QWidget(this);
  254.74 -//	table->setFixedSize(230,260);
  254.75 -//	tempWidget1->setFixedSize(230,260);
  254.76 -	tempWidget1->setLayout(bundleGroup);
  254.77 -    layout->addWidget(tempWidget1);
  254.78 -	QWidget *tempWidget2 = new QWidget(this);
  254.79 -//	tempWidget2->setFixedSize(230,40);
  254.80 -	tempWidget2->setLayout(administrationGroup);
  254.81 -	layout->addWidget(tempWidget2);
  254.82 -    setLayout(layout);
  254.83 -#else
  254.84 - 	buttonBox->setFixedSize(950, 60);
  254.85 -	buttonBox->setLayout(administrationGroup);
  254.86 -	//Define final layout
  254.87 -	QVBoxLayout *layout = new QVBoxLayout;
  254.88 -    layout->addWidget(bundleBox);    
  254.89 -	layout->addWidget(buttonBox);    
  254.90 -    setLayout(layout);
  254.91 -#endif //PDAGUI
  254.92 -}
  254.93 -
  254.94 -
  254.95 -void BundleWidget::removeSelectedSlot()
  254.96 -{
  254.97 -
  254.98 -	QList<QTableWidgetItem*> list; 
  254.99 -	list = table->selectedItems ();
 254.100 -	if(list.size()==1)
 254.101 -	for (int i = 0; i < list.size(); ++i) 
 254.102 -	{
 254.103 -		QTableWidgetItem* item = list[i];
 254.104 -		int bundleId = item->text().toInt(0,10);
 254.105 -		emit removeBundle(bundleId);
 254.106 -	}
 254.107 -}
 254.108 -
 254.109 -void BundleWidget::removeAllSlot()
 254.110 -{
 254.111 -	 if(
 254.112 -	QMessageBox::question(
 254.113 -		this,
 254.114 -		 "Warning",
 254.115 -		"Are you really sure to remove all bundles?\n",
 254.116 -		"No","Yes",
 254.117 -		QString(),1,0)
 254.118 -	  )
 254.119 -		emit removeAllBundles();
 254.120 -}
 254.121 -
 254.122 -void BundleWidget::getBundleList(QList<Bundle> list)
 254.123 -{
 254.124 -	Bundle newBundle;
 254.125 -	table->clear();
 254.126 -	QStringList horizontalLabels;
 254.127 -    horizontalLabels << "ID" << "TimeStamp" << "SrcStr" << "DestStr"<< "Source" << "Dest" << "Data" << "Options" << "Size";
 254.128 -	table->setHorizontalHeaderLabels(horizontalLabels);
 254.129 -	table->setColumnWidth(0, 70);	//ID
 254.130 -	table->setColumnWidth(2, 70);	//time
 254.131 -	table->setColumnWidth(3, 70);	//srcstr
 254.132 -	table->setColumnWidth(4, 70);	//dststr
 254.133 -	table->setColumnWidth(5, 30);	//src
 254.134 -	table->setColumnWidth(6, 30);	//dst
 254.135 -	table->setColumnWidth(7, 70);	//data
 254.136 -	table->setColumnWidth(8, 40);	//opt
 254.137 -	table->setColumnWidth(9, 40);	//size
 254.138 -   for (int i = 0; i < list.size(); ++i) 
 254.139 -	{
 254.140 -		newBundle=list.at(i);
 254.141 -		QString text = QString("%1").arg((int)newBundle.getId());
 254.142 -		QTableWidgetItem *newItem = new QTableWidgetItem(text);
 254.143 -		table->setItem(i, 0, newItem);
 254.144 -	
 254.145 -		QDateTime time= newBundle.getTime();
 254.146 -		text = time.toString("MM/dd/yyyy hh:mm:ss");
 254.147 -		newItem = new QTableWidgetItem(text);
 254.148 -		table->setItem(i, 1, newItem);
 254.149 -
 254.150 -	
 254.151 -		newItem = new QTableWidgetItem((QString)newBundle.sourceString);
 254.152 -		table->setItem(i, 2, newItem);
 254.153 -		
 254.154 -		newItem = new QTableWidgetItem((QString)newBundle.destinationString);
 254.155 -		table->setItem(i, 3, newItem);
 254.156 -		
 254.157 -		text = QString("%1").arg((int)newBundle.getSourceId());
 254.158 -		newItem = new QTableWidgetItem(text);
 254.159 -		table->setItem(i, 4, newItem);
 254.160 -
 254.161 -		text = QString("%1").arg((int)newBundle.getDestinationId());
 254.162 -		newItem = new QTableWidgetItem(text);
 254.163 -		table->setItem(i, 5, newItem);
 254.164 -	
 254.165 -		newItem = new QTableWidgetItem((QString)newBundle.getData());
 254.166 -		table->setItem(i, 6, newItem);
 254.167 -
 254.168 -		text = QString("%1").arg((int)newBundle.getOptions());
 254.169 -		newItem = new QTableWidgetItem(text);
 254.170 -		table->setItem(i, 7, newItem);
 254.171 -
 254.172 -		text = QString("%1").arg((int)newBundle.dataLength);
 254.173 -		newItem = new QTableWidgetItem(text);
 254.174 -		table->setItem(i, 8, newItem);
 254.175 -
 254.176 -
 254.177 -	}
 254.178 -
 254.179 - }
   255.1 --- a/x86/bundleWidget.h	Wed Jan 03 09:17:10 2007 +0000
   255.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   255.3 @@ -1,34 +0,0 @@
   255.4 -#ifndef BUNDLEWIDGET_H
   255.5 -#define BUNDLEWIDGET_H
   255.6 -#include <QtGui>
   255.7 -#include <QtNetwork>
   255.8 -#include <bundle.h>
   255.9 -
  255.10 -
  255.11 -class BundleWidget : public QWidget
  255.12 -{
  255.13 -
  255.14 -	Q_OBJECT
  255.15 -
  255.16 -public:
  255.17 -
  255.18 -	BundleWidget(QWidget *parent = 0);
  255.19 -	QTableWidget *table;
  255.20 -	QPushButton *removeSelected;
  255.21 -	QPushButton *removeAll;
  255.22 -
  255.23 -signals:
  255.24 -	void removeBundle(int);
  255.25 -	void removeAllBundles();
  255.26 -public slots:
  255.27 -	void removeSelectedSlot();
  255.28 -	void removeAllSlot();
  255.29 -	void getBundleList(QList<Bundle>);
  255.30 -
  255.31 -
  255.32 -
  255.33 -};
  255.34 -
  255.35 -#endif
  255.36 -
  255.37 -
   256.1 --- a/x86/configWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
   256.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   256.3 @@ -1,257 +0,0 @@
   256.4 -#include <QtGui>
   256.5 -#include <configWidget.h>
   256.6 -#include <readFile.h>
   256.7 -
   256.8 -ConfigWidget::ConfigWidget(QWidget *parent)
   256.9 -        : QWidget(parent)
  256.10 -{
  256.11 -	ReadFile conf;
  256.12 -
  256.13 -	//Reading configuration
  256.14 -	loadConfiguration();
  256.15 -	//Final grid layout
  256.16 -	QGridLayout *readGroup = new QGridLayout;
  256.17 -	readGroup->setMargin(2);
  256.18 -	readGroup->setSpacing(0);
  256.19 -
  256.20 -	QLabel *labelNODEID = new QLabel("NodeID:");
  256.21 -	readGroup->addWidget(labelNODEID, 0, 0);
  256.22 -	readGroup->addWidget(lineNODEID, 0, 1);
  256.23 -	QLabel *labelNODENAME = new QLabel("Node Name:");
  256.24 -	readGroup->addWidget(labelNODENAME, 1, 0);
  256.25 -	readGroup->addWidget(lineNODENAME, 1, 1);
  256.26 -	QLabel *labelNODEIP = new QLabel("Node IP:");
  256.27 -	readGroup->addWidget(labelNODEIP, 2, 0);
  256.28 -	readGroup->addWidget(lineNODEIP, 2, 1);
  256.29 -	QLabel *labelNODEIP2 = new QLabel("Node IP2:");
  256.30 -	readGroup->addWidget(labelNODEIP2, 3, 0);
  256.31 -	readGroup->addWidget(lineNODEIP2, 3, 1);
  256.32 -	QLabel *labelNODEBROADCAST = new QLabel("Broadcast Address:");
  256.33 -	readGroup->addWidget(labelNODEBROADCAST, 4, 0);
  256.34 -	readGroup->addWidget(lineNODEBROADCAST, 4, 1);
  256.35 -	QLabel *labelBROADCAST = new QLabel("Broadcast Timer:");
  256.36 -	readGroup->addWidget(labelBROADCAST, 5, 0);
  256.37 -	readGroup->addWidget(lineBROADCAST, 5, 1);
  256.38 -	QLabel *labelAGINGTIMER = new QLabel("Aging Timer:");
  256.39 -	readGroup->addWidget(labelAGINGTIMER, 6, 0);
  256.40 -	readGroup->addWidget(lineAGINGTIMER, 6, 1);
  256.41 -	QLabel *labelPENCOUNTER = new QLabel("PEcounter:");
  256.42 -	readGroup->addWidget(labelPENCOUNTER, 7, 0);
  256.43 -	readGroup->addWidget(linePENCOUNTER, 7, 1);
  256.44 -	QLabel *labelBETA = new QLabel("Beta:");
  256.45 -	readGroup->addWidget(labelBETA, 8, 0);
  256.46 -	readGroup->addWidget(lineBETA, 8, 1);
  256.47 -	QLabel *labelGAMMA = new QLabel("Gamma:");
  256.48 -	readGroup->addWidget(labelGAMMA, 9, 0);
  256.49 -	readGroup->addWidget(lineGAMMA, 9, 1);
  256.50 -	QLabel *labelHELLO = new QLabel("Hello Timer:");
  256.51 -	readGroup->addWidget(labelHELLO, 10, 0);
  256.52 -	readGroup->addWidget(lineHELLO, 10, 1);
  256.53 -
  256.54 -	QLabel *labelALIVE = new QLabel("Alive Timer:");
  256.55 -	readGroup->addWidget(labelALIVE, 11, 0);
  256.56 -	readGroup->addWidget(lineALIVE, 11, 1);
  256.57 -
  256.58 -	QLabel *labelHELLOTIMER = new QLabel("Hello Timer:");
  256.59 -	readGroup->addWidget(labelHELLOTIMER, 12, 0);
  256.60 -	readGroup->addWidget(lineHELLOTIMER, 12, 1);
  256.61 -
  256.62 -//	QLabel *laberINITIATORTIMER = new QLabel("Initiator Timer:");
  256.63 -//	readGroup->addWidget(laberINITIATORTIMER, 13, 0);
  256.64 -//	readGroup->addWidget(lineINITIATORTIMER, 13, 1);
  256.65 -
  256.66 -//	QLabel *labelLISTENERTIMER = new QLabel("Listener Timer:");
  256.67 -//	readGroup->addWidget(labelLISTENERTIMER, 14, 0);
  256.68 -//	readGroup->addWidget(lineLISTENERTIMER, 14, 1);
  256.69 -
  256.70 -	QLabel *labelDTNHOSTNAME = new QLabel("DTN Host Name:");
  256.71 -	readGroup->addWidget(labelDTNHOSTNAME, 13, 0);
  256.72 -	readGroup->addWidget(lineDTNHOSTNAME, 13, 1);
  256.73 -
  256.74 -	QLabel *labelDNTTIMER = new QLabel("DTN Timer:");
  256.75 -	readGroup->addWidget(labelDNTTIMER, 14, 0);
  256.76 -	readGroup->addWidget(lineDNTTIMER, 14, 1);
  256.77 -
  256.78 -	QLabel *labelSTORAGESIZE = new QLabel("File Storge size:");
  256.79 -	readGroup->addWidget(labelSTORAGESIZE, 15, 0);
  256.80 -	readGroup->addWidget(lineSTORAGESIZE, 15, 1);
  256.81 -
  256.82 -	QLabel *labelMEMORYSIZE = new QLabel("Memory Storge size:");
  256.83 -	readGroup->addWidget(labelMEMORYSIZE, 16, 0);
  256.84 -	readGroup->addWidget(lineMEMORYSIZE, 16, 1);
  256.85 -
  256.86 -	QLabel *labelROUTING = new QLabel("Routing Type:");
  256.87 -	readGroup->addWidget(labelROUTING, 17, 0);
  256.88 -	readGroup->addWidget(lineROUTING, 17, 1);
  256.89 -
  256.90 -	QLabel *labelQUEUE = new QLabel("Queue Type:");
  256.91 -	readGroup->addWidget(labelQUEUE, 18, 0);
  256.92 -	readGroup->addWidget(lineQUEUE, 18, 1);
  256.93 -
  256.94 -	QLabel *labelCONTINIUSUPDATE = new QLabel("Continius update:");
  256.95 -	readGroup->addWidget(labelCONTINIUSUPDATE, 19, 0);
  256.96 -	readGroup->addWidget(lineCONTINIUSUPDATE, 19, 1);
  256.97 -
  256.98 -	QLabel *labelSTORAGEPATH = new QLabel("Storage Path:");
  256.99 -	readGroup->addWidget(labelSTORAGEPATH, 20, 0);
 256.100 -	readGroup->addWidget(lineSTORAGEPATH, 20, 1);
 256.101 -
 256.102 -	QLabel *labelLOGPATH = new QLabel("Log Path:");
 256.103 -	readGroup->addWidget(labelLOGPATH, 21, 0);
 256.104 -	readGroup->addWidget(lineLOGPATH, 21, 1);
 256.105 -
 256.106 -	QLabel *labelMSGPATH = new QLabel("Messages Path:");
 256.107 -	readGroup->addWidget(labelMSGPATH, 22, 0);
 256.108 -	readGroup->addWidget(lineMSGPATH, 22, 1);
 256.109 -
 256.110 -	QLabel *labelAGEFILENODES = new QLabel("Age Nodes on Startup:");
 256.111 -	readGroup->addWidget(labelAGEFILENODES, 23, 0);
 256.112 -	readGroup->addWidget(lineAGEFILENODES, 23, 1);
 256.113 -
 256.114 -	QLabel *labelUSEFILENODES = new QLabel("Store Nodes To File:");
 256.115 -	readGroup->addWidget(labelUSEFILENODES, 24, 0);
 256.116 -	readGroup->addWidget(lineUSEFILENODES, 24, 1);
 256.117 -
 256.118 -	QLabel *labelWRITETOFILETIMER = new QLabel("File Writing Timer:");
 256.119 -	readGroup->addWidget(labelWRITETOFILETIMER, 25, 0);
 256.120 -	readGroup->addWidget(lineWRITETOFILETIMER, 25, 1);
 256.121 -
 256.122 -	QLabel *labelUSEFILEBUNDLES = new QLabel("Store Bundels To Files:");
 256.123 -	readGroup->addWidget(labelUSEFILEBUNDLES, 26, 0);
 256.124 -	readGroup->addWidget(lineUSEFILEBUNDLES, 26, 1);
 256.125 -
 256.126 -
 256.127 -	QLabel *labelLOGGING = new QLabel("Logging:");
 256.128 -	readGroup->addWidget(labelLOGGING, 27, 0);
 256.129 -	readGroup->addWidget(lineLOGGING, 27, 1);
 256.130 -
 256.131 -	QLabel *labelUSETTL = new QLabel("Use TTL:");
 256.132 -	readGroup->addWidget(labelUSETTL, 28, 0);
 256.133 -	readGroup->addWidget(lineUSETTL, 28, 1);
 256.134 -
 256.135 -	QLabel *labelTTL = new QLabel("TTL:");
 256.136 -	readGroup->addWidget(labelTTL, 29, 0);
 256.137 -	readGroup->addWidget(lineTTL, 29, 1);
 256.138 -
 256.139 -	QLabel *labelACKS = new QLabel("Use ACKs:");
 256.140 -	readGroup->addWidget(labelACKS, 30, 0);
 256.141 -	readGroup->addWidget(lineACKS, 30, 1);
 256.142 -
 256.143 -	//Define final layout
 256.144 -	QWidget *tempWidget = new QWidget();
 256.145 -	tempWidget->setLayout(readGroup);
 256.146 -	QScrollArea *scrollArea = new QScrollArea();
 256.147 -	scrollArea->setWidget(tempWidget);
 256.148 -	scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
 256.149 -	QGridLayout *layout = new QGridLayout();
 256.150 -	layout->setMargin(2);
 256.151 -	layout->setSpacing(2);
 256.152 -	layout->addWidget(scrollArea, 0, 0);
 256.153 -    setLayout(layout);
 256.154 -}
 256.155 -
 256.156 -void ConfigWidget::loadConfiguration()
 256.157 -{
 256.158 -	ReadFile conf;
 256.159 -	lineNODEID = new QLineEdit();
 256.160 -	lineNODEID->setText(QString("%1").arg(conf.getNodeId()));
 256.161 -
 256.162 -	lineNODENAME = new QLineEdit();
 256.163 -	lineNODENAME->setText(conf.getNodeName());
 256.164 -
 256.165 -	lineNODEIP = new QLineEdit();
 256.166 -	lineNODEIP->setText(conf.getNodeIp().toString());
 256.167 -
 256.168 -	lineNODEIP2 = new QLineEdit();
 256.169 -	lineNODEIP2->setText(conf.getNodeIp2().toString());
 256.170 -
 256.171 -	lineNODEBROADCAST = new QLineEdit();
 256.172 -	lineNODEBROADCAST->setText(conf.getBroadcast().toString());
 256.173 -
 256.174 -	lineBROADCAST = new QLineEdit();
 256.175 -	lineBROADCAST->setText(QString("%1").arg(conf.getBroadcastTimer()));
 256.176 -
 256.177 -	lineAGINGTIMER = new QLineEdit();
 256.178 -	lineAGINGTIMER->setText(QString("%1").arg(conf.getAgingTimer()));
 256.179 -
 256.180 -	linePENCOUNTER = new QLineEdit();
 256.181 -	linePENCOUNTER->setText(QString("%1").arg(conf.getPEncounter()));
 256.182 -
 256.183 -	lineBETA = new QLineEdit();
 256.184 -	lineBETA->setText(QString("%1").arg(conf.getBeta()));
 256.185 -
 256.186 -	lineGAMMA = new QLineEdit();
 256.187 -	lineGAMMA->setText(QString("%1").arg(conf.getGamma()));
 256.188 -	
 256.189 -	lineHELLO = new QLineEdit();
 256.190 -	lineHELLO->setText(QString("%1").arg(conf.getHello()));
 256.191 -	
 256.192 -	lineALIVE = new QLineEdit();
 256.193 -	lineALIVE->setText(QString("%1").arg(conf.getAlive()));
 256.194 -	
 256.195 -	lineHELLOTIMER = new QLineEdit();
 256.196 -	lineHELLOTIMER->setText(QString("%1").arg(conf.getHello()));
 256.197 -	
 256.198 -	lineINITIATORTIMER = new QLineEdit();
 256.199 -	lineINITIATORTIMER->setText(QString("%1").arg(conf.getInitiatorTimer()));
 256.200 -	
 256.201 -	lineLISTENERTIMER = new QLineEdit();
 256.202 -	lineLISTENERTIMER->setText(QString("%1").arg(conf.getListenerTimer()));
 256.203 -	
 256.204 -	lineDTNHOSTNAME = new QLineEdit();
 256.205 -	lineDTNHOSTNAME->setText(conf.getDTNHostName().toString());
 256.206 -	
 256.207 -	lineDNTTIMER = new QLineEdit();
 256.208 -	lineDNTTIMER->setText(QString("%1").arg(conf.getDTNTimer()));
 256.209 -
 256.210 -	lineSTORAGESIZE = new QLineEdit();
 256.211 -	lineSTORAGESIZE->setText(QString("%1").arg(conf.getStorageSize()));
 256.212 -
 256.213 -	lineMEMORYSIZE = new QLineEdit();
 256.214 -	lineMEMORYSIZE->setText(QString("%1").arg(conf.getMemoryStorageSize()));
 256.215 -
 256.216 -	lineROUTING = new QLineEdit();
 256.217 -	lineROUTING->setText(QString("%1").arg(conf.getRouting()));
 256.218 -
 256.219 -	lineQUEUE = new QLineEdit();
 256.220 -	lineQUEUE->setText(QString("%1").arg(conf.getQueue()));
 256.221 -
 256.222 -	lineCONTINIUSUPDATE = new QLineEdit();
 256.223 -	lineCONTINIUSUPDATE->setText(QString("%1").arg(conf.getContiniusUpdate()));
 256.224 -
 256.225 -	lineSTORAGEPATH = new QLineEdit();
 256.226 -	lineSTORAGEPATH->setText(QString("%1").arg(conf.getStoragePath()));
 256.227 -
 256.228 -	lineLOGPATH = new QLineEdit();
 256.229 -	lineLOGPATH->setText(QString("%1").arg(conf.getLogPath()));
 256.230 -
 256.231 -	lineMSGPATH = new QLineEdit();
 256.232 -	lineMSGPATH->setText(QString("%1").arg(conf.getMsgPath()));
 256.233 -
 256.234 -	lineAGEFILENODES = new QLineEdit();
 256.235 -	lineAGEFILENODES->setText(QString("%1").arg(conf.getAgeFileNodes()));
 256.236 -
 256.237 -	lineUSEFILENODES = new QLineEdit();
 256.238 -	lineUSEFILENODES->setText(QString("%1").arg(conf.getUseFileNodes()));
 256.239 -
 256.240 -	lineWRITETOFILETIMER = new QLineEdit();
 256.241 -	lineWRITETOFILETIMER->setText(QString("%1").arg(conf.getWriteToFileTimer()));
 256.242 -
 256.243 -	lineUSEFILEBUNDLES = new QLineEdit();
 256.244 -	lineUSEFILEBUNDLES->setText(QString("%1").arg(conf.getUseFileBundles()));
 256.245 -
 256.246 -	lineLOGGING = new QLineEdit();
 256.247 -	lineLOGGING->setText(QString("%1").arg(conf.getLogOption()));
 256.248 -
 256.249 -	
 256.250 -	lineUSETTL = new QLineEdit();
 256.251 -	lineUSETTL->setText(QString("%1").arg(conf.getUseTTL()));
 256.252 -
 256.253 -	lineTTL = new QLineEdit();
 256.254 -	lineTTL->setText(QString("%1").arg(conf.getTTL()));
 256.255 -
 256.256 -	lineACKS = new QLineEdit();
 256.257 -	lineACKS->setText(QString("%1").arg(conf.getUseACKS()));
 256.258 -
 256.259 -}
 256.260 -
   257.1 --- a/x86/configWidget.h	Wed Jan 03 09:17:10 2007 +0000
   257.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   257.3 @@ -1,94 +0,0 @@
   257.4 -#ifndef CONFIGWIDGET_H
   257.5 -#define CONFIGWIDGET_H
   257.6 -#include <QtGui>
   257.7 -#include <QtNetwork>
   257.8 -
   257.9 -class ConfigWidget : public QWidget
  257.10 -{
  257.11 -
  257.12 -	Q_OBJECT
  257.13 -
  257.14 -private:
  257.15 -	QLineEdit *label;
  257.16 -	
  257.17 -public:
  257.18 -	QTextBrowser *readText;
  257.19 -	QFileDialog *file;
  257.20 -	ConfigWidget(QWidget *parent = 0);
  257.21 -	QDir dir;
  257.22 -	
  257.23 -	//Configuration variables
  257.24 -	int NODEID;
  257.25 -	QString NODENAME;
  257.26 -	QHostAddress NODEIP;
  257.27 -	QHostAddress NODEIP2;
  257.28 -	QHostAddress NODEBROADCAST;
  257.29 -	int BROADCAST;
  257.30 -	int AGINGTIMER;
  257.31 -	float PENCOUNTER;
  257.32 -	float BETA;
  257.33 -	float GAMMA;
  257.34 -	int HELLO;
  257.35 -	int ALIVE;
  257.36 -	int HELLOTIMER;
  257.37 -	int INITIATORTIMER;
  257.38 -	int LISTENERTIMER;
  257.39 -	QHostAddress DTNHOSTNAME;
  257.40 -	int DNTTIMER;
  257.41 -	int STORAGESIZE;
  257.42 -	int MEMORYSIZE;
  257.43 -	int ROUTING;
  257.44 -	int QUEUE;
  257.45 -	int CONTINIUSUPDATE;
  257.46 -	QString STORAGEPATH;
  257.47 -	QString LOGPATH;
  257.48 -	QString MSGPATH;
  257.49 -	int AGEFILENODES;
  257.50 -	int USEFILENODES;
  257.51 -	int WRITETOFILETIMER;
  257.52 -	int USEFILEBUNDLES;
  257.53 -	int LOGGING;
  257.54 -
  257.55 -
  257.56 -	QLineEdit * lineNODEID;
  257.57 -	QLineEdit * lineNODENAME;
  257.58 -	QLineEdit * lineNODEIP;
  257.59 -	QLineEdit * lineNODEIP2;
  257.60 -	QLineEdit * lineNODEBROADCAST;
  257.61 -	QLineEdit * lineBROADCAST;
  257.62 -	QLineEdit * lineAGINGTIMER;
  257.63 -	QLineEdit * linePENCOUNTER;
  257.64 -	QLineEdit * lineBETA;
  257.65 -	QLineEdit * lineGAMMA;
  257.66 -	QLineEdit * lineHELLO;
  257.67 -	QLineEdit * lineALIVE;
  257.68 -	QLineEdit * lineHELLOTIMER;
  257.69 -	QLineEdit * lineINITIATORTIMER;
  257.70 -	QLineEdit * lineLISTENERTIMER;
  257.71 -	QLineEdit * lineDTNHOSTNAME;
  257.72 -	QLineEdit * lineDNTTIMER;
  257.73 -	QLineEdit * lineSTORAGESIZE;
  257.74 -	QLineEdit * lineMEMORYSIZE;
  257.75 -	QLineEdit * lineROUTING;
  257.76 -	QLineEdit * lineQUEUE;
  257.77 -	QLineEdit * lineCONTINIUSUPDATE;
  257.78 -	QLineEdit * lineSTORAGEPATH;
  257.79 -	QLineEdit * lineLOGPATH;
  257.80 -	QLineEdit * lineMSGPATH;
  257.81 -	QLineEdit * lineAGEFILENODES;
  257.82 -	QLineEdit * lineUSEFILENODES;
  257.83 -	QLineEdit * lineWRITETOFILETIMER;
  257.84 -	QLineEdit * lineUSEFILEBUNDLES;
  257.85 -	QLineEdit * lineLOGGING;
  257.86 -	QLineEdit * lineUSETTL;
  257.87 -	QLineEdit * lineTTL;
  257.88 -	QLineEdit * lineACKS;
  257.89 -
  257.90 -
  257.91 -public slots:
  257.92 -	void loadConfiguration();
  257.93 -};
  257.94 -
  257.95 -#endif
  257.96 -
  257.97 -
   258.1 --- a/x86/connection.cpp	Wed Jan 03 09:17:10 2007 +0000
   258.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   258.3 @@ -1,709 +0,0 @@
   258.4 -#include <QtCore>
   258.5 -#include <connection.h>
   258.6 -#include <tlv.h>
   258.7 -#include <messageFile.h>
   258.8 -#include <dataPacket.h>
   258.9 -#include <readFile.h>
  258.10 -
  258.11 -#define NOW 100
  258.12 -
  258.13 -//#define HELLO_TIMER 60000
  258.14 -//#define INITIATOR_TIMER 60000
  258.15 -//#define LISTENER_TIMER 60000
  258.16 -//#define HELLOT 10000
  258.17 -//#define BROADCAST 1000
  258.18 -
  258.19 -//Connections states for GUI
  258.20 -#define STATE_SYN 1
  258.21 -#define STATE_SYNACK 2
  258.22 -#define STATE_ACK 3
  258.23 -#define STATE_DICT 4
  258.24 -#define STATE_RIB 5
  258.25 -#define STATE_BOFF 6
  258.26 -#define STATE_BREQ 7
  258.27 -#define STATE_BUNDLE 8
  258.28 -#define STATE_ERROR 9
  258.29 -
  258.30 -//Connection states
  258.31 -#define WAIT_NB 0
  258.32 -#define HELLO 1
  258.33 -#define INFO_EXCH 2
  258.34 -#define WAIT_INFO 2
  258.35 -
  258.36 -
  258.37 -//Hello procedure states
  258.38 -#define SENDSYN 1
  258.39 -#define WAITSYNACK 2
  258.40 -#define WAITACK 4
  258.41 -#define ESTABLISHED 3
  258.42 -#define MASTER 4
  258.43 -#define SLAVE 5
  258.44 -
  258.45 -//Initiator states
  258.46 -#define SENDDICTIONARY 1
  258.47 -#define SENDRIB 2
  258.48 -#define SENDBOFFER 4
  258.49 -#define WAITBREQ 5
  258.50 -#define TIMEOUT 16
  258.51 -#define SENDBUNDLE 7
  258.52 -#define WAITFORBREQUEST 8
  258.53 -#define RESETLINK 19
  258.54 -#define IDLESTATE 110
  258.55 -
  258.56 -//Listener states
  258.57 -#define WAITFORDICTIONARY 1
  258.58 -#define WAITFORRIB 2
  258.59 -#define WAITFORBOFFER 3
  258.60 -#define SENDBREQUEST 4
  258.61 -#define WAITFORBUNDLES 5
  258.62 -
  258.63 -
  258.64 -
  258.65 -Connection::Connection(int connectId,int nodeId,QString nodeName,NodeManager* nodeManager,BundleManager* bundleManager,QObject *parent)
  258.66 -
  258.67 -{
  258.68 -	ReadFile init;
  258.69 -	HELLO_TIMER=init.getHelloTimer();
  258.70 -	INITIATOR_TIMER=init.getInitiatorTimer();
  258.71 -	LISTENER_TIMER=init.getListenerTimer();
  258.72 -	HELLOT=init.getHello();
  258.73 -	BROADCAST=init.getBroadcastTimer();
  258.74 -	continiusUpdate=init.getContiniusUpdate();
  258.75 -	update=0;
  258.76 -	updateRIB=0;
  258.77 -	encounterNodeId=0;
  258.78 -	//State variables
  258.79 -	connectionState=HELLO;
  258.80 -	helloState=SENDSYN;
  258.81 -	initiatorState=IDLESTATE;
  258.82 -	listenerState=IDLESTATE;
  258.83 -	//Define our node manager
  258.84 -	connectionNodeManager=nodeManager;
  258.85 -	//Define our bundle manager
  258.86 -	connectionBundleManager=bundleManager;
  258.87 -	//Set up unique connection ID
  258.88 -//	connectionId=rand();
  258.89 -//	connectionId=connectionId%1000;
  258.90 -	connectionId=connectId;
  258.91 -	//Set up connectionNodeName
  258.92 -	connectionNodeName=nodeName;
  258.93 -	//Set up connectionNodeName
  258.94 -	connectionNodeId=nodeId;
  258.95 -	//Create and connect Hello Timer
  258.96 -    helloTimer = new QTimer(this);
  258.97 -    connect(helloTimer, SIGNAL(timeout()), this, SLOT(helloProcedure()));
  258.98 -    helloTimer->start(rand()%HELLO);
  258.99 -
 258.100 -	//Create and connect Initiator Timer
 258.101 -    initiatorTimer = new QTimer(this);
 258.102 -    connect(initiatorTimer, SIGNAL(timeout()), this, SLOT(initiatorProcedure()));
 258.103 -    //initiatorTimer->start(INITIATOR_TIMER);
 258.104 -
 258.105 -	//Create and connect Listener Timer
 258.106 -    listenerTimer = new QTimer(this);
 258.107 -    connect(listenerTimer, SIGNAL(timeout()), this, SLOT(listenerProcedure()));
 258.108 -    //listenerTimer->start(LISTENER_TIMER);
 258.109 -
 258.110 -
 258.111 -
 258.112 -
 258.113 -	//Create and connect TLV translator
 258.114 -	TLVTranslator = new TLV;
 258.115 -
 258.116 -	//Main external datastreams
 258.117 -	connect(TLVTranslator,SIGNAL(sendDatagram(QByteArray)),this,SLOT(forwardSlotDatagram(QByteArray)));
 258.118 -	connect(this,SIGNAL(forwardSignalDatagram(QByteArray)),TLVTranslator,SLOT(receiveDatagram(QByteArray)));
 258.119 -
 258.120 -	//Hello procedure connections
 258.121 -    connect(this, SIGNAL(sendHello(Hello)),TLVTranslator,SLOT(receiveHello(Hello)));
 258.122 -    connect(TLVTranslator, SIGNAL(sendHello(Hello)),this,SLOT(receiveHello(Hello)));
 258.123 -
 258.124 -	//Initiators procedure connections
 258.125 -    connect(this, SIGNAL(sendDictionary(QList<Node>)),TLVTranslator,SLOT(createDictionary(QList<Node>)));
 258.126 -    connect(this, SIGNAL(sendRIB(QList<Node>)),TLVTranslator,SLOT(createRIB(QList<Node>)));
 258.127 -    connect(this, SIGNAL(sendBundleOffer(QList<Bundle>)),TLVTranslator,SLOT(createBundleOffer(QList<Bundle>)));
 258.128 -    connect(TLVTranslator, SIGNAL(sendBundleRequest(QList<Bundle>)),this,SLOT(receiveBundleRequest(QList<Bundle>)));
 258.129 -	connect(this, SIGNAL(sendBundles(QList<Bundle>)),TLVTranslator,SLOT(createBundleData(QList<Bundle>)));
 258.130 -
 258.131 -
 258.132 -	//Listener procedure connections
 258.133 -    connect(TLVTranslator, SIGNAL(sendDictionary(QList<Node>)),this,SLOT(receiveDictionary(QList<Node>)));
 258.134 -    connect(TLVTranslator, SIGNAL(sendRIB(QList<Node>)),this,SLOT(receiveRIB(QList<Node>)));
 258.135 -    connect(TLVTranslator, SIGNAL(sendBundleOffer(QList<Bundle>)),this,SLOT(receiveBundleOffer(QList<Bundle>)));
 258.136 -    connect(this, SIGNAL(sendBundleRequest(QList<Bundle>)),TLVTranslator,SLOT(createBundleRequest(QList<Bundle>)));
 258.137 -    connect(TLVTranslator, SIGNAL(sendBundleData(QList<Bundle>)),this,SLOT(receiveBundles(QList<Bundle>)));
 258.138 -	//GUI state
 258.139 -	emit newConnectionStatus(STATE_SYN);
 258.140 -
 258.141 -}
 258.142 -
 258.143 -
 258.144 -Connection::~Connection(void)
 258.145 -{
 258.146 -	if(helloTimer!=NULL)
 258.147 -	{
 258.148 -		helloTimer->stop();
 258.149 -		delete helloTimer;
 258.150 -	}
 258.151 -		if(initiatorTimer!=NULL)
 258.152 -	{
 258.153 -		initiatorTimer->stop();
 258.154 -		delete initiatorTimer;
 258.155 -	}
 258.156 -			if(listenerTimer!=NULL)
 258.157 -	{
 258.158 -		listenerTimer->stop();
 258.159 -		delete listenerTimer;
 258.160 -	}	
 258.161 -	if(TLVTranslator!=NULL)
 258.162 -	{
 258.163 -		delete TLVTranslator; 
 258.164 -	} 
 258.165 -
 258.166 -}
 258.167 -
 258.168 -
 258.169 -void Connection::helloProcedure()
 258.170 -{
 258.171 -	helloTimer->stop();
 258.172 -	//Prepare new Hello Object
 258.173 -	Hello newHello;
 258.174 -	switch(helloState)
 258.175 -	{
 258.176 -		case SENDSYN:	//log->addLog(connectionId,(QString)"Hello Procedure:SENDSYN");
 258.177 -						newHello.setFunction(SYN);
 258.178 -						newHello.setTimer(HELLO_TIMER);
 258.179 -						newHello.setSenderName(connectionNodeName);
 258.180 -						newHello.senderId=connectionNodeId;
 258.181 -						newHello.senderType=0;
 258.182 -						helloState=WAITSYNACK;
 258.183 -						emit sendHello(newHello);
 258.184 -						//GUI state
 258.185 -						emit newConnectionStatus(STATE_SYNACK);
 258.186 -			
 258.187 -		break;			
 258.188 -		default	:		//log->addLog(connectionId,(QString)"Hello Procedure:Default");
 258.189 -						helloState=SENDSYN;
 258.190 -						connectionState=HELLO;
 258.191 -						initiatorState=IDLESTATE;
 258.192 -						listenerState=IDLESTATE;
 258.193 -						listenerTimer->stop();
 258.194 -						initiatorTimer->stop();	
 258.195 -						//GUI state
 258.196 -						emit newConnectionStatus(STATE_ERROR);
 258.197 -	
 258.198 -		break;
 258.199 -		}	
 258.200 -		helloTimer->start(HELLO_TIMER);
 258.201 -}
 258.202 -
 258.203 -
 258.204 -
 258.205 -void Connection::receiveHello(Hello receivedHello)
 258.206 -{
 258.207 -	int helloType=receivedHello.getFunction();
 258.208 -	helloTimer->stop();
 258.209 -	
 258.210 -	//Prepare new Hello object
 258.211 -	Hello newHello;
 258.212 -	
 258.213 -	switch(helloType)
 258.214 -	{
 258.215 -	case SYNACK:	//log->addLog(connectionId,(QString)"Receive Hello:SYNACK");
 258.216 -					//Resolving a ID form encountered node
 258.217 -					encounterNodeId=receivedHello.senderId;
 258.218 -					encounterNodeName=receivedHello.senderName;
 258.219 -					encounterNodeType=receivedHello.senderType;
 258.220 -					if(update==0)
 258.221 -					{
 258.222 -						connectionNodeManager->encounterNode(encounterNodeId,encounterNodeType,encounterNodeName);
 258.223 -						if(continiusUpdate==0)
 258.224 -							update=1;
 258.225 -					}
 258.226 -
 258.227 -					//Setting our own ID
 258.228 -					newHello.setFunction(ACK);
 258.229 -					newHello.setTimer(HELLO_TIMER);
 258.230 -					newHello.setSenderName(connectionNodeName);
 258.231 -					newHello.senderId=connectionNodeId;
 258.232 -					newHello.senderType=0;
 258.233 -					emit sendHello(newHello);
 258.234 -					helloState=SLAVE;
 258.235 -					//Invoke Initiator and Listener
 258.236 -					helloTimer->stop();
 258.237 -					initiatorState=SENDDICTIONARY;
 258.238 -					listenerState=WAITFORDICTIONARY;
 258.239 -					initiatorTimer->start(NOW);
 258.240 -					listenerTimer->start(LISTENER_TIMER);
 258.241 -					///initiatorProcedure();
 258.242 -					//////////////////////////////
 258.243 -					//GUI state
 258.244 -					emit newConnectionStatus(STATE_DICT);
 258.245 -					
 258.246 -	break;
 258.247 -	case SYN:		//log->addLog(connectionId,(QString)"Receive Hello:SYN");
 258.248 -					newHello.setFunction(SYNACK);
 258.249 -					newHello.setTimer(HELLO_TIMER);
 258.250 -					newHello.setSenderName(connectionNodeName);
 258.251 -					newHello.senderId=connectionNodeId;
 258.252 -					newHello.senderType=0;
 258.253 -					helloState=WAITACK;helloTimer->start(HELLO_TIMER);
 258.254 -					emit sendHello(newHello);
 258.255 -					//GUI state
 258.256 -					emit newConnectionStatus(STATE_SYNACK);
 258.257 -
 258.258 -	break;
 258.259 -	case ACK:		//log->addLog(connectionId,(QString)"Receive Hello:ACK");
 258.260 -					//Resolving a ID form encountered node
 258.261 -					encounterNodeId=receivedHello.senderId;
 258.262 -					encounterNodeName=receivedHello.senderName;
 258.263 -					encounterNodeType=receivedHello.senderType;
 258.264 -					if(update==0)
 258.265 -					{
 258.266 -						connectionNodeManager->encounterNode(encounterNodeId,encounterNodeType,encounterNodeName);
 258.267 -						if(continiusUpdate==0)
 258.268 -							update=1;
 258.269 -					}
 258.270 -					helloState=MASTER;
 258.271 -					//Invoke Initiator and Listener
 258.272 -					helloTimer->stop();
 258.273 -					initiatorState=SENDDICTIONARY;
 258.274 -					listenerState=WAITFORDICTIONARY;
 258.275 -					initiatorTimer->start(NOW);
 258.276 -					listenerTimer->start(LISTENER_TIMER);
 258.277 -					//GUI state
 258.278 -					emit newConnectionStatus(STATE_DICT);
 258.279 -	break;
 258.280 -	case RSTACK:	//log->addLog(connectionId,(QString)"Receive Hello:RSTACK");
 258.281 -					helloState=SENDSYN;
 258.282 -					//GUI state
 258.283 -					emit newConnectionStatus(STATE_ERROR);
 258.284 -					connectionState=HELLO;helloTimer->start(HELLO_TIMER);
 258.285 -	break;
 258.286 -	default:		//log->addLog(connectionId,(QString)"Receive Hello:Default");
 258.287 -					helloState=SENDSYN;
 258.288 -					connectionState=HELLO;helloTimer->start(HELLO_TIMER);
 258.289 -					//GUI state
 258.290 -					emit newConnectionStatus(STATE_ERROR);
 258.291 -	break;
 258.292 -	}
 258.293 -	
 258.294 -
 258.295 -}
 258.296 -
 258.297 -void Connection::listenerProcedure()
 258.298 -{
 258.299 -	listenerTimer->stop();
 258.300 -	switch(initiatorState)
 258.301 -		{
 258.302 -		case WAITFORDICTIONARY://log->addLog(connectionId,(QString)"Listener:DICTIONARY timeout...");
 258.303 -							//we reset the link
 258.304 -							initiatorState=IDLESTATE;
 258.305 -							listenerState=IDLESTATE;
 258.306 -							connectionState=HELLO;
 258.307 -							helloState=SENDSYN;
 258.308 -							listenerTimer->stop();
 258.309 -							initiatorTimer->stop();
 258.310 -							helloTimer->start(HELLO_TIMER);
 258.311 -							//GUI state
 258.312 -							emit newConnectionStatus(STATE_ERROR);
 258.313 -
 258.314 -							
 258.315 -			
 258.316 -		break;			
 258.317 -		case WAITFORRIB:	//log->addLog(connectionId,(QString)"Listener:RIB timeout...");
 258.318 -							//we reset the link
 258.319 -							initiatorState=IDLESTATE;
 258.320 -							listenerState=IDLESTATE;
 258.321 -							connectionState=HELLO;
 258.322 -							helloState=SENDSYN;
 258.323 -							listenerTimer->stop();
 258.324 -							initiatorTimer->stop();
 258.325 -							helloTimer->start(HELLO_TIMER);
 258.326 -							//GUI state
 258.327 -							emit newConnectionStatus(STATE_ERROR);
 258.328 -			
 258.329 -		break;
 258.330 -		case WAITFORBOFFER:	//log->addLog(connectionId,(QString)"Listener:BOFFER timeout...");
 258.331 -							//we reset the link
 258.332 -							initiatorState=IDLESTATE;
 258.333 -							listenerState=IDLESTATE;
 258.334 -							connectionState=HELLO;
 258.335 -							helloState=SENDSYN;
 258.336 -							listenerTimer->stop();
 258.337 -							initiatorTimer->stop();
 258.338 -							helloTimer->start(HELLO_TIMER);
 258.339 -							//GUI state
 258.340 -							emit newConnectionStatus(STATE_ERROR);
 258.341 -
 258.342 -			
 258.343 -		break;
 258.344 -		case WAITFORBREQUEST://log->addLog(connectionId,(QString)"Listener:BREQ Timeout...");
 258.345 -							//we reset the link
 258.346 -							initiatorState=IDLESTATE;
 258.347 -							listenerState=IDLESTATE;
 258.348 -							connectionState=HELLO;
 258.349 -							helloState=SENDSYN;
 258.350 -							listenerTimer->stop();
 258.351 -							initiatorTimer->stop();
 258.352 -							helloTimer->start(HELLO_TIMER);
 258.353 -							//GUI state
 258.354 -							emit newConnectionStatus(STATE_ERROR);
 258.355 -
 258.356 -			
 258.357 -		break;
 258.358 -		case WAITFORBUNDLES://log->addLog(connectionId,(QString)"Listener:BUNDLES Timeout...");
 258.359 -							//we reset the link
 258.360 -							initiatorState=IDLESTATE;
 258.361 -							listenerState=IDLESTATE;
 258.362 -							connectionState=HELLO;
 258.363 -							helloState=SENDSYN;
 258.364 -							listenerTimer->stop();
 258.365 -							initiatorTimer->stop();
 258.366 -							helloTimer->start(HELLO_TIMER);
 258.367 -							listenerState=RESETLINK;
 258.368 -							//GUI state
 258.369 -							emit newConnectionStatus(STATE_ERROR);
 258.370 -
 258.371 -			
 258.372 -		break;
 258.373 -		case IDLESTATE:		//log->addLog(connectionId,(QString)"Listener:Idle state...");
 258.374 -							//we reset the link
 258.375 -							initiatorState=IDLESTATE;
 258.376 -							listenerState=IDLESTATE;
 258.377 -							connectionState=HELLO;
 258.378 -							helloState=SENDSYN;
 258.379 -							listenerTimer->stop();
 258.380 -							initiatorTimer->stop();
 258.381 -							helloTimer->start(HELLO_TIMER);
 258.382 -							//GUI state
 258.383 -							emit newConnectionStatus(STATE_ERROR);
 258.384 -														
 258.385 -							
 258.386 -		break;
 258.387 -		case RESETLINK:		//log->addLog(connectionId,(QString)"Listener:Link problem...");
 258.388 -							//we reset the link
 258.389 -							initiatorState=IDLESTATE;
 258.390 -							listenerState=IDLESTATE;
 258.391 -							connectionState=HELLO;
 258.392 -							helloState=SENDSYN;
 258.393 -							listenerTimer->stop();
 258.394 -							initiatorTimer->stop();
 258.395 -							helloTimer->start(HELLO_TIMER);
 258.396 -							//GUI state
 258.397 -							emit newConnectionStatus(STATE_ERROR);
 258.398 -			
 258.399 -		break;
 258.400 -		default	://log->addLog(connectionId,(QString)"Hm Listener Timeout default...");		
 258.401 -		break;
 258.402 -		}	
 258.403 -}
 258.404 -
 258.405 -
 258.406 -void Connection::initiatorProcedure()
 258.407 -{
 258.408 -	initiatorTimer->stop();
 258.409 -	QList<Node> nodeList;
 258.410 -	QList<Bundle> bundleList;
 258.411 -	switch(initiatorState)
 258.412 -		{
 258.413 -		case SENDDICTIONARY://log->addLog(connectionId,(QString)"Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER");
 258.414 -							nodeList = connectionNodeManager->getNodeList();
 258.415 -							initiatorState=SENDRIB;
 258.416 -							emit sendDictionary(nodeList);
 258.417 -							nodeList = connectionNodeManager->getRIBNodeList();//We have to use only nodes with RIB
 258.418 -							initiatorState=SENDBOFFER;
 258.419 -							emit sendRIB(nodeList);
 258.420 -							bundleList = connectionBundleManager->getBundleOffer(connectionNodeManager->getNodeList(),lastReceivedRIB,encounterNodeId);
 258.421 -							emit sendBundleOffer(bundleList);
 258.422 -							initiatorState=WAITBREQ;
 258.423 -							initiatorTimer->start(INITIATOR_TIMER);
 258.424 -							//GUI state
 258.425 -							emit newConnectionStatus(STATE_BREQ);
 258.426 -		
 258.427 -		break;
 258.428 -		case WAITFORBREQUEST://log->addLog(connectionId,(QString)"Initiator:BREQ Timeout");
 258.429 -							//we reset the link
 258.430 -							initiatorState=IDLESTATE;
 258.431 -							listenerState=IDLESTATE;
 258.432 -							connectionState=HELLO;
 258.433 -							helloState=SENDSYN;
 258.434 -							listenerTimer->stop();
 258.435 -							initiatorTimer->stop();
 258.436 -							helloTimer->start(HELLO_TIMER);
 258.437 -							//GUI state
 258.438 -							emit newConnectionStatus(STATE_ERROR);
 258.439 -			
 258.440 -		break;
 258.441 -		case IDLESTATE:		//log->addLog(connectionId,(QString)"Initiator:Idle state...");
 258.442 -							//we reset the link
 258.443 -							initiatorState=IDLESTATE;
 258.444 -							listenerState=IDLESTATE;
 258.445 -							connectionState=HELLO;
 258.446 -							helloState=SENDSYN;
 258.447 -							listenerTimer->stop();
 258.448 -							initiatorTimer->stop();
 258.449 -							helloTimer->start(HELLO_TIMER);
 258.450 -							//GUI state
 258.451 -							emit newConnectionStatus(STATE_ERROR);
 258.452 -
 258.453 -			
 258.454 -		break;
 258.455 -		case RESETLINK:		//log->addLog(connectionId,(QString)"Initiator:Link problem...");
 258.456 -							//we reset the link
 258.457 -							initiatorState=IDLESTATE;
 258.458 -							listenerState=IDLESTATE;
 258.459 -							connectionState=HELLO;
 258.460 -							helloState=SENDSYN;
 258.461 -							listenerTimer->stop();
 258.462 -							initiatorTimer->stop();
 258.463 -							helloTimer->start(HELLO_TIMER);
 258.464 -							//GUI state
 258.465 -							emit newConnectionStatus(STATE_ERROR);
 258.466 -			
 258.467 -		break;
 258.468 -		default	://log->addLog(connectionId,(QString)"Hm default timeout initiator...");		
 258.469 -		break;
 258.470 -		}	
 258.471 - }
 258.472 -
 258.473 -
 258.474 -void Connection::receiveBundleOffer(QList<Bundle> receivedList) //LISTENER
 258.475 -{
 258.476 -	listenerTimer->stop();
 258.477 -	bundleRequestList=connectionBundleManager->prepareBundelRequest(receivedList);
 258.478 -	//log->addLog(connectionId,(QString)"Listener:Received Bundle Offer");
 258.479 -//	we send only one bundle request
 258.480 -	if(bundleRequestList.size()>0)
 258.481 -	{
 258.482 -		//log->addLog(connectionId,(QString)"Listener:Sending Full bundle request...");
 258.483 -		QList<Bundle> dummyList;
 258.484 -		dummyList.append(bundleRequestList.first());
 258.485 -		bundleRequestList.removeFirst();
 258.486 -		listenerState=WAITFORBUNDLES;
 258.487 -		listenerTimer->start(LISTENER_TIMER);
 258.488 -		emit sendBundleRequest(dummyList);
 258.489 -		//GUI state
 258.490 -		emit newConnectionStatus(STATE_BUNDLE);
 258.491 -
 258.492 -	}
 258.493 -	else 
 258.494 -	{
 258.495 -		//log->addLog(connectionId,(QString)"Listener:Sending Empty bundle request...");
 258.496 -		if(initiatorState==IDLESTATE)
 258.497 -		{	
 258.498 -			//we reset the link
 258.499 -			initiatorState=IDLESTATE;
 258.500 -			listenerState=IDLESTATE;
 258.501 -			listenerTimer->stop();
 258.502 -			initiatorTimer->stop();
 258.503 -
 258.504 -			if(helloState==MASTER)
 258.505 -			{
 258.506 -				helloState=SENDSYN;
 258.507 -				helloTimer->start(NOW);
 258.508 -				//log->addLog(connectionId,(QString)"Listener(receiveBOffer):We can restart connection...(MASTER)");
 258.509 -				//GUI state
 258.510 -				emit newConnectionStatus(STATE_SYN);
 258.511 -
 258.512 -			}
 258.513 -			else
 258.514 -			{
 258.515 -				helloState=SENDSYN;
 258.516 -				helloTimer->start(HELLO_TIMER);
 258.517 -				//GUI state
 258.518 -				emit newConnectionStatus(STATE_SYN);
 258.519 -
 258.520 -				//log->addLog(connectionId,(QString)"Listener(receiveBOffer):We can not restart connection(SLAVE)");
 258.521 -
 258.522 -			}
 258.523 -		}
 258.524 -		else
 258.525 -		{
 258.526 -			//log->addLog(connectionId,(QString)"Listener(receiveBOffer):But we can not restart connection...");
 258.527 -			listenerState=IDLESTATE;
 258.528 -			listenerTimer->stop();
 258.529 -		}
 258.530 -		emit sendBundleRequest(bundleRequestList);
 258.531 -		
 258.532 -	}
 258.533 -
 258.534 -}
 258.535 -
 258.536 -void Connection::receiveBundles(QList<Bundle> receivedList) //LISTENER
 258.537 -{
 258.538 -	//log->addLog(connectionId,(QString)"Listener:Received Bundles...");
 258.539 -	listenerTimer->stop();
 258.540 -	connectionBundleManager->addBundleList(receivedList);
 258.541 -//	we send only one bundle request
 258.542 -	if(bundleRequestList.size()>0)
 258.543 -	{
 258.544 -		//log->addLog(connectionId,(QString)"Listener:Requesting Bundles...");
 258.545 -		QList<Bundle> dummyList;
 258.546 -		for(int i=0; i<receivedList.size(); i++)
 258.547 -		{
 258.548 -			Bundle b = receivedList.at(i);
 258.549 -			b.setAck();
 258.550 -			//should we reset the ack-bit afterwards?
 258.551 -			dummyList.prepend(b);
 258.552 -			//do some logging here
 258.553 -		}
 258.554 -		dummyList.append(bundleRequestList.first());
 258.555 -		bundleRequestList.removeFirst();
 258.556 -		listenerState=WAITFORBUNDLES;
 258.557 -		listenerTimer->start(LISTENER_TIMER);
 258.558 -		emit sendBundleRequest(dummyList);
 258.559 -		//GUI state
 258.560 -		emit newConnectionStatus(STATE_BUNDLE);
 258.561 -
 258.562 -	}
 258.563 -	else //we finish comunication by sending empty bundle request
 258.564 -	{
 258.565 -		//log->addLog(connectionId,(QString)"Listener:No more needed Bundles...");
 258.566 -		if(initiatorState==IDLESTATE)
 258.567 -		{	
 258.568 -			//we reset the link
 258.569 -			initiatorState=IDLESTATE;
 258.570 -			listenerState=IDLESTATE;
 258.571 -			listenerTimer->stop();
 258.572 -			initiatorTimer->stop();
 258.573 -
 258.574 -			if(helloState==MASTER)
 258.575 -			{
 258.576 -				helloState=SENDSYN;
 258.577 -				helloTimer->start(HELLOT);
 258.578 -				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can restart connection...(MASTER)");
 258.579 -				//GUI state
 258.580 -				emit newConnectionStatus(STATE_SYN);
 258.581 -
 258.582 -			}
 258.583 -			else
 258.584 -			{
 258.585 -				//helloState=SENDSYN;
 258.586 -				//helloTimer->start(HELLO_TIMER);
 258.587 -				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can not restart connection(SLAVE)");
 258.588 -
 258.589 -			}
 258.590 -		}
 258.591 -		else
 258.592 -		{
 258.593 -			//log->addLog(connectionId,(QString)"Listener(receiveBundles):But we can not restart connection...");
 258.594 -			listenerState=IDLESTATE;
 258.595 -			listenerTimer->stop();
 258.596 -		
 258.597 -		}
 258.598 -		//append the received bundles (as acks) to the next request.
 258.599 -		//TODO: Should this be moved to the bundle manager???
 258.600 -		for(int i=0; i<receivedList.size(); i++)
 258.601 -		{
 258.602 -			Bundle b = receivedList.at(i);
 258.603 -			b.setAck();
 258.604 -			//should we reset the ack-bit afterwards?
 258.605 -			bundleRequestList.prepend(b);
 258.606 -			//do some logging here
 258.607 -		}
 258.608 -		emit sendBundleRequest(bundleRequestList);
 258.609 -		
 258.610 -	}
 258.611 -		
 258.612 -}
 258.613 -
 258.614 -void Connection::receiveBundleRequest(QList<Bundle> receivedList) //INITIATOR
 258.615 -{
 258.616 -	initiatorTimer->stop();
 258.617 -	QList<Bundle> bundleList;
 258.618 -	if(receivedList.size()>0)
 258.619 -	{
 258.620 -		bundleList=connectionBundleManager->prepareBundels(receivedList, encounterNodeId);
 258.621 -		initiatorState=WAITBREQ;
 258.622 -		//log->addLog(connectionId,(QString)"Initiator:Sending bundles");
 258.623 -		initiatorTimer->start(INITIATOR_TIMER);
 258.624 -		emit sendBundles(bundleList);
 258.625 -		//GUI state
 258.626 -		emit newConnectionStatus(STATE_BREQ);
 258.627 -
 258.628 -	}
 258.629 -	else
 258.630 -	{
 258.631 -		//log->addLog(connectionId,(QString)"Initiator:No more requested bundles");
 258.632 -		if(listenerState==IDLESTATE)
 258.633 -		{	
 258.634 -			//we reset the link
 258.635 -			if(helloState==MASTER)
 258.636 -			{
 258.637 -				helloState=SENDSYN;
 258.638 -				helloTimer->start(HELLOT);
 258.639 -				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can restart connection...");
 258.640 -				//GUI state
 258.641 -				emit newConnectionStatus(STATE_SYN);
 258.642 -
 258.643 -			}
 258.644 -			else
 258.645 -			{
 258.646 -				helloState=SENDSYN;
 258.647 -				helloTimer->start(HELLO_TIMER);
 258.648 -				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can not restart connection(SLAVE)");
 258.649 -				//GUI state
 258.650 -				emit newConnectionStatus(STATE_SYN);
 258.651 -
 258.652 -			}
 258.653 -		}
 258.654 -		else
 258.655 -		{
 258.656 -			//log->addLog(connectionId,(QString)"Initiator:But we can not restart connection...");
 258.657 -			initiatorState=IDLESTATE;
 258.658 -			initiatorTimer->stop();
 258.659 -		}
 258.660 -	}
 258.661 -	
 258.662 -}
 258.663 -
 258.664 -
 258.665 -void Connection::receiveDictionary(QList<Node> receivedList)
 258.666 -{
 258.667 -	listenerTimer->stop();
 258.668 -	connectionNodeManager->addDictionary(connectionNodeId,receivedList);
 258.669 -	listenerState=WAITFORRIB;
 258.670 -	//log->addLog(connectionId,(QString)"Listener:Received dictionary");
 258.671 -	listenerTimer->start(LISTENER_TIMER);
 258.672 -	//GUI state
 258.673 -	emit newConnectionStatus(STATE_RIB);
 258.674 -
 258.675 -}
 258.676 -
 258.677 -void Connection::receiveRIB(QList<Node> receivedList)
 258.678 -{
 258.679 -	listenerTimer->stop();
 258.680 -	if(updateRIB==0)
 258.681 -	{		
 258.682 -		connectionNodeManager->addRIB(receivedList,encounterNodeId);
 258.683 -		if(continiusUpdate==0)
 258.684 -			updateRIB=1;
 258.685 -	}		
 258.686 -	listenerState=WAITFORBOFFER;
 258.687 -	//Needed for Routing
 258.688 -	lastReceivedRIB=receivedList;
 258.689 -	//log->addLog(connectionId,(QString)"Listener:Received RIB");
 258.690 -	listenerTimer->start(LISTENER_TIMER);
 258.691 -	//GUI state
 258.692 -	emit newConnectionStatus(STATE_BOFF);
 258.693 -
 258.694 -}
 258.695 -
 258.696 -
 258.697 -
 258.698 -void Connection::receiveDatagram(DataPacket dataPacket)
 258.699 -{
 258.700 -	////log->addLog(connectionId,(QString)"Received datagram...");
 258.701 -	emit forwardSignalDatagram(dataPacket.data);
 258.702 -}
 258.703 -
 258.704 -
 258.705 -void Connection::forwardSlotDatagram(QByteArray datagram)
 258.706 -{
 258.707 -	DataPacket dataPacket;
 258.708 -	////log->addLog(connectionId,(QString)"Sended datagram...");
 258.709 -	dataPacket.data = datagram;
 258.710 -	dataPacket.id = connectionId;
 258.711 -	emit sendDataPacket(dataPacket);
 258.712 -}
   259.1 --- a/x86/connection.h	Wed Jan 03 09:17:10 2007 +0000
   259.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   259.3 @@ -1,228 +0,0 @@
   259.4 -#ifndef CONNECTION_H
   259.5 -#define CONNECTION_H
   259.6 -#include <QtCore>
   259.7 -#include <hello.h>
   259.8 -#include <tlv.h>
   259.9 -#include <nodeManager.h>
  259.10 -#include <bundleManager.h>
  259.11 -#include <dataPacket.h>
  259.12 -
  259.13 -
  259.14 -/*! \brief This class is instantiated for each connection between two nodes. 
  259.15 - * It contains the PRoPHET state machine.
  259.16 - *
  259.17 - * <PRE>
  259.18 - * Connection states
  259.19 - * WAIT_NB   - Start state, node waiting for a neighbour to connect to.
  259.20 - * HELLO     - Performs a three-way handshake to set up the connection. Also 
  259.21 - *             assigns a MASTER and a SLAVE for the communication.
  259.22 - * INFO_EXCH - Entered once the Hello procedure has set up the link. In this 
  259.23 - *             state routing information and bundles are exchanged.
  259.24 - * WAIT_INFO - Entered once the INFO_EXCH is completed. Nodes remain in this 
  259.25 - *             state until a timer expires or they are notified that the 
  259.26 - *             neighbor is out of range. WAIT_NB is then entered.
  259.27 - *
  259.28 - * Hello procedure states
  259.29 - * SENDSYN     - Initiation of the Hello procedure. First part of the 
  259.30 - *                three-way handshake.
  259.31 - * WAITSYNACK  - Second part of the three-way handshake.
  259.32 - * WAITACK     - Last part of the three-way handshake.
  259.33 - * ESTABLISHED
  259.34 - * MASTER      - One node is assigned to be MASTER, this node will enter the 
  259.35 - *                initiator states.
  259.36 - * SLAVE       - The other node will be assigned SLAVE, and will enter the 
  259.37 - *                listener states.
  259.38 - * 
  259.39 - * Initiator states (MASTER)
  259.40 - * SENDDICTIONARY
  259.41 - * SENDRIB
  259.42 - * SENDBOFFER
  259.43 - * WAITBREQ
  259.44 - * TIMEOUT
  259.45 - * SENDBUNDLE
  259.46 - * WAITFORBREQUEST
  259.47 - * RESETLINK
  259.48 - * IDLESTATE
  259.49 - * 
  259.50 - * Listener states (SLAVE)
  259.51 - * WAITFORDICTIONARY
  259.52 - * WAITFORRIB
  259.53 - * WAITFORBOFFER
  259.54 - * SENDBREQUEST
  259.55 - * WAITFORBUNDLES
  259.56 - * </PRE>
  259.57 - */
  259.58 -class Connection: public QObject
  259.59 -{
  259.60 -	Q_OBJECT 
  259.61 -	public:
  259.62 -		Connection(int,int ,QString ,NodeManager* ,BundleManager* ,QObject *parent = 0);
  259.63 -		~Connection(void);
  259.64 -
  259.65 -	private:
  259.66 -		int HELLO_TIMER;
  259.67 -		int INITIATOR_TIMER;
  259.68 -		int LISTENER_TIMER;
  259.69 -		int HELLOT;
  259.70 -		int BROADCAST;
  259.71 -		bool update;
  259.72 -		bool updateRIB;
  259.73 -		int continiusUpdate;
  259.74 -
  259.75 -		int connectionState;
  259.76 -		int helloState;
  259.77 -		int initiatorState;
  259.78 -		int listenerState;
  259.79 -		int encounterNodeId;
  259.80 -		int encounterNodeType;
  259.81 -		QString encounterNodeName;
  259.82 -		QTimer *helloTimer; 		
  259.83 -		QTimer *initiatorTimer; 		
  259.84 -		QTimer *listenerTimer; 		
  259.85 -		//TLV
  259.86 -		TLV *TLVTranslator; 
  259.87 -		QString connectionNodeName;
  259.88 -		QList<Node> lastReceivedRIB;
  259.89 -		QList<Bundle> bundleRequestList;
  259.90 -		int connectionId;
  259.91 -		int connectionNodeId;
  259.92 -		NodeManager* connectionNodeManager;
  259.93 -		BundleManager* connectionBundleManager;
  259.94 -
  259.95 -		
  259.96 -
  259.97 -	signals:
  259.98 -
  259.99 -		//! Sends a datapacket to neighAware.
 259.100 -		/*! Connected to NeighAware::sendDatagram
 259.101 -		 * @param packet the DataPacket to send.
 259.102 -		 */
 259.103 -		void sendDataPacket(DataPacket);
 259.104 -		
 259.105 -		//! Sends a Hello to the TLV.
 259.106 -		/*! Connected to TLV::receiveHello
 259.107 -		 * @param hello the Hello to be sent.
 259.108 -		 */
 259.109 -		void sendHello(Hello);
 259.110 -
 259.111 -		//! Sends a dictionary to tht TLV.
 259.112 -		/*! Connected to TLV::createDictionary
 259.113 -		 * @param nodes the list of nodes to be included in the dictionary.
 259.114 -		 */
 259.115 -		void sendDictionary(QList<Node>);
 259.116 -
 259.117 -		//! Sends a RIB to the TLV.
 259.118 -		/*! Connected to TLV::createRIB
 259.119 -		 * @param nodes the list of nodes to be included in the RIB.
 259.120 -		 */
 259.121 -		void sendRIB(QList<Node>);
 259.122 -
 259.123 -		//! Sends a datagram to the TLV.
 259.124 -		/*! Connected to TLV::receiveDatagram
 259.125 -		 * @param datagram the datagram to be sent.
 259.126 -		 */
 259.127 -		void forwardSignalDatagram(QByteArray);
 259.128 -
 259.129 -		//! Sends a bundle offer to the TLV.
 259.130 -		/*! Connected to TLV::createBundleOffer
 259.131 -		 * @param the list of bundles to be included in the offer.
 259.132 -		 */
 259.133 -		void sendBundleOffer(QList<Bundle>);
 259.134 -
 259.135 -		//! Sends a bundle request to the TLV.
 259.136 -		/*! Connected to TLV::createBundleRequest.
 259.137 -		 * @param the list of bundles to be requested. (?)
 259.138 -		 */
 259.139 -		void sendBundleRequest(QList<Bundle>);
 259.140 -
 259.141 -		//! Sends a list of bundles to the TLV.
 259.142 -		/*! Connected to TLV::createBundleData.
 259.143 -		 * @param the bundles to be sent.
 259.144 -		 */
 259.145 -		void sendBundles(QList<Bundle>);
 259.146 -
 259.147 -		//! Sends the status of this connection.
 259.148 -		/*! Connected to NeighAware::getNewConnectionStatus. (Is this only 
 259.149 -		 * used for GUI???)
 259.150 -		 * @param the connection state(?).
 259.151 -		 * <PRE>
 259.152 -		 *	WAIT_NB   = 0
 259.153 -		 *	HELLO     = 1
 259.154 -		 *	INFO_EXCH = 2
 259.155 -		 *	WAIT_INFO = 2
 259.156 -		 * </PRE>
 259.157 -		 */
 259.158 -		void newConnectionStatus(int);
 259.159 -	public slots:
 259.160 -
 259.161 -		//! Internal slot for receiving packets.
 259.162 -		/*! Extracts the data from the datagram and emits forwardSignalDatagram.
 259.163 -		 * @param dataPacket the datapacket received from the network. 
 259.164 -		 */
 259.165 -		void receiveDatagram(DataPacket);
 259.166 -
 259.167 -	private slots:
 259.168 -		//! Internal(?) slot for sending packets.
 259.169 -		/*! Inserts the data into a DataPacket and emits sendDataPacket.
 259.170 -		 * @param datagram the data to be sent.
 259.171 -		 */
 259.172 -		void forwardSlotDatagram(QByteArray);
 259.173 -
 259.174 -		//! Called every time the hello timer expires, initiates a new hello procedure.
 259.175 -		void helloProcedure();
 259.176 -
 259.177 -		//! Called when the Hello procedure is completed if this node was given the SLAVE role.
 259.178 -		void listenerProcedure();
 259.179 -
 259.180 -		//! Called when the Hello procedure is completed if this node was given the MASTER role.
 259.181 -		void initiatorProcedure();
 259.182 -
 259.183 -		//! Slot for reception of hello messages.  
 259.184 -		/*! Checks the type of the hello and reacts accordingly by changing 
 259.185 -		 * state, and possibly sending a response.
 259.186 -		 */
 259.187 -		void receiveHello(Hello);
 259.188 -
 259.189 -		//! Slot for handling the reception of a dictionary.
 259.190 -		/*! When a dictionary (node id, name mappings) is received it is 
 259.191 -		 * dispatched to the node manager.
 259.192 -		 * @param receivedList the list of (node id, name mappings)
 259.193 -		 */
 259.194 -		void receiveDictionary(QList<Node>);
 259.195 -
 259.196 -		//! Slot for handling the reception of the RIB.
 259.197 -		/*! The RIB (Routing Information Base) contains node id -> delivery 
 259.198 -		 * predictability mappings.
 259.199 -		 * @param receivedList the RIB table.
 259.200 -		 */
 259.201 -		void receiveRIB(QList<Node>);
 259.202 -
 259.203 -		//! Handles reception of bundle requests.
 259.204 -		/*! Prepares a bundle request based on the offer, and sends out a 
 259.205 -		 * request for the first bundle in the list. If no more bundles are to 
 259.206 -		 * be sent the connection is reset to the hello state and an empty 
 259.207 -		 * bundle request is sent to the other node to indicate this.
 259.208 -		 * @param receivedList the list of bundles that were offered by the 
 259.209 -		 * other node.
 259.210 -		 */
 259.211 -		void receiveBundleOffer(QList<Bundle>);
 259.212 -
 259.213 -		//! This function is where the initiator handles bundle requests.
 259.214 -		/*! When a request for a list of bundles is received the appropriate 
 259.215 -		 * bundles are sent to the other node.
 259.216 -		 * @param receivedList the list of bundles the other node requested.
 259.217 -		 */
 259.218 -		void receiveBundleRequest(QList<Bundle>);
 259.219 -
 259.220 -		//! This function is where the listener handles reception of bundles.
 259.221 -		/*! When a list of bundles is received (currently only one bundle at a 
 259.222 -		 * time) it is dispatched to the bundle manager and a new request is 
 259.223 -		 * sent out. If the bundle request list is empty an empty bundle 
 259.224 -		 * request is sent out to indicate this to the other node.
 259.225 -		 * @param receivedList the list of bundles received.
 259.226 -		 */
 259.227 -		void receiveBundles(QList<Bundle>);
 259.228 -
 259.229 -
 259.230 -};
 259.231 -#endif
   260.1 --- a/x86/connectionWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
   260.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   260.3 @@ -1,64 +0,0 @@
   260.4 -#include <QtGui>
   260.5 -#include <connectionWidget.h>
   260.6 -#include <readFile.h>
   260.7 -
   260.8 -ConnectionWidget::ConnectionWidget(QWidget *parent)
   260.9 -        : QWidget(parent)
  260.10 -{
  260.11 -#ifdef PDAGUI
  260.12 -//	setFixedSize(230,300);
  260.13 -#else
  260.14 -	setFixedSize(990, 660);
  260.15 -#endif //PDAGUI
  260.16 -
  260.17 -//	QGroupBox *connectionBox = new QGroupBox("Active Connections");
  260.18 -
  260.19 -	//ConnectionsTable
  260.20 -	conTable = new QTableWidget(9, 4, this);
  260.21 -    QStringList horizontalConLabels;
  260.22 -    horizontalConLabels << "ID" << "IP" << "Alive" << "State" ;
  260.23 -	conTable->setHorizontalHeaderLabels(horizontalConLabels);
  260.24 -	conTable->setColumnWidth(0, 30);	//ID
  260.25 -	conTable->setColumnWidth(1, 70);	//IP
  260.26 -	conTable->setColumnWidth(2, 40);	//Alive
  260.27 -	conTable->setColumnWidth(3, 40);	//State
  260.28 -
  260.29 -	QGridLayout *layout = new QGridLayout();
  260.30 -	layout->setMargin(0);
  260.31 -	layout->setSpacing(0);
  260.32 -	layout->addWidget(conTable, 0, 0);
  260.33 -	setLayout(layout);
  260.34 -
  260.35 -
  260.36 -}
  260.37 -
  260.38 -//Receives a list of active connection and add them to the list
  260.39 -void ConnectionWidget:: getConnectionList(QList <ConnectionInfo> list)
  260.40 -{
  260.41 -	ConnectionInfo tempNode;
  260.42 -	conTable->clear();
  260.43 -        QStringList horizontalConLabels;
  260.44 -	horizontalConLabels << "ID" << "IP" << "Alive" << "State";
  260.45 -	conTable->setHorizontalHeaderLabels(horizontalConLabels);
  260.46 -	for (int i = 0; i < list.size(); ++i)
  260.47 -	{
  260.48 -		tempNode=list.at(i);
  260.49 -		//Adding ID
  260.50 -		QString text = QString("%1").arg((int)tempNode.id);
  260.51 -		QTableWidgetItem *newItem = new QTableWidgetItem(text);
  260.52 -		conTable->setItem(i, 0, newItem);
  260.53 -		//Adding IP
  260.54 -		text = tempNode.ip.toString();
  260.55 -		newItem = new QTableWidgetItem(text);
  260.56 -		conTable->setItem(i, 1, newItem);
  260.57 -		//Adding Alive variable
  260.58 -		text = QString("%1").arg((int)tempNode.alive);
  260.59 -		newItem = new QTableWidgetItem(text);
  260.60 -		conTable->setItem(i, 2, newItem);
  260.61 -		//Adding State of the TCP Connection
  260.62 -		int x = tempNode.tcpSocket->state();
  260.63 -		text = QString("%1").arg((int)x);
  260.64 -		newItem = new QTableWidgetItem(text);
  260.65 -		conTable->setItem(i, 3, newItem);
  260.66 -	}
  260.67 - }
   261.1 --- a/x86/connectionWidget.h	Wed Jan 03 09:17:10 2007 +0000
   261.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   261.3 @@ -1,25 +0,0 @@
   261.4 -#ifndef CONNECTIONWIDGET_H
   261.5 -#define CONNECTIONWIDGET_H
   261.6 -#include <QtGui>
   261.7 -#include <QtNetwork>
   261.8 -#include <bundle.h>
   261.9 -#include <nodeManager.h>
  261.10 -#include <neighbourAwareness.h>
  261.11 -
  261.12 -class ConnectionWidget: public QWidget
  261.13 -{
  261.14 -
  261.15 -	Q_OBJECT
  261.16 -
  261.17 -public:
  261.18 -	ConnectionWidget(QWidget *parent = 0);
  261.19 -private:
  261.20 -	QTableWidget* conTable;
  261.21 -
  261.22 -public slots:
  261.23 -	void getConnectionList(QList <ConnectionInfo>);
  261.24 -};
  261.25 -
  261.26 -#endif
  261.27 -
  261.28 -
   262.1 --- a/x86/dataPacket.cpp	Wed Jan 03 09:17:10 2007 +0000
   262.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   262.3 @@ -1,21 +0,0 @@
   262.4 -#include <QtCore>
   262.5 -#include <dataPacket.h>
   262.6 -
   262.7 -DataPacket::DataPacket(QObject *parent)
   262.8 -{
   262.9 -	id=0;
  262.10 -	data.clear();
  262.11 -}
  262.12 -
  262.13 -DataPacket& DataPacket::operator=(const DataPacket& other)
  262.14 -{
  262.15 - id = other.id;
  262.16 - data = other.data;
  262.17 - return *this;
  262.18 -}
  262.19 -
  262.20 -DataPacket::DataPacket(const DataPacket& other)
  262.21 -{
  262.22 - id = other.id;
  262.23 - data = other.data;
  262.24 -}	
   263.1 --- a/x86/dataPacket.h	Wed Jan 03 09:17:10 2007 +0000
   263.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   263.3 @@ -1,21 +0,0 @@
   263.4 -#ifndef DATAPACKET_H
   263.5 -#define DATAPACKET_H
   263.6 -#include <QtCore>
   263.7 -
   263.8 -/*! \brief This class represents a DataPacket. It is used when transfering 
   263.9 - * datagrams between the NeighAware and Connection classes.
  263.10 - */
  263.11 -class DataPacket: public QObject
  263.12 -{
  263.13 -
  263.14 -	Q_OBJECT 
  263.15 -	public:
  263.16 -	QByteArray data;
  263.17 -	int id;
  263.18 -	DataPacket(QObject *parent= 0);
  263.19 -	DataPacket(const DataPacket& other);
  263.20 -	DataPacket& operator=(const DataPacket& other);
  263.21 -
  263.22 -};
  263.23 -
  263.24 -#endif
   264.1 --- a/x86/debugWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
   264.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   264.3 @@ -1,242 +0,0 @@
   264.4 -#include <debugWidget.h>
   264.5 -#include <QtGui>
   264.6 -#include <QtCore>
   264.7 -#include <readFile.h>
   264.8 -
   264.9 -
  264.10 -#define DTN 500
  264.11 -
  264.12 -DebugWidget::DebugWidget(NodeManager *nodeMng,BundleManager *bundleMng,QWidget *parent)
  264.13 -		: QWidget(parent)
  264.14 -{
  264.15 -#ifdef PDAGUI
  264.16 -	setFixedSize(240,320);
  264.17 -#else
  264.18 -	setFixedSize(1000,700);
  264.19 -#endif //PDAGUI
  264.20 -	ReadFile conf;
  264.21 -	QString mainText = "Prophet Window - ";
  264.22 -	mainText.append(conf.getNodeName());
  264.23 -	setWindowTitle(mainText);
  264.24 -	bundleManager=bundleMng;
  264.25 -
  264.26 -#ifdef PDAGUI
  264.27 -	//Connection list tab
  264.28 -	connectionWidget = new ConnectionWidget(this);
  264.29 -	
  264.30 -	//Read Messages Tab
  264.31 -	messageRead = new MsgReadWidget(nodeMng,bundleMng);
  264.32 -
  264.33 -	//Configuration Tab
  264.34 -	configWidget = new ConfigWidget(this);
  264.35 -#endif //PDAGUI
  264.36 -
  264.37 -	//Message Widget Tag
  264.38 -	message = new MsgWidget(nodeMng,bundleMng);
  264.39 -	connect(message, SIGNAL(sendBundle(Bundle)), this, SLOT(forwardAppBundle(Bundle)));
  264.40 -
  264.41 -	//Node Table Tag
  264.42 -	nodeTable = new QTableWidget(40, 4, this);
  264.43 -    QStringList horizontalNodeLabels;
  264.44 -    horizontalNodeLabels << "ID" << "Name" << "Probability" << "RIB Flag";
  264.45 -	nodeTable->setHorizontalHeaderLabels(horizontalNodeLabels); 
  264.46 -
  264.47 -	//Info tag
  264.48 -	infoWidget = new InfoWidget(nodeMng);
  264.49 -	connect(this, SIGNAL(traffic(int)), infoWidget, SLOT(getTraffic(int)));
  264.50 -	connect(this, SIGNAL(newConnectionStatus(int)), infoWidget, SLOT(getNewConnectionStatus(int)));
  264.51 -	connect(this, SIGNAL(newConnection(int)), infoWidget, SLOT(getNewConnection(int)));
  264.52 -	connect(this, SIGNAL(newRemovedConnection(int)), infoWidget, SLOT(getRemovedConnection(int)));
  264.53 -	connect(this, SIGNAL(usedFileStorage(int)), infoWidget, SLOT(getUsedFileStorage(int)));
  264.54 -	connect(this, SIGNAL(usedMemoryStorage(int)), infoWidget, SLOT(getUsedMemoryStorage(int)));
  264.55 -	connect(this, SIGNAL(forwardConnectionList(QList <ConnectionInfo>)), infoWidget, SLOT(getConnectionList(QList <ConnectionInfo>)));
  264.56 -#ifdef PDAGUI
  264.57 -	connect(infoWidget, SIGNAL(sendConnectionList(QList <ConnectionInfo>)), 
  264.58 -			connectionWidget, SLOT(getConnectionList(QList <ConnectionInfo>)));
  264.59 -#endif //PDAGUI
  264.60 -	
  264.61 -	//Bundle List Tag
  264.62 -	bundleWidget = new BundleWidget(this);
  264.63 -	connect(this, SIGNAL(sendBundleList(QList<Bundle>)), bundleWidget, SLOT(getBundleList(QList<Bundle>)));
  264.64 -	connect(bundleWidget, SIGNAL(removeBundle(int)), this, SLOT(removeBundleSlot(int)));
  264.65 -	connect(bundleWidget, SIGNAL(removeAllBundles()), this, SLOT(removeAllBundlesSlot()));
  264.66 -
  264.67 -	#ifdef DTN_INTERFACE
  264.68 -	//DTN Interface Tag
  264.69 -	dtnInfo = new QTextEdit;
  264.70 -	dtnInfo->setReadOnly(true);
  264.71 -	dtnEntery = 0;
  264.72 -	#endif /*DNT_INTERFACE*/
  264.73 -	
  264.74 -	//About Tag
  264.75 -	info = new QListWidget;
  264.76 -	//info->setSelectionMode(QAbstractItemView::NoSelection);
  264.77 -	QString itemText;
  264.78 -	itemText.append("http://prophet.snc.sapmi.net");
  264.79 -    QListWidgetItem *newItem = new QListWidgetItem;
  264.80 -    newItem->setText(itemText);
  264.81 -    info->insertItem(0, newItem);
  264.82 -	itemText.clear();
  264.83 -	itemText.append("PRoPHET Version: 2.6.0");
  264.84 -	newItem = new QListWidgetItem;
  264.85 -    newItem->setText(itemText);
  264.86 -    info->insertItem(0, newItem);
  264.87 -	itemText.clear();
  264.88 -	itemText.append("Protocol Authors: Anders Lindgren, Avri Doria");
  264.89 -	newItem = new QListWidgetItem;
  264.90 -    newItem->setText(itemText);
  264.91 -    info->insertItem(0, newItem);
  264.92 -	itemText.clear();
  264.93 -	itemText.append("Code Author: Samo Grasic, Mattias Ek");
  264.94 -	newItem = new QListWidgetItem;
  264.95 -    newItem->setText(itemText);
  264.96 -    info->insertItem(0, newItem);
  264.97 -	itemText.clear();
  264.98 -	itemText.append("Lulea University Of Technology, Center For Distance-Spanning Technology");
  264.99 -	newItem = new QListWidgetItem;
 264.100 -    newItem->setText(itemText);
 264.101 -    info->insertItem(0, newItem);
 264.102 -
 264.103 -
 264.104 -	//Tab Widget
 264.105 -	tabWidget = new QTabWidget;
 264.106 -	tabWidget->addTab(infoWidget,tr("Node info"));
 264.107 -	#ifdef PDAGUI
 264.108 -	tabWidget->addTab(connectionWidget,tr("Connections"));
 264.109 -	#endif //PDAGUI
 264.110 -	tabWidget->addTab(bundleWidget,tr("Bundle list"));
 264.111 -	#ifdef PDAGUI
 264.112 -	tabWidget->addTab(message, tr("NSIM - Send"));
 264.113 -	tabWidget->addTab(messageRead, tr("NSIM - Read"));
 264.114 -	#else
 264.115 -	tabWidget->addTab(message, tr("NSIM"));
 264.116 -	#endif //PDAGUI
 264.117 -	#ifdef DTN_INTERFACE
 264.118 -	tabWidget->addTab(dtnInfo,tr("DTN Interface"));
 264.119 -	#endif /*DTN_INTERFACE*/
 264.120 -	#ifdef PDAGUI
 264.121 -	tabWidget->addTab(configWidget, tr("Config"));
 264.122 -	#endif //PDAGUI
 264.123 -	tabWidget->addTab(nodeTable, tr("Node list"));
 264.124 -	tabWidget->addTab(info, tr("About"));
 264.125 -
 264.126 -	
 264.127 -	//Define final layout
 264.128 -	QVBoxLayout *layout = new QVBoxLayout;
 264.129 -#ifdef PDAGUI
 264.130 -	layout->setMargin(0);
 264.131 -	layout->setSpacing(0);
 264.132 -#endif //PDAGUI
 264.133 -    layout->addWidget(tabWidget);    
 264.134 -    setLayout(layout);
 264.135 -
 264.136 -}
 264.137 -
 264.138 -void DebugWidget::getBundleList(QList<Bundle> list)
 264.139 -{
 264.140 -	emit sendBundleList(list);
 264.141 -}
 264.142 -
 264.143 -void DebugWidget::getNodeList(QList<Node> list)
 264.144 -{
 264.145 -	Node tempNode;
 264.146 -	nodeTable->clear();
 264.147 -    QStringList horizontalNodeLabels;
 264.148 -    horizontalNodeLabels << "ID" << "Name" << "Probability" << "RIB Flag";
 264.149 -	nodeTable->setHorizontalHeaderLabels(horizontalNodeLabels); 
 264.150 -    for (int i = 0; i < list.size(); ++i) 
 264.151 -	{
 264.152 -		tempNode=list.at(i);
 264.153 -
 264.154 -		QString text = QString("%1").arg((int)tempNode.nodeId);
 264.155 -		QTableWidgetItem *newItem = new QTableWidgetItem(text);
 264.156 -		nodeTable->setItem(i, 0, newItem);
 264.157 -
 264.158 -		text = tempNode.getName();
 264.159 -		newItem = new QTableWidgetItem(text);
 264.160 -		nodeTable->setItem(i, 1, newItem);
 264.161 -
 264.162 -		text = QString("%1").arg((float)tempNode.probability);
 264.163 -		newItem = new QTableWidgetItem(text);
 264.164 -		nodeTable->setItem(i, 2, newItem);
 264.165 -
 264.166 -		text = QString("%1").arg((int)tempNode.flag);
 264.167 -		newItem = new QTableWidgetItem(text);
 264.168 -		nodeTable->setItem(i, 3, newItem);
 264.169 -		//table->resizeRowToContents(i);
 264.170 -	}
 264.171 -}
 264.172 -
 264.173 -void DebugWidget::getConnectionList(QList<ConnectionInfo> list)
 264.174 -{
 264.175 -	emit forwardConnectionList(list);
 264.176 -}
 264.177 -
 264.178 -void DebugWidget::getStorageSize(int size)
 264.179 -{
 264.180 -
 264.181 -}
 264.182 -
 264.183 -void DebugWidget::getLog(QString log)
 264.184 -{
 264.185 -	#ifdef DTN_INTERFACE
 264.186 -	if(dtnEntery>DTN)
 264.187 -	{
 264.188 -		dtnInfo->clear();
 264.189 -		dtnEntery=0;
 264.190 -	}
 264.191 -	dtnInfo->append(log);
 264.192 -	dtnEntery++; 
 264.193 -	#endif /*DTN_INTERFACE*/
 264.194 -}
 264.195 -
 264.196 -void DebugWidget::forwardAppBundle(Bundle newBundle)
 264.197 -{
 264.198 -	emit sendAppBundle(newBundle);
 264.199 -}
 264.200 -
 264.201 -void DebugWidget::getAppBundle(Bundle newBundle)
 264.202 -{
 264.203 -	message->getBundle(newBundle);
 264.204 -}
 264.205 -
 264.206 -void DebugWidget::getTraffic(int t)
 264.207 -{
 264.208 -	emit traffic(t);
 264.209 -}
 264.210 -
 264.211 -void DebugWidget::getNewConnection(int c)
 264.212 -{
 264.213 -	emit newConnection(c);
 264.214 -}
 264.215 -
 264.216 -void DebugWidget::getNewConnectionStatus(int c)
 264.217 -{
 264.218 -	emit newConnectionStatus(c);
 264.219 -}
 264.220 -
 264.221 -void DebugWidget::getRemovedConnection(int c)
 264.222 -{
 264.223 -	emit newRemovedConnection(c);
 264.224 -}
 264.225 -
 264.226 -void DebugWidget::getUsedMemoryStorage(int s)
 264.227 -{
 264.228 -	emit usedMemoryStorage(s);
 264.229 -}
 264.230 -
 264.231 -void DebugWidget::getUsedFileStorage(int s)
 264.232 -{
 264.233 -	emit usedFileStorage(s);
 264.234 -}
 264.235 -
 264.236 -void DebugWidget::removeBundleSlot(int s)
 264.237 -{
 264.238 -	emit removeBundle(s);
 264.239 -}
 264.240 -
 264.241 -void DebugWidget::removeAllBundlesSlot()
 264.242 -{
 264.243 -	emit removeAllBundles();
 264.244 -}
 264.245 -
   265.1 --- a/x86/debugWidget.h	Wed Jan 03 09:17:10 2007 +0000
   265.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   265.3 @@ -1,73 +0,0 @@
   265.4 -#ifndef DEBUGWIDGET_H
   265.5 -#define DEBUGWIDGET_H
   265.6 -
   265.7 -
   265.8 -#include <QtGui>
   265.9 -#include <bundle.h>
  265.10 -#include <node.h>
  265.11 -#include <connectionWidget.h>
  265.12 -#include <msgWidget.h>
  265.13 -#include <msgReadWidget.h>
  265.14 -#include <configWidget.h>
  265.15 -#include <infoWidget.h>
  265.16 -#include <bundleWidget.h>
  265.17 -#include <neighbourAwareness.h>
  265.18 -#include <bundleManager.h>
  265.19 -
  265.20 -class DebugWidget : public QWidget
  265.21 -{
  265.22 -	Q_OBJECT 
  265.23 -
  265.24 -	public:
  265.25 -		DebugWidget(NodeManager*,BundleManager*,QWidget *parent = 0);
  265.26 -		QTableWidget *table;
  265.27 -		QTableWidget *nodeTable;
  265.28 -		QTableWidget *conTable;
  265.29 -		ConnectionWidget *connectionWidget;
  265.30 -		MsgWidget *message;
  265.31 -		MsgReadWidget *messageRead;
  265.32 -		ConfigWidget *configWidget;
  265.33 -		QTabWidget *tabWidget;
  265.34 -		QListWidget *info;
  265.35 -		QTextEdit *dtnInfo;
  265.36 -		InfoWidget *infoWidget;
  265.37 -		BundleWidget *bundleWidget;
  265.38 -		BundleManager *bundleManager;	
  265.39 -	int dtnEntery;
  265.40 -	 signals:
  265.41 -		void sendAppBundle(Bundle);
  265.42 -		void traffic(int);
  265.43 -		void newConnectionStatus(int);
  265.44 -		void newConnection(int);
  265.45 -		void newRemovedConnection(int);
  265.46 -		void usedFileStorage(int);
  265.47 -		void usedMemoryStorage(int);
  265.48 -		void sendBundleList(QList<Bundle>);
  265.49 -		void forwardConnectionList(QList <ConnectionInfo>);
  265.50 -		void removeBundle(int);
  265.51 -		void removeAllBundles();
  265.52 -
  265.53 -	public slots:
  265.54 -	void getLog(QString);
  265.55 -	void getStorageSize(int);
  265.56 -	void getConnectionList(QList<ConnectionInfo> list);
  265.57 -	void getBundleList(QList<Bundle>);
  265.58 -	void forwardAppBundle(Bundle);
  265.59 -	void getAppBundle(Bundle);
  265.60 -	void getNodeList(QList<Node>);
  265.61 -
  265.62 -	void getTraffic(int);
  265.63 -	void getNewConnection(int);
  265.64 -	void getNewConnectionStatus(int);
  265.65 -	void getRemovedConnection(int);
  265.66 -	void getUsedFileStorage(int);
  265.67 -	void getUsedMemoryStorage(int);
  265.68 -	void removeBundleSlot(int);
  265.69 -	void removeAllBundlesSlot();
  265.70 -
  265.71 -
  265.72 -};
  265.73 -
  265.74 -#endif
  265.75 -
  265.76 -
   266.1 Binary file x86/dia/signals.dia has changed
   267.1 Binary file x86/green_off.png has changed
   268.1 Binary file x86/green_on.png has changed
   269.1 --- a/x86/hello.cpp	Wed Jan 03 09:17:10 2007 +0000
   269.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   269.3 @@ -1,65 +0,0 @@
   269.4 -#include <QtCore>
   269.5 -#include <hello.h>
   269.6 -
   269.7 -Hello::Hello(QObject *parent)
   269.8 -{
   269.9 -	reserved=0;
  269.10 -	HFunction=0;
  269.11 -	timer=0;
  269.12 -	senderId=0;
  269.13 -	senderType=0;
  269.14 -	senderName.clear();
  269.15 -}
  269.16 -
  269.17 -
  269.18 -Hello& Hello::operator=(const Hello& other)
  269.19 -{
  269.20 - reserved = other.reserved;
  269.21 - HFunction = other.HFunction;
  269.22 - timer = other.timer;
  269.23 - senderName = other.senderName;
  269.24 - senderId = other.senderId;
  269.25 - senderType = other.senderType;
  269.26 - return *this;
  269.27 -}
  269.28 -
  269.29 -Hello::Hello(const Hello& other)
  269.30 -{
  269.31 - reserved = other.reserved;
  269.32 - HFunction = other.HFunction;
  269.33 - timer = other.timer;
  269.34 - senderName = other.senderName;
  269.35 -  senderId = other.senderId;
  269.36 - senderType = other.senderType;
  269.37 -
  269.38 -}	
  269.39 -	
  269.40 -void Hello::setFunction(int function)
  269.41 -{
  269.42 -	HFunction=function;
  269.43 -}
  269.44 -
  269.45 -void Hello::setSenderName(QString name)
  269.46 -{
  269.47 -	senderName=name;
  269.48 -}
  269.49 -
  269.50 -int Hello::getFunction()
  269.51 -{
  269.52 -	return HFunction;
  269.53 -}
  269.54 -
  269.55 -QString Hello::getSenderName()
  269.56 -{
  269.57 -	return senderName;
  269.58 -}
  269.59 -
  269.60 -void Hello::setTimer(int t)
  269.61 -{
  269.62 -	timer=t;
  269.63 -}
  269.64 -
  269.65 -int Hello::getTimer()
  269.66 -{
  269.67 -	return timer;
  269.68 -}
  269.69 \ No newline at end of file
   270.1 --- a/x86/hello.h	Wed Jan 03 09:17:10 2007 +0000
   270.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   270.3 @@ -1,82 +0,0 @@
   270.4 -#ifndef HELLO_H
   270.5 -#define HELLO_H
   270.6 -
   270.7 -#define SYN 1
   270.8 -#define SYNACK 2
   270.9 -#define ACK 3
  270.10 -#define RSTACK 4
  270.11 -
  270.12 -
  270.13 -
  270.14 -#include <QtCore>
  270.15 -
  270.16 -//!Object used during the PRoPHET hello procedure. 
  270.17 -/*!
  270.18 - * The different functions (HFs) of Hello messages:
  270.19 - * <PRE>
  270.20 - * SYN    - Beacon Hello, used for allowing other nodes to see us.
  270.21 - * SYNACK - Response to a SYN Hello.
  270.22 - * ACK    - Acknowledgement of the SYNACK.
  270.23 - * RSTACK - ???
  270.24 - * </PRE>
  270.25 - */
  270.26 -class Hello : public QObject
  270.27 -{
  270.28 -
  270.29 -Q_OBJECT 
  270.30 -	public:
  270.31 -	int reserved;
  270.32 -	int HFunction;
  270.33 -	int timer;
  270.34 -	int senderId;
  270.35 -	int senderType;
  270.36 -	QString senderName;
  270.37 -
  270.38 -	Hello(QObject *parent = 0);
  270.39 -	Hello(const Hello& other);
  270.40 -	Hello& operator=(const Hello& other);
  270.41 -
  270.42 -
  270.43 -	//! Sets the HF of this Hello.
  270.44 -	/*!
  270.45 -	 * @param function the HF of this Hello.
  270.46 -	 */
  270.47 -	void setFunction(int);
  270.48 -
  270.49 -	//! Sets the HF of this Hello.
  270.50 -	/*!
  270.51 -	 * @param function the HF of this Hello.
  270.52 -	 */
  270.53 -	int getFunction(); 
  270.54 -
  270.55 -	//! Returns the routable DTN name of the sender.
  270.56 -	/*!
  270.57 -	 * Used for updating routing information and making forwarding 
  270.58 -	 * decisions.
  270.59 -	 * @return the routable DTN name of the sender.
  270.60 -	 */
  270.61 -	QString getSenderName();	
  270.62 -
  270.63 -	//! Sets the routable DTN name of the sender.
  270.64 -	/*!
  270.65 -	 * Used for updating routing information and making forwarding 
  270.66 -	 * decisions.
  270.67 -	 * @param name a QString containing the senders name.
  270.68 -	 */	
  270.69 -	void setSenderName(QString);
  270.70 -
  270.71 -	//! Sets the Hello timer of this Hello.
  270.72 -	/*!
  270.73 -	 * @param t the interval between periodic Hello messages in units of 
  270.74 -	 * 100 ms.
  270.75 -	 */
  270.76 -	void setTimer(int);
  270.77 -
  270.78 -	//! Returns the interval (in 100 ms) this Hello is sent out.
  270.79 -	/*!
  270.80 -	 * @return the interval (in 100 ms) that periodic hellos are sent out.
  270.81 -	 */
  270.82 -	int getTimer(); 
  270.83 -};
  270.84 -
  270.85 -#endif
   271.1 --- a/x86/infoWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
   271.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   271.3 @@ -1,518 +0,0 @@
   271.4 -#include <QtGui>
   271.5 -#include <infoWidget.h>
   271.6 -#include <readFile.h>
   271.7 -
   271.8 -
   271.9 -#define AVRTIME 1000
  271.10 -#define MAXRATE 100
  271.11 -#define YELLOWONTIME 1000
  271.12 -#define REDONTIME 4000
  271.13 -
  271.14 -//Connections states for GUI
  271.15 -#define STATE_SYN 1
  271.16 -#define STATE_SYNACK 2
  271.17 -#define STATE_ACK 3
  271.18 -#define STATE_DICT 4
  271.19 -#define STATE_RIB 5
  271.20 -#define STATE_BOFF 6
  271.21 -#define STATE_BREQ 7
  271.22 -#define STATE_BUNDLE 8
  271.23 -#define STATE_ERROR 9
  271.24 -
  271.25 -
  271.26 -InfoWidget::InfoWidget(NodeManager* nodeMng,QWidget *parent)
  271.27 -        : QWidget(parent)
  271.28 -{
  271.29 -#ifdef PDAGUI
  271.30 -//	setFixedSize(230,300);
  271.31 -#else
  271.32 -	setFixedSize(990, 660);
  271.33 -#endif //PDAGUI
  271.34 -	ReadFile conf;
  271.35 -	//Traffic timer and variables
  271.36 -	trafficRate=0;
  271.37 -	trafficSum=0;
  271.38 -	trafficTimer = new QTimer();
  271.39 -	yellowTimer = new QTimer();
  271.40 -	yellowTimer->setSingleShot(true);
  271.41 -	redTimer = new QTimer();
  271.42 -	redTimer->setSingleShot(true);
  271.43 -
  271.44 -	trafficTimer->start(AVRTIME);
  271.45 -	connect(trafficTimer, SIGNAL(timeout()), this, SLOT(calculateTraffic()));
  271.46 -	connect(yellowTimer, SIGNAL(timeout()), this, SLOT(yellowLedOff()));
  271.47 -	connect(redTimer, SIGNAL(timeout()), this, SLOT(redLedOff()));
  271.48 -
  271.49 -	//Load graphic
  271.50 -	redOn = new QPixmap("red_on.png");
  271.51 -	redOff= new QPixmap("red_off.png");
  271.52 -	yellowOn= new QPixmap("yellow_on.png");
  271.53 -	yellowOff= new QPixmap("yellow_off.png");
  271.54 -	greenOn= new QPixmap("green_on.png");
  271.55 -	greenOff= new QPixmap("green_off.png");
  271.56 -
  271.57 -#ifndef PDAGUI
  271.58 -	//ConnectionsTable
  271.59 -    QLabel *labelConnections = new QLabel(this);
  271.60 -    labelConnections->setText("Active connections:");
  271.61 -	conTable = new QTableWidget(9, 4, this);
  271.62 -    QStringList horizontalConLabels;
  271.63 -    horizontalConLabels << "ID" << "IP" << "Alive" << "State" ;
  271.64 -	conTable->setHorizontalHeaderLabels(horizontalConLabels); 
  271.65 -#endif //PDAGUI
  271.66 -
  271.67 -#ifndef PDAGUI
  271.68 -	//Status group
  271.69 -	QGroupBox *sendBox = new QGroupBox("Status");
  271.70 -#endif //PDAGUI
  271.71 -    //Memory resources
  271.72 -    QLabel *labelMemory = new QLabel(this);
  271.73 -    labelMemory->setText("Memory storage:");
  271.74 -	memoryBar= new QProgressBar;
  271.75 -	memoryBar->setMaximum (conf.getStorageSize());
  271.76 -	memoryBar->setMinimum (0);
  271.77 -	memoryBar->setValue (0);
  271.78 -	memoryBar->setTextVisible(true);
  271.79 -    //File resources
  271.80 -    QLabel *labelFile = new QLabel(this);
  271.81 -    labelFile->setText("File storage:");
  271.82 -	fileBar= new QProgressBar;
  271.83 -	fileBar->setMaximum (conf.getMemoryStorageSize());
  271.84 -	fileBar->setMinimum (0);
  271.85 -	fileBar->setValue (0);
  271.86 -	fileBar->setTextVisible(true);
  271.87 -	//Transfer speed
  271.88 -    QLabel *labelSpeed = new QLabel(this);
  271.89 -    labelSpeed->setText("Transfer speed:");
  271.90 -	speedBar= new QProgressBar;
  271.91 -	speedBar->setMaximum (MAXRATE);
  271.92 -	speedBar->setMinimum (0);
  271.93 -	speedBar->setValue (0);
  271.94 -	speedBar->setTextVisible(true);
  271.95 -	//Red label
  271.96 -	labelRed = new QLabel(this);
  271.97 -    labelRed->setPixmap(*redOff);
  271.98 -	redLine = new QLineEdit(this);
  271.99 -	redLine->setText("No error...");
 271.100 -
 271.101 -	//Green label
 271.102 -	labelGreen = new QLabel(this);
 271.103 -    labelGreen->setPixmap(*greenOff);
 271.104 -	greenLine = new QLineEdit(this);
 271.105 -	greenLine->setText("No connection...");
 271.106 -
 271.107 -	//Yellow label
 271.108 -	labelYellow = new QLabel(this);
 271.109 -    labelYellow->setPixmap(*yellowOff);
 271.110 -	yellowLine = new QLineEdit(this);
 271.111 -	yellowLine->setText("No transmission...");
 271.112 -
 271.113 -
 271.114 -
 271.115 -
 271.116 -	//Final grid layout
 271.117 -    QGridLayout *sendGroup = new QGridLayout;
 271.118 -#ifdef PDAGUI
 271.119 -	sendGroup->setMargin(5);
 271.120 -	sendGroup->setSpacing(3);
 271.121 -
 271.122 -	sendGroup->addWidget(labelMemory, 0, 0, 1, 3);
 271.123 -    sendGroup->addWidget(memoryBar, 0, 1, 1, -1);
 271.124 -	sendGroup->addWidget(labelFile, 1, 0, 1, 3);
 271.125 -    sendGroup->addWidget(fileBar, 1, 1, 1, -1);
 271.126 -	sendGroup->addWidget(labelSpeed, 2, 0, 1, 3);
 271.127 -	sendGroup->addWidget(speedBar, 2, 1, 1, -1);
 271.128 -	sendGroup->addWidget(labelRed, 3, 0, 1, 1);	sendGroup->addWidget(redLine, 3, 1, 1, -1);
 271.129 -	sendGroup->addWidget(labelGreen, 4, 0, 1, 1); sendGroup->addWidget(greenLine, 4, 1, 1, -1);
 271.130 -	sendGroup->addWidget(labelYellow, 5, 0, 1, 1); sendGroup->addWidget(yellowLine, 5, 1, 1, -1);
 271.131 -#else
 271.132 -	sendGroup->addWidget(labelMemory, 0, 0);
 271.133 -    sendGroup->addWidget(memoryBar, 1, 0, 1,2);
 271.134 -
 271.135 -	sendGroup->addWidget(labelFile, 2, 0);
 271.136 -    sendGroup->addWidget(fileBar, 3, 0, 1,2);
 271.137 -	sendGroup->addWidget(labelSpeed, 4, 0);
 271.138 -	sendGroup->addWidget(speedBar, 5, 0, 1,2);
 271.139 -	sendGroup->addWidget(labelRed, 6, 0);	sendGroup->addWidget(redLine, 6, 1);
 271.140 -	sendGroup->addWidget(labelGreen, 7, 0); sendGroup->addWidget(greenLine, 7, 1 );
 271.141 -	sendGroup->addWidget(labelYellow, 8, 0); sendGroup->addWidget(yellowLine, 8, 1);
 271.142 -
 271.143 -#endif //PDAGUI
 271.144 -
 271.145 -#ifndef PDAGUI
 271.146 -	sendGroup->addWidget(labelConnections, 9, 0);
 271.147 -	sendGroup->addWidget(conTable, 10, 0,1,2);
 271.148 -#endif //PDAGUI
 271.149 -
 271.150 -#ifdef PDAGUI
 271.151 -	//sendGroup->setFixedSize(240, 320);
 271.152 -#else
 271.153 -	sendBox->setFixedSize(450, 635);
 271.154 -	sendBox->setLayout(sendGroup);
 271.155 -#endif //PDAGUI
 271.156 -	///////////////////////////////////////////////////
 271.157 -	QGroupBox *readBox = new QGroupBox("Configuration");
 271.158 -
 271.159 -	//Reading configurations
 271.160 -	loadConfiguration();
 271.161 -	//Final grid layout
 271.162 -	QGridLayout *readGroup = new QGridLayout;
 271.163 -	QLabel *labelNODEID = new QLabel("NodeID:");
 271.164 -	readGroup->addWidget(labelNODEID, 0, 0);
 271.165 -	readGroup->addWidget(lineNODEID, 0, 1);
 271.166 -	QLabel *labelNODENAME = new QLabel("Node Name:");
 271.167 -	readGroup->addWidget(labelNODENAME, 1, 0);
 271.168 -	readGroup->addWidget(lineNODENAME, 1, 1);
 271.169 -	QLabel *labelNODEIP = new QLabel("Node IP:");
 271.170 -	readGroup->addWidget(labelNODEIP, 2, 0);
 271.171 -	readGroup->addWidget(lineNODEIP, 2, 1);
 271.172 -	QLabel *labelNODEIP2 = new QLabel("Node IP2:");
 271.173 -	readGroup->addWidget(labelNODEIP2, 3, 0);
 271.174 -	readGroup->addWidget(lineNODEIP2, 3, 1);
 271.175 -	QLabel *labelNODEBROADCAST = new QLabel("Broadcast Address:");
 271.176 -	readGroup->addWidget(labelNODEBROADCAST, 4, 0);
 271.177 -	readGroup->addWidget(lineNODEBROADCAST, 4, 1);
 271.178 -	QLabel *labelBROADCAST = new QLabel("Broadcast Timer:");
 271.179 -	readGroup->addWidget(labelBROADCAST, 5, 0);
 271.180 -	readGroup->addWidget(lineBROADCAST, 5, 1);
 271.181 -	QLabel *labelAGINGTIMER = new QLabel("Aging Timer:");
 271.182 -	readGroup->addWidget(labelAGINGTIMER, 6, 0);
 271.183 -	readGroup->addWidget(lineAGINGTIMER, 6, 1);
 271.184 -	QLabel *labelPENCOUNTER = new QLabel("PEcounter:");
 271.185 -	readGroup->addWidget(labelPENCOUNTER, 7, 0);
 271.186 -	readGroup->addWidget(linePENCOUNTER, 7, 1);
 271.187 -	QLabel *labelBETA = new QLabel("Beta:");
 271.188 -	readGroup->addWidget(labelBETA, 8, 0);
 271.189 -	readGroup->addWidget(lineBETA, 8, 1);
 271.190 -	QLabel *labelGAMMA = new QLabel("Gamma:");
 271.191 -	readGroup->addWidget(labelGAMMA, 9, 0);
 271.192 -	readGroup->addWidget(lineGAMMA, 9, 1);
 271.193 -
 271.194 -	QLabel *labelALIVE = new QLabel("Alive Timer:");
 271.195 -	readGroup->addWidget(labelALIVE, 11, 0);
 271.196 -	readGroup->addWidget(lineALIVE, 11, 1);
 271.197 -
 271.198 -	QLabel *labelHELLOTIMER = new QLabel("Hello Timer:");
 271.199 -	readGroup->addWidget(labelHELLOTIMER, 12, 0);
 271.200 -	readGroup->addWidget(lineHELLOTIMER, 12, 1);
 271.201 -
 271.202 -	QLabel *laberINITIATORTIMER = new QLabel("Initiator Timer:");
 271.203 -//	readGroup->addWidget(laberINITIATORTIMER, 13, 0);
 271.204 -//	readGroup->addWidget(lineINITIATORTIMER, 13, 1);
 271.205 -
 271.206 -	QLabel *labelLISTENERTIMER = new QLabel("Listener Timer:");
 271.207 -//	readGroup->addWidget(labelLISTENERTIMER, 14, 0);
 271.208 -//	readGroup->addWidget(lineLISTENERTIMER, 14, 1);
 271.209 -
 271.210 -	QLabel *labelDTNHOSTNAME = new QLabel("DTN Host Name:");
 271.211 -	readGroup->addWidget(labelDTNHOSTNAME, 13, 0);
 271.212 -	readGroup->addWidget(lineDTNHOSTNAME, 13, 1);
 271.213 -
 271.214 -	QLabel *labelDNTTIMER = new QLabel("DTN Timer:");
 271.215 -	readGroup->addWidget(labelDNTTIMER, 14, 0);
 271.216 -	readGroup->addWidget(lineDNTTIMER, 14, 1);
 271.217 -
 271.218 -	QLabel *labelSTORAGESIZE = new QLabel("File Storge size:");
 271.219 -	readGroup->addWidget(labelSTORAGESIZE, 15, 0);
 271.220 -	readGroup->addWidget(lineSTORAGESIZE, 15, 1);
 271.221 -
 271.222 -	QLabel *labelMEMORYSIZE = new QLabel("Memory Storge size:");
 271.223 -	readGroup->addWidget(labelMEMORYSIZE, 16, 0);
 271.224 -	readGroup->addWidget(lineMEMORYSIZE, 16, 1);
 271.225 -
 271.226 -	QLabel *labelROUTING = new QLabel("Routing Type:");
 271.227 -	readGroup->addWidget(labelROUTING, 17, 0);
 271.228 -	readGroup->addWidget(lineROUTING, 17, 1);
 271.229 -
 271.230 -	QLabel *labelQUEUE = new QLabel("Queue Type:");
 271.231 -	readGroup->addWidget(labelQUEUE, 18, 0);
 271.232 -	readGroup->addWidget(lineQUEUE, 18, 1);
 271.233 -
 271.234 -	QLabel *labelCONTINIUSUPDATE = new QLabel("Continius update:");
 271.235 -	readGroup->addWidget(labelCONTINIUSUPDATE, 19, 0);
 271.236 -	readGroup->addWidget(lineCONTINIUSUPDATE, 19, 1);
 271.237 -
 271.238 -	QLabel *labelSTORAGEPATH = new QLabel("Storage Path:");
 271.239 -	readGroup->addWidget(labelSTORAGEPATH, 20, 0);
 271.240 -	readGroup->addWidget(lineSTORAGEPATH, 20, 1);
 271.241 -
 271.242 -	QLabel *labelLOGPATH = new QLabel("Log Path:");
 271.243 -	readGroup->addWidget(labelLOGPATH, 21, 0);
 271.244 -	readGroup->addWidget(lineLOGPATH, 21, 1);
 271.245 -
 271.246 -	QLabel *labelMSGPATH = new QLabel("Messages Path:");
 271.247 -	readGroup->addWidget(labelMSGPATH, 22, 0);
 271.248 -	readGroup->addWidget(lineMSGPATH, 22, 1);
 271.249 -
 271.250 -	QLabel *labelAGEFILENODES = new QLabel("Age Nodes on Startup:");
 271.251 -	readGroup->addWidget(labelAGEFILENODES, 23, 0);
 271.252 -	readGroup->addWidget(lineAGEFILENODES, 23, 1);
 271.253 -
 271.254 -	QLabel *labelUSEFILENODES = new QLabel("Store Nodes To File:");
 271.255 -	readGroup->addWidget(labelUSEFILENODES, 24, 0);
 271.256 -	readGroup->addWidget(lineUSEFILENODES, 24, 1);
 271.257 -
 271.258 -	QLabel *labelWRITETOFILETIMER = new QLabel("File Writing Timer:");
 271.259 -	readGroup->addWidget(labelWRITETOFILETIMER, 25, 0);
 271.260 -	readGroup->addWidget(lineWRITETOFILETIMER, 25, 1);
 271.261 -
 271.262 -	QLabel *labelUSEFILEBUNDLES = new QLabel("Store Bundels To Files:");
 271.263 -	readGroup->addWidget(labelUSEFILEBUNDLES, 26, 0);
 271.264 -	readGroup->addWidget(lineUSEFILEBUNDLES, 26, 1);
 271.265 -
 271.266 -
 271.267 -	QLabel *labelLOGGING = new QLabel("Logging:");
 271.268 -	readGroup->addWidget(labelLOGGING, 27, 0);
 271.269 -	readGroup->addWidget(lineLOGGING, 27, 1);
 271.270 -
 271.271 -	QLabel *labelUSETTL = new QLabel("Use TTL:");
 271.272 -	readGroup->addWidget(labelUSETTL, 28, 0);
 271.273 -	readGroup->addWidget(lineUSETTL, 28, 1);
 271.274 -
 271.275 -	QLabel *labelTTL = new QLabel("TTL:");
 271.276 -	readGroup->addWidget(labelTTL, 29, 0);
 271.277 -	readGroup->addWidget(lineTTL, 29, 1);
 271.278 -
 271.279 -	QLabel *labelACKS = new QLabel("Use ACKs:");
 271.280 -	readGroup->addWidget(labelACKS, 30, 0);
 271.281 -	readGroup->addWidget(lineACKS, 30, 1);
 271.282 -
 271.283 -
 271.284 -
 271.285 -
 271.286 - 	readBox->setFixedSize(450, 635);
 271.287 -	readBox->setLayout(readGroup);
 271.288 -	Bundle *msg = new Bundle;
 271.289 -	//Define final layout
 271.290 -	QVBoxLayout *layout = new QVBoxLayout;
 271.291 -	layout->setDirection(QBoxLayout::LeftToRight);
 271.292 -#ifdef PDAGUI
 271.293 -    setLayout(sendGroup);
 271.294 -#else
 271.295 -    layout->addWidget(sendBox);
 271.296 -	layout->addWidget(readBox);    
 271.297 -    setLayout(layout);
 271.298 -#endif //PDAGUI
 271.299 -}
 271.300 -
 271.301 -void InfoWidget::loadConfiguration()
 271.302 -{
 271.303 -	ReadFile conf;
 271.304 -	lineNODEID = new QLineEdit();
 271.305 -	lineNODEID->setText(QString("%1").arg(conf.getNodeId()));
 271.306 -
 271.307 -	lineNODENAME = new QLineEdit();
 271.308 -	lineNODENAME->setText(conf.getNodeName());
 271.309 -
 271.310 -	lineNODEIP = new QLineEdit();
 271.311 -	lineNODEIP->setText(conf.getNodeIp().toString());
 271.312 -
 271.313 -	lineNODEIP2 = new QLineEdit();
 271.314 -	lineNODEIP2->setText(conf.getNodeIp2().toString());
 271.315 -
 271.316 -	lineNODEBROADCAST = new QLineEdit();
 271.317 -	lineNODEBROADCAST->setText(conf.getBroadcast().toString());
 271.318 -
 271.319 -	lineBROADCAST = new QLineEdit();
 271.320 -	lineBROADCAST->setText(QString("%1").arg(conf.getBroadcastTimer()));
 271.321 -
 271.322 -	lineAGINGTIMER = new QLineEdit();
 271.323 -	lineAGINGTIMER->setText(QString("%1").arg(conf.getAgingTimer()));
 271.324 -
 271.325 -	linePENCOUNTER = new QLineEdit();
 271.326 -	linePENCOUNTER->setText(QString("%1").arg(conf.getPEncounter()));
 271.327 -
 271.328 -	lineBETA = new QLineEdit();
 271.329 -	lineBETA->setText(QString("%1").arg(conf.getBeta()));
 271.330 -
 271.331 -	lineGAMMA = new QLineEdit();
 271.332 -	lineGAMMA->setText(QString("%1").arg(conf.getGamma()));
 271.333 -	
 271.334 -	lineALIVE = new QLineEdit();
 271.335 -	lineALIVE->setText(QString("%1").arg(conf.getAlive()));
 271.336 -	
 271.337 -	lineHELLOTIMER = new QLineEdit();
 271.338 -	lineHELLOTIMER->setText(QString("%1").arg(conf.getHello()));
 271.339 -	
 271.340 -	lineINITIATORTIMER = new QLineEdit();
 271.341 -	lineINITIATORTIMER->setText(QString("%1").arg(conf.getInitiatorTimer()));
 271.342 -	
 271.343 -	lineLISTENERTIMER = new QLineEdit();
 271.344 -	lineLISTENERTIMER->setText(QString("%1").arg(conf.getListenerTimer()));
 271.345 -	
 271.346 -	lineDTNHOSTNAME = new QLineEdit();
 271.347 -	lineDTNHOSTNAME->setText(conf.getDTNHostName().toString());
 271.348 -	
 271.349 -	lineDNTTIMER = new QLineEdit();
 271.350 -	lineDNTTIMER->setText(QString("%1").arg(conf.getDTNTimer()));
 271.351 -
 271.352 -	lineSTORAGESIZE = new QLineEdit();
 271.353 -	lineSTORAGESIZE->setText(QString("%1").arg(conf.getStorageSize()));
 271.354 -
 271.355 -	lineMEMORYSIZE = new QLineEdit();
 271.356 -	lineMEMORYSIZE->setText(QString("%1").arg(conf.getMemoryStorageSize()));
 271.357 -
 271.358 -	lineROUTING = new QLineEdit();
 271.359 -	lineROUTING->setText(QString("%1").arg(conf.getRouting()));
 271.360 -
 271.361 -	lineQUEUE = new QLineEdit();
 271.362 -	lineQUEUE->setText(QString("%1").arg(conf.getQueue()));
 271.363 -
 271.364 -	lineCONTINIUSUPDATE = new QLineEdit();
 271.365 -	lineCONTINIUSUPDATE->setText(QString("%1").arg(conf.getContiniusUpdate()));
 271.366 -
 271.367 -	lineSTORAGEPATH = new QLineEdit();
 271.368 -	lineSTORAGEPATH->setText(QString("%1").arg(conf.getStoragePath()));
 271.369 -
 271.370 -	lineLOGPATH = new QLineEdit();
 271.371 -	lineLOGPATH->setText(QString("%1").arg(conf.getLogPath()));
 271.372 -
 271.373 -	lineMSGPATH = new QLineEdit();
 271.374 -	lineMSGPATH->setText(QString("%1").arg(conf.getMsgPath()));
 271.375 -
 271.376 -	lineAGEFILENODES = new QLineEdit();
 271.377 -	lineAGEFILENODES->setText(QString("%1").arg(conf.getAgeFileNodes()));
 271.378 -
 271.379 -	lineUSEFILENODES = new QLineEdit();
 271.380 -	lineUSEFILENODES->setText(QString("%1").arg(conf.getUseFileNodes()));
 271.381 -
 271.382 -	lineWRITETOFILETIMER = new QLineEdit();
 271.383 -	lineWRITETOFILETIMER->setText(QString("%1").arg(conf.getWriteToFileTimer()));
 271.384 -
 271.385 -	lineUSEFILEBUNDLES = new QLineEdit();
 271.386 -	lineUSEFILEBUNDLES->setText(QString("%1").arg(conf.getUseFileBundles()));
 271.387 -
 271.388 -	lineLOGGING = new QLineEdit();
 271.389 -	lineLOGGING->setText(QString("%1").arg(conf.getLogOption()));
 271.390 -
 271.391 -	
 271.392 -	lineUSETTL = new QLineEdit();
 271.393 -	lineUSETTL->setText(QString("%1").arg(conf.getUseTTL()));
 271.394 -
 271.395 -	lineTTL = new QLineEdit();
 271.396 -	lineTTL->setText(QString("%1").arg(conf.getTTL()));
 271.397 -
 271.398 -	lineACKS = new QLineEdit();
 271.399 -	lineACKS->setText(QString("%1").arg(conf.getUseACKS()));
 271.400 -
 271.401 -}
 271.402 -
 271.403 -
 271.404 -
 271.405 -
 271.406 -
 271.407 -
 271.408 -void InfoWidget::yellowLedOff()
 271.409 -{
 271.410 -	labelYellow->setPixmap(*yellowOff);
 271.411 -	yellow=false;
 271.412 -	yellowLine->setText("No transmission...");
 271.413 -	yellowTimer->stop();
 271.414 -}
 271.415 -
 271.416 -void InfoWidget::redLedOff()
 271.417 -{
 271.418 -	labelRed->setPixmap(*redOff);
 271.419 -	redLine->setText("No error...");
 271.420 -	redTimer->stop();
 271.421 -}
 271.422 -
 271.423 -
 271.424 -
 271.425 -void InfoWidget::getTraffic(int tr)
 271.426 -{
 271.427 -   trafficSum=+tr;
 271.428 -   yellowLine->setText("Transmitting "+QString("%1").arg(tr)+" bytes...");
 271.429 - 
 271.430 -   yellowTimer->start(YELLOWONTIME);//(tr/MAXRATE)*1000);
 271.431 -   labelYellow->setPixmap(*yellowOn);
 271.432 -}
 271.433 -
 271.434 -//Calculating the transfer speed in GUI
 271.435 -void InfoWidget::calculateTraffic()
 271.436 -{
 271.437 -	trafficRate=(trafficSum)/(1000.0/AVRTIME);
 271.438 -	trafficSum=0;
 271.439 -	speedBar->setValue (trafficRate);
 271.440 -}
 271.441 -
 271.442 -
 271.443 -void InfoWidget::getNewConnection(int c)
 271.444 -{
 271.445 -	greenLine->setText("Connection Nr. "+QString("%1").arg(c)+" created...");
 271.446 -	labelGreen->setPixmap(*greenOn);
 271.447 -}
 271.448 -
 271.449 -
 271.450 -void InfoWidget::getNewConnectionStatus(int c)
 271.451 -{
 271.452 -
 271.453 -
 271.454 -	switch (c)
 271.455 -	{
 271.456 -	case STATE_SYN:		greenLine->setText("HELLO SYN...");break;
 271.457 -	case STATE_SYNACK:	greenLine->setText("HELLO SYNACK...");break;
 271.458 -	case STATE_ACK:		greenLine->setText("HELLO ACK...");break;
 271.459 -	case STATE_DICT:	greenLine->setText("DICTIONARY...");break;
 271.460 -	case STATE_RIB:		greenLine->setText("RUTING INFORMATION BASE...");break;
 271.461 -	case STATE_BOFF:	greenLine->setText("BUNDLE OFFER...");break;
 271.462 -	case STATE_BREQ:	greenLine->setText("BUNDLE REQUEST...");break;
 271.463 -	case STATE_BUNDLE:	greenLine->setText("BUNDLE DATA...");break;
 271.464 -	case STATE_ERROR:	greenLine->setText("ERROR  STATE...");break;
 271.465 -	default:	greenLine->setText("No connection...");labelGreen->setPixmap(*greenOff);break;
 271.466 -	}
 271.467 -}
 271.468 -
 271.469 -void InfoWidget::getRemovedConnection(int c)
 271.470 -{
 271.471 -	redLine->setText("Connection Nr. "+QString("%1").arg(c)+" removed...");
 271.472 -	redTimer->start(REDONTIME);
 271.473 -	labelRed->setPixmap(*redOn);
 271.474 -}
 271.475 -
 271.476 -void InfoWidget::getUsedMemoryStorage(int s)
 271.477 -{
 271.478 -	memoryBar->setValue (s);
 271.479 -}
 271.480 -
 271.481 -void InfoWidget::getUsedFileStorage(int s)
 271.482 -{
 271.483 -	fileBar->setValue (s);
 271.484 -}
 271.485 -
 271.486 -
 271.487 -//Receives a list of active connection and add them to the list
 271.488 -void InfoWidget:: getConnectionList(QList <ConnectionInfo> list)
 271.489 -{
 271.490 -#ifdef PDAGUI
 271.491 -	/* send the connection list to the connection tab */
 271.492 -	emit sendConnectionList(list);
 271.493 -#else
 271.494 -	ConnectionInfo tempNode;
 271.495 -	conTable->clear();
 271.496 -        QStringList horizontalConLabels;
 271.497 -	horizontalConLabels << "ID" << "IP" << "Alive" << "State";
 271.498 -	conTable->setHorizontalHeaderLabels(horizontalConLabels);
 271.499 -	for (int i = 0; i < list.size(); ++i)
 271.500 -	{
 271.501 -		tempNode=list.at(i);
 271.502 -		//Adding ID
 271.503 -		QString text = QString("%1").arg((int)tempNode.id);
 271.504 -		QTableWidgetItem *newItem = new QTableWidgetItem(text);
 271.505 -		conTable->setItem(i, 0, newItem);
 271.506 -		//Adding IP
 271.507 -		text = tempNode.ip.toString();
 271.508 -		newItem = new QTableWidgetItem(text);
 271.509 -		conTable->setItem(i, 1, newItem);
 271.510 -		//Adding Alive variable
 271.511 -		text = QString("%1").arg((int)tempNode.alive);
 271.512 -		newItem = new QTableWidgetItem(text);
 271.513 -		conTable->setItem(i, 2, newItem);
 271.514 -		//Adding State of the TCP Connection
 271.515 -		int x = tempNode.tcpSocket->state();
 271.516 -		text = QString("%1").arg((int)x);
 271.517 -		newItem = new QTableWidgetItem(text);
 271.518 -		conTable->setItem(i, 3, newItem);
 271.519 -	}
 271.520 -#endif //PDAGUI
 271.521 - }
   272.1 --- a/x86/infoWidget.h	Wed Jan 03 09:17:10 2007 +0000
   272.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   272.3 @@ -1,153 +0,0 @@
   272.4 -#ifndef INFOWIDGET_H
   272.5 -#define INFOWIDGET_H
   272.6 -#include <QtGui>
   272.7 -#include <QtNetwork>
   272.8 -#include <bundle.h>
   272.9 -#include <nodeManager.h>
  272.10 -#include <neighbourAwareness.h>
  272.11 -
  272.12 -class InfoWidget : public QWidget
  272.13 -{
  272.14 -
  272.15 -	Q_OBJECT
  272.16 -
  272.17 -private:
  272.18 -		
  272.19 -	QLineEdit *label;
  272.20 -
  272.21 -	
  272.22 -public:
  272.23 -	int seq;
  272.24 -	QComboBox *combo;
  272.25 -	QTextBrowser *readText;
  272.26 -	QFileDialog *file;
  272.27 -	QLineEdit *src;
  272.28 -	QLineEdit *dst;
  272.29 -	QLineEdit *opt;
  272.30 -	QTextEdit *line;
  272.31 -	QLineEdit *srcLine;
  272.32 -	QLineEdit *dstLine;
  272.33 -	InfoWidget(NodeManager*,QWidget *parent = 0);
  272.34 -	NodeManager* nodeManager;
  272.35 -	QTimer* timer;
  272.36 -	bool firstTime;
  272.37 -	QListWidget* msgList;
  272.38 -	QDir dir;
  272.39 -	//Status variables
  272.40 -	QProgressBar *memoryBar;
  272.41 -	QProgressBar *fileBar;
  272.42 -	QProgressBar *speedBar;
  272.43 -	QLabel *labelRed;
  272.44 -	QLabel *labelGreen;
  272.45 -	QLabel *labelYellow;
  272.46 -	QLineEdit *greenLine;
  272.47 -	QLineEdit *redLine;
  272.48 -	QLineEdit *yellowLine;
  272.49 -	int trafficSum;
  272.50 -	float trafficRate;
  272.51 -	QTimer *trafficTimer;
  272.52 -	QTimer *yellowTimer;
  272.53 -	QTimer *redTimer;
  272.54 -	QPixmap	*redOn;
  272.55 -	QPixmap	*redOff;
  272.56 -	QPixmap	*yellowOn;
  272.57 -	QPixmap	*yellowOff;
  272.58 -	QPixmap	*greenOn;
  272.59 -	QPixmap	*greenOff;
  272.60 -	bool yellow;
  272.61 -	QTableWidget* conTable;
  272.62 -
  272.63 -	
  272.64 -	//Configuration variables
  272.65 -	int NODEID;
  272.66 -	QString NODENAME;
  272.67 -	QHostAddress NODEIP;
  272.68 -	QHostAddress NODEIP2;
  272.69 -	QHostAddress NODEBROADCAST;
  272.70 -	int BROADCAST;
  272.71 -	int AGINGTIMER;
  272.72 -	float PENCOUNTER;
  272.73 -	float BETA;
  272.74 -	float GAMMA;
  272.75 -	int HELLO;
  272.76 -	int ALIVE;
  272.77 -	int HELLOTIMER;
  272.78 -	int INITIATORTIMER;
  272.79 -	int LISTENERTIMER;
  272.80 -	QHostAddress DTNHOSTNAME;
  272.81 -	int DNTTIMER;
  272.82 -	int STORAGESIZE;
  272.83 -	int MEMORYSIZE;
  272.84 -	int ROUTING;
  272.85 -	int QUEUE;
  272.86 -	int CONTINIUSUPDATE;
  272.87 -	QString STORAGEPATH;
  272.88 -	QString LOGPATH;
  272.89 -	QString MSGPATH;
  272.90 -	int AGEFILENODES;
  272.91 -	int USEFILENODES;
  272.92 -	int WRITETOFILETIMER;
  272.93 -	int USEFILEBUNDLES;
  272.94 -	int LOGGING;
  272.95 -
  272.96 -
  272.97 -	QLineEdit * lineNODEID;
  272.98 -	QLineEdit * lineNODENAME;
  272.99 -	QLineEdit * lineNODEIP;
 272.100 -	QLineEdit * lineNODEIP2;
 272.101 -	QLineEdit * lineNODEBROADCAST;
 272.102 -	QLineEdit * lineBROADCAST;
 272.103 -	QLineEdit * lineAGINGTIMER;
 272.104 -	QLineEdit * linePENCOUNTER;
 272.105 -	QLineEdit * lineBETA;
 272.106 -	QLineEdit * lineGAMMA;
 272.107 -	QLineEdit * lineHELLO;
 272.108 -	QLineEdit * lineALIVE;
 272.109 -	QLineEdit * lineHELLOTIMER;
 272.110 -	QLineEdit * lineINITIATORTIMER;
 272.111 -	QLineEdit * lineLISTENERTIMER;
 272.112 -	QLineEdit * lineDTNHOSTNAME;
 272.113 -	QLineEdit * lineDNTTIMER;
 272.114 -	QLineEdit * lineSTORAGESIZE;
 272.115 -	QLineEdit * lineMEMORYSIZE;
 272.116 -	QLineEdit * lineROUTING;
 272.117 -	QLineEdit * lineQUEUE;
 272.118 -	QLineEdit * lineCONTINIUSUPDATE;
 272.119 -	QLineEdit * lineSTORAGEPATH;
 272.120 -	QLineEdit * lineLOGPATH;
 272.121 -	QLineEdit * lineMSGPATH;
 272.122 -	QLineEdit * lineAGEFILENODES;
 272.123 -	QLineEdit * lineUSEFILENODES;
 272.124 -	QLineEdit * lineWRITETOFILETIMER;
 272.125 -	QLineEdit * lineUSEFILEBUNDLES;
 272.126 -	QLineEdit * lineLOGGING;
 272.127 -	QLineEdit * lineUSETTL;
 272.128 -	QLineEdit * lineTTL;
 272.129 -	QLineEdit * lineACKS;
 272.130 -
 272.131 -
 272.132 -
 272.133 -
 272.134 -signals:
 272.135 -	void sendConnectionList(QList <ConnectionInfo>);
 272.136 -
 272.137 -public slots:
 272.138 -	void loadConfiguration();
 272.139 -	void calculateTraffic();
 272.140 -	void yellowLedOff();	
 272.141 -	void redLedOff();
 272.142 -
 272.143 -	void getTraffic(int);
 272.144 -	void getConnectionList(QList <ConnectionInfo>);
 272.145 -	void getNewConnection(int);
 272.146 -	void getNewConnectionStatus(int);
 272.147 -	void getRemovedConnection(int);
 272.148 -	void getUsedFileStorage(int);
 272.149 -	void getUsedMemoryStorage(int);
 272.150 -
 272.151 -
 272.152 -};
 272.153 -
 272.154 -#endif
 272.155 -
 272.156 -
   273.1 --- a/x86/main.cpp	Wed Jan 03 09:17:10 2007 +0000
   273.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   273.3 @@ -1,75 +0,0 @@
   273.4 -#ifdef GUI
   273.5 -#include <QtGui>
   273.6 -#include <debugWidget.h>
   273.7 -#endif /*GUI*/
   273.8 -#include <QtCore>
   273.9 -#include <neighbourAwareness.h>
  273.10 -#ifdef DTN_INTERFACE
  273.11 -#include <DTNInterface.h>
  273.12 -#endif /*DTN_INTERFACE*/
  273.13 -#include <messageFile.h>
  273.14 -#include <readFile.h>
  273.15 -
  273.16 -using namespace std;
  273.17 -
  273.18 -
  273.19 -int main(int argc, char *argv[])
  273.20 -{
  273.21 -#ifdef GUI
  273.22 -	QApplication app(argc, argv);
  273.23 -#else
  273.24 -	QCoreApplication app(argc, argv);
  273.25 -#endif /*GUI*/
  273.26 -	ReadFile* conf;
  273.27 -	conf = new ReadFile;
  273.28 -	//Prepare Log File
  273.29 -	if(conf->getLogOption()==1)
  273.30 -	{
  273.31 -		MessageFile *log;
  273.32 -		log = new MessageFile;
  273.33 -		log->set("startup.log", 1000000, 5);
  273.34 -		log->addLog(0,(QString)"Starting Prophet!");
  273.35 -	}
  273.36 -
  273.37 -	//Create bundle manager
  273.38 -	BundleManager* mainBundleMananger = new BundleManager(conf->getNodeId());
  273.39 -	//Create node manager
  273.40 -	NodeManager* mainNodeManager = new NodeManager();
  273.41 -	//Neighbor Awarness
  273.42 -	NeighAware* neighbourawareness = new NeighAware(mainBundleMananger,mainNodeManager);
  273.43 -#ifdef DTN_INTERFACE
  273.44 -	//Create DTN interface
  273.45 -	DTNInterface* mainDTNInterface = new DTNInterface(mainBundleMananger,mainNodeManager);
  273.46 -#endif /*DTN_INTERFACE*/
  273.47 -#ifdef GUI
  273.48 -	//Create debug
  273.49 -	DebugWidget* debugWidget = new DebugWidget(mainNodeManager,mainBundleMananger);
  273.50 -	debugWidget->show();
  273.51 -	//Connect Bundle manager, Node manager and Debug widget
  273.52 -	debugWidget->connect(mainBundleMananger,SIGNAL(sendDebugBundleList(QList<Bundle>)),debugWidget,SLOT(getBundleList(QList<Bundle>)));
  273.53 -	debugWidget->connect(debugWidget,SIGNAL(sendAppBundle(Bundle)),mainBundleMananger,SLOT(addBundle(Bundle)));
  273.54 -	debugWidget->connect(mainBundleMananger,SIGNAL(sendFileStorage(int)),debugWidget,SLOT(getUsedFileStorage(int)));
  273.55 -	debugWidget->connect(mainBundleMananger,SIGNAL(sendMemoryStorage(int)),debugWidget,SLOT(getUsedMemoryStorage(int)));
  273.56 -	debugWidget->connect(debugWidget,SIGNAL(removeBundle(int)),mainBundleMananger,SLOT(removeBundle(int)));
  273.57 -	debugWidget->connect(debugWidget,SIGNAL(removeAllBundles()),mainBundleMananger,SLOT(removeAllBundles()));
  273.58 -	//Updating bundle destinations
  273.59 -	debugWidget->connect(mainNodeManager,SIGNAL(updatedNodeList(NodeManager*)),mainBundleMananger,SLOT(updateBundlesDestinations(NodeManager*)));
  273.60 -#ifdef DTN_INTERFACE
  273.61 -	//Connect DTN Inteface and Debug widget
  273.62 -	debugWidget->connect(mainDTNInterface,SIGNAL(sendLog(QString)),debugWidget,SLOT(getLog(QString)));
  273.63 -	mainDTNInterface->connect(mainDTNInterface,SIGNAL(sendBundle(Bundle)),mainBundleMananger,SLOT(addBundle(Bundle)));
  273.64 -	mainDTNInterface->connect(mainBundleMananger,SIGNAL(sendDeliveredBundle(Bundle)),mainDTNInterface,SLOT(receiveBundle(Bundle)));
  273.65 -#endif /*DTN_INTERFACE*/
  273.66 -	//Connect Node manager and Debug widget
  273.67 -	debugWidget->connect(mainNodeManager,SIGNAL(sendDebugNodeList(QList<Node>)),debugWidget,SLOT(getNodeList(QList<Node>)));
  273.68 -	debugWidget->connect(neighbourawareness,SIGNAL(sendDebugConList(QList<ConnectionInfo>)),debugWidget,SLOT(getConnectionList(QList<ConnectionInfo>)));
  273.69 -	debugWidget->connect(neighbourawareness,SIGNAL(traffic(int)),debugWidget,SLOT(getTraffic(int)));
  273.70 -	debugWidget->connect(neighbourawareness, SIGNAL(newConnectionStatus(int)), 	debugWidget, SLOT(getNewConnectionStatus(int)));
  273.71 -	debugWidget->connect(neighbourawareness, SIGNAL(newConnection(int)), 	debugWidget, SLOT(getNewConnection(int)));
  273.72 -	debugWidget->connect(neighbourawareness, SIGNAL(removedConnection(int)), debugWidget, SLOT(getRemovedConnection(int)));
  273.73 -#endif /*GUI*/
  273.74 -	delete conf;
  273.75 -	app.exec();
  273.76 -	return 0;
  273.77 -
  273.78 -}
   274.1 --- a/x86/main.h	Wed Jan 03 09:17:10 2007 +0000
   274.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   274.3 @@ -1,2 +0,0 @@
   274.4 -#include <QtGui>
   274.5 -
   275.1 --- a/x86/messageFile.cpp	Wed Jan 03 09:17:10 2007 +0000
   275.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   275.3 @@ -1,135 +0,0 @@
   275.4 -#include <messageFile.h>
   275.5 -#include <readFile.h>
   275.6 -
   275.7 -#ifdef Q_WS_X11
   275.8 -#include <sys/types.h>
   275.9 -#include <sys/stat.h> 
  275.10 -#endif
  275.11 -
  275.12 -#include <QTextStream>
  275.13 -
  275.14 -void MessageFile::set(QString fileName, int fileSize, int fileNo)
  275.15 -{
  275.16 -	msgFileName = fileName;
  275.17 -	msgFileSize = fileSize;
  275.18 -	msgFileNo = fileNo;
  275.19 -	mutex = new QMutex;
  275.20 -	dt = new QDateTime;
  275.21 -	ReadFile conf;
  275.22 -	storagePath=conf.getLogPath();
  275.23 -	dir.setPath(storagePath);
  275.24 -	//create the directory if it does not exist
  275.25 -	if(!dir.exists())
  275.26 -		dir.mkpath(dir.path());
  275.27 -
  275.28 -}
  275.29 -
  275.30 -
  275.31 -void MessageFile::saveMessage(QString& message)
  275.32 -{
  275.33 -	saveMessage(message, false);
  275.34 -}
  275.35 -
  275.36 -void MessageFile::saveMessage(QString& message, bool datetime)
  275.37 -{
  275.38 -	QString dateTime;
  275.39 -	if (datetime == true)
  275.40 -	{
  275.41 -		mutex->lock();
  275.42 -		(*dt) = dt->currentDateTime();
  275.43 -		dateTime = dt->toString("MM/dd/yyyy hh:mm:ss.zzz ");
  275.44 -		mutex->unlock();
  275.45 -	}
  275.46 -	dateTime += message;
  275.47 -	saveMessage(0, dateTime);
  275.48 -
  275.49 -}
  275.50 -
  275.51 -
  275.52 -void MessageFile::saveMessage(int type, QString& message)
  275.53 -{
  275.54 -//	qDebug(message);
  275.55 -	mutex->lock();
  275.56 -	int i = 0;
  275.57 -	bool exists;
  275.58 -	QFile* f;
  275.59 -	f = new QFile(dir.filePath(msgFileName));
  275.60 -	exists = f->exists();
  275.61 -	if (f->open(QIODevice::WriteOnly|QIODevice::Append) == true)
  275.62 -	{
  275.63 -		QTextStream stream(f);
  275.64 -		stream << message;
  275.65 -		stream << "\r\n";
  275.66 -		i = f->size();
  275.67 -//		qDebug(QString("MessageFile size: %1 %2\r\n").arg(i).arg(msgFileSize));
  275.68 -		f->close();
  275.69 -#ifdef Q_WS_X11
  275.70 -		if (exists == false)
  275.71 -			chmod(msgFileName.toAscii(), S_IROTH|S_IWOTH|S_IRGRP|S_IWGRP|S_IRUSR|S_IWUSR);
  275.72 -#endif
  275.73 -	}
  275.74 -	delete f;
  275.75 -	if (i > msgFileSize)
  275.76 -	{
  275.77 -		QDir dir;
  275.78 -		QString fileNameOld;
  275.79 -		QString fileNameNew;
  275.80 -		i = msgFileNo;
  275.81 -		while (i > 1)
  275.82 -		{
  275.83 -			fileNameOld = msgFileName;
  275.84 -			fileNameOld += QString(".%1").arg(i);
  275.85 -			dir.remove(fileNameOld);
  275.86 -			i--;
  275.87 -			fileNameNew = msgFileName;
  275.88 -			fileNameNew += QString(".%1").arg(i);
  275.89 -			dir.rename(fileNameNew, fileNameOld);
  275.90 -		}
  275.91 -		fileNameOld = msgFileName;
  275.92 -		fileNameOld += QString(".%1").arg(i);
  275.93 -		dir.remove(fileNameOld);
  275.94 -		i--;
  275.95 -		fileNameNew = msgFileName;
  275.96 -		dir.rename(fileNameNew, fileNameOld);
  275.97 -	}
  275.98 -	mutex->unlock();
  275.99 -}
 275.100 -
 275.101 -void MessageFile::loadList(QStringList& sl, unsigned int maxItemNo)
 275.102 -{
 275.103 -	mutex->lock();
 275.104 -	sl.clear();
 275.105 -	QString line;
 275.106 -	QFile* f;
 275.107 -	f = new QFile(msgFileName);
 275.108 -	if (f->open(QIODevice::ReadOnly) == true)
 275.109 -	{
 275.110 -		QTextStream stream(f);
 275.111 -		while ((!stream.atEnd()) && (maxItemNo > 0))
 275.112 -		{
 275.113 -			sl.prepend(stream.readLine());
 275.114 -			maxItemNo--;
 275.115 -		}
 275.116 -		f->close();
 275.117 -	}
 275.118 -	mutex->unlock();
 275.119 -}
 275.120 -
 275.121 -void MessageFile::addLog(int indet,QString message)
 275.122 -{
 275.123 -	QString dateTime;
 275.124 -	QString id;
 275.125 -	id.sprintf(" %03d>> ", indet);
 275.126 -	if (1)
 275.127 -	{
 275.128 -		mutex->lock();
 275.129 -		(*dt) = dt->currentDateTime();
 275.130 -		dateTime = dt->toString("MM/dd/yyyy hh:mm:ss.zzz ");
 275.131 -		mutex->unlock();
 275.132 -	}
 275.133 -	dateTime += id;
 275.134 -	dateTime += message;
 275.135 -	saveMessage(0, dateTime);
 275.136 -
 275.137 -}
 275.138 -
   276.1 --- a/x86/messageFile.h	Wed Jan 03 09:17:10 2007 +0000
   276.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   276.3 @@ -1,69 +0,0 @@
   276.4 -#ifndef MESSAGEFILE_H
   276.5 -#define MESSAGEFILE_H
   276.6 -
   276.7 -#include <qobject.h>
   276.8 -#include <qfile.h>
   276.9 -#include <qdir.h>
  276.10 -#include <qmutex.h>
  276.11 -#include <qstringlist.h>
  276.12 -#include <qdatetime.h>
  276.13 -
  276.14 -//! Handles writing and reading logfiles.
  276.15 -/*!
  276.16 - * 
  276.17 - */
  276.18 -class MessageFile : public QObject
  276.19 -{
  276.20 -	Q_OBJECT
  276.21 -
  276.22 -public:
  276.23 -	//! Sets the parameters for message file storage.
  276.24 -	/*!
  276.25 -	 * @param fileName the name of the file(s) to store messages in.
  276.26 -	 * @param fileSize when a message file grows to this size, a new file 
  276.27 -	 * is created.
  276.28 -	 * @param fileNo the value the file number counter should be 
  276.29 -	 * initialized to.
  276.30 -	 */
  276.31 -	virtual void set(QString fileName, int fileSize, int fileNo);
  276.32 -	
  276.33 -	//! Reads a list of messages from the message file.
  276.34 -	/*!
  276.35 -	 * @param sl the stringlist where the result is put.
  276.36 -	 * @param maxItemNo the maximum number of items to read from the file.
  276.37 -	 */
  276.38 -	virtual void loadList(QStringList& sl, unsigned int maxItemNo = 0xFFFFFFFF);
  276.39 -	void MessageFile::addLog(int indet,QString message);
  276.40 -
  276.41 -public slots:
  276.42 -	//! Saves a message to file. (Internal?) 
  276.43 -	/*!
  276.44 -	 * A new file is created if the old one gets too big.
  276.45 -	 * @param type not used.
  276.46 -	 * @param message the message to be saved to file.
  276.47 -	 */
  276.48 -	virtual void saveMessage(int type, QString& message);
  276.49 -	
  276.50 -	//! Saves a message to file without a timestamp.
  276.51 -	virtual void saveMessage(QString& message);
  276.52 -	
  276.53 -	//! Saves a message to disk with optional timestamp.
  276.54 -	/*!
  276.55 -	 * @param message the message to save to file.
  276.56 -	 * @param datetime if true the current date and time (MM/dd/yyyy 
  276.57 -	 * hh:mm:ss:zzz) will be written along with the message. If false, 
  276.58 -	 * no timestamp is written to file along with the message.
  276.59 -	 */
  276.60 -	virtual void saveMessage(QString& message, bool datetime);
  276.61 -
  276.62 -protected:
  276.63 -	QString msgFileName;
  276.64 -	int msgFileSize;
  276.65 -	int msgFileNo;
  276.66 -	QMutex* mutex;
  276.67 -	QDateTime* dt;
  276.68 -	QString storagePath;
  276.69 -	QDir dir;
  276.70 -};
  276.71 -
  276.72 -#endif
   277.1 --- a/x86/msgReadWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
   277.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   277.3 @@ -1,113 +0,0 @@
   277.4 -#include <QtGui>
   277.5 -#include <msgReadWidget.h>
   277.6 -#include <readFile.h>
   277.7 -
   277.8 -
   277.9 -
  277.10 -MsgReadWidget::MsgReadWidget(NodeManager* nodeMng,BundleManager* bundleMng,QWidget *parent)
  277.11 -        : QWidget(parent)
  277.12 -{
  277.13 -	nodeManager = nodeMng;
  277.14 -	bundleManager = bundleMng;
  277.15 -
  277.16 -	dst = new QLineEdit();
  277.17 -	dst->setMaxLength(3); 
  277.18 -	//Options
  277.19 -	QLabel *labelOpt = new QLabel(this);
  277.20 -    labelOpt->setText("Received messages:");
  277.21 -	opt = new QLineEdit();
  277.22 -	opt->setMaxLength(3); 
  277.23 -	//sourceString
  277.24 -	QLabel *srcStr = new QLabel(this);
  277.25 -    srcStr->setText("Content:");
  277.26 -	srcLine = new QLineEdit();
  277.27 -	//destinationString
  277.28 -//	QLabel *dstStr = new QLabel(this);
  277.29 -   // dstStr->setText("DestinationString");
  277.30 -	dstLine = new QLineEdit();
  277.31 -	
  277.32 -	//sendGroup->addWidget(dst, 1, 1);
  277.33 -	//sendGroup->addWidget(combo, 2, 1);
  277.34 -
  277.35 -	//sendGroup->addWidget(labelDst, 0, 1);
  277.36 -	//sendGroup->addWidget(dstLine, 3, 1);
  277.37 -
  277.38 -	//sendGroup->addWidget(labelOpt, 0, 2);
  277.39 -	//sendGroup->addWidget(opt, 1, 2);
  277.40 -
  277.41 -	//sendGroup->addWidget(labelMsg, 4, 0);
  277.42 - 	//sendGroup->addWidget(line, 5, 0, 1, 3);
  277.43 -    //sendGroup->addWidget(send, 3, 2);
  277.44 -	 //   sendGroup->addWidget(file, 6, 2);
  277.45 -	///////////////////////////////////////////////////
  277.46 -	readText = new QTextBrowser(this);
  277.47 -	msgList = new QListWidget;
  277.48 -	//Define final layout
  277.49 -	QVBoxLayout *layout = new QVBoxLayout;
  277.50 -	layout->addWidget(labelOpt);
  277.51 -	layout->addWidget(msgList);
  277.52 -	layout->addWidget(srcStr);
  277.53 -	layout->addWidget(readText);
  277.54 -    setLayout(layout);
  277.55 -	//Define connections
  277.56 -//	connect(line, SIGNAL(returnPressed ()(QString)),label,SLOT(setText(QString)));
  277.57 -	//Prepare update timer
  277.58 -	timer = new QTimer();
  277.59 -	connect(timer, SIGNAL(timeout()), this, SLOT(updateLists()));
  277.60 -	connect(msgList, SIGNAL(itemClicked (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
  277.61 -	connect(msgList, SIGNAL(itemDoubleClicked  (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
  277.62 -
  277.63 -
  277.64 -	timer->start(5000);
  277.65 -	firstTime=0;
  277.66 -	ReadFile conf;
  277.67 -	ackOption=conf.getUseACKS();
  277.68 -	QString msgPath=conf.getMsgPath();
  277.69 -	dir.setPath(msgPath);
  277.70 -	//create the dir if it does not exist
  277.71 -	if(!dir.exists())
  277.72 -		dir.mkpath(dir.path());
  277.73 -	sourceId =conf.getNodeId();
  277.74 -	sourceStr = conf.getNodeName();
  277.75 -
  277.76 -}
  277.77 -
  277.78 -void MsgReadWidget::getBundle(Bundle newBundle)
  277.79 -{
  277.80 -	label->setText(newBundle.getData());
  277.81 -}
  277.82 -
  277.83 -void MsgReadWidget::updateLists()
  277.84 -{
  277.85 -	QList<QString> list;
  277.86 -	list = dir.entryList();
  277.87 -	msgList->clear();
  277.88 -	for (ushort i = 0; i < list.size(); ++i) 
  277.89 -	{
  277.90 -		QListWidgetItem *newItem = new QListWidgetItem;
  277.91 -		newItem->setText(list.at(i));
  277.92 -		msgList->insertItem(i, newItem);
  277.93 -	}
  277.94 -}
  277.95 -
  277.96 -void MsgReadWidget::showMsg(QListWidgetItem * item)
  277.97 -{
  277.98 -	QString fileName;
  277.99 -	if(item!=NULL)
 277.100 -	{
 277.101 -		fileName = item->text();
 277.102 -		if(fileName.size()>2)
 277.103 -		{
 277.104 -			QFile file(dir.filePath(fileName));
 277.105 -			if(file.open(QIODevice::ReadOnly))
 277.106 -			{
 277.107 -				QByteArray data;
 277.108 -				data=file.readAll();
 277.109 -				readText->clear();
 277.110 -				readText->insertPlainText(data);
 277.111 -				file.close();
 277.112 -			}
 277.113 -		}
 277.114 -	}
 277.115 -}
 277.116 -
   278.1 --- a/x86/msgReadWidget.h	Wed Jan 03 09:17:10 2007 +0000
   278.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   278.3 @@ -1,49 +0,0 @@
   278.4 -#ifndef MSGREADWIDGET_H
   278.5 -#define MSGREADWIDGET_H
   278.6 -#include <QtGui>
   278.7 -#include <bundle.h>
   278.8 -#include <nodeManager.h>
   278.9 -#include <bundleManager.h>
  278.10 -
  278.11 -class MsgReadWidget : public QWidget
  278.12 -{
  278.13 -
  278.14 -	Q_OBJECT
  278.15 -
  278.16 -private:
  278.17 -		
  278.18 -	QLineEdit *label;
  278.19 -
  278.20 -	
  278.21 -public:
  278.22 -	QComboBox *combo;
  278.23 -	QTextBrowser *readText;
  278.24 -	QFileDialog *file;
  278.25 -	QLineEdit *src;
  278.26 -	QLineEdit *dst;
  278.27 -	QLineEdit *opt;
  278.28 -	QTextEdit *line;
  278.29 -	QLineEdit *srcLine;
  278.30 -	QLineEdit *dstLine;
  278.31 -	MsgReadWidget(NodeManager*,BundleManager*,QWidget *parent = 0);
  278.32 -	NodeManager* nodeManager;
  278.33 -	BundleManager* bundleManager;
  278.34 -	QTimer* timer;
  278.35 -	bool firstTime;
  278.36 -	QListWidget* msgList;
  278.37 -	QDir dir;
  278.38 -	int sourceId;
  278.39 -	int ackOption;
  278.40 -	QString sourceStr;
  278.41 -
  278.42 -signals:
  278.43 -	
  278.44 -public slots:
  278.45 -	void getBundle(Bundle newBundle);
  278.46 -	void updateLists();
  278.47 -	void showMsg(QListWidgetItem *);
  278.48 -};
  278.49 -
  278.50 -#endif
  278.51 -
  278.52 -
   279.1 --- a/x86/msgWidget.cpp	Wed Jan 03 09:17:10 2007 +0000
   279.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   279.3 @@ -1,233 +0,0 @@
   279.4 -#include <QtGui>
   279.5 -#include <msgWidget.h>
   279.6 -#include <readFile.h>
   279.7 -
   279.8 -
   279.9 -
  279.10 -MsgWidget::MsgWidget(NodeManager* nodeMng,BundleManager* bundleMng,QWidget *parent)
  279.11 -        : QWidget(parent)
  279.12 -{
  279.13 -#ifndef PDAGUI
  279.14 -	setFixedSize(990, 660);
  279.15 -#endif //PDAGUI
  279.16 -	nodeManager = nodeMng;
  279.17 -	bundleManager = bundleMng;
  279.18 -	connect(nodeMng,SIGNAL(updatedNodeList(NodeManager*)),this,SLOT(updatedNodeList(NodeManager*)));
  279.19 -
  279.20 -#ifndef PDAGUI
  279.21 -	//Send message group
  279.22 -	QGroupBox *sendBox = new QGroupBox("Send message");
  279.23 -#endif //PDAGUI
  279.24 -    //Source
  279.25 -    QLabel *labelSrc = new QLabel(this);
  279.26 -    labelSrc->setText("Select destination:");
  279.27 -	src = new QLineEdit();
  279.28 -	src->setMaxLength(3); 
  279.29 -	//Destination
  279.30 -	QLabel *labelDst = new QLabel(this);
  279.31 -    labelDst->setText("Send message:");
  279.32 -	combo = new QComboBox(this);
  279.33 -	//Message
  279.34 -	QLabel *labelMsg = new QLabel(this);
  279.35 -    labelMsg->setText("Type message here:");
  279.36 -	line = new QTextEdit();
  279.37 -
  279.38 -#ifndef PDAGUI
  279.39 -	dst = new QLineEdit();
  279.40 -	dst->setMaxLength(3); 
  279.41 -	//Options
  279.42 -	QLabel *labelOpt = new QLabel(this);
  279.43 -    labelOpt->setText("Received messages:");
  279.44 -	opt = new QLineEdit();
  279.45 -	opt->setMaxLength(3); 
  279.46 -	//sourceString
  279.47 -	QLabel *srcStr = new QLabel(this);
  279.48 -    srcStr->setText("Content:");
  279.49 -	srcLine = new QLineEdit();
  279.50 -	//destinationString
  279.51 -	QLabel *dstStr = new QLabel(this);
  279.52 -   // dstStr->setText("DestinationString");
  279.53 -	dstLine = new QLineEdit();
  279.54 -#endif //PDAGUI
  279.55 -	//Send
  279.56 -	QPushButton *send= new QPushButton("Send", this);
  279.57 -	//File
  279.58 -	//QFileDialog *file = new QFileDialog(this);	
  279.59 -	//Final grid layout
  279.60 -    QGridLayout *sendGroup = new QGridLayout;
  279.61 -	sendGroup->addWidget(labelSrc, 0, 0);
  279.62 -    sendGroup->addWidget(combo, 1, 0);
  279.63 -
  279.64 -	sendGroup->addWidget(labelDst, 0, 1);
  279.65 -    sendGroup->addWidget(send, 1, 1);
  279.66 -	sendGroup->addWidget(labelMsg, 2, 0);
  279.67 -	sendGroup->addWidget(line, 3, 0, 1, 2);
  279.68 -
  279.69 -	//sendGroup->addWidget(dst, 1, 1);
  279.70 -	//sendGroup->addWidget(combo, 2, 1);
  279.71 -
  279.72 -	//sendGroup->addWidget(labelDst, 0, 1);
  279.73 -	//sendGroup->addWidget(dstLine, 3, 1);
  279.74 -
  279.75 -	//sendGroup->addWidget(labelOpt, 0, 2);
  279.76 -	//sendGroup->addWidget(opt, 1, 2);
  279.77 -
  279.78 -	//sendGroup->addWidget(labelMsg, 4, 0);
  279.79 - 	//sendGroup->addWidget(line, 5, 0, 1, 3);
  279.80 -    //sendGroup->addWidget(send, 3, 2);
  279.81 -	 //   sendGroup->addWidget(file, 6, 2);
  279.82 -#ifdef PDAGUI
  279.83 -	setLayout(sendGroup);
  279.84 -#else
  279.85 -	sendBox->setFixedSize(450, 620);
  279.86 -	sendBox->setLayout(sendGroup);
  279.87 -#endif //PDAGUI
  279.88 -	///////////////////////////////////////////////////
  279.89 -#ifndef PDAGUI
  279.90 -	QGroupBox *readBox = new QGroupBox("Read message");
  279.91 -	readText = new QTextBrowser(this);
  279.92 -	msgList = new QListWidget;
  279.93 -	//Final grid layout
  279.94 -    QGridLayout *readGroup = new QGridLayout;
  279.95 -	readGroup->addWidget(labelOpt, 0, 0);
  279.96 -	readGroup->addWidget(msgList, 1, 0);
  279.97 -	readGroup->addWidget(srcStr, 2, 0);
  279.98 -	readGroup->addWidget(readText, 3, 0);
  279.99 - 	readBox->setFixedSize(450, 620);
 279.100 -	readBox->setLayout(readGroup);
 279.101 -	Bundle *msg = new Bundle; //is this used for anything???
 279.102 -	//Define final layout
 279.103 -	QVBoxLayout *layout = new QVBoxLayout;
 279.104 -	layout->setDirection(QBoxLayout::LeftToRight);
 279.105 -    layout->addWidget(sendBox);    
 279.106 -    layout->addWidget(readBox);    
 279.107 -    setLayout(layout);
 279.108 -	//Define connections
 279.109 -//	connect(line, SIGNAL(returnPressed ()(QString)),label,SLOT(setText(QString)));
 279.110 -#endif //PDAGUI
 279.111 -	//Prepare update timer
 279.112 -	timer = new QTimer();
 279.113 -#ifndef PDAGUI
 279.114 -	connect(timer, SIGNAL(timeout()), this, SLOT(updateLists()));
 279.115 -	connect(msgList, SIGNAL(itemClicked (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
 279.116 -	connect(msgList, SIGNAL(itemDoubleClicked  (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
 279.117 -#endif //PDAGUI
 279.118 -	connect(nodeManager, SIGNAL(updatedNodeList(NodeManager*)), this, SLOT(updatedNodeList(NodeManager* )));
 279.119 -
 279.120 -	bool b = connect(send,SIGNAL(clicked(void)),this, SLOT(composeBundle(void)) );
 279.121 -
 279.122 -
 279.123 -
 279.124 -	timer->start(5000);
 279.125 -	firstTime=0;
 279.126 -	ReadFile conf;
 279.127 -	ackOption=conf.getUseACKS();
 279.128 -	QString msgPath=conf.getMsgPath();
 279.129 -	dir.setPath(msgPath);
 279.130 -	//create the dir if it does not exist
 279.131 -	if(!dir.exists())
 279.132 -		dir.mkpath(dir.path());
 279.133 -	sourceId =conf.getNodeId();
 279.134 -	sourceStr = conf.getNodeName();
 279.135 -
 279.136 -}
 279.137 -
 279.138 -void MsgWidget::updatedNodeList(NodeManager* ptr)
 279.139 -{
 279.140 -	//First time we update combobox
 279.141 -	QList <Node> nodeList;
 279.142 -	nodeList = nodeManager->getNodeList();
 279.143 -	combo->clear();
 279.144 -	for (ushort i = 0; i < nodeList.size(); ++i) 
 279.145 -	{
 279.146 -			combo->insertItem(i,nodeList.at(i).nodeName);
 279.147 -	}
 279.148 -	firstTime=1;
 279.149 -
 279.150 -}
 279.151 -
 279.152 -
 279.153 -void MsgWidget::getBundle(Bundle newBundle)
 279.154 -{
 279.155 -	label->setText(newBundle.getData());
 279.156 -}
 279.157 -
 279.158 -void MsgWidget::updateLists()
 279.159 -{
 279.160 -	if(firstTime==0)
 279.161 -	{
 279.162 -		//First time we update combobox
 279.163 -		QList <Node> nodeList;
 279.164 -		nodeList = nodeManager->getNodeList();
 279.165 -		combo->clear();
 279.166 -		for (ushort i = 0; i < nodeList.size(); ++i) 
 279.167 -		{
 279.168 -			combo->insertItem(i,nodeList.at(i).nodeName);
 279.169 -		}
 279.170 -		firstTime=1;
 279.171 -	}
 279.172 -#ifndef PDAGUI
 279.173 -	QList<QString> list;
 279.174 -	list = dir.entryList();
 279.175 -	msgList->clear();
 279.176 -	for (ushort i = 0; i < list.size(); ++i) 
 279.177 -	{
 279.178 -		QListWidgetItem *newItem = new QListWidgetItem;
 279.179 -		newItem->setText(list.at(i));
 279.180 -		msgList->insertItem(i, newItem);
 279.181 -	}
 279.182 -#endif //PDAGUI
 279.183 -}
 279.184 -
 279.185 -void MsgWidget::showMsg(QListWidgetItem * item)
 279.186 -{
 279.187 -	QString fileName;
 279.188 -	if(item!=NULL)
 279.189 -	{
 279.190 -	fileName = item->text();
 279.191 -	if(fileName.size()>2)
 279.192 -	{
 279.193 -	
 279.194 -	QFile file(dir.filePath(fileName));
 279.195 -	if(file.open(QIODevice::ReadOnly))
 279.196 -	{
 279.197 -		QByteArray data;
 279.198 -		data=file.readAll();
 279.199 -		readText->clear();
 279.200 -		readText->insertPlainText(data);
 279.201 -		file.close();
 279.202 -	}
 279.203 -	}
 279.204 -}}
 279.205 -
 279.206 -
 279.207 -
 279.208 -
 279.209 -
 279.210 -void MsgWidget::composeBundle()
 279.211 -{
 279.212 -	Bundle newBundle;
 279.213 -	QString stringData;// = line->text();
 279.214 -	QByteArray data = line->toPlainText().toAscii();
 279.215 -	if(combo->count()>0)
 279.216 -	{
 279.217 -
 279.218 -		int dstId=nodeManager->nodeList.at(combo->currentIndex()).nodeId;
 279.219 -		QString dstStr = combo->itemText(combo->currentIndex()); 
 279.220 -		int option;
 279.221 -		option=0x04;
 279.222 -		//If acking is enabled
 279.223 -		if(ackOption==1)
 279.224 -		{
 279.225 -			//We set the ACKOption bit and set the ACK bit 
 279.226 -			option=option|0x01;
 279.227 -		}
 279.228 -		newBundle.setContent(bundleManager->getSeq(),sourceId,dstId,data,option,sourceStr.toAscii(),dstStr.toAscii());
 279.229 -		emit sendBundle(newBundle);
 279.230 -		 QMessageBox::information(this, "PRoPHET notSoIM",
 279.231 -		"Message sent!\n");
 279.232 -	}
 279.233 -
 279.234 -}
 279.235 -
 279.236 -
   280.1 --- a/x86/msgWidget.h	Wed Jan 03 09:17:10 2007 +0000
   280.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   280.3 @@ -1,52 +0,0 @@
   280.4 -#ifndef MSGWIDGET_H
   280.5 -#define MSGWIDGET_H
   280.6 -#include <QtGui>
   280.7 -#include <bundle.h>
   280.8 -#include <nodeManager.h>
   280.9 -#include <bundleManager.h>
  280.10 -
  280.11 -class MsgWidget : public QWidget
  280.12 -{
  280.13 -
  280.14 -	Q_OBJECT
  280.15 -
  280.16 -private:
  280.17 -		
  280.18 -	QLineEdit *label;
  280.19 -
  280.20 -	
  280.21 -public:
  280.22 -	QComboBox *combo;
  280.23 -	QTextBrowser *readText;
  280.24 -	QFileDialog *file;
  280.25 -	QLineEdit *src;
  280.26 -	QLineEdit *dst;
  280.27 -	QLineEdit *opt;
  280.28 -	QTextEdit *line;
  280.29 -	QLineEdit *srcLine;
  280.30 -	QLineEdit *dstLine;
  280.31 -	MsgWidget(NodeManager*,BundleManager*,QWidget *parent = 0);
  280.32 -	NodeManager* nodeManager;
  280.33 -	BundleManager* bundleManager;
  280.34 -	QTimer* timer;
  280.35 -	bool firstTime;
  280.36 -	QListWidget* msgList;
  280.37 -	QDir dir;
  280.38 -	int sourceId;
  280.39 -	int ackOption;
  280.40 -	QString sourceStr;
  280.41 -
  280.42 -signals:
  280.43 -	void sendBundle(Bundle);
  280.44 -	
  280.45 -public slots:
  280.46 -        void composeBundle();
  280.47 -	void getBundle(Bundle newBundle);
  280.48 -	void updateLists();
  280.49 -	void updatedNodeList(NodeManager* ptr);
  280.50 -	void showMsg(QListWidgetItem *);
  280.51 -};
  280.52 -
  280.53 -#endif
  280.54 -
  280.55 -
   281.1 --- a/x86/neighbourAwareness.cpp	Wed Jan 03 09:17:10 2007 +0000
   281.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   281.3 @@ -1,407 +0,0 @@
   281.4 -#include <QtCore>
   281.5 -#include <QtNetwork>
   281.6 -#include <connection.h>
   281.7 -#include <dataPacket.h>
   281.8 -#include <neighbourAwareness.h>
   281.9 -#include <stdio.h>
  281.10 -#include <readFile.h>
  281.11 -#include <main.h>
  281.12 -#include <messageFile.h>
  281.13 -#ifdef Q_WS_X11
  281.14 -#include <sys/types.h>
  281.15 -#include <sys/stat.h> 
  281.16 -#endif
  281.17 -//extern MessageFile *log;
  281.18 -
  281.19 -#define VERSION 6
  281.20 -#define HELLO_DATAGRAM "PROPHET"
  281.21 -//#define ALIVE 15
  281.22 -#define TERMINATOR "yxxyyaxayax"
  281.23 -#define TERMINATOR2 "zsdfgfdgfdg"
  281.24 -struct DatagramHeader
  281.25 -{
  281.26 -	qint32 version;
  281.27 -	qint32 lenght;
  281.28 -	qint32 checkSum;
  281.29 -	qint32 nr;
  281.30 -};
  281.31 -
  281.32 -ConnectionInfo::ConnectionInfo(QObject *parent)
  281.33 -{
  281.34 -	ReadFile conf;
  281.35 -	alive=conf.getAlive();
  281.36 -	data.clear();
  281.37 -}
  281.38 -
  281.39 -
  281.40 -ConnectionInfo& ConnectionInfo::operator=(const ConnectionInfo& other)
  281.41 -{
  281.42 - id = other.id;
  281.43 - alive = other.alive;
  281.44 - ip = other.ip;
  281.45 - data = other.data;
  281.46 - tcpSocket = other.tcpSocket;
  281.47 - isClient = other.isClient;
  281.48 - conptr= other.conptr;
  281.49 -
  281.50 - return *this;
  281.51 -}
  281.52 -
  281.53 -ConnectionInfo::ConnectionInfo(const ConnectionInfo& other)
  281.54 -{
  281.55 - id = other.id;
  281.56 - alive = other.alive;
  281.57 - ip = other.ip;
  281.58 - data = other.data;
  281.59 - tcpSocket = other.tcpSocket;
  281.60 - isClient = other.isClient;
  281.61 - conptr= other.conptr;
  281.62 -}	
  281.63 -
  281.64 -
  281.65 -NeighAwareServer::NeighAwareServer(QObject* parent) : QTcpServer(parent)
  281.66 -{
  281.67 -}
  281.68 -
  281.69 -void NeighAwareServer::incomingConnection(int socketDescriptor)
  281.70 -{ 
  281.71 -	QTcpSocket* newSocket = new QTcpSocket(this);
  281.72 -	newSocket->setSocketDescriptor(socketDescriptor);
  281.73 -	bool permitNewConnection = false;
  281.74 -	emit newConnectionEstablished(newSocket, permitNewConnection);
  281.75 -	if (permitNewConnection == false)
  281.76 -	{
  281.77 -		newSocket->deleteLater();
  281.78 -		newSocket->disconnectFromHost();
  281.79 -	}
  281.80 -}	
  281.81 -	
  281.82 -
  281.83 -NeighAware::NeighAware(BundleManager* bundleMng, NodeManager* nodeMng)
  281.84 -{
  281.85 -	nodeManager = nodeMng;
  281.86 -	bundleManager = bundleMng;
  281.87 -	terminator.clear();
  281.88 -	terminator.append(TERMINATOR);
  281.89 -	terminator.append(TERMINATOR2);
  281.90 -
  281.91 -	file = new ReadFile;
  281.92 -	myip=file->getNodeIp();
  281.93 -	myip2=file->getNodeIp2();
  281.94 -	broadcast=file->getBroadcast();
  281.95 -	nodeId=file->getNodeId();
  281.96 -	nodeName=file->getNodeName();
  281.97 -	ALIVE=file->getAlive();
  281.98 -	numid = 0;
  281.99 -
 281.100 -
 281.101 -
 281.102 -	tcpServer = new NeighAwareServer(this);
 281.103 -	bool b = connect(tcpServer, SIGNAL(newConnectionEstablished(QTcpSocket*, bool&)), this, SLOT(newConnectionEstablished(QTcpSocket*, bool&)));
 281.104 -	tcpServer->listen(myip,30001);
 281.105 -
 281.106 -	udpSocketp = new QUdpSocket(this);
 281.107 -	udpSocketp->bind(30000);
 281.108 -    connect(udpSocketp, SIGNAL(readyRead()),this, SLOT(processPingDatagrams()));
 281.109 -	
 281.110 -	broadcastTimer = new QTimer(this);
 281.111 -	connect(broadcastTimer, SIGNAL(timeout()), this, SLOT(broadcastDatagram()));
 281.112 -	int timer =file->getBroadcastTimer();
 281.113 -	broadcastTimer->start(timer);
 281.114 -
 281.115 -	//DEBUG
 281.116 -	log = new MessageFile;
 281.117 -	log->set("connections.log", 1000000, 5);
 281.118 -}
 281.119 -
 281.120 -void NeighAware::newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection)
 281.121 -{ 
 281.122 -	QHostAddress ip;
 281.123 -	ip = newSocket->peerAddress();
 281.124 -	QString bla = ip.toString();
 281.125 -	int index=-1;
 281.126 -	for(int i=0;i<connectionlist.size();i++)
 281.127 -	{
 281.128 -		QString bla = ip.toString();
 281.129 -		if(ip == connectionlist.at(i).ip)
 281.130 -			index=i;
 281.131 -	}
 281.132 -	if(index==-1)
 281.133 -	{
 281.134 -		newSocket->connect(newSocket,SIGNAL(readyRead()),this,SLOT(processPendingDatagrams()));
 281.135 -		newSocket->connect(newSocket,SIGNAL(disconnected()),this,SLOT(stateChanged()));
 281.136 -		newSocket->connect(newSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(errorDecode(QAbstractSocket::SocketError)));
 281.137 -		//We add a new connection to the list
 281.138 -		ConnectionInfo connectioninfo;
 281.139 -		//Adding
 281.140 -		connectioninfo.conptr = new Connection(numid,file->getNodeId(),file->getNodeName(),nodeManager,bundleManager,this);
 281.141 -		newSocket->connect(connectioninfo.conptr,SIGNAL(sendDataPacket(DataPacket)),this,SLOT(sendDatagram(DataPacket)));
 281.142 -		newSocket->connect(connectioninfo.conptr,SIGNAL(newConnectionStatus(int)),this,SLOT(getNewConnectionStatus(int)));
 281.143 -
 281.144 -		///
 281.145 -		connectioninfo.ip=ip;
 281.146 -		connectioninfo.id=numid;
 281.147 -		connectioninfo.alive=ALIVE;
 281.148 -		connectioninfo.tcpSocket = newSocket;
 281.149 -		connectioninfo.isClient = false;
 281.150 -
 281.151 -
 281.152 -   			if(connectioninfo.tcpSocket->waitForConnected(500))
 281.153 -			{
 281.154 -			    QHostAddress tmp=connectioninfo.ip;
 281.155 -    			    QString logString;
 281.156 -			    logString.append("New connection(S):");	
 281.157 -			    logString.append(tmp.toString());
 281.158 -			    log->addLog(0,logString);
 281.159 -			    connectionlist << connectioninfo;
 281.160 -				emit newConnection(connectioninfo.id);
 281.161 -			}
 281.162 -			else
 281.163 -			{
 281.164 -			    QHostAddress tmp=connectioninfo.ip;
 281.165 -			    QString logString;
 281.166 -			    logString.append("Drop connection(S):");	
 281.167 -			    logString.append(tmp.toString());
 281.168 -			    log->addLog(0,logString);
 281.169 -			    delete connectioninfo.conptr;
 281.170 -			    delete connectioninfo.tcpSocket;
 281.171 -			}
 281.172 -
 281.173 -		
 281.174 -		numid++;
 281.175 -		permitNewConnection=true;
 281.176 -		sendDebugConList(connectionlist);
 281.177 -	}
 281.178 -}
 281.179 -
 281.180 -void NeighAware::broadcastDatagram()
 281.181 -{  	
 281.182 -	QByteArray datagram=HELLO_DATAGRAM;
 281.183 -	QString debug = broadcast.toString();
 281.184 - 	udpSocketp->writeDatagram(datagram.data(), datagram.size(), broadcast, 30000);
 281.185 -	emit traffic(datagram.size());
 281.186 -	for(int i=0;i<connectionlist.count();i++)
 281.187 -	{
 281.188 -		connectionlist[i].alive--;
 281.189 -		if(connectionlist[i].alive<=0)
 281.190 -		{
 281.191 -			
 281.192 -			connectionlist[i].tcpSocket->disconnectFromHost();
 281.193 -			emit removedConnection(connectionlist[i].id);
 281.194 -			delete connectionlist[i].tcpSocket;
 281.195 -			delete connectionlist[i].conptr;
 281.196 -			//Emiting removed connection to GUI
 281.197 -			emit removedConnection(connectionlist[i].id);
 281.198 -			connectionlist.removeAt(i);	
 281.199 -			//Emiting empty list to GUI
 281.200 -			if(connectionlist.size()==0)
 281.201 -				emit newConnectionStatus(0);
 281.202 -			sendDebugConList(connectionlist);
 281.203 -		}
 281.204 -		sendDebugConList(connectionlist);
 281.205 -	}
 281.206 -	QFile f("connections.txt");
 281.207 -	if (f.open(QIODevice::WriteOnly) == true)
 281.208 -	{
 281.209 -		for(int i=0;i<connectionlist.size();i++)
 281.210 -		{
 281.211 -			f.write(connectionlist[i].ip.toString().toAscii());
 281.212 -			if (connectionlist[i].isClient == true)
 281.213 -				f.write(QString("\tclient\r\n").toAscii());
 281.214 -			else
 281.215 -				f.write(QString("\tserver\r\n").toAscii());
 281.216 -		}
 281.217 -		f.close();
 281.218 -	}
 281.219 -
 281.220 - }
 281.221 -
 281.222 -void NeighAware::processPingDatagrams()
 281.223 -{
 281.224 -	while (udpSocketp->hasPendingDatagrams()) 
 281.225 -	{
 281.226 -        QByteArray datagram;
 281.227 -		
 281.228 -		quint16 port;
 281.229 -		QHostAddress ip;
 281.230 -		bool insert=true;
 281.231 -		datagram.resize(udpSocketp->pendingDatagramSize());
 281.232 -        udpSocketp->readDatagram(datagram.data(), datagram.size(), &ip, &port);
 281.233 -		QString bla = ip.toString();
 281.234 -		//Is the node in the list?
 281.235 -		if ((ip==myip) || (ip==myip2))
 281.236 -		{
 281.237 -			insert=false;
 281.238 -		}
 281.239 -		else
 281.240 -		{
 281.241 -			for(int i=0;i<connectionlist.size();i++)
 281.242 -			{
 281.243 -			 
 281.244 -				if(connectionlist.at(i).ip ==ip)
 281.245 -				{ 
 281.246 -					insert=false;
 281.247 -				}
 281.248 -			}
 281.249 -		}
 281.250 -		//If not we insert it.
 281.251 -		if(insert==true)
 281.252 -		{
 281.253 -			QTcpSocket* newSocket = new QTcpSocket(this);
 281.254 -			newSocket->connect(newSocket,SIGNAL(readyRead()),this,SLOT(processPendingDatagrams()));
 281.255 -			newSocket->connect(newSocket,SIGNAL(disconnected()),this,SLOT(stateChanged()));
 281.256 -			newSocket->connect(newSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(errorDecode(QAbstractSocket::SocketError)));
 281.257 -			newSocket->connectToHost(ip, 30001);
 281.258 -			//We add a new connection to the list
 281.259 -			ConnectionInfo connectioninfo;
 281.260 -			//Adding
 281.261 -			connectioninfo.conptr = new Connection(numid,file->getNodeId(),file->getNodeName(),nodeManager,bundleManager,this);
 281.262 -			newSocket->connect(connectioninfo.conptr,SIGNAL(sendDataPacket(DataPacket)),this,SLOT(sendDatagram(DataPacket)));
 281.263 -			newSocket->connect(connectioninfo.conptr,SIGNAL(newConnectionStatus(int)),this,SLOT(getNewConnectionStatus(int)));
 281.264 -
 281.265 -			///
 281.266 -			connectioninfo.ip=ip;
 281.267 -			connectioninfo.id=numid;
 281.268 -			connectioninfo.alive=ALIVE;
 281.269 -			connectioninfo.tcpSocket = newSocket;
 281.270 -			connectioninfo.isClient = true;
 281.271 -
 281.272 -			
 281.273 -    			if(connectioninfo.tcpSocket->waitForConnected(500))
 281.274 -			{
 281.275 -			    QHostAddress tmp=connectioninfo.ip;
 281.276 -    			    QString logString;
 281.277 -			    logString.append("New connection(C):");	
 281.278 -			    logString.append(tmp.toString());
 281.279 -			    log->addLog(0,logString);
 281.280 -				emit newConnection(connectioninfo.id);
 281.281 -			    connectionlist << connectioninfo;
 281.282 -			}
 281.283 -			else
 281.284 -			{
 281.285 -			    QHostAddress tmp=connectioninfo.ip;
 281.286 -			    QString logString;
 281.287 -			    logString.append("Drop connection(C):");	
 281.288 -			    logString.append(tmp.toString());
 281.289 -			    log->addLog(0,logString);
 281.290 -    			    connectioninfo.tcpSocket->disconnectFromHost();
 281.291 -			    delete connectioninfo.conptr;
 281.292 -			    delete connectioninfo.tcpSocket;
 281.293 -			}
 281.294 -			numid++;
 281.295 -			sendDebugConList(connectionlist);
 281.296 -		}
 281.297 -	}
 281.298 -}
 281.299 -
 281.300 -
 281.301 -void NeighAware::sendDatagram(DataPacket datapacket)
 281.302 -{  	
 281.303 -	QHostAddress ip;
 281.304 -	for(int i=0;i<connectionlist.size();i++)
 281.305 -	{
 281.306 -		if(connectionlist.at(i).id==datapacket.id) 
 281.307 -		{
 281.308 -			ip=connectionlist.at(i).ip;
 281.309 -
 281.310 -			//Preparing heder
 281.311 -			QByteArray newDatagram;
 281.312 -			newDatagram.append(datapacket.data);
 281.313 -			//Appending terminator
 281.314 -			newDatagram.append(terminator);
 281.315 -			//Sending datagram 
 281.316 -			connectionlist[i].tcpSocket->write(newDatagram);
 281.317 -			emit traffic(newDatagram.size());
 281.318 -		}
 281.319 -	}
 281.320 -
 281.321 -
 281.322 -}
 281.323 -
 281.324 -
 281.325 -
 281.326 -void NeighAware::stateChanged()
 281.327 -{
 281.328 -	QString logString;
 281.329 -	logString.append(">>>>>>>>>>>>State:");
 281.330 -	log->addLog(0,logString);
 281.331 -
 281.332 -	for(int i=0;i<connectionlist.count();i++)
 281.333 -	{
 281.334 -		if((connectionlist.at(i).tcpSocket->state() != QAbstractSocket::ConnectedState))    
 281.335 -		{
 281.336 -			connectionlist[i].alive=0;
 281.337 -
 281.338 -			sendDebugConList(connectionlist);
 281.339 -		}
 281.340 -	}
 281.341 -}
 281.342 -
 281.343 -void NeighAware::errorDecode(QAbstractSocket::SocketError error)
 281.344 -{
 281.345 -	int i=error;
 281.346 -	QString logString;
 281.347 -	logString.append(QString("Error %1\n\r").arg((int)error).toAscii());
 281.348 -	log->addLog(0,logString);
 281.349 -	
 281.350 -	for(int i=0;i<connectionlist.count();i++)
 281.351 -	{
 281.352 -		if((connectionlist.at(i).tcpSocket->state() != QAbstractSocket::ConnectedState))    
 281.353 -		{
 281.354 -
 281.355 -			connectionlist[i].alive=0;
 281.356 -			sendDebugConList(connectionlist);
 281.357 -		}
 281.358 -	}
 281.359 -
 281.360 -			QFile f("error.txt");
 281.361 -		if (f.open(QIODevice::WriteOnly|QIODevice::Append) == true)
 281.362 -		{
 281.363 -			f.write(QString("Error %1\n\r").arg((int)error).toAscii());
 281.364 -			f.close();
 281.365 -		}
 281.366 -
 281.367 -}
 281.368 -
 281.369 -
 281.370 -
 281.371 -void NeighAware::processPendingDatagrams()
 281.372 -{
 281.373 -	for(int i=0;i<connectionlist.size();i++)
 281.374 -	{
 281.375 -		QByteArray packetPart;
 281.376 -		packetPart=connectionlist[i].tcpSocket->readAll();
 281.377 -		emit traffic(packetPart.size());
 281.378 -		if(packetPart.size()>0)
 281.379 -		{
 281.380 -			//Updating alive variable
 281.381 -			connectionlist[i].alive=ALIVE;
 281.382 -			//We add datagram to data
 281.383 -			connectionlist[i].data.append(packetPart);
 281.384 -			int idx;
 281.385 -			idx = connectionlist[i].data.indexOf(terminator,0);
 281.386 -			while(idx != -1)
 281.387 -			{
 281.388 -				//We remove the terminator
 281.389 -				QByteArray tempData;
 281.390 -				tempData=connectionlist[i].data.mid(0,idx);
 281.391 -				connectionlist[i].data.remove(0,(idx+terminator.size()));
 281.392 -				DataPacket send;
 281.393 -				send.data.append(tempData);
 281.394 -				send.id=connectionlist[i].id;
 281.395 -				connectionlist[i].conptr->receiveDatagram(send);
 281.396 -				idx = connectionlist[i].data.indexOf(terminator,0);
 281.397 -			}
 281.398 -			
 281.399 -		}
 281.400 -	}
 281.401 -}
 281.402 -
 281.403 -void NeighAware::getNewConnectionStatus(int status)
 281.404 -{
 281.405 -	emit newConnectionStatus(status);
 281.406 -}
 281.407 -		
 281.408 -		
 281.409 -
 281.410 -		
   282.1 --- a/x86/neighbourAwareness.h	Wed Jan 03 09:17:10 2007 +0000
   282.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   282.3 @@ -1,177 +0,0 @@
   282.4 -#ifndef NEIGHBOURAWARENESS_H
   282.5 -#define NEIGHBOURAWARENESS_H
   282.6 -
   282.7 -//#include <iostream.h>
   282.8 -#include <QtCore>
   282.9 -#include <QtNetwork>
  282.10 -#include <connection.h>
  282.11 -#include <dataPacket.h>
  282.12 -#include <neighbourAwareness.h>
  282.13 -#include <bundleManager.h>
  282.14 -#include <nodeManager.h>
  282.15 -#include <messageFile.h>
  282.16 -#include <readFile.h>
  282.17 -
  282.18 -
  282.19 -/*! \brief This class carries data concerning a certain connection. 
  282.20 - * Instantiated for each connection.
  282.21 - */
  282.22 -class ConnectionInfo : public QObject 
  282.23 -{
  282.24 -	Q_OBJECT
  282.25 -	public:
  282.26 -	ConnectionInfo(QObject *parent = 0);
  282.27 -	ConnectionInfo(const ConnectionInfo& other);
  282.28 -	ConnectionInfo& operator=(const ConnectionInfo& other);
  282.29 -	QHostAddress ip;
  282.30 -	QByteArray data;
  282.31 -	QTcpSocket* tcpSocket;
  282.32 -	QTcpSocket* clientTcpSocket;
  282.33 -	Connection *conptr;
  282.34 -	int alive;
  282.35 -	int id;
  282.36 -	bool isClient;
  282.37 -};
  282.38 -
  282.39 -class NeighAwareServer : public QTcpServer
  282.40 -{
  282.41 -	Q_OBJECT
  282.42 -
  282.43 -public:
  282.44 -	NeighAwareServer(QObject *parent = 0);
  282.45 -
  282.46 -protected slots:
  282.47 -	virtual void incomingConnection(int socketDescripton);
  282.48 -
  282.49 -signals:
  282.50 -	void newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection);
  282.51 -
  282.52 -};
  282.53 -
  282.54 -
  282.55 -/*! \brief This class detects when two nodes meet to initiate communication. 
  282.56 - *
  282.57 - * A ConnectionInfo and the associated Connection object is created for each 
  282.58 - * encounter.
  282.59 - */
  282.60 -class NeighAware : public QObject 
  282.61 -{
  282.62 -
  282.63 -
  282.64 -Q_OBJECT
  282.65 -
  282.66 -public:
  282.67 -
  282.68 -	NeighAware(BundleManager*, NodeManager*);
  282.69 -	NodeManager *nodeManager;
  282.70 -	BundleManager *bundleManager;
  282.71 -
  282.72 -	QList<ConnectionInfo> connectionlist;
  282.73 -   	QByteArray terminator; 	
  282.74 -
  282.75 -	QHostAddress myip;
  282.76 -	QHostAddress myip2;
  282.77 -	QHostAddress broadcast;
  282.78 -	int nodeId;
  282.79 -	QString nodeName;
  282.80 -	int ALIVE;
  282.81 -	int numid;
  282.82 -	ReadFile *file;
  282.83 -
  282.84 -	NeighAwareServer *tcpServer;
  282.85 -	QUdpSocket *udpSocketp;
  282.86 -	QTimer *broadcastTimer;
  282.87 -	QTimer *testTimer;
  282.88 -	MessageFile* log;
  282.89 -
  282.90 -	int logOption;
  282.91 -	
  282.92 -public slots:
  282.93 -	/*!
  282.94 -	 * Expects notification of when new connections are established. It 
  282.95 -	 * sets up the ConnectionInfo and Connection objects, and also connects 
  282.96 -	 * the signals for the new connection. This slot is connected to the 
  282.97 -	 * TcpServer.
  282.98 -	 * @param newSocket the socket of the TCP connection.
  282.99 -	 * @param permitNewConnection this bool will be true if the connection 
 282.100 -	 * was permitted, otherwise false.
 282.101 -	 */
 282.102 -	void newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection);
 282.103 -
 282.104 -   	/*!
 282.105 -	 * Writes any socket errors to the file error.txt.
 282.106 -	 */
 282.107 -	void errorDecode(QAbstractSocket::SocketError);
 282.108 -	
 282.109 -	/*!
 282.110 -	 * Removes items with out of date states from the connectionlist.
 282.111 -	 */
 282.112 -	void stateChanged();
 282.113 -	
 282.114 -	/*!
 282.115 -	 * Broadcasts a HELLO_DATAGRAM on the UDP socket 30000.
 282.116 -	 */
 282.117 -	void broadcastDatagram();
 282.118 -	
 282.119 -	/*!
 282.120 -	 * Sends the specified packet on the TCP socket.
 282.121 -	 */
 282.122 -	void sendDatagram(DataPacket datapacket);
 282.123 -
 282.124 -	/*!
 282.125 -	 * Receives packets from all TCP connections and dispatches them to 
 282.126 -	 * the appropriate Connection object.
 282.127 -	 */
 282.128 -	void processPendingDatagrams();
 282.129 -	
 282.130 -	/*!
 282.131 -	 * Processes all datagrams received on the UDP socket and creates new 
 282.132 -	 * Connection objects if neccessary.
 282.133 -	 */
 282.134 -	void processPingDatagrams();
 282.135 -	
 282.136 -	/*!
 282.137 -	 * Used just to forward new connection state to the GUI
 282.138 -	 */
 282.139 -	void getNewConnectionStatus(int);
 282.140 -signals:
 282.141 -	/*!
 282.142 -	 * Sends a list of ConnectionInfo objects to the GUI to be 
 282.143 -	 * displayed/updated.
 282.144 -	 * @param a QList of ConnectionInfo objects.
 282.145 -	 */
 282.146 -	void sendDebugConList(QList<ConnectionInfo>);
 282.147 -	/*!
 282.148 -	 * Passes a datagram reveived on the network interface to the TLV. Not used.
 282.149 -	 * @param dataPacket the packet that was received.
 282.150 -	 */
 282.151 -	void passDatagram(DataPacket);
 282.152 -	
 282.153 -	/*!
 282.154 -	 * Signals the size of every sent or received datagram. Connected to 
 282.155 -	 * the GUI. Used for transfer speed calculations.
 282.156 -	 * @param size The size of the received or sent datagram.
 282.157 -	 */
 282.158 -	void traffic(int);
 282.159 -
 282.160 -	/*!
 282.161 -	 * Signals that a connection was removed. Connected to GUI.
 282.162 -	 * @param id the id of the connection that was removed.
 282.163 -	 */
 282.164 -	void removedConnection(int);
 282.165 -	
 282.166 -	/*!
 282.167 -	 * Signals that a new connection with another node has been 
 282.168 -	 * established. Connected to GUI.
 282.169 -	 * @param id the id of the new connection.
 282.170 -	 */
 282.171 -	void newConnection(int);
 282.172 -
 282.173 -	/*!
 282.174 -	 * Signals new protocol state in one of the connections
 282.175 -	 */
 282.176 -	void newConnectionStatus(int);
 282.177 -
 282.178 -};
 282.179 -
 282.180 -#endif
   283.1 --- a/x86/node.cpp	Wed Jan 03 09:17:10 2007 +0000
   283.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   283.3 @@ -1,59 +0,0 @@
   283.4 -#include <QtCore>
   283.5 -#include <node.h>
   283.6 -
   283.7 -
   283.8 -Node::Node(QObject *parent)
   283.9 -{
  283.10 -			nodeId=0;
  283.11 -			probability=0.0;
  283.12 -			nodeName.clear();
  283.13 -			flag=-1;
  283.14 -}
  283.15 -
  283.16 -Node& Node::operator=(const Node& other)
  283.17 -{
  283.18 - nodeId = other.nodeId;
  283.19 - flag = other.flag;
  283.20 - probability = other.probability;
  283.21 - nodeName = other.nodeName;
  283.22 - return *this;
  283.23 -}
  283.24 -
  283.25 -Node::Node(const Node& other)
  283.26 -{
  283.27 - nodeId = other.nodeId;
  283.28 - flag = other.flag;
  283.29 - probability = other.probability;
  283.30 - nodeName = other.nodeName;
  283.31 -}	
  283.32 -	
  283.33 -void Node::setContent(int id,float pro,int f,QString name)
  283.34 -{
  283.35 -	flag=f;
  283.36 -	nodeId=id;
  283.37 -	probability=pro;
  283.38 -	nodeName=name;
  283.39 -
  283.40 -}
  283.41 -
  283.42 -int Node::getId()
  283.43 -{
  283.44 -	return nodeId;
  283.45 -}
  283.46 -
  283.47 -int Node::getFlag()
  283.48 -{
  283.49 -	
  283.50 -	return flag;
  283.51 -}
  283.52 -
  283.53 -float Node::getProbability()
  283.54 -{
  283.55 -	return probability;
  283.56 -}
  283.57 -
  283.58 -QString Node::getName()
  283.59 -{
  283.60 -	return nodeName;
  283.61 -}
  283.62 -
   284.1 --- a/x86/node.h	Wed Jan 03 09:17:10 2007 +0000
   284.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   284.3 @@ -1,51 +0,0 @@
   284.4 -#ifndef NODE_H
   284.5 -#define NODE_H
   284.6 -
   284.7 -#include <QtCore>
   284.8 -
   284.9 -/*! \brief This class contains the attributes regarding a certain node in the 
  284.10 - * network.
  284.11 - */
  284.12 -class Node : public QObject
  284.13 -{
  284.14 -
  284.15 -Q_OBJECT 
  284.16 -	public:
  284.17 -	int nodeId;
  284.18 -	float probability;
  284.19 -	int flag;
  284.20 -	QString nodeName;
  284.21 -
  284.22 -
  284.23 -	Node(QObject *parent = 0);
  284.24 -	Node(const Node& other);
  284.25 -	Node& operator=(const Node& other);
  284.26 -
  284.27 -
  284.28 -	/*!
  284.29 -	 * Sets the attributes of this node.
  284.30 -	 * @param id the id of this node.
  284.31 -	 * @param pro the delivery predictability to this node.
  284.32 -	 * @param f the (RIB?)flags of this node.
  284.33 -	 * <PRE>
  284.34 -	 * Flag bit 0: Relay Node
  284.35 -	 * Flag bit 1: Custody Node
  284.36 -	 * Flag bit 2: Internet GW Node
  284.37 -	 * Flag bit 3-7: Reserved
  284.38 -	 * </PRE>
  284.39 -	 * @param the name of this node
  284.40 -	 */
  284.41 -	void setContent(int,float,int,QString);
  284.42 -
  284.43 -	//! Returns the id if this node
  284.44 -	int getId();
  284.45 -
  284.46 -	//! Returns the flags of this node
  284.47 -	int getFlag(); 
  284.48 -	//! Returns the delivery predictability value for this node.
  284.49 -	float getProbability();
  284.50 -	//!Returns the name of this node
  284.51 -	QString getName();
  284.52 -};
  284.53 -
  284.54 -#endif
   285.1 --- a/x86/nodeManager.cpp	Wed Jan 03 09:17:10 2007 +0000
   285.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   285.3 @@ -1,307 +0,0 @@
   285.4 -#include <QtCore>
   285.5 -#include <nodeManager.h>
   285.6 -#include <node.h>
   285.7 -#include <readFile.h>
   285.8 -#include <math.h>
   285.9 -#include <qmutex.h>
  285.10 -
  285.11 -//#define AGING_TIMER 900
  285.12 -//#define PENCOUNTER 0.75
  285.13 -//#define BETA 0.25
  285.14 -//#define GAMMA 0.90
  285.15 -
  285.16 -NodeManager::NodeManager()//BundleManager* bundleMng)
  285.17 -{
  285.18 -	ReadFile conf;
  285.19 -	BETA=conf.getBeta();
  285.20 -	PENCOUNTER=conf.getPEncounter();
  285.21 -	GAMMA=conf.getGamma();
  285.22 -	AGING_TIMER=conf.getAgingTimer();
  285.23 -	int WRITETIMER =conf.getWriteToFileTimer();
  285.24 -	int fileOption = conf.getUseFileNodes();
  285.25 -	//Create and connect Hello Timer
  285.26 -	//bundleManager = bundleMng;
  285.27 -	agingTimer = new QTimer();
  285.28 -	storagePath=conf.getStoragePath();
  285.29 -	dir.setPath(storagePath);
  285.30 -	//create the dir if it does not exist
  285.31 -	if(!dir.exists())
  285.32 -		dir.mkpath(dir.path());
  285.33 -	option=conf.getUseFileNodes();
  285.34 -        connect(agingTimer, SIGNAL(timeout()), this, SLOT(aging()));
  285.35 -        agingTimer->start(AGING_TIMER);
  285.36 -	if(fileOption==1)
  285.37 -	{
  285.38 -		readFromFile();
  285.39 -		writeToFileTimer = new QTimer();
  285.40 -		connect(writeToFileTimer, SIGNAL(timeout()), this, SLOT(saveToFile()));
  285.41 -		writeToFileTimer->start(WRITETIMER);
  285.42 -		emit sendDebugNodeList(nodeList);
  285.43 -	}
  285.44 -}
  285.45 -
  285.46 -
  285.47 -void NodeManager::aging()
  285.48 -{
  285.49 -	for (ushort i = 0; i < nodeList.size(); ++i) 
  285.50 -	{
  285.51 -			//AGE PROBABILITY UPDATE
  285.52 -			Node tempNode;
  285.53 -			tempNode=nodeList.at(i);
  285.54 -			tempNode.probability=tempNode.probability*GAMMA;
  285.55 -			nodeList.replace(i,tempNode);
  285.56 -
  285.57 -	}
  285.58 -	//DEBUG
  285.59 -	emit sendDebugNodeList(nodeList);
  285.60 -}
  285.61 -
  285.62 -void NodeManager::saveToFile()
  285.63 -{
  285.64 -	QFile file(dir.filePath("nodes.txt"));
  285.65 -	if(file.open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text))
  285.66 -	{
  285.67 -	    QDateTime realTime;
  285.68 -	    realTime=realTime.currentDateTime ();
  285.69 -	    QString time=realTime.toString("MM/dd/yyyy hh:mm:ss");
  285.70 -	    time.append("\n");
  285.71 -	    file.write(time.toAscii ());
  285.72 -	    for (ushort i = 0; i < nodeList.size(); ++i) 
  285.73 -	    {
  285.74 -		QString nodeString;
  285.75 -		nodeString.append(QString("%1").arg((int)nodeList.at(i).nodeId));
  285.76 -		nodeString.append("\t");
  285.77 -		nodeString.append(nodeList.at(i).nodeName);
  285.78 -		nodeString.append("\t");
  285.79 -		//nodeString.append(QString("%1").arg((float)nodeList.at(i).probability));
  285.80 -		//Avoiding double type printout/////////////////
  285.81 -		int prob=nodeList.at(i).probability*100000000;
  285.82 -		QString probString=QString("0.%1").arg(prob);
  285.83 -		nodeString.append(probString);
  285.84 -		////////////////////////////////////////////////
  285.85 -		nodeString.append("\t");
  285.86 -		nodeString.append(QString("%1").arg((int)nodeList.at(i).flag));
  285.87 -		nodeString.append("\n");
  285.88 -		file.write(nodeString.toAscii ());
  285.89 -	    }
  285.90 -	    file.close();
  285.91 -	}
  285.92 -	//DEBUG
  285.93 -	emit sendDebugNodeList(nodeList);
  285.94 -}
  285.95 -
  285.96 -void NodeManager::readFromFile()
  285.97 -{
  285.98 -	ReadFile conf;
  285.99 -	QString storagePath=conf.getStoragePath();
 285.100 -	QDir dir;
 285.101 -	dir.setPath(storagePath);
 285.102 -	QFile file(dir.filePath("nodes.txt"));
 285.103 -	if(file.open(QIODevice::ReadOnly | QIODevice::Text))
 285.104 -	{
 285.105 -	    QString firstLine;
 285.106 -	    QString line;
 285.107 -	    //First we read date and time
 285.108 -	    firstLine=file.readLine();
 285.109 -	    //Then we add nodes
 285.110 -	    line=file.readLine();
 285.111 -	    while(line.size()>0)
 285.112 -	    {
 285.113 -    		//Parsing node
 285.114 -		int pos;
 285.115 -		QString temp;
 285.116 -		Node newNode;
 285.117 -		//Node ID
 285.118 -		pos=line.indexOf("\t",0);
 285.119 -		temp=line.mid(0,pos);
 285.120 -		newNode.nodeId=temp.toInt(0,10);
 285.121 -		line.remove(0,pos+1);
 285.122 -		//Node Name
 285.123 -		pos=line.indexOf("\t",0);
 285.124 -		temp=line.mid(0,pos);
 285.125 -		newNode.nodeName=temp;
 285.126 -		line.remove(0,pos+1);
 285.127 -		//Node Probability
 285.128 -		pos=line.indexOf("\t",0);
 285.129 -		temp=line.mid(0,pos);
 285.130 -		newNode.probability=temp.toFloat();
 285.131 -		line.remove(0,pos+1);
 285.132 -		//Node Flag
 285.133 -		pos=line.indexOf("\t",0);
 285.134 -		temp=line.mid(0,pos);
 285.135 -		newNode.flag=temp.toInt(0,10);
 285.136 -		line.remove(0,pos+1);
 285.137 -		//Adding Node
 285.138 -		nodeList.append(newNode);
 285.139 -		line=file.readLine();
 285.140 -	    }
 285.141 -	    //Aging the nodes
 285.142 -	    int option=conf.getAgeFileNodes();
 285.143 -	    if(option==1)
 285.144 -	    {
 285.145 -		QDateTime oldTime;
 285.146 -		firstLine.chop(1);
 285.147 -		oldTime=oldTime.fromString(firstLine,"MM/dd/yyyy hh:mm:ss");
 285.148 -		QDateTime realTime;
 285.149 -		realTime=realTime.currentDateTime ();
 285.150 -		int dif= oldTime.secsTo(realTime);
 285.151 -		int normalAging = conf.getAgingTimer()/1000;
 285.152 -		int aging=dif/normalAging;
 285.153 -		//Aging all nodes
 285.154 -		for (ushort i = 0; i < nodeList.size(); ++i) 
 285.155 -		{
 285.156 -			//AGE PROBABILITY UPDATE
 285.157 -			Node tempNode;
 285.158 -			tempNode=nodeList.at(i);
 285.159 -			tempNode.probability=tempNode.probability*(pow(GAMMA,aging));
 285.160 -			nodeList.replace(i,tempNode);
 285.161 -		}
 285.162 -	    }
 285.163 -	    emit sendDebugNodeList(nodeList);
 285.164 -	    emit updatedNodeList(this);
 285.165 -	    file.close();
 285.166 -	}
 285.167 -}
 285.168 -
 285.169 -
 285.170 -
 285.171 -int NodeManager::getId(QString str)
 285.172 -{
 285.173 -	for (ushort i = 0; i < nodeList.size(); ++i) 
 285.174 -	{
 285.175 -			QString s;
 285.176 -			QString n;
 285.177 -			s=str;
 285.178 -			n=nodeList.at(i).nodeName;
 285.179 -			if(nodeList.at(i).nodeName==str)
 285.180 -				return nodeList.at(i).nodeId;
 285.181 -	}
 285.182 -	return 0;
 285.183 -}
 285.184 -
 285.185 -
 285.186 -void NodeManager::addDictionary(int ourNodeId,QList<Node> dictionary)
 285.187 -{
 285.188 -	for (ushort i = 0; i < dictionary.size(); ++i) 
 285.189 -	{
 285.190 -		int isInTheList=0;
 285.191 -		for (ushort n = 0; n < nodeList.size(); ++n) 
 285.192 -		{
 285.193 -			if(dictionary.at(i).nodeId==nodeList.at(n).nodeId)
 285.194 -				isInTheList++;
 285.195 -			
 285.196 -		}
 285.197 -		if((isInTheList==0)&&(dictionary.at(i).nodeId!=ourNodeId))
 285.198 -		{
 285.199 -			nodeList.append(dictionary.at(i));
 285.200 -			//!!!!!!!!!!!!!!!!!!!!!!
 285.201 -				//DEBUG
 285.202 -			emit sendDebugNodeList(nodeList);
 285.203 -			emit updatedNodeList(this);
 285.204 -		}
 285.205 -	}
 285.206 -}
 285.207 -
 285.208 -void NodeManager::encounterNode(int encounterNodeId,int encounterNodeType,QString encounterNodeName)
 285.209 -{
 285.210 -	int isInTheList=0;
 285.211 -	for (ushort i = 0; i < nodeList.size(); ++i) 
 285.212 -	{
 285.213 -		//ENCOUNTER PROBABILITY UPDATE
 285.214 -		if(nodeList.at(i).nodeId==encounterNodeId)
 285.215 -		{
 285.216 -				Node tempNode;
 285.217 -				tempNode=nodeList.at(i);
 285.218 -				//ENCOUNTING EQUATION
 285.219 -				tempNode.probability=tempNode.probability+((1-tempNode.probability)*PENCOUNTER);
 285.220 -				nodeList.replace(i,tempNode);
 285.221 -				isInTheList++;
 285.222 -		}
 285.223 -	}
 285.224 -	//UNKNOW NEW NODE
 285.225 -	if(isInTheList==0) 
 285.226 -	{
 285.227 -		Node tempNode;
 285.228 -		tempNode.nodeId=encounterNodeId;
 285.229 -		tempNode.nodeName=encounterNodeName;
 285.230 -		tempNode.flag=-1;
 285.231 -		tempNode.probability=PENCOUNTER;
 285.232 -		nodeList.append(tempNode);
 285.233 -		//!!!!!!!!!!!!!!!!!!!!!!
 285.234 -		//DEBUG
 285.235 -		emit sendDebugNodeList(nodeList);
 285.236 -		emit updatedNodeList(this);
 285.237 -	}
 285.238 -}
 285.239 -
 285.240 -
 285.241 -void NodeManager::addRIB(QList<Node>RIB,int encounterNodeId)//RIB=P_(B,x)
 285.242 -{
 285.243 -	float P_AB=1;
 285.244 -	//First we find P_AB
 285.245 -	for (ushort i = 0; i < nodeList.size(); ++i) 
 285.246 -	{
 285.247 -		if(nodeList.at(i).nodeId==encounterNodeId)
 285.248 -			P_AB = nodeList.at(i).probability;
 285.249 -	}
 285.250 -	//Then we update all transitivites
 285.251 -	for (ushort i = 0; i < nodeList.size(); ++i) 
 285.252 -	{
 285.253 -		//TRANSITIVE PROBABILITY UPDATE
 285.254 -		if(nodeList.at(i).nodeId!=encounterNodeId)
 285.255 -		{
 285.256 -			int nodeCId = nodeList.at(i).nodeId;
 285.257 -			float P_AC = nodeList.at(i).probability;
 285.258 -			float P_BC = 1;
 285.259 -			float newP_AC;
 285.260 -			int flag=0;
 285.261 -			for (ushort n = 0; n < RIB.size(); ++n) 
 285.262 -			{
 285.263 -				if(RIB.at(n).nodeId==nodeCId)
 285.264 -				{
 285.265 -					P_BC = RIB.at(n).probability;
 285.266 -					flag = RIB.at(n).flag;
 285.267 -				}
 285.268 -			}
 285.269 -			newP_AC=P_AC+((1-P_AC) * P_AB * P_BC * BETA);
 285.270 -			//Adding data to list
 285.271 -			Node tempNode;
 285.272 -			tempNode=nodeList.at(i);
 285.273 -			tempNode.probability=newP_AC;
 285.274 -			tempNode.flag=flag;
 285.275 -			nodeList.replace(i,tempNode);
 285.276 -		}
 285.277 -
 285.278 -	}
 285.279 -	//DEBUG
 285.280 -	emit sendDebugNodeList(nodeList);
 285.281 -}
 285.282 -
 285.283 -
 285.284 -void NodeManager::addNode(Node newNode)
 285.285 -{
 285.286 -	nodeList.append(newNode);
 285.287 -	//!!!!!!!!!!!!!!!!!!!!!!!!!!!
 285.288 -	emit updatedNodeList(this);
 285.289 -	//DEBUG
 285.290 -	emit sendDebugNodeList(nodeList);
 285.291 -}
 285.292 -
 285.293 -QList<Node> NodeManager::getNodeList()
 285.294 -{	
 285.295 -	return nodeList;
 285.296 -}
 285.297 -
 285.298 -//Gives out only the list of nodes with RIB information
 285.299 -QList<Node> NodeManager::getRIBNodeList()
 285.300 -{	
 285.301 -	QList<Node> newNodeList;
 285.302 -	for (ushort i = 0; i < nodeList.size(); ++i) 
 285.303 -	{
 285.304 -		if(nodeList.at(i).flag != -1)
 285.305 -			newNodeList.append(nodeList.at(i));
 285.306 -	
 285.307 -	}
 285.308 -	return newNodeList;
 285.309 -}
 285.310 -
   286.1 --- a/x86/nodeManager.h	Wed Jan 03 09:17:10 2007 +0000
   286.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   286.3 @@ -1,106 +0,0 @@
   286.4 -#ifndef NODEMANAGER_H
   286.5 -#define NODEMANAGER_H
   286.6 -
   286.7 -#include <QtCore>
   286.8 -#include <node.h>
   286.9 -//#include <messageFile.cpp>
  286.10 -//#include <bundleManager.h>
  286.11 -
  286.12 -//! This class contains a list with routing information of all nodes this node is aware of.
  286.13 -class NodeManager : public QObject
  286.14 -{
  286.15 -	Q_OBJECT
  286.16 -public:
  286.17 -	int AGING_TIMER;
  286.18 -	float PENCOUNTER;
  286.19 -	float BETA;
  286.20 -	float GAMMA;
  286.21 -	QTimer *agingTimer;
  286.22 -	QTimer *writeToFileTimer;
  286.23 -	NodeManager();
  286.24 -	QString storagePath;
  286.25 -	QDir dir;
  286.26 -	int option;
  286.27 -
  286.28 -	
  286.29 -	
  286.30 -	//! Adds a node to the node list of this NodeManager
  286.31 -	/*! Also emits signals to update the GUI.
  286.32 -	 * @param node the node to be added
  286.33 -	 */
  286.34 -	void addNode(Node);
  286.35 -
  286.36 -	//! Looks up the node id of the specified node.
  286.37 -	/*!
  286.38 -	 * @param str the string name of the node.
  286.39 -	 * @return the node id of the specified node.
  286.40 -	 */
  286.41 -	int getId(QString);
  286.42 -
  286.43 -	//! Inserts nodes from a dictionary to the node list.
  286.44 -	/*! Only inserts nodes that were not already in the list.
  286.45 -	 * @param the list of nodes to be added to the node list.
  286.46 -	 */
  286.47 -	void addDictionary(int ourNodeId,QList<Node>);
  286.48 -
  286.49 -	//! Handles the reception of a new RIB.
  286.50 -	/*! Updates the transitivities in the node list according to the new RIB.
  286.51 -	 * @param RIB the RIB received from the encountered node.
  286.52 -	 * @param encounterNodeId the id if the encountered node.
  286.53 -	 */
  286.54 -	void addRIB(QList<Node>RIB,int encounterNodeId);
  286.55 -
  286.56 -	//! Adjusts the delivery predictability for a encountered node.
  286.57 -	/*! If the node was already in the node list the delivery predictability 
  286.58 -	 * is updated, otherwise the new node is added to the node list.
  286.59 -	 * @param encounterNodeId the id of the encountered node
  286.60 -	 * @param encounterNodeType Currently not used
  286.61 -	 * @param encounterNodeName the string name of the encountered node.
  286.62 -	 */
  286.63 -	void encounterNode(int encounterNodeId,int encounterNodeType,QString encounterNodeName);
  286.64 -
  286.65 -	//! Returns the node list of this node manager.
  286.66 -	/*! 
  286.67 -	 * @return the nodelist of this node manager.
  286.68 -	 */
  286.69 -	QList<Node> getNodeList();
  286.70 -
  286.71 -	//! Returns the list of nodes that have RIB information.
  286.72 -	/*! Iterates through the node list and returns only the nodes that have 
  286.73 -	 * RIB information stored.
  286.74 -	 * @return the nodes that have RIB information.
  286.75 -	 */
  286.76 -	QList<Node> getRIBNodeList();
  286.77 -
  286.78 -	//! the list of nodes (should probably be delared private
  286.79 -	QList<Node> nodeList;
  286.80 -
  286.81 -
  286.82 -signals:
  286.83 -	/*!
  286.84 -	 * Emits the node list. (Used for updating GUI).
  286.85 -	 */
  286.86 -	void sendDebugNodeList(QList<Node>);
  286.87 -	
  286.88 -	/*!
  286.89 -	 * Emits this NodeManager. (Used for GUI???)
  286.90 -	 */
  286.91 -	void updatedNodeList(NodeManager*);
  286.92 -public slots:
  286.93 -	/*!
  286.94 -	 * Performs aging of the probability of all nodes in the node list.
  286.95 -	 */
  286.96 -	void aging();
  286.97 -		
  286.98 -	/*!
  286.99 -	 * Writes the node list to the file nodes.txt.
 286.100 -	 */
 286.101 -	void saveToFile();
 286.102 -		
 286.103 -	/*!
 286.104 -	 * Imports a nodelist from the file nodes.txt and performs 
 286.105 -	 * appropriate aging on the nodes imported.
 286.106 -	 */
 286.107 -	void readFromFile();
 286.108 -};
 286.109 -#endif
   287.1 Binary file x86/prophet has changed
   288.1 --- a/x86/prophet.ini	Wed Jan 03 09:17:10 2007 +0000
   288.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   288.3 @@ -1,149 +0,0 @@
   288.4 -# ------------------------------------------
   288.5 -#  PRoPHET configuration file - prophet.ini
   288.6 -# ------------------------------------------
   288.7 -
   288.8 -
   288.9 -# -----------------
  288.10 -#  Node Parameters
  288.11 -# -----------------
  288.12 -
  288.13 -# A unique number identifying this node.
  288.14 -NODEID=50
  288.15 -
  288.16 -# A unique name identifying this node, should be the same as local_eid in 
  288.17 -# DTN-configuration but without the "dtn://" prefix.
  288.18 -NODENAME=samonote.dtn
  288.19 -
  288.20 -# The IP number of this node.
  288.21 -NODEIP=192.168.10.44
  288.22 -
  288.23 -# IP number of any secondary network interface on the same host. If there is no secondary interface, just set it to the same as NODEIP1.
  288.24 -NODEIP2=192.168.0.3
  288.25 -
  288.26 -# The broadcast adress of this node. Should be as narrow as possible, ie rather use 192.168.10.255 than 255.255.255.255
  288.27 -NODEBROADCAST=192.168.10.255
  288.28 -
  288.29 -
  288.30 -#  --------------------
  288.31 -#   PRoPHET parameters 
  288.32 -#  --------------------
  288.33 -
  288.34 -# The type of routing to use
  288.35 -# 0 = Epidemic
  288.36 -# 1 = PRoPHET GRTR P_(B,D)>P_(A,D)
  288.37 -ROUTING=0
  288.38 -
  288.39 -# The queuing policy to use
  288.40 -# 0 = FIFO
  288.41 -QUEUE=0
  288.42 -
  288.43 -# Initialization constant
  288.44 -PENCOUNTER=0.75
  288.45 -
  288.46 -# Scaling constant. Controls how large an impact the transitivity should have 
  288.47 -# on delivery predictability.
  288.48 -BETA=0.25
  288.49 -
  288.50 -# Aging constant
  288.51 -GAMMA=0.9989
  288.52 -
  288.53 -# ?
  288.54 -HELLO=10000
  288.55 -
  288.56 -# ?
  288.57 -ALIVE=15
  288.58 -
  288.59 -
  288.60 -# --------
  288.61 -#  Timers
  288.62 -# --------
  288.63 -
  288.64 -# The interval in milliseconds between beacon broadcasts in neighbour awareness.
  288.65 -BROADCASTTIMER=5000
  288.66 -
  288.67 -# The interval in milliseconds for performing aging.
  288.68 -AGINGTIMER=60000
  288.69 -
  288.70 -# The time in milliseconds before the node leaves the Hello state.
  288.71 -HELLOTIMER=60000
  288.72 -
  288.73 -# The time in milliseconds before the node leaves the Initiator state.
  288.74 -INITIATORTIMER=60000
  288.75 -
  288.76 -# The time in milliseconds before the node leaves the Listener state.
  288.77 -LISTENERTIMER=60000
  288.78 -
  288.79 -
  288.80 -# ------------------------
  288.81 -#  DTN-related Parameters
  288.82 -# ------------------------
  288.83 -
  288.84 -# The hostname where PRoPHET should connect to DTN. Usually the same as NODEIP1.
  288.85 -DTNHOSTNAME=193.77.152.156
  288.86 -
  288.87 -# The port PRoPHET should connect to DTN on. Usually 5555 or 5050.
  288.88 -DTNHOSTPORT=5050
  288.89 -
  288.90 -# ?
  288.91 -DTNTIMER=5000
  288.92 -
  288.93 -
  288.94 -# --------------------
  288.95 -#  Storage Parameters
  288.96 -# --------------------
  288.97 -
  288.98 -# The maximum amount of disk space that PRoPHET should use for storing bundles 
  288.99 -# (in bytes).
 288.100 -STORAGESIZE=80000
 288.101 -
 288.102 -# The maximum amount of memory PRoPHET should use for storing bundles (in bytes)
 288.103 -MEMORYSTORAGESIZE=20000
 288.104 -
 288.105 -# The directory PRoPHET will use for storing bundles. It will be created on 
 288.106 -# startup if it does not already exist.
 288.107 -STORAGEPATH=c:\Samo\PRoPHET\win32\storage\
 288.108 -
 288.109 -# The directory PRoPHET will use for logging. It will be created on startup if 
 288.110 -# it does not already exist.
 288.111 -LOGPATH=c:\Samo\PRoPHET\win32\log\
 288.112 -
 288.113 -# The directory PRoPHET will use for storing the node list, bundle list etc. It
 288.114 -# will be created on startup if it does not already exist.
 288.115 -MSGPATH=c:\Samo\PRoPHET\win32\list\
 288.116 -
 288.117 -# Whether the node list should be stored to disk or not.
 288.118 -USEFILENODES=1
 288.119 -
 288.120 -# Whether nodes in the node list on disk should be aged or not.
 288.121 -AGEFILENODES=1
 288.122 -
 288.123 -# The interval at which information is written to disk.
 288.124 -WRITETOFILETIMER=10000
 288.125 -
 288.126 -# Wheter bundles should be stored to disk or not.
 288.127 -USEFILEBUNDLES=1
 288.128 -
 288.129 -# Logging on/off.
 288.130 -LOGGING=1
 288.131 -
 288.132 -
 288.133 -# ---------------
 288.134 -#  Misc features
 288.135 -# ---------------
 288.136 -
 288.137 -# ?
 288.138 -CONTINIUSUPDATE=1
 288.139 -
 288.140 -# Whether to use TTL or not.
 288.141 -USETTL=1
 288.142 -
 288.143 -# The time to live for new bundles (in seconds).
 288.144 -TTLVALUE=60
 288.145 -
 288.146 -# Use acks for bundles, on/off.
 288.147 -USEACKS=1
 288.148 -
 288.149 -# Use smartoffer on/off. Smartoffer is a feature where a bundle will not be 
 288.150 -# offered again to a node that has already received it.
 288.151 -SMARTOFFER=1
 288.152 -
   289.1 --- a/x86/prophet.pro	Wed Jan 03 09:17:10 2007 +0000
   289.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   289.3 @@ -1,84 +0,0 @@
   289.4 -# GUI = true  - generates Makefile for building with GUI support.
   289.5 -# GUI = false - generates Makefile for building without GUI support.
   289.6 -GUI = true
   289.7 -
   289.8 -# PDAGUI = true  - generares makefile for building with GUI for PDA
   289.9 -# PDAGUI = false - generates makefile for building without GUI for PDA
  289.10 -# PDAGUI has no effect unless GUI is set to true
  289.11 -PDAGUI = true
  289.12 -
  289.13 -# DTN_INTERFACE = true  - generates Makefile for building with DTN support.
  289.14 -# DTN_INTERFACE = false - generates Makefile for building without DTN support.
  289.15 -DTN_INTERFACE = false
  289.16 -
  289.17 -contains(GUI, true) {
  289.18 -	message("Creating Makefile with GUI")
  289.19 -	DEFINES += GUI
  289.20 -	contains(PDAGUI, true) {
  289.21 -		message("GUI will be built for PDA use")
  289.22 -		DEFINES += PDAGUI
  289.23 -		HEADERS += connectionWidget.h\
  289.24 -				   msgReadWidget.h\
  289.25 -				   configWidget.h
  289.26 -		SOURCES += connectionWidget.cpp\
  289.27 -				   msgReadWidget.cpp\
  289.28 -				   configWidget.cpp
  289.29 -	}
  289.30 -	HEADERS += infoWidget.h\		
  289.31 -			   bundleWidget.h\		
  289.32 -        	   msgWidget.h \
  289.33 -			   debugWidget.h
  289.34 -	SOURCES += infoWidget.cpp\		
  289.35 -			   bundleWidget.cpp\		
  289.36 -        	   msgWidget.cpp \
  289.37 -			   debugWidget.cpp
  289.38 -}
  289.39 -contains(GUI, false) {
  289.40 -	message("Creating Makefile without GUI")
  289.41 -}
  289.42 -contains(DTN_INTERFACE, true) {
  289.43 -	message("Creating Makefile with DTN_INTERFACE")
  289.44 -	DEFINES += DTN_INTERFACE
  289.45 -	HEADERS += DTNInterface.h
  289.46 -	SOURCES += DTNInterface.cpp
  289.47 -}
  289.48 -contains(DTN_INTERFACE, false) {
  289.49 -	message("Creating Makefile without DTN_INTERFACE")
  289.50 -}
  289.51 -
  289.52 -TEMPLATE = app
  289.53 -QT+=gui network
  289.54 -QT-=
  289.55 -TARGET += 
  289.56 -DEPENDPATH += .
  289.57 -INCLUDEPATH += .
  289.58 -CONFIG += qt release
  289.59 -HEADERS += 	neighbourAwareness.h\
  289.60 -			bundle.h \
  289.61 -			bundleManager.h \
  289.62 -			node.h \
  289.63 -			nodeManager.h \
  289.64 -			connection.h \
  289.65 -			tlv.h \
  289.66 -			messageFile.h \
  289.67 -			hello.h \
  289.68 -			main.h \	   
  289.69 -			dataPacket.h \
  289.70 -			readFile.h \
  289.71 -			tcpClient.h \
  289.72 -			bundleListFileIO.h
  289.73 -
  289.74 -SOURCES += 	main.cpp \
  289.75 -			bundle.cpp \
  289.76 -			bundleManager.cpp \
  289.77 -			node.cpp \
  289.78 -			nodeManager.cpp \
  289.79 -			connection.cpp \
  289.80 -			hello.cpp \
  289.81 -			tlv.cpp \
  289.82 -			dataPacket.cpp \
  289.83 -			messageFile.cpp\
  289.84 -			neighbourAwareness.cpp\
  289.85 -			readFile.cpp \
  289.86 -			tcpClient.cpp \
  289.87 -			bundleListFileIO.cpp
   290.1 --- a/x86/readFile.cpp	Wed Jan 03 09:17:10 2007 +0000
   290.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   290.3 @@ -1,836 +0,0 @@
   290.4 -#include <QFile>
   290.5 -#include <QString>
   290.6 -#include <QHostAddress>
   290.7 -#include <readFile.h>
   290.8 -
   290.9 -ReadFile::ReadFile()
  290.10 -{
  290.11 -	QFile configuration("prophet.ini");
  290.12 -}
  290.13 -
  290.14 -float ReadFile::getBeta()
  290.15 -{
  290.16 -	QFile configuration("prophet.ini");
  290.17 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  290.18 -	QString line;
  290.19 -	QString search="BETA=";
  290.20 -	line=configuration.readLine();
  290.21 -	while(line.size()>0)
  290.22 -	{
  290.23 -		if(line.indexOf(search)!=-1)
  290.24 -		{
  290.25 -			line.remove(search,Qt::CaseInsensitive);
  290.26 -			return line.toFloat();
  290.27 -		}
  290.28 -		line=configuration.readLine();
  290.29 -		
  290.30 -	}
  290.31 -	configuration.close();
  290.32 -	return (float)0.25;
  290.33 -}
  290.34 -
  290.35 -float ReadFile::getGamma()
  290.36 -{
  290.37 -	QFile configuration("prophet.ini");
  290.38 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  290.39 -	QString line;
  290.40 -	QString search="GAMMA=";
  290.41 -	line=configuration.readLine();
  290.42 -	while(line.size()>0)
  290.43 -	{
  290.44 -		if(line.indexOf(search)!=-1)
  290.45 -		{
  290.46 -			line.remove(search,Qt::CaseInsensitive);
  290.47 -			return line.toFloat();
  290.48 -		}
  290.49 -		line=configuration.readLine();
  290.50 -		
  290.51 -	}
  290.52 -		configuration.close();
  290.53 -
  290.54 -	return (float)0.99;
  290.55 -}
  290.56 -
  290.57 -float ReadFile::getPEncounter()
  290.58 -{
  290.59 -	QFile configuration("prophet.ini");
  290.60 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  290.61 -	QString line;
  290.62 -	QString search="PENCOUNTER=";
  290.63 -	line=configuration.readLine();
  290.64 -	while(line.size()>0)
  290.65 -	{
  290.66 -		if(line.indexOf(search)!=-1)
  290.67 -		{
  290.68 -			line.remove(search,Qt::CaseInsensitive);
  290.69 -			return line.toFloat();
  290.70 -		}
  290.71 -		line=configuration.readLine();
  290.72 -		
  290.73 -	}
  290.74 -		configuration.close();
  290.75 -
  290.76 -	return (float)0.75;
  290.77 -}
  290.78 -
  290.79 -int ReadFile::getSmartOffer()
  290.80 -{
  290.81 -	QFile configuration("prophet.ini");
  290.82 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  290.83 -	QString line;
  290.84 -	QString search="SMARTOFFER=";
  290.85 -	line=configuration.readLine();
  290.86 -	while(line.size()>0)
  290.87 -	{
  290.88 -		if(line.indexOf(search)!=-1)
  290.89 -		{
  290.90 -			line.remove(search,Qt::CaseInsensitive);
  290.91 -			return line.toInt();
  290.92 -		}
  290.93 -		line=configuration.readLine();
  290.94 -		
  290.95 -	}
  290.96 -		configuration.close();
  290.97 -
  290.98 -	return 1000;
  290.99 -}
 290.100 -
 290.101 -int ReadFile::getListenerTimer()
 290.102 -{
 290.103 -	QFile configuration("prophet.ini");
 290.104 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.105 -	QString line;
 290.106 -	QString search="LISTENERTIMER=";
 290.107 -	line=configuration.readLine();
 290.108 -	while(line.size()>0)
 290.109 -	{
 290.110 -		if(line.indexOf(search)!=-1)
 290.111 -		{
 290.112 -			line.remove(search,Qt::CaseInsensitive);
 290.113 -			return line.toInt();
 290.114 -		}
 290.115 -		line=configuration.readLine();
 290.116 -		
 290.117 -	}
 290.118 -		configuration.close();
 290.119 -
 290.120 -	return 1000;
 290.121 -}
 290.122 -
 290.123 -int ReadFile::getQueue()
 290.124 -{
 290.125 -	QFile configuration("prophet.ini");
 290.126 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.127 -	QString line;
 290.128 -	QString search="QUEUE=";
 290.129 -	line=configuration.readLine();
 290.130 -	while(line.size()>0)
 290.131 -	{
 290.132 -		if(line.indexOf(search)!=-1)
 290.133 -		{
 290.134 -			line.remove(search,Qt::CaseInsensitive);
 290.135 -			return line.toInt();
 290.136 -		}
 290.137 -		line=configuration.readLine();
 290.138 -		
 290.139 -	}
 290.140 -		configuration.close();
 290.141 -
 290.142 -	return 0;
 290.143 -}
 290.144 -
 290.145 -int ReadFile::getInitiatorTimer()
 290.146 -{
 290.147 -	QFile configuration("prophet.ini");
 290.148 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.149 -	QString line;
 290.150 -	QString search="INITIATORTIMER=";
 290.151 -	line=configuration.readLine();
 290.152 -	while(line.size()>0)
 290.153 -	{
 290.154 -		if(line.indexOf(search)!=-1)
 290.155 -		{
 290.156 -			line.remove(search,Qt::CaseInsensitive);
 290.157 -			return line.toInt();
 290.158 -		}
 290.159 -		line=configuration.readLine();
 290.160 -		
 290.161 -	}
 290.162 -		configuration.close();
 290.163 -
 290.164 -	return 1000;
 290.165 -}
 290.166 -int ReadFile::getUseTTL()
 290.167 -{
 290.168 -	QFile configuration("prophet.ini");
 290.169 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.170 -	QString line;
 290.171 -	QString search="USETTL=";
 290.172 -	line=configuration.readLine();
 290.173 -	while(line.size()>0)
 290.174 -	{
 290.175 -		if(line.indexOf(search)!=-1)
 290.176 -		{
 290.177 -			line.remove(search,Qt::CaseInsensitive);
 290.178 -			return line.toInt();
 290.179 -		}
 290.180 -		line=configuration.readLine();
 290.181 -		
 290.182 -	}
 290.183 -		configuration.close();
 290.184 -
 290.185 -	return 0;
 290.186 -
 290.187 -}
 290.188 -
 290.189 -int ReadFile::getTTL()
 290.190 -{
 290.191 -	QFile configuration("prophet.ini");
 290.192 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.193 -	QString line;
 290.194 -	QString search="TTLVALUE=";
 290.195 -	line=configuration.readLine();
 290.196 -	while(line.size()>0)
 290.197 -	{
 290.198 -		if(line.indexOf(search)!=-1)
 290.199 -		{
 290.200 -			line.remove(search,Qt::CaseInsensitive);
 290.201 -			return line.toInt();
 290.202 -		}
 290.203 -		line=configuration.readLine();
 290.204 -		
 290.205 -	}
 290.206 -		configuration.close();
 290.207 -
 290.208 -	return 100000;
 290.209 -
 290.210 -}
 290.211 -
 290.212 -int ReadFile::getUseACKS()
 290.213 -{
 290.214 -	QFile configuration("prophet.ini");
 290.215 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.216 -	QString line;
 290.217 -	QString search="USEACKS=";
 290.218 -	line=configuration.readLine();
 290.219 -	while(line.size()>0)
 290.220 -	{
 290.221 -		if(line.indexOf(search)!=-1)
 290.222 -		{
 290.223 -			line.remove(search,Qt::CaseInsensitive);
 290.224 -			return line.toInt();
 290.225 -		}
 290.226 -		line=configuration.readLine();
 290.227 -		
 290.228 -	}
 290.229 -		configuration.close();
 290.230 -
 290.231 -	return 0;
 290.232 -}
 290.233 -
 290.234 -int ReadFile::getHelloTimer()
 290.235 -{
 290.236 -	QFile configuration("prophet.ini");
 290.237 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.238 -	QString line;
 290.239 -	QString search="HELLOTIMER=";
 290.240 -	line=configuration.readLine();
 290.241 -	while(line.size()>0)
 290.242 -	{
 290.243 -		if(line.indexOf(search)!=-1)
 290.244 -		{
 290.245 -			line.remove(search,Qt::CaseInsensitive);
 290.246 -			return line.toInt();
 290.247 -		}
 290.248 -		line=configuration.readLine();
 290.249 -		
 290.250 -	}
 290.251 -		configuration.close();
 290.252 -
 290.253 -	return 1000;
 290.254 -}
 290.255 -
 290.256 -int ReadFile::getAgingTimer()
 290.257 -{
 290.258 -	QFile configuration("prophet.ini");
 290.259 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.260 -	QString line;
 290.261 -	QString search="AGINGTIMER=";
 290.262 -	line=configuration.readLine();
 290.263 -	while(line.size()>0)
 290.264 -	{
 290.265 -		if(line.indexOf(search)!=-1)
 290.266 -		{
 290.267 -			line.remove(search,Qt::CaseInsensitive);
 290.268 -			return line.toInt();
 290.269 -		}
 290.270 -		line=configuration.readLine();
 290.271 -		
 290.272 -	}
 290.273 -		configuration.close();
 290.274 -
 290.275 -	return 1000;
 290.276 -}
 290.277 -
 290.278 -int ReadFile::getDTNHostPort()
 290.279 -{
 290.280 -	QFile configuration("prophet.ini");
 290.281 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.282 -	QString line;
 290.283 -	QString search="DTNHOSTPORT=";
 290.284 -	line=configuration.readLine();
 290.285 -	while(line.size()>0)
 290.286 -	{
 290.287 -		if(line.indexOf(search)!=-1)
 290.288 -		{
 290.289 -			line.remove(search,Qt::CaseInsensitive);
 290.290 -			return line.toInt();
 290.291 -		}
 290.292 -		line=configuration.readLine();
 290.293 -		
 290.294 -	}
 290.295 -		configuration.close();
 290.296 -
 290.297 -	return 21;
 290.298 -
 290.299 -}	
 290.300 -
 290.301 -int ReadFile::getStorageSize()
 290.302 -{
 290.303 -	QFile configuration("prophet.ini");
 290.304 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.305 -	QString line;
 290.306 -	QString search="STORAGESIZE=";
 290.307 -	line=configuration.readLine();
 290.308 -	while(line.size()>0)
 290.309 -	{
 290.310 -		if(line.indexOf(search)!=-1)
 290.311 -		{
 290.312 -			line.remove(search,Qt::CaseInsensitive);
 290.313 -			return line.toInt();
 290.314 -		}
 290.315 -		line=configuration.readLine();
 290.316 -		
 290.317 -	}
 290.318 -		configuration.close();
 290.319 -
 290.320 -	return 1000;
 290.321 -
 290.322 -}	
 290.323 -
 290.324 -int ReadFile::getMemoryStorageSize()
 290.325 -{
 290.326 -	QFile configuration("prophet.ini");
 290.327 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.328 -	QString line;
 290.329 -	QString search="MEMORYSTORAGESIZE=";
 290.330 -	line=configuration.readLine();
 290.331 -	while(line.size()>0)
 290.332 -	{
 290.333 -		if(line.indexOf(search)!=-1)
 290.334 -		{
 290.335 -			line.remove(search,Qt::CaseInsensitive);
 290.336 -			return line.toInt();
 290.337 -		}
 290.338 -		line=configuration.readLine();
 290.339 -		
 290.340 -	}
 290.341 -		configuration.close();
 290.342 -
 290.343 -	return 1000;
 290.344 -
 290.345 -}	
 290.346 -
 290.347 -int ReadFile::getAlive()
 290.348 -{
 290.349 -	QFile configuration("prophet.ini");
 290.350 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.351 -	QString line;
 290.352 -	QString search="ALIVE=";
 290.353 -	line=configuration.readLine();
 290.354 -	while(line.size()>0)
 290.355 -	{
 290.356 -		if(line.indexOf(search)!=-1)
 290.357 -		{
 290.358 -			line.remove(search,Qt::CaseInsensitive);
 290.359 -			return line.toInt();
 290.360 -		}
 290.361 -		line=configuration.readLine();
 290.362 -		
 290.363 -	}
 290.364 -		configuration.close();
 290.365 -
 290.366 -	return 15;
 290.367 -
 290.368 -}	
 290.369 -
 290.370 -
 290.371 -int ReadFile::getBroadcastTimer()
 290.372 -{
 290.373 -	QFile configuration("prophet.ini");
 290.374 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.375 -	QString line;
 290.376 -	QString search="BROADCASTTIMER=";
 290.377 -	line=configuration.readLine();
 290.378 -	while(line.size()>0)
 290.379 -	{
 290.380 -		if(line.indexOf(search)!=-1)
 290.381 -		{
 290.382 -			line.remove(search,Qt::CaseInsensitive);
 290.383 -			return line.toInt();
 290.384 -		}
 290.385 -		line=configuration.readLine();
 290.386 -		
 290.387 -	}
 290.388 -		configuration.close();
 290.389 -
 290.390 -	return 1000;
 290.391 -
 290.392 -}
 290.393 -
 290.394 -
 290.395 -int ReadFile::getHello()
 290.396 -{
 290.397 -	QFile configuration("prophet.ini");
 290.398 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.399 -	QString line;
 290.400 -	QString search="HELLO=";
 290.401 -	line=configuration.readLine();
 290.402 -	while(line.size()>0)
 290.403 -	{
 290.404 -		if(line.indexOf(search)!=-1)
 290.405 -		{
 290.406 -			line.remove(search,Qt::CaseInsensitive);
 290.407 -			return line.toInt();
 290.408 -		}
 290.409 -		line=configuration.readLine();
 290.410 -		
 290.411 -	}
 290.412 -		configuration.close();
 290.413 -
 290.414 -	return 1;
 290.415 -
 290.416 -}
 290.417 -
 290.418 -
 290.419 -int ReadFile::getRouting()
 290.420 -{
 290.421 -	QFile configuration("prophet.ini");
 290.422 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.423 -	QString line;
 290.424 -	QString search="ROUTING=";
 290.425 -	line=configuration.readLine();
 290.426 -	while(line.size()>0)
 290.427 -	{
 290.428 -		if(line.indexOf(search)!=-1)
 290.429 -		{
 290.430 -			line.remove(search,Qt::CaseInsensitive);
 290.431 -			return line.toInt();
 290.432 -		}
 290.433 -		line=configuration.readLine();
 290.434 -		
 290.435 -	}
 290.436 -		configuration.close();
 290.437 -
 290.438 -	return 1;
 290.439 -}
 290.440 -
 290.441 -int ReadFile::getDTNTimer()
 290.442 -{
 290.443 -	QFile configuration("prophet.ini");
 290.444 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.445 -	QString line;
 290.446 -	QString search="DTNTIMER=";
 290.447 -	line=configuration.readLine();
 290.448 -	while(line.size()>0)
 290.449 -	{
 290.450 -		if(line.indexOf(search)!=-1)
 290.451 -		{
 290.452 -			line.remove(search,Qt::CaseInsensitive);
 290.453 -			return line.toInt();
 290.454 -		}
 290.455 -		line=configuration.readLine();
 290.456 -		
 290.457 -	}
 290.458 -		configuration.close();
 290.459 -
 290.460 -	return 1000;
 290.461 -}
 290.462 -
 290.463 -
 290.464 -
 290.465 -int ReadFile::getAgeFileNodes()
 290.466 -{
 290.467 -	QFile configuration("prophet.ini");
 290.468 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.469 -	QString line;
 290.470 -	QString search="AGEFILENODES=";
 290.471 -	line=configuration.readLine();
 290.472 -	while(line.size()>0)
 290.473 -	{
 290.474 -		if(line.indexOf(search)!=-1)
 290.475 -		{
 290.476 -			line.remove(search,Qt::CaseInsensitive);
 290.477 -			return line.toInt();
 290.478 -		}
 290.479 -		line=configuration.readLine();
 290.480 -		
 290.481 -	}
 290.482 -		configuration.close();
 290.483 -
 290.484 -	return 1;
 290.485 -}
 290.486 -
 290.487 -int ReadFile::getContiniusUpdate()
 290.488 -{
 290.489 -	QFile configuration("prophet.ini");
 290.490 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.491 -	QString line;
 290.492 -	QString search="CONTINIUSUPDATE=";
 290.493 -	line=configuration.readLine();
 290.494 -	while(line.size()>0)
 290.495 -	{
 290.496 -		if(line.indexOf(search)!=-1)
 290.497 -		{
 290.498 -			line.remove(search,Qt::CaseInsensitive);
 290.499 -			return line.toInt();
 290.500 -		}
 290.501 -		line=configuration.readLine();
 290.502 -		
 290.503 -	}
 290.504 -		configuration.close();
 290.505 -
 290.506 -	return 1;
 290.507 -}
 290.508 -
 290.509 -
 290.510 -int ReadFile::getNodeId()
 290.511 -{
 290.512 -	QFile configuration("prophet.ini");
 290.513 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.514 -	QString line;
 290.515 -	QString search="NODEID=";
 290.516 -	line=configuration.readLine();
 290.517 -	while(line.size()>0)
 290.518 -	{
 290.519 -		if(line.indexOf(search)!=-1)
 290.520 -		{
 290.521 -			line.remove(search,Qt::CaseInsensitive);
 290.522 -			return line.toInt();
 290.523 -		}
 290.524 -		line=configuration.readLine();
 290.525 -		
 290.526 -	}
 290.527 -		configuration.close();
 290.528 -
 290.529 -	return 0;
 290.530 -}
 290.531 -
 290.532 -int ReadFile::getUseFileBundles()
 290.533 -{
 290.534 -	QFile configuration("prophet.ini");
 290.535 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.536 -	QString line;
 290.537 -	QString search="USEFILEBUNDLES=";
 290.538 -	line=configuration.readLine();
 290.539 -	while(line.size()>0)
 290.540 -	{
 290.541 -		if(line.indexOf(search)!=-1)
 290.542 -		{
 290.543 -			line.remove(search,Qt::CaseInsensitive);
 290.544 -			return line.toInt();
 290.545 -		}
 290.546 -		line=configuration.readLine();
 290.547 -		
 290.548 -	}
 290.549 -		configuration.close();
 290.550 -
 290.551 -	return 1;
 290.552 -}
 290.553 -
 290.554 -
 290.555 -int ReadFile::getWriteToFileTimer()
 290.556 -{
 290.557 -	QFile configuration("prophet.ini");
 290.558 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.559 -	QString line;
 290.560 -	QString search="WRITETOFILETIMER=";
 290.561 -	line=configuration.readLine();
 290.562 -	while(line.size()>0)
 290.563 -	{
 290.564 -		if(line.indexOf(search)!=-1)
 290.565 -		{
 290.566 -			line.remove(search,Qt::CaseInsensitive);
 290.567 -			return line.toInt();
 290.568 -		}
 290.569 -		line=configuration.readLine();
 290.570 -		
 290.571 -	}
 290.572 -		configuration.close();
 290.573 -
 290.574 -	return 60;
 290.575 -}
 290.576 -
 290.577 -int ReadFile::getUseFileHash()
 290.578 -{
 290.579 -	QFile configuration("prophet.ini");
 290.580 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.581 -	QString line;
 290.582 -	QString search="USEFILEHASH=";
 290.583 -	line=configuration.readLine();
 290.584 -	while(line.size()>0)
 290.585 -	{
 290.586 -		if(line.indexOf(search)!=-1)
 290.587 -		{
 290.588 -			line.remove(search,Qt::CaseInsensitive);
 290.589 -			return line.toInt();
 290.590 -		}
 290.591 -		line=configuration.readLine();
 290.592 -		
 290.593 -	}
 290.594 -		configuration.close();
 290.595 -
 290.596 -	return 1;
 290.597 -}
 290.598 -
 290.599 -
 290.600 -int ReadFile::getLogOption()
 290.601 -{
 290.602 -	QFile configuration("prophet.ini");
 290.603 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.604 -	QString line;
 290.605 -	QString search="LOGGING=";
 290.606 -	line=configuration.readLine();
 290.607 -	while(line.size()>0)
 290.608 -	{
 290.609 -		if(line.indexOf(search)!=-1)
 290.610 -		{
 290.611 -			line.remove(search,Qt::CaseInsensitive);
 290.612 -			return line.toInt();
 290.613 -		}
 290.614 -		line=configuration.readLine();
 290.615 -		
 290.616 -	}
 290.617 -		configuration.close();
 290.618 -
 290.619 -	return 60;
 290.620 -}	
 290.621 -
 290.622 -int ReadFile::getUseFileNodes()
 290.623 -{
 290.624 -	QFile configuration("prophet.ini");
 290.625 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.626 -	QString line;
 290.627 -	QString search="USEFILENODES=";
 290.628 -	line=configuration.readLine();
 290.629 -	while(line.size()>0)
 290.630 -	{
 290.631 -		if(line.indexOf(search)!=-1)
 290.632 -		{
 290.633 -			line.remove(search,Qt::CaseInsensitive);
 290.634 -			return line.toInt();
 290.635 -		}
 290.636 -		line=configuration.readLine();
 290.637 -		
 290.638 -	}
 290.639 -		configuration.close();
 290.640 -
 290.641 -	return 0;
 290.642 -}	
 290.643 -
 290.644 -QString ReadFile::getNodeName()
 290.645 -{
 290.646 -	QFile configuration("prophet.ini");
 290.647 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.648 -	QString line;
 290.649 -	QString search="NODENAME=";
 290.650 -	line=configuration.readLine();
 290.651 -	while(line.size()>0)
 290.652 -	{
 290.653 -		if(line.indexOf(search)!=-1)
 290.654 -		{
 290.655 -			line.remove(search,Qt::CaseInsensitive);
 290.656 -			line.chop(1);
 290.657 -			return line;
 290.658 -		}
 290.659 -		line=configuration.readLine();
 290.660 -		
 290.661 -	}
 290.662 -		configuration.close();
 290.663 -
 290.664 -	QString ret="unknown";
 290.665 -	return ret;
 290.666 -}
 290.667 -
 290.668 -QString ReadFile::getStoragePath()
 290.669 -{
 290.670 -	QFile configuration("prophet.ini");
 290.671 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.672 -	QString line;
 290.673 -	QString search="STORAGEPATH=";
 290.674 -	line=configuration.readLine();
 290.675 -	while(line.size()>0)
 290.676 -	{
 290.677 -		if(line.indexOf(search)!=-1)
 290.678 -		{
 290.679 -			line.remove(search,Qt::CaseInsensitive);
 290.680 -			line.chop(1);
 290.681 -			return line;
 290.682 -		}
 290.683 -		line=configuration.readLine();
 290.684 -		
 290.685 -	}
 290.686 -	QString ret="";
 290.687 -		configuration.close();
 290.688 -
 290.689 -	return ret;
 290.690 -}
 290.691 -
 290.692 -QString ReadFile::getLogPath()
 290.693 -{
 290.694 -	QFile configuration("prophet.ini");
 290.695 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.696 -	QString line;
 290.697 -	QString search="LOGPATH=";
 290.698 -	line=configuration.readLine();
 290.699 -	while(line.size()>0)
 290.700 -	{
 290.701 -		if(line.indexOf(search)!=-1)
 290.702 -		{
 290.703 -			line.remove(search,Qt::CaseInsensitive);
 290.704 -			line.chop(1);
 290.705 -			return line;
 290.706 -		}
 290.707 -		line=configuration.readLine();
 290.708 -		
 290.709 -	}
 290.710 -	QString ret="";
 290.711 -			configuration.close();
 290.712 -
 290.713 -	return ret;
 290.714 -}
 290.715 -QString ReadFile::getMsgPath()
 290.716 -{
 290.717 -	QFile configuration("prophet.ini");
 290.718 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.719 -	QString line;
 290.720 -	QString search="MSGPATH=";
 290.721 -	line=configuration.readLine();
 290.722 -	while(line.size()>0)
 290.723 -	{
 290.724 -		if(line.indexOf(search)!=-1)
 290.725 -		{
 290.726 -			line.remove(search,Qt::CaseInsensitive);
 290.727 -			line.chop(1);
 290.728 -			return line;
 290.729 -		}
 290.730 -		line=configuration.readLine();
 290.731 -		
 290.732 -	}
 290.733 -	QString ret="";
 290.734 -		configuration.close();
 290.735 -
 290.736 -	return ret;
 290.737 -}
 290.738 -
 290.739 -QHostAddress ReadFile::getNodeIp()
 290.740 -{
 290.741 -	QFile configuration("prophet.ini");
 290.742 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.743 -	QString line;
 290.744 -	QString search="NODEIP=";
 290.745 -	line=configuration.readLine();
 290.746 -	while(line.size()>0)
 290.747 -	{
 290.748 -		if(line.indexOf(search)!=-1)
 290.749 -		{
 290.750 -			line.remove(search,Qt::CaseInsensitive);
 290.751 -			QHostAddress ip(line);
 290.752 -			return ip;
 290.753 -
 290.754 -		}
 290.755 -		line=configuration.readLine();
 290.756 -	
 290.757 -	}
 290.758 -		configuration.close();
 290.759 -
 290.760 -	QHostAddress ret("192.168.10.1");
 290.761 -	return ret;
 290.762 -}
 290.763 -
 290.764 -QHostAddress ReadFile::getBroadcast()
 290.765 -{
 290.766 -	QFile configuration("prophet.ini");
 290.767 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.768 -	QString line;
 290.769 -	QString search="NODEBROADCAST=";
 290.770 -	line=configuration.readLine();
 290.771 -	while(line.size()>0)
 290.772 -	{
 290.773 -		if(line.indexOf(search)!=-1)
 290.774 -		{
 290.775 -			line.remove(search,Qt::CaseInsensitive);
 290.776 -			QHostAddress ip(line);
 290.777 -			return ip;
 290.778 -
 290.779 -		}
 290.780 -		line=configuration.readLine();
 290.781 -	}
 290.782 -	QHostAddress ret("255.255.255.255");
 290.783 -		configuration.close();
 290.784 -
 290.785 -	return ret;
 290.786 -
 290.787 -}
 290.788 -
 290.789 -QHostAddress ReadFile::getNodeIp2()
 290.790 -{
 290.791 -	QFile configuration("prophet.ini");
 290.792 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.793 -	QString line;
 290.794 -	QString search="NODEIP2=";
 290.795 -	line=configuration.readLine();
 290.796 -	while(line.size()>0)
 290.797 -	{
 290.798 -		if(line.indexOf(search)!=-1)
 290.799 -		{
 290.800 -			line.remove(search,Qt::CaseInsensitive);
 290.801 -			QHostAddress ip(line);
 290.802 -			return ip;
 290.803 -
 290.804 -		}
 290.805 -		line=configuration.readLine();
 290.806 -	
 290.807 -	}
 290.808 -	QHostAddress ret("192.168.10.1");
 290.809 -		configuration.close();
 290.810 -
 290.811 -	return ret;
 290.812 -
 290.813 -}
 290.814 -
 290.815 -QHostAddress ReadFile::getDTNHostName()
 290.816 -{
 290.817 -	QFile configuration("prophet.ini");
 290.818 -	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 290.819 -	QString line;
 290.820 -	QString search="DTNHOSTNAME=";
 290.821 -	line=configuration.readLine();
 290.822 -	while(line.size()>0)
 290.823 -	{
 290.824 -		if(line.indexOf(search)!=-1)
 290.825 -		{
 290.826 -			line.remove(search,Qt::CaseInsensitive);
 290.827 -			QHostAddress ip(line);
 290.828 -			return ip;
 290.829 -
 290.830 -		}
 290.831 -		line=configuration.readLine();
 290.832 -	
 290.833 -	}
 290.834 -	QHostAddress ret("192.168.10.1");
 290.835 -		configuration.close();
 290.836 -
 290.837 -	return ret;
 290.838 -
 290.839 -}
   291.1 --- a/x86/readFile.h	Wed Jan 03 09:17:10 2007 +0000
   291.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   291.3 @@ -1,64 +0,0 @@
   291.4 -#ifndef READFILE_H
   291.5 -#define READFILE_H
   291.6 -
   291.7 -#include <QtCore>
   291.8 -#include <QtNetwork>
   291.9 -
  291.10 -//QSettings could be used instead...
  291.11 -
  291.12 -/*! \brief This class contains the parser for the configuration file 
  291.13 - * prophet.ini.
  291.14 - * 
  291.15 - * */
  291.16 -class ReadFile: public QObject
  291.17 -{
  291.18 -	Q_OBJECT
  291.19 -
  291.20 -	public:
  291.21 -
  291.22 -	QFile configuration;
  291.23 -
  291.24 -	ReadFile();
  291.25 -	float getGamma();
  291.26 -	float getBeta();
  291.27 -	float getPEncounter();
  291.28 -	int getNodeId();
  291.29 -	int getAgingTimer();
  291.30 -	int getHelloTimer();
  291.31 -	int getInitiatorTimer();
  291.32 -	int getListenerTimer();
  291.33 -	int getDTNHostPort();
  291.34 -	int getMemoryStorageSize();
  291.35 -	int getStorageSize();
  291.36 -	int getAlive();
  291.37 -	int getBroadcastTimer();
  291.38 -	int getHello();
  291.39 -	int getContiniusUpdate();
  291.40 -	int getRouting();
  291.41 -	int getUseFileNodes();
  291.42 -	int getWriteToFileTimer();
  291.43 -	int getAgeFileNodes();
  291.44 -	int getUseFileBundles();
  291.45 -	int getLogOption();
  291.46 -	int getUseACKS();
  291.47 -	int getTTL();
  291.48 -	int getUseTTL();
  291.49 -	int getDTNTimer();
  291.50 -	int getQueue();
  291.51 -	int getSmartOffer();
  291.52 -	int getUseFileHash();
  291.53 -	
  291.54 -	QString getStoragePath();
  291.55 -	QString getMsgPath();
  291.56 -	QString getLogPath();
  291.57 -
  291.58 -
  291.59 -
  291.60 -	QString getNodeName();
  291.61 -	QHostAddress getNodeIp();
  291.62 -	QHostAddress getNodeIp2();
  291.63 -	QHostAddress getDTNHostName();
  291.64 -	QHostAddress getBroadcast();
  291.65 -};
  291.66 -
  291.67 -#endif
   292.1 Binary file x86/red_off.png has changed
   293.1 Binary file x86/red_on.png has changed
   294.1 --- a/x86/tcpClient.cpp	Wed Jan 03 09:17:10 2007 +0000
   294.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   294.3 @@ -1,101 +0,0 @@
   294.4 -#include "tcpClient.h"
   294.5 -
   294.6 -TcpClient::TcpClient(QObject* parent) : QTcpSocket(parent)
   294.7 -{
   294.8 -
   294.9 -	timer = new QTimer;
  294.10 -	timer->setSingleShot(true);
  294.11 -	connect(timer, SIGNAL(timeout()), this, SLOT(reconnectToHost()));
  294.12 -	connect(this, SIGNAL(stateChanged(QAbstractSocket::SocketState)), this, SLOT(hostStateChanged(QAbstractSocket::SocketState)));
  294.13 -	connect(this, SIGNAL(error(QAbstractSocket::SocketError)), this, SLOT(hostError(QAbstractSocket::SocketError)));
  294.14 -	connect(this, SIGNAL(readyRead()), this, SLOT(hostReadyRead()));
  294.15 -	int i = readBufferSize();
  294.16 -	setReadBufferSize(0);
  294.17 -	currentHostIndex = 0;
  294.18 -}
  294.19 -
  294.20 -TcpClient::~TcpClient()
  294.21 -{
  294.22 -}
  294.23 -
  294.24 -void TcpClient::addHost(QString hn, int hp)
  294.25 -{
  294.26 -	hostNames << hn;
  294.27 -	hostPorts << hp;
  294.28 -	currentHostIndex = hostNames.count()-1;
  294.29 -	if ((state() == QAbstractSocket::UnconnectedState) && (hostNames.count() == 1))
  294.30 -		connectToHost(hostNames[currentHostIndex], hostPorts[currentHostIndex]);
  294.31 -}
  294.32 -
  294.33 -void TcpClient::reconnectToHost()
  294.34 -{
  294.35 -	if (hostNames.count() == 0)
  294.36 -		return;
  294.37 -	currentHostIndex++;
  294.38 -	currentHostIndex = currentHostIndex % hostNames.count();
  294.39 -	connectToHost(hostNames[currentHostIndex], hostPorts[currentHostIndex]);
  294.40 -}
  294.41 -
  294.42 -void TcpClient::hostStateChanged(QAbstractSocket::SocketState state)
  294.43 -{
  294.44 -	switch (state)
  294.45 -	{
  294.46 -	case QAbstractSocket::ConnectedState:
  294.47 -		{
  294.48 -			QList<QString>::iterator it;
  294.49 -			it = commands.begin();
  294.50 -			while (it != commands.end())
  294.51 -			{
  294.52 -				write((*it).toAscii());
  294.53 -				it++;
  294.54 -			}
  294.55 -			emit connected();
  294.56 -		}
  294.57 -		break;
  294.58 -	case QAbstractSocket::UnconnectedState:
  294.59 -		timer->start(2000);
  294.60 -		emit disconnected();
  294.61 -		break;
  294.62 -	}
  294.63 -}
  294.64 -
  294.65 -void TcpClient::hostError(QAbstractSocket::SocketError error)
  294.66 -{
  294.67 -	abort();
  294.68 -	timer->start(2000);
  294.69 -	emit disconnected();
  294.70 -}
  294.71 -
  294.72 -void TcpClient::hostReadyRead()
  294.73 -{
  294.74 -	buffer += readAll();
  294.75 -	int from = 0;
  294.76 -	int idx;
  294.77 -	int size = buffer.size();
  294.78 -	QByteArray end=buffer.mid(size-5);
  294.79 -	idx = end.indexOf("dtn%", from);
  294.80 -	if (idx != -1)
  294.81 -	{
  294.82 -		QByteArray oddan;
  294.83 -		oddan.append(buffer);
  294.84 -		int velikos = oddan.size();
  294.85 -		emit newAnswer(oddan);
  294.86 -		buffer.clear();
  294.87 -	}
  294.88 -}
  294.89 -
  294.90 -void TcpClient::appendCommand(int id, QString cmd)
  294.91 -{
  294.92 -	cmd += QString("\r");
  294.93 -	commands.append(cmd);
  294.94 -	if (state() == QAbstractSocket::ConnectedState)
  294.95 -		write(cmd.toAscii());
  294.96 -}
  294.97 -
  294.98 -bool TcpClient::isConnected()
  294.99 -{
 294.100 -	if (state() == QAbstractSocket::ConnectedState)
 294.101 -		return true;
 294.102 -	else
 294.103 -		return false;
 294.104 -}
   295.1 --- a/x86/tcpClient.h	Wed Jan 03 09:17:10 2007 +0000
   295.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   295.3 @@ -1,40 +0,0 @@
   295.4 -#ifndef TCPCLIENT_H
   295.5 -#define TCPCLIENT_H
   295.6 -
   295.7 -#include <QtCore>
   295.8 -#include <QTcpSocket>
   295.9 -#include <QTextCodec>
  295.10 -
  295.11 -class TcpClient : public QTcpSocket
  295.12 -{
  295.13 -	Q_OBJECT
  295.14 -
  295.15 -public:
  295.16 -	TcpClient(QObject* parent = 0);
  295.17 -	~TcpClient();
  295.18 -	virtual void addHost(QString hn, int hp);
  295.19 -	virtual void appendCommand(int id, QString cmd);
  295.20 -	virtual bool isConnected();
  295.21 -
  295.22 -public slots:
  295.23 -	virtual void reconnectToHost();
  295.24 -	virtual void hostStateChanged(QAbstractSocket::SocketState state);
  295.25 -	virtual void hostError(QAbstractSocket::SocketError error);
  295.26 -	virtual void hostReadyRead();
  295.27 -
  295.28 -signals:
  295.29 -	void newAnswer(QByteArray answ);
  295.30 -	void connected();
  295.31 -	void disconnected();
  295.32 -	
  295.33 -private:
  295.34 -	QList<QString> commands;
  295.35 -	QList<int> ids;
  295.36 -	QByteArray buffer;
  295.37 -	QTimer* timer;
  295.38 -	QList<QString> hostNames;
  295.39 -	QList<int> hostPorts;
  295.40 -	int currentHostIndex;
  295.41 -};
  295.42 -
  295.43 -#endif
   296.1 --- a/x86/tlv.cpp	Wed Jan 03 09:17:10 2007 +0000
   296.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   296.3 @@ -1,521 +0,0 @@
   296.4 -#include <QtCore>
   296.5 -#include <tlv.h>
   296.6 -#include <hello.h>
   296.7 -#include <messageFile.h>
   296.8 -#include <readFile.h>
   296.9 -#include <stdio.h>
  296.10 -
  296.11 -
  296.12 -//WARNING: SOME OF THE STRUCTURES HAS BEEN MODIFIED AND ARE NOT THE SAME AS IN DRAFT!
  296.13 -struct HelloHeader
  296.14 -{
  296.15 -	qint32 type;
  296.16 -	qint32 function;
  296.17 -	qint32 timer;
  296.18 -	qint32 nameLenght;
  296.19 -	qint32 nodeId;
  296.20 -	qint32 nodeType;
  296.21 -};
  296.22 -
  296.23 -struct DictionaryHeader 
  296.24 -{
  296.25 -	qint32 type;
  296.26 -	qint32 flags;
  296.27 -	qint32 lenght;
  296.28 -	qint32 entryCount;
  296.29 -	qint32 reserved;
  296.30 -};
  296.31 -
  296.32 -struct BundleListHeader 
  296.33 -{
  296.34 -	qint32 type;
  296.35 -	qint32 flags;
  296.36 -	qint32 lenght;
  296.37 -	qint32 entryCount;
  296.38 -	qint32 reserved;
  296.39 -};
  296.40 -
  296.41 -struct BundleListItem 
  296.42 -{
  296.43 -	qint32 destinationId;
  296.44 -	qint32 BFlags;
  296.45 -	qint32 reserved;
  296.46 -	qint32 bundleId;
  296.47 -};
  296.48 -
  296.49 -struct BundleDataHeader 
  296.50 -{
  296.51 -	qint32 sourceId;
  296.52 -	qint32 destinationId;
  296.53 -	qint32 bundleId;
  296.54 -	qint32 BFlags;
  296.55 -	qint32 reserved;
  296.56 -	qint32 dataLenght;	
  296.57 -	qint32 sourceStringLenght;
  296.58 -	qint32 destinationStringLenght;
  296.59 -	uint time;
  296.60 -};
  296.61 -
  296.62 -
  296.63 -struct DictionaryNodeHeader 
  296.64 -{
  296.65 -	qint32 stringId;
  296.66 -	qint32 lenght;
  296.67 -	qint32 reserved;
  296.68 -};
  296.69 -
  296.70 -struct RIBNodeHeader 
  296.71 -{
  296.72 -	qint32 stringId;
  296.73 -	float probability;
  296.74 -	qint32 RIBFlag;
  296.75 -};
  296.76 -
  296.77 -struct Header 
  296.78 -{
  296.79 -	qint32 type;
  296.80 -
  296.81 -};
  296.82 -
  296.83 -
  296.84 -
  296.85 -TLV::TLV(QObject *parent)
  296.86 -{
  296.87 -	ReadFile conf;
  296.88 -	fileOption=conf.getUseFileBundles();
  296.89 -	if(fileOption==1)
  296.90 -	{
  296.91 -		QString storagePath=conf.getStoragePath();
  296.92 -		dir.setPath(storagePath);
  296.93 -	}
  296.94 -}
  296.95 -
  296.96 -
  296.97 -
  296.98 -void TLV::receiveDatagram(QByteArray datagram)
  296.99 -{
 296.100 -	Header* TLVType;
 296.101 -	TLVType= (Header*) datagram.constData();
 296.102 -	qint32 datagramIndex;
 296.103 -	//Read out TLV Type
 296.104 -	QByteArray temp;
 296.105 -	Hello newHello;
 296.106 -	QList<Node> receivedNodes;
 296.107 -	QList<Bundle> receivedBundles;
 296.108 -	QString name;
 296.109 -	struct DictionaryHeader *dictionaryHeader; //It is the same for RIB
 296.110 -	struct BundleListHeader *bundleHeader;
 296.111 -	struct HelloHeader *hello;
 296.112 -	qint32 entryCount;	
 296.113 -	qint32 lenght;
 296.114 -	switch(TLVType->type)
 296.115 -	{
 296.116 -		//Hello massage forming
 296.117 -		case 0x01:	//////log->addLog(0,(QString)"TLV receiving Hello datagram...");
 296.118 -					hello= (HelloHeader*) datagram.constData();
 296.119 - 					newHello.HFunction=(qint32)hello->function;
 296.120 -					newHello.timer =(qint32)hello->timer;
 296.121 -					newHello.senderId=(qint32)hello->nodeId;
 296.122 -					newHello.senderType =(qint32)hello->nodeType;
 296.123 -					lenght = (qint32)hello->nameLenght;
 296.124 -					datagram.remove(0,sizeof(HelloHeader));
 296.125 -					name=datagram.mid(0,lenght);
 296.126 -					newHello.setSenderName(name);
 296.127 -					emit sendHello(newHello);
 296.128 -		break;
 296.129 -		//RIB
 296.130 -		case 0xA1:	//////log->addLog(0,(QString)"TLV receiving RIB datagram...");
 296.131 -					dictionaryHeader = (DictionaryHeader*) datagram.constData();
 296.132 -					entryCount=dictionaryHeader->entryCount;
 296.133 -					datagram.remove(0,sizeof(DictionaryHeader));
 296.134 -					for (ushort i = 0; i < entryCount; ++i) 
 296.135 -					{
 296.136 -						//Resolving data from datagram
 296.137 -						struct RIBNodeHeader *nodeHeader = (RIBNodeHeader*) datagram.constData();
 296.138 -						qint32 stringId = (qint32)nodeHeader->stringId;
 296.139 -						qint32 flag = (qint32)nodeHeader->RIBFlag;
 296.140 -						float probability = (float)nodeHeader->probability;
 296.141 -						datagram.remove(0,sizeof(RIBNodeHeader));
 296.142 -						//Setting node variables
 296.143 -						Node tempNode;
 296.144 -						tempNode.setContent(stringId,probability,flag,"X");
 296.145 -						//Adding variables in the list
 296.146 -						receivedNodes.append(tempNode);
 296.147 -					}
 296.148 -					emit sendRIB(receivedNodes);
 296.149 -		break;
 296.150 -		//BUNDLE OFFER RECEIVED
 296.151 -		case 0xA2:	//////log->addLog(0,(QString)"TLV receiving Bundle offer datagram...");
 296.152 -					bundleHeader = (BundleListHeader*) datagram.constData();
 296.153 -					entryCount=(qint32)bundleHeader->entryCount;
 296.154 -					datagramIndex=sizeof(BundleListHeader);
 296.155 -					datagram.remove(0,datagramIndex);
 296.156 -					for (ushort i = 0; i < entryCount; ++i) 
 296.157 -					{
 296.158 -						//Resolving data from datagram
 296.159 -						struct BundleListItem *bundleItem;
 296.160 -						bundleItem = (BundleListItem*) datagram.constData();
 296.161 -						
 296.162 -						qint32 destId = (qint32)bundleItem->destinationId;
 296.163 -						qint32 bundId = (qint32)bundleItem->bundleId;
 296.164 -						qint32 BFlags = (qint32)bundleItem->BFlags;
 296.165 -						qint32 reserved = (qint32)bundleItem->reserved;
 296.166 -						datagram.remove(0,sizeof(BundleListItem));
 296.167 -						//Setting Bundle variables
 296.168 -						Bundle tempBundle;
 296.169 -						tempBundle.destinationId = destId;
 296.170 -						tempBundle.id = bundId;
 296.171 -						tempBundle.options = BFlags;
 296.172 -						//Adding variables in the list
 296.173 -						receivedBundles.append(tempBundle);
 296.174 -					}
 296.175 -					emit sendBundleOffer(receivedBundles);
 296.176 -		break;
 296.177 -		//BUNDLE REQUEST RECEIVED
 296.178 -		case 0xA3:	//////log->addLog(0,(QString)"TLV receiving Bundle Request datagram...");
 296.179 -					bundleHeader = (BundleListHeader*) datagram.constData();
 296.180 -					entryCount=bundleHeader->entryCount;
 296.181 -					datagramIndex=sizeof(BundleListHeader);
 296.182 -					datagram.remove(0,datagramIndex);
 296.183 -					for (ushort i = 0; i < entryCount; ++i) 
 296.184 -					{
 296.185 -						//Resolving data from datagram
 296.186 -						struct BundleListItem *bundleItem;
 296.187 -						bundleItem = (BundleListItem*) datagram.constData();
 296.188 -						
 296.189 -						qint32 destId = (qint32)bundleItem->destinationId;
 296.190 -						qint32 bundId = (qint32)bundleItem->bundleId;
 296.191 -						qint32 BFlags = (qint32)bundleItem->BFlags;
 296.192 -						qint32 reserved = (qint32)bundleItem->reserved;
 296.193 -						datagram.remove(0,sizeof(BundleListItem));
 296.194 -						//Setting Bundle variables
 296.195 -						Bundle tempBundle;
 296.196 -						tempBundle.destinationId = destId;
 296.197 -						tempBundle.id = bundId;
 296.198 -						tempBundle.options = BFlags;
 296.199 -						//Adding variables in the list
 296.200 -						receivedBundles.append(tempBundle);
 296.201 -					}
 296.202 -					emit sendBundleRequest(receivedBundles);
 296.203 -		break;
 296.204 -		//Dictionary
 296.205 -		case 0xA0:	//////log->addLog(0,(QString)"TLV receiving Dictionary datagram...");
 296.206 -					dictionaryHeader = (DictionaryHeader*) datagram.constData();
 296.207 -					entryCount=dictionaryHeader->entryCount;
 296.208 -					datagram.remove(0,sizeof(DictionaryHeader));
 296.209 -					for (ushort i = 0; i < entryCount; ++i) 
 296.210 -					{
 296.211 -						QString nodeName;
 296.212 -						//Resolving data from datagram
 296.213 -						struct DictionaryNodeHeader * nodeHeader = (DictionaryNodeHeader*) datagram.constData();
 296.214 -						qint32 stringId = (qint32)nodeHeader->stringId;
 296.215 -						qint32 lenght = (qint32)nodeHeader->lenght;
 296.216 -						datagram.remove(0,sizeof(DictionaryNodeHeader)); //Because stings terminator
 296.217 -						nodeName=datagram.mid(0,lenght);
 296.218 -						datagram.remove(0,lenght);
 296.219 -						//Setting node variables
 296.220 -						Node tempNode;
 296.221 -						tempNode.setContent(stringId,0.0,-1,nodeName);
 296.222 -						//Adding variables in the list
 296.223 -						receivedNodes.append(tempNode);
 296.224 -					}
 296.225 -					emit sendDictionary(receivedNodes);
 296.226 -		break;		
 296.227 -		//BUNDLE DATA RECEIVED
 296.228 -		case 0xA4:	//////log->addLog(0,(QString)"TLV receiving Bundle data datagram...");
 296.229 -					bundleHeader = (BundleListHeader*) datagram.constData();
 296.230 -					entryCount=bundleHeader->entryCount;
 296.231 -					datagramIndex=sizeof(BundleListHeader);
 296.232 -					datagram.remove(0,datagramIndex);
 296.233 -					for (ushort i = 0; i < entryCount; ++i) 
 296.234 -					{
 296.235 -						//Resolving data from datagram
 296.236 -						struct BundleDataHeader *bundleItem;
 296.237 -						bundleItem = (BundleDataHeader*) datagram.constData();
 296.238 -						
 296.239 -						qint32 destId = (qint32)bundleItem->destinationId;
 296.240 -						qint32 srcId = (qint32)bundleItem->sourceId;
 296.241 -						qint32 bundId = (qint32)bundleItem->bundleId;
 296.242 -						qint32 BFlags = (qint32)bundleItem->BFlags;
 296.243 -						qint32 reserved = (qint32)bundleItem->reserved;
 296.244 -						qint32 lenght = (qint32)bundleItem->dataLenght;
 296.245 -						qint32 srclenght = (qint32)bundleItem->sourceStringLenght;
 296.246 -						qint32 dstlenght = (qint32)bundleItem->destinationStringLenght;
 296.247 -						
 296.248 -						QDateTime time;
 296.249 -						time.setTime_t(bundleItem->time);
 296.250 -						datagram.remove(0,sizeof(BundleDataHeader));
 296.251 -						//Setting Bundle variables
 296.252 -						Bundle tempBundle;
 296.253 -						tempBundle.destinationId = destId;
 296.254 -						tempBundle.sourceId = srcId;
 296.255 -						tempBundle.id = bundId;
 296.256 -						tempBundle.options = BFlags;
 296.257 -						tempBundle.timeStamp = time;
 296.258 -						QByteArray datagramPart;
 296.259 -						datagramPart=datagram.mid(0,lenght);
 296.260 -						tempBundle.data=datagramPart;
 296.261 -						datagram.remove(0,lenght);
 296.262 -						tempBundle.dataLength=lenght;
 296.263 -						datagramPart=datagram.mid(0,srclenght);
 296.264 -						tempBundle.sourceString=datagramPart;
 296.265 -						datagram.remove(0,srclenght);
 296.266 -						datagramPart=datagram.mid(0,dstlenght);
 296.267 -						tempBundle.destinationString=datagramPart;
 296.268 -						datagram.remove(0,dstlenght);
 296.269 -						//Adding variables in the list
 296.270 -						receivedBundles.append(tempBundle);
 296.271 -					}
 296.272 -					emit sendBundleData(receivedBundles);
 296.273 -		break;
 296.274 -		default:	//////log->addLog(0,(QString)"TLV receiving Unknown datagram...");
 296.275 -					//QString name;
 296.276 -					temp = datagram.mid(2,1);
 296.277 -//					function = temp.toushort();
 296.278 -					temp = datagram.mid(32,1);
 296.279 -//					timer = temp.toushort();
 296.280 -					temp = datagram.mid(40,1);
 296.281 -//					nameLenght = temp.toushort();
 296.282 -					temp = datagram.mid(48,0);
 296.283 -					newHello.setFunction(0);
 296.284 -					newHello.setTimer(0);
 296.285 -					newHello.setSenderName(0);
 296.286 -
 296.287 -		break;
 296.288 -	}
 296.289 -
 296.290 -}
 296.291 -
 296.292 -
 296.293 -void TLV::receiveHello(Hello hello)
 296.294 -{
 296.295 -	//Setting up variables
 296.296 -	struct HelloHeader header;
 296.297 -	QString nodeName = hello.getSenderName();
 296.298 -	header.type = 0x01;//Hello 
 296.299 -	header.function = (qint32)hello.getFunction();
 296.300 -	header.timer = (qint32)hello.getTimer();
 296.301 -	header.nodeId = (qint32)hello.senderId;
 296.302 -	header.nodeType = (qint32)hello.senderType;
 296.303 -	header.nameLenght = (qint32)nodeName.size();
 296.304 -	//Preparing heder
 296.305 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(HelloHeader));	
 296.306 -	//Adding Addres Strings
 296.307 -	newDatagram.append(nodeName.toAscii());
 296.308 -	//Sending our TLV datagram
 296.309 -	//////log->addLog(0,(QString)"TLV sending Hello datagram...");
 296.310 -	emit sendDatagram(newDatagram);
 296.311 -}
 296.312 -
 296.313 -
 296.314 -//Create Dictionary
 296.315 -void TLV::createDictionary(QList<Node> nodeList)
 296.316 -{
 296.317 -	//Setting up variables
 296.318 -	struct DictionaryHeader header;
 296.319 -	header.type = 0xA0;//Dictionary 
 296.320 -	header.flags = 0x00;
 296.321 -	header.lenght = 0x00;
 296.322 -	header.entryCount=(qint32)(nodeList.size());
 296.323 -	header.reserved = 0x00;
 296.324 -	//Preparing heder
 296.325 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(DictionaryHeader));	
 296.326 -	//Adding Addres Strings
 296.327 -	Node tempNode;
 296.328 -	for (ushort i = 0; i < nodeList.size(); ++i) 
 296.329 -	{
 296.330 -		struct DictionaryNodeHeader newNodeHeader;
 296.331 -		//Resolving data from list
 296.332 -        tempNode = nodeList.at(i);
 296.333 -		newNodeHeader.stringId = (qint32)tempNode.getId();
 296.334 -		newNodeHeader.reserved=0x00;
 296.335 -		newNodeHeader.lenght= (qint32)tempNode.nodeName.size();
 296.336 -		//Puting data to datagram
 296.337 -		QByteArray nodeDatagram = QByteArray::fromRawData((char *)&newNodeHeader, sizeof(newNodeHeader));	
 296.338 -		nodeDatagram.append(tempNode.nodeName);
 296.339 -		newDatagram.append(nodeDatagram);
 296.340 -    }
 296.341 -	//////log->addLog(0,(QString)"TLV Sending dictionary datagram...");
 296.342 -	emit sendDatagram(newDatagram);
 296.343 -
 296.344 -}
 296.345 -
 296.346 -//Create RIB
 296.347 -void TLV::createRIB(QList<Node> nodeList)
 296.348 -{
 296.349 -	//Setting up variables
 296.350 -	struct DictionaryHeader header; //It is the same as Dictionary
 296.351 -	header.type = 0xA1;//RIB Type
 296.352 -	header.flags = 0x00;
 296.353 -	header.lenght = 0x00;
 296.354 -	header.entryCount=(qint32)nodeList.size();
 296.355 -	header.reserved = 0x00;
 296.356 -	//Preparing heder
 296.357 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(DictionaryHeader));	
 296.358 -	for (ushort i = 0; i < nodeList.size(); ++i) 
 296.359 -	{
 296.360 -		Node tempNode;
 296.361 -		struct RIBNodeHeader  newNodeHeader;
 296.362 -		//Resolving data from list
 296.363 -        tempNode = nodeList.at(i);
 296.364 -		newNodeHeader.stringId = (qint32)tempNode.getId();
 296.365 -		newNodeHeader.probability = tempNode.getProbability();
 296.366 -		newNodeHeader.RIBFlag = (qint32)tempNode.getFlag();
 296.367 -		//Puting data to datagram
 296.368 -		QByteArray nodeDatagram = QByteArray::fromRawData((char *)&newNodeHeader, sizeof(newNodeHeader));	
 296.369 -		newDatagram.append(nodeDatagram);
 296.370 -    }
 296.371 -	//////log->addLog(0,(QString)"TLV Sending RIB datagram...");
 296.372 -	emit sendDatagram(newDatagram);
 296.373 -
 296.374 -}
 296.375 -
 296.376 -
 296.377 -//Create BundleOffer
 296.378 -void TLV::createBundleOffer(QList<Bundle> bundleList)
 296.379 -{
 296.380 -	//Setting up variables
 296.381 -	struct BundleListHeader header;
 296.382 -	header.type = 0xA2;//Offer
 296.383 -	header.flags = 0x22;
 296.384 -	header.lenght = 0x00;
 296.385 -	header.entryCount=(qint32)bundleList.size();
 296.386 -	header.reserved = 0x00;
 296.387 -	//Preparing heder
 296.388 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(BundleListHeader));	
 296.389 -	//Adding bundles
 296.390 -	for (ushort i = 0; i < bundleList.size(); ++i) 
 296.391 -	{
 296.392 -		struct BundleListItem newBundleItem;
 296.393 -		//Resolving data from list
 296.394 -        Bundle tempBundle = bundleList.at(i);
 296.395 -		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 296.396 -		newBundleItem.bundleId=(qint32)tempBundle.id;
 296.397 -		newBundleItem.BFlags=(qint32)tempBundle.options;
 296.398 -		newBundleItem.reserved=0xaa;
 296.399 -		//Puting data to datagram
 296.400 -		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(newBundleItem));	
 296.401 -		newDatagram.append(bundleDatagram);
 296.402 -    }
 296.403 -	//////log->addLog(0,(QString)"TLV Sending bundle offer...");
 296.404 -	emit sendDatagram(newDatagram);
 296.405 -
 296.406 -}
 296.407 -
 296.408 -//Create BundleRequest
 296.409 -void TLV::createBundleRequest(QList<Bundle> bundleList)
 296.410 -{
 296.411 -	//Setting up variables
 296.412 -	struct BundleListHeader header;
 296.413 -	header.type = 0xA3;//Request
 296.414 -	header.flags = 0x22;
 296.415 -	header.lenght = 0x00;
 296.416 -	header.entryCount=bundleList.size();
 296.417 -	header.reserved = 0x00;
 296.418 -	//Preparing heder
 296.419 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(BundleListHeader));	
 296.420 -	//Adding bundles
 296.421 -	for (ushort i = 0; i < bundleList.size(); ++i) 
 296.422 -	{
 296.423 -		struct BundleListItem newBundleItem;
 296.424 -		//Resolving data from list
 296.425 -        Bundle tempBundle = bundleList.at(i);
 296.426 -		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 296.427 -		newBundleItem.bundleId=(qint32)tempBundle.id;
 296.428 -		newBundleItem.BFlags=(qint32)tempBundle.options;
 296.429 -		newBundleItem.reserved=0xaa;
 296.430 -		//Puting data to datagram
 296.431 -		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(BundleListItem));	
 296.432 -		newDatagram.append(bundleDatagram);
 296.433 -    }
 296.434 -	//////log->addLog(0,(QString)"TLV Sending bundle request...");
 296.435 -	emit sendDatagram(newDatagram);
 296.436 -
 296.437 -}
 296.438 -
 296.439 -
 296.440 -///Create Bundle Data
 296.441 -void TLV::createBundleData(QList<Bundle> bundleList)
 296.442 -{
 296.443 -
 296.444 -	
 296.445 -	//Setting up variables
 296.446 -	struct BundleListHeader header;
 296.447 -	header.type = 0xA4;//Bundle Data
 296.448 -	header.flags = 0x22;
 296.449 -	header.lenght = 0x00;
 296.450 -	header.entryCount=bundleList.size();
 296.451 -	header.reserved = 0x00;
 296.452 -	//Preparing heder
 296.453 -	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(header));	
 296.454 -	//Adding bundles
 296.455 -	for (ushort i = 0; i < bundleList.size(); ++i) 
 296.456 -	{
 296.457 -		struct BundleDataHeader newBundleItem;
 296.458 -		//Resolving data from list
 296.459 -        	Bundle tempBundle = bundleList.at(i);
 296.460 -		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 296.461 -		newBundleItem.sourceId=(qint32)tempBundle.sourceId;
 296.462 -		newBundleItem.bundleId=(qint32)tempBundle.id;
 296.463 -		newBundleItem.BFlags=(qint32)tempBundle.options;
 296.464 -		newBundleItem.reserved=0xaa;
 296.465 -		newBundleItem.time = tempBundle.timeStamp.toTime_t ();
 296.466 -		//Get bundle data
 296.467 -		QByteArray data;
 296.468 -		data.clear();
 296.469 -		int fileSize;
 296.470 -		if(fileOption==1)
 296.471 -		{
 296.472 -			QString filename;
 296.473 -			filename=QString("%1").arg((int)tempBundle.id);
 296.474 -			QFile file(dir.filePath(filename));
 296.475 -			if(file.exists()==1)
 296.476 -			{
 296.477 -				if (file.open(QIODevice::ReadOnly))
 296.478 -				{
 296.479 -					fileSize=file.size();
 296.480 -					data=file.readAll();
 296.481 -			    		file.close();
 296.482 -				}
 296.483 -			}
 296.484 -		}
 296.485 -		else
 296.486 -		{
 296.487 -			data = tempBundle.data;
 296.488 -		}
 296.489 -		if(data.size()<=0)
 296.490 -			data.clear();
 296.491 -	/*	int size = data.size();
 296.492 -	        QString printout="Size:";
 296.493 -		printout.append(QString("%1").arg((int)size));
 296.494 -		qDebug(printout.toAscii());
 296.495 -		printout.clear();
 296.496 -		printout.append("FileSize:");
 296.497 -		printout.append(QString("%1").arg((int)fileSize));
 296.498 -		qDebug(printout.toAscii());
 296.499 -		printout.clear();
 296.500 -		printout.append("Data:");
 296.501 -		printout.append(data);
 296.502 -		qDebug(printout.toAscii());
 296.503 -	*/	newBundleItem.dataLenght=(qint32)data.size();
 296.504 -		//Get bundle source string
 296.505 -		QByteArray srcData = tempBundle.sourceString;
 296.506 -		newBundleItem.sourceStringLenght=(qint32)srcData.size();
 296.507 -		//Get bundle destination string
 296.508 -		QByteArray dstData = tempBundle.destinationString;
 296.509 -		newBundleItem.destinationStringLenght=(qint32)dstData.size();
 296.510 -		//Puting item header to datagram
 296.511 -		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(newBundleItem));	
 296.512 -		//Puting item data to datagram
 296.513 -		bundleDatagram.append(data);
 296.514 -		bundleDatagram.append(srcData);
 296.515 -		bundleDatagram.append(dstData);
 296.516 -		//Adding it to main datagram
 296.517 -		newDatagram.append(bundleDatagram);
 296.518 -
 296.519 -    }
 296.520 -	//////log->addLog(0,(QString)"TLV Sending bundle data...");
 296.521 -	emit sendDatagram(newDatagram);
 296.522 -}
 296.523 -
 296.524 -
   297.1 --- a/x86/tlv.h	Wed Jan 03 09:17:10 2007 +0000
   297.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
   297.3 @@ -1,115 +0,0 @@
   297.4 -#ifndef TLV_H
   297.5 -#define TLV_H
   297.6 -
   297.7 -#include <QtCore>
   297.8 -#include <hello.h>
   297.9 -#include <node.h>
  297.10 -#include <bundle.h>
  297.11 -
  297.12 -/*! \brief This class converts datagrams to objects and vice versa.
  297.13 - * 
  297.14 - */
  297.15 -class TLV : public QObject
  297.16 -{
  297.17 -
  297.18 -Q_OBJECT 
  297.19 -	public:
  297.20 -		TLV(QObject *parent = 0);
  297.21 -		int fileOption;
  297.22 -		QDir dir;
  297.23 -
  297.24 -	signals:
  297.25 -		/*! \brief
  297.26 -		 * Sends a datagram to the appropriate Connection object, 
  297.27 -		 * which in turn passes it on as a DataPacket to 
  297.28 -		 * NeighborAwareness where it is sent out on a socket.
  297.29 -		 */
  297.30 -		void sendDatagram(QByteArray);
  297.31 -	
  297.32 -		/*! \brief
  297.33 -		 * Emits a Hello message to the appropriate Connection object.
  297.34 -		 */
  297.35 -		void sendHello(Hello);
  297.36 -		
  297.37 -		/*! \brief
  297.38 -		 * Emits a list with id<-> name mappings to the appropriate 
  297.39 -		 * Conenction object.
  297.40 -		 */
  297.41 -		void sendDictionary(QList<Node>);
  297.42 -		
  297.43 -		/*! \brief
  297.44 -		 * Emits a list of id<->probability mappings to the 
  297.45 -		 * appropriate Connection object.
  297.46 -		 */
  297.47 -		void sendRIB(QList<Node>);
  297.48 -		
  297.49 -		/*! \brief
  297.50 -		 * Emits a bundle offer to the appropriate Connection object.
  297.51 -		 */
  297.52 -		void sendBundleOffer(QList<Bundle>);
  297.53 -		
  297.54 -		/*! \brief
  297.55 -		 * Emits a bundle request to the appropriate Connection object.
  297.56 -		 */
  297.57 -		void sendBundleRequest(QList<Bundle>);
  297.58 -		
  297.59 -		//! Emits a list of bundles containing data.
  297.60 -		/*!
  297.61 -		 * Connected to Connection::receiveBundles.
  297.62 -		 */
  297.63 -		void sendBundleData(QList<Bundle>);
  297.64 -		
  297.65 -	public slots:
  297.66 -	/*! \brief
  297.67 -	 * Builds a hello datagram and emits the signal sendDatagram.
  297.68 -	 * @param hello the Hello object to build a datagram of.
  297.69 -	 */
  297.70 -	void receiveHello(Hello);
  297.71 -		
  297.72 -	/*! \brief
  297.73 -	 * Classifies incoming Datagrams, creates objects from them and emits 
  297.74 -	 * the appropriate signals.
  297.75 -	 * @param datagram the data to be parsed.
  297.76 -	 */
  297.77 -	void receiveDatagram(QByteArray);
  297.78 -		
  297.79 -	/*! \brief
  297.80 -	 * Builds a datagram containing a dictionary, that is a mapping 
  297.81 -	 * between node ids and names. The datagram is emitted by the 
  297.82 -	 * sendDatagram signal.
  297.83 -	 * @param the list of nodes to create the dictionary from.
  297.84 -	 */
  297.85 -	void createDictionary(QList<Node>);
  297.86 -	
  297.87 -	/*! \brief
  297.88 -	 * Builds a datagram containing a RIB, that is a mapping between node 
  297.89 -	 * ids and their delivery predictabilities. Emits the sendDatagram 
  297.90 -	 * signal.
  297.91 -	 * @param the list of nodes to create the RIB from.
  297.92 -	 */
  297.93 -	void createRIB(QList<Node>);
  297.94 -	
  297.95 -	/*! \brief
  297.96 -	 * Builds a bundle offer datagram. That is a list of all bundles this 
  297.97 -	 * node is carrying. Emits the sendDatagram signal.
  297.98 -	 * @param the list of bundles to create the offer from.
  297.99 -	 */
 297.100 -	void createBundleOffer(QList<Bundle>);
 297.101 -	
 297.102 -	/*! \brief
 297.103 -	 * Builds a bundle request datagram, that is a datagram containing a 
 297.104 -	 * list of the bundles this node would like receive. Emits the 
 297.105 -	 * sendDatagram signal.
 297.106 -	 * @param a list of the bundles to be requested.
 297.107 -	 */
 297.108 -	void createBundleRequest(QList<Bundle>);
 297.109 -	
 297.110 -	/*! \brief
 297.111 -	 * Builds a datagram containing all bundles to be transferred to a 
 297.112 -	 * neighbor node. Emits the sendDatagram signal.
 297.113 -	 * @param the list of bundles to send to the neighbor node.
 297.114 -	 */
 297.115 -	void createBundleData(QList<Bundle>);
 297.116 -};
 297.117 -
 297.118 -#endif
   298.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   298.2 +++ b/x86/x86/2.7/DTN/HexDumpBuffer.cc	Thu Jun 26 17:39:40 2008 +0100
   298.3 @@ -0,0 +1,63 @@
   298.4 +/*
   298.5 + * IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. By
   298.6 + * downloading, copying, installing or using the software you agree to
   298.7 + * this license. If you do not agree to this license, do not download,
   298.8 + * install, copy or use the software.
   298.9 + * 
  298.10 + * Intel Open Source License 
  298.11 + * 
  298.12 + * Copyright (c) 2004 Intel Corporation. All rights reserved. 
  298.13 + * 
  298.14 + * Redistribution and use in source and binary forms, with or without
  298.15 + * modification, are permitted provided that the following conditions are
  298.16 + * met:
  298.17 + * 
  298.18 + *   Redistributions of source code must retain the above copyright
  298.19 + *   notice, this list of conditions and the following disclaimer.
  298.20 + * 
  298.21 + *   Redistributions in binary form must reproduce the above copyright
  298.22 + *   notice, this list of conditions and the following disclaimer in the
  298.23 + *   documentation and/or other materials provided with the distribution.
  298.24 + * 
  298.25 + *   Neither the name of the Intel Corporation nor the names of its
  298.26 + *   contributors may be used to endorse or promote products derived from
  298.27 + *   this software without specific prior written permission.
  298.28 + *  
  298.29 + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  298.30 + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  298.31 + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  298.32 + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE INTEL OR
  298.33 + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  298.34 + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  298.35 + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  298.36 + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  298.37 + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  298.38 + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  298.39 + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  298.40 + */
  298.41 +
  298.42 +#include <ctype.h>
  298.43 +#include "HexDumpBuffer.h"
  298.44 +
  298.45 +namespace oasys {
  298.46 +
  298.47 +void
  298.48 +HexDumpBuffer::hexify()
  298.49 +{
  298.50 +    // make a copy of the current data
  298.51 +    size_t len = length();
  298.52 +    std::string contents(data(), len);
  298.53 +    // rewind the string buffer backwards
  298.54 +    trim(length());
  298.55 +
  298.56 +    // generate the dump
  298.57 +    u_char* bp = (u_char*)contents.data();
  298.58 +    appendf("Size:%d\n",len);
  298.59 +    for (size_t i = 0; i < len; ++i, ++bp)
  298.60 +    {
  298.61 +        // print the hex character
  298.62 +        appendf("%02x", *bp);
  298.63 +    }
  298.64 +}
  298.65 +
  298.66 +} // namespace oasys
   299.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   299.2 +++ b/x86/x86/2.7/DTNInterface.cpp	Thu Jun 26 17:39:40 2008 +0100
   299.3 @@ -0,0 +1,284 @@
   299.4 +#include <QtCore>
   299.5 +#include <QtNetwork>
   299.6 +#include <readFile.h>
   299.7 +#include <bundleManager.h>
   299.8 +#include <DTNInterface.h>
   299.9 +#include <tcpClient.h>
  299.10 +
  299.11 +#define DTNTIMER 500
  299.12 +
  299.13 +
  299.14 +#define INIT 0
  299.15 +#define DTNLIST 1
  299.16 +#define IDLE 2
  299.17 +#define PARSE 3
  299.18 +
  299.19 +DTNInterface::DTNInterface(BundleManager* bundleMng, NodeManager* nodeMng)
  299.20 +{
  299.21 +	ReadFile conf;
  299.22 +	hostPort=conf.getDTNHostPort();
  299.23 +	hostAddress=conf.getDTNHostName();
  299.24 +	ourName=conf.getNodeName();
  299.25 +	ourId=conf.getNodeId();
  299.26 +	bundleManager = bundleMng;
  299.27 +	nodeManager = nodeMng;
  299.28 +	//Create and connect Hello Timer
  299.29 +	timer = new QTimer(this);
  299.30 +    connect(timer, SIGNAL(timeout()), this, SLOT(getBundles()));
  299.31 +    timer->start(DTNTIMER);
  299.32 +	client = new TcpClient(this);
  299.33 +    sender = new TcpClient(this);
  299.34 +	connect(client, SIGNAL(newAnswer(QByteArray)), this, SLOT(getResponse(QByteArray)));
  299.35 +	client->addHost(hostAddress.toString(),hostPort);
  299.36 +	sender->addHost(hostAddress.toString(),hostPort);
  299.37 +	dtnState=INIT;
  299.38 +	bundlesToParse=0;
  299.39 +	parsedList.clear();
  299.40 +	bundleList.clear();
  299.41 +	ackOption=conf.getUseACKS();
  299.42 +
  299.43 +}
  299.44 +
  299.45 +void DTNInterface::receiveBundle(Bundle bundle)
  299.46 +{
  299.47 +	QString command;
  299.48 +	if(bundle.data.size()>0)
  299.49 +	{
  299.50 +		command.append("bundle inject ");
  299.51 +		command.append(bundle.sourceString);
  299.52 +		command.append(" ");
  299.53 +		command.append(bundle.destinationString);
  299.54 +		command.append(" \"");
  299.55 +		for (int m = 0; m < bundle.data.size(); ++m)
  299.56 +		{
  299.57 +			QString ch;
  299.58 +			ch.append("\\x");
  299.59 +			ch.append(QString("%1").arg((unsigned char)bundle.data.at(m),0,16)  );
  299.60 +			command.append(ch);
  299.61 +		}	
  299.62 +		command.append("\"");
  299.63 +		sender->appendCommand(0,command);
  299.64 +		QFile file("inject.txt");
  299.65 +		if(file.open(QIODevice::WriteOnly))
  299.66 +		{
  299.67 +		    file.write(command.toAscii());
  299.68 +		    file.close();
  299.69 +		
  299.70 +		}
  299.71 +		
  299.72 +		emit sendLog("Adding bundle to DTN...");
  299.73 +	}
  299.74 +	else
  299.75 +		emit sendLog("Zero bundle not sent to DTN...");
  299.76 +
  299.77 +}
  299.78 +
  299.79 +
  299.80 +void DTNInterface::getBundles()
  299.81 +{
  299.82 +	if(dtnState==IDLE)
  299.83 +	{
  299.84 +		dtnState=INIT;
  299.85 +		client->appendCommand(0,(QString)"");
  299.86 +	}
  299.87 +}
  299.88 +
  299.89 +
  299.90 +void DTNInterface::getResponse(QByteArray response)
  299.91 +{
  299.92 +	QString log;
  299.93 +	switch(dtnState)
  299.94 +	{
  299.95 +		case INIT:log.append("INIT:");break;
  299.96 +		case DTNLIST:log.append("DTNLIST:");break;
  299.97 +		case IDLE:log.append("IDLE:");break;
  299.98 +		case PARSE:log.append("PARSE:");break;
  299.99 +	}
 299.100 +	int size=response.size();
 299.101 +	if(size<500)
 299.102 +		log.append(response);
 299.103 +	else
 299.104 +		log.append("Long response...");
 299.105 +	emit sendLog(log);
 299.106 +	QString temp;
 299.107 +	int pos;
 299.108 +	int pos2;
 299.109 +	int inTheList=-1;
 299.110 +	int flag;
 299.111 +	
 299.112 +
 299.113 + 	switch(dtnState)
 299.114 +	{
 299.115 +		case INIT:	bundleIndex=0;
 299.116 +					bundleList.clear();
 299.117 +					client->appendCommand(0,(QString)"bundle list");
 299.118 +					dtnState=DTNLIST;
 299.119 +			break;
 299.120 +		case DTNLIST:	//we get the nuber of bundles
 299.121 +						pos = response.indexOf("(",0);
 299.122 +						pos2 = response.indexOf(")",0);
 299.123 +						temp=response.mid(pos+1,pos2-pos-1);
 299.124 +						bundlesToParse=temp.toInt(0,10);
 299.125 +						response.remove(0,pos2+6);
 299.126 +						emit sendLog("NR BUNDLES:");
 299.127 +	   				    emit sendLog(QString("%1").arg(bundlesToParse));
 299.128 +						while(bundlesToParse>0)
 299.129 +						{
 299.130 +							Bundle tempBundle;
 299.131 +							//If acking is enabled
 299.132 +							tempBundle.setContent(bundleManager->getSeq(),ourId,0,"",0);
 299.133 +							pos2 = response.indexOf(":",0);
 299.134 +							temp=response.mid(0,pos2);
 299.135 +							//Parse bundle ID
 299.136 +							tempBundle.options=temp.toInt(0,10);
 299.137 +							response.remove(0,pos2+2);
 299.138 +							//Parse source name
 299.139 +							pos2= response.indexOf("->",0);
 299.140 +							temp=response.mid(0,pos2-1);
 299.141 +							tempBundle.sourceString=temp.toAscii();
 299.142 +							response.remove(0,pos2+3);
 299.143 +							//Parse destination name
 299.144 +							pos2= response.indexOf("length",0);
 299.145 +							temp=response.mid(0,pos2-1);
 299.146 +							tempBundle.destinationString=temp.toAscii();
 299.147 +							//Parse data length
 299.148 +							response.remove(0,pos2+7);
 299.149 +							pos2= response.indexOf("\r",0);
 299.150 +							temp=response.mid(0,pos2);
 299.151 +							tempBundle.dataLength=temp.toInt(0,10);
 299.152 +							//Removing last part
 299.153 +							pos2= response.indexOf("\r",0);
 299.154 +							response.remove(0,pos2+3);
 299.155 +							bundleList.append(tempBundle);
 299.156 +							bundlesToParse--;
 299.157 +						}
 299.158 +						//Checking for unused bundles in parsed list
 299.159 +						for (int m = 0; m < parsedList.size(); ++m)
 299.160 +						{
 299.161 +							inTheList=-1;
 299.162 +							for (int n = 0; n < bundleList.size(); ++n)
 299.163 +							{
 299.164 +								if(parsedList.at(m)==bundleList.at(n).options)
 299.165 +									inTheList=m;
 299.166 +							}
 299.167 +							if(inTheList==-1)
 299.168 +							{
 299.169 +								parsedList.removeAt(m);
 299.170 +								m=0;
 299.171 +							}
 299.172 +						}
 299.173 +						//Check if it is some of the bundles are already on the parsed list
 299.174 +						for (int m = 0; m < parsedList.size(); ++m)
 299.175 +						{
 299.176 +							inTheList=-1;
 299.177 +							for (int n = 0; n < bundleList.size(); ++n)
 299.178 +							{
 299.179 +								if(parsedList.at(m)==bundleList.at(n).options)
 299.180 +									inTheList=n;
 299.181 +							}
 299.182 +							if(inTheList!=-1)
 299.183 +								bundleList.removeAt(inTheList);
 299.184 +						}
 299.185 +						if(bundleList.size()>0)
 299.186 +						{
 299.187 +							QString command;
 299.188 +							command.append("bundle dump ");
 299.189 +							command.append(QString("%1").arg(bundleList.at(bundleIndex).options));
 299.190 +							client->appendCommand(0,command);
 299.191 +							dtnState=PARSE;
 299.192 +							
 299.193 +						}
 299.194 +						else
 299.195 +						{
 299.196 +							dtnState=IDLE;
 299.197 +						}
 299.198 +			break;
 299.199 +		case PARSE:	client->appendCommand(0,(QString)"bundle list");
 299.200 +						//First we extract the bundle payload size
 299.201 +						temp=response.mid(0,20);
 299.202 +						pos=temp.indexOf("Size:",0);			
 299.203 +						int payloadSize;					
 299.204 +						flag=0;
 299.205 +						pos2=temp.indexOf("\n",0);
 299.206 +						temp=temp.mid(pos+5,pos2-(pos+6));
 299.207 +						payloadSize=temp.toInt(0,10);
 299.208 +						if(payloadSize>0)
 299.209 +						{
 299.210 +							
 299.211 +							QByteArray tempData;
 299.212 +							QString hexValue;
 299.213 +							char decValue;
 299.214 +							response.remove(0,pos2+1);
 299.215 +							pos=0;
 299.216 +							while(pos<(2*payloadSize))
 299.217 +							{
 299.218 +								//Decode hex value
 299.219 +								hexValue=response.mid(pos,2);
 299.220 +								decValue=hexValue.toShort(0,16);
 299.221 +								tempData.append(decValue);
 299.222 +								//Move to next value
 299.223 +								pos=pos+2;
 299.224 +
 299.225 +							}							
 299.226 +							
 299.227 +								
 299.228 +							Bundle tempBundle=bundleList.at(bundleIndex);
 299.229 +							tempBundle.data=tempData;
 299.230 +
 299.231 +						//Removing from the list
 299.232 +							parsedList.append(tempBundle.options);
 299.233 +			
 299.234 +							
 299.235 +							
 299.236 +							
 299.237 +							
 299.238 +							//Checking if this is not our bundle
 299.239 +							QString temp;
 299.240 +							QString destination;
 299.241 +							temp=tempBundle.destinationString;
 299.242 +							pos=temp.indexOf("://",0);
 299.243 +							temp.remove(0,pos+3);
 299.244 +							pos=temp.indexOf("/",0);
 299.245 +							destination=temp.mid(0,pos);
 299.246 +							if(destination!=ourName)
 299.247 +							{
 299.248 +								emit sendLog("Bundle parsed...\r\n");
 299.249 +								tempBundle.options=0;
 299.250 +								//If acking is enabled
 299.251 +								int option=0;
 299.252 +								if(ackOption==1)
 299.253 +								{
 299.254 +									//We set the ACKOption bit and set the ACK bit 
 299.255 +									option=option|0x01;
 299.256 +								}
 299.257 +								tempBundle.options=option;
 299.258 +								if(tempBundle.data.size()>0)
 299.259 +									emit sendBundle(tempBundle);
 299.260 +								bundleManager->updateBundlesDestinations(nodeManager);
 299.261 +							}
 299.262 +							else
 299.263 +							{
 299.264 +								emit sendLog("Bundle parsed but it is for us...\r\n");
 299.265 +							}
 299.266 +						
 299.267 +						}
 299.268 +						bundleIndex++;
 299.269 +						if(bundleIndex<bundleList.size())
 299.270 +						{
 299.271 +							QString command;
 299.272 +							//We need to use bundle dump_tcl command here as well
 299.273 +							command.append("bundle dump_tcl ");
 299.274 +							command.append(QString("%1").arg(bundleList.at(bundleIndex).options));
 299.275 +							client->appendCommand(0,command);
 299.276 +							dtnState=PARSE;
 299.277 +						}
 299.278 +						else
 299.279 +						{
 299.280 +							dtnState=IDLE;
 299.281 +						}
 299.282 +			break;
 299.283 +		case IDLE:		dtnState=IDLE;
 299.284 +			break;
 299.285 +	}
 299.286 +
 299.287 +}
   300.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   300.2 +++ b/x86/x86/2.7/DTNInterface.h	Thu Jun 26 17:39:40 2008 +0100
   300.3 @@ -0,0 +1,73 @@
   300.4 +#ifndef DTNINTERFACE_H
   300.5 +#define DTNINTERFACE_H
   300.6 +
   300.7 +//#include <iostream.h>
   300.8 +#include <QtCore>
   300.9 +#include <QtNetwork>
  300.10 +#include <connection.h>
  300.11 +#include <dataPacket.h>
  300.12 +#include <neighbourAwareness.h>
  300.13 +#include <bundleManager.h>
  300.14 +#include <nodeManager.h>
  300.15 +#include <tcpClient.h>
  300.16 +
  300.17 +/*! \brief This class handles the communication between PRoPHET and DTN.
  300.18 + *
  300.19 + * That is passing bundles between the BundleManager and DTN.<BR>
  300.20 + * DTN States:<BR>
  300.21 + * INIT - ???<BR>
  300.22 + * DTNLIST - ???<BR>
  300.23 + * IDLE - ???<BR>
  300.24 + * PARSE - ???<BR>
  300.25 + */
  300.26 +class DTNInterface : public QObject 
  300.27 +{
  300.28 +
  300.29 +	Q_OBJECT
  300.30 +	public:
  300.31 +	int dtnState;
  300.32 +	int bundlesToParse;
  300.33 +	QList<Bundle> bundleList;
  300.34 +	QList<int> parsedList;
  300.35 +	DTNInterface(BundleManager*,NodeManager* nodeMng);
  300.36 +	BundleManager *bundleManager;
  300.37 +	NodeManager* nodeManager;
  300.38 +	int bundleIndex; 
  300.39 +	int hostPort;
  300.40 +	QHostAddress hostAddress;
  300.41 +	TcpClient *client;
  300.42 +	TcpClient *sender;
  300.43 +	QString ourName;
  300.44 +	int ourId;
  300.45 +	QTimer *timer;
  300.46 +	int ackOption;
  300.47 +		
  300.48 +	public slots:
  300.49 +	/*!
  300.50 +	 * Fetches bundles from DTN???
  300.51 +	 */
  300.52 +	void getBundles();
  300.53 +	
  300.54 +	void getResponse(QByteArray response);
  300.55 +	
  300.56 +	/*!
  300.57 +	 * Injects the specified bundle into DTN.
  300.58 +	 */
  300.59 +	void receiveBundle(Bundle);
  300.60 +	signals:
  300.61 +	
  300.62 +	/*!
  300.63 +	 * Emit the specified QString to the DTN-interface log.
  300.64 +	 */
  300.65 +	void sendLog(QString);
  300.66 +	
  300.67 +	/*!
  300.68 +	 * Emit the specified QString to the DTN-interface log.
  300.69 +	 */
  300.70 +	void sendBundle(Bundle);
  300.71 +
  300.72 +
  300.73 +
  300.74 +};
  300.75 +
  300.76 +#endif
   301.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   301.2 +++ b/x86/x86/2.7/Doxyfile	Thu Jun 26 17:39:40 2008 +0100
   301.3 @@ -0,0 +1,1252 @@
   301.4 +# Doxyfile 1.5.0
   301.5 +
   301.6 +# This file describes the settings to be used by the documentation system
   301.7 +# doxygen (www.doxygen.org) for a project
   301.8 +#
   301.9 +# All text after a hash (#) is considered a comment and will be ignored
  301.10 +# The format is:
  301.11 +#       TAG = value [value, ...]
  301.12 +# For lists items can also be appended using:
  301.13 +#       TAG += value [value, ...]
  301.14 +# Values that contain spaces should be placed between quotes (" ")
  301.15 +
  301.16 +#---------------------------------------------------------------------------
  301.17 +# Project related configuration options
  301.18 +#---------------------------------------------------------------------------
  301.19 +
  301.20 +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded 
  301.21 +# by quotes) that should identify the project.
  301.22 +
  301.23 +PROJECT_NAME           = PRoPHET
  301.24 +
  301.25 +# The PROJECT_NUMBER tag can be used to enter a project or revision number. 
  301.26 +# This could be handy for archiving the generated documentation or 
  301.27 +# if some version control system is used.
  301.28 +
  301.29 +PROJECT_NUMBER         = 
  301.30 +
  301.31 +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) 
  301.32 +# base path where the generated documentation will be put. 
  301.33 +# If a relative path is entered, it will be relative to the location 
  301.34 +# where doxygen was started. If left blank the current directory will be used.
  301.35 +
  301.36 +OUTPUT_DIRECTORY       = docs
  301.37 +
  301.38 +# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 
  301.39 +# 4096 sub-directories (in 2 levels) under the output directory of each output 
  301.40 +# format and will distribute the generated files over these directories. 
  301.41 +# Enabling this option can be useful when feeding doxygen a huge amount of 
  301.42 +# source files, where putting all generated files in the same directory would 
  301.43 +# otherwise cause performance problems for the file system.
  301.44 +
  301.45 +CREATE_SUBDIRS         = NO
  301.46 +
  301.47 +# The OUTPUT_LANGUAGE tag is used to specify the language in which all 
  301.48 +# documentation generated by doxygen is written. Doxygen will use this 
  301.49 +# information to generate all constant output in the proper language. 
  301.50 +# The default language is English, other supported languages are: 
  301.51 +# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, 
  301.52 +# Croatian, Czech, Danish, Dutch, Finnish, French, German, Greek, Hungarian, 
  301.53 +# Italian, Japanese, Japanese-en (Japanese with English messages), Korean, 
  301.54 +# Korean-en, Lithuanian, Norwegian, Polish, Portuguese, Romanian, Russian, 
  301.55 +# Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
  301.56 +
  301.57 +OUTPUT_LANGUAGE        = English
  301.58 +
  301.59 +# This tag can be used to specify the encoding used in the generated output. 
  301.60 +# The encoding is not always determined by the language that is chosen, 
  301.61 +# but also whether or not the output is meant for Windows or non-Windows users. 
  301.62 +# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES 
  301.63 +# forces the Windows encoding (this is the default for the Windows binary), 
  301.64 +# whereas setting the tag to NO uses a Unix-style encoding (the default for 
  301.65 +# all platforms other than Windows).
  301.66 +
  301.67 +USE_WINDOWS_ENCODING   = YES
  301.68 +
  301.69 +# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will 
  301.70 +# include brief member descriptions after the members that are listed in 
  301.71 +# the file and class documentation (similar to JavaDoc). 
  301.72 +# Set to NO to disable this.
  301.73 +
  301.74 +BRIEF_MEMBER_DESC      = YES
  301.75 +
  301.76 +# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend 
  301.77 +# the brief description of a member or function before the detailed description. 
  301.78 +# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the 
  301.79 +# brief descriptions will be completely suppressed.
  301.80 +
  301.81 +REPEAT_BRIEF           = YES
  301.82 +
  301.83 +# This tag implements a quasi-intelligent brief description abbreviator 
  301.84 +# that is used to form the text in various listings. Each string 
  301.85 +# in this list, if found as the leading text of the brief description, will be 
  301.86 +# stripped from the text and the result after processing the whole list, is 
  301.87 +# used as the annotated text. Otherwise, the brief description is used as-is. 
  301.88 +# If left blank, the following values are used ("$name" is automatically 
  301.89 +# replaced with the name of the entity): "The $name class" "The $name widget" 
  301.90 +# "The $name file" "is" "provides" "specifies" "contains" 
  301.91 +# "represents" "a" "an" "the"
  301.92 +
  301.93 +ABBREVIATE_BRIEF       = 
  301.94 +
  301.95 +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then 
  301.96 +# Doxygen will generate a detailed section even if there is only a brief 
  301.97 +# description.
  301.98 +
  301.99 +ALWAYS_DETAILED_SEC    = YES
 301.100 +
 301.101 +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all 
 301.102 +# inherited members of a class in the documentation of that class as if those 
 301.103 +# members were ordinary class members. Constructors, destructors and assignment 
 301.104 +# operators of the base classes will not be shown.
 301.105 +
 301.106 +INLINE_INHERITED_MEMB  = NO
 301.107 +
 301.108 +# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full 
 301.109 +# path before files name in the file list and in the header files. If set 
 301.110 +# to NO the shortest path that makes the file name unique will be used.
 301.111 +
 301.112 +FULL_PATH_NAMES        = YES
 301.113 +
 301.114 +# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag 
 301.115 +# can be used to strip a user-defined part of the path. Stripping is 
 301.116 +# only done if one of the specified strings matches the left-hand part of 
 301.117 +# the path. The tag can be used to show relative paths in the file list. 
 301.118 +# If left blank the directory from which doxygen is run is used as the 
 301.119 +# path to strip.
 301.120 +
 301.121 +STRIP_FROM_PATH        = 
 301.122 +
 301.123 +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of 
 301.124 +# the path mentioned in the documentation of a class, which tells 
 301.125 +# the reader which header file to include in order to use a class. 
 301.126 +# If left blank only the name of the header file containing the class 
 301.127 +# definition is used. Otherwise one should specify the include paths that 
 301.128 +# are normally passed to the compiler using the -I flag.
 301.129 +
 301.130 +STRIP_FROM_INC_PATH    = 
 301.131 +
 301.132 +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter 
 301.133 +# (but less readable) file names. This can be useful is your file systems 
 301.134 +# doesn't support long names like on DOS, Mac, or CD-ROM.
 301.135 +
 301.136 +SHORT_NAMES            = NO
 301.137 +
 301.138 +# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen 
 301.139 +# will interpret the first line (until the first dot) of a JavaDoc-style 
 301.140 +# comment as the brief description. If set to NO, the JavaDoc 
 301.141 +# comments will behave just like the Qt-style comments (thus requiring an 
 301.142 +# explicit @brief command for a brief description.
 301.143 +
 301.144 +JAVADOC_AUTOBRIEF      = NO
 301.145 +
 301.146 +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen 
 301.147 +# treat a multi-line C++ special comment block (i.e. a block of //! or /// 
 301.148 +# comments) as a brief description. This used to be the default behaviour. 
 301.149 +# The new default is to treat a multi-line C++ comment block as a detailed 
 301.150 +# description. Set this tag to YES if you prefer the old behaviour instead.
 301.151 +
 301.152 +MULTILINE_CPP_IS_BRIEF = NO
 301.153 +
 301.154 +# If the DETAILS_AT_TOP tag is set to YES then Doxygen 
 301.155 +# will output the detailed description near the top, like JavaDoc.
 301.156 +# If set to NO, the detailed description appears after the member 
 301.157 +# documentation.
 301.158 +
 301.159 +DETAILS_AT_TOP         = YES
 301.160 +
 301.161 +# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented 
 301.162 +# member inherits the documentation from any documented member that it 
 301.163 +# re-implements.
 301.164 +
 301.165 +INHERIT_DOCS           = YES
 301.166 +
 301.167 +# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce 
 301.168 +# a new page for each member. If set to NO, the documentation of a member will 
 301.169 +# be part of the file/class/namespace that contains it.
 301.170 +
 301.171 +SEPARATE_MEMBER_PAGES  = NO
 301.172 +
 301.173 +# The TAB_SIZE tag can be used to set the number of spaces in a tab. 
 301.174 +# Doxygen uses this value to replace tabs by spaces in code fragments.
 301.175 +
 301.176 +TAB_SIZE               = 8
 301.177 +
 301.178 +# This tag can be used to specify a number of aliases that acts 
 301.179 +# as commands in the documentation. An alias has the form "name=value". 
 301.180 +# For example adding "sideeffect=\par Side Effects:\n" will allow you to 
 301.181 +# put the command \sideeffect (or @sideeffect) in the documentation, which 
 301.182 +# will result in a user-defined paragraph with heading "Side Effects:". 
 301.183 +# You can put \n's in the value part of an alias to insert newlines.
 301.184 +
 301.185 +ALIASES                = 
 301.186 +
 301.187 +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C 
 301.188 +# sources only. Doxygen will then generate output that is more tailored for C. 
 301.189 +# For instance, some of the names that are used will be different. The list 
 301.190 +# of all members will be omitted, etc.
 301.191 +
 301.192 +OPTIMIZE_OUTPUT_FOR_C  = NO
 301.193 +
 301.194 +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java 
 301.195 +# sources only. Doxygen will then generate output that is more tailored for Java. 
 301.196 +# For instance, namespaces will be presented as packages, qualified scopes 
 301.197 +# will look different, etc.
 301.198 +
 301.199 +OPTIMIZE_OUTPUT_JAVA   = NO
 301.200 +
 301.201 +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want to 
 301.202 +# include (a tag file for) the STL sources as input, then you should 
 301.203 +# set this tag to YES in order to let doxygen match functions declarations and 
 301.204 +# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. 
 301.205 +# func(std::string) {}). This also make the inheritance and collaboration 
 301.206 +# diagrams that involve STL classes more complete and accurate.
 301.207 +
 301.208 +BUILTIN_STL_SUPPORT    = NO
 301.209 +
 301.210 +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC 
 301.211 +# tag is set to YES, then doxygen will reuse the documentation of the first 
 301.212 +# member in the group (if any) for the other members of the group. By default 
 301.213 +# all members of a group must be documented explicitly.
 301.214 +
 301.215 +DISTRIBUTE_GROUP_DOC   = NO
 301.216 +
 301.217 +# Set the SUBGROUPING tag to YES (the default) to allow class member groups of 
 301.218 +# the same type (for instance a group of public functions) to be put as a 
 301.219 +# subgroup of that type (e.g. under the Public Functions section). Set it to 
 301.220 +# NO to prevent subgrouping. Alternatively, this can be done per class using 
 301.221 +# the \nosubgrouping command.
 301.222 +
 301.223 +SUBGROUPING            = YES
 301.224 +
 301.225 +#---------------------------------------------------------------------------
 301.226 +# Build related configuration options
 301.227 +#---------------------------------------------------------------------------
 301.228 +
 301.229 +# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in 
 301.230 +# documentation are documented, even if no documentation was available. 
 301.231 +# Private class members and static file members will be hidden unless 
 301.232 +# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
 301.233 +
 301.234 +EXTRACT_ALL            = NO
 301.235 +
 301.236 +# If the EXTRACT_PRIVATE tag is set to YES all private members of a class 
 301.237 +# will be included in the documentation.
 301.238 +
 301.239 +EXTRACT_PRIVATE        = NO
 301.240 +
 301.241 +# If the EXTRACT_STATIC tag is set to YES all static members of a file 
 301.242 +# will be included in the documentation.
 301.243 +
 301.244 +EXTRACT_STATIC         = NO
 301.245 +
 301.246 +# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) 
 301.247 +# defined locally in source files will be included in the documentation. 
 301.248 +# If set to NO only classes defined in header files are included.
 301.249 +
 301.250 +EXTRACT_LOCAL_CLASSES  = YES
 301.251 +
 301.252 +# This flag is only useful for Objective-C code. When set to YES local 
 301.253 +# methods, which are defined in the implementation section but not in 
 301.254 +# the interface are included in the documentation. 
 301.255 +# If set to NO (the default) only methods in the interface are included.
 301.256 +
 301.257 +EXTRACT_LOCAL_METHODS  = NO
 301.258 +
 301.259 +# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all 
 301.260 +# undocumented members of documented classes, files or namespaces. 
 301.261 +# If set to NO (the default) these members will be included in the 
 301.262 +# various overviews, but no documentation section is generated. 
 301.263 +# This option has no effect if EXTRACT_ALL is enabled.
 301.264 +
 301.265 +HIDE_UNDOC_MEMBERS     = NO
 301.266 +
 301.267 +# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all 
 301.268 +# undocumented classes that are normally visible in the class hierarchy. 
 301.269 +# If set to NO (the default) these classes will be included in the various 
 301.270 +# overviews. This option has no effect if EXTRACT_ALL is enabled.
 301.271 +
 301.272 +HIDE_UNDOC_CLASSES     = NO
 301.273 +
 301.274 +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all 
 301.275 +# friend (class|struct|union) declarations. 
 301.276 +# If set to NO (the default) these declarations will be included in the 
 301.277 +# documentation.
 301.278 +
 301.279 +HIDE_FRIEND_COMPOUNDS  = NO
 301.280 +
 301.281 +# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any 
 301.282 +# documentation blocks found inside the body of a function. 
 301.283 +# If set to NO (the default) these blocks will be appended to the 
 301.284 +# function's detailed documentation block.
 301.285 +
 301.286 +HIDE_IN_BODY_DOCS      = NO
 301.287 +
 301.288 +# The INTERNAL_DOCS tag determines if documentation 
 301.289 +# that is typed after a \internal command is included. If the tag is set 
 301.290 +# to NO (the default) then the documentation will be excluded. 
 301.291 +# Set it to YES to include the internal documentation.
 301.292 +
 301.293 +INTERNAL_DOCS          = NO
 301.294 +
 301.295 +# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate 
 301.296 +# file names in lower-case letters. If set to YES upper-case letters are also 
 301.297 +# allowed. This is useful if you have classes or files whose names only differ 
 301.298 +# in case and if your file system supports case sensitive file names. Windows 
 301.299 +# and Mac users are advised to set this option to NO.
 301.300 +
 301.301 +CASE_SENSE_NAMES       = NO
 301.302 +
 301.303 +# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen 
 301.304 +# will show members with their full class and namespace scopes in the 
 301.305 +# documentation. If set to YES the scope will be hidden.
 301.306 +
 301.307 +HIDE_SCOPE_NAMES       = NO
 301.308 +
 301.309 +# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen 
 301.310 +# will put a list of the files that are included by a file in the documentation 
 301.311 +# of that file.
 301.312 +
 301.313 +SHOW_INCLUDE_FILES     = YES
 301.314 +
 301.315 +# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] 
 301.316 +# is inserted in the documentation for inline members.
 301.317 +
 301.318 +INLINE_INFO            = YES
 301.319 +
 301.320 +# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen 
 301.321 +# will sort the (detailed) documentation of file and class members 
 301.322 +# alphabetically by member name. If set to NO the members will appear in 
 301.323 +# declaration order.
 301.324 +
 301.325 +SORT_MEMBER_DOCS       = YES
 301.326 +
 301.327 +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the 
 301.328 +# brief documentation of file, namespace and class members alphabetically 
 301.329 +# by member name. If set to NO (the default) the members will appear in 
 301.330 +# declaration order.
 301.331 +
 301.332 +SORT_BRIEF_DOCS        = NO
 301.333 +
 301.334 +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be 
 301.335 +# sorted by fully-qualified names, including namespaces. If set to 
 301.336 +# NO (the default), the class list will be sorted only by class name, 
 301.337 +# not including the namespace part. 
 301.338 +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
 301.339 +# Note: This option applies only to the class list, not to the 
 301.340 +# alphabetical list.
 301.341 +
 301.342 +SORT_BY_SCOPE_NAME     = NO
 301.343 +
 301.344 +# The GENERATE_TODOLIST tag can be used to enable (YES) or 
 301.345 +# disable (NO) the todo list. This list is created by putting \todo 
 301.346 +# commands in the documentation.
 301.347 +
 301.348 +GENERATE_TODOLIST      = YES
 301.349 +
 301.350 +# The GENERATE_TESTLIST tag can be used to enable (YES) or 
 301.351 +# disable (NO) the test list. This list is created by putting \test 
 301.352 +# commands in the documentation.
 301.353 +
 301.354 +GENERATE_TESTLIST      = YES
 301.355 +
 301.356 +# The GENERATE_BUGLIST tag can be used to enable (YES) or 
 301.357 +# disable (NO) the bug list. This list is created by putting \bug 
 301.358 +# commands in the documentation.
 301.359 +
 301.360 +GENERATE_BUGLIST       = YES
 301.361 +
 301.362 +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or 
 301.363 +# disable (NO) the deprecated list. This list is created by putting 
 301.364 +# \deprecated commands in the documentation.
 301.365 +
 301.366 +GENERATE_DEPRECATEDLIST= YES
 301.367 +
 301.368 +# The ENABLED_SECTIONS tag can be used to enable conditional 
 301.369 +# documentation sections, marked by \if sectionname ... \endif.
 301.370 +
 301.371 +ENABLED_SECTIONS       = 
 301.372 +
 301.373 +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines 
 301.374 +# the initial value of a variable or define consists of for it to appear in 
 301.375 +# the documentation. If the initializer consists of more lines than specified 
 301.376 +# here it will be hidden. Use a value of 0 to hide initializers completely. 
 301.377 +# The appearance of the initializer of individual variables and defines in the 
 301.378 +# documentation can be controlled using \showinitializer or \hideinitializer 
 301.379 +# command in the documentation regardless of this setting.
 301.380 +
 301.381 +MAX_INITIALIZER_LINES  = 30
 301.382 +
 301.383 +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated 
 301.384 +# at the bottom of the documentation of classes and structs. If set to YES the 
 301.385 +# list will mention the files that were used to generate the documentation.
 301.386 +
 301.387 +SHOW_USED_FILES        = YES
 301.388 +
 301.389 +# If the sources in your project are distributed over multiple directories 
 301.390 +# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy 
 301.391 +# in the documentation. The default is NO.
 301.392 +
 301.393 +SHOW_DIRECTORIES       = NO
 301.394 +
 301.395 +# The FILE_VERSION_FILTER tag can be used to specify a program or script that 
 301.396 +# doxygen should invoke to get the current version for each file (typically from the 
 301.397 +# version control system). Doxygen will invoke the program by executing (via 
 301.398 +# popen()) the command <command> <input-file>, where <command> is the value of 
 301.399 +# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file 
 301.400 +# provided by doxygen. Whatever the program writes to standard output 
 301.401 +# is used as the file version. See the manual for examples.
 301.402 +
 301.403 +FILE_VERSION_FILTER    = 
 301.404 +
 301.405 +#---------------------------------------------------------------------------
 301.406 +# configuration options related to warning and progress messages
 301.407 +#---------------------------------------------------------------------------
 301.408 +
 301.409 +# The QUIET tag can be used to turn on/off the messages that are generated 
 301.410 +# by doxygen. Possible values are YES and NO. If left blank NO is used.
 301.411 +
 301.412 +QUIET                  = NO
 301.413 +
 301.414 +# The WARNINGS tag can be used to turn on/off the warning messages that are 
 301.415 +# generated by doxygen. Possible values are YES and NO. If left blank 
 301.416 +# NO is used.
 301.417 +
 301.418 +WARNINGS               = YES
 301.419 +
 301.420 +# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings 
 301.421 +# for undocumented members. If EXTRACT_ALL is set to YES then this flag will 
 301.422 +# automatically be disabled.
 301.423 +
 301.424 +WARN_IF_UNDOCUMENTED   = YES
 301.425 +
 301.426 +# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for 
 301.427 +# potential errors in the documentation, such as not documenting some 
 301.428 +# parameters in a documented function, or documenting parameters that 
 301.429 +# don't exist or using markup commands wrongly.
 301.430 +
 301.431 +WARN_IF_DOC_ERROR      = YES
 301.432 +
 301.433 +# This WARN_NO_PARAMDOC option can be abled to get warnings for 
 301.434 +# functions that are documented, but have no documentation for their parameters 
 301.435 +# or return value. If set to NO (the default) doxygen will only warn about 
 301.436 +# wrong or incomplete parameter documentation, but not about the absence of 
 301.437 +# documentation.
 301.438 +
 301.439 +WARN_NO_PARAMDOC       = NO
 301.440 +
 301.441 +# The WARN_FORMAT tag determines the format of the warning messages that 
 301.442 +# doxygen can produce. The string should contain the $file, $line, and $text 
 301.443 +# tags, which will be replaced by the file and line number from which the 
 301.444 +# warning originated and the warning text. Optionally the format may contain 
 301.445 +# $version, which will be replaced by the version of the file (if it could 
 301.446 +# be obtained via FILE_VERSION_FILTER)
 301.447 +
 301.448 +WARN_FORMAT            = "$file:$line: $text"
 301.449 +
 301.450 +# The WARN_LOGFILE tag can be used to specify a file to which warning 
 301.451 +# and error messages should be written. If left blank the output is written 
 301.452 +# to stderr.
 301.453 +
 301.454 +WARN_LOGFILE           = 
 301.455 +
 301.456 +#---------------------------------------------------------------------------
 301.457 +# configuration options related to the input files
 301.458 +#---------------------------------------------------------------------------
 301.459 +
 301.460 +# The INPUT tag can be used to specify the files and/or directories that contain 
 301.461 +# documented source files. You may enter file names like "myfile.cpp" or 
 301.462 +# directories like "/usr/src/myproject". Separate the files or directories 
 301.463 +# with spaces.
 301.464 +
 301.465 +INPUT                  =
 301.466 +
 301.467 +# If the value of the INPUT tag contains directories, you can use the 
 301.468 +# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
 301.469 +# and *.h) to filter out the source-files in the directories. If left 
 301.470 +# blank the following patterns are tested: 
 301.471 +# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx 
 301.472 +# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py
 301.473 +
 301.474 +FILE_PATTERNS          = *.h *.cpp
 301.475 +
 301.476 +# The RECURSIVE tag can be used to turn specify whether or not subdirectories 
 301.477 +# should be searched for input files as well. Possible values are YES and NO. 
 301.478 +# If left blank NO is used.
 301.479 +
 301.480 +RECURSIVE              = NO
 301.481 +
 301.482 +# The EXCLUDE tag can be used to specify files and/or directories that should 
 301.483 +# excluded from the INPUT source files. This way you can easily exclude a 
 301.484 +# subdirectory from a directory tree whose root is specified with the INPUT tag.
 301.485 +
 301.486 +EXCLUDE                = 
 301.487 +
 301.488 +# The EXCLUDE_SYMLINKS tag can be used select whether or not files or 
 301.489 +# directories that are symbolic links (a Unix filesystem feature) are excluded 
 301.490 +# from the input.
 301.491 +
 301.492 +EXCLUDE_SYMLINKS       = NO
 301.493 +
 301.494 +# If the value of the INPUT tag contains directories, you can use the 
 301.495 +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude 
 301.496 +# certain files from those directories. Note that the wildcards are matched 
 301.497 +# against the file with absolute path, so to exclude all test directories 
 301.498 +# for example use the pattern */test/*
 301.499 +
 301.500 +EXCLUDE_PATTERNS       = 
 301.501 +
 301.502 +# The EXAMPLE_PATH tag can be used to specify one or more files or 
 301.503 +# directories that contain example code fragments that are included (see 
 301.504 +# the \include command).
 301.505 +
 301.506 +EXAMPLE_PATH           = 
 301.507 +
 301.508 +# If the value of the EXAMPLE_PATH tag contains directories, you can use the 
 301.509 +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
 301.510 +# and *.h) to filter out the source-files in the directories. If left 
 301.511 +# blank all files are included.
 301.512 +
 301.513 +EXAMPLE_PATTERNS       = 
 301.514 +
 301.515 +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be 
 301.516 +# searched for input files to be used with the \include or \dontinclude 
 301.517 +# commands irrespective of the value of the RECURSIVE tag. 
 301.518 +# Possible values are YES and NO. If left blank NO is used.
 301.519 +
 301.520 +EXAMPLE_RECURSIVE      = NO
 301.521 +
 301.522 +# The IMAGE_PATH tag can be used to specify one or more files or 
 301.523 +# directories that contain image that are included in the documentation (see 
 301.524 +# the \image command).
 301.525 +
 301.526 +IMAGE_PATH             = 
 301.527 +
 301.528 +# The INPUT_FILTER tag can be used to specify a program that doxygen should 
 301.529 +# invoke to filter for each input file. Doxygen will invoke the filter program 
 301.530 +# by executing (via popen()) the command <filter> <input-file>, where <filter> 
 301.531 +# is the value of the INPUT_FILTER tag, and <input-file> is the name of an 
 301.532 +# input file. Doxygen will then use the output that the filter program writes 
 301.533 +# to standard output.  If FILTER_PATTERNS is specified, this tag will be 
 301.534 +# ignored.
 301.535 +
 301.536 +INPUT_FILTER           = 
 301.537 +
 301.538 +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern 
 301.539 +# basis.  Doxygen will compare the file name with each pattern and apply the 
 301.540 +# filter if there is a match.  The filters are a list of the form: 
 301.541 +# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further 
 301.542 +# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER 
 301.543 +# is applied to all files.
 301.544 +
 301.545 +FILTER_PATTERNS        = 
 301.546 +
 301.547 +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using 
 301.548 +# INPUT_FILTER) will be used to filter the input files when producing source 
 301.549 +# files to browse (i.e. when SOURCE_BROWSER is set to YES).
 301.550 +
 301.551 +FILTER_SOURCE_FILES    = NO
 301.552 +
 301.553 +#---------------------------------------------------------------------------
 301.554 +# configuration options related to source browsing
 301.555 +#---------------------------------------------------------------------------
 301.556 +
 301.557 +# If the SOURCE_BROWSER tag is set to YES then a list of source files will 
 301.558 +# be generated. Documented entities will be cross-referenced with these sources. 
 301.559 +# Note: To get rid of all source code in the generated output, make sure also 
 301.560 +# VERBATIM_HEADERS is set to NO.
 301.561 +
 301.562 +SOURCE_BROWSER         = NO
 301.563 +
 301.564 +# Setting the INLINE_SOURCES tag to YES will include the body 
 301.565 +# of functions and classes directly in the documentation.
 301.566 +
 301.567 +INLINE_SOURCES         = NO
 301.568 +
 301.569 +# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct 
 301.570 +# doxygen to hide any special comment blocks from generated source code 
 301.571 +# fragments. Normal C and C++ comments will always remain visible.
 301.572 +
 301.573 +STRIP_CODE_COMMENTS    = YES
 301.574 +
 301.575 +# If the REFERENCED_BY_RELATION tag is set to YES (the default) 
 301.576 +# then for each documented function all documented 
 301.577 +# functions referencing it will be listed.
 301.578 +
 301.579 +REFERENCED_BY_RELATION = YES
 301.580 +
 301.581 +# If the REFERENCES_RELATION tag is set to YES (the default) 
 301.582 +# then for each documented function all documented entities 
 301.583 +# called/used by that function will be listed.
 301.584 +
 301.585 +REFERENCES_RELATION    = YES
 301.586 +
 301.587 +# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
 301.588 +# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
 301.589 +# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
 301.590 +# link to the source code.  Otherwise they will link to the documentstion.
 301.591 +
 301.592 +REFERENCES_LINK_SOURCE = YES
 301.593 +
 301.594 +# If the USE_HTAGS tag is set to YES then the references to source code 
 301.595 +# will point to the HTML generated by the htags(1) tool instead of doxygen 
 301.596 +# built-in source browser. The htags tool is part of GNU's global source 
 301.597 +# tagging system (see http://www.gnu.org/software/global/global.html). You 
 301.598 +# will need version 4.8.6 or higher.
 301.599 +
 301.600 +USE_HTAGS              = NO
 301.601 +
 301.602 +# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen 
 301.603 +# will generate a verbatim copy of the header file for each class for 
 301.604 +# which an include is specified. Set to NO to disable this.
 301.605 +
 301.606 +VERBATIM_HEADERS       = YES
 301.607 +
 301.608 +#---------------------------------------------------------------------------
 301.609 +# configuration options related to the alphabetical class index
 301.610 +#---------------------------------------------------------------------------
 301.611 +
 301.612 +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index 
 301.613 +# of all compounds will be generated. Enable this if the project 
 301.614 +# contains a lot of classes, structs, unions or interfaces.
 301.615 +
 301.616 +ALPHABETICAL_INDEX     = NO
 301.617 +
 301.618 +# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then 
 301.619 +# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns 
 301.620 +# in which this list will be split (can be a number in the range [1..20])
 301.621 +
 301.622 +COLS_IN_ALPHA_INDEX    = 5
 301.623 +
 301.624 +# In case all classes in a project start with a common prefix, all 
 301.625 +# classes will be put under the same header in the alphabetical index. 
 301.626 +# The IGNORE_PREFIX tag can be used to specify one or more prefixes that 
 301.627 +# should be ignored while generating the index headers.
 301.628 +
 301.629 +IGNORE_PREFIX          = 
 301.630 +
 301.631 +#---------------------------------------------------------------------------
 301.632 +# configuration options related to the HTML output
 301.633 +#---------------------------------------------------------------------------
 301.634 +
 301.635 +# If the GENERATE_HTML tag is set to YES (the default) Doxygen will 
 301.636 +# generate HTML output.
 301.637 +
 301.638 +GENERATE_HTML          = YES
 301.639 +
 301.640 +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. 
 301.641 +# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
 301.642 +# put in front of it. If left blank `html' will be used as the default path.
 301.643 +
 301.644 +HTML_OUTPUT            = html
 301.645 +
 301.646 +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for 
 301.647 +# each generated HTML page (for example: .htm,.php,.asp). If it is left blank 
 301.648 +# doxygen will generate files with .html extension.
 301.649 +
 301.650 +HTML_FILE_EXTENSION    = .html
 301.651 +
 301.652 +# The HTML_HEADER tag can be used to specify a personal HTML header for 
 301.653 +# each generated HTML page. If it is left blank doxygen will generate a 
 301.654 +# standard header.
 301.655 +
 301.656 +HTML_HEADER            = 
 301.657 +
 301.658 +# The HTML_FOOTER tag can be used to specify a personal HTML footer for 
 301.659 +# each generated HTML page. If it is left blank doxygen will generate a 
 301.660 +# standard footer.
 301.661 +
 301.662 +HTML_FOOTER            = 
 301.663 +
 301.664 +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading 
 301.665 +# style sheet that is used by each HTML page. It can be used to 
 301.666 +# fine-tune the look of the HTML output. If the tag is left blank doxygen 
 301.667 +# will generate a default style sheet. Note that doxygen will try to copy 
 301.668 +# the style sheet file to the HTML output directory, so don't put your own 
 301.669 +# stylesheet in the HTML output directory as well, or it will be erased!
 301.670 +
 301.671 +HTML_STYLESHEET        = 
 301.672 +
 301.673 +# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, 
 301.674 +# files or namespaces will be aligned in HTML using tables. If set to 
 301.675 +# NO a bullet list will be used.
 301.676 +
 301.677 +HTML_ALIGN_MEMBERS     = YES
 301.678 +
 301.679 +# If the GENERATE_HTMLHELP tag is set to YES, additional index files 
 301.680 +# will be generated that can be used as input for tools like the 
 301.681 +# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) 
 301.682 +# of the generated HTML documentation.
 301.683 +
 301.684 +GENERATE_HTMLHELP      = NO
 301.685 +
 301.686 +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can 
 301.687 +# be used to specify the file name of the resulting .chm file. You 
 301.688 +# can add a path in front of the file if the result should not be 
 301.689 +# written to the html output directory.
 301.690 +
 301.691 +CHM_FILE               = 
 301.692 +
 301.693 +# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can 
 301.694 +# be used to specify the location (absolute path including file name) of 
 301.695 +# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run 
 301.696 +# the HTML help compiler on the generated index.hhp.
 301.697 +
 301.698 +HHC_LOCATION           = 
 301.699 +
 301.700 +# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag 
 301.701 +# controls if a separate .chi index file is generated (YES) or that 
 301.702 +# it should be included in the master .chm file (NO).
 301.703 +
 301.704 +GENERATE_CHI           = NO
 301.705 +
 301.706 +# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag 
 301.707 +# controls whether a binary table of contents is generated (YES) or a 
 301.708 +# normal table of contents (NO) in the .chm file.
 301.709 +
 301.710 +BINARY_TOC             = NO
 301.711 +
 301.712 +# The TOC_EXPAND flag can be set to YES to add extra items for group members 
 301.713 +# to the contents of the HTML help documentation and to the tree view.
 301.714 +
 301.715 +TOC_EXPAND             = NO
 301.716 +
 301.717 +# The DISABLE_INDEX tag can be used to turn on/off the condensed index at 
 301.718 +# top of each HTML page. The value NO (the default) enables the index and 
 301.719 +# the value YES disables it.
 301.720 +
 301.721 +DISABLE_INDEX          = NO
 301.722 +
 301.723 +# This tag can be used to set the number of enum values (range [1..20]) 
 301.724 +# that doxygen will group on one line in the generated HTML documentation.
 301.725 +
 301.726 +ENUM_VALUES_PER_LINE   = 4
 301.727 +
 301.728 +# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
 301.729 +# generated containing a tree-like index structure (just like the one that 
 301.730 +# is generated for HTML Help). For this to work a browser that supports 
 301.731 +# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, 
 301.732 +# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are 
 301.733 +# probably better off using the HTML help feature.
 301.734 +
 301.735 +GENERATE_TREEVIEW      = NO
 301.736 +
 301.737 +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be 
 301.738 +# used to set the initial width (in pixels) of the frame in which the tree 
 301.739 +# is shown.
 301.740 +
 301.741 +TREEVIEW_WIDTH         = 250
 301.742 +
 301.743 +#---------------------------------------------------------------------------
 301.744 +# configuration options related to the LaTeX output
 301.745 +#---------------------------------------------------------------------------
 301.746 +
 301.747 +# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will 
 301.748 +# generate Latex output.
 301.749 +
 301.750 +GENERATE_LATEX         = YES
 301.751 +
 301.752 +# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. 
 301.753 +# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
 301.754 +# put in front of it. If left blank `latex' will be used as the default path.
 301.755 +
 301.756 +LATEX_OUTPUT           = latex
 301.757 +
 301.758 +# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be 
 301.759 +# invoked. If left blank `latex' will be used as the default command name.
 301.760 +
 301.761 +LATEX_CMD_NAME         = latex
 301.762 +
 301.763 +# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to 
 301.764 +# generate index for LaTeX. If left blank `makeindex' will be used as the 
 301.765 +# default command name.
 301.766 +
 301.767 +MAKEINDEX_CMD_NAME     = makeindex
 301.768 +
 301.769 +# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact 
 301.770 +# LaTeX documents. This may be useful for small projects and may help to 
 301.771 +# save some trees in general.
 301.772 +
 301.773 +COMPACT_LATEX          = NO
 301.774 +
 301.775 +# The PAPER_TYPE tag can be used to set the paper type that is used 
 301.776 +# by the printer. Possible values are: a4, a4wide, letter, legal and 
 301.777 +# executive. If left blank a4wide will be used.
 301.778 +
 301.779 +PAPER_TYPE             = a4wide
 301.780 +
 301.781 +# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX 
 301.782 +# packages that should be included in the LaTeX output.
 301.783 +
 301.784 +EXTRA_PACKAGES         = 
 301.785 +
 301.786 +# The LATEX_HEADER tag can be used to specify a personal LaTeX header for 
 301.787 +# the generated latex document. The header should contain everything until 
 301.788 +# the first chapter. If it is left blank doxygen will generate a 
 301.789 +# standard header. Notice: only use this tag if you know what you are doing!
 301.790 +
 301.791 +LATEX_HEADER           = 
 301.792 +
 301.793 +# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated 
 301.794 +# is prepared for conversion to pdf (using ps2pdf). The pdf file will 
 301.795 +# contain links (just like the HTML output) instead of page references 
 301.796 +# This makes the output suitable for online browsing using a pdf viewer.
 301.797 +
 301.798 +PDF_HYPERLINKS         = NO
 301.799 +
 301.800 +# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of 
 301.801 +# plain latex in the generated Makefile. Set this option to YES to get a 
 301.802 +# higher quality PDF documentation.
 301.803 +
 301.804 +USE_PDFLATEX           = NO
 301.805 +
 301.806 +# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. 
 301.807 +# command to the generated LaTeX files. This will instruct LaTeX to keep 
 301.808 +# running if errors occur, instead of asking the user for help. 
 301.809 +# This option is also used when generating formulas in HTML.
 301.810 +
 301.811 +LATEX_BATCHMODE        = NO
 301.812 +
 301.813 +# If LATEX_HIDE_INDICES is set to YES then doxygen will not 
 301.814 +# include the index chapters (such as File Index, Compound Index, etc.) 
 301.815 +# in the output.
 301.816 +
 301.817 +LATEX_HIDE_INDICES     = NO
 301.818 +
 301.819 +#---------------------------------------------------------------------------
 301.820 +# configuration options related to the RTF output
 301.821 +#---------------------------------------------------------------------------
 301.822 +
 301.823 +# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output 
 301.824 +# The RTF output is optimized for Word 97 and may not look very pretty with 
 301.825 +# other RTF readers or editors.
 301.826 +
 301.827 +GENERATE_RTF           = NO
 301.828 +
 301.829 +# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. 
 301.830 +# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
 301.831 +# put in front of it. If left blank `rtf' will be used as the default path.
 301.832 +
 301.833 +RTF_OUTPUT             = rtf
 301.834 +
 301.835 +# If the COMPACT_RTF tag is set to YES Doxygen generates more compact 
 301.836 +# RTF documents. This may be useful for small projects and may help to 
 301.837 +# save some trees in general.
 301.838 +
 301.839 +COMPACT_RTF            = NO
 301.840 +
 301.841 +# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated 
 301.842 +# will contain hyperlink fields. The RTF file will 
 301.843 +# contain links (just like the HTML output) instead of page references. 
 301.844 +# This makes the output suitable for online browsing using WORD or other 
 301.845 +# programs which support those fields. 
 301.846 +# Note: wordpad (write) and others do not support links.
 301.847 +
 301.848 +RTF_HYPERLINKS         = NO
 301.849 +
 301.850 +# Load stylesheet definitions from file. Syntax is similar to doxygen's 
 301.851 +# config file, i.e. a series of assignments. You only have to provide 
 301.852 +# replacements, missing definitions are set to their default value.
 301.853 +
 301.854 +RTF_STYLESHEET_FILE    = 
 301.855 +
 301.856 +# Set optional variables used in the generation of an rtf document. 
 301.857 +# Syntax is similar to doxygen's config file.
 301.858 +
 301.859 +RTF_EXTENSIONS_FILE    = 
 301.860 +
 301.861 +#---------------------------------------------------------------------------
 301.862 +# configuration options related to the man page output
 301.863 +#---------------------------------------------------------------------------
 301.864 +
 301.865 +# If the GENERATE_MAN tag is set to YES (the default) Doxygen will 
 301.866 +# generate man pages
 301.867 +
 301.868 +GENERATE_MAN           = NO
 301.869 +
 301.870 +# The MAN_OUTPUT tag is used to specify where the man pages will be put. 
 301.871 +# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
 301.872 +# put in front of it. If left blank `man' will be used as the default path.
 301.873 +
 301.874 +MAN_OUTPUT             = man
 301.875 +
 301.876 +# The MAN_EXTENSION tag determines the extension that is added to 
 301.877 +# the generated man pages (default is the subroutine's section .3)
 301.878 +
 301.879 +MAN_EXTENSION          = .3
 301.880 +
 301.881 +# If the MAN_LINKS tag is set to YES and Doxygen generates man output, 
 301.882 +# then it will generate one additional man file for each entity 
 301.883 +# documented in the real man page(s). These additional files 
 301.884 +# only source the real man page, but without them the man command 
 301.885 +# would be unable to find the correct page. The default is NO.
 301.886 +
 301.887 +MAN_LINKS              = NO
 301.888 +
 301.889 +#---------------------------------------------------------------------------
 301.890 +# configuration options related to the XML output
 301.891 +#---------------------------------------------------------------------------
 301.892 +
 301.893 +# If the GENERATE_XML tag is set to YES Doxygen will 
 301.894 +# generate an XML file that captures the structure of 
 301.895 +# the code including all documentation.
 301.896 +
 301.897 +GENERATE_XML           = NO
 301.898 +
 301.899 +# The XML_OUTPUT tag is used to specify where the XML pages will be put. 
 301.900 +# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
 301.901 +# put in front of it. If left blank `xml' will be used as the default path.
 301.902 +
 301.903 +XML_OUTPUT             = xml
 301.904 +
 301.905 +# The XML_SCHEMA tag can be used to specify an XML schema, 
 301.906 +# which can be used by a validating XML parser to check the 
 301.907 +# syntax of the XML files.
 301.908 +
 301.909 +XML_SCHEMA             = 
 301.910 +
 301.911 +# The XML_DTD tag can be used to specify an XML DTD, 
 301.912 +# which can be used by a validating XML parser to check the 
 301.913 +# syntax of the XML files.
 301.914 +
 301.915 +XML_DTD                = 
 301.916 +
 301.917 +# If the XML_PROGRAMLISTING tag is set to YES Doxygen will 
 301.918 +# dump the program listings (including syntax highlighting 
 301.919 +# and cross-referencing information) to the XML output. Note that 
 301.920 +# enabling this will significantly increase the size of the XML output.
 301.921 +
 301.922 +XML_PROGRAMLISTING     = YES
 301.923 +
 301.924 +#---------------------------------------------------------------------------
 301.925 +# configuration options for the AutoGen Definitions output
 301.926 +#---------------------------------------------------------------------------
 301.927 +
 301.928 +# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will 
 301.929 +# generate an AutoGen Definitions (see autogen.sf.net) file 
 301.930 +# that captures the structure of the code including all 
 301.931 +# documentation. Note that this feature is still experimental 
 301.932 +# and incomplete at the moment.
 301.933 +
 301.934 +GENERATE_AUTOGEN_DEF   = NO
 301.935 +
 301.936 +#---------------------------------------------------------------------------
 301.937 +# configuration options related to the Perl module output
 301.938 +#---------------------------------------------------------------------------
 301.939 +
 301.940 +# If the GENERATE_PERLMOD tag is set to YES Doxygen will 
 301.941 +# generate a Perl module file that captures the structure of 
 301.942 +# the code including all documentation. Note that this 
 301.943 +# feature is still experimental and incomplete at the 
 301.944 +# moment.
 301.945 +
 301.946 +GENERATE_PERLMOD       = NO
 301.947 +
 301.948 +# If the PERLMOD_LATEX tag is set to YES Doxygen will generate 
 301.949 +# the necessary Makefile rules, Perl scripts and LaTeX code to be able 
 301.950 +# to generate PDF and DVI output from the Perl module output.
 301.951 +
 301.952 +PERLMOD_LATEX          = NO
 301.953 +
 301.954 +# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be 
 301.955 +# nicely formatted so it can be parsed by a human reader.  This is useful 
 301.956 +# if you want to understand what is going on.  On the other hand, if this 
 301.957 +# tag is set to NO the size of the Perl module output will be much smaller 
 301.958 +# and Perl will parse it just the same.
 301.959 +
 301.960 +PERLMOD_PRETTY         = YES
 301.961 +
 301.962 +# The names of the make variables in the generated doxyrules.make file 
 301.963 +# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. 
 301.964 +# This is useful so different doxyrules.make files included by the same 
 301.965 +# Makefile don't overwrite each other's variables.
 301.966 +
 301.967 +PERLMOD_MAKEVAR_PREFIX = 
 301.968 +
 301.969 +#---------------------------------------------------------------------------
 301.970 +# Configuration options related to the preprocessor   
 301.971 +#---------------------------------------------------------------------------
 301.972 +
 301.973 +# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will 
 301.974 +# evaluate all C-preprocessor directives found in the sources and include 
 301.975 +# files.
 301.976 +
 301.977 +ENABLE_PREPROCESSING   = YES
 301.978 +
 301.979 +# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro 
 301.980 +# names in the source code. If set to NO (the default) only conditional 
 301.981 +# compilation will be performed. Macro expansion can be done in a controlled 
 301.982 +# way by setting EXPAND_ONLY_PREDEF to YES.
 301.983 +
 301.984 +MACRO_EXPANSION        = NO
 301.985 +
 301.986 +# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES 
 301.987 +# then the macro expansion is limited to the macros specified with the 
 301.988 +# PREDEFINED and EXPAND_AS_DEFINED tags.
 301.989 +
 301.990 +EXPAND_ONLY_PREDEF     = NO
 301.991 +
 301.992 +# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files 
 301.993 +# in the INCLUDE_PATH (see below) will be search if a #include is found.
 301.994 +
 301.995 +SEARCH_INCLUDES        = YES
 301.996 +
 301.997 +# The INCLUDE_PATH tag can be used to specify one or more directories that 
 301.998 +# contain include files that are not input files but should be processed by 
 301.999 +# the preprocessor.
301.1000 +
301.1001 +INCLUDE_PATH           = 
301.1002 +
301.1003 +# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard 
301.1004 +# patterns (like *.h and *.hpp) to filter out the header-files in the 
301.1005 +# directories. If left blank, the patterns specified with FILE_PATTERNS will 
301.1006 +# be used.
301.1007 +
301.1008 +INCLUDE_FILE_PATTERNS  = 
301.1009 +
301.1010 +# The PREDEFINED tag can be used to specify one or more macro names that 
301.1011 +# are defined before the preprocessor is started (similar to the -D option of 
301.1012 +# gcc). The argument of the tag is a list of macros of the form: name 
301.1013 +# or name=definition (no spaces). If the definition and the = are 
301.1014 +# omitted =1 is assumed. To prevent a macro definition from being 
301.1015 +# undefined via #undef or recursively expanded use the := operator 
301.1016 +# instead of the = operator.
301.1017 +
301.1018 +PREDEFINED             = 
301.1019 +
301.1020 +# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then 
301.1021 +# this tag can be used to specify a list of macro names that should be expanded. 
301.1022 +# The macro definition that is found in the sources will be used. 
301.1023 +# Use the PREDEFINED tag if you want to use a different macro definition.
301.1024 +
301.1025 +EXPAND_AS_DEFINED      = 
301.1026 +
301.1027 +# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then 
301.1028 +# doxygen's preprocessor will remove all function-like macros that are alone 
301.1029 +# on a line, have an all uppercase name, and do not end with a semicolon. Such 
301.1030 +# function macros are typically used for boiler-plate code, and will confuse 
301.1031 +# the parser if not removed.
301.1032 +
301.1033 +SKIP_FUNCTION_MACROS   = YES
301.1034 +
301.1035 +#---------------------------------------------------------------------------
301.1036 +# Configuration::additions related to external references   
301.1037 +#---------------------------------------------------------------------------
301.1038 +
301.1039 +# The TAGFILES option can be used to specify one or more tagfiles. 
301.1040 +# Optionally an initial location of the external documentation 
301.1041 +# can be added for each tagfile. The format of a tag file without 
301.1042 +# this location is as follows: 
301.1043 +#   TAGFILES = file1 file2 ... 
301.1044 +# Adding location for the tag files is done as follows: 
301.1045 +#   TAGFILES = file1=loc1 "file2 = loc2" ... 
301.1046 +# where "loc1" and "loc2" can be relative or absolute paths or 
301.1047 +# URLs. If a location is present for each tag, the installdox tool 
301.1048 +# does not have to be run to correct the links.
301.1049 +# Note that each tag file must have a unique name
301.1050 +# (where the name does NOT include the path)
301.1051 +# If a tag file is not located in the directory in which doxygen 
301.1052 +# is run, you must also specify the path to the tagfile here.
301.1053 +
301.1054 +TAGFILES               = 
301.1055 +
301.1056 +# When a file name is specified after GENERATE_TAGFILE, doxygen will create 
301.1057 +# a tag file that is based on the input files it reads.
301.1058 +
301.1059 +GENERATE_TAGFILE       = 
301.1060 +
301.1061 +# If the ALLEXTERNALS tag is set to YES all external classes will be listed 
301.1062 +# in the class index. If set to NO only the inherited external classes 
301.1063 +# will be listed.
301.1064 +
301.1065 +ALLEXTERNALS           = NO
301.1066 +
301.1067 +# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed 
301.1068 +# in the modules index. If set to NO, only the current project's groups will 
301.1069 +# be listed.
301.1070 +
301.1071 +EXTERNAL_GROUPS        = YES
301.1072 +
301.1073 +# The PERL_PATH should be the absolute path and name of the perl script 
301.1074 +# interpreter (i.e. the result of `which perl').
301.1075 +
301.1076 +PERL_PATH              = /usr/bin/perl
301.1077 +
301.1078 +#---------------------------------------------------------------------------
301.1079 +# Configuration options related to the dot tool   
301.1080 +#---------------------------------------------------------------------------
301.1081 +
301.1082 +# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will 
301.1083 +# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base 
301.1084 +# or super classes. Setting the tag to NO turns the diagrams off. Note that 
301.1085 +# this option is superseded by the HAVE_DOT option below. This is only a 
301.1086 +# fallback. It is recommended to install and use dot, since it yields more 
301.1087 +# powerful graphs.
301.1088 +
301.1089 +CLASS_DIAGRAMS         = YES
301.1090 +
301.1091 +# If set to YES, the inheritance and collaboration graphs will hide 
301.1092 +# inheritance and usage relations if the target is undocumented 
301.1093 +# or is not a class.
301.1094 +
301.1095 +HIDE_UNDOC_RELATIONS   = YES
301.1096 +
301.1097 +# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is 
301.1098 +# available from the path. This tool is part of Graphviz, a graph visualization 
301.1099 +# toolkit from AT&T and Lucent Bell Labs. The other options in this section 
301.1100 +# have no effect if this option is set to NO (the default)
301.1101 +
301.1102 +HAVE_DOT               = YES
301.1103 +
301.1104 +# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen 
301.1105 +# will generate a graph for each documented class showing the direct and 
301.1106 +# indirect inheritance relations. Setting this tag to YES will force the 
301.1107 +# the CLASS_DIAGRAMS tag to NO.
301.1108 +
301.1109 +CLASS_GRAPH            = YES
301.1110 +
301.1111 +# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen 
301.1112 +# will generate a graph for each documented class showing the direct and 
301.1113 +# indirect implementation dependencies (inheritance, containment, and 
301.1114 +# class references variables) of the class with other documented classes.
301.1115 +
301.1116 +COLLABORATION_GRAPH    = YES
301.1117 +
301.1118 +# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen 
301.1119 +# will generate a graph for groups, showing the direct groups dependencies
301.1120 +
301.1121 +GROUP_GRAPHS           = YES
301.1122 +
301.1123 +# If the UML_LOOK tag is set to YES doxygen will generate inheritance and 
301.1124 +# collaboration diagrams in a style similar to the OMG's Unified Modeling 
301.1125 +# Language.
301.1126 +
301.1127 +UML_LOOK               = NO
301.1128 +
301.1129 +# If set to YES, the inheritance and collaboration graphs will show the 
301.1130 +# relations between templates and their instances.
301.1131 +
301.1132 +TEMPLATE_RELATIONS     = NO
301.1133 +
301.1134 +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT 
301.1135 +# tags are set to YES then doxygen will generate a graph for each documented 
301.1136 +# file showing the direct and indirect include dependencies of the file with 
301.1137 +# other documented files.
301.1138 +
301.1139 +INCLUDE_GRAPH          = YES
301.1140 +
301.1141 +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and 
301.1142 +# HAVE_DOT tags are set to YES then doxygen will generate a graph for each 
301.1143 +# documented header file showing the documented files that directly or 
301.1144 +# indirectly include this file.
301.1145 +
301.1146 +INCLUDED_BY_GRAPH      = YES
301.1147 +
301.1148 +# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will 
301.1149 +# generate a call dependency graph for every global function or class method. 
301.1150 +# Note that enabling this option will significantly increase the time of a run. 
301.1151 +# So in most cases it will be better to enable call graphs for selected 
301.1152 +# functions only using the \callgraph command.
301.1153 +
301.1154 +CALL_GRAPH             = YES
301.1155 +
301.1156 +# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then doxygen will 
301.1157 +# generate a caller dependency graph for every global function or class method. 
301.1158 +# Note that enabling this option will significantly increase the time of a run. 
301.1159 +# So in most cases it will be better to enable caller graphs for selected 
301.1160 +# functions only using the \callergraph command.
301.1161 +
301.1162 +CALLER_GRAPH           = YES
301.1163 +
301.1164 +# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen 
301.1165 +# will graphical hierarchy of all classes instead of a textual one.
301.1166 +
301.1167 +GRAPHICAL_HIERARCHY    = YES
301.1168 +
301.1169 +# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES 
301.1170 +# then doxygen will show the dependencies a directory has on other directories 
301.1171 +# in a graphical way. The dependency relations are determined by the #include
301.1172 +# relations between the files in the directories.
301.1173 +
301.1174 +DIRECTORY_GRAPH        = YES
301.1175 +
301.1176 +# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images 
301.1177 +# generated by dot. Possible values are png, jpg, or gif
301.1178 +# If left blank png will be used.
301.1179 +
301.1180 +DOT_IMAGE_FORMAT       = png
301.1181 +
301.1182 +# The tag DOT_PATH can be used to specify the path where the dot tool can be 
301.1183 +# found. If left blank, it is assumed the dot tool can be found in the path.
301.1184 +
301.1185 +DOT_PATH               = 
301.1186 +
301.1187 +# The DOTFILE_DIRS tag can be used to specify one or more directories that 
301.1188 +# contain dot files that are included in the documentation (see the 
301.1189 +# \dotfile command).
301.1190 +
301.1191 +DOTFILE_DIRS           = 
301.1192 +
301.1193 +# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width 
301.1194 +# (in pixels) of the graphs generated by dot. If a graph becomes larger than 
301.1195 +# this value, doxygen will try to truncate the graph, so that it fits within 
301.1196 +# the specified constraint. Beware that most browsers cannot cope with very 
301.1197 +# large images.
301.1198 +
301.1199 +MAX_DOT_GRAPH_WIDTH    = 1024
301.1200 +
301.1201 +# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height 
301.1202 +# (in pixels) of the graphs generated by dot. If a graph becomes larger than 
301.1203 +# this value, doxygen will try to truncate the graph, so that it fits within 
301.1204 +# the specified constraint. Beware that most browsers cannot cope with very 
301.1205 +# large images.
301.1206 +
301.1207 +MAX_DOT_GRAPH_HEIGHT   = 1024
301.1208 +
301.1209 +# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the 
301.1210 +# graphs generated by dot. A depth value of 3 means that only nodes reachable 
301.1211 +# from the root by following a path via at most 3 edges will be shown. Nodes 
301.1212 +# that lay further from the root node will be omitted. Note that setting this 
301.1213 +# option to 1 or 2 may greatly reduce the computation time needed for large 
301.1214 +# code bases. Also note that a graph may be further truncated if the graph's 
301.1215 +# image dimensions are not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH 
301.1216 +# and MAX_DOT_GRAPH_HEIGHT). If 0 is used for the depth value (the default), 
301.1217 +# the graph is not depth-constrained.
301.1218 +
301.1219 +MAX_DOT_GRAPH_DEPTH    = 0
301.1220 +
301.1221 +# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent 
301.1222 +# background. This is disabled by default, which results in a white background. 
301.1223 +# Warning: Depending on the platform used, enabling this option may lead to 
301.1224 +# badly anti-aliased labels on the edges of a graph (i.e. they become hard to 
301.1225 +# read).
301.1226 +
301.1227 +DOT_TRANSPARENT        = NO
301.1228 +
301.1229 +# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output 
301.1230 +# files in one run (i.e. multiple -o and -T options on the command line). This 
301.1231 +# makes dot run faster, but since only newer versions of dot (>1.8.10) 
301.1232 +# support this, this feature is disabled by default.
301.1233 +
301.1234 +DOT_MULTI_TARGETS      = NO
301.1235 +
301.1236 +# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will 
301.1237 +# generate a legend page explaining the meaning of the various boxes and 
301.1238 +# arrows in the dot generated graphs.
301.1239 +
301.1240 +GENERATE_LEGEND        = YES
301.1241 +
301.1242 +# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will 
301.1243 +# remove the intermediate dot files that are used to generate 
301.1244 +# the various graphs.
301.1245 +
301.1246 +DOT_CLEANUP            = YES
301.1247 +
301.1248 +#---------------------------------------------------------------------------
301.1249 +# Configuration::additions related to the search engine   
301.1250 +#---------------------------------------------------------------------------
301.1251 +
301.1252 +# The SEARCHENGINE tag specifies whether or not a search engine should be 
301.1253 +# used. If set to NO the values of all tags below this one will be ignored.
301.1254 +
301.1255 +SEARCHENGINE           = NO
   302.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   302.2 +++ b/x86/x86/2.7/bundle.cpp	Thu Jun 26 17:39:40 2008 +0100
   302.3 @@ -0,0 +1,125 @@
   302.4 +#include <QtCore>
   302.5 +#include <bundle.h>
   302.6 +
   302.7 +///////////////////////////////////////
   302.8 +//Bundle options:
   302.9 +//BIT 0: Send ACK to this bundle option
  302.10 +//BIT 1: ACK Bundle
  302.11 +//BIT 2: PRoPHET Message
  302.12 +//BIT 3: This bundle is an ack (used in bundle requests for letting the other 
  302.13 +//		 node know that the bundle was received. NOT THE PRoPHET ACK!)
  302.14 +//////////////////////////////////////
  302.15 +
  302.16 +
  302.17 +Bundle::Bundle(QObject *parent)
  302.18 +{
  302.19 +			id=0;
  302.20 +			sourceId=0;
  302.21 +			destinationId=0;
  302.22 +			data.clear();
  302.23 +			options=0;
  302.24 +			sourceString.clear();
  302.25 +			destinationString.clear();
  302.26 +			dataLength=0;
  302.27 +}
  302.28 +
  302.29 +
  302.30 +Bundle& Bundle::operator=(const Bundle& other)
  302.31 +{
  302.32 + id = other.id;
  302.33 + sourceId = other.sourceId;
  302.34 + destinationId = other.destinationId;
  302.35 + data = other.data;
  302.36 + timeStamp = other.timeStamp;
  302.37 + options = other.options;
  302.38 + sourceString = other.sourceString;
  302.39 + destinationString = other.destinationString;
  302.40 + dataLength = other.dataLength;
  302.41 + return *this;
  302.42 +}
  302.43 +
  302.44 +Bundle::Bundle(const Bundle& other)
  302.45 +{
  302.46 + id = other.id;
  302.47 + sourceId = other.sourceId;
  302.48 + destinationId = other.destinationId;
  302.49 + data = other.data;
  302.50 + timeStamp = other.timeStamp;
  302.51 + options = other.options;
  302.52 + sourceString = other.sourceString;
  302.53 + destinationString = other.destinationString;
  302.54 + dataLength = other.dataLength;
  302.55 +}	
  302.56 +	
  302.57 +void Bundle::setContent(int seq,int s,int d,QByteArray m,int opt,QByteArray src,QByteArray dst)
  302.58 +{
  302.59 +	timeStamp=timeStamp.currentDateTime();
  302.60 +	id=((seq%10000)+(d*10000)+(s*10000000));
  302.61 +	sourceId=s;
  302.62 +	destinationId=d;
  302.63 +	data=m; 
  302.64 +	options=opt;
  302.65 +	sourceString = src;
  302.66 +	destinationString = dst;
  302.67 +	dataLength=data.size();
  302.68 +
  302.69 +
  302.70 +}
  302.71 +void Bundle::setContent(int seq,int s,int d,QByteArray m,int opt)
  302.72 +{
  302.73 +	timeStamp=timeStamp.currentDateTime();
  302.74 +	id=((seq%10000)+(d*10000)+(s*10000000));
  302.75 +	sourceId=s;
  302.76 +	destinationId=d;
  302.77 +	data=m;
  302.78 +	sourceString.clear();
  302.79 +	destinationString.clear();
  302.80 +	options=opt;
  302.81 +	dataLength=data.size();
  302.82 +
  302.83 +}
  302.84 +
  302.85 +void Bundle::setAck(){
  302.86 +	options |= 0x8; //set ack-bit
  302.87 +}
  302.88 +
  302.89 +void Bundle::unSetAck(){
  302.90 +	options &= 0xF7; //un-set ack-bit
  302.91 +}
  302.92 +
  302.93 +bool Bundle::isAck(){
  302.94 +	if((options & 0x08)==0x08)
  302.95 +		return 1;
  302.96 +	else
  302.97 +		return 0;
  302.98 +}
  302.99 +int Bundle::getId()
 302.100 +{
 302.101 +	return id;
 302.102 +}
 302.103 +
 302.104 +int Bundle::getSourceId()
 302.105 +{
 302.106 +	return sourceId;
 302.107 +}
 302.108 +
 302.109 +int Bundle::getDestinationId()
 302.110 +{
 302.111 +	return destinationId;
 302.112 +}
 302.113 +
 302.114 +QByteArray Bundle::getData()
 302.115 +{
 302.116 +	return data;
 302.117 +}
 302.118 +
 302.119 +QDateTime Bundle::getTime()
 302.120 +{
 302.121 +	return timeStamp;
 302.122 +}
 302.123 +
 302.124 +
 302.125 +int Bundle::getOptions()
 302.126 +{
 302.127 +	return options;
 302.128 +}
   303.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   303.2 +++ b/x86/x86/2.7/bundle.h	Thu Jun 26 17:39:40 2008 +0100
   303.3 @@ -0,0 +1,151 @@
   303.4 +#ifndef BUNDLE_H
   303.5 +#define BUNDLE_H
   303.6 +
   303.7 +#include <QtCore>
   303.8 +
   303.9 +/*! \brief This class represents a bundle within PRoPHET.
  303.10 + */
  303.11 +class Bundle : public QObject
  303.12 +{
  303.13 +
  303.14 +Q_OBJECT 
  303.15 +	public:
  303.16 +	int id;
  303.17 +	int sourceId;
  303.18 +	int destinationId;
  303.19 +	QByteArray data;
  303.20 +	QByteArray sourceString;
  303.21 +	QByteArray destinationString;
  303.22 +	QDateTime timeStamp;
  303.23 +	int options;
  303.24 +	int dataLength;
  303.25 +	// The id of the last node that sent the bundle.
  303.26 +	// Used for keeping track of which bundles have been sent to which nodes.
  303.27 +	int lastSender;
  303.28 +
  303.29 +
  303.30 +	Bundle(QObject *parent = 0);
  303.31 +	Bundle(const Bundle& other);
  303.32 +	Bundle& operator=(const Bundle& other);
  303.33 +
  303.34 +	/*! \brief Sets the content of this Bundle.
  303.35 +	 * @param seq The sequence number of this Bundle??? Used for 
  303.36 +	 * calculating the id.
  303.37 +	 * @param s The id of the source node this Bundle originated from.
  303.38 +	 * @param d The id of the destination node of this Bundle.
  303.39 +	 * @param m The data payload of this Bundle.
  303.40 +	 * @param opt The options for this bundle. Only the three LSBits are used
  303.41 +	 * \verbatim
  303.42 +	           3                2                   1              0
  303.43 +	  -------------------------------------------------------------------
  303.44 +	  ... | 1=Ack     | 0 = PRoPHET bundle | 1 = Ack me       | Not used |
  303.45 +	      | 0=Non-ack | 1 = DTN bundle     | 0 = Don't ack me |          |
  303.46 +	  -------------------------------------------------------------------
  303.47 +	  \endverbatim
  303.48 +	 * @param src The string name of the source node.
  303.49 +	 * @param dst The string name of the destination node.
  303.50 +	 */void setContent(int,int s,int d,QByteArray m,int opt,QByteArray src,QByteArray dst);
  303.51 +	
  303.52 +	/*!
  303.53 +	 * Sets the content of this Bundle.
  303.54 +	 * @param seq The sequence number of this Bundle??? Used for 
  303.55 +	 * calculating the id.
  303.56 +	 * @param s The id of the source node this Bundle originated from.
  303.57 +	 * @param d The id of the destination node of this Bundle.
  303.58 +	 * @param m The data payload of this Bundle.
  303.59 +	 * @param opt The options for this bundle. Only the three LSBits are used
  303.60 +	 * \verbatim
  303.61 +	          3                2                   1              0
  303.62 +	  -------------------------------------------------------------------
  303.63 +	  ... | 1=Ack     | 0 = PRoPHET bundle | 1 = Ack me       | Not used |
  303.64 +	      | 0=Non-ack | 1 = DTN bundle     | 0 = Don't ack me |          |
  303.65 +	  -------------------------------------------------------------------
  303.66 +	  \endverbatim
  303.67 +	 */
  303.68 +	void setContent(int,int,int,QByteArray,int);
  303.69 +	
  303.70 +	//! Sets the (non-PRoPHET) ack bit of this bundle.
  303.71 +	/*!
  303.72 +	 * This is used for ackin bundles on the connection level, so that each 
  303.73 +	 * bundle is only sent once in bundle offers.
  303.74 +	 */
  303.75 +	void setAck();
  303.76 +	
  303.77 +	//! Resets the (non-PRoPHET) ack bit of this bundle.
  303.78 +	/*!
  303.79 +	 * This is used for ackin bundles on the connection level, so that each 
  303.80 +	 * bundle is only sent once in bundle offers.
  303.81 +	 */
  303.82 +	void unSetAck();
  303.83 +
  303.84 +	//! Checks whether this bundle has the (non PRoPHET) ack bit set.
  303.85 +	/*!
  303.86 +	 * @return true if the (non PRoPHET) ack bit is set, false otherwise.
  303.87 +	 */
  303.88 +	bool isAck();
  303.89 +
  303.90 +	//! Sets the last sender of this bundle.
  303.91 +	/*!
  303.92 +	 * Used for keeping track of which bundles have already been sent to 
  303.93 +	 * certains nodes.
  303.94 +	 * @param sender the id of the last sender.
  303.95 +	 */
  303.96 +	void setLastSender(int sender){
  303.97 +		lastSender = sender;
  303.98 +	}
  303.99 +
 303.100 +	//! Returns the id if the last sender
 303.101 +	/*!
 303.102 +	 * Used for keeping track of which bundles have already been sent to 
 303.103 +	 * certain nodes.
 303.104 +	 * @return the id of the last sender
 303.105 +	 */
 303.106 +	int getLastSender(){
 303.107 +		return lastSender;
 303.108 +	}
 303.109 +
 303.110 +	/*!
 303.111 +	 * Returns the id of the Bundle.
 303.112 +	 * @return The id of this Bundle.
 303.113 +	 */
 303.114 +	int getId(); 
 303.115 +	
 303.116 +	/*!
 303.117 +	 * Returns the source id of this Bundle.
 303.118 +	 * @return The source id of this Bundle.
 303.119 +	 */
 303.120 +	int getSourceId();
 303.121 +	
 303.122 +	/*!
 303.123 +	 * Returns the destination id of this Bundle.
 303.124 +	 * @return The destination id of this Bundle.
 303.125 +	 */
 303.126 +	int getDestinationId();
 303.127 +	
 303.128 +	/*!
 303.129 +	 * Returns the timestamp of when this Bundle was created.
 303.130 +	 * @return The timestamp of when this Bundle was created.
 303.131 +	 */
 303.132 +	QDateTime getTime();
 303.133 +	
 303.134 +	/*!
 303.135 +	 * Returns the data payload of this Bundle.
 303.136 +	 * @return The data payload of this Bundle.
 303.137 +	 */
 303.138 +	QByteArray getData();
 303.139 +	
 303.140 +	/*!
 303.141 +	 * Returns the options of this Bundle. Only the three LSBits are used.
 303.142 +	 * \verbatim
 303.143 +	          3                2                   1              0
 303.144 +	  -------------------------------------------------------------------
 303.145 +	  ... | 1=Ack     | 0 = PRoPHET bundle | 1 = Ack me       | Not used |
 303.146 +	      | 0=Non-ack | 1 = DTN bundle     | 0 = Don't ack me |          |
 303.147 +	  -------------------------------------------------------------------
 303.148 +	  \endverbatim
 303.149 +	 */
 303.150 +	int getOptions();
 303.151 +	
 303.152 +};
 303.153 +
 303.154 +#endif
   304.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   304.2 +++ b/x86/x86/2.7/bundleListFileIO.cpp	Thu Jun 26 17:39:40 2008 +0100
   304.3 @@ -0,0 +1,111 @@
   304.4 +#include <QtCore>
   304.5 +#include <bundleListFileIO.h>
   304.6 +#include <readFile.h>
   304.7 +
   304.8 +BundleListFileIO::BundleListFileIO(QHash<int,int> *h, QDir storageDir, QString fileName)
   304.9 +{
  304.10 +	hash = h;
  304.11 +	file = new QFile(storageDir.filePath(fileName));
  304.12 +	ReadFile conf;
  304.13 +	fileOption=conf.getUseFileHash();
  304.14 +	int WRITETIMER =conf.getWriteToFileTimer();
  304.15 +	if(fileOption==1)
  304.16 +	{
  304.17 +		timer = new QTimer();
  304.18 +		connect(timer, SIGNAL(timeout()), this, SLOT(writeAll()));
  304.19 +		timer->start(WRITETIMER);
  304.20 +	}
  304.21 +
  304.22 +}
  304.23 +
  304.24 +int BundleListFileIO::writeItem(int key)
  304.25 +{
  304.26 +	if(file->open(QIODevice::WriteOnly |QIODevice::Append| QIODevice::Text))
  304.27 +	{
  304.28 +		//add the key
  304.29 +		QString s = QString("%1").arg((int)key);
  304.30 +		//a tab to make things look nice
  304.31 +		s.append("\t");
  304.32 +		//add the values of the key
  304.33 +		QList<int> l = hash->values(key);
  304.34 +		for(int i=0; i<l.size(); i++)
  304.35 +		{
  304.36 +			s.append(QString("%1").arg((int)l.at(i)));
  304.37 +			s.append(";");	//we use ; as separator
  304.38 +		}
  304.39 +		s.remove(s.size()-1,1); //remove the last ;
  304.40 +		s.append("\n");
  304.41 +		file->write(s.toAscii());
  304.42 +		file->close();
  304.43 +		return 0;
  304.44 +	}else
  304.45 +	{
  304.46 +		//file IO error
  304.47 +		return -1;
  304.48 +	}
  304.49 +}
  304.50 +
  304.51 +int BundleListFileIO::writeAll()
  304.52 +{
  304.53 +	//erase anything in the file
  304.54 +	file->open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text);
  304.55 +	file->close();
  304.56 +	//then write each key and its values
  304.57 +	//QList<int> l = hash->uniqueKeys(); //!!This method doesn't exist
  304.58 +	QList<int> keys = hash->keys();
  304.59 +	QList<int> uniqueKeys;
  304.60 +	for(int i=0; i<keys.size(); i++)
  304.61 +	{
  304.62 +		if(!uniqueKeys.contains(keys.at(i)))
  304.63 +		{
  304.64 +			uniqueKeys.append(keys.at(i));
  304.65 +		}
  304.66 +	}
  304.67 +	int ret = 0;
  304.68 +	for(int i=0; i<uniqueKeys.size(); i++)
  304.69 +	{
  304.70 +		int status = writeItem(uniqueKeys.at(i));
  304.71 +		if(status < 0)
  304.72 +			ret = status;
  304.73 +	}
  304.74 +	return ret;
  304.75 +}
  304.76 +
  304.77 +int BundleListFileIO::readAll()
  304.78 +{
  304.79 +	if (file->open(QIODevice::ReadOnly|QIODevice::Text))
  304.80 +	{
  304.81 +		QString line = file->readLine();
  304.82 +		while(line.size() > 0)
  304.83 +		{
  304.84 +			bool ok;
  304.85 +			QRegExp sep("[\t ]+");	//all tabs and spaces
  304.86 +			int key = line.section(sep, 0, 0).toInt(&ok, 10);
  304.87 +			if(!ok)
  304.88 +			{
  304.89 +				file->close();
  304.90 +				return -2;
  304.91 +			}
  304.92 +			QString values = line.section(sep, -1, -1);
  304.93 +			QStringList valuesList = values.split(";");
  304.94 +			for(int i=0; i<valuesList.size(); i++)
  304.95 +			{
  304.96 +				int value = valuesList.at(i).toInt();
  304.97 +				if(!ok)
  304.98 +				{
  304.99 +					file->close();
 304.100 +					return -2;
 304.101 +				}
 304.102 +				hash->insertMulti(key, value);
 304.103 +			}
 304.104 +			line = file->readLine();
 304.105 +		}
 304.106 +		file->close();
 304.107 +		return 0;
 304.108 +	}else
 304.109 +	{
 304.110 +		//file IO error
 304.111 +		return -1;
 304.112 +	}
 304.113 +}
 304.114 +
   305.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   305.2 +++ b/x86/x86/2.7/bundleListFileIO.h	Thu Jun 26 17:39:40 2008 +0100
   305.3 @@ -0,0 +1,54 @@
   305.4 +#ifndef BUNDLELISTFILEIO_H
   305.5 +#define BUNDLELISTFILEIO_H
   305.6 +#include <QtCore>
   305.7 +
   305.8 +//! Handles the file IO for the QMultiHash that keeps track of which nodes have received certain bundles.
   305.9 +/*! The QMultiHash should have integer bundle ids as keys and a list of 
  305.10 + * integer node ids as values.
  305.11 + */
  305.12 +class BundleListFileIO : public QObject
  305.13 +{
  305.14 +	Q_OBJECT
  305.15 +
  305.16 +	public:
  305.17 +		BundleListFileIO(QObject *parent = 0);
  305.18 +		BundleListFileIO(const BundleListFileIO& other);
  305.19 +		BundleListFileIO& operator=(const BundleListFileIO& other);;
  305.20 +
  305.21 +		//!Creates a new BundleListFileIO object.
  305.22 +		/*!
  305.23 +		 * @param hash the QMultiHash used for storing bundle->node mappings.
  305.24 +		 * @param fileName the name of the file used for storing the hash.
  305.25 +		 */
  305.26 +		BundleListFileIO(QHash<int,int> *hash, QDir storageDir, QString fileName);
  305.27 +
  305.28 +		//! Writes the specified item to the file.
  305.29 +		/*! If the key already exists in the file, the old one is overwritten.
  305.30 +		 * @param key the key od what should be written to file.
  305.31 +		 * @return 0 if success, -1 otherwise
  305.32 +		 */
  305.33 +		int writeItem(int key);
  305.34 +
  305.35 +		//! Reads all keys and values from file and inserts them into the hash.
  305.36 +		/*! If keys read from file already exist in the hash the values from 
  305.37 +		 * file are appended to the values in the hash.
  305.38 +		 * @return 0 if successful reading file, -1 if file IO error, -2 if parse error.
  305.39 +		 */
  305.40 +		int readAll();
  305.41 +
  305.42 +		//! Writes all items in the hash to file
  305.43 +		/*!
  305.44 +		 * @return 0 if all items were written successfully, -1 otherwise. 
  305.45 +		 * Even if -1 is returned, as many items as possible are written to 
  305.46 +		 * file.
  305.47 +		 */
  305.48 +private slots:
  305.49 +		int writeAll();
  305.50 +
  305.51 +	private:
  305.52 +		QHash<int,int> *hash;
  305.53 +		QFile* file;
  305.54 +		QTimer* timer;
  305.55 +		int fileOption;
  305.56 +};
  305.57 +#endif
   306.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   306.2 +++ b/x86/x86/2.7/bundleManager.cpp	Thu Jun 26 17:39:40 2008 +0100
   306.3 @@ -0,0 +1,767 @@
   306.4 +#include <QtCore>
   306.5 +#include <bundleManager.h>
   306.6 +#include <bundle.h>
   306.7 +#include <readFile.h>
   306.8 +#include <nodeManager.h>
   306.9 +#include <bundleListFileIO.h>
  306.10 +#include <stdlib.h>
  306.11 +
  306.12 +#define BUNDLEDESTUPDATE 1000
  306.13 +#define TTLTIMER 1000
  306.14 +
  306.15 +BundleManager::BundleManager(int id)
  306.16 +{
  306.17 +	ourId=id;
  306.18 +	ReadFile conf;
  306.19 +	memoryStorageSize=conf.getMemoryStorageSize();
  306.20 +	fileStorageSize=conf.getStorageSize();
  306.21 +	fileOption=conf.getUseFileBundles();
  306.22 +	TTLOption=conf.getUseTTL();
  306.23 +	TTLValue=conf.getTTL();
  306.24 +	smartOffer=conf.getSmartOffer();
  306.25 +	if(TTLOption==1)
  306.26 +	{
  306.27 +		TTLTimer = new QTimer();
  306.28 +		TTLTimer->start(TTLTIMER);
  306.29 +		connect(TTLTimer, SIGNAL(timeout()), this, SLOT(checkTTL()));
  306.30 +	}
  306.31 +	routing=conf.getRouting();
  306.32 +	int WRITETIMER =conf.getWriteToFileTimer();
  306.33 +	storagePath=conf.getStoragePath();
  306.34 +	dir.setPath(storagePath);
  306.35 +	//Create the dir if it does not exist
  306.36 +	if(!dir.exists())
  306.37 +		dir.mkpath(dir.path());
  306.38 +	QString msgDirPath=conf.getMsgPath();
  306.39 +	msgDir.setPath(msgDirPath);
  306.40 +	option=conf.getUseFileBundles();
  306.41 +	logOption=conf.getLogOption();
  306.42 +	if(fileOption==1)
  306.43 +	{
  306.44 +		readFromFile();
  306.45 +		writeToFileTimer = new QTimer();
  306.46 +		connect(writeToFileTimer, SIGNAL(timeout()), this, SLOT(saveToFile()));
  306.47 +		writeToFileTimer->start(WRITETIMER);
  306.48 +		emit sendDebugBundleList(bundleList);
  306.49 +	}
  306.50 +	else
  306.51 +	{
  306.52 +		int seed = 10000;		/* choose a seed value */
  306.53 +		srand(seed);		/*initialize random number generator*/
  306.54 +		seq = (int)(rand()*1000000);
  306.55 +	}
  306.56 +
  306.57 +
  306.58 +	timer = new QTimer();
  306.59 +	showFirstTime=0;
  306.60 +	timer->start(5000);
  306.61 +	connect(timer, SIGNAL(timeout()), this, SLOT(emitDebugList()));
  306.62 +	if(logOption==1)
  306.63 +	{
  306.64 +		log = new MessageFile;
  306.65 +		log->set("transfer.log", 1000000, 5);
  306.66 +	}
  306.67 +	QString fileName = "bundleHash.txt";
  306.68 +	hashFile = new BundleListFileIO(&transferredBundleHash,
  306.69 +													 dir,
  306.70 +													 fileName);
  306.71 +	//get all bundle->node mappings from file
  306.72 +
  306.73 +	int res; 
  306.74 +	if(conf.getUseFileHash()==1)
  306.75 +		res= hashFile->readAll();
  306.76 +	if(logOption==1)
  306.77 +	{
  306.78 +	    QString logString;
  306.79 +	    logString.append("Imported to hash from file, result(0=ok): ");	
  306.80 +	    logString.append(QString("%1").arg((int)res));
  306.81 +	    log->addLog(0,logString);
  306.82 +	}
  306.83 +}
  306.84 +
  306.85 +void BundleManager::emitDebugList()
  306.86 +{
  306.87 +	if(showFirstTime==0)
  306.88 +	{
  306.89 +		emit sendDebugBundleList(bundleList);
  306.90 +		showFirstTime=1;
  306.91 +	}
  306.92 +
  306.93 +}
  306.94 +void BundleManager::saveToFile()
  306.95 +{
  306.96 +	QFile file(dir.filePath("bundles.txt"));
  306.97 +	if(file.open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text))
  306.98 +	{
  306.99 +	    QDateTime realTime;
 306.100 +	    realTime=realTime.currentDateTime ();
 306.101 +	    QString time=realTime.toString("MM/dd/yyyy hh:mm:ss");
 306.102 +	    time.append("\n");
 306.103 +	    file.write(time.toAscii ());
 306.104 +	    QString seqString;
 306.105 +	    seqString.append(QString("%1").arg((int)seq));
 306.106 +	    seqString.append("\n");
 306.107 +	    file.write(seqString.toAscii ());
 306.108 +	    for (ushort i = 0; i < bundleList.size(); ++i) 
 306.109 +	    {
 306.110 +		QString bundleString;
 306.111 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).id));
 306.112 +		bundleString.append("\t");
 306.113 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).sourceId));
 306.114 +		bundleString.append("\t");
 306.115 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).destinationId));
 306.116 +		bundleString.append("\t");
 306.117 +		bundleString.append(bundleList.at(i).sourceString);
 306.118 +		bundleString.append("\t");
 306.119 +		bundleString.append(bundleList.at(i).destinationString);
 306.120 +		bundleString.append("\t");
 306.121 +		QDateTime Dtime = bundleList.at(i).timeStamp;
 306.122 +		QString time=Dtime.toString("MM/dd/yyyy hh:mm:ss");
 306.123 +		bundleString.append(time);
 306.124 +		bundleString.append("\t");
 306.125 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).options));
 306.126 +		bundleString.append("\t");
 306.127 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).dataLength));
 306.128 +		bundleString.append("\n");
 306.129 +		file.write(bundleString.toAscii ());
 306.130 +	    }
 306.131 +	    file.close();
 306.132 +	}
 306.133 +}
 306.134 +
 306.135 +void BundleManager::readFromFile()
 306.136 +{
 306.137 +	QFile file(dir.filePath("bundles.txt"));
 306.138 +	if (file.open(QIODevice::ReadOnly|QIODevice::Text))
 306.139 +	{
 306.140 +		QString firstLine;
 306.141 +		QString seqLine;
 306.142 +		QString line;
 306.143 +		//First we read date and time
 306.144 +		firstLine=file.readLine();
 306.145 +		//Then we read bundle sequence number
 306.146 +		seqLine=file.readLine();
 306.147 +		seq=seqLine.toInt(0,10);
 306.148 +		//Then we add nodes
 306.149 +		line=file.readLine();
 306.150 +		while(line.size()>0)
 306.151 +		{
 306.152 +			//Parsing node
 306.153 +			int pos;
 306.154 +			QString temp;
 306.155 +			Bundle newBundle;
 306.156 +			//Bundle ID
 306.157 +			pos=line.indexOf("\t",0);
 306.158 +			temp=line.mid(0,pos);
 306.159 +			newBundle.id=temp.toInt(0,10);
 306.160 +			line.remove(0,pos+1);
 306.161 +			//Bundle source ID
 306.162 +			pos=line.indexOf("\t",0);
 306.163 +			temp=line.mid(0,pos);
 306.164 +			newBundle.sourceId=temp.toInt(0,10);
 306.165 +			line.remove(0,pos+1);
 306.166 +			//Bundle destination ID
 306.167 +			pos=line.indexOf("\t",0);
 306.168 +			temp=line.mid(0,pos);
 306.169 +			newBundle.destinationId=temp.toInt(0,10);
 306.170 +			line.remove(0,pos+1);
 306.171 +			//Bundle source string
 306.172 +			pos=line.indexOf("\t",0);
 306.173 +			temp=line.mid(0,pos);
 306.174 +			newBundle.sourceString=temp.toAscii();
 306.175 +			line.remove(0,pos+1);
 306.176 +			//Bundle destination string
 306.177 +			pos=line.indexOf("\t",0);
 306.178 +			temp=line.mid(0,pos);
 306.179 +			newBundle.destinationString=temp.toAscii();
 306.180 +			line.remove(0,pos+1);
 306.181 +			//Bundle timestamp
 306.182 +			pos=line.indexOf("\t",0);
 306.183 +			temp=line.mid(0,pos);
 306.184 +			QDateTime time;
 306.185 +			time=time.fromString(temp,"MM/dd/yyyy hh:mm:ss");
 306.186 +			newBundle.timeStamp=time;
 306.187 +			line.remove(0,pos+1);
 306.188 +			//Bundle options
 306.189 +			pos=line.indexOf("\t",0);
 306.190 +			temp=line.mid(0,pos);
 306.191 +			newBundle.options=temp.toInt(0,10);
 306.192 +			line.remove(0,pos+1);
 306.193 +			//Bundle datalength
 306.194 +			pos=line.indexOf("\t",0);
 306.195 +			temp=line.mid(0,pos);
 306.196 +			newBundle.dataLength=temp.toInt(0,10);
 306.197 +			line.remove(0,pos+1);
 306.198 +			//Adding Node
 306.199 +			QString bundlefilename;
 306.200 +			bundlefilename=QString("%1").arg((int)newBundle.id);
 306.201 +			QFile bundleFile(dir.filePath(bundlefilename));
 306.202 +			if (bundleFile.open(QIODevice::ReadOnly))
 306.203 +			{
 306.204 +			    int size=bundleFile.size();
 306.205 +			    bundleFile.close();
 306.206 +				if(bundleFile.size()>0)
 306.207 +				{
 306.208 +					bundleList.append(newBundle);
 306.209 +				}
 306.210 +			}
 306.211 +
 306.212 +
 306.213 +			line=file.readLine();
 306.214 +		}
 306.215 +		file.close();
 306.216 +	}
 306.217 +	//DEBUG
 306.218 +	emit sendDebugBundleList(bundleList);
 306.219 +	emit sendMemoryStorage(getMemoryStorageSize());
 306.220 +	emit sendFileStorage(getFileStorageSize());
 306.221 +
 306.222 +}
 306.223 +
 306.224 +QList<Bundle> BundleManager::getBundleList()
 306.225 +{	
 306.226 +	return bundleList;
 306.227 +}
 306.228 +
 306.229 +int BundleManager::getMemoryStorageSize()
 306.230 +{	
 306.231 +	int size=0;
 306.232 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 306.233 +	{
 306.234 +		size+=getMemoryBundleSize(bundleList.at(i));
 306.235 +	}
 306.236 +	return size;
 306.237 +}
 306.238 +
 306.239 +int BundleManager::getFileStorageSize()
 306.240 +{	
 306.241 +	int size=0;
 306.242 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 306.243 +	{
 306.244 +		size+=getFileBundleSize(bundleList.at(i));
 306.245 +	}
 306.246 +	return size;
 306.247 +}
 306.248 +
 306.249 +int BundleManager::getMemoryBundleSize(Bundle bundle)
 306.250 +{	
 306.251 +	int size=0;
 306.252 +	size+=sizeof(Bundle);
 306.253 +	size+=bundle.data.size();
 306.254 +	size+=bundle.destinationString.size();
 306.255 +	size+=bundle.sourceString.size();
 306.256 +	return size;
 306.257 +}
 306.258 +
 306.259 +int BundleManager::getFileBundleSize(Bundle bundle)
 306.260 +{	
 306.261 +	if(fileOption==1)
 306.262 +	{
 306.263 +		QString filename;
 306.264 +		filename=QString("%1").arg((int)bundle.id);
 306.265 +		QFile file(dir.filePath(filename));
 306.266 +		return file.size();
 306.267 +	}
 306.268 +	return 0;
 306.269 +}
 306.270 +
 306.271 +
 306.272 +QList<Bundle> BundleManager::getBundleOffer(QList<Node> ourList,QList<Node> encoutnerList,int encounterId)
 306.273 +{
 306.274 +	QList<Bundle> newBundleList;
 306.275 +//	return bundleList;
 306.276 +
 306.277 +	switch(routing)
 306.278 +	{
 306.279 +		case 0:	//EPIDEMIC ROUTING - I like it.. ;)	
 306.280 +			//We have to check for each bundle
 306.281 +			for (ushort i = 0; i < bundleList.size(); ++i) 
 306.282 +			{
 306.283 +				//We have to exclude our own bundles
 306.284 +				if(bundleList.at(i).destinationId!=ourId)
 306.285 +				{		
 306.286 +					if(smartOffer==1)
 306.287 +					{
 306.288 +					    // only offer the bundle if it was not already sent to the 
 306.289 +					    // encountered node.
 306.290 +					    QList<int> l = transferredBundleHash.values(bundleList.at(i).id);
 306.291 +					    if(!l.contains(encounterId))
 306.292 +					    {
 306.293 +							Bundle tempBundle;
 306.294 +							tempBundle=bundleList.at(i);
 306.295 +							newBundleList.append(tempBundle);
 306.296 +							if(logOption==1)
 306.297 +							{
 306.298 +							    QString logString;
 306.299 +		    					logString.append("Bundle: ");	
 306.300 +							    logString.append(QString("%1").arg((int)tempBundle.id));
 306.301 +		    					logString.append(" with encounterId: ");	
 306.302 +							    logString.append(QString("%1").arg((int)encounterId));
 306.303 +		    					logString.append(" not in hash, adding it to offer.");	
 306.304 +		    					log->addLog(0,logString);
 306.305 +							}
 306.306 +						}else
 306.307 +						{
 306.308 +							if(logOption==1)
 306.309 +							{
 306.310 +							    QString logString;
 306.311 +		    					logString.append("Bundle: ");	
 306.312 +							    logString.append(QString("%1").arg((int)bundleList.at(i).id));
 306.313 +		    					logString.append(" with encounterId: ");	
 306.314 +							    logString.append(QString("%1").arg((int)encounterId));
 306.315 +		    					logString.append(" is in hash, not adding it to offer.");	
 306.316 +		    					log->addLog(0,logString);
 306.317 +							}
 306.318 +						}
 306.319 +					}
 306.320 +					else // no smartOffer
 306.321 +					{
 306.322 +					    Bundle tempBundle;
 306.323 +					    tempBundle=bundleList.at(i);
 306.324 +					    newBundleList.append(tempBundle);	
 306.325 +    				}
 306.326 +					
 306.327 +				}
 306.328 +			}
 306.329 +			return newBundleList;
 306.330 +				return bundleList; break;	//this does nothing, probably should be removed
 306.331 +		case 1: //PROPHET ROUTING: GRTR  P_(B,D)>P_(A,D) - A bit more advanced
 306.332 +		//We have to check for each bundle
 306.333 +			for (ushort i = 0; i < bundleList.size(); ++i) 
 306.334 +			{
 306.335 +				//We have to exclude our own bundles
 306.336 +				if(bundleList.at(i).destinationId!=ourId)
 306.337 +				{		
 306.338 +					float ourProbability = -1.0;
 306.339 +					float encounterProbability = -1.0;
 306.340 +					int bundleDestination = bundleList.at(i).destinationId;
 306.341 +					//First we get our probability
 306.342 +					for (ushort n = 0; n < ourList.size(); ++n) 
 306.343 +					{
 306.344 +						int nodeId=ourList.at(n).nodeId;
 306.345 +						if(nodeId==bundleDestination)
 306.346 +							ourProbability = ourList.at(n).probability;
 306.347 +						}
 306.348 +					//Then we get encouter probability
 306.349 +					for (ushort n = 0; n < encoutnerList.size(); ++n) 
 306.350 +					{
 306.351 +						int nodeId=encoutnerList.at(n).nodeId;
 306.352 +						if(encoutnerList.at(n).nodeId==bundleDestination)
 306.353 +							encounterProbability = encoutnerList.at(n).probability;
 306.354 +					}
 306.355 +					//GTRT and Epidemic for ACKS
 306.356 +					if((((encounterProbability>ourProbability)||(bundleDestination==encounterId))&&(bundleDestination!=0)))//||(((bundleList.at(i).options&0x02)==0x02)))
 306.357 +					{		
 306.358 +					    if(smartOffer==1)
 306.359 +			    	    {
 306.360 +							// only send the bundle if it was not already sent to the 
 306.361 +							// encountered node.
 306.362 +							QList<int> l = transferredBundleHash.values(bundleList.at(i).id);
 306.363 +							if(!l.contains(encounterId))
 306.364 +							{
 306.365 +							    Bundle tempBundle;
 306.366 +							    tempBundle=bundleList.at(i);
 306.367 +							    newBundleList.append(tempBundle);
 306.368 +								if(logOption==1)
 306.369 +								{
 306.370 +								    QString logString;
 306.371 +			    					logString.append("Bundle: ");	
 306.372 +								    logString.append(QString("%1").arg((int)tempBundle.id));
 306.373 +		    						logString.append(" with encounterId: ");	
 306.374 +								    logString.append(QString("%1").arg((int)encounterId));
 306.375 +		    						logString.append(" not in hash, adding it to offer.");	
 306.376 +		    						log->addLog(0,logString);
 306.377 +								}
 306.378 +    						}else
 306.379 +							{
 306.380 +								if(logOption==1)
 306.381 +								{
 306.382 +							    	QString logString;
 306.383 +		    						logString.append("Bundle: ");	
 306.384 +								    logString.append(QString("%1").arg((int)bundleList.at(i).id));
 306.385 +		    						logString.append(" with encounterId: ");	
 306.386 +								    logString.append(QString("%1").arg((int)encounterId));
 306.387 +		    						logString.append(" is in hash, not adding it to offer.");	
 306.388 +		    						log->addLog(0,logString);
 306.389 +								}
 306.390 +							}
 306.391 +					    }
 306.392 +					    else	//no smartOffer
 306.393 +					    {
 306.394 +					        Bundle tempBundle;
 306.395 +					        tempBundle=bundleList.at(i);
 306.396 +					        newBundleList.append(tempBundle);
 306.397 +    					    }
 306.398 +					}
 306.399 +				}
 306.400 +			}
 306.401 +			return newBundleList;
 306.402 +			break;
 306.403 +	}
 306.404 +	return bundleList;
 306.405 +}
 306.406 +
 306.407 +void BundleManager::updateBundlesDestinations(NodeManager* nodeManager)
 306.408 +{
 306.409 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 306.410 +	{
 306.411 +		Bundle tempBundle;
 306.412 +		if(bundleList.at(i).destinationId==0)
 306.413 +		{
 306.414 +			QString source;
 306.415 +			QString destination;
 306.416 +			QString temp;
 306.417 +			int pos;
 306.418 +			tempBundle=bundleList.at(i);
 306.419 +/*			temp=tempBundle.sourceString;
 306.420 +			pos=temp.indexOf("://",0);
 306.421 +			temp.remove(0,pos+3);
 306.422 +			pos=temp.indexOf("/",0);
 306.423 +			source=temp.mid(0,pos);*/
 306.424 +			temp=tempBundle.destinationString;
 306.425 +			pos=temp.indexOf("://",0);
 306.426 +			temp.remove(0,pos+3);
 306.427 +			pos=temp.indexOf("/",0);
 306.428 +			destination=temp.mid(0,pos);
 306.429 +			tempBundle.destinationId=nodeManager->getId(destination);
 306.430 +			bundleList.replace(i,tempBundle);
 306.431 +			emit sendDebugBundleList(bundleList);
 306.432 +		}
 306.433 +	} 
 306.434 +
 306.435 +}
 306.436 +
 306.437 +QList<Bundle> BundleManager::prepareBundels(QList<Bundle> receivedList, int senderId)
 306.438 +{
 306.439 +	//Add any acked bundles to the hash with bundle->node mappings, then remove 
 306.440 +	//it from the received list.
 306.441 +	for(int i=0; i<receivedList.size(); i++)
 306.442 +	{
 306.443 +		Bundle b = receivedList.at(i);
 306.444 +		if(b.isAck())
 306.445 +		{
 306.446 +			//Only add the sender to the hash if not alrady in it
 306.447 +			QList<int> l = transferredBundleHash.values(b.id);
 306.448 +			if(!l.contains(senderId)){
 306.449 +				transferredBundleHash.insertMulti(b.id,senderId);
 306.450 +				if(logOption==1){
 306.451 +					QString logString;
 306.452 +					logString.append("Received smart-offer ack for Bundle: ");	
 306.453 +					logString.append(QString("%1").arg((int)b.id));
 306.454 +					logString.append(", adding it to hash. Sender: ");	
 306.455 +					logString.append(QString("%1").arg((int)senderId));
 306.456 +					log->addLog(0,logString);
 306.457 +				}
 306.458 +			}
 306.459 +			receivedList.removeAt(i);
 306.460 +		}
 306.461 +	}
 306.462 +	
 306.463 +	QList<Bundle> newBundleList;
 306.464 +	//We have to find and add all the bundles with data to the list
 306.465 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 306.466 +	{
 306.467 +		for (ushort j = 0; j < receivedList.size(); ++j) 
 306.468 +		{
 306.469 +			if(bundleList.at(i).id==receivedList.at(j).id)
 306.470 +				newBundleList.append(bundleList.at(i));
 306.471 +		}	
 306.472 +	}
 306.473 +	return newBundleList; 
 306.474 +}
 306.475 +
 306.476 +
 306.477 +QList<Bundle> BundleManager::prepareBundelRequest(QList<Bundle> receivedList)
 306.478 +{
 306.479 +	//We take only bundles that we don't have
 306.480 +	//Currently no memory restrictions!!!
 306.481 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 306.482 +	{
 306.483 +		for (ushort j = 0; j < receivedList.size(); ++j) 
 306.484 +		{
 306.485 +			if((bundleList.at(i).id==receivedList.at(j).id))//||(bundleList.at(i).options==receivedList.at(j).id))
 306.486 +			{
 306.487 +				receivedList.removeAt(j);
 306.488 +				j=0;
 306.489 +			}
 306.490 +		}	
 306.491 +	}
 306.492 +
 306.493 +	return receivedList; //We have to add some memory restrictions
 306.494 +}
 306.495 +
 306.496 +
 306.497 +
 306.498 +void BundleManager::addBundleList(QList<Bundle> receivedList)
 306.499 +{
 306.500 +	for (ushort n = 0; n < receivedList.size(); ++n)
 306.501 +	{
 306.502 +		Bundle newBundle;
 306.503 +		newBundle=receivedList.at(n);
 306.504 +		addBundle(newBundle);
 306.505 +	}	
 306.506 +}
 306.507 +
 306.508 +
 306.509 +//This is internal slot for adding bundles to the list
 306.510 +void BundleManager::storeBundle(Bundle newBundle)
 306.511 +{
 306.512 +
 306.513 +	//we obtain space for bundle
 306.514 +	//FIFO 
 306.515 +	while( 
 306.516 +		 (((getMemoryStorageSize()+getMemoryBundleSize(newBundle))>memoryStorageSize)||
 306.517 +		 ((getFileStorageSize()+getFileBundleSize(newBundle))>fileStorageSize))&&
 306.518 +		 (bundleList.size()>0)
 306.519 +		 )
 306.520 +	{
 306.521 +		if(fileOption==1)
 306.522 +		{
 306.523 +			Bundle firstBundle;
 306.524 +			firstBundle=bundleList.first();
 306.525 +			QString filename;
 306.526 +			filename=QString("%1").arg((int)firstBundle.id);
 306.527 +			QFile file(dir.filePath(filename));
 306.528 +			file.remove();
 306.529 +		}
 306.530 +		bundleList.removeFirst();
 306.531 +	}
 306.532 +	//Then we add it to the list
 306.533 +	if(fileOption==1)
 306.534 +	{
 306.535 +		QString filename;
 306.536 +		filename=QString("%1").arg((int)newBundle.id);
 306.537 +		QFile file(dir.filePath(filename));
 306.538 +		if (file.open(QIODevice::WriteOnly))
 306.539 +		{
 306.540 +			file.write(newBundle.data);
 306.541 +			newBundle.data.clear();
 306.542 +			file.close();
 306.543 +		}
 306.544 +	}
 306.545 +	bundleList.append(newBundle);
 306.546 +
 306.547 +		
 306.548 +	//DEBUG
 306.549 +	emit sendDebugBundleList(bundleList);
 306.550 +	emit sendMemoryStorage(getMemoryStorageSize());
 306.551 +	emit sendFileStorage(getFileStorageSize());
 306.552 +
 306.553 +
 306.554 +
 306.555 +}
 306.556 +
 306.557 +//This is external slot for receivng bundles
 306.558 +void BundleManager::addBundle(Bundle newBundle)
 306.559 +{
 306.560 +	int isInTheList=0;
 306.561 + 	Bundle tempBundle=newBundle;
 306.562 +	//Checking that we don't have the same bundle
 306.563 +	//or that wedidn't get any ACK for this bundle sofar
 306.564 +	for (ushort n = 0; n < bundleList.size(); ++n)
 306.565 +	{
 306.566 +		if(tempBundle.id==bundleList.at(n).id)
 306.567 +			isInTheList++;
 306.568 +		//Is there allready an ack for this bundle
 306.569 +		if((bundleList.at(n).options&0x02)==0x02)
 306.570 +		{		
 306.571 +			QByteArray data;
 306.572 +			if(fileOption==1)
 306.573 +			{
 306.574 +				QString filename;
 306.575 +				filename=QString("%1").arg((int)bundleList.at(n).id);
 306.576 +				QFile file(dir.filePath(filename));
 306.577 +				if(file.exists()==1)
 306.578 +				{
 306.579 +					if (file.open(QIODevice::ReadOnly))
 306.580 +					{
 306.581 +						data=file.readAll();
 306.582 +			    			file.close();
 306.583 +					}
 306.584 +				}
 306.585 +			}
 306.586 +			else
 306.587 +			{
 306.588 +				data = tempBundle.data;
 306.589 +			}
 306.590 +			if(tempBundle.id==data.toInt(0,10))   //Checking the bundle ACK bit
 306.591 +				isInTheList++;
 306.592 +		}
 306.593 +	}	
 306.594 +	if(isInTheList==0)
 306.595 +	{
 306.596 +		//We add a new bundle record to log file
 306.597 + 		if(logOption==1)
 306.598 +		{
 306.599 +		    QString logString;
 306.600 +		    logString.append("Bundle ID:");	
 306.601 +		    logString.append(QString("%1").arg((int)tempBundle.id));
 306.602 +		    logString.append(" SRC:");
 306.603 +		    logString.append(QString("%1").arg((int)tempBundle.sourceId));
 306.604 +		    logString.append(" ");
 306.605 +		    logString.append(tempBundle.sourceString);
 306.606 +		    logString.append(" DST:");
 306.607 +		    logString.append(QString("%1").arg((int)tempBundle.destinationId));
 306.608 +		    logString.append(" ");
 306.609 +		    logString.append(" Size:");
 306.610 +		    logString.append(QString("%1").arg((int)tempBundle.data.size()));
 306.611 +		    logString.append(tempBundle.destinationString);
 306.612 +		    log->addLog(0,logString);
 306.613 +		}
 306.614 +		//If this is a bundle endpoint we add it	
 306.615 +		if(tempBundle.destinationId==ourId)
 306.616 +		{
 306.617 +			//First we check if the Bundle is not ACK
 306.618 +			if((tempBundle.options&0x02)!=0x02)//Checking the bundle ACK bit
 306.619 +			{
 306.620 +				//We pass the bundle to Application layer
 306.621 +				//If this is a PRoPHET message...
 306.622 +				if((tempBundle.options&0x04)==0x04)//Checking the "PRoPHET" message bit
 306.623 +				{
 306.624 +					//We add a new msg
 306.625 +					QString filename;
 306.626 +					filename.append(tempBundle.timeStamp.toString("MM-dd_hh-mm"));
 306.627 +					filename.append("_ID_");
 306.628 +					filename.append(QString("%1").arg((int)tempBundle.id));
 306.629 +					filename.append("_FROM_");
 306.630 +					filename.append(tempBundle.sourceString);
 306.631 +					QFile file(msgDir.filePath(filename));
 306.632 +					if(file.open(QIODevice::WriteOnly|QIODevice::Truncate))
 306.633 +					{
 306.634 +						file.write(tempBundle.data);
 306.635 +						file.close();
 306.636 +					}
 306.637 +				}
 306.638 +				//Otherwise we pass it to the DTN
 306.639 +				else
 306.640 +				{
 306.641 +					QString logString;
 306.642 +					logString.append("Adding bundle to DTN  ID:");	
 306.643 +					logString.append(QString("%1").arg((int)tempBundle.id));
 306.644 +					logString.append(" SRC:");
 306.645 +					logString.append(QString("%1").arg((int)tempBundle.sourceId));
 306.646 +					logString.append(" ");
 306.647 +					logString.append(tempBundle.sourceString);
 306.648 +					logString.append(" DST:");
 306.649 +					logString.append(QString("%1").arg((int)tempBundle.destinationId));
 306.650 +					logString.append(" ");
 306.651 +					logString.append(tempBundle.destinationString);
 306.652 +					logString.append(" Size:");
 306.653 +					logString.append(QString("%1").arg((int)tempBundle.data.size()));
 306.654 +				    log->addLog(0,logString);
 306.655 +					emit sendDeliveredBundle(tempBundle);
 306.656 +				}
 306.657 +				//We store the bundle to our list
 306.658 +				//Adding recived bundle to storage if we are the ENDPOINT!!!!!!!!!!!!!
 306.659 +				storeBundle(tempBundle);
 306.660 +				//Then we check if we need to ACK this bundle
 306.661 +				if((tempBundle.options&0x01)==0x01)
 306.662 +				{
 306.663 +					//We create ACK
 306.664 +					Bundle ACKBundle;
 306.665 +					//And put the ACKed bundle ID to data field
 306.666 +					QByteArray ACKData;
 306.667 +					ACKData.setNum(tempBundle.id);
 306.668 +					int ACKOption;
 306.669 +					ACKOption = tempBundle.options;
 306.670 +					//We clear the ACKOption bit and set the ACK bit 
 306.671 +					ACKOption=ACKOption|0x02;
 306.672 +					ACKOption=ACKOption&0xFFFE;
 306.673 +					ACKBundle.setContent(seq,tempBundle.destinationId,tempBundle.sourceId,ACKData,ACKOption,tempBundle.destinationString,tempBundle.sourceString);
 306.674 +					seq++;
 306.675 +					//and add it to the list
 306.676 +					storeBundle(ACKBundle);
 306.677 +				}
 306.678 +			}
 306.679 +			//This is the ACK Bundle for us
 306.680 +			else
 306.681 +			{
 306.682 +				//Adding recived bundle to storage
 306.683 +				storeBundle(tempBundle);
 306.684 +				//Here can we pass some ACK inforation for application layer
 306.685 +				qint32 bundleId=tempBundle.data.toInt(0,10);
 306.686 +				removeBundle(bundleId);
 306.687 +			}
 306.688 +		}
 306.689 +		//This is not bundle's endpoint
 306.690 +		else
 306.691 +		{
 306.692 +			//If this is ACK of one of bundle that we have we remove it 
 306.693 +			if((tempBundle.options&0x02)==0x02)//Checking the bundle ACK bit
 306.694 +			{
 306.695 +				qint32 bundleId=tempBundle.data.toInt(0,10);
 306.696 +				removeBundle(bundleId);
 306.697 +			}
 306.698 +			storeBundle(tempBundle);
 306.699 +		}
 306.700 +
 306.701 +	}
 306.702 +}
 306.703 +
 306.704 +bool BundleManager::removeBundle(int bundleID)
 306.705 +{
 306.706 +	//First we search for the bundle
 306.707 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 306.708 +	{
 306.709 +		if(bundleID==bundleList.at(i).id)
 306.710 +		{
 306.711 +			//Then we dele it
 306.712 +			if(fileOption==1)
 306.713 +			{
 306.714 +				QString filename;
 306.715 +				filename=QString("%1").arg((int)bundleList.at(i).id);
 306.716 +				QFile file(dir.filePath(filename));
 306.717 +				if(file.exists()==1)
 306.718 +				{
 306.719 +					file.remove();
 306.720 +				}
 306.721 +			}
 306.722 +			bundleList.removeAt(i);			
 306.723 +			//DEBUG
 306.724 +			emit sendDebugBundleList(bundleList);
 306.725 +			emit sendMemoryStorage(getMemoryStorageSize());
 306.726 +			emit sendFileStorage(getFileStorageSize());
 306.727 +			return 1;
 306.728 +		}
 306.729 +	}
 306.730 +	return 0;
 306.731 +
 306.732 +}
 306.733 +
 306.734 +
 306.735 +void BundleManager::checkTTL()
 306.736 +{
 306.737 +	if(TTLOption==1)
 306.738 +	{
 306.739 +		QDateTime currentTime;
 306.740 +		currentTime=currentTime.currentDateTime();
 306.741 +		int currentTimeInSeconds=currentTime.toTime_t();
 306.742 +		for (ushort i = 0; i < bundleList.size(); ++i) 
 306.743 +		{
 306.744 +			int bundleTime=bundleList.at(i).timeStamp.toTime_t();
 306.745 +			if((bundleList.at(i).timeStamp.toTime_t()+TTLValue)<currentTimeInSeconds)
 306.746 +			{
 306.747 +				//Then we delete it
 306.748 +				removeBundle(bundleList.at(i).id);
 306.749 +				i=0;
 306.750 +			}
 306.751 +		}
 306.752 +	}
 306.753 +}
 306.754 +
 306.755 +void BundleManager::removeAllBundles()
 306.756 +{
 306.757 +	while(bundleList.size()>0)
 306.758 +	{
 306.759 +		removeBundle(bundleList.first().id);
 306.760 +	}
 306.761 +}
 306.762 +
 306.763 +int BundleManager::getSeq()
 306.764 +{
 306.765 +	seq++;
 306.766 +	seq%=1000000;
 306.767 +	return seq;
 306.768 +}
 306.769 +
 306.770 +
   307.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   307.2 +++ b/x86/x86/2.7/bundleManager.h	Thu Jun 26 17:39:40 2008 +0100
   307.3 @@ -0,0 +1,172 @@
   307.4 +#ifndef BUNDLEMANAGER_H
   307.5 +#define BUNDLEMANAGER_H
   307.6 +#include <QtCore>
   307.7 +#include <bundle.h>
   307.8 +#include <node.h>
   307.9 +#include <nodeManager.h>
  307.10 +#include <messageFile.h>
  307.11 +#include <bundleListFileIO.h>
  307.12 +
  307.13 +/*! \brief This class keeps track of bundles and handles bundle storage, both 
  307.14 + * in memory and on disk. 
  307.15 + *
  307.16 + * PRoPHET routing is also done in this class (but should be moved 
  307.17 + * to its own object.
  307.18 + */
  307.19 +class BundleManager : public QObject
  307.20 +{
  307.21 +	Q_OBJECT
  307.22 +
  307.23 +public:
  307.24 +	BundleManager(int);
  307.25 +	int getMemoryStorageSize();
  307.26 +	int getMemoryBundleSize(Bundle);
  307.27 +	int getFileStorageSize();
  307.28 +	int getFileBundleSize(Bundle);
  307.29 +	QList<Bundle> getBundleList();
  307.30 +
  307.31 +	//Returns the list of bundles that are to be offered to the encountered node.
  307.32 +	/*!
  307.33 +	 * Returns the list of bundles that are to be offered to the encountered 
  307.34 +	 * node.
  307.35 +	 * @param ourList our list of known nodes (from node manager).
  307.36 +	 * @param encoutnerlist the node list of the encountered node.
  307.37 +	 * @param encounterId the node id of the encountered node.
  307.38 +	 * @return the list of bundles that are to be offered to the encountered 
  307.39 +	 * node.
  307.40 +	 */
  307.41 +	QList<Bundle> getBundleOffer(QList<Node> ourList,QList<Node> encoutnerList,int encounterId);
  307.42 +	QList<Bundle> prepareBundelRequest(QList<Bundle>);
  307.43 +
  307.44 +	// Builds the list of bundles that are to be transferred to the encountered node.
  307.45 +	/*!
  307.46 +	 * @param receivedList the list of requested bundles.
  307.47 +	 * @param senderId the id of the node this Bundle was received from. 
  307.48 +	 * Note: This is NOT the source id.
  307.49 +	 * @return the list of bundles that will be sent to the other node.
  307.50 +	 */
  307.51 +	QList<Bundle> prepareBundels(QList<Bundle>, int senderId);
  307.52 +
  307.53 +private:
  307.54 +	QTimer *timer;
  307.55 +	QTimer *TTLTimer;
  307.56 +	int routing;	//0=epidemic, 1=GRTR
  307.57 +	int fileOption;
  307.58 +	int TTLOption;
  307.59 +	int TTLValue;
  307.60 +	int ACKOption;
  307.61 +	int memoryStorageSize;
  307.62 +	int fileStorageSize;
  307.63 +	int ourId;
  307.64 +	int seq;
  307.65 +	int smartOffer;
  307.66 +
  307.67 +	// keeps track of which nodes each bundle was sent to
  307.68 +	// key = bundle id, value = list of node ids
  307.69 +	// (should be declared private)
  307.70 +	QMultiHash<int, int> transferredBundleHash;
  307.71 +    BundleListFileIO* hashFile;
  307.72 +
  307.73 +	QTimer *writeToFileTimer;
  307.74 +	QList<Bundle> bundleList;
  307.75 +
  307.76 +	QDir dir;
  307.77 +	QDir msgDir;
  307.78 +	QString storagePath;
  307.79 +	int option;
  307.80 +	int logOption;
  307.81 +	MessageFile *log;
  307.82 +	bool showFirstTime;
  307.83 +
  307.84 +signals:
  307.85 +	/*!
  307.86 +	 * Emits the specified Bundle. (Used for passing bundles to DTN)
  307.87 +	 */
  307.88 +	void sendDeliveredBundle(Bundle);
  307.89 +	
  307.90 +		/*!
  307.91 +	 * Emits the memory usage of the bundle list in bytes(?).
  307.92 +	 */
  307.93 +	void sendMemoryStorage(int);
  307.94 +	
  307.95 +	/*!
  307.96 +	 * Emits the size (in bytes?) of the file storage.
  307.97 +	 */
  307.98 +	void sendFileStorage(int);
  307.99 +	
 307.100 +	/*!
 307.101 +	 * Emits the bundle list (to the GUI).
 307.102 +	 */
 307.103 +	void sendDebugBundleList(QList<Bundle>);
 307.104 +
 307.105 +public slots:
 307.106 +	/*!
 307.107 +	 * External method to get a  bundle sequence number.
 307.108 +	 */
 307.109 +	int getSeq();
 307.110 +
 307.111 +	/*!
 307.112 +	 * External slot for receiving bundles. Received bundles are 
 307.113 +	 * appropriately dispatched to either the application layer (an NSIM 
 307.114 +	 * bundle) or to DTN.
 307.115 +	 */
 307.116 +	void addBundle(Bundle);
 307.117 +	
 307.118 +	/*!
 307.119 +	 * Goes through the bundle list searching for bundles who's destination 
 307.120 +	 * id=0 and assigning the correct destination for any such bundles. 
 307.121 +	 * This function is a workaround for the situation when bundles are 
 307.122 +	 * received before this client is aware of (has a probability for) the 
 307.123 +	 * destination node.
 307.124 +	 */
 307.125 +	void updateBundlesDestinations(NodeManager*);
 307.126 +	
 307.127 +	/*!
 307.128 +	 * Inserts all bundles in the list to the list of this bundleManager.
 307.129 +	 * @param receivedList a list of bundles to be added to this 
 307.130 +	 * bundleManagers list.
 307.131 +	 */
 307.132 +	void addBundleList(QList<Bundle>);
 307.133 +	
 307.134 +private slots:
 307.135 +	/*!
 307.136 +	 * Saves the bundle list to the file bundles.txt.
 307.137 +	 */
 307.138 +	void saveToFile();
 307.139 +	
 307.140 +	/*!
 307.141 +	 * Updates the bundle list in memory to match the one stored on disk in 
 307.142 +	 * bundles.txt.
 307.143 +	 */
 307.144 +	void readFromFile();
 307.145 +	
 307.146 +	/*!
 307.147 +	 * Removes the specified bundle from the list.
 307.148 +	 * @param bundleID the id of the bundle to be removed.
 307.149 +	 */
 307.150 +	bool removeBundle(int);
 307.151 +	
 307.152 +	/*!
 307.153 +	 * Triggers sending the bundle list to the GUI.
 307.154 +	 */	
 307.155 +	void emitDebugList();
 307.156 +	
 307.157 +	/*!
 307.158 +	 * Iterates through the bundle list and removes any bundles which have 
 307.159 +	 * an outdated timestamp.
 307.160 +	 */
 307.161 +	void checkTTL();
 307.162 +	
 307.163 +	/*!
 307.164 +	 * Removes all bundles from the list.
 307.165 +	 */
 307.166 +	void removeAllBundles();
 307.167 +	
 307.168 +	/*!
 307.169 +	 * Internal slot for adding a bundle to the list.
 307.170 +	 */
 307.171 +	void storeBundle(Bundle);
 307.172 +
 307.173 +
 307.174 +};
 307.175 +#endif
   308.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   308.2 +++ b/x86/x86/2.7/bundleWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   308.3 @@ -0,0 +1,176 @@
   308.4 +#include <QtGui>
   308.5 +#include <bundleWidget.h>
   308.6 +#include <readFile.h>
   308.7 +
   308.8 +
   308.9 +BundleWidget::BundleWidget(QWidget *parent)
  308.10 +        : QWidget(parent)
  308.11 +{
  308.12 +#ifdef PDAGUI
  308.13 +//	setFixedSize(230, 300);
  308.14 +#else
  308.15 +	setFixedSize(990, 660);
  308.16 +#endif //PDAGUI
  308.17 +	
  308.18 +	ReadFile conf;
  308.19 +
  308.20 +#ifndef PDAGUI
  308.21 +	//List group
  308.22 +	QGroupBox *bundleBox = new QGroupBox("Bundle list");
  308.23 +#endif //PDAGUI
  308.24 +
  308.25 +	//Bundle table
  308.26 +	table = new QTableWidget(200, 9, this);
  308.27 +    QStringList horizontalLabels;
  308.28 +    horizontalLabels << "ID" << "TimeStamp" << "SrcStr" << "DestStr"<< "Source" << "Dest" << "Data" << "Options" << "Size";
  308.29 +	table->setHorizontalHeaderLabels(horizontalLabels); 
  308.30 +
  308.31 +
  308.32 +	//Final grid layout
  308.33 +    QGridLayout *bundleGroup = new QGridLayout;
  308.34 +	bundleGroup->addWidget(table, 0, 0);
  308.35 +#ifdef PDAGUI
  308.36 +	bundleGroup->setMargin(0);
  308.37 +	bundleGroup->setSpacing(0);
  308.38 +//	bundleBox->setFixedSize(230, 270);
  308.39 +#else
  308.40 +	bundleBox->setFixedSize(950, 550);
  308.41 +	bundleBox->setLayout(bundleGroup);
  308.42 +#endif //PDAGUI
  308.43 +
  308.44 +#ifndef PDAGUI
  308.45 +	QGroupBox *buttonBox = new QGroupBox("Administration");
  308.46 +#endif //PDAGUI
  308.47 +#ifdef PDAGUI
  308.48 +	removeSelected = new QPushButton("Remove Selected");
  308.49 +	removeAll = new QPushButton("Remove All");
  308.50 +#else
  308.51 +	removeSelected = new QPushButton("Remove Selected One");
  308.52 +	removeAll = new QPushButton("Remove All Bundles");
  308.53 +#endif //PDAGUI
  308.54 +	connect(removeSelected, SIGNAL(pressed()), this, SLOT(removeSelectedSlot()));
  308.55 +	connect(removeAll, SIGNAL(pressed()), this, SLOT(removeAllSlot()));
  308.56 +
  308.57 +
  308.58 +	//Final grid layout
  308.59 +    QGridLayout *administrationGroup = new QGridLayout;
  308.60 +
  308.61 +	administrationGroup->addWidget(removeSelected, 0, 0);
  308.62 +	administrationGroup->addWidget(removeAll, 0, 1);
  308.63 +
  308.64 +#ifdef PDAGUI
  308.65 +	administrationGroup->setMargin(0);
  308.66 +	administrationGroup->setSpacing(0);
  308.67 +// 	buttonBox->setFixedSize(230, 30);
  308.68 +//	buttonBox->setLayout(administrationGroup);
  308.69 +	//Define final layout
  308.70 +	QVBoxLayout *layout = new QVBoxLayout;
  308.71 +	layout->setMargin(0);
  308.72 +	layout->setSpacing(0);
  308.73 +	QWidget *tempWidget1 = new QWidget(this);
  308.74 +//	table->setFixedSize(230,260);
  308.75 +//	tempWidget1->setFixedSize(230,260);
  308.76 +	tempWidget1->setLayout(bundleGroup);
  308.77 +    layout->addWidget(tempWidget1);
  308.78 +	QWidget *tempWidget2 = new QWidget(this);
  308.79 +//	tempWidget2->setFixedSize(230,40);
  308.80 +	tempWidget2->setLayout(administrationGroup);
  308.81 +	layout->addWidget(tempWidget2);
  308.82 +    setLayout(layout);
  308.83 +#else
  308.84 + 	buttonBox->setFixedSize(950, 60);
  308.85 +	buttonBox->setLayout(administrationGroup);
  308.86 +	//Define final layout
  308.87 +	QVBoxLayout *layout = new QVBoxLayout;
  308.88 +    layout->addWidget(bundleBox);    
  308.89 +	layout->addWidget(buttonBox);    
  308.90 +    setLayout(layout);
  308.91 +#endif //PDAGUI
  308.92 +}
  308.93 +
  308.94 +
  308.95 +void BundleWidget::removeSelectedSlot()
  308.96 +{
  308.97 +
  308.98 +	QList<QTableWidgetItem*> list; 
  308.99 +	list = table->selectedItems ();
 308.100 +	if(list.size()==1)
 308.101 +	for (int i = 0; i < list.size(); ++i) 
 308.102 +	{
 308.103 +		QTableWidgetItem* item = list[i];
 308.104 +		int bundleId = item->text().toInt(0,10);
 308.105 +		emit removeBundle(bundleId);
 308.106 +	}
 308.107 +}
 308.108 +
 308.109 +void BundleWidget::removeAllSlot()
 308.110 +{
 308.111 +	 if(
 308.112 +	QMessageBox::question(
 308.113 +		this,
 308.114 +		 "Warning",
 308.115 +		"Are you really sure to remove all bundles?\n",
 308.116 +		"No","Yes",
 308.117 +		QString(),1,0)
 308.118 +	  )
 308.119 +		emit removeAllBundles();
 308.120 +}
 308.121 +
 308.122 +void BundleWidget::getBundleList(QList<Bundle> list)
 308.123 +{
 308.124 +	Bundle newBundle;
 308.125 +	table->clear();
 308.126 +	QStringList horizontalLabels;
 308.127 +    horizontalLabels << "ID" << "TimeStamp" << "SrcStr" << "DestStr"<< "Source" << "Dest" << "Data" << "Options" << "Size";
 308.128 +	table->setHorizontalHeaderLabels(horizontalLabels);
 308.129 +	table->setColumnWidth(0, 70);	//ID
 308.130 +	table->setColumnWidth(2, 70);	//time
 308.131 +	table->setColumnWidth(3, 70);	//srcstr
 308.132 +	table->setColumnWidth(4, 70);	//dststr
 308.133 +	table->setColumnWidth(5, 30);	//src
 308.134 +	table->setColumnWidth(6, 30);	//dst
 308.135 +	table->setColumnWidth(7, 70);	//data
 308.136 +	table->setColumnWidth(8, 40);	//opt
 308.137 +	table->setColumnWidth(9, 40);	//size
 308.138 +   for (int i = 0; i < list.size(); ++i) 
 308.139 +	{
 308.140 +		newBundle=list.at(i);
 308.141 +		QString text = QString("%1").arg((int)newBundle.getId());
 308.142 +		QTableWidgetItem *newItem = new QTableWidgetItem(text);
 308.143 +		table->setItem(i, 0, newItem);
 308.144 +	
 308.145 +		QDateTime time= newBundle.getTime();
 308.146 +		text = time.toString("MM/dd/yyyy hh:mm:ss");
 308.147 +		newItem = new QTableWidgetItem(text);
 308.148 +		table->setItem(i, 1, newItem);
 308.149 +
 308.150 +	
 308.151 +		newItem = new QTableWidgetItem((QString)newBundle.sourceString);
 308.152 +		table->setItem(i, 2, newItem);
 308.153 +		
 308.154 +		newItem = new QTableWidgetItem((QString)newBundle.destinationString);
 308.155 +		table->setItem(i, 3, newItem);
 308.156 +		
 308.157 +		text = QString("%1").arg((int)newBundle.getSourceId());
 308.158 +		newItem = new QTableWidgetItem(text);
 308.159 +		table->setItem(i, 4, newItem);
 308.160 +
 308.161 +		text = QString("%1").arg((int)newBundle.getDestinationId());
 308.162 +		newItem = new QTableWidgetItem(text);
 308.163 +		table->setItem(i, 5, newItem);
 308.164 +	
 308.165 +		newItem = new QTableWidgetItem((QString)newBundle.getData());
 308.166 +		table->setItem(i, 6, newItem);
 308.167 +
 308.168 +		text = QString("%1").arg((int)newBundle.getOptions());
 308.169 +		newItem = new QTableWidgetItem(text);
 308.170 +		table->setItem(i, 7, newItem);
 308.171 +
 308.172 +		text = QString("%1").arg((int)newBundle.dataLength);
 308.173 +		newItem = new QTableWidgetItem(text);
 308.174 +		table->setItem(i, 8, newItem);
 308.175 +
 308.176 +
 308.177 +	}
 308.178 +
 308.179 + }
   309.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   309.2 +++ b/x86/x86/2.7/bundleWidget.h	Thu Jun 26 17:39:40 2008 +0100
   309.3 @@ -0,0 +1,34 @@
   309.4 +#ifndef BUNDLEWIDGET_H
   309.5 +#define BUNDLEWIDGET_H
   309.6 +#include <QtGui>
   309.7 +#include <QtNetwork>
   309.8 +#include <bundle.h>
   309.9 +
  309.10 +
  309.11 +class BundleWidget : public QWidget
  309.12 +{
  309.13 +
  309.14 +	Q_OBJECT
  309.15 +
  309.16 +public:
  309.17 +
  309.18 +	BundleWidget(QWidget *parent = 0);
  309.19 +	QTableWidget *table;
  309.20 +	QPushButton *removeSelected;
  309.21 +	QPushButton *removeAll;
  309.22 +
  309.23 +signals:
  309.24 +	void removeBundle(int);
  309.25 +	void removeAllBundles();
  309.26 +public slots:
  309.27 +	void removeSelectedSlot();
  309.28 +	void removeAllSlot();
  309.29 +	void getBundleList(QList<Bundle>);
  309.30 +
  309.31 +
  309.32 +
  309.33 +};
  309.34 +
  309.35 +#endif
  309.36 +
  309.37 +
   310.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   310.2 +++ b/x86/x86/2.7/configWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   310.3 @@ -0,0 +1,257 @@
   310.4 +#include <QtGui>
   310.5 +#include <configWidget.h>
   310.6 +#include <readFile.h>
   310.7 +
   310.8 +ConfigWidget::ConfigWidget(QWidget *parent)
   310.9 +        : QWidget(parent)
  310.10 +{
  310.11 +	ReadFile conf;
  310.12 +
  310.13 +	//Reading configuration
  310.14 +	loadConfiguration();
  310.15 +	//Final grid layout
  310.16 +	QGridLayout *readGroup = new QGridLayout;
  310.17 +	readGroup->setMargin(2);
  310.18 +	readGroup->setSpacing(0);
  310.19 +
  310.20 +	QLabel *labelNODEID = new QLabel("NodeID:");
  310.21 +	readGroup->addWidget(labelNODEID, 0, 0);
  310.22 +	readGroup->addWidget(lineNODEID, 0, 1);
  310.23 +	QLabel *labelNODENAME = new QLabel("Node Name:");
  310.24 +	readGroup->addWidget(labelNODENAME, 1, 0);
  310.25 +	readGroup->addWidget(lineNODENAME, 1, 1);
  310.26 +	QLabel *labelNODEIP = new QLabel("Node IP:");
  310.27 +	readGroup->addWidget(labelNODEIP, 2, 0);
  310.28 +	readGroup->addWidget(lineNODEIP, 2, 1);
  310.29 +	QLabel *labelNODEIP2 = new QLabel("Node IP2:");
  310.30 +	readGroup->addWidget(labelNODEIP2, 3, 0);
  310.31 +	readGroup->addWidget(lineNODEIP2, 3, 1);
  310.32 +	QLabel *labelNODEBROADCAST = new QLabel("Broadcast Address:");
  310.33 +	readGroup->addWidget(labelNODEBROADCAST, 4, 0);
  310.34 +	readGroup->addWidget(lineNODEBROADCAST, 4, 1);
  310.35 +	QLabel *labelBROADCAST = new QLabel("Broadcast Timer:");
  310.36 +	readGroup->addWidget(labelBROADCAST, 5, 0);
  310.37 +	readGroup->addWidget(lineBROADCAST, 5, 1);
  310.38 +	QLabel *labelAGINGTIMER = new QLabel("Aging Timer:");
  310.39 +	readGroup->addWidget(labelAGINGTIMER, 6, 0);
  310.40 +	readGroup->addWidget(lineAGINGTIMER, 6, 1);
  310.41 +	QLabel *labelPENCOUNTER = new QLabel("PEcounter:");
  310.42 +	readGroup->addWidget(labelPENCOUNTER, 7, 0);
  310.43 +	readGroup->addWidget(linePENCOUNTER, 7, 1);
  310.44 +	QLabel *labelBETA = new QLabel("Beta:");
  310.45 +	readGroup->addWidget(labelBETA, 8, 0);
  310.46 +	readGroup->addWidget(lineBETA, 8, 1);
  310.47 +	QLabel *labelGAMMA = new QLabel("Gamma:");
  310.48 +	readGroup->addWidget(labelGAMMA, 9, 0);
  310.49 +	readGroup->addWidget(lineGAMMA, 9, 1);
  310.50 +	QLabel *labelHELLO = new QLabel("Hello Timer:");
  310.51 +	readGroup->addWidget(labelHELLO, 10, 0);
  310.52 +	readGroup->addWidget(lineHELLO, 10, 1);
  310.53 +
  310.54 +	QLabel *labelALIVE = new QLabel("Alive Timer:");
  310.55 +	readGroup->addWidget(labelALIVE, 11, 0);
  310.56 +	readGroup->addWidget(lineALIVE, 11, 1);
  310.57 +
  310.58 +	QLabel *labelHELLOTIMER = new QLabel("Hello Timer:");
  310.59 +	readGroup->addWidget(labelHELLOTIMER, 12, 0);
  310.60 +	readGroup->addWidget(lineHELLOTIMER, 12, 1);
  310.61 +
  310.62 +//	QLabel *laberINITIATORTIMER = new QLabel("Initiator Timer:");
  310.63 +//	readGroup->addWidget(laberINITIATORTIMER, 13, 0);
  310.64 +//	readGroup->addWidget(lineINITIATORTIMER, 13, 1);
  310.65 +
  310.66 +//	QLabel *labelLISTENERTIMER = new QLabel("Listener Timer:");
  310.67 +//	readGroup->addWidget(labelLISTENERTIMER, 14, 0);
  310.68 +//	readGroup->addWidget(lineLISTENERTIMER, 14, 1);
  310.69 +
  310.70 +	QLabel *labelDTNHOSTNAME = new QLabel("DTN Host Name:");
  310.71 +	readGroup->addWidget(labelDTNHOSTNAME, 13, 0);
  310.72 +	readGroup->addWidget(lineDTNHOSTNAME, 13, 1);
  310.73 +
  310.74 +	QLabel *labelDNTTIMER = new QLabel("DTN Timer:");
  310.75 +	readGroup->addWidget(labelDNTTIMER, 14, 0);
  310.76 +	readGroup->addWidget(lineDNTTIMER, 14, 1);
  310.77 +
  310.78 +	QLabel *labelSTORAGESIZE = new QLabel("File Storge size:");
  310.79 +	readGroup->addWidget(labelSTORAGESIZE, 15, 0);
  310.80 +	readGroup->addWidget(lineSTORAGESIZE, 15, 1);
  310.81 +
  310.82 +	QLabel *labelMEMORYSIZE = new QLabel("Memory Storge size:");
  310.83 +	readGroup->addWidget(labelMEMORYSIZE, 16, 0);
  310.84 +	readGroup->addWidget(lineMEMORYSIZE, 16, 1);
  310.85 +
  310.86 +	QLabel *labelROUTING = new QLabel("Routing Type:");
  310.87 +	readGroup->addWidget(labelROUTING, 17, 0);
  310.88 +	readGroup->addWidget(lineROUTING, 17, 1);
  310.89 +
  310.90 +	QLabel *labelQUEUE = new QLabel("Queue Type:");
  310.91 +	readGroup->addWidget(labelQUEUE, 18, 0);
  310.92 +	readGroup->addWidget(lineQUEUE, 18, 1);
  310.93 +
  310.94 +	QLabel *labelCONTINIUSUPDATE = new QLabel("Continius update:");
  310.95 +	readGroup->addWidget(labelCONTINIUSUPDATE, 19, 0);
  310.96 +	readGroup->addWidget(lineCONTINIUSUPDATE, 19, 1);
  310.97 +
  310.98 +	QLabel *labelSTORAGEPATH = new QLabel("Storage Path:");
  310.99 +	readGroup->addWidget(labelSTORAGEPATH, 20, 0);
 310.100 +	readGroup->addWidget(lineSTORAGEPATH, 20, 1);
 310.101 +
 310.102 +	QLabel *labelLOGPATH = new QLabel("Log Path:");
 310.103 +	readGroup->addWidget(labelLOGPATH, 21, 0);
 310.104 +	readGroup->addWidget(lineLOGPATH, 21, 1);
 310.105 +
 310.106 +	QLabel *labelMSGPATH = new QLabel("Messages Path:");
 310.107 +	readGroup->addWidget(labelMSGPATH, 22, 0);
 310.108 +	readGroup->addWidget(lineMSGPATH, 22, 1);
 310.109 +
 310.110 +	QLabel *labelAGEFILENODES = new QLabel("Age Nodes on Startup:");
 310.111 +	readGroup->addWidget(labelAGEFILENODES, 23, 0);
 310.112 +	readGroup->addWidget(lineAGEFILENODES, 23, 1);
 310.113 +
 310.114 +	QLabel *labelUSEFILENODES = new QLabel("Store Nodes To File:");
 310.115 +	readGroup->addWidget(labelUSEFILENODES, 24, 0);
 310.116 +	readGroup->addWidget(lineUSEFILENODES, 24, 1);
 310.117 +
 310.118 +	QLabel *labelWRITETOFILETIMER = new QLabel("File Writing Timer:");
 310.119 +	readGroup->addWidget(labelWRITETOFILETIMER, 25, 0);
 310.120 +	readGroup->addWidget(lineWRITETOFILETIMER, 25, 1);
 310.121 +
 310.122 +	QLabel *labelUSEFILEBUNDLES = new QLabel("Store Bundels To Files:");
 310.123 +	readGroup->addWidget(labelUSEFILEBUNDLES, 26, 0);
 310.124 +	readGroup->addWidget(lineUSEFILEBUNDLES, 26, 1);
 310.125 +
 310.126 +
 310.127 +	QLabel *labelLOGGING = new QLabel("Logging:");
 310.128 +	readGroup->addWidget(labelLOGGING, 27, 0);
 310.129 +	readGroup->addWidget(lineLOGGING, 27, 1);
 310.130 +
 310.131 +	QLabel *labelUSETTL = new QLabel("Use TTL:");
 310.132 +	readGroup->addWidget(labelUSETTL, 28, 0);
 310.133 +	readGroup->addWidget(lineUSETTL, 28, 1);
 310.134 +
 310.135 +	QLabel *labelTTL = new QLabel("TTL:");
 310.136 +	readGroup->addWidget(labelTTL, 29, 0);
 310.137 +	readGroup->addWidget(lineTTL, 29, 1);
 310.138 +
 310.139 +	QLabel *labelACKS = new QLabel("Use ACKs:");
 310.140 +	readGroup->addWidget(labelACKS, 30, 0);
 310.141 +	readGroup->addWidget(lineACKS, 30, 1);
 310.142 +
 310.143 +	//Define final layout
 310.144 +	QWidget *tempWidget = new QWidget();
 310.145 +	tempWidget->setLayout(readGroup);
 310.146 +	QScrollArea *scrollArea = new QScrollArea();
 310.147 +	scrollArea->setWidget(tempWidget);
 310.148 +	scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
 310.149 +	QGridLayout *layout = new QGridLayout();
 310.150 +	layout->setMargin(2);
 310.151 +	layout->setSpacing(2);
 310.152 +	layout->addWidget(scrollArea, 0, 0);
 310.153 +    setLayout(layout);
 310.154 +}
 310.155 +
 310.156 +void ConfigWidget::loadConfiguration()
 310.157 +{
 310.158 +	ReadFile conf;
 310.159 +	lineNODEID = new QLineEdit();
 310.160 +	lineNODEID->setText(QString("%1").arg(conf.getNodeId()));
 310.161 +
 310.162 +	lineNODENAME = new QLineEdit();
 310.163 +	lineNODENAME->setText(conf.getNodeName());
 310.164 +
 310.165 +	lineNODEIP = new QLineEdit();
 310.166 +	lineNODEIP->setText(conf.getNodeIp().toString());
 310.167 +
 310.168 +	lineNODEIP2 = new QLineEdit();
 310.169 +	lineNODEIP2->setText(conf.getNodeIp2().toString());
 310.170 +
 310.171 +	lineNODEBROADCAST = new QLineEdit();
 310.172 +	lineNODEBROADCAST->setText(conf.getBroadcast().toString());
 310.173 +
 310.174 +	lineBROADCAST = new QLineEdit();
 310.175 +	lineBROADCAST->setText(QString("%1").arg(conf.getBroadcastTimer()));
 310.176 +
 310.177 +	lineAGINGTIMER = new QLineEdit();
 310.178 +	lineAGINGTIMER->setText(QString("%1").arg(conf.getAgingTimer()));
 310.179 +
 310.180 +	linePENCOUNTER = new QLineEdit();
 310.181 +	linePENCOUNTER->setText(QString("%1").arg(conf.getPEncounter()));
 310.182 +
 310.183 +	lineBETA = new QLineEdit();
 310.184 +	lineBETA->setText(QString("%1").arg(conf.getBeta()));
 310.185 +
 310.186 +	lineGAMMA = new QLineEdit();
 310.187 +	lineGAMMA->setText(QString("%1").arg(conf.getGamma()));
 310.188 +	
 310.189 +	lineHELLO = new QLineEdit();
 310.190 +	lineHELLO->setText(QString("%1").arg(conf.getHello()));
 310.191 +	
 310.192 +	lineALIVE = new QLineEdit();
 310.193 +	lineALIVE->setText(QString("%1").arg(conf.getAlive()));
 310.194 +	
 310.195 +	lineHELLOTIMER = new QLineEdit();
 310.196 +	lineHELLOTIMER->setText(QString("%1").arg(conf.getHello()));
 310.197 +	
 310.198 +	lineINITIATORTIMER = new QLineEdit();
 310.199 +	lineINITIATORTIMER->setText(QString("%1").arg(conf.getInitiatorTimer()));
 310.200 +	
 310.201 +	lineLISTENERTIMER = new QLineEdit();
 310.202 +	lineLISTENERTIMER->setText(QString("%1").arg(conf.getListenerTimer()));
 310.203 +	
 310.204 +	lineDTNHOSTNAME = new QLineEdit();
 310.205 +	lineDTNHOSTNAME->setText(conf.getDTNHostName().toString());
 310.206 +	
 310.207 +	lineDNTTIMER = new QLineEdit();
 310.208 +	lineDNTTIMER->setText(QString("%1").arg(conf.getDTNTimer()));
 310.209 +
 310.210 +	lineSTORAGESIZE = new QLineEdit();
 310.211 +	lineSTORAGESIZE->setText(QString("%1").arg(conf.getStorageSize()));
 310.212 +
 310.213 +	lineMEMORYSIZE = new QLineEdit();
 310.214 +	lineMEMORYSIZE->setText(QString("%1").arg(conf.getMemoryStorageSize()));
 310.215 +
 310.216 +	lineROUTING = new QLineEdit();
 310.217 +	lineROUTING->setText(QString("%1").arg(conf.getRouting()));
 310.218 +
 310.219 +	lineQUEUE = new QLineEdit();
 310.220 +	lineQUEUE->setText(QString("%1").arg(conf.getQueue()));
 310.221 +
 310.222 +	lineCONTINIUSUPDATE = new QLineEdit();
 310.223 +	lineCONTINIUSUPDATE->setText(QString("%1").arg(conf.getContiniusUpdate()));
 310.224 +
 310.225 +	lineSTORAGEPATH = new QLineEdit();
 310.226 +	lineSTORAGEPATH->setText(QString("%1").arg(conf.getStoragePath()));
 310.227 +
 310.228 +	lineLOGPATH = new QLineEdit();
 310.229 +	lineLOGPATH->setText(QString("%1").arg(conf.getLogPath()));
 310.230 +
 310.231 +	lineMSGPATH = new QLineEdit();
 310.232 +	lineMSGPATH->setText(QString("%1").arg(conf.getMsgPath()));
 310.233 +
 310.234 +	lineAGEFILENODES = new QLineEdit();
 310.235 +	lineAGEFILENODES->setText(QString("%1").arg(conf.getAgeFileNodes()));
 310.236 +
 310.237 +	lineUSEFILENODES = new QLineEdit();
 310.238 +	lineUSEFILENODES->setText(QString("%1").arg(conf.getUseFileNodes()));
 310.239 +
 310.240 +	lineWRITETOFILETIMER = new QLineEdit();
 310.241 +	lineWRITETOFILETIMER->setText(QString("%1").arg(conf.getWriteToFileTimer()));
 310.242 +
 310.243 +	lineUSEFILEBUNDLES = new QLineEdit();
 310.244 +	lineUSEFILEBUNDLES->setText(QString("%1").arg(conf.getUseFileBundles()));
 310.245 +
 310.246 +	lineLOGGING = new QLineEdit();
 310.247 +	lineLOGGING->setText(QString("%1").arg(conf.getLogOption()));
 310.248 +
 310.249 +	
 310.250 +	lineUSETTL = new QLineEdit();
 310.251 +	lineUSETTL->setText(QString("%1").arg(conf.getUseTTL()));
 310.252 +
 310.253 +	lineTTL = new QLineEdit();
 310.254 +	lineTTL->setText(QString("%1").arg(conf.getTTL()));
 310.255 +
 310.256 +	lineACKS = new QLineEdit();
 310.257 +	lineACKS->setText(QString("%1").arg(conf.getUseACKS()));
 310.258 +
 310.259 +}
 310.260 +
   311.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   311.2 +++ b/x86/x86/2.7/configWidget.h	Thu Jun 26 17:39:40 2008 +0100
   311.3 @@ -0,0 +1,94 @@
   311.4 +#ifndef CONFIGWIDGET_H
   311.5 +#define CONFIGWIDGET_H
   311.6 +#include <QtGui>
   311.7 +#include <QtNetwork>
   311.8 +
   311.9 +class ConfigWidget : public QWidget
  311.10 +{
  311.11 +
  311.12 +	Q_OBJECT
  311.13 +
  311.14 +private:
  311.15 +	QLineEdit *label;
  311.16 +	
  311.17 +public:
  311.18 +	QTextBrowser *readText;
  311.19 +	QFileDialog *file;
  311.20 +	ConfigWidget(QWidget *parent = 0);
  311.21 +	QDir dir;
  311.22 +	
  311.23 +	//Configuration variables
  311.24 +	int NODEID;
  311.25 +	QString NODENAME;
  311.26 +	QHostAddress NODEIP;
  311.27 +	QHostAddress NODEIP2;
  311.28 +	QHostAddress NODEBROADCAST;
  311.29 +	int BROADCAST;
  311.30 +	int AGINGTIMER;
  311.31 +	float PENCOUNTER;
  311.32 +	float BETA;
  311.33 +	float GAMMA;
  311.34 +	int HELLO;
  311.35 +	int ALIVE;
  311.36 +	int HELLOTIMER;
  311.37 +	int INITIATORTIMER;
  311.38 +	int LISTENERTIMER;
  311.39 +	QHostAddress DTNHOSTNAME;
  311.40 +	int DNTTIMER;
  311.41 +	int STORAGESIZE;
  311.42 +	int MEMORYSIZE;
  311.43 +	int ROUTING;
  311.44 +	int QUEUE;
  311.45 +	int CONTINIUSUPDATE;
  311.46 +	QString STORAGEPATH;
  311.47 +	QString LOGPATH;
  311.48 +	QString MSGPATH;
  311.49 +	int AGEFILENODES;
  311.50 +	int USEFILENODES;
  311.51 +	int WRITETOFILETIMER;
  311.52 +	int USEFILEBUNDLES;
  311.53 +	int LOGGING;
  311.54 +
  311.55 +
  311.56 +	QLineEdit * lineNODEID;
  311.57 +	QLineEdit * lineNODENAME;
  311.58 +	QLineEdit * lineNODEIP;
  311.59 +	QLineEdit * lineNODEIP2;
  311.60 +	QLineEdit * lineNODEBROADCAST;
  311.61 +	QLineEdit * lineBROADCAST;
  311.62 +	QLineEdit * lineAGINGTIMER;
  311.63 +	QLineEdit * linePENCOUNTER;
  311.64 +	QLineEdit * lineBETA;
  311.65 +	QLineEdit * lineGAMMA;
  311.66 +	QLineEdit * lineHELLO;
  311.67 +	QLineEdit * lineALIVE;
  311.68 +	QLineEdit * lineHELLOTIMER;
  311.69 +	QLineEdit * lineINITIATORTIMER;
  311.70 +	QLineEdit * lineLISTENERTIMER;
  311.71 +	QLineEdit * lineDTNHOSTNAME;
  311.72 +	QLineEdit * lineDNTTIMER;
  311.73 +	QLineEdit * lineSTORAGESIZE;
  311.74 +	QLineEdit * lineMEMORYSIZE;
  311.75 +	QLineEdit * lineROUTING;
  311.76 +	QLineEdit * lineQUEUE;
  311.77 +	QLineEdit * lineCONTINIUSUPDATE;
  311.78 +	QLineEdit * lineSTORAGEPATH;
  311.79 +	QLineEdit * lineLOGPATH;
  311.80 +	QLineEdit * lineMSGPATH;
  311.81 +	QLineEdit * lineAGEFILENODES;
  311.82 +	QLineEdit * lineUSEFILENODES;
  311.83 +	QLineEdit * lineWRITETOFILETIMER;
  311.84 +	QLineEdit * lineUSEFILEBUNDLES;
  311.85 +	QLineEdit * lineLOGGING;
  311.86 +	QLineEdit * lineUSETTL;
  311.87 +	QLineEdit * lineTTL;
  311.88 +	QLineEdit * lineACKS;
  311.89 +
  311.90 +
  311.91 +public slots:
  311.92 +	void loadConfiguration();
  311.93 +};
  311.94 +
  311.95 +#endif
  311.96 +
  311.97 +
   312.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   312.2 +++ b/x86/x86/2.7/connection.cpp	Thu Jun 26 17:39:40 2008 +0100
   312.3 @@ -0,0 +1,709 @@
   312.4 +#include <QtCore>
   312.5 +#include <connection.h>
   312.6 +#include <tlv.h>
   312.7 +#include <messageFile.h>
   312.8 +#include <dataPacket.h>
   312.9 +#include <readFile.h>
  312.10 +
  312.11 +#define NOW 100
  312.12 +
  312.13 +//#define HELLO_TIMER 60000
  312.14 +//#define INITIATOR_TIMER 60000
  312.15 +//#define LISTENER_TIMER 60000
  312.16 +//#define HELLOT 10000
  312.17 +//#define BROADCAST 1000
  312.18 +
  312.19 +//Connections states for GUI
  312.20 +#define STATE_SYN 1
  312.21 +#define STATE_SYNACK 2
  312.22 +#define STATE_ACK 3
  312.23 +#define STATE_DICT 4
  312.24 +#define STATE_RIB 5
  312.25 +#define STATE_BOFF 6
  312.26 +#define STATE_BREQ 7
  312.27 +#define STATE_BUNDLE 8
  312.28 +#define STATE_ERROR 9
  312.29 +
  312.30 +//Connection states
  312.31 +#define WAIT_NB 0
  312.32 +#define HELLO 1
  312.33 +#define INFO_EXCH 2
  312.34 +#define WAIT_INFO 2
  312.35 +
  312.36 +
  312.37 +//Hello procedure states
  312.38 +#define SENDSYN 1
  312.39 +#define WAITSYNACK 2
  312.40 +#define WAITACK 4
  312.41 +#define ESTABLISHED 3
  312.42 +#define MASTER 4
  312.43 +#define SLAVE 5
  312.44 +
  312.45 +//Initiator states
  312.46 +#define SENDDICTIONARY 1
  312.47 +#define SENDRIB 2
  312.48 +#define SENDBOFFER 4
  312.49 +#define WAITBREQ 5
  312.50 +#define TIMEOUT 16
  312.51 +#define SENDBUNDLE 7
  312.52 +#define WAITFORBREQUEST 8
  312.53 +#define RESETLINK 19
  312.54 +#define IDLESTATE 110
  312.55 +
  312.56 +//Listener states
  312.57 +#define WAITFORDICTIONARY 1
  312.58 +#define WAITFORRIB 2
  312.59 +#define WAITFORBOFFER 3
  312.60 +#define SENDBREQUEST 4
  312.61 +#define WAITFORBUNDLES 5
  312.62 +
  312.63 +
  312.64 +
  312.65 +Connection::Connection(int connectId,int nodeId,QString nodeName,NodeManager* nodeManager,BundleManager* bundleManager,QObject *parent)
  312.66 +
  312.67 +{
  312.68 +	ReadFile init;
  312.69 +	HELLO_TIMER=init.getHelloTimer();
  312.70 +	INITIATOR_TIMER=init.getInitiatorTimer();
  312.71 +	LISTENER_TIMER=init.getListenerTimer();
  312.72 +	HELLOT=init.getHello();
  312.73 +	BROADCAST=init.getBroadcastTimer();
  312.74 +	continiusUpdate=init.getContiniusUpdate();
  312.75 +	update=0;
  312.76 +	updateRIB=0;
  312.77 +	encounterNodeId=0;
  312.78 +	//State variables
  312.79 +	connectionState=HELLO;
  312.80 +	helloState=SENDSYN;
  312.81 +	initiatorState=IDLESTATE;
  312.82 +	listenerState=IDLESTATE;
  312.83 +	//Define our node manager
  312.84 +	connectionNodeManager=nodeManager;
  312.85 +	//Define our bundle manager
  312.86 +	connectionBundleManager=bundleManager;
  312.87 +	//Set up unique connection ID
  312.88 +//	connectionId=rand();
  312.89 +//	connectionId=connectionId%1000;
  312.90 +	connectionId=connectId;
  312.91 +	//Set up connectionNodeName
  312.92 +	connectionNodeName=nodeName;
  312.93 +	//Set up connectionNodeName
  312.94 +	connectionNodeId=nodeId;
  312.95 +	//Create and connect Hello Timer
  312.96 +    helloTimer = new QTimer(this);
  312.97 +    connect(helloTimer, SIGNAL(timeout()), this, SLOT(helloProcedure()));
  312.98 +    helloTimer->start(rand()%HELLO);
  312.99 +
 312.100 +	//Create and connect Initiator Timer
 312.101 +    initiatorTimer = new QTimer(this);
 312.102 +    connect(initiatorTimer, SIGNAL(timeout()), this, SLOT(initiatorProcedure()));
 312.103 +    //initiatorTimer->start(INITIATOR_TIMER);
 312.104 +
 312.105 +	//Create and connect Listener Timer
 312.106 +    listenerTimer = new QTimer(this);
 312.107 +    connect(listenerTimer, SIGNAL(timeout()), this, SLOT(listenerProcedure()));
 312.108 +    //listenerTimer->start(LISTENER_TIMER);
 312.109 +
 312.110 +
 312.111 +
 312.112 +
 312.113 +	//Create and connect TLV translator
 312.114 +	TLVTranslator = new TLV;
 312.115 +
 312.116 +	//Main external datastreams
 312.117 +	connect(TLVTranslator,SIGNAL(sendDatagram(QByteArray)),this,SLOT(forwardSlotDatagram(QByteArray)));
 312.118 +	connect(this,SIGNAL(forwardSignalDatagram(QByteArray)),TLVTranslator,SLOT(receiveDatagram(QByteArray)));
 312.119 +
 312.120 +	//Hello procedure connections
 312.121 +    connect(this, SIGNAL(sendHello(Hello)),TLVTranslator,SLOT(receiveHello(Hello)));
 312.122 +    connect(TLVTranslator, SIGNAL(sendHello(Hello)),this,SLOT(receiveHello(Hello)));
 312.123 +
 312.124 +	//Initiators procedure connections
 312.125 +    connect(this, SIGNAL(sendDictionary(QList<Node>)),TLVTranslator,SLOT(createDictionary(QList<Node>)));
 312.126 +    connect(this, SIGNAL(sendRIB(QList<Node>)),TLVTranslator,SLOT(createRIB(QList<Node>)));
 312.127 +    connect(this, SIGNAL(sendBundleOffer(QList<Bundle>)),TLVTranslator,SLOT(createBundleOffer(QList<Bundle>)));
 312.128 +    connect(TLVTranslator, SIGNAL(sendBundleRequest(QList<Bundle>)),this,SLOT(receiveBundleRequest(QList<Bundle>)));
 312.129 +	connect(this, SIGNAL(sendBundles(QList<Bundle>)),TLVTranslator,SLOT(createBundleData(QList<Bundle>)));
 312.130 +
 312.131 +
 312.132 +	//Listener procedure connections
 312.133 +    connect(TLVTranslator, SIGNAL(sendDictionary(QList<Node>)),this,SLOT(receiveDictionary(QList<Node>)));
 312.134 +    connect(TLVTranslator, SIGNAL(sendRIB(QList<Node>)),this,SLOT(receiveRIB(QList<Node>)));
 312.135 +    connect(TLVTranslator, SIGNAL(sendBundleOffer(QList<Bundle>)),this,SLOT(receiveBundleOffer(QList<Bundle>)));
 312.136 +    connect(this, SIGNAL(sendBundleRequest(QList<Bundle>)),TLVTranslator,SLOT(createBundleRequest(QList<Bundle>)));
 312.137 +    connect(TLVTranslator, SIGNAL(sendBundleData(QList<Bundle>)),this,SLOT(receiveBundles(QList<Bundle>)));
 312.138 +	//GUI state
 312.139 +	emit newConnectionStatus(STATE_SYN);
 312.140 +
 312.141 +}
 312.142 +
 312.143 +
 312.144 +Connection::~Connection(void)
 312.145 +{
 312.146 +	if(helloTimer!=NULL)
 312.147 +	{
 312.148 +		helloTimer->stop();
 312.149 +		delete helloTimer;
 312.150 +	}
 312.151 +		if(initiatorTimer!=NULL)
 312.152 +	{
 312.153 +		initiatorTimer->stop();
 312.154 +		delete initiatorTimer;
 312.155 +	}
 312.156 +			if(listenerTimer!=NULL)
 312.157 +	{
 312.158 +		listenerTimer->stop();
 312.159 +		delete listenerTimer;
 312.160 +	}	
 312.161 +	if(TLVTranslator!=NULL)
 312.162 +	{
 312.163 +		delete TLVTranslator; 
 312.164 +	} 
 312.165 +
 312.166 +}
 312.167 +
 312.168 +
 312.169 +void Connection::helloProcedure()
 312.170 +{
 312.171 +	helloTimer->stop();
 312.172 +	//Prepare new Hello Object
 312.173 +	Hello newHello;
 312.174 +	switch(helloState)
 312.175 +	{
 312.176 +		case SENDSYN:	//log->addLog(connectionId,(QString)"Hello Procedure:SENDSYN");
 312.177 +						newHello.setFunction(SYN);
 312.178 +						newHello.setTimer(HELLO_TIMER);
 312.179 +						newHello.setSenderName(connectionNodeName);
 312.180 +						newHello.senderId=connectionNodeId;
 312.181 +						newHello.senderType=0;
 312.182 +						helloState=WAITSYNACK;
 312.183 +						emit sendHello(newHello);
 312.184 +						//GUI state
 312.185 +						emit newConnectionStatus(STATE_SYNACK);
 312.186 +			
 312.187 +		break;			
 312.188 +		default	:		//log->addLog(connectionId,(QString)"Hello Procedure:Default");
 312.189 +						helloState=SENDSYN;
 312.190 +						connectionState=HELLO;
 312.191 +						initiatorState=IDLESTATE;
 312.192 +						listenerState=IDLESTATE;
 312.193 +						listenerTimer->stop();
 312.194 +						initiatorTimer->stop();	
 312.195 +						//GUI state
 312.196 +						emit newConnectionStatus(STATE_ERROR);
 312.197 +	
 312.198 +		break;
 312.199 +		}	
 312.200 +		helloTimer->start(HELLO_TIMER);
 312.201 +}
 312.202 +
 312.203 +
 312.204 +
 312.205 +void Connection::receiveHello(Hello receivedHello)
 312.206 +{
 312.207 +	int helloType=receivedHello.getFunction();
 312.208 +	helloTimer->stop();
 312.209 +	
 312.210 +	//Prepare new Hello object
 312.211 +	Hello newHello;
 312.212 +	
 312.213 +	switch(helloType)
 312.214 +	{
 312.215 +	case SYNACK:	//log->addLog(connectionId,(QString)"Receive Hello:SYNACK");
 312.216 +					//Resolving a ID form encountered node
 312.217 +					encounterNodeId=receivedHello.senderId;
 312.218 +					encounterNodeName=receivedHello.senderName;
 312.219 +					encounterNodeType=receivedHello.senderType;
 312.220 +					if(update==0)
 312.221 +					{
 312.222 +						connectionNodeManager->encounterNode(encounterNodeId,encounterNodeType,encounterNodeName);
 312.223 +						if(continiusUpdate==0)
 312.224 +							update=1;
 312.225 +					}
 312.226 +
 312.227 +					//Setting our own ID
 312.228 +					newHello.setFunction(ACK);
 312.229 +					newHello.setTimer(HELLO_TIMER);
 312.230 +					newHello.setSenderName(connectionNodeName);
 312.231 +					newHello.senderId=connectionNodeId;
 312.232 +					newHello.senderType=0;
 312.233 +					emit sendHello(newHello);
 312.234 +					helloState=SLAVE;
 312.235 +					//Invoke Initiator and Listener
 312.236 +					helloTimer->stop();
 312.237 +					initiatorState=SENDDICTIONARY;
 312.238 +					listenerState=WAITFORDICTIONARY;
 312.239 +					initiatorTimer->start(NOW);
 312.240 +					listenerTimer->start(LISTENER_TIMER);
 312.241 +					///initiatorProcedure();
 312.242 +					//////////////////////////////
 312.243 +					//GUI state
 312.244 +					emit newConnectionStatus(STATE_DICT);
 312.245 +					
 312.246 +	break;
 312.247 +	case SYN:		//log->addLog(connectionId,(QString)"Receive Hello:SYN");
 312.248 +					newHello.setFunction(SYNACK);
 312.249 +					newHello.setTimer(HELLO_TIMER);
 312.250 +					newHello.setSenderName(connectionNodeName);
 312.251 +					newHello.senderId=connectionNodeId;
 312.252 +					newHello.senderType=0;
 312.253 +					helloState=WAITACK;helloTimer->start(HELLO_TIMER);
 312.254 +					emit sendHello(newHello);
 312.255 +					//GUI state
 312.256 +					emit newConnectionStatus(STATE_SYNACK);
 312.257 +
 312.258 +	break;
 312.259 +	case ACK:		//log->addLog(connectionId,(QString)"Receive Hello:ACK");
 312.260 +					//Resolving a ID form encountered node
 312.261 +					encounterNodeId=receivedHello.senderId;
 312.262 +					encounterNodeName=receivedHello.senderName;
 312.263 +					encounterNodeType=receivedHello.senderType;
 312.264 +					if(update==0)
 312.265 +					{
 312.266 +						connectionNodeManager->encounterNode(encounterNodeId,encounterNodeType,encounterNodeName);
 312.267 +						if(continiusUpdate==0)
 312.268 +							update=1;
 312.269 +					}
 312.270 +					helloState=MASTER;
 312.271 +					//Invoke Initiator and Listener
 312.272 +					helloTimer->stop();
 312.273 +					initiatorState=SENDDICTIONARY;
 312.274 +					listenerState=WAITFORDICTIONARY;
 312.275 +					initiatorTimer->start(NOW);
 312.276 +					listenerTimer->start(LISTENER_TIMER);
 312.277 +					//GUI state
 312.278 +					emit newConnectionStatus(STATE_DICT);
 312.279 +	break;
 312.280 +	case RSTACK:	//log->addLog(connectionId,(QString)"Receive Hello:RSTACK");
 312.281 +					helloState=SENDSYN;
 312.282 +					//GUI state
 312.283 +					emit newConnectionStatus(STATE_ERROR);
 312.284 +					connectionState=HELLO;helloTimer->start(HELLO_TIMER);
 312.285 +	break;
 312.286 +	default:		//log->addLog(connectionId,(QString)"Receive Hello:Default");
 312.287 +					helloState=SENDSYN;
 312.288 +					connectionState=HELLO;helloTimer->start(HELLO_TIMER);
 312.289 +					//GUI state
 312.290 +					emit newConnectionStatus(STATE_ERROR);
 312.291 +	break;
 312.292 +	}
 312.293 +	
 312.294 +
 312.295 +}
 312.296 +
 312.297 +void Connection::listenerProcedure()
 312.298 +{
 312.299 +	listenerTimer->stop();
 312.300 +	switch(initiatorState)
 312.301 +		{
 312.302 +		case WAITFORDICTIONARY://log->addLog(connectionId,(QString)"Listener:DICTIONARY timeout...");
 312.303 +							//we reset the link
 312.304 +							initiatorState=IDLESTATE;
 312.305 +							listenerState=IDLESTATE;
 312.306 +							connectionState=HELLO;
 312.307 +							helloState=SENDSYN;
 312.308 +							listenerTimer->stop();
 312.309 +							initiatorTimer->stop();
 312.310 +							helloTimer->start(HELLO_TIMER);
 312.311 +							//GUI state
 312.312 +							emit newConnectionStatus(STATE_ERROR);
 312.313 +
 312.314 +							
 312.315 +			
 312.316 +		break;			
 312.317 +		case WAITFORRIB:	//log->addLog(connectionId,(QString)"Listener:RIB timeout...");
 312.318 +							//we reset the link
 312.319 +							initiatorState=IDLESTATE;
 312.320 +							listenerState=IDLESTATE;
 312.321 +							connectionState=HELLO;
 312.322 +							helloState=SENDSYN;
 312.323 +							listenerTimer->stop();
 312.324 +							initiatorTimer->stop();
 312.325 +							helloTimer->start(HELLO_TIMER);
 312.326 +							//GUI state
 312.327 +							emit newConnectionStatus(STATE_ERROR);
 312.328 +			
 312.329 +		break;
 312.330 +		case WAITFORBOFFER:	//log->addLog(connectionId,(QString)"Listener:BOFFER timeout...");
 312.331 +							//we reset the link
 312.332 +							initiatorState=IDLESTATE;
 312.333 +							listenerState=IDLESTATE;
 312.334 +							connectionState=HELLO;
 312.335 +							helloState=SENDSYN;
 312.336 +							listenerTimer->stop();
 312.337 +							initiatorTimer->stop();
 312.338 +							helloTimer->start(HELLO_TIMER);
 312.339 +							//GUI state
 312.340 +							emit newConnectionStatus(STATE_ERROR);
 312.341 +
 312.342 +			
 312.343 +		break;
 312.344 +		case WAITFORBREQUEST://log->addLog(connectionId,(QString)"Listener:BREQ Timeout...");
 312.345 +							//we reset the link
 312.346 +							initiatorState=IDLESTATE;
 312.347 +							listenerState=IDLESTATE;
 312.348 +							connectionState=HELLO;
 312.349 +							helloState=SENDSYN;
 312.350 +							listenerTimer->stop();
 312.351 +							initiatorTimer->stop();
 312.352 +							helloTimer->start(HELLO_TIMER);
 312.353 +							//GUI state
 312.354 +							emit newConnectionStatus(STATE_ERROR);
 312.355 +
 312.356 +			
 312.357 +		break;
 312.358 +		case WAITFORBUNDLES://log->addLog(connectionId,(QString)"Listener:BUNDLES Timeout...");
 312.359 +							//we reset the link
 312.360 +							initiatorState=IDLESTATE;
 312.361 +							listenerState=IDLESTATE;
 312.362 +							connectionState=HELLO;
 312.363 +							helloState=SENDSYN;
 312.364 +							listenerTimer->stop();
 312.365 +							initiatorTimer->stop();
 312.366 +							helloTimer->start(HELLO_TIMER);
 312.367 +							listenerState=RESETLINK;
 312.368 +							//GUI state
 312.369 +							emit newConnectionStatus(STATE_ERROR);
 312.370 +
 312.371 +			
 312.372 +		break;
 312.373 +		case IDLESTATE:		//log->addLog(connectionId,(QString)"Listener:Idle state...");
 312.374 +							//we reset the link
 312.375 +							initiatorState=IDLESTATE;
 312.376 +							listenerState=IDLESTATE;
 312.377 +							connectionState=HELLO;
 312.378 +							helloState=SENDSYN;
 312.379 +							listenerTimer->stop();
 312.380 +							initiatorTimer->stop();
 312.381 +							helloTimer->start(HELLO_TIMER);
 312.382 +							//GUI state
 312.383 +							emit newConnectionStatus(STATE_ERROR);
 312.384 +														
 312.385 +							
 312.386 +		break;
 312.387 +		case RESETLINK:		//log->addLog(connectionId,(QString)"Listener:Link problem...");
 312.388 +							//we reset the link
 312.389 +							initiatorState=IDLESTATE;
 312.390 +							listenerState=IDLESTATE;
 312.391 +							connectionState=HELLO;
 312.392 +							helloState=SENDSYN;
 312.393 +							listenerTimer->stop();
 312.394 +							initiatorTimer->stop();
 312.395 +							helloTimer->start(HELLO_TIMER);
 312.396 +							//GUI state
 312.397 +							emit newConnectionStatus(STATE_ERROR);
 312.398 +			
 312.399 +		break;
 312.400 +		default	://log->addLog(connectionId,(QString)"Hm Listener Timeout default...");		
 312.401 +		break;
 312.402 +		}	
 312.403 +}
 312.404 +
 312.405 +
 312.406 +void Connection::initiatorProcedure()
 312.407 +{
 312.408 +	initiatorTimer->stop();
 312.409 +	QList<Node> nodeList;
 312.410 +	QList<Bundle> bundleList;
 312.411 +	switch(initiatorState)
 312.412 +		{
 312.413 +		case SENDDICTIONARY://log->addLog(connectionId,(QString)"Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER");
 312.414 +							nodeList = connectionNodeManager->getNodeList();
 312.415 +							initiatorState=SENDRIB;
 312.416 +							emit sendDictionary(nodeList);
 312.417 +							nodeList = connectionNodeManager->getRIBNodeList();//We have to use only nodes with RIB
 312.418 +							initiatorState=SENDBOFFER;
 312.419 +							emit sendRIB(nodeList);
 312.420 +							bundleList = connectionBundleManager->getBundleOffer(connectionNodeManager->getNodeList(),lastReceivedRIB,encounterNodeId);
 312.421 +							emit sendBundleOffer(bundleList);
 312.422 +							initiatorState=WAITBREQ;
 312.423 +							initiatorTimer->start(INITIATOR_TIMER);
 312.424 +							//GUI state
 312.425 +							emit newConnectionStatus(STATE_BREQ);
 312.426 +		
 312.427 +		break;
 312.428 +		case WAITFORBREQUEST://log->addLog(connectionId,(QString)"Initiator:BREQ Timeout");
 312.429 +							//we reset the link
 312.430 +							initiatorState=IDLESTATE;
 312.431 +							listenerState=IDLESTATE;
 312.432 +							connectionState=HELLO;
 312.433 +							helloState=SENDSYN;
 312.434 +							listenerTimer->stop();
 312.435 +							initiatorTimer->stop();
 312.436 +							helloTimer->start(HELLO_TIMER);
 312.437 +							//GUI state
 312.438 +							emit newConnectionStatus(STATE_ERROR);
 312.439 +			
 312.440 +		break;
 312.441 +		case IDLESTATE:		//log->addLog(connectionId,(QString)"Initiator:Idle state...");
 312.442 +							//we reset the link
 312.443 +							initiatorState=IDLESTATE;
 312.444 +							listenerState=IDLESTATE;
 312.445 +							connectionState=HELLO;
 312.446 +							helloState=SENDSYN;
 312.447 +							listenerTimer->stop();
 312.448 +							initiatorTimer->stop();
 312.449 +							helloTimer->start(HELLO_TIMER);
 312.450 +							//GUI state
 312.451 +							emit newConnectionStatus(STATE_ERROR);
 312.452 +
 312.453 +			
 312.454 +		break;
 312.455 +		case RESETLINK:		//log->addLog(connectionId,(QString)"Initiator:Link problem...");
 312.456 +							//we reset the link
 312.457 +							initiatorState=IDLESTATE;
 312.458 +							listenerState=IDLESTATE;
 312.459 +							connectionState=HELLO;
 312.460 +							helloState=SENDSYN;
 312.461 +							listenerTimer->stop();
 312.462 +							initiatorTimer->stop();
 312.463 +							helloTimer->start(HELLO_TIMER);
 312.464 +							//GUI state
 312.465 +							emit newConnectionStatus(STATE_ERROR);
 312.466 +			
 312.467 +		break;
 312.468 +		default	://log->addLog(connectionId,(QString)"Hm default timeout initiator...");		
 312.469 +		break;
 312.470 +		}	
 312.471 + }
 312.472 +
 312.473 +
 312.474 +void Connection::receiveBundleOffer(QList<Bundle> receivedList) //LISTENER
 312.475 +{
 312.476 +	listenerTimer->stop();
 312.477 +	bundleRequestList=connectionBundleManager->prepareBundelRequest(receivedList);
 312.478 +	//log->addLog(connectionId,(QString)"Listener:Received Bundle Offer");
 312.479 +//	we send only one bundle request
 312.480 +	if(bundleRequestList.size()>0)
 312.481 +	{
 312.482 +		//log->addLog(connectionId,(QString)"Listener:Sending Full bundle request...");
 312.483 +		QList<Bundle> dummyList;
 312.484 +		dummyList.append(bundleRequestList.first());
 312.485 +		bundleRequestList.removeFirst();
 312.486 +		listenerState=WAITFORBUNDLES;
 312.487 +		listenerTimer->start(LISTENER_TIMER);
 312.488 +		emit sendBundleRequest(dummyList);
 312.489 +		//GUI state
 312.490 +		emit newConnectionStatus(STATE_BUNDLE);
 312.491 +
 312.492 +	}
 312.493 +	else 
 312.494 +	{
 312.495 +		//log->addLog(connectionId,(QString)"Listener:Sending Empty bundle request...");
 312.496 +		if(initiatorState==IDLESTATE)
 312.497 +		{	
 312.498 +			//we reset the link
 312.499 +			initiatorState=IDLESTATE;
 312.500 +			listenerState=IDLESTATE;
 312.501 +			listenerTimer->stop();
 312.502 +			initiatorTimer->stop();
 312.503 +
 312.504 +			if(helloState==MASTER)
 312.505 +			{
 312.506 +				helloState=SENDSYN;
 312.507 +				helloTimer->start(NOW);
 312.508 +				//log->addLog(connectionId,(QString)"Listener(receiveBOffer):We can restart connection...(MASTER)");
 312.509 +				//GUI state
 312.510 +				emit newConnectionStatus(STATE_SYN);
 312.511 +
 312.512 +			}
 312.513 +			else
 312.514 +			{
 312.515 +				helloState=SENDSYN;
 312.516 +				helloTimer->start(HELLO_TIMER);
 312.517 +				//GUI state
 312.518 +				emit newConnectionStatus(STATE_SYN);
 312.519 +
 312.520 +				//log->addLog(connectionId,(QString)"Listener(receiveBOffer):We can not restart connection(SLAVE)");
 312.521 +
 312.522 +			}
 312.523 +		}
 312.524 +		else
 312.525 +		{
 312.526 +			//log->addLog(connectionId,(QString)"Listener(receiveBOffer):But we can not restart connection...");
 312.527 +			listenerState=IDLESTATE;
 312.528 +			listenerTimer->stop();
 312.529 +		}
 312.530 +		emit sendBundleRequest(bundleRequestList);
 312.531 +		
 312.532 +	}
 312.533 +
 312.534 +}
 312.535 +
 312.536 +void Connection::receiveBundles(QList<Bundle> receivedList) //LISTENER
 312.537 +{
 312.538 +	//log->addLog(connectionId,(QString)"Listener:Received Bundles...");
 312.539 +	listenerTimer->stop();
 312.540 +	connectionBundleManager->addBundleList(receivedList);
 312.541 +//	we send only one bundle request
 312.542 +	if(bundleRequestList.size()>0)
 312.543 +	{
 312.544 +		//log->addLog(connectionId,(QString)"Listener:Requesting Bundles...");
 312.545 +		QList<Bundle> dummyList;
 312.546 +		for(int i=0; i<receivedList.size(); i++)
 312.547 +		{
 312.548 +			Bundle b = receivedList.at(i);
 312.549 +			b.setAck();
 312.550 +			//should we reset the ack-bit afterwards?
 312.551 +			dummyList.prepend(b);
 312.552 +			//do some logging here
 312.553 +		}
 312.554 +		dummyList.append(bundleRequestList.first());
 312.555 +		bundleRequestList.removeFirst();
 312.556 +		listenerState=WAITFORBUNDLES;
 312.557 +		listenerTimer->start(LISTENER_TIMER);
 312.558 +		emit sendBundleRequest(dummyList);
 312.559 +		//GUI state
 312.560 +		emit newConnectionStatus(STATE_BUNDLE);
 312.561 +
 312.562 +	}
 312.563 +	else //we finish comunication by sending empty bundle request
 312.564 +	{
 312.565 +		//log->addLog(connectionId,(QString)"Listener:No more needed Bundles...");
 312.566 +		if(initiatorState==IDLESTATE)
 312.567 +		{	
 312.568 +			//we reset the link
 312.569 +			initiatorState=IDLESTATE;
 312.570 +			listenerState=IDLESTATE;
 312.571 +			listenerTimer->stop();
 312.572 +			initiatorTimer->stop();
 312.573 +
 312.574 +			if(helloState==MASTER)
 312.575 +			{
 312.576 +				helloState=SENDSYN;
 312.577 +				helloTimer->start(HELLOT);
 312.578 +				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can restart connection...(MASTER)");
 312.579 +				//GUI state
 312.580 +				emit newConnectionStatus(STATE_SYN);
 312.581 +
 312.582 +			}
 312.583 +			else
 312.584 +			{
 312.585 +				//helloState=SENDSYN;
 312.586 +				//helloTimer->start(HELLO_TIMER);
 312.587 +				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can not restart connection(SLAVE)");
 312.588 +
 312.589 +			}
 312.590 +		}
 312.591 +		else
 312.592 +		{
 312.593 +			//log->addLog(connectionId,(QString)"Listener(receiveBundles):But we can not restart connection...");
 312.594 +			listenerState=IDLESTATE;
 312.595 +			listenerTimer->stop();
 312.596 +		
 312.597 +		}
 312.598 +		//append the received bundles (as acks) to the next request.
 312.599 +		//TODO: Should this be moved to the bundle manager???
 312.600 +		for(int i=0; i<receivedList.size(); i++)
 312.601 +		{
 312.602 +			Bundle b = receivedList.at(i);
 312.603 +			b.setAck();
 312.604 +			//should we reset the ack-bit afterwards?
 312.605 +			bundleRequestList.prepend(b);
 312.606 +			//do some logging here
 312.607 +		}
 312.608 +		emit sendBundleRequest(bundleRequestList);
 312.609 +		
 312.610 +	}
 312.611 +		
 312.612 +}
 312.613 +
 312.614 +void Connection::receiveBundleRequest(QList<Bundle> receivedList) //INITIATOR
 312.615 +{
 312.616 +	initiatorTimer->stop();
 312.617 +	QList<Bundle> bundleList;
 312.618 +	if(receivedList.size()>0)
 312.619 +	{
 312.620 +		bundleList=connectionBundleManager->prepareBundels(receivedList, encounterNodeId);
 312.621 +		initiatorState=WAITBREQ;
 312.622 +		//log->addLog(connectionId,(QString)"Initiator:Sending bundles");
 312.623 +		initiatorTimer->start(INITIATOR_TIMER);
 312.624 +		emit sendBundles(bundleList);
 312.625 +		//GUI state
 312.626 +		emit newConnectionStatus(STATE_BREQ);
 312.627 +
 312.628 +	}
 312.629 +	else
 312.630 +	{
 312.631 +		//log->addLog(connectionId,(QString)"Initiator:No more requested bundles");
 312.632 +		if(listenerState==IDLESTATE)
 312.633 +		{	
 312.634 +			//we reset the link
 312.635 +			if(helloState==MASTER)
 312.636 +			{
 312.637 +				helloState=SENDSYN;
 312.638 +				helloTimer->start(HELLOT);
 312.639 +				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can restart connection...");
 312.640 +				//GUI state
 312.641 +				emit newConnectionStatus(STATE_SYN);
 312.642 +
 312.643 +			}
 312.644 +			else
 312.645 +			{
 312.646 +				helloState=SENDSYN;
 312.647 +				helloTimer->start(HELLO_TIMER);
 312.648 +				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can not restart connection(SLAVE)");
 312.649 +				//GUI state
 312.650 +				emit newConnectionStatus(STATE_SYN);
 312.651 +
 312.652 +			}
 312.653 +		}
 312.654 +		else
 312.655 +		{
 312.656 +			//log->addLog(connectionId,(QString)"Initiator:But we can not restart connection...");
 312.657 +			initiatorState=IDLESTATE;
 312.658 +			initiatorTimer->stop();
 312.659 +		}
 312.660 +	}
 312.661 +	
 312.662 +}
 312.663 +
 312.664 +
 312.665 +void Connection::receiveDictionary(QList<Node> receivedList)
 312.666 +{
 312.667 +	listenerTimer->stop();
 312.668 +	connectionNodeManager->addDictionary(connectionNodeId,receivedList);
 312.669 +	listenerState=WAITFORRIB;
 312.670 +	//log->addLog(connectionId,(QString)"Listener:Received dictionary");
 312.671 +	listenerTimer->start(LISTENER_TIMER);
 312.672 +	//GUI state
 312.673 +	emit newConnectionStatus(STATE_RIB);
 312.674 +
 312.675 +}
 312.676 +
 312.677 +void Connection::receiveRIB(QList<Node> receivedList)
 312.678 +{
 312.679 +	listenerTimer->stop();
 312.680 +	if(updateRIB==0)
 312.681 +	{		
 312.682 +		connectionNodeManager->addRIB(receivedList,encounterNodeId);
 312.683 +		if(continiusUpdate==0)
 312.684 +			updateRIB=1;
 312.685 +	}		
 312.686 +	listenerState=WAITFORBOFFER;
 312.687 +	//Needed for Routing
 312.688 +	lastReceivedRIB=receivedList;
 312.689 +	//log->addLog(connectionId,(QString)"Listener:Received RIB");
 312.690 +	listenerTimer->start(LISTENER_TIMER);
 312.691 +	//GUI state
 312.692 +	emit newConnectionStatus(STATE_BOFF);
 312.693 +
 312.694 +}
 312.695 +
 312.696 +
 312.697 +
 312.698 +void Connection::receiveDatagram(DataPacket dataPacket)
 312.699 +{
 312.700 +	////log->addLog(connectionId,(QString)"Received datagram...");
 312.701 +	emit forwardSignalDatagram(dataPacket.data);
 312.702 +}
 312.703 +
 312.704 +
 312.705 +void Connection::forwardSlotDatagram(QByteArray datagram)
 312.706 +{
 312.707 +	DataPacket dataPacket;
 312.708 +	////log->addLog(connectionId,(QString)"Sended datagram...");
 312.709 +	dataPacket.data = datagram;
 312.710 +	dataPacket.id = connectionId;
 312.711 +	emit sendDataPacket(dataPacket);
 312.712 +}
   313.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   313.2 +++ b/x86/x86/2.7/connection.h	Thu Jun 26 17:39:40 2008 +0100
   313.3 @@ -0,0 +1,228 @@
   313.4 +#ifndef CONNECTION_H
   313.5 +#define CONNECTION_H
   313.6 +#include <QtCore>
   313.7 +#include <hello.h>
   313.8 +#include <tlv.h>
   313.9 +#include <nodeManager.h>
  313.10 +#include <bundleManager.h>
  313.11 +#include <dataPacket.h>
  313.12 +
  313.13 +
  313.14 +/*! \brief This class is instantiated for each connection between two nodes. 
  313.15 + * It contains the PRoPHET state machine.
  313.16 + *
  313.17 + * <PRE>
  313.18 + * Connection states
  313.19 + * WAIT_NB   - Start state, node waiting for a neighbour to connect to.
  313.20 + * HELLO     - Performs a three-way handshake to set up the connection. Also 
  313.21 + *             assigns a MASTER and a SLAVE for the communication.
  313.22 + * INFO_EXCH - Entered once the Hello procedure has set up the link. In this 
  313.23 + *             state routing information and bundles are exchanged.
  313.24 + * WAIT_INFO - Entered once the INFO_EXCH is completed. Nodes remain in this 
  313.25 + *             state until a timer expires or they are notified that the 
  313.26 + *             neighbor is out of range. WAIT_NB is then entered.
  313.27 + *
  313.28 + * Hello procedure states
  313.29 + * SENDSYN     - Initiation of the Hello procedure. First part of the 
  313.30 + *                three-way handshake.
  313.31 + * WAITSYNACK  - Second part of the three-way handshake.
  313.32 + * WAITACK     - Last part of the three-way handshake.
  313.33 + * ESTABLISHED
  313.34 + * MASTER      - One node is assigned to be MASTER, this node will enter the 
  313.35 + *                initiator states.
  313.36 + * SLAVE       - The other node will be assigned SLAVE, and will enter the 
  313.37 + *                listener states.
  313.38 + * 
  313.39 + * Initiator states (MASTER)
  313.40 + * SENDDICTIONARY
  313.41 + * SENDRIB
  313.42 + * SENDBOFFER
  313.43 + * WAITBREQ
  313.44 + * TIMEOUT
  313.45 + * SENDBUNDLE
  313.46 + * WAITFORBREQUEST
  313.47 + * RESETLINK
  313.48 + * IDLESTATE
  313.49 + * 
  313.50 + * Listener states (SLAVE)
  313.51 + * WAITFORDICTIONARY
  313.52 + * WAITFORRIB
  313.53 + * WAITFORBOFFER
  313.54 + * SENDBREQUEST
  313.55 + * WAITFORBUNDLES
  313.56 + * </PRE>
  313.57 + */
  313.58 +class Connection: public QObject
  313.59 +{
  313.60 +	Q_OBJECT 
  313.61 +	public:
  313.62 +		Connection(int,int ,QString ,NodeManager* ,BundleManager* ,QObject *parent = 0);
  313.63 +		~Connection(void);
  313.64 +
  313.65 +	private:
  313.66 +		int HELLO_TIMER;
  313.67 +		int INITIATOR_TIMER;
  313.68 +		int LISTENER_TIMER;
  313.69 +		int HELLOT;
  313.70 +		int BROADCAST;
  313.71 +		bool update;
  313.72 +		bool updateRIB;
  313.73 +		int continiusUpdate;
  313.74 +
  313.75 +		int connectionState;
  313.76 +		int helloState;
  313.77 +		int initiatorState;
  313.78 +		int listenerState;
  313.79 +		int encounterNodeId;
  313.80 +		int encounterNodeType;
  313.81 +		QString encounterNodeName;
  313.82 +		QTimer *helloTimer; 		
  313.83 +		QTimer *initiatorTimer; 		
  313.84 +		QTimer *listenerTimer; 		
  313.85 +		//TLV
  313.86 +		TLV *TLVTranslator; 
  313.87 +		QString connectionNodeName;
  313.88 +		QList<Node> lastReceivedRIB;
  313.89 +		QList<Bundle> bundleRequestList;
  313.90 +		int connectionId;
  313.91 +		int connectionNodeId;
  313.92 +		NodeManager* connectionNodeManager;
  313.93 +		BundleManager* connectionBundleManager;
  313.94 +
  313.95 +		
  313.96 +
  313.97 +	signals:
  313.98 +
  313.99 +		//! Sends a datapacket to neighAware.
 313.100 +		/*! Connected to NeighAware::sendDatagram
 313.101 +		 * @param packet the DataPacket to send.
 313.102 +		 */
 313.103 +		void sendDataPacket(DataPacket);
 313.104 +		
 313.105 +		//! Sends a Hello to the TLV.
 313.106 +		/*! Connected to TLV::receiveHello
 313.107 +		 * @param hello the Hello to be sent.
 313.108 +		 */
 313.109 +		void sendHello(Hello);
 313.110 +
 313.111 +		//! Sends a dictionary to tht TLV.
 313.112 +		/*! Connected to TLV::createDictionary
 313.113 +		 * @param nodes the list of nodes to be included in the dictionary.
 313.114 +		 */
 313.115 +		void sendDictionary(QList<Node>);
 313.116 +
 313.117 +		//! Sends a RIB to the TLV.
 313.118 +		/*! Connected to TLV::createRIB
 313.119 +		 * @param nodes the list of nodes to be included in the RIB.
 313.120 +		 */
 313.121 +		void sendRIB(QList<Node>);
 313.122 +
 313.123 +		//! Sends a datagram to the TLV.
 313.124 +		/*! Connected to TLV::receiveDatagram
 313.125 +		 * @param datagram the datagram to be sent.
 313.126 +		 */
 313.127 +		void forwardSignalDatagram(QByteArray);
 313.128 +
 313.129 +		//! Sends a bundle offer to the TLV.
 313.130 +		/*! Connected to TLV::createBundleOffer
 313.131 +		 * @param the list of bundles to be included in the offer.
 313.132 +		 */
 313.133 +		void sendBundleOffer(QList<Bundle>);
 313.134 +
 313.135 +		//! Sends a bundle request to the TLV.
 313.136 +		/*! Connected to TLV::createBundleRequest.
 313.137 +		 * @param the list of bundles to be requested. (?)
 313.138 +		 */
 313.139 +		void sendBundleRequest(QList<Bundle>);
 313.140 +
 313.141 +		//! Sends a list of bundles to the TLV.
 313.142 +		/*! Connected to TLV::createBundleData.
 313.143 +		 * @param the bundles to be sent.
 313.144 +		 */
 313.145 +		void sendBundles(QList<Bundle>);
 313.146 +
 313.147 +		//! Sends the status of this connection.
 313.148 +		/*! Connected to NeighAware::getNewConnectionStatus. (Is this only 
 313.149 +		 * used for GUI???)
 313.150 +		 * @param the connection state(?).
 313.151 +		 * <PRE>
 313.152 +		 *	WAIT_NB   = 0
 313.153 +		 *	HELLO     = 1
 313.154 +		 *	INFO_EXCH = 2
 313.155 +		 *	WAIT_INFO = 2
 313.156 +		 * </PRE>
 313.157 +		 */
 313.158 +		void newConnectionStatus(int);
 313.159 +	public slots:
 313.160 +
 313.161 +		//! Internal slot for receiving packets.
 313.162 +		/*! Extracts the data from the datagram and emits forwardSignalDatagram.
 313.163 +		 * @param dataPacket the datapacket received from the network. 
 313.164 +		 */
 313.165 +		void receiveDatagram(DataPacket);
 313.166 +
 313.167 +	private slots:
 313.168 +		//! Internal(?) slot for sending packets.
 313.169 +		/*! Inserts the data into a DataPacket and emits sendDataPacket.
 313.170 +		 * @param datagram the data to be sent.
 313.171 +		 */
 313.172 +		void forwardSlotDatagram(QByteArray);
 313.173 +
 313.174 +		//! Called every time the hello timer expires, initiates a new hello procedure.
 313.175 +		void helloProcedure();
 313.176 +
 313.177 +		//! Called when the Hello procedure is completed if this node was given the SLAVE role.
 313.178 +		void listenerProcedure();
 313.179 +
 313.180 +		//! Called when the Hello procedure is completed if this node was given the MASTER role.
 313.181 +		void initiatorProcedure();
 313.182 +
 313.183 +		//! Slot for reception of hello messages.  
 313.184 +		/*! Checks the type of the hello and reacts accordingly by changing 
 313.185 +		 * state, and possibly sending a response.
 313.186 +		 */
 313.187 +		void receiveHello(Hello);
 313.188 +
 313.189 +		//! Slot for handling the reception of a dictionary.
 313.190 +		/*! When a dictionary (node id, name mappings) is received it is 
 313.191 +		 * dispatched to the node manager.
 313.192 +		 * @param receivedList the list of (node id, name mappings)
 313.193 +		 */
 313.194 +		void receiveDictionary(QList<Node>);
 313.195 +
 313.196 +		//! Slot for handling the reception of the RIB.
 313.197 +		/*! The RIB (Routing Information Base) contains node id -> delivery 
 313.198 +		 * predictability mappings.
 313.199 +		 * @param receivedList the RIB table.
 313.200 +		 */
 313.201 +		void receiveRIB(QList<Node>);
 313.202 +
 313.203 +		//! Handles reception of bundle requests.
 313.204 +		/*! Prepares a bundle request based on the offer, and sends out a 
 313.205 +		 * request for the first bundle in the list. If no more bundles are to 
 313.206 +		 * be sent the connection is reset to the hello state and an empty 
 313.207 +		 * bundle request is sent to the other node to indicate this.
 313.208 +		 * @param receivedList the list of bundles that were offered by the 
 313.209 +		 * other node.
 313.210 +		 */
 313.211 +		void receiveBundleOffer(QList<Bundle>);
 313.212 +
 313.213 +		//! This function is where the initiator handles bundle requests.
 313.214 +		/*! When a request for a list of bundles is received the appropriate 
 313.215 +		 * bundles are sent to the other node.
 313.216 +		 * @param receivedList the list of bundles the other node requested.
 313.217 +		 */
 313.218 +		void receiveBundleRequest(QList<Bundle>);
 313.219 +
 313.220 +		//! This function is where the listener handles reception of bundles.
 313.221 +		/*! When a list of bundles is received (currently only one bundle at a 
 313.222 +		 * time) it is dispatched to the bundle manager and a new request is 
 313.223 +		 * sent out. If the bundle request list is empty an empty bundle 
 313.224 +		 * request is sent out to indicate this to the other node.
 313.225 +		 * @param receivedList the list of bundles received.
 313.226 +		 */
 313.227 +		void receiveBundles(QList<Bundle>);
 313.228 +
 313.229 +
 313.230 +};
 313.231 +#endif
   314.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   314.2 +++ b/x86/x86/2.7/connectionWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   314.3 @@ -0,0 +1,64 @@
   314.4 +#include <QtGui>
   314.5 +#include <connectionWidget.h>
   314.6 +#include <readFile.h>
   314.7 +
   314.8 +ConnectionWidget::ConnectionWidget(QWidget *parent)
   314.9 +        : QWidget(parent)
  314.10 +{
  314.11 +#ifdef PDAGUI
  314.12 +//	setFixedSize(230,300);
  314.13 +#else
  314.14 +	setFixedSize(990, 660);
  314.15 +#endif //PDAGUI
  314.16 +
  314.17 +//	QGroupBox *connectionBox = new QGroupBox("Active Connections");
  314.18 +
  314.19 +	//ConnectionsTable
  314.20 +	conTable = new QTableWidget(9, 4, this);
  314.21 +    QStringList horizontalConLabels;
  314.22 +    horizontalConLabels << "ID" << "IP" << "Alive" << "State" ;
  314.23 +	conTable->setHorizontalHeaderLabels(horizontalConLabels);
  314.24 +	conTable->setColumnWidth(0, 30);	//ID
  314.25 +	conTable->setColumnWidth(1, 70);	//IP
  314.26 +	conTable->setColumnWidth(2, 40);	//Alive
  314.27 +	conTable->setColumnWidth(3, 40);	//State
  314.28 +
  314.29 +	QGridLayout *layout = new QGridLayout();
  314.30 +	layout->setMargin(0);
  314.31 +	layout->setSpacing(0);
  314.32 +	layout->addWidget(conTable, 0, 0);
  314.33 +	setLayout(layout);
  314.34 +
  314.35 +
  314.36 +}
  314.37 +
  314.38 +//Receives a list of active connection and add them to the list
  314.39 +void ConnectionWidget:: getConnectionList(QList <ConnectionInfo> list)
  314.40 +{
  314.41 +	ConnectionInfo tempNode;
  314.42 +	conTable->clear();
  314.43 +        QStringList horizontalConLabels;
  314.44 +	horizontalConLabels << "ID" << "IP" << "Alive" << "State";
  314.45 +	conTable->setHorizontalHeaderLabels(horizontalConLabels);
  314.46 +	for (int i = 0; i < list.size(); ++i)
  314.47 +	{
  314.48 +		tempNode=list.at(i);
  314.49 +		//Adding ID
  314.50 +		QString text = QString("%1").arg((int)tempNode.id);
  314.51 +		QTableWidgetItem *newItem = new QTableWidgetItem(text);
  314.52 +		conTable->setItem(i, 0, newItem);
  314.53 +		//Adding IP
  314.54 +		text = tempNode.ip.toString();
  314.55 +		newItem = new QTableWidgetItem(text);
  314.56 +		conTable->setItem(i, 1, newItem);
  314.57 +		//Adding Alive variable
  314.58 +		text = QString("%1").arg((int)tempNode.alive);
  314.59 +		newItem = new QTableWidgetItem(text);
  314.60 +		conTable->setItem(i, 2, newItem);
  314.61 +		//Adding State of the TCP Connection
  314.62 +		int x = tempNode.tcpSocket->state();
  314.63 +		text = QString("%1").arg((int)x);
  314.64 +		newItem = new QTableWidgetItem(text);
  314.65 +		conTable->setItem(i, 3, newItem);
  314.66 +	}
  314.67 + }
   315.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   315.2 +++ b/x86/x86/2.7/connectionWidget.h	Thu Jun 26 17:39:40 2008 +0100
   315.3 @@ -0,0 +1,25 @@
   315.4 +#ifndef CONNECTIONWIDGET_H
   315.5 +#define CONNECTIONWIDGET_H
   315.6 +#include <QtGui>
   315.7 +#include <QtNetwork>
   315.8 +#include <bundle.h>
   315.9 +#include <nodeManager.h>
  315.10 +#include <neighbourAwareness.h>
  315.11 +
  315.12 +class ConnectionWidget: public QWidget
  315.13 +{
  315.14 +
  315.15 +	Q_OBJECT
  315.16 +
  315.17 +public:
  315.18 +	ConnectionWidget(QWidget *parent = 0);
  315.19 +private:
  315.20 +	QTableWidget* conTable;
  315.21 +
  315.22 +public slots:
  315.23 +	void getConnectionList(QList <ConnectionInfo>);
  315.24 +};
  315.25 +
  315.26 +#endif
  315.27 +
  315.28 +
   316.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   316.2 +++ b/x86/x86/2.7/dataPacket.cpp	Thu Jun 26 17:39:40 2008 +0100
   316.3 @@ -0,0 +1,21 @@
   316.4 +#include <QtCore>
   316.5 +#include <dataPacket.h>
   316.6 +
   316.7 +DataPacket::DataPacket(QObject *parent)
   316.8 +{
   316.9 +	id=0;
  316.10 +	data.clear();
  316.11 +}
  316.12 +
  316.13 +DataPacket& DataPacket::operator=(const DataPacket& other)
  316.14 +{
  316.15 + id = other.id;
  316.16 + data = other.data;
  316.17 + return *this;
  316.18 +}
  316.19 +
  316.20 +DataPacket::DataPacket(const DataPacket& other)
  316.21 +{
  316.22 + id = other.id;
  316.23 + data = other.data;
  316.24 +}	
   317.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   317.2 +++ b/x86/x86/2.7/dataPacket.h	Thu Jun 26 17:39:40 2008 +0100
   317.3 @@ -0,0 +1,21 @@
   317.4 +#ifndef DATAPACKET_H
   317.5 +#define DATAPACKET_H
   317.6 +#include <QtCore>
   317.7 +
   317.8 +/*! \brief This class represents a DataPacket. It is used when transfering 
   317.9 + * datagrams between the NeighAware and Connection classes.
  317.10 + */
  317.11 +class DataPacket: public QObject
  317.12 +{
  317.13 +
  317.14 +	Q_OBJECT 
  317.15 +	public:
  317.16 +	QByteArray data;
  317.17 +	int id;
  317.18 +	DataPacket(QObject *parent= 0);
  317.19 +	DataPacket(const DataPacket& other);
  317.20 +	DataPacket& operator=(const DataPacket& other);
  317.21 +
  317.22 +};
  317.23 +
  317.24 +#endif
   318.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   318.2 +++ b/x86/x86/2.7/debugWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   318.3 @@ -0,0 +1,242 @@
   318.4 +#include <debugWidget.h>
   318.5 +#include <QtGui>
   318.6 +#include <QtCore>
   318.7 +#include <readFile.h>
   318.8 +
   318.9 +
  318.10 +#define DTN 500
  318.11 +
  318.12 +DebugWidget::DebugWidget(NodeManager *nodeMng,BundleManager *bundleMng,QWidget *parent)
  318.13 +		: QWidget(parent)
  318.14 +{
  318.15 +#ifdef PDAGUI
  318.16 +	setFixedSize(240,320);
  318.17 +#else
  318.18 +	setFixedSize(1000,700);
  318.19 +#endif //PDAGUI
  318.20 +	ReadFile conf;
  318.21 +	QString mainText = "Prophet Window - ";
  318.22 +	mainText.append(conf.getNodeName());
  318.23 +	setWindowTitle(mainText);
  318.24 +	bundleManager=bundleMng;
  318.25 +
  318.26 +#ifdef PDAGUI
  318.27 +	//Connection list tab
  318.28 +	connectionWidget = new ConnectionWidget(this);
  318.29 +	
  318.30 +	//Read Messages Tab
  318.31 +	messageRead = new MsgReadWidget(nodeMng,bundleMng);
  318.32 +
  318.33 +	//Configuration Tab
  318.34 +	configWidget = new ConfigWidget(this);
  318.35 +#endif //PDAGUI
  318.36 +
  318.37 +	//Message Widget Tag
  318.38 +	message = new MsgWidget(nodeMng,bundleMng);
  318.39 +	connect(message, SIGNAL(sendBundle(Bundle)), this, SLOT(forwardAppBundle(Bundle)));
  318.40 +
  318.41 +	//Node Table Tag
  318.42 +	nodeTable = new QTableWidget(40, 4, this);
  318.43 +    QStringList horizontalNodeLabels;
  318.44 +    horizontalNodeLabels << "ID" << "Name" << "Probability" << "RIB Flag";
  318.45 +	nodeTable->setHorizontalHeaderLabels(horizontalNodeLabels); 
  318.46 +
  318.47 +	//Info tag
  318.48 +	infoWidget = new InfoWidget(nodeMng);
  318.49 +	connect(this, SIGNAL(traffic(int)), infoWidget, SLOT(getTraffic(int)));
  318.50 +	connect(this, SIGNAL(newConnectionStatus(int)), infoWidget, SLOT(getNewConnectionStatus(int)));
  318.51 +	connect(this, SIGNAL(newConnection(int)), infoWidget, SLOT(getNewConnection(int)));
  318.52 +	connect(this, SIGNAL(newRemovedConnection(int)), infoWidget, SLOT(getRemovedConnection(int)));
  318.53 +	connect(this, SIGNAL(usedFileStorage(int)), infoWidget, SLOT(getUsedFileStorage(int)));
  318.54 +	connect(this, SIGNAL(usedMemoryStorage(int)), infoWidget, SLOT(getUsedMemoryStorage(int)));
  318.55 +	connect(this, SIGNAL(forwardConnectionList(QList <ConnectionInfo>)), infoWidget, SLOT(getConnectionList(QList <ConnectionInfo>)));
  318.56 +#ifdef PDAGUI
  318.57 +	connect(infoWidget, SIGNAL(sendConnectionList(QList <ConnectionInfo>)), 
  318.58 +			connectionWidget, SLOT(getConnectionList(QList <ConnectionInfo>)));
  318.59 +#endif //PDAGUI
  318.60 +	
  318.61 +	//Bundle List Tag
  318.62 +	bundleWidget = new BundleWidget(this);
  318.63 +	connect(this, SIGNAL(sendBundleList(QList<Bundle>)), bundleWidget, SLOT(getBundleList(QList<Bundle>)));
  318.64 +	connect(bundleWidget, SIGNAL(removeBundle(int)), this, SLOT(removeBundleSlot(int)));
  318.65 +	connect(bundleWidget, SIGNAL(removeAllBundles()), this, SLOT(removeAllBundlesSlot()));
  318.66 +
  318.67 +	#ifdef DTN_INTERFACE
  318.68 +	//DTN Interface Tag
  318.69 +	dtnInfo = new QTextEdit;
  318.70 +	dtnInfo->setReadOnly(true);
  318.71 +	dtnEntery = 0;
  318.72 +	#endif /*DNT_INTERFACE*/
  318.73 +	
  318.74 +	//About Tag
  318.75 +	info = new QListWidget;
  318.76 +	//info->setSelectionMode(QAbstractItemView::NoSelection);
  318.77 +	QString itemText;
  318.78 +	itemText.append("http://prophet.snc.sapmi.net");
  318.79 +    QListWidgetItem *newItem = new QListWidgetItem;
  318.80 +    newItem->setText(itemText);
  318.81 +    info->insertItem(0, newItem);
  318.82 +	itemText.clear();
  318.83 +	itemText.append("PRoPHET Version: 2.7.0");
  318.84 +	newItem = new QListWidgetItem;
  318.85 +    newItem->setText(itemText);
  318.86 +    info->insertItem(0, newItem);
  318.87 +	itemText.clear();
  318.88 +	itemText.append("Protocol Authors: Anders Lindgren, Avri Doria");
  318.89 +	newItem = new QListWidgetItem;
  318.90 +    newItem->setText(itemText);
  318.91 +    info->insertItem(0, newItem);
  318.92 +	itemText.clear();
  318.93 +	itemText.append("Code Author: Samo Grasic, Mattias Ek");
  318.94 +	newItem = new QListWidgetItem;
  318.95 +    newItem->setText(itemText);
  318.96 +    info->insertItem(0, newItem);
  318.97 +	itemText.clear();
  318.98 +	itemText.append("Lulea University Of Technology, Center For Distance-Spanning Technology");
  318.99 +	newItem = new QListWidgetItem;
 318.100 +    newItem->setText(itemText);
 318.101 +    info->insertItem(0, newItem);
 318.102 +
 318.103 +
 318.104 +	//Tab Widget
 318.105 +	tabWidget = new QTabWidget;
 318.106 +	tabWidget->addTab(infoWidget,tr("Node info"));
 318.107 +	#ifdef PDAGUI
 318.108 +	tabWidget->addTab(connectionWidget,tr("Connections"));
 318.109 +	#endif //PDAGUI
 318.110 +	tabWidget->addTab(bundleWidget,tr("Bundle list"));
 318.111 +	#ifdef PDAGUI
 318.112 +	tabWidget->addTab(message, tr("NSIM - Send"));
 318.113 +	tabWidget->addTab(messageRead, tr("NSIM - Read"));
 318.114 +	#else
 318.115 +	tabWidget->addTab(message, tr("NSIM"));
 318.116 +	#endif //PDAGUI
 318.117 +	#ifdef DTN_INTERFACE
 318.118 +	tabWidget->addTab(dtnInfo,tr("DTN Interface"));
 318.119 +	#endif /*DTN_INTERFACE*/
 318.120 +	#ifdef PDAGUI
 318.121 +	tabWidget->addTab(configWidget, tr("Config"));
 318.122 +	#endif //PDAGUI
 318.123 +	tabWidget->addTab(nodeTable, tr("Node list"));
 318.124 +	tabWidget->addTab(info, tr("About"));
 318.125 +
 318.126 +	
 318.127 +	//Define final layout
 318.128 +	QVBoxLayout *layout = new QVBoxLayout;
 318.129 +#ifdef PDAGUI
 318.130 +	layout->setMargin(0);
 318.131 +	layout->setSpacing(0);
 318.132 +#endif //PDAGUI
 318.133 +    layout->addWidget(tabWidget);    
 318.134 +    setLayout(layout);
 318.135 +
 318.136 +}
 318.137 +
 318.138 +void DebugWidget::getBundleList(QList<Bundle> list)
 318.139 +{
 318.140 +	emit sendBundleList(list);
 318.141 +}
 318.142 +
 318.143 +void DebugWidget::getNodeList(QList<Node> list)
 318.144 +{
 318.145 +	Node tempNode;
 318.146 +	nodeTable->clear();
 318.147 +    QStringList horizontalNodeLabels;
 318.148 +    horizontalNodeLabels << "ID" << "Name" << "Probability" << "RIB Flag";
 318.149 +	nodeTable->setHorizontalHeaderLabels(horizontalNodeLabels); 
 318.150 +    for (int i = 0; i < list.size(); ++i) 
 318.151 +	{
 318.152 +		tempNode=list.at(i);
 318.153 +
 318.154 +		QString text = QString("%1").arg((int)tempNode.nodeId);
 318.155 +		QTableWidgetItem *newItem = new QTableWidgetItem(text);
 318.156 +		nodeTable->setItem(i, 0, newItem);
 318.157 +
 318.158 +		text = tempNode.getName();
 318.159 +		newItem = new QTableWidgetItem(text);
 318.160 +		nodeTable->setItem(i, 1, newItem);
 318.161 +
 318.162 +		text = QString("%1").arg((float)tempNode.probability);
 318.163 +		newItem = new QTableWidgetItem(text);
 318.164 +		nodeTable->setItem(i, 2, newItem);
 318.165 +
 318.166 +		text = QString("%1").arg((int)tempNode.flag);
 318.167 +		newItem = new QTableWidgetItem(text);
 318.168 +		nodeTable->setItem(i, 3, newItem);
 318.169 +		//table->resizeRowToContents(i);
 318.170 +	}
 318.171 +}
 318.172 +
 318.173 +void DebugWidget::getConnectionList(QList<ConnectionInfo> list)
 318.174 +{
 318.175 +	emit forwardConnectionList(list);
 318.176 +}
 318.177 +
 318.178 +void DebugWidget::getStorageSize(int size)
 318.179 +{
 318.180 +
 318.181 +}
 318.182 +
 318.183 +void DebugWidget::getLog(QString log)
 318.184 +{
 318.185 +	#ifdef DTN_INTERFACE
 318.186 +	if(dtnEntery>DTN)
 318.187 +	{
 318.188 +		dtnInfo->clear();
 318.189 +		dtnEntery=0;
 318.190 +	}
 318.191 +	dtnInfo->append(log);
 318.192 +	dtnEntery++; 
 318.193 +	#endif /*DTN_INTERFACE*/
 318.194 +}
 318.195 +
 318.196 +void DebugWidget::forwardAppBundle(Bundle newBundle)
 318.197 +{
 318.198 +	emit sendAppBundle(newBundle);
 318.199 +}
 318.200 +
 318.201 +void DebugWidget::getAppBundle(Bundle newBundle)
 318.202 +{
 318.203 +	message->getBundle(newBundle);
 318.204 +}
 318.205 +
 318.206 +void DebugWidget::getTraffic(int t)
 318.207 +{
 318.208 +	emit traffic(t);
 318.209 +}
 318.210 +
 318.211 +void DebugWidget::getNewConnection(int c)
 318.212 +{
 318.213 +	emit newConnection(c);
 318.214 +}
 318.215 +
 318.216 +void DebugWidget::getNewConnectionStatus(int c)
 318.217 +{
 318.218 +	emit newConnectionStatus(c);
 318.219 +}
 318.220 +
 318.221 +void DebugWidget::getRemovedConnection(int c)
 318.222 +{
 318.223 +	emit newRemovedConnection(c);
 318.224 +}
 318.225 +
 318.226 +void DebugWidget::getUsedMemoryStorage(int s)
 318.227 +{
 318.228 +	emit usedMemoryStorage(s);
 318.229 +}
 318.230 +
 318.231 +void DebugWidget::getUsedFileStorage(int s)
 318.232 +{
 318.233 +	emit usedFileStorage(s);
 318.234 +}
 318.235 +
 318.236 +void DebugWidget::removeBundleSlot(int s)
 318.237 +{
 318.238 +	emit removeBundle(s);
 318.239 +}
 318.240 +
 318.241 +void DebugWidget::removeAllBundlesSlot()
 318.242 +{
 318.243 +	emit removeAllBundles();
 318.244 +}
 318.245 +
   319.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   319.2 +++ b/x86/x86/2.7/debugWidget.h	Thu Jun 26 17:39:40 2008 +0100
   319.3 @@ -0,0 +1,73 @@
   319.4 +#ifndef DEBUGWIDGET_H
   319.5 +#define DEBUGWIDGET_H
   319.6 +
   319.7 +
   319.8 +#include <QtGui>
   319.9 +#include <bundle.h>
  319.10 +#include <node.h>
  319.11 +#include <connectionWidget.h>
  319.12 +#include <msgWidget.h>
  319.13 +#include <msgReadWidget.h>
  319.14 +#include <configWidget.h>
  319.15 +#include <infoWidget.h>
  319.16 +#include <bundleWidget.h>
  319.17 +#include <neighbourAwareness.h>
  319.18 +#include <bundleManager.h>
  319.19 +
  319.20 +class DebugWidget : public QWidget
  319.21 +{
  319.22 +	Q_OBJECT 
  319.23 +
  319.24 +	public:
  319.25 +		DebugWidget(NodeManager*,BundleManager*,QWidget *parent = 0);
  319.26 +		QTableWidget *table;
  319.27 +		QTableWidget *nodeTable;
  319.28 +		QTableWidget *conTable;
  319.29 +		ConnectionWidget *connectionWidget;
  319.30 +		MsgWidget *message;
  319.31 +		MsgReadWidget *messageRead;
  319.32 +		ConfigWidget *configWidget;
  319.33 +		QTabWidget *tabWidget;
  319.34 +		QListWidget *info;
  319.35 +		QTextEdit *dtnInfo;
  319.36 +		InfoWidget *infoWidget;
  319.37 +		BundleWidget *bundleWidget;
  319.38 +		BundleManager *bundleManager;	
  319.39 +	int dtnEntery;
  319.40 +	 signals:
  319.41 +		void sendAppBundle(Bundle);
  319.42 +		void traffic(int);
  319.43 +		void newConnectionStatus(int);
  319.44 +		void newConnection(int);
  319.45 +		void newRemovedConnection(int);
  319.46 +		void usedFileStorage(int);
  319.47 +		void usedMemoryStorage(int);
  319.48 +		void sendBundleList(QList<Bundle>);
  319.49 +		void forwardConnectionList(QList <ConnectionInfo>);
  319.50 +		void removeBundle(int);
  319.51 +		void removeAllBundles();
  319.52 +
  319.53 +	public slots:
  319.54 +	void getLog(QString);
  319.55 +	void getStorageSize(int);
  319.56 +	void getConnectionList(QList<ConnectionInfo> list);
  319.57 +	void getBundleList(QList<Bundle>);
  319.58 +	void forwardAppBundle(Bundle);
  319.59 +	void getAppBundle(Bundle);
  319.60 +	void getNodeList(QList<Node>);
  319.61 +
  319.62 +	void getTraffic(int);
  319.63 +	void getNewConnection(int);
  319.64 +	void getNewConnectionStatus(int);
  319.65 +	void getRemovedConnection(int);
  319.66 +	void getUsedFileStorage(int);
  319.67 +	void getUsedMemoryStorage(int);
  319.68 +	void removeBundleSlot(int);
  319.69 +	void removeAllBundlesSlot();
  319.70 +
  319.71 +
  319.72 +};
  319.73 +
  319.74 +#endif
  319.75 +
  319.76 +
   320.1 Binary file x86/x86/2.7/dia/signals.dia has changed
   321.1 Binary file x86/x86/2.7/green_off.png has changed
   322.1 Binary file x86/x86/2.7/green_on.png has changed
   323.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   323.2 +++ b/x86/x86/2.7/hello.cpp	Thu Jun 26 17:39:40 2008 +0100
   323.3 @@ -0,0 +1,65 @@
   323.4 +#include <QtCore>
   323.5 +#include <hello.h>
   323.6 +
   323.7 +Hello::Hello(QObject *parent)
   323.8 +{
   323.9 +	reserved=0;
  323.10 +	HFunction=0;
  323.11 +	timer=0;
  323.12 +	senderId=0;
  323.13 +	senderType=0;
  323.14 +	senderName.clear();
  323.15 +}
  323.16 +
  323.17 +
  323.18 +Hello& Hello::operator=(const Hello& other)
  323.19 +{
  323.20 + reserved = other.reserved;
  323.21 + HFunction = other.HFunction;
  323.22 + timer = other.timer;
  323.23 + senderName = other.senderName;
  323.24 + senderId = other.senderId;
  323.25 + senderType = other.senderType;
  323.26 + return *this;
  323.27 +}
  323.28 +
  323.29 +Hello::Hello(const Hello& other)
  323.30 +{
  323.31 + reserved = other.reserved;
  323.32 + HFunction = other.HFunction;
  323.33 + timer = other.timer;
  323.34 + senderName = other.senderName;
  323.35 +  senderId = other.senderId;
  323.36 + senderType = other.senderType;
  323.37 +
  323.38 +}	
  323.39 +	
  323.40 +void Hello::setFunction(int function)
  323.41 +{
  323.42 +	HFunction=function;
  323.43 +}
  323.44 +
  323.45 +void Hello::setSenderName(QString name)
  323.46 +{
  323.47 +	senderName=name;
  323.48 +}
  323.49 +
  323.50 +int Hello::getFunction()
  323.51 +{
  323.52 +	return HFunction;
  323.53 +}
  323.54 +
  323.55 +QString Hello::getSenderName()
  323.56 +{
  323.57 +	return senderName;
  323.58 +}
  323.59 +
  323.60 +void Hello::setTimer(int t)
  323.61 +{
  323.62 +	timer=t;
  323.63 +}
  323.64 +
  323.65 +int Hello::getTimer()
  323.66 +{
  323.67 +	return timer;
  323.68 +}
  323.69 \ No newline at end of file
   324.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   324.2 +++ b/x86/x86/2.7/hello.h	Thu Jun 26 17:39:40 2008 +0100
   324.3 @@ -0,0 +1,82 @@
   324.4 +#ifndef HELLO_H
   324.5 +#define HELLO_H
   324.6 +
   324.7 +#define SYN 1
   324.8 +#define SYNACK 2
   324.9 +#define ACK 3
  324.10 +#define RSTACK 4
  324.11 +
  324.12 +
  324.13 +
  324.14 +#include <QtCore>
  324.15 +
  324.16 +//!Object used during the PRoPHET hello procedure. 
  324.17 +/*!
  324.18 + * The different functions (HFs) of Hello messages:
  324.19 + * <PRE>
  324.20 + * SYN    - Beacon Hello, used for allowing other nodes to see us.
  324.21 + * SYNACK - Response to a SYN Hello.
  324.22 + * ACK    - Acknowledgement of the SYNACK.
  324.23 + * RSTACK - ???
  324.24 + * </PRE>
  324.25 + */
  324.26 +class Hello : public QObject
  324.27 +{
  324.28 +
  324.29 +Q_OBJECT 
  324.30 +	public:
  324.31 +	int reserved;
  324.32 +	int HFunction;
  324.33 +	int timer;
  324.34 +	int senderId;
  324.35 +	int senderType;
  324.36 +	QString senderName;
  324.37 +
  324.38 +	Hello(QObject *parent = 0);
  324.39 +	Hello(const Hello& other);
  324.40 +	Hello& operator=(const Hello& other);
  324.41 +
  324.42 +
  324.43 +	//! Sets the HF of this Hello.
  324.44 +	/*!
  324.45 +	 * @param function the HF of this Hello.
  324.46 +	 */
  324.47 +	void setFunction(int);
  324.48 +
  324.49 +	//! Sets the HF of this Hello.
  324.50 +	/*!
  324.51 +	 * @param function the HF of this Hello.
  324.52 +	 */
  324.53 +	int getFunction(); 
  324.54 +
  324.55 +	//! Returns the routable DTN name of the sender.
  324.56 +	/*!
  324.57 +	 * Used for updating routing information and making forwarding 
  324.58 +	 * decisions.
  324.59 +	 * @return the routable DTN name of the sender.
  324.60 +	 */
  324.61 +	QString getSenderName();	
  324.62 +
  324.63 +	//! Sets the routable DTN name of the sender.
  324.64 +	/*!
  324.65 +	 * Used for updating routing information and making forwarding 
  324.66 +	 * decisions.
  324.67 +	 * @param name a QString containing the senders name.
  324.68 +	 */	
  324.69 +	void setSenderName(QString);
  324.70 +
  324.71 +	//! Sets the Hello timer of this Hello.
  324.72 +	/*!
  324.73 +	 * @param t the interval between periodic Hello messages in units of 
  324.74 +	 * 100 ms.
  324.75 +	 */
  324.76 +	void setTimer(int);
  324.77 +
  324.78 +	//! Returns the interval (in 100 ms) this Hello is sent out.
  324.79 +	/*!
  324.80 +	 * @return the interval (in 100 ms) that periodic hellos are sent out.
  324.81 +	 */
  324.82 +	int getTimer(); 
  324.83 +};
  324.84 +
  324.85 +#endif
   325.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   325.2 +++ b/x86/x86/2.7/infoWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   325.3 @@ -0,0 +1,518 @@
   325.4 +#include <QtGui>
   325.5 +#include <infoWidget.h>
   325.6 +#include <readFile.h>
   325.7 +
   325.8 +
   325.9 +#define AVRTIME 1000
  325.10 +#define MAXRATE 100
  325.11 +#define YELLOWONTIME 1000
  325.12 +#define REDONTIME 4000
  325.13 +
  325.14 +//Connections states for GUI
  325.15 +#define STATE_SYN 1
  325.16 +#define STATE_SYNACK 2
  325.17 +#define STATE_ACK 3
  325.18 +#define STATE_DICT 4
  325.19 +#define STATE_RIB 5
  325.20 +#define STATE_BOFF 6
  325.21 +#define STATE_BREQ 7
  325.22 +#define STATE_BUNDLE 8
  325.23 +#define STATE_ERROR 9
  325.24 +
  325.25 +
  325.26 +InfoWidget::InfoWidget(NodeManager* nodeMng,QWidget *parent)
  325.27 +        : QWidget(parent)
  325.28 +{
  325.29 +#ifdef PDAGUI
  325.30 +//	setFixedSize(230,300);
  325.31 +#else
  325.32 +	setFixedSize(990, 660);
  325.33 +#endif //PDAGUI
  325.34 +	ReadFile conf;
  325.35 +	//Traffic timer and variables
  325.36 +	trafficRate=0;
  325.37 +	trafficSum=0;
  325.38 +	trafficTimer = new QTimer();
  325.39 +	yellowTimer = new QTimer();
  325.40 +	yellowTimer->setSingleShot(true);
  325.41 +	redTimer = new QTimer();
  325.42 +	redTimer->setSingleShot(true);
  325.43 +
  325.44 +	trafficTimer->start(AVRTIME);
  325.45 +	connect(trafficTimer, SIGNAL(timeout()), this, SLOT(calculateTraffic()));
  325.46 +	connect(yellowTimer, SIGNAL(timeout()), this, SLOT(yellowLedOff()));
  325.47 +	connect(redTimer, SIGNAL(timeout()), this, SLOT(redLedOff()));
  325.48 +
  325.49 +	//Load graphic
  325.50 +	redOn = new QPixmap("red_on.png");
  325.51 +	redOff= new QPixmap("red_off.png");
  325.52 +	yellowOn= new QPixmap("yellow_on.png");
  325.53 +	yellowOff= new QPixmap("yellow_off.png");
  325.54 +	greenOn= new QPixmap("green_on.png");
  325.55 +	greenOff= new QPixmap("green_off.png");
  325.56 +
  325.57 +#ifndef PDAGUI
  325.58 +	//ConnectionsTable
  325.59 +    QLabel *labelConnections = new QLabel(this);
  325.60 +    labelConnections->setText("Active connections:");
  325.61 +	conTable = new QTableWidget(9, 4, this);
  325.62 +    QStringList horizontalConLabels;
  325.63 +    horizontalConLabels << "ID" << "IP" << "Alive" << "State" ;
  325.64 +	conTable->setHorizontalHeaderLabels(horizontalConLabels); 
  325.65 +#endif //PDAGUI
  325.66 +
  325.67 +#ifndef PDAGUI
  325.68 +	//Status group
  325.69 +	QGroupBox *sendBox = new QGroupBox("Status");
  325.70 +#endif //PDAGUI
  325.71 +    //Memory resources
  325.72 +    QLabel *labelMemory = new QLabel(this);
  325.73 +    labelMemory->setText("Memory storage:");
  325.74 +	memoryBar= new QProgressBar;
  325.75 +	memoryBar->setMaximum (conf.getStorageSize());
  325.76 +	memoryBar->setMinimum (0);
  325.77 +	memoryBar->setValue (0);
  325.78 +	memoryBar->setTextVisible(true);
  325.79 +    //File resources
  325.80 +    QLabel *labelFile = new QLabel(this);
  325.81 +    labelFile->setText("File storage:");
  325.82 +	fileBar= new QProgressBar;
  325.83 +	fileBar->setMaximum (conf.getMemoryStorageSize());
  325.84 +	fileBar->setMinimum (0);
  325.85 +	fileBar->setValue (0);
  325.86 +	fileBar->setTextVisible(true);
  325.87 +	//Transfer speed
  325.88 +    QLabel *labelSpeed = new QLabel(this);
  325.89 +    labelSpeed->setText("Transfer speed:");
  325.90 +	speedBar= new QProgressBar;
  325.91 +	speedBar->setMaximum (MAXRATE);
  325.92 +	speedBar->setMinimum (0);
  325.93 +	speedBar->setValue (0);
  325.94 +	speedBar->setTextVisible(true);
  325.95 +	//Red label
  325.96 +	labelRed = new QLabel(this);
  325.97 +    labelRed->setPixmap(*redOff);
  325.98 +	redLine = new QLineEdit(this);
  325.99 +	redLine->setText("No error...");
 325.100 +
 325.101 +	//Green label
 325.102 +	labelGreen = new QLabel(this);
 325.103 +    labelGreen->setPixmap(*greenOff);
 325.104 +	greenLine = new QLineEdit(this);
 325.105 +	greenLine->setText("No connection...");
 325.106 +
 325.107 +	//Yellow label
 325.108 +	labelYellow = new QLabel(this);
 325.109 +    labelYellow->setPixmap(*yellowOff);
 325.110 +	yellowLine = new QLineEdit(this);
 325.111 +	yellowLine->setText("No transmission...");
 325.112 +
 325.113 +
 325.114 +
 325.115 +
 325.116 +	//Final grid layout
 325.117 +    QGridLayout *sendGroup = new QGridLayout;
 325.118 +#ifdef PDAGUI
 325.119 +	sendGroup->setMargin(5);
 325.120 +	sendGroup->setSpacing(3);
 325.121 +
 325.122 +	sendGroup->addWidget(labelMemory, 0, 0, 1, 3);
 325.123 +    sendGroup->addWidget(memoryBar, 0, 1, 1, -1);
 325.124 +	sendGroup->addWidget(labelFile, 1, 0, 1, 3);
 325.125 +    sendGroup->addWidget(fileBar, 1, 1, 1, -1);
 325.126 +	sendGroup->addWidget(labelSpeed, 2, 0, 1, 3);
 325.127 +	sendGroup->addWidget(speedBar, 2, 1, 1, -1);
 325.128 +	sendGroup->addWidget(labelRed, 3, 0, 1, 1);	sendGroup->addWidget(redLine, 3, 1, 1, -1);
 325.129 +	sendGroup->addWidget(labelGreen, 4, 0, 1, 1); sendGroup->addWidget(greenLine, 4, 1, 1, -1);
 325.130 +	sendGroup->addWidget(labelYellow, 5, 0, 1, 1); sendGroup->addWidget(yellowLine, 5, 1, 1, -1);
 325.131 +#else
 325.132 +	sendGroup->addWidget(labelMemory, 0, 0);
 325.133 +    sendGroup->addWidget(memoryBar, 1, 0, 1,2);
 325.134 +
 325.135 +	sendGroup->addWidget(labelFile, 2, 0);
 325.136 +    sendGroup->addWidget(fileBar, 3, 0, 1,2);
 325.137 +	sendGroup->addWidget(labelSpeed, 4, 0);
 325.138 +	sendGroup->addWidget(speedBar, 5, 0, 1,2);
 325.139 +	sendGroup->addWidget(labelRed, 6, 0);	sendGroup->addWidget(redLine, 6, 1);
 325.140 +	sendGroup->addWidget(labelGreen, 7, 0); sendGroup->addWidget(greenLine, 7, 1 );
 325.141 +	sendGroup->addWidget(labelYellow, 8, 0); sendGroup->addWidget(yellowLine, 8, 1);
 325.142 +
 325.143 +#endif //PDAGUI
 325.144 +
 325.145 +#ifndef PDAGUI
 325.146 +	sendGroup->addWidget(labelConnections, 9, 0);
 325.147 +	sendGroup->addWidget(conTable, 10, 0,1,2);
 325.148 +#endif //PDAGUI
 325.149 +
 325.150 +#ifdef PDAGUI
 325.151 +	//sendGroup->setFixedSize(240, 320);
 325.152 +#else
 325.153 +	sendBox->setFixedSize(450, 635);
 325.154 +	sendBox->setLayout(sendGroup);
 325.155 +#endif //PDAGUI
 325.156 +	///////////////////////////////////////////////////
 325.157 +	QGroupBox *readBox = new QGroupBox("Configuration");
 325.158 +
 325.159 +	//Reading configurations
 325.160 +	loadConfiguration();
 325.161 +	//Final grid layout
 325.162 +	QGridLayout *readGroup = new QGridLayout;
 325.163 +	QLabel *labelNODEID = new QLabel("NodeID:");
 325.164 +	readGroup->addWidget(labelNODEID, 0, 0);
 325.165 +	readGroup->addWidget(lineNODEID, 0, 1);
 325.166 +	QLabel *labelNODENAME = new QLabel("Node Name:");
 325.167 +	readGroup->addWidget(labelNODENAME, 1, 0);
 325.168 +	readGroup->addWidget(lineNODENAME, 1, 1);
 325.169 +	QLabel *labelNODEIP = new QLabel("Node IP:");
 325.170 +	readGroup->addWidget(labelNODEIP, 2, 0);
 325.171 +	readGroup->addWidget(lineNODEIP, 2, 1);
 325.172 +	QLabel *labelNODEIP2 = new QLabel("Node IP2:");
 325.173 +	readGroup->addWidget(labelNODEIP2, 3, 0);
 325.174 +	readGroup->addWidget(lineNODEIP2, 3, 1);
 325.175 +	QLabel *labelNODEBROADCAST = new QLabel("Broadcast Address:");
 325.176 +	readGroup->addWidget(labelNODEBROADCAST, 4, 0);
 325.177 +	readGroup->addWidget(lineNODEBROADCAST, 4, 1);
 325.178 +	QLabel *labelBROADCAST = new QLabel("Broadcast Timer:");
 325.179 +	readGroup->addWidget(labelBROADCAST, 5, 0);
 325.180 +	readGroup->addWidget(lineBROADCAST, 5, 1);
 325.181 +	QLabel *labelAGINGTIMER = new QLabel("Aging Timer:");
 325.182 +	readGroup->addWidget(labelAGINGTIMER, 6, 0);
 325.183 +	readGroup->addWidget(lineAGINGTIMER, 6, 1);
 325.184 +	QLabel *labelPENCOUNTER = new QLabel("PEcounter:");
 325.185 +	readGroup->addWidget(labelPENCOUNTER, 7, 0);
 325.186 +	readGroup->addWidget(linePENCOUNTER, 7, 1);
 325.187 +	QLabel *labelBETA = new QLabel("Beta:");
 325.188 +	readGroup->addWidget(labelBETA, 8, 0);
 325.189 +	readGroup->addWidget(lineBETA, 8, 1);
 325.190 +	QLabel *labelGAMMA = new QLabel("Gamma:");
 325.191 +	readGroup->addWidget(labelGAMMA, 9, 0);
 325.192 +	readGroup->addWidget(lineGAMMA, 9, 1);
 325.193 +
 325.194 +	QLabel *labelALIVE = new QLabel("Alive Timer:");
 325.195 +	readGroup->addWidget(labelALIVE, 11, 0);
 325.196 +	readGroup->addWidget(lineALIVE, 11, 1);
 325.197 +
 325.198 +	QLabel *labelHELLOTIMER = new QLabel("Hello Timer:");
 325.199 +	readGroup->addWidget(labelHELLOTIMER, 12, 0);
 325.200 +	readGroup->addWidget(lineHELLOTIMER, 12, 1);
 325.201 +
 325.202 +	QLabel *laberINITIATORTIMER = new QLabel("Initiator Timer:");
 325.203 +//	readGroup->addWidget(laberINITIATORTIMER, 13, 0);
 325.204 +//	readGroup->addWidget(lineINITIATORTIMER, 13, 1);
 325.205 +
 325.206 +	QLabel *labelLISTENERTIMER = new QLabel("Listener Timer:");
 325.207 +//	readGroup->addWidget(labelLISTENERTIMER, 14, 0);
 325.208 +//	readGroup->addWidget(lineLISTENERTIMER, 14, 1);
 325.209 +
 325.210 +	QLabel *labelDTNHOSTNAME = new QLabel("DTN Host Name:");
 325.211 +	readGroup->addWidget(labelDTNHOSTNAME, 13, 0);
 325.212 +	readGroup->addWidget(lineDTNHOSTNAME, 13, 1);
 325.213 +
 325.214 +	QLabel *labelDNTTIMER = new QLabel("DTN Timer:");
 325.215 +	readGroup->addWidget(labelDNTTIMER, 14, 0);
 325.216 +	readGroup->addWidget(lineDNTTIMER, 14, 1);
 325.217 +
 325.218 +	QLabel *labelSTORAGESIZE = new QLabel("File Storge size:");
 325.219 +	readGroup->addWidget(labelSTORAGESIZE, 15, 0);
 325.220 +	readGroup->addWidget(lineSTORAGESIZE, 15, 1);
 325.221 +
 325.222 +	QLabel *labelMEMORYSIZE = new QLabel("Memory Storge size:");
 325.223 +	readGroup->addWidget(labelMEMORYSIZE, 16, 0);
 325.224 +	readGroup->addWidget(lineMEMORYSIZE, 16, 1);
 325.225 +
 325.226 +	QLabel *labelROUTING = new QLabel("Routing Type:");
 325.227 +	readGroup->addWidget(labelROUTING, 17, 0);
 325.228 +	readGroup->addWidget(lineROUTING, 17, 1);
 325.229 +
 325.230 +	QLabel *labelQUEUE = new QLabel("Queue Type:");
 325.231 +	readGroup->addWidget(labelQUEUE, 18, 0);
 325.232 +	readGroup->addWidget(lineQUEUE, 18, 1);
 325.233 +
 325.234 +	QLabel *labelCONTINIUSUPDATE = new QLabel("Continius update:");
 325.235 +	readGroup->addWidget(labelCONTINIUSUPDATE, 19, 0);
 325.236 +	readGroup->addWidget(lineCONTINIUSUPDATE, 19, 1);
 325.237 +
 325.238 +	QLabel *labelSTORAGEPATH = new QLabel("Storage Path:");
 325.239 +	readGroup->addWidget(labelSTORAGEPATH, 20, 0);
 325.240 +	readGroup->addWidget(lineSTORAGEPATH, 20, 1);
 325.241 +
 325.242 +	QLabel *labelLOGPATH = new QLabel("Log Path:");
 325.243 +	readGroup->addWidget(labelLOGPATH, 21, 0);
 325.244 +	readGroup->addWidget(lineLOGPATH, 21, 1);
 325.245 +
 325.246 +	QLabel *labelMSGPATH = new QLabel("Messages Path:");
 325.247 +	readGroup->addWidget(labelMSGPATH, 22, 0);
 325.248 +	readGroup->addWidget(lineMSGPATH, 22, 1);
 325.249 +
 325.250 +	QLabel *labelAGEFILENODES = new QLabel("Age Nodes on Startup:");
 325.251 +	readGroup->addWidget(labelAGEFILENODES, 23, 0);
 325.252 +	readGroup->addWidget(lineAGEFILENODES, 23, 1);
 325.253 +
 325.254 +	QLabel *labelUSEFILENODES = new QLabel("Store Nodes To File:");
 325.255 +	readGroup->addWidget(labelUSEFILENODES, 24, 0);
 325.256 +	readGroup->addWidget(lineUSEFILENODES, 24, 1);
 325.257 +
 325.258 +	QLabel *labelWRITETOFILETIMER = new QLabel("File Writing Timer:");
 325.259 +	readGroup->addWidget(labelWRITETOFILETIMER, 25, 0);
 325.260 +	readGroup->addWidget(lineWRITETOFILETIMER, 25, 1);
 325.261 +
 325.262 +	QLabel *labelUSEFILEBUNDLES = new QLabel("Store Bundels To Files:");
 325.263 +	readGroup->addWidget(labelUSEFILEBUNDLES, 26, 0);
 325.264 +	readGroup->addWidget(lineUSEFILEBUNDLES, 26, 1);
 325.265 +
 325.266 +
 325.267 +	QLabel *labelLOGGING = new QLabel("Logging:");
 325.268 +	readGroup->addWidget(labelLOGGING, 27, 0);
 325.269 +	readGroup->addWidget(lineLOGGING, 27, 1);
 325.270 +
 325.271 +	QLabel *labelUSETTL = new QLabel("Use TTL:");
 325.272 +	readGroup->addWidget(labelUSETTL, 28, 0);
 325.273 +	readGroup->addWidget(lineUSETTL, 28, 1);
 325.274 +
 325.275 +	QLabel *labelTTL = new QLabel("TTL:");
 325.276 +	readGroup->addWidget(labelTTL, 29, 0);
 325.277 +	readGroup->addWidget(lineTTL, 29, 1);
 325.278 +
 325.279 +	QLabel *labelACKS = new QLabel("Use ACKs:");
 325.280 +	readGroup->addWidget(labelACKS, 30, 0);
 325.281 +	readGroup->addWidget(lineACKS, 30, 1);
 325.282 +
 325.283 +
 325.284 +
 325.285 +
 325.286 + 	readBox->setFixedSize(450, 635);
 325.287 +	readBox->setLayout(readGroup);
 325.288 +	Bundle *msg = new Bundle;
 325.289 +	//Define final layout
 325.290 +	QVBoxLayout *layout = new QVBoxLayout;
 325.291 +	layout->setDirection(QBoxLayout::LeftToRight);
 325.292 +#ifdef PDAGUI
 325.293 +    setLayout(sendGroup);
 325.294 +#else
 325.295 +    layout->addWidget(sendBox);
 325.296 +	layout->addWidget(readBox);    
 325.297 +    setLayout(layout);
 325.298 +#endif //PDAGUI
 325.299 +}
 325.300 +
 325.301 +void InfoWidget::loadConfiguration()
 325.302 +{
 325.303 +	ReadFile conf;
 325.304 +	lineNODEID = new QLineEdit();
 325.305 +	lineNODEID->setText(QString("%1").arg(conf.getNodeId()));
 325.306 +
 325.307 +	lineNODENAME = new QLineEdit();
 325.308 +	lineNODENAME->setText(conf.getNodeName());
 325.309 +
 325.310 +	lineNODEIP = new QLineEdit();
 325.311 +	lineNODEIP->setText(conf.getNodeIp().toString());
 325.312 +
 325.313 +	lineNODEIP2 = new QLineEdit();
 325.314 +	lineNODEIP2->setText(conf.getNodeIp2().toString());
 325.315 +
 325.316 +	lineNODEBROADCAST = new QLineEdit();
 325.317 +	lineNODEBROADCAST->setText(conf.getBroadcast().toString());
 325.318 +
 325.319 +	lineBROADCAST = new QLineEdit();
 325.320 +	lineBROADCAST->setText(QString("%1").arg(conf.getBroadcastTimer()));
 325.321 +
 325.322 +	lineAGINGTIMER = new QLineEdit();
 325.323 +	lineAGINGTIMER->setText(QString("%1").arg(conf.getAgingTimer()));
 325.324 +
 325.325 +	linePENCOUNTER = new QLineEdit();
 325.326 +	linePENCOUNTER->setText(QString("%1").arg(conf.getPEncounter()));
 325.327 +
 325.328 +	lineBETA = new QLineEdit();
 325.329 +	lineBETA->setText(QString("%1").arg(conf.getBeta()));
 325.330 +
 325.331 +	lineGAMMA = new QLineEdit();
 325.332 +	lineGAMMA->setText(QString("%1").arg(conf.getGamma()));
 325.333 +	
 325.334 +	lineALIVE = new QLineEdit();
 325.335 +	lineALIVE->setText(QString("%1").arg(conf.getAlive()));
 325.336 +	
 325.337 +	lineHELLOTIMER = new QLineEdit();
 325.338 +	lineHELLOTIMER->setText(QString("%1").arg(conf.getHello()));
 325.339 +	
 325.340 +	lineINITIATORTIMER = new QLineEdit();
 325.341 +	lineINITIATORTIMER->setText(QString("%1").arg(conf.getInitiatorTimer()));
 325.342 +	
 325.343 +	lineLISTENERTIMER = new QLineEdit();
 325.344 +	lineLISTENERTIMER->setText(QString("%1").arg(conf.getListenerTimer()));
 325.345 +	
 325.346 +	lineDTNHOSTNAME = new QLineEdit();
 325.347 +	lineDTNHOSTNAME->setText(conf.getDTNHostName().toString());
 325.348 +	
 325.349 +	lineDNTTIMER = new QLineEdit();
 325.350 +	lineDNTTIMER->setText(QString("%1").arg(conf.getDTNTimer()));
 325.351 +
 325.352 +	lineSTORAGESIZE = new QLineEdit();
 325.353 +	lineSTORAGESIZE->setText(QString("%1").arg(conf.getStorageSize()));
 325.354 +
 325.355 +	lineMEMORYSIZE = new QLineEdit();
 325.356 +	lineMEMORYSIZE->setText(QString("%1").arg(conf.getMemoryStorageSize()));
 325.357 +
 325.358 +	lineROUTING = new QLineEdit();
 325.359 +	lineROUTING->setText(QString("%1").arg(conf.getRouting()));
 325.360 +
 325.361 +	lineQUEUE = new QLineEdit();
 325.362 +	lineQUEUE->setText(QString("%1").arg(conf.getQueue()));
 325.363 +
 325.364 +	lineCONTINIUSUPDATE = new QLineEdit();
 325.365 +	lineCONTINIUSUPDATE->setText(QString("%1").arg(conf.getContiniusUpdate()));
 325.366 +
 325.367 +	lineSTORAGEPATH = new QLineEdit();
 325.368 +	lineSTORAGEPATH->setText(QString("%1").arg(conf.getStoragePath()));
 325.369 +
 325.370 +	lineLOGPATH = new QLineEdit();
 325.371 +	lineLOGPATH->setText(QString("%1").arg(conf.getLogPath()));
 325.372 +
 325.373 +	lineMSGPATH = new QLineEdit();
 325.374 +	lineMSGPATH->setText(QString("%1").arg(conf.getMsgPath()));
 325.375 +
 325.376 +	lineAGEFILENODES = new QLineEdit();
 325.377 +	lineAGEFILENODES->setText(QString("%1").arg(conf.getAgeFileNodes()));
 325.378 +
 325.379 +	lineUSEFILENODES = new QLineEdit();
 325.380 +	lineUSEFILENODES->setText(QString("%1").arg(conf.getUseFileNodes()));
 325.381 +
 325.382 +	lineWRITETOFILETIMER = new QLineEdit();
 325.383 +	lineWRITETOFILETIMER->setText(QString("%1").arg(conf.getWriteToFileTimer()));
 325.384 +
 325.385 +	lineUSEFILEBUNDLES = new QLineEdit();
 325.386 +	lineUSEFILEBUNDLES->setText(QString("%1").arg(conf.getUseFileBundles()));
 325.387 +
 325.388 +	lineLOGGING = new QLineEdit();
 325.389 +	lineLOGGING->setText(QString("%1").arg(conf.getLogOption()));
 325.390 +
 325.391 +	
 325.392 +	lineUSETTL = new QLineEdit();
 325.393 +	lineUSETTL->setText(QString("%1").arg(conf.getUseTTL()));
 325.394 +
 325.395 +	lineTTL = new QLineEdit();
 325.396 +	lineTTL->setText(QString("%1").arg(conf.getTTL()));
 325.397 +
 325.398 +	lineACKS = new QLineEdit();
 325.399 +	lineACKS->setText(QString("%1").arg(conf.getUseACKS()));
 325.400 +
 325.401 +}
 325.402 +
 325.403 +
 325.404 +
 325.405 +
 325.406 +
 325.407 +
 325.408 +void InfoWidget::yellowLedOff()
 325.409 +{
 325.410 +	labelYellow->setPixmap(*yellowOff);
 325.411 +	yellow=false;
 325.412 +	yellowLine->setText("No transmission...");
 325.413 +	yellowTimer->stop();
 325.414 +}
 325.415 +
 325.416 +void InfoWidget::redLedOff()
 325.417 +{
 325.418 +	labelRed->setPixmap(*redOff);
 325.419 +	redLine->setText("No error...");
 325.420 +	redTimer->stop();
 325.421 +}
 325.422 +
 325.423 +
 325.424 +
 325.425 +void InfoWidget::getTraffic(int tr)
 325.426 +{
 325.427 +   trafficSum=+tr;
 325.428 +   yellowLine->setText("Transmitting "+QString("%1").arg(tr)+" bytes...");
 325.429 + 
 325.430 +   yellowTimer->start(YELLOWONTIME);//(tr/MAXRATE)*1000);
 325.431 +   labelYellow->setPixmap(*yellowOn);
 325.432 +}
 325.433 +
 325.434 +//Calculating the transfer speed in GUI
 325.435 +void InfoWidget::calculateTraffic()
 325.436 +{
 325.437 +	trafficRate=(trafficSum)/(1000.0/AVRTIME);
 325.438 +	trafficSum=0;
 325.439 +	speedBar->setValue (trafficRate);
 325.440 +}
 325.441 +
 325.442 +
 325.443 +void InfoWidget::getNewConnection(int c)
 325.444 +{
 325.445 +	greenLine->setText("Connection Nr. "+QString("%1").arg(c)+" created...");
 325.446 +	labelGreen->setPixmap(*greenOn);
 325.447 +}
 325.448 +
 325.449 +
 325.450 +void InfoWidget::getNewConnectionStatus(int c)
 325.451 +{
 325.452 +
 325.453 +
 325.454 +	switch (c)
 325.455 +	{
 325.456 +	case STATE_SYN:		greenLine->setText("HELLO SYN...");break;
 325.457 +	case STATE_SYNACK:	greenLine->setText("HELLO SYNACK...");break;
 325.458 +	case STATE_ACK:		greenLine->setText("HELLO ACK...");break;
 325.459 +	case STATE_DICT:	greenLine->setText("DICTIONARY...");break;
 325.460 +	case STATE_RIB:		greenLine->setText("RUTING INFORMATION BASE...");break;
 325.461 +	case STATE_BOFF:	greenLine->setText("BUNDLE OFFER...");break;
 325.462 +	case STATE_BREQ:	greenLine->setText("BUNDLE REQUEST...");break;
 325.463 +	case STATE_BUNDLE:	greenLine->setText("BUNDLE DATA...");break;
 325.464 +	case STATE_ERROR:	greenLine->setText("ERROR  STATE...");break;
 325.465 +	default:	greenLine->setText("No connection...");labelGreen->setPixmap(*greenOff);break;
 325.466 +	}
 325.467 +}
 325.468 +
 325.469 +void InfoWidget::getRemovedConnection(int c)
 325.470 +{
 325.471 +	redLine->setText("Connection Nr. "+QString("%1").arg(c)+" removed...");
 325.472 +	redTimer->start(REDONTIME);
 325.473 +	labelRed->setPixmap(*redOn);
 325.474 +}
 325.475 +
 325.476 +void InfoWidget::getUsedMemoryStorage(int s)
 325.477 +{
 325.478 +	memoryBar->setValue (s);
 325.479 +}
 325.480 +
 325.481 +void InfoWidget::getUsedFileStorage(int s)
 325.482 +{
 325.483 +	fileBar->setValue (s);
 325.484 +}
 325.485 +
 325.486 +
 325.487 +//Receives a list of active connection and add them to the list
 325.488 +void InfoWidget:: getConnectionList(QList <ConnectionInfo> list)
 325.489 +{
 325.490 +#ifdef PDAGUI
 325.491 +	/* send the connection list to the connection tab */
 325.492 +	emit sendConnectionList(list);
 325.493 +#else
 325.494 +	ConnectionInfo tempNode;
 325.495 +	conTable->clear();
 325.496 +        QStringList horizontalConLabels;
 325.497 +	horizontalConLabels << "ID" << "IP" << "Alive" << "State";
 325.498 +	conTable->setHorizontalHeaderLabels(horizontalConLabels);
 325.499 +	for (int i = 0; i < list.size(); ++i)
 325.500 +	{
 325.501 +		tempNode=list.at(i);
 325.502 +		//Adding ID
 325.503 +		QString text = QString("%1").arg((int)tempNode.id);
 325.504 +		QTableWidgetItem *newItem = new QTableWidgetItem(text);
 325.505 +		conTable->setItem(i, 0, newItem);
 325.506 +		//Adding IP
 325.507 +		text = tempNode.ip.toString();
 325.508 +		newItem = new QTableWidgetItem(text);
 325.509 +		conTable->setItem(i, 1, newItem);
 325.510 +		//Adding Alive variable
 325.511 +		text = QString("%1").arg((int)tempNode.alive);
 325.512 +		newItem = new QTableWidgetItem(text);
 325.513 +		conTable->setItem(i, 2, newItem);
 325.514 +		//Adding State of the TCP Connection
 325.515 +		int x = tempNode.tcpSocket->state();
 325.516 +		text = QString("%1").arg((int)x);
 325.517 +		newItem = new QTableWidgetItem(text);
 325.518 +		conTable->setItem(i, 3, newItem);
 325.519 +	}
 325.520 +#endif //PDAGUI
 325.521 + }
   326.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   326.2 +++ b/x86/x86/2.7/infoWidget.h	Thu Jun 26 17:39:40 2008 +0100
   326.3 @@ -0,0 +1,153 @@
   326.4 +#ifndef INFOWIDGET_H
   326.5 +#define INFOWIDGET_H
   326.6 +#include <QtGui>
   326.7 +#include <QtNetwork>
   326.8 +#include <bundle.h>
   326.9 +#include <nodeManager.h>
  326.10 +#include <neighbourAwareness.h>
  326.11 +
  326.12 +class InfoWidget : public QWidget
  326.13 +{
  326.14 +
  326.15 +	Q_OBJECT
  326.16 +
  326.17 +private:
  326.18 +		
  326.19 +	QLineEdit *label;
  326.20 +
  326.21 +	
  326.22 +public:
  326.23 +	int seq;
  326.24 +	QComboBox *combo;
  326.25 +	QTextBrowser *readText;
  326.26 +	QFileDialog *file;
  326.27 +	QLineEdit *src;
  326.28 +	QLineEdit *dst;
  326.29 +	QLineEdit *opt;
  326.30 +	QTextEdit *line;
  326.31 +	QLineEdit *srcLine;
  326.32 +	QLineEdit *dstLine;
  326.33 +	InfoWidget(NodeManager*,QWidget *parent = 0);
  326.34 +	NodeManager* nodeManager;
  326.35 +	QTimer* timer;
  326.36 +	bool firstTime;
  326.37 +	QListWidget* msgList;
  326.38 +	QDir dir;
  326.39 +	//Status variables
  326.40 +	QProgressBar *memoryBar;
  326.41 +	QProgressBar *fileBar;
  326.42 +	QProgressBar *speedBar;
  326.43 +	QLabel *labelRed;
  326.44 +	QLabel *labelGreen;
  326.45 +	QLabel *labelYellow;
  326.46 +	QLineEdit *greenLine;
  326.47 +	QLineEdit *redLine;
  326.48 +	QLineEdit *yellowLine;
  326.49 +	int trafficSum;
  326.50 +	float trafficRate;
  326.51 +	QTimer *trafficTimer;
  326.52 +	QTimer *yellowTimer;
  326.53 +	QTimer *redTimer;
  326.54 +	QPixmap	*redOn;
  326.55 +	QPixmap	*redOff;
  326.56 +	QPixmap	*yellowOn;
  326.57 +	QPixmap	*yellowOff;
  326.58 +	QPixmap	*greenOn;
  326.59 +	QPixmap	*greenOff;
  326.60 +	bool yellow;
  326.61 +	QTableWidget* conTable;
  326.62 +
  326.63 +	
  326.64 +	//Configuration variables
  326.65 +	int NODEID;
  326.66 +	QString NODENAME;
  326.67 +	QHostAddress NODEIP;
  326.68 +	QHostAddress NODEIP2;
  326.69 +	QHostAddress NODEBROADCAST;
  326.70 +	int BROADCAST;
  326.71 +	int AGINGTIMER;
  326.72 +	float PENCOUNTER;
  326.73 +	float BETA;
  326.74 +	float GAMMA;
  326.75 +	int HELLO;
  326.76 +	int ALIVE;
  326.77 +	int HELLOTIMER;
  326.78 +	int INITIATORTIMER;
  326.79 +	int LISTENERTIMER;
  326.80 +	QHostAddress DTNHOSTNAME;
  326.81 +	int DNTTIMER;
  326.82 +	int STORAGESIZE;
  326.83 +	int MEMORYSIZE;
  326.84 +	int ROUTING;
  326.85 +	int QUEUE;
  326.86 +	int CONTINIUSUPDATE;
  326.87 +	QString STORAGEPATH;
  326.88 +	QString LOGPATH;
  326.89 +	QString MSGPATH;
  326.90 +	int AGEFILENODES;
  326.91 +	int USEFILENODES;
  326.92 +	int WRITETOFILETIMER;
  326.93 +	int USEFILEBUNDLES;
  326.94 +	int LOGGING;
  326.95 +
  326.96 +
  326.97 +	QLineEdit * lineNODEID;
  326.98 +	QLineEdit * lineNODENAME;
  326.99 +	QLineEdit * lineNODEIP;
 326.100 +	QLineEdit * lineNODEIP2;
 326.101 +	QLineEdit * lineNODEBROADCAST;
 326.102 +	QLineEdit * lineBROADCAST;
 326.103 +	QLineEdit * lineAGINGTIMER;
 326.104 +	QLineEdit * linePENCOUNTER;
 326.105 +	QLineEdit * lineBETA;
 326.106 +	QLineEdit * lineGAMMA;
 326.107 +	QLineEdit * lineHELLO;
 326.108 +	QLineEdit * lineALIVE;
 326.109 +	QLineEdit * lineHELLOTIMER;
 326.110 +	QLineEdit * lineINITIATORTIMER;
 326.111 +	QLineEdit * lineLISTENERTIMER;
 326.112 +	QLineEdit * lineDTNHOSTNAME;
 326.113 +	QLineEdit * lineDNTTIMER;
 326.114 +	QLineEdit * lineSTORAGESIZE;
 326.115 +	QLineEdit * lineMEMORYSIZE;
 326.116 +	QLineEdit * lineROUTING;
 326.117 +	QLineEdit * lineQUEUE;
 326.118 +	QLineEdit * lineCONTINIUSUPDATE;
 326.119 +	QLineEdit * lineSTORAGEPATH;
 326.120 +	QLineEdit * lineLOGPATH;
 326.121 +	QLineEdit * lineMSGPATH;
 326.122 +	QLineEdit * lineAGEFILENODES;
 326.123 +	QLineEdit * lineUSEFILENODES;
 326.124 +	QLineEdit * lineWRITETOFILETIMER;
 326.125 +	QLineEdit * lineUSEFILEBUNDLES;
 326.126 +	QLineEdit * lineLOGGING;
 326.127 +	QLineEdit * lineUSETTL;
 326.128 +	QLineEdit * lineTTL;
 326.129 +	QLineEdit * lineACKS;
 326.130 +
 326.131 +
 326.132 +
 326.133 +
 326.134 +signals:
 326.135 +	void sendConnectionList(QList <ConnectionInfo>);
 326.136 +
 326.137 +public slots:
 326.138 +	void loadConfiguration();
 326.139 +	void calculateTraffic();
 326.140 +	void yellowLedOff();	
 326.141 +	void redLedOff();
 326.142 +
 326.143 +	void getTraffic(int);
 326.144 +	void getConnectionList(QList <ConnectionInfo>);
 326.145 +	void getNewConnection(int);
 326.146 +	void getNewConnectionStatus(int);
 326.147 +	void getRemovedConnection(int);
 326.148 +	void getUsedFileStorage(int);
 326.149 +	void getUsedMemoryStorage(int);
 326.150 +
 326.151 +
 326.152 +};
 326.153 +
 326.154 +#endif
 326.155 +
 326.156 +
   327.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   327.2 +++ b/x86/x86/2.7/main.cpp	Thu Jun 26 17:39:40 2008 +0100
   327.3 @@ -0,0 +1,75 @@
   327.4 +#ifdef GUI
   327.5 +#include <QtGui>
   327.6 +#include <debugWidget.h>
   327.7 +#endif /*GUI*/
   327.8 +#include <QtCore>
   327.9 +#include <neighbourAwareness.h>
  327.10 +#ifdef DTN_INTERFACE
  327.11 +#include <DTNInterface.h>
  327.12 +#endif /*DTN_INTERFACE*/
  327.13 +#include <messageFile.h>
  327.14 +#include <readFile.h>
  327.15 +
  327.16 +using namespace std;
  327.17 +
  327.18 +
  327.19 +int main(int argc, char *argv[])
  327.20 +{
  327.21 +#ifdef GUI
  327.22 +	QApplication app(argc, argv);
  327.23 +#else
  327.24 +	QCoreApplication app(argc, argv);
  327.25 +#endif /*GUI*/
  327.26 +	ReadFile* conf;
  327.27 +	conf = new ReadFile;
  327.28 +	//Prepare Log File
  327.29 +	if(conf->getLogOption()==1)
  327.30 +	{
  327.31 +		MessageFile *log;
  327.32 +		log = new MessageFile;
  327.33 +		log->set("startup.log", 1000000, 5);
  327.34 +		log->addLog(0,(QString)"Starting Prophet!");
  327.35 +	}
  327.36 +
  327.37 +	//Create bundle manager
  327.38 +	BundleManager* mainBundleMananger = new BundleManager(conf->getNodeId());
  327.39 +	//Create node manager
  327.40 +	NodeManager* mainNodeManager = new NodeManager();
  327.41 +	//Neighbor Awarness
  327.42 +	NeighAware* neighbourawareness = new NeighAware(mainBundleMananger,mainNodeManager);
  327.43 +#ifdef DTN_INTERFACE
  327.44 +	//Create DTN interface
  327.45 +	DTNInterface* mainDTNInterface = new DTNInterface(mainBundleMananger,mainNodeManager);
  327.46 +#endif /*DTN_INTERFACE*/
  327.47 +#ifdef GUI
  327.48 +	//Create debug
  327.49 +	DebugWidget* debugWidget = new DebugWidget(mainNodeManager,mainBundleMananger);
  327.50 +	debugWidget->show();
  327.51 +	//Connect Bundle manager, Node manager and Debug widget
  327.52 +	debugWidget->connect(mainBundleMananger,SIGNAL(sendDebugBundleList(QList<Bundle>)),debugWidget,SLOT(getBundleList(QList<Bundle>)));
  327.53 +	debugWidget->connect(debugWidget,SIGNAL(sendAppBundle(Bundle)),mainBundleMananger,SLOT(addBundle(Bundle)));
  327.54 +	debugWidget->connect(mainBundleMananger,SIGNAL(sendFileStorage(int)),debugWidget,SLOT(getUsedFileStorage(int)));
  327.55 +	debugWidget->connect(mainBundleMananger,SIGNAL(sendMemoryStorage(int)),debugWidget,SLOT(getUsedMemoryStorage(int)));
  327.56 +	debugWidget->connect(debugWidget,SIGNAL(removeBundle(int)),mainBundleMananger,SLOT(removeBundle(int)));
  327.57 +	debugWidget->connect(debugWidget,SIGNAL(removeAllBundles()),mainBundleMananger,SLOT(removeAllBundles()));
  327.58 +	//Updating bundle destinations
  327.59 +	debugWidget->connect(mainNodeManager,SIGNAL(updatedNodeList(NodeManager*)),mainBundleMananger,SLOT(updateBundlesDestinations(NodeManager*)));
  327.60 +#ifdef DTN_INTERFACE
  327.61 +	//Connect DTN Inteface and Debug widget
  327.62 +	debugWidget->connect(mainDTNInterface,SIGNAL(sendLog(QString)),debugWidget,SLOT(getLog(QString)));
  327.63 +	mainDTNInterface->connect(mainDTNInterface,SIGNAL(sendBundle(Bundle)),mainBundleMananger,SLOT(addBundle(Bundle)));
  327.64 +	mainDTNInterface->connect(mainBundleMananger,SIGNAL(sendDeliveredBundle(Bundle)),mainDTNInterface,SLOT(receiveBundle(Bundle)));
  327.65 +#endif /*DTN_INTERFACE*/
  327.66 +	//Connect Node manager and Debug widget
  327.67 +	debugWidget->connect(mainNodeManager,SIGNAL(sendDebugNodeList(QList<Node>)),debugWidget,SLOT(getNodeList(QList<Node>)));
  327.68 +	debugWidget->connect(neighbourawareness,SIGNAL(sendDebugConList(QList<ConnectionInfo>)),debugWidget,SLOT(getConnectionList(QList<ConnectionInfo>)));
  327.69 +	debugWidget->connect(neighbourawareness,SIGNAL(traffic(int)),debugWidget,SLOT(getTraffic(int)));
  327.70 +	debugWidget->connect(neighbourawareness, SIGNAL(newConnectionStatus(int)), 	debugWidget, SLOT(getNewConnectionStatus(int)));
  327.71 +	debugWidget->connect(neighbourawareness, SIGNAL(newConnection(int)), 	debugWidget, SLOT(getNewConnection(int)));
  327.72 +	debugWidget->connect(neighbourawareness, SIGNAL(removedConnection(int)), debugWidget, SLOT(getRemovedConnection(int)));
  327.73 +#endif /*GUI*/
  327.74 +	delete conf;
  327.75 +	app.exec();
  327.76 +	return 0;
  327.77 +
  327.78 +}
   328.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   328.2 +++ b/x86/x86/2.7/main.h	Thu Jun 26 17:39:40 2008 +0100
   328.3 @@ -0,0 +1,2 @@
   328.4 +#include <QtGui>
   328.5 +
   329.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   329.2 +++ b/x86/x86/2.7/messageFile.cpp	Thu Jun 26 17:39:40 2008 +0100
   329.3 @@ -0,0 +1,135 @@
   329.4 +#include <messageFile.h>
   329.5 +#include <readFile.h>
   329.6 +
   329.7 +#ifdef Q_WS_X11
   329.8 +#include <sys/types.h>
   329.9 +#include <sys/stat.h> 
  329.10 +#endif
  329.11 +
  329.12 +#include <QTextStream>
  329.13 +
  329.14 +void MessageFile::set(QString fileName, int fileSize, int fileNo)
  329.15 +{
  329.16 +	msgFileName = fileName;
  329.17 +	msgFileSize = fileSize;
  329.18 +	msgFileNo = fileNo;
  329.19 +	mutex = new QMutex;
  329.20 +	dt = new QDateTime;
  329.21 +	ReadFile conf;
  329.22 +	storagePath=conf.getLogPath();
  329.23 +	dir.setPath(storagePath);
  329.24 +	//create the directory if it does not exist
  329.25 +	if(!dir.exists())
  329.26 +		dir.mkpath(dir.path());
  329.27 +
  329.28 +}
  329.29 +
  329.30 +
  329.31 +void MessageFile::saveMessage(QString& message)
  329.32 +{
  329.33 +	saveMessage(message, false);
  329.34 +}
  329.35 +
  329.36 +void MessageFile::saveMessage(QString& message, bool datetime)
  329.37 +{
  329.38 +	QString dateTime;
  329.39 +	if (datetime == true)
  329.40 +	{
  329.41 +		mutex->lock();
  329.42 +		(*dt) = dt->currentDateTime();
  329.43 +		dateTime = dt->toString("MM/dd/yyyy hh:mm:ss.zzz ");
  329.44 +		mutex->unlock();
  329.45 +	}
  329.46 +	dateTime += message;
  329.47 +	saveMessage(0, dateTime);
  329.48 +
  329.49 +}
  329.50 +
  329.51 +
  329.52 +void MessageFile::saveMessage(int type, QString& message)
  329.53 +{
  329.54 +//	qDebug(message);
  329.55 +	mutex->lock();
  329.56 +	int i = 0;
  329.57 +	bool exists;
  329.58 +	QFile* f;
  329.59 +	f = new QFile(dir.filePath(msgFileName));
  329.60 +	exists = f->exists();
  329.61 +	if (f->open(QIODevice::WriteOnly|QIODevice::Append) == true)
  329.62 +	{
  329.63 +		QTextStream stream(f);
  329.64 +		stream << message;
  329.65 +		stream << "\r\n";
  329.66 +		i = f->size();
  329.67 +//		qDebug(QString("MessageFile size: %1 %2\r\n").arg(i).arg(msgFileSize));
  329.68 +		f->close();
  329.69 +#ifdef Q_WS_X11
  329.70 +		if (exists == false)
  329.71 +			chmod(msgFileName.toAscii(), S_IROTH|S_IWOTH|S_IRGRP|S_IWGRP|S_IRUSR|S_IWUSR);
  329.72 +#endif
  329.73 +	}
  329.74 +	delete f;
  329.75 +	if (i > msgFileSize)
  329.76 +	{
  329.77 +		QDir dir;
  329.78 +		QString fileNameOld;
  329.79 +		QString fileNameNew;
  329.80 +		i = msgFileNo;
  329.81 +		while (i > 1)
  329.82 +		{
  329.83 +			fileNameOld = msgFileName;
  329.84 +			fileNameOld += QString(".%1").arg(i);
  329.85 +			dir.remove(fileNameOld);
  329.86 +			i--;
  329.87 +			fileNameNew = msgFileName;
  329.88 +			fileNameNew += QString(".%1").arg(i);
  329.89 +			dir.rename(fileNameNew, fileNameOld);
  329.90 +		}
  329.91 +		fileNameOld = msgFileName;
  329.92 +		fileNameOld += QString(".%1").arg(i);
  329.93 +		dir.remove(fileNameOld);
  329.94 +		i--;
  329.95 +		fileNameNew = msgFileName;
  329.96 +		dir.rename(fileNameNew, fileNameOld);
  329.97 +	}
  329.98 +	mutex->unlock();
  329.99 +}
 329.100 +
 329.101 +void MessageFile::loadList(QStringList& sl, unsigned int maxItemNo)
 329.102 +{
 329.103 +	mutex->lock();
 329.104 +	sl.clear();
 329.105 +	QString line;
 329.106 +	QFile* f;
 329.107 +	f = new QFile(msgFileName);
 329.108 +	if (f->open(QIODevice::ReadOnly) == true)
 329.109 +	{
 329.110 +		QTextStream stream(f);
 329.111 +		while ((!stream.atEnd()) && (maxItemNo > 0))
 329.112 +		{
 329.113 +			sl.prepend(stream.readLine());
 329.114 +			maxItemNo--;
 329.115 +		}
 329.116 +		f->close();
 329.117 +	}
 329.118 +	mutex->unlock();
 329.119 +}
 329.120 +
 329.121 +void MessageFile::addLog(int indet,QString message)
 329.122 +{
 329.123 +	QString dateTime;
 329.124 +	QString id;
 329.125 +	id.sprintf(" %03d>> ", indet);
 329.126 +	if (1)
 329.127 +	{
 329.128 +		mutex->lock();
 329.129 +		(*dt) = dt->currentDateTime();
 329.130 +		dateTime = dt->toString("MM/dd/yyyy hh:mm:ss.zzz ");
 329.131 +		mutex->unlock();
 329.132 +	}
 329.133 +	dateTime += id;
 329.134 +	dateTime += message;
 329.135 +	saveMessage(0, dateTime);
 329.136 +
 329.137 +}
 329.138 +
   330.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   330.2 +++ b/x86/x86/2.7/messageFile.h	Thu Jun 26 17:39:40 2008 +0100
   330.3 @@ -0,0 +1,69 @@
   330.4 +#ifndef MESSAGEFILE_H
   330.5 +#define MESSAGEFILE_H
   330.6 +
   330.7 +#include <qobject.h>
   330.8 +#include <qfile.h>
   330.9 +#include <qdir.h>
  330.10 +#include <qmutex.h>
  330.11 +#include <qstringlist.h>
  330.12 +#include <qdatetime.h>
  330.13 +
  330.14 +//! Handles writing and reading logfiles.
  330.15 +/*!
  330.16 + * 
  330.17 + */
  330.18 +class MessageFile : public QObject
  330.19 +{
  330.20 +	Q_OBJECT
  330.21 +
  330.22 +public:
  330.23 +	//! Sets the parameters for message file storage.
  330.24 +	/*!
  330.25 +	 * @param fileName the name of the file(s) to store messages in.
  330.26 +	 * @param fileSize when a message file grows to this size, a new file 
  330.27 +	 * is created.
  330.28 +	 * @param fileNo the value the file number counter should be 
  330.29 +	 * initialized to.
  330.30 +	 */
  330.31 +	virtual void set(QString fileName, int fileSize, int fileNo);
  330.32 +	
  330.33 +	//! Reads a list of messages from the message file.
  330.34 +	/*!
  330.35 +	 * @param sl the stringlist where the result is put.
  330.36 +	 * @param maxItemNo the maximum number of items to read from the file.
  330.37 +	 */
  330.38 +	virtual void loadList(QStringList& sl, unsigned int maxItemNo = 0xFFFFFFFF);
  330.39 +	void MessageFile::addLog(int indet,QString message);
  330.40 +
  330.41 +public slots:
  330.42 +	//! Saves a message to file. (Internal?) 
  330.43 +	/*!
  330.44 +	 * A new file is created if the old one gets too big.
  330.45 +	 * @param type not used.
  330.46 +	 * @param message the message to be saved to file.
  330.47 +	 */
  330.48 +	virtual void saveMessage(int type, QString& message);
  330.49 +	
  330.50 +	//! Saves a message to file without a timestamp.
  330.51 +	virtual void saveMessage(QString& message);
  330.52 +	
  330.53 +	//! Saves a message to disk with optional timestamp.
  330.54 +	/*!
  330.55 +	 * @param message the message to save to file.
  330.56 +	 * @param datetime if true the current date and time (MM/dd/yyyy 
  330.57 +	 * hh:mm:ss:zzz) will be written along with the message. If false, 
  330.58 +	 * no timestamp is written to file along with the message.
  330.59 +	 */
  330.60 +	virtual void saveMessage(QString& message, bool datetime);
  330.61 +
  330.62 +protected:
  330.63 +	QString msgFileName;
  330.64 +	int msgFileSize;
  330.65 +	int msgFileNo;
  330.66 +	QMutex* mutex;
  330.67 +	QDateTime* dt;
  330.68 +	QString storagePath;
  330.69 +	QDir dir;
  330.70 +};
  330.71 +
  330.72 +#endif
   331.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   331.2 +++ b/x86/x86/2.7/msgReadWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   331.3 @@ -0,0 +1,113 @@
   331.4 +#include <QtGui>
   331.5 +#include <msgReadWidget.h>
   331.6 +#include <readFile.h>
   331.7 +
   331.8 +
   331.9 +
  331.10 +MsgReadWidget::MsgReadWidget(NodeManager* nodeMng,BundleManager* bundleMng,QWidget *parent)
  331.11 +        : QWidget(parent)
  331.12 +{
  331.13 +	nodeManager = nodeMng;
  331.14 +	bundleManager = bundleMng;
  331.15 +
  331.16 +	dst = new QLineEdit();
  331.17 +	dst->setMaxLength(3); 
  331.18 +	//Options
  331.19 +	QLabel *labelOpt = new QLabel(this);
  331.20 +    labelOpt->setText("Received messages:");
  331.21 +	opt = new QLineEdit();
  331.22 +	opt->setMaxLength(3); 
  331.23 +	//sourceString
  331.24 +	QLabel *srcStr = new QLabel(this);
  331.25 +    srcStr->setText("Content:");
  331.26 +	srcLine = new QLineEdit();
  331.27 +	//destinationString
  331.28 +//	QLabel *dstStr = new QLabel(this);
  331.29 +   // dstStr->setText("DestinationString");
  331.30 +	dstLine = new QLineEdit();
  331.31 +	
  331.32 +	//sendGroup->addWidget(dst, 1, 1);
  331.33 +	//sendGroup->addWidget(combo, 2, 1);
  331.34 +
  331.35 +	//sendGroup->addWidget(labelDst, 0, 1);
  331.36 +	//sendGroup->addWidget(dstLine, 3, 1);
  331.37 +
  331.38 +	//sendGroup->addWidget(labelOpt, 0, 2);
  331.39 +	//sendGroup->addWidget(opt, 1, 2);
  331.40 +
  331.41 +	//sendGroup->addWidget(labelMsg, 4, 0);
  331.42 + 	//sendGroup->addWidget(line, 5, 0, 1, 3);
  331.43 +    //sendGroup->addWidget(send, 3, 2);
  331.44 +	 //   sendGroup->addWidget(file, 6, 2);
  331.45 +	///////////////////////////////////////////////////
  331.46 +	readText = new QTextBrowser(this);
  331.47 +	msgList = new QListWidget;
  331.48 +	//Define final layout
  331.49 +	QVBoxLayout *layout = new QVBoxLayout;
  331.50 +	layout->addWidget(labelOpt);
  331.51 +	layout->addWidget(msgList);
  331.52 +	layout->addWidget(srcStr);
  331.53 +	layout->addWidget(readText);
  331.54 +    setLayout(layout);
  331.55 +	//Define connections
  331.56 +//	connect(line, SIGNAL(returnPressed ()(QString)),label,SLOT(setText(QString)));
  331.57 +	//Prepare update timer
  331.58 +	timer = new QTimer();
  331.59 +	connect(timer, SIGNAL(timeout()), this, SLOT(updateLists()));
  331.60 +	connect(msgList, SIGNAL(itemClicked (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
  331.61 +	connect(msgList, SIGNAL(itemDoubleClicked  (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
  331.62 +
  331.63 +
  331.64 +	timer->start(5000);
  331.65 +	firstTime=0;
  331.66 +	ReadFile conf;
  331.67 +	ackOption=conf.getUseACKS();
  331.68 +	QString msgPath=conf.getMsgPath();
  331.69 +	dir.setPath(msgPath);
  331.70 +	//create the dir if it does not exist
  331.71 +	if(!dir.exists())
  331.72 +		dir.mkpath(dir.path());
  331.73 +	sourceId =conf.getNodeId();
  331.74 +	sourceStr = conf.getNodeName();
  331.75 +
  331.76 +}
  331.77 +
  331.78 +void MsgReadWidget::getBundle(Bundle newBundle)
  331.79 +{
  331.80 +	label->setText(newBundle.getData());
  331.81 +}
  331.82 +
  331.83 +void MsgReadWidget::updateLists()
  331.84 +{
  331.85 +	QList<QString> list;
  331.86 +	list = dir.entryList();
  331.87 +	msgList->clear();
  331.88 +	for (ushort i = 0; i < list.size(); ++i) 
  331.89 +	{
  331.90 +		QListWidgetItem *newItem = new QListWidgetItem;
  331.91 +		newItem->setText(list.at(i));
  331.92 +		msgList->insertItem(i, newItem);
  331.93 +	}
  331.94 +}
  331.95 +
  331.96 +void MsgReadWidget::showMsg(QListWidgetItem * item)
  331.97 +{
  331.98 +	QString fileName;
  331.99 +	if(item!=NULL)
 331.100 +	{
 331.101 +		fileName = item->text();
 331.102 +		if(fileName.size()>2)
 331.103 +		{
 331.104 +			QFile file(dir.filePath(fileName));
 331.105 +			if(file.open(QIODevice::ReadOnly))
 331.106 +			{
 331.107 +				QByteArray data;
 331.108 +				data=file.readAll();
 331.109 +				readText->clear();
 331.110 +				readText->insertPlainText(data);
 331.111 +				file.close();
 331.112 +			}
 331.113 +		}
 331.114 +	}
 331.115 +}
 331.116 +
   332.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   332.2 +++ b/x86/x86/2.7/msgReadWidget.h	Thu Jun 26 17:39:40 2008 +0100
   332.3 @@ -0,0 +1,49 @@
   332.4 +#ifndef MSGREADWIDGET_H
   332.5 +#define MSGREADWIDGET_H
   332.6 +#include <QtGui>
   332.7 +#include <bundle.h>
   332.8 +#include <nodeManager.h>
   332.9 +#include <bundleManager.h>
  332.10 +
  332.11 +class MsgReadWidget : public QWidget
  332.12 +{
  332.13 +
  332.14 +	Q_OBJECT
  332.15 +
  332.16 +private:
  332.17 +		
  332.18 +	QLineEdit *label;
  332.19 +
  332.20 +	
  332.21 +public:
  332.22 +	QComboBox *combo;
  332.23 +	QTextBrowser *readText;
  332.24 +	QFileDialog *file;
  332.25 +	QLineEdit *src;
  332.26 +	QLineEdit *dst;
  332.27 +	QLineEdit *opt;
  332.28 +	QTextEdit *line;
  332.29 +	QLineEdit *srcLine;
  332.30 +	QLineEdit *dstLine;
  332.31 +	MsgReadWidget(NodeManager*,BundleManager*,QWidget *parent = 0);
  332.32 +	NodeManager* nodeManager;
  332.33 +	BundleManager* bundleManager;
  332.34 +	QTimer* timer;
  332.35 +	bool firstTime;
  332.36 +	QListWidget* msgList;
  332.37 +	QDir dir;
  332.38 +	int sourceId;
  332.39 +	int ackOption;
  332.40 +	QString sourceStr;
  332.41 +
  332.42 +signals:
  332.43 +	
  332.44 +public slots:
  332.45 +	void getBundle(Bundle newBundle);
  332.46 +	void updateLists();
  332.47 +	void showMsg(QListWidgetItem *);
  332.48 +};
  332.49 +
  332.50 +#endif
  332.51 +
  332.52 +
   333.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   333.2 +++ b/x86/x86/2.7/msgWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   333.3 @@ -0,0 +1,233 @@
   333.4 +#include <QtGui>
   333.5 +#include <msgWidget.h>
   333.6 +#include <readFile.h>
   333.7 +
   333.8 +
   333.9 +
  333.10 +MsgWidget::MsgWidget(NodeManager* nodeMng,BundleManager* bundleMng,QWidget *parent)
  333.11 +        : QWidget(parent)
  333.12 +{
  333.13 +#ifndef PDAGUI
  333.14 +	setFixedSize(990, 660);
  333.15 +#endif //PDAGUI
  333.16 +	nodeManager = nodeMng;
  333.17 +	bundleManager = bundleMng;
  333.18 +	connect(nodeMng,SIGNAL(updatedNodeList(NodeManager*)),this,SLOT(updatedNodeList(NodeManager*)));
  333.19 +
  333.20 +#ifndef PDAGUI
  333.21 +	//Send message group
  333.22 +	QGroupBox *sendBox = new QGroupBox("Send message");
  333.23 +#endif //PDAGUI
  333.24 +    //Source
  333.25 +    QLabel *labelSrc = new QLabel(this);
  333.26 +    labelSrc->setText("Select destination:");
  333.27 +	src = new QLineEdit();
  333.28 +	src->setMaxLength(3); 
  333.29 +	//Destination
  333.30 +	QLabel *labelDst = new QLabel(this);
  333.31 +    labelDst->setText("Send message:");
  333.32 +	combo = new QComboBox(this);
  333.33 +	//Message
  333.34 +	QLabel *labelMsg = new QLabel(this);
  333.35 +    labelMsg->setText("Type message here:");
  333.36 +	line = new QTextEdit();
  333.37 +
  333.38 +#ifndef PDAGUI
  333.39 +	dst = new QLineEdit();
  333.40 +	dst->setMaxLength(3); 
  333.41 +	//Options
  333.42 +	QLabel *labelOpt = new QLabel(this);
  333.43 +    labelOpt->setText("Received messages:");
  333.44 +	opt = new QLineEdit();
  333.45 +	opt->setMaxLength(3); 
  333.46 +	//sourceString
  333.47 +	QLabel *srcStr = new QLabel(this);
  333.48 +    srcStr->setText("Content:");
  333.49 +	srcLine = new QLineEdit();
  333.50 +	//destinationString
  333.51 +	QLabel *dstStr = new QLabel(this);
  333.52 +   // dstStr->setText("DestinationString");
  333.53 +	dstLine = new QLineEdit();
  333.54 +#endif //PDAGUI
  333.55 +	//Send
  333.56 +	QPushButton *send= new QPushButton("Send", this);
  333.57 +	//File
  333.58 +	//QFileDialog *file = new QFileDialog(this);	
  333.59 +	//Final grid layout
  333.60 +    QGridLayout *sendGroup = new QGridLayout;
  333.61 +	sendGroup->addWidget(labelSrc, 0, 0);
  333.62 +    sendGroup->addWidget(combo, 1, 0);
  333.63 +
  333.64 +	sendGroup->addWidget(labelDst, 0, 1);
  333.65 +    sendGroup->addWidget(send, 1, 1);
  333.66 +	sendGroup->addWidget(labelMsg, 2, 0);
  333.67 +	sendGroup->addWidget(line, 3, 0, 1, 2);
  333.68 +
  333.69 +	//sendGroup->addWidget(dst, 1, 1);
  333.70 +	//sendGroup->addWidget(combo, 2, 1);
  333.71 +
  333.72 +	//sendGroup->addWidget(labelDst, 0, 1);
  333.73 +	//sendGroup->addWidget(dstLine, 3, 1);
  333.74 +
  333.75 +	//sendGroup->addWidget(labelOpt, 0, 2);
  333.76 +	//sendGroup->addWidget(opt, 1, 2);
  333.77 +
  333.78 +	//sendGroup->addWidget(labelMsg, 4, 0);
  333.79 + 	//sendGroup->addWidget(line, 5, 0, 1, 3);
  333.80 +    //sendGroup->addWidget(send, 3, 2);
  333.81 +	 //   sendGroup->addWidget(file, 6, 2);
  333.82 +#ifdef PDAGUI
  333.83 +	setLayout(sendGroup);
  333.84 +#else
  333.85 +	sendBox->setFixedSize(450, 620);
  333.86 +	sendBox->setLayout(sendGroup);
  333.87 +#endif //PDAGUI
  333.88 +	///////////////////////////////////////////////////
  333.89 +#ifndef PDAGUI
  333.90 +	QGroupBox *readBox = new QGroupBox("Read message");
  333.91 +	readText = new QTextBrowser(this);
  333.92 +	msgList = new QListWidget;
  333.93 +	//Final grid layout
  333.94 +    QGridLayout *readGroup = new QGridLayout;
  333.95 +	readGroup->addWidget(labelOpt, 0, 0);
  333.96 +	readGroup->addWidget(msgList, 1, 0);
  333.97 +	readGroup->addWidget(srcStr, 2, 0);
  333.98 +	readGroup->addWidget(readText, 3, 0);
  333.99 + 	readBox->setFixedSize(450, 620);
 333.100 +	readBox->setLayout(readGroup);
 333.101 +	Bundle *msg = new Bundle; //is this used for anything???
 333.102 +	//Define final layout
 333.103 +	QVBoxLayout *layout = new QVBoxLayout;
 333.104 +	layout->setDirection(QBoxLayout::LeftToRight);
 333.105 +    layout->addWidget(sendBox);    
 333.106 +    layout->addWidget(readBox);    
 333.107 +    setLayout(layout);
 333.108 +	//Define connections
 333.109 +//	connect(line, SIGNAL(returnPressed ()(QString)),label,SLOT(setText(QString)));
 333.110 +#endif //PDAGUI
 333.111 +	//Prepare update timer
 333.112 +	timer = new QTimer();
 333.113 +#ifndef PDAGUI
 333.114 +	connect(timer, SIGNAL(timeout()), this, SLOT(updateLists()));
 333.115 +	connect(msgList, SIGNAL(itemClicked (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
 333.116 +	connect(msgList, SIGNAL(itemDoubleClicked  (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
 333.117 +#endif //PDAGUI
 333.118 +	connect(nodeManager, SIGNAL(updatedNodeList(NodeManager*)), this, SLOT(updatedNodeList(NodeManager* )));
 333.119 +
 333.120 +	bool b = connect(send,SIGNAL(clicked(void)),this, SLOT(composeBundle(void)) );
 333.121 +
 333.122 +
 333.123 +
 333.124 +	timer->start(5000);
 333.125 +	firstTime=0;
 333.126 +	ReadFile conf;
 333.127 +	ackOption=conf.getUseACKS();
 333.128 +	QString msgPath=conf.getMsgPath();
 333.129 +	dir.setPath(msgPath);
 333.130 +	//create the dir if it does not exist
 333.131 +	if(!dir.exists())
 333.132 +		dir.mkpath(dir.path());
 333.133 +	sourceId =conf.getNodeId();
 333.134 +	sourceStr = conf.getNodeName();
 333.135 +
 333.136 +}
 333.137 +
 333.138 +void MsgWidget::updatedNodeList(NodeManager* ptr)
 333.139 +{
 333.140 +	//First time we update combobox
 333.141 +	QList <Node> nodeList;
 333.142 +	nodeList = nodeManager->getNodeList();
 333.143 +	combo->clear();
 333.144 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 333.145 +	{
 333.146 +			combo->insertItem(i,nodeList.at(i).nodeName);
 333.147 +	}
 333.148 +	firstTime=1;
 333.149 +
 333.150 +}
 333.151 +
 333.152 +
 333.153 +void MsgWidget::getBundle(Bundle newBundle)
 333.154 +{
 333.155 +	label->setText(newBundle.getData());
 333.156 +}
 333.157 +
 333.158 +void MsgWidget::updateLists()
 333.159 +{
 333.160 +	if(firstTime==0)
 333.161 +	{
 333.162 +		//First time we update combobox
 333.163 +		QList <Node> nodeList;
 333.164 +		nodeList = nodeManager->getNodeList();
 333.165 +		combo->clear();
 333.166 +		for (ushort i = 0; i < nodeList.size(); ++i) 
 333.167 +		{
 333.168 +			combo->insertItem(i,nodeList.at(i).nodeName);
 333.169 +		}
 333.170 +		firstTime=1;
 333.171 +	}
 333.172 +#ifndef PDAGUI
 333.173 +	QList<QString> list;
 333.174 +	list = dir.entryList();
 333.175 +	msgList->clear();
 333.176 +	for (ushort i = 0; i < list.size(); ++i) 
 333.177 +	{
 333.178 +		QListWidgetItem *newItem = new QListWidgetItem;
 333.179 +		newItem->setText(list.at(i));
 333.180 +		msgList->insertItem(i, newItem);
 333.181 +	}
 333.182 +#endif //PDAGUI
 333.183 +}
 333.184 +
 333.185 +void MsgWidget::showMsg(QListWidgetItem * item)
 333.186 +{
 333.187 +	QString fileName;
 333.188 +	if(item!=NULL)
 333.189 +	{
 333.190 +	fileName = item->text();
 333.191 +	if(fileName.size()>2)
 333.192 +	{
 333.193 +	
 333.194 +	QFile file(dir.filePath(fileName));
 333.195 +	if(file.open(QIODevice::ReadOnly))
 333.196 +	{
 333.197 +		QByteArray data;
 333.198 +		data=file.readAll();
 333.199 +		readText->clear();
 333.200 +		readText->insertPlainText(data);
 333.201 +		file.close();
 333.202 +	}
 333.203 +	}
 333.204 +}}
 333.205 +
 333.206 +
 333.207 +
 333.208 +
 333.209 +
 333.210 +void MsgWidget::composeBundle()
 333.211 +{
 333.212 +	Bundle newBundle;
 333.213 +	QString stringData;// = line->text();
 333.214 +	QByteArray data = line->toPlainText().toAscii();
 333.215 +	if(combo->count()>0)
 333.216 +	{
 333.217 +
 333.218 +		int dstId=nodeManager->nodeList.at(combo->currentIndex()).nodeId;
 333.219 +		QString dstStr = combo->itemText(combo->currentIndex()); 
 333.220 +		int option;
 333.221 +		option=0x04;
 333.222 +		//If acking is enabled
 333.223 +		if(ackOption==1)
 333.224 +		{
 333.225 +			//We set the ACKOption bit and set the ACK bit 
 333.226 +			option=option|0x01;
 333.227 +		}
 333.228 +		newBundle.setContent(bundleManager->getSeq(),sourceId,dstId,data,option,sourceStr.toAscii(),dstStr.toAscii());
 333.229 +		emit sendBundle(newBundle);
 333.230 +		 QMessageBox::information(this, "PRoPHET notSoIM",
 333.231 +		"Message sent!\n");
 333.232 +	}
 333.233 +
 333.234 +}
 333.235 +
 333.236 +
   334.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   334.2 +++ b/x86/x86/2.7/msgWidget.h	Thu Jun 26 17:39:40 2008 +0100
   334.3 @@ -0,0 +1,52 @@
   334.4 +#ifndef MSGWIDGET_H
   334.5 +#define MSGWIDGET_H
   334.6 +#include <QtGui>
   334.7 +#include <bundle.h>
   334.8 +#include <nodeManager.h>
   334.9 +#include <bundleManager.h>
  334.10 +
  334.11 +class MsgWidget : public QWidget
  334.12 +{
  334.13 +
  334.14 +	Q_OBJECT
  334.15 +
  334.16 +private:
  334.17 +		
  334.18 +	QLineEdit *label;
  334.19 +
  334.20 +	
  334.21 +public:
  334.22 +	QComboBox *combo;
  334.23 +	QTextBrowser *readText;
  334.24 +	QFileDialog *file;
  334.25 +	QLineEdit *src;
  334.26 +	QLineEdit *dst;
  334.27 +	QLineEdit *opt;
  334.28 +	QTextEdit *line;
  334.29 +	QLineEdit *srcLine;
  334.30 +	QLineEdit *dstLine;
  334.31 +	MsgWidget(NodeManager*,BundleManager*,QWidget *parent = 0);
  334.32 +	NodeManager* nodeManager;
  334.33 +	BundleManager* bundleManager;
  334.34 +	QTimer* timer;
  334.35 +	bool firstTime;
  334.36 +	QListWidget* msgList;
  334.37 +	QDir dir;
  334.38 +	int sourceId;
  334.39 +	int ackOption;
  334.40 +	QString sourceStr;
  334.41 +
  334.42 +signals:
  334.43 +	void sendBundle(Bundle);
  334.44 +	
  334.45 +public slots:
  334.46 +        void composeBundle();
  334.47 +	void getBundle(Bundle newBundle);
  334.48 +	void updateLists();
  334.49 +	void updatedNodeList(NodeManager* ptr);
  334.50 +	void showMsg(QListWidgetItem *);
  334.51 +};
  334.52 +
  334.53 +#endif
  334.54 +
  334.55 +
   335.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   335.2 +++ b/x86/x86/2.7/neighbourAwareness.cpp	Thu Jun 26 17:39:40 2008 +0100
   335.3 @@ -0,0 +1,407 @@
   335.4 +#include <QtCore>
   335.5 +#include <QtNetwork>
   335.6 +#include <connection.h>
   335.7 +#include <dataPacket.h>
   335.8 +#include <neighbourAwareness.h>
   335.9 +#include <stdio.h>
  335.10 +#include <readFile.h>
  335.11 +#include <main.h>
  335.12 +#include <messageFile.h>
  335.13 +#ifdef Q_WS_X11
  335.14 +#include <sys/types.h>
  335.15 +#include <sys/stat.h> 
  335.16 +#endif
  335.17 +//extern MessageFile *log;
  335.18 +
  335.19 +#define VERSION 6
  335.20 +#define HELLO_DATAGRAM "PROPHET"
  335.21 +//#define ALIVE 15
  335.22 +#define TERMINATOR "yxxyyaxayax"
  335.23 +#define TERMINATOR2 "zsdfgfdgfdg"
  335.24 +struct DatagramHeader
  335.25 +{
  335.26 +	qint32 version;
  335.27 +	qint32 lenght;
  335.28 +	qint32 checkSum;
  335.29 +	qint32 nr;
  335.30 +};
  335.31 +
  335.32 +ConnectionInfo::ConnectionInfo(QObject *parent)
  335.33 +{
  335.34 +	ReadFile conf;
  335.35 +	alive=conf.getAlive();
  335.36 +	data.clear();
  335.37 +}
  335.38 +
  335.39 +
  335.40 +ConnectionInfo& ConnectionInfo::operator=(const ConnectionInfo& other)
  335.41 +{
  335.42 + id = other.id;
  335.43 + alive = other.alive;
  335.44 + ip = other.ip;
  335.45 + data = other.data;
  335.46 + tcpSocket = other.tcpSocket;
  335.47 + isClient = other.isClient;
  335.48 + conptr= other.conptr;
  335.49 +
  335.50 + return *this;
  335.51 +}
  335.52 +
  335.53 +ConnectionInfo::ConnectionInfo(const ConnectionInfo& other)
  335.54 +{
  335.55 + id = other.id;
  335.56 + alive = other.alive;
  335.57 + ip = other.ip;
  335.58 + data = other.data;
  335.59 + tcpSocket = other.tcpSocket;
  335.60 + isClient = other.isClient;
  335.61 + conptr= other.conptr;
  335.62 +}	
  335.63 +
  335.64 +
  335.65 +NeighAwareServer::NeighAwareServer(QObject* parent) : QTcpServer(parent)
  335.66 +{
  335.67 +}
  335.68 +
  335.69 +void NeighAwareServer::incomingConnection(int socketDescriptor)
  335.70 +{ 
  335.71 +	QTcpSocket* newSocket = new QTcpSocket(this);
  335.72 +	newSocket->setSocketDescriptor(socketDescriptor);
  335.73 +	bool permitNewConnection = false;
  335.74 +	emit newConnectionEstablished(newSocket, permitNewConnection);
  335.75 +	if (permitNewConnection == false)
  335.76 +	{
  335.77 +		newSocket->deleteLater();
  335.78 +		newSocket->disconnectFromHost();
  335.79 +	}
  335.80 +}	
  335.81 +	
  335.82 +
  335.83 +NeighAware::NeighAware(BundleManager* bundleMng, NodeManager* nodeMng)
  335.84 +{
  335.85 +	nodeManager = nodeMng;
  335.86 +	bundleManager = bundleMng;
  335.87 +	terminator.clear();
  335.88 +	terminator.append(TERMINATOR);
  335.89 +	terminator.append(TERMINATOR2);
  335.90 +
  335.91 +	file = new ReadFile;
  335.92 +	myip=file->getNodeIp();
  335.93 +	myip2=file->getNodeIp2();
  335.94 +	broadcast=file->getBroadcast();
  335.95 +	nodeId=file->getNodeId();
  335.96 +	nodeName=file->getNodeName();
  335.97 +	ALIVE=file->getAlive();
  335.98 +	numid = 0;
  335.99 +
 335.100 +
 335.101 +
 335.102 +	tcpServer = new NeighAwareServer(this);
 335.103 +	bool b = connect(tcpServer, SIGNAL(newConnectionEstablished(QTcpSocket*, bool&)), this, SLOT(newConnectionEstablished(QTcpSocket*, bool&)));
 335.104 +	tcpServer->listen(myip,30001);
 335.105 +
 335.106 +	udpSocketp = new QUdpSocket(this);
 335.107 +	udpSocketp->bind(30000);
 335.108 +    connect(udpSocketp, SIGNAL(readyRead()),this, SLOT(processPingDatagrams()));
 335.109 +	
 335.110 +	broadcastTimer = new QTimer(this);
 335.111 +	connect(broadcastTimer, SIGNAL(timeout()), this, SLOT(broadcastDatagram()));
 335.112 +	int timer =file->getBroadcastTimer();
 335.113 +	broadcastTimer->start(timer);
 335.114 +
 335.115 +	//DEBUG
 335.116 +	log = new MessageFile;
 335.117 +	log->set("connections.log", 1000000, 5);
 335.118 +}
 335.119 +
 335.120 +void NeighAware::newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection)
 335.121 +{ 
 335.122 +	QHostAddress ip;
 335.123 +	ip = newSocket->peerAddress();
 335.124 +	QString bla = ip.toString();
 335.125 +	int index=-1;
 335.126 +	for(int i=0;i<connectionlist.size();i++)
 335.127 +	{
 335.128 +		QString bla = ip.toString();
 335.129 +		if(ip == connectionlist.at(i).ip)
 335.130 +			index=i;
 335.131 +	}
 335.132 +	if(index==-1)
 335.133 +	{
 335.134 +		newSocket->connect(newSocket,SIGNAL(readyRead()),this,SLOT(processPendingDatagrams()));
 335.135 +		newSocket->connect(newSocket,SIGNAL(disconnected()),this,SLOT(stateChanged()));
 335.136 +		newSocket->connect(newSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(errorDecode(QAbstractSocket::SocketError)));
 335.137 +		//We add a new connection to the list
 335.138 +		ConnectionInfo connectioninfo;
 335.139 +		//Adding
 335.140 +		connectioninfo.conptr = new Connection(numid,file->getNodeId(),file->getNodeName(),nodeManager,bundleManager,this);
 335.141 +		newSocket->connect(connectioninfo.conptr,SIGNAL(sendDataPacket(DataPacket)),this,SLOT(sendDatagram(DataPacket)));
 335.142 +		newSocket->connect(connectioninfo.conptr,SIGNAL(newConnectionStatus(int)),this,SLOT(getNewConnectionStatus(int)));
 335.143 +
 335.144 +		///
 335.145 +		connectioninfo.ip=ip;
 335.146 +		connectioninfo.id=numid;
 335.147 +		connectioninfo.alive=ALIVE;
 335.148 +		connectioninfo.tcpSocket = newSocket;
 335.149 +		connectioninfo.isClient = false;
 335.150 +
 335.151 +
 335.152 +   			if(connectioninfo.tcpSocket->waitForConnected(500))
 335.153 +			{
 335.154 +			    QHostAddress tmp=connectioninfo.ip;
 335.155 +    			    QString logString;
 335.156 +			    logString.append("New connection(S):");	
 335.157 +			    logString.append(tmp.toString());
 335.158 +			    log->addLog(0,logString);
 335.159 +			    connectionlist << connectioninfo;
 335.160 +				emit newConnection(connectioninfo.id);
 335.161 +			}
 335.162 +			else
 335.163 +			{
 335.164 +			    QHostAddress tmp=connectioninfo.ip;
 335.165 +			    QString logString;
 335.166 +			    logString.append("Drop connection(S):");	
 335.167 +			    logString.append(tmp.toString());
 335.168 +			    log->addLog(0,logString);
 335.169 +			    delete connectioninfo.conptr;
 335.170 +			    delete connectioninfo.tcpSocket;
 335.171 +			}
 335.172 +
 335.173 +		
 335.174 +		numid++;
 335.175 +		permitNewConnection=true;
 335.176 +		sendDebugConList(connectionlist);
 335.177 +	}
 335.178 +}
 335.179 +
 335.180 +void NeighAware::broadcastDatagram()
 335.181 +{  	
 335.182 +	QByteArray datagram=HELLO_DATAGRAM;
 335.183 +	QString debug = broadcast.toString();
 335.184 + 	udpSocketp->writeDatagram(datagram.data(), datagram.size(), broadcast, 30000);
 335.185 +	emit traffic(datagram.size());
 335.186 +	for(int i=0;i<connectionlist.count();i++)
 335.187 +	{
 335.188 +		connectionlist[i].alive--;
 335.189 +		if(connectionlist[i].alive<=0)
 335.190 +		{
 335.191 +			
 335.192 +			connectionlist[i].tcpSocket->disconnectFromHost();
 335.193 +			emit removedConnection(connectionlist[i].id);
 335.194 +			delete connectionlist[i].tcpSocket;
 335.195 +			delete connectionlist[i].conptr;
 335.196 +			//Emiting removed connection to GUI
 335.197 +			emit removedConnection(connectionlist[i].id);
 335.198 +			connectionlist.removeAt(i);	
 335.199 +			//Emiting empty list to GUI
 335.200 +			if(connectionlist.size()==0)
 335.201 +				emit newConnectionStatus(0);
 335.202 +			sendDebugConList(connectionlist);
 335.203 +		}
 335.204 +		sendDebugConList(connectionlist);
 335.205 +	}
 335.206 +	QFile f("connections.txt");
 335.207 +	if (f.open(QIODevice::WriteOnly) == true)
 335.208 +	{
 335.209 +		for(int i=0;i<connectionlist.size();i++)
 335.210 +		{
 335.211 +			f.write(connectionlist[i].ip.toString().toAscii());
 335.212 +			if (connectionlist[i].isClient == true)
 335.213 +				f.write(QString("\tclient\r\n").toAscii());
 335.214 +			else
 335.215 +				f.write(QString("\tserver\r\n").toAscii());
 335.216 +		}
 335.217 +		f.close();
 335.218 +	}
 335.219 +
 335.220 + }
 335.221 +
 335.222 +void NeighAware::processPingDatagrams()
 335.223 +{
 335.224 +	while (udpSocketp->hasPendingDatagrams()) 
 335.225 +	{
 335.226 +        QByteArray datagram;
 335.227 +		
 335.228 +		quint16 port;
 335.229 +		QHostAddress ip;
 335.230 +		bool insert=true;
 335.231 +		datagram.resize(udpSocketp->pendingDatagramSize());
 335.232 +        udpSocketp->readDatagram(datagram.data(), datagram.size(), &ip, &port);
 335.233 +		QString bla = ip.toString();
 335.234 +		//Is the node in the list?
 335.235 +		if ((ip==myip) || (ip==myip2))
 335.236 +		{
 335.237 +			insert=false;
 335.238 +		}
 335.239 +		else
 335.240 +		{
 335.241 +			for(int i=0;i<connectionlist.size();i++)
 335.242 +			{
 335.243 +			 
 335.244 +				if(connectionlist.at(i).ip ==ip)
 335.245 +				{ 
 335.246 +					insert=false;
 335.247 +				}
 335.248 +			}
 335.249 +		}
 335.250 +		//If not we insert it.
 335.251 +		if(insert==true)
 335.252 +		{
 335.253 +			QTcpSocket* newSocket = new QTcpSocket(this);
 335.254 +			newSocket->connect(newSocket,SIGNAL(readyRead()),this,SLOT(processPendingDatagrams()));
 335.255 +			newSocket->connect(newSocket,SIGNAL(disconnected()),this,SLOT(stateChanged()));
 335.256 +			newSocket->connect(newSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(errorDecode(QAbstractSocket::SocketError)));
 335.257 +			newSocket->connectToHost(ip, 30001);
 335.258 +			//We add a new connection to the list
 335.259 +			ConnectionInfo connectioninfo;
 335.260 +			//Adding
 335.261 +			connectioninfo.conptr = new Connection(numid,file->getNodeId(),file->getNodeName(),nodeManager,bundleManager,this);
 335.262 +			newSocket->connect(connectioninfo.conptr,SIGNAL(sendDataPacket(DataPacket)),this,SLOT(sendDatagram(DataPacket)));
 335.263 +			newSocket->connect(connectioninfo.conptr,SIGNAL(newConnectionStatus(int)),this,SLOT(getNewConnectionStatus(int)));
 335.264 +
 335.265 +			///
 335.266 +			connectioninfo.ip=ip;
 335.267 +			connectioninfo.id=numid;
 335.268 +			connectioninfo.alive=ALIVE;
 335.269 +			connectioninfo.tcpSocket = newSocket;
 335.270 +			connectioninfo.isClient = true;
 335.271 +
 335.272 +			
 335.273 +    			if(connectioninfo.tcpSocket->waitForConnected(500))
 335.274 +			{
 335.275 +			    QHostAddress tmp=connectioninfo.ip;
 335.276 +    			    QString logString;
 335.277 +			    logString.append("New connection(C):");	
 335.278 +			    logString.append(tmp.toString());
 335.279 +			    log->addLog(0,logString);
 335.280 +				emit newConnection(connectioninfo.id);
 335.281 +			    connectionlist << connectioninfo;
 335.282 +			}
 335.283 +			else
 335.284 +			{
 335.285 +			    QHostAddress tmp=connectioninfo.ip;
 335.286 +			    QString logString;
 335.287 +			    logString.append("Drop connection(C):");	
 335.288 +			    logString.append(tmp.toString());
 335.289 +			    log->addLog(0,logString);
 335.290 +    			    connectioninfo.tcpSocket->disconnectFromHost();
 335.291 +			    delete connectioninfo.conptr;
 335.292 +			    delete connectioninfo.tcpSocket;
 335.293 +			}
 335.294 +			numid++;
 335.295 +			sendDebugConList(connectionlist);
 335.296 +		}
 335.297 +	}
 335.298 +}
 335.299 +
 335.300 +
 335.301 +void NeighAware::sendDatagram(DataPacket datapacket)
 335.302 +{  	
 335.303 +	QHostAddress ip;
 335.304 +	for(int i=0;i<connectionlist.size();i++)
 335.305 +	{
 335.306 +		if(connectionlist.at(i).id==datapacket.id) 
 335.307 +		{
 335.308 +			ip=connectionlist.at(i).ip;
 335.309 +
 335.310 +			//Preparing heder
 335.311 +			QByteArray newDatagram;
 335.312 +			newDatagram.append(datapacket.data);
 335.313 +			//Appending terminator
 335.314 +			newDatagram.append(terminator);
 335.315 +			//Sending datagram 
 335.316 +			connectionlist[i].tcpSocket->write(newDatagram);
 335.317 +			emit traffic(newDatagram.size());
 335.318 +		}
 335.319 +	}
 335.320 +
 335.321 +
 335.322 +}
 335.323 +
 335.324 +
 335.325 +
 335.326 +void NeighAware::stateChanged()
 335.327 +{
 335.328 +	QString logString;
 335.329 +	logString.append(">>>>>>>>>>>>State:");
 335.330 +	log->addLog(0,logString);
 335.331 +
 335.332 +	for(int i=0;i<connectionlist.count();i++)
 335.333 +	{
 335.334 +		if((connectionlist.at(i).tcpSocket->state() != QAbstractSocket::ConnectedState))    
 335.335 +		{
 335.336 +			connectionlist[i].alive=0;
 335.337 +
 335.338 +			sendDebugConList(connectionlist);
 335.339 +		}
 335.340 +	}
 335.341 +}
 335.342 +
 335.343 +void NeighAware::errorDecode(QAbstractSocket::SocketError error)
 335.344 +{
 335.345 +	int i=error;
 335.346 +	QString logString;
 335.347 +	logString.append(QString("Error %1\n\r").arg((int)error).toAscii());
 335.348 +	log->addLog(0,logString);
 335.349 +	
 335.350 +	for(int i=0;i<connectionlist.count();i++)
 335.351 +	{
 335.352 +		if((connectionlist.at(i).tcpSocket->state() != QAbstractSocket::ConnectedState))    
 335.353 +		{
 335.354 +
 335.355 +			connectionlist[i].alive=0;
 335.356 +			sendDebugConList(connectionlist);
 335.357 +		}
 335.358 +	}
 335.359 +
 335.360 +			QFile f("error.txt");
 335.361 +		if (f.open(QIODevice::WriteOnly|QIODevice::Append) == true)
 335.362 +		{
 335.363 +			f.write(QString("Error %1\n\r").arg((int)error).toAscii());
 335.364 +			f.close();
 335.365 +		}
 335.366 +
 335.367 +}
 335.368 +
 335.369 +
 335.370 +
 335.371 +void NeighAware::processPendingDatagrams()
 335.372 +{
 335.373 +	for(int i=0;i<connectionlist.size();i++)
 335.374 +	{
 335.375 +		QByteArray packetPart;
 335.376 +		packetPart=connectionlist[i].tcpSocket->readAll();
 335.377 +		emit traffic(packetPart.size());
 335.378 +		if(packetPart.size()>0)
 335.379 +		{
 335.380 +			//Updating alive variable
 335.381 +			connectionlist[i].alive=ALIVE;
 335.382 +			//We add datagram to data
 335.383 +			connectionlist[i].data.append(packetPart);
 335.384 +			int idx;
 335.385 +			idx = connectionlist[i].data.indexOf(terminator,0);
 335.386 +			while(idx != -1)
 335.387 +			{
 335.388 +				//We remove the terminator
 335.389 +				QByteArray tempData;
 335.390 +				tempData=connectionlist[i].data.mid(0,idx);
 335.391 +				connectionlist[i].data.remove(0,(idx+terminator.size()));
 335.392 +				DataPacket send;
 335.393 +				send.data.append(tempData);
 335.394 +				send.id=connectionlist[i].id;
 335.395 +				connectionlist[i].conptr->receiveDatagram(send);
 335.396 +				idx = connectionlist[i].data.indexOf(terminator,0);
 335.397 +			}
 335.398 +			
 335.399 +		}
 335.400 +	}
 335.401 +}
 335.402 +
 335.403 +void NeighAware::getNewConnectionStatus(int status)
 335.404 +{
 335.405 +	emit newConnectionStatus(status);
 335.406 +}
 335.407 +		
 335.408 +		
 335.409 +
 335.410 +		
   336.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   336.2 +++ b/x86/x86/2.7/neighbourAwareness.h	Thu Jun 26 17:39:40 2008 +0100
   336.3 @@ -0,0 +1,177 @@
   336.4 +#ifndef NEIGHBOURAWARENESS_H
   336.5 +#define NEIGHBOURAWARENESS_H
   336.6 +
   336.7 +//#include <iostream.h>
   336.8 +#include <QtCore>
   336.9 +#include <QtNetwork>
  336.10 +#include <connection.h>
  336.11 +#include <dataPacket.h>
  336.12 +#include <neighbourAwareness.h>
  336.13 +#include <bundleManager.h>
  336.14 +#include <nodeManager.h>
  336.15 +#include <messageFile.h>
  336.16 +#include <readFile.h>
  336.17 +
  336.18 +
  336.19 +/*! \brief This class carries data concerning a certain connection. 
  336.20 + * Instantiated for each connection.
  336.21 + */
  336.22 +class ConnectionInfo : public QObject 
  336.23 +{
  336.24 +	Q_OBJECT
  336.25 +	public:
  336.26 +	ConnectionInfo(QObject *parent = 0);
  336.27 +	ConnectionInfo(const ConnectionInfo& other);
  336.28 +	ConnectionInfo& operator=(const ConnectionInfo& other);
  336.29 +	QHostAddress ip;
  336.30 +	QByteArray data;
  336.31 +	QTcpSocket* tcpSocket;
  336.32 +	QTcpSocket* clientTcpSocket;
  336.33 +	Connection *conptr;
  336.34 +	int alive;
  336.35 +	int id;
  336.36 +	bool isClient;
  336.37 +};
  336.38 +
  336.39 +class NeighAwareServer : public QTcpServer
  336.40 +{
  336.41 +	Q_OBJECT
  336.42 +
  336.43 +public:
  336.44 +	NeighAwareServer(QObject *parent = 0);
  336.45 +
  336.46 +protected slots:
  336.47 +	virtual void incomingConnection(int socketDescripton);
  336.48 +
  336.49 +signals:
  336.50 +	void newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection);
  336.51 +
  336.52 +};
  336.53 +
  336.54 +
  336.55 +/*! \brief This class detects when two nodes meet to initiate communication. 
  336.56 + *
  336.57 + * A ConnectionInfo and the associated Connection object is created for each 
  336.58 + * encounter.
  336.59 + */
  336.60 +class NeighAware : public QObject 
  336.61 +{
  336.62 +
  336.63 +
  336.64 +Q_OBJECT
  336.65 +
  336.66 +public:
  336.67 +
  336.68 +	NeighAware(BundleManager*, NodeManager*);
  336.69 +	NodeManager *nodeManager;
  336.70 +	BundleManager *bundleManager;
  336.71 +
  336.72 +	QList<ConnectionInfo> connectionlist;
  336.73 +   	QByteArray terminator; 	
  336.74 +
  336.75 +	QHostAddress myip;
  336.76 +	QHostAddress myip2;
  336.77 +	QHostAddress broadcast;
  336.78 +	int nodeId;
  336.79 +	QString nodeName;
  336.80 +	int ALIVE;
  336.81 +	int numid;
  336.82 +	ReadFile *file;
  336.83 +
  336.84 +	NeighAwareServer *tcpServer;
  336.85 +	QUdpSocket *udpSocketp;
  336.86 +	QTimer *broadcastTimer;
  336.87 +	QTimer *testTimer;
  336.88 +	MessageFile* log;
  336.89 +
  336.90 +	int logOption;
  336.91 +	
  336.92 +public slots:
  336.93 +	/*!
  336.94 +	 * Expects notification of when new connections are established. It 
  336.95 +	 * sets up the ConnectionInfo and Connection objects, and also connects 
  336.96 +	 * the signals for the new connection. This slot is connected to the 
  336.97 +	 * TcpServer.
  336.98 +	 * @param newSocket the socket of the TCP connection.
  336.99 +	 * @param permitNewConnection this bool will be true if the connection 
 336.100 +	 * was permitted, otherwise false.
 336.101 +	 */
 336.102 +	void newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection);
 336.103 +
 336.104 +   	/*!
 336.105 +	 * Writes any socket errors to the file error.txt.
 336.106 +	 */
 336.107 +	void errorDecode(QAbstractSocket::SocketError);
 336.108 +	
 336.109 +	/*!
 336.110 +	 * Removes items with out of date states from the connectionlist.
 336.111 +	 */
 336.112 +	void stateChanged();
 336.113 +	
 336.114 +	/*!
 336.115 +	 * Broadcasts a HELLO_DATAGRAM on the UDP socket 30000.
 336.116 +	 */
 336.117 +	void broadcastDatagram();
 336.118 +	
 336.119 +	/*!
 336.120 +	 * Sends the specified packet on the TCP socket.
 336.121 +	 */
 336.122 +	void sendDatagram(DataPacket datapacket);
 336.123 +
 336.124 +	/*!
 336.125 +	 * Receives packets from all TCP connections and dispatches them to 
 336.126 +	 * the appropriate Connection object.
 336.127 +	 */
 336.128 +	void processPendingDatagrams();
 336.129 +	
 336.130 +	/*!
 336.131 +	 * Processes all datagrams received on the UDP socket and creates new 
 336.132 +	 * Connection objects if neccessary.
 336.133 +	 */
 336.134 +	void processPingDatagrams();
 336.135 +	
 336.136 +	/*!
 336.137 +	 * Used just to forward new connection state to the GUI
 336.138 +	 */
 336.139 +	void getNewConnectionStatus(int);
 336.140 +signals:
 336.141 +	/*!
 336.142 +	 * Sends a list of ConnectionInfo objects to the GUI to be 
 336.143 +	 * displayed/updated.
 336.144 +	 * @param a QList of ConnectionInfo objects.
 336.145 +	 */
 336.146 +	void sendDebugConList(QList<ConnectionInfo>);
 336.147 +	/*!
 336.148 +	 * Passes a datagram reveived on the network interface to the TLV. Not used.
 336.149 +	 * @param dataPacket the packet that was received.
 336.150 +	 */
 336.151 +	void passDatagram(DataPacket);
 336.152 +	
 336.153 +	/*!
 336.154 +	 * Signals the size of every sent or received datagram. Connected to 
 336.155 +	 * the GUI. Used for transfer speed calculations.
 336.156 +	 * @param size The size of the received or sent datagram.
 336.157 +	 */
 336.158 +	void traffic(int);
 336.159 +
 336.160 +	/*!
 336.161 +	 * Signals that a connection was removed. Connected to GUI.
 336.162 +	 * @param id the id of the connection that was removed.
 336.163 +	 */
 336.164 +	void removedConnection(int);
 336.165 +	
 336.166 +	/*!
 336.167 +	 * Signals that a new connection with another node has been 
 336.168 +	 * established. Connected to GUI.
 336.169 +	 * @param id the id of the new connection.
 336.170 +	 */
 336.171 +	void newConnection(int);
 336.172 +
 336.173 +	/*!
 336.174 +	 * Signals new protocol state in one of the connections
 336.175 +	 */
 336.176 +	void newConnectionStatus(int);
 336.177 +
 336.178 +};
 336.179 +
 336.180 +#endif
   337.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   337.2 +++ b/x86/x86/2.7/node.cpp	Thu Jun 26 17:39:40 2008 +0100
   337.3 @@ -0,0 +1,59 @@
   337.4 +#include <QtCore>
   337.5 +#include <node.h>
   337.6 +
   337.7 +
   337.8 +Node::Node(QObject *parent)
   337.9 +{
  337.10 +			nodeId=0;
  337.11 +			probability=0.0;
  337.12 +			nodeName.clear();
  337.13 +			flag=-1;
  337.14 +}
  337.15 +
  337.16 +Node& Node::operator=(const Node& other)
  337.17 +{
  337.18 + nodeId = other.nodeId;
  337.19 + flag = other.flag;
  337.20 + probability = other.probability;
  337.21 + nodeName = other.nodeName;
  337.22 + return *this;
  337.23 +}
  337.24 +
  337.25 +Node::Node(const Node& other)
  337.26 +{
  337.27 + nodeId = other.nodeId;
  337.28 + flag = other.flag;
  337.29 + probability = other.probability;
  337.30 + nodeName = other.nodeName;
  337.31 +}	
  337.32 +	
  337.33 +void Node::setContent(int id,float pro,int f,QString name)
  337.34 +{
  337.35 +	flag=f;
  337.36 +	nodeId=id;
  337.37 +	probability=pro;
  337.38 +	nodeName=name;
  337.39 +
  337.40 +}
  337.41 +
  337.42 +int Node::getId()
  337.43 +{
  337.44 +	return nodeId;
  337.45 +}
  337.46 +
  337.47 +int Node::getFlag()
  337.48 +{
  337.49 +	
  337.50 +	return flag;
  337.51 +}
  337.52 +
  337.53 +float Node::getProbability()
  337.54 +{
  337.55 +	return probability;
  337.56 +}
  337.57 +
  337.58 +QString Node::getName()
  337.59 +{
  337.60 +	return nodeName;
  337.61 +}
  337.62 +
   338.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   338.2 +++ b/x86/x86/2.7/node.h	Thu Jun 26 17:39:40 2008 +0100
   338.3 @@ -0,0 +1,51 @@
   338.4 +#ifndef NODE_H
   338.5 +#define NODE_H
   338.6 +
   338.7 +#include <QtCore>
   338.8 +
   338.9 +/*! \brief This class contains the attributes regarding a certain node in the 
  338.10 + * network.
  338.11 + */
  338.12 +class Node : public QObject
  338.13 +{
  338.14 +
  338.15 +Q_OBJECT 
  338.16 +	public:
  338.17 +	int nodeId;
  338.18 +	float probability;
  338.19 +	int flag;
  338.20 +	QString nodeName;
  338.21 +
  338.22 +
  338.23 +	Node(QObject *parent = 0);
  338.24 +	Node(const Node& other);
  338.25 +	Node& operator=(const Node& other);
  338.26 +
  338.27 +
  338.28 +	/*!
  338.29 +	 * Sets the attributes of this node.
  338.30 +	 * @param id the id of this node.
  338.31 +	 * @param pro the delivery predictability to this node.
  338.32 +	 * @param f the (RIB?)flags of this node.
  338.33 +	 * <PRE>
  338.34 +	 * Flag bit 0: Relay Node
  338.35 +	 * Flag bit 1: Custody Node
  338.36 +	 * Flag bit 2: Internet GW Node
  338.37 +	 * Flag bit 3-7: Reserved
  338.38 +	 * </PRE>
  338.39 +	 * @param the name of this node
  338.40 +	 */
  338.41 +	void setContent(int,float,int,QString);
  338.42 +
  338.43 +	//! Returns the id if this node
  338.44 +	int getId();
  338.45 +
  338.46 +	//! Returns the flags of this node
  338.47 +	int getFlag(); 
  338.48 +	//! Returns the delivery predictability value for this node.
  338.49 +	float getProbability();
  338.50 +	//!Returns the name of this node
  338.51 +	QString getName();
  338.52 +};
  338.53 +
  338.54 +#endif
   339.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   339.2 +++ b/x86/x86/2.7/nodeManager.cpp	Thu Jun 26 17:39:40 2008 +0100
   339.3 @@ -0,0 +1,307 @@
   339.4 +#include <QtCore>
   339.5 +#include <nodeManager.h>
   339.6 +#include <node.h>
   339.7 +#include <readFile.h>
   339.8 +#include <math.h>
   339.9 +#include <qmutex.h>
  339.10 +
  339.11 +//#define AGING_TIMER 900
  339.12 +//#define PENCOUNTER 0.75
  339.13 +//#define BETA 0.25
  339.14 +//#define GAMMA 0.90
  339.15 +
  339.16 +NodeManager::NodeManager()//BundleManager* bundleMng)
  339.17 +{
  339.18 +	ReadFile conf;
  339.19 +	BETA=conf.getBeta();
  339.20 +	PENCOUNTER=conf.getPEncounter();
  339.21 +	GAMMA=conf.getGamma();
  339.22 +	AGING_TIMER=conf.getAgingTimer();
  339.23 +	int WRITETIMER =conf.getWriteToFileTimer();
  339.24 +	int fileOption = conf.getUseFileNodes();
  339.25 +	//Create and connect Hello Timer
  339.26 +	//bundleManager = bundleMng;
  339.27 +	agingTimer = new QTimer();
  339.28 +	storagePath=conf.getStoragePath();
  339.29 +	dir.setPath(storagePath);
  339.30 +	//create the dir if it does not exist
  339.31 +	if(!dir.exists())
  339.32 +		dir.mkpath(dir.path());
  339.33 +	option=conf.getUseFileNodes();
  339.34 +        connect(agingTimer, SIGNAL(timeout()), this, SLOT(aging()));
  339.35 +        agingTimer->start(AGING_TIMER);
  339.36 +	if(fileOption==1)
  339.37 +	{
  339.38 +		readFromFile();
  339.39 +		writeToFileTimer = new QTimer();
  339.40 +		connect(writeToFileTimer, SIGNAL(timeout()), this, SLOT(saveToFile()));
  339.41 +		writeToFileTimer->start(WRITETIMER);
  339.42 +		emit sendDebugNodeList(nodeList);
  339.43 +	}
  339.44 +}
  339.45 +
  339.46 +
  339.47 +void NodeManager::aging()
  339.48 +{
  339.49 +	for (ushort i = 0; i < nodeList.size(); ++i) 
  339.50 +	{
  339.51 +			//AGE PROBABILITY UPDATE
  339.52 +			Node tempNode;
  339.53 +			tempNode=nodeList.at(i);
  339.54 +			tempNode.probability=tempNode.probability*GAMMA;
  339.55 +			nodeList.replace(i,tempNode);
  339.56 +
  339.57 +	}
  339.58 +	//DEBUG
  339.59 +	emit sendDebugNodeList(nodeList);
  339.60 +}
  339.61 +
  339.62 +void NodeManager::saveToFile()
  339.63 +{
  339.64 +	QFile file(dir.filePath("nodes.txt"));
  339.65 +	if(file.open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text))
  339.66 +	{
  339.67 +	    QDateTime realTime;
  339.68 +	    realTime=realTime.currentDateTime ();
  339.69 +	    QString time=realTime.toString("MM/dd/yyyy hh:mm:ss");
  339.70 +	    time.append("\n");
  339.71 +	    file.write(time.toAscii ());
  339.72 +	    for (ushort i = 0; i < nodeList.size(); ++i) 
  339.73 +	    {
  339.74 +		QString nodeString;
  339.75 +		nodeString.append(QString("%1").arg((int)nodeList.at(i).nodeId));
  339.76 +		nodeString.append("\t");
  339.77 +		nodeString.append(nodeList.at(i).nodeName);
  339.78 +		nodeString.append("\t");
  339.79 +		//nodeString.append(QString("%1").arg((float)nodeList.at(i).probability));
  339.80 +		//Avoiding double type printout/////////////////
  339.81 +		int prob=nodeList.at(i).probability*100000000;
  339.82 +		QString probString=QString("0.%1").arg(prob);
  339.83 +		nodeString.append(probString);
  339.84 +		////////////////////////////////////////////////
  339.85 +		nodeString.append("\t");
  339.86 +		nodeString.append(QString("%1").arg((int)nodeList.at(i).flag));
  339.87 +		nodeString.append("\n");
  339.88 +		file.write(nodeString.toAscii ());
  339.89 +	    }
  339.90 +	    file.close();
  339.91 +	}
  339.92 +	//DEBUG
  339.93 +	emit sendDebugNodeList(nodeList);
  339.94 +}
  339.95 +
  339.96 +void NodeManager::readFromFile()
  339.97 +{
  339.98 +	ReadFile conf;
  339.99 +	QString storagePath=conf.getStoragePath();
 339.100 +	QDir dir;
 339.101 +	dir.setPath(storagePath);
 339.102 +	QFile file(dir.filePath("nodes.txt"));
 339.103 +	if(file.open(QIODevice::ReadOnly | QIODevice::Text))
 339.104 +	{
 339.105 +	    QString firstLine;
 339.106 +	    QString line;
 339.107 +	    //First we read date and time
 339.108 +	    firstLine=file.readLine();
 339.109 +	    //Then we add nodes
 339.110 +	    line=file.readLine();
 339.111 +	    while(line.size()>0)
 339.112 +	    {
 339.113 +    		//Parsing node
 339.114 +		int pos;
 339.115 +		QString temp;
 339.116 +		Node newNode;
 339.117 +		//Node ID
 339.118 +		pos=line.indexOf("\t",0);
 339.119 +		temp=line.mid(0,pos);
 339.120 +		newNode.nodeId=temp.toInt(0,10);
 339.121 +		line.remove(0,pos+1);
 339.122 +		//Node Name
 339.123 +		pos=line.indexOf("\t",0);
 339.124 +		temp=line.mid(0,pos);
 339.125 +		newNode.nodeName=temp;
 339.126 +		line.remove(0,pos+1);
 339.127 +		//Node Probability
 339.128 +		pos=line.indexOf("\t",0);
 339.129 +		temp=line.mid(0,pos);
 339.130 +		newNode.probability=temp.toFloat();
 339.131 +		line.remove(0,pos+1);
 339.132 +		//Node Flag
 339.133 +		pos=line.indexOf("\t",0);
 339.134 +		temp=line.mid(0,pos);
 339.135 +		newNode.flag=temp.toInt(0,10);
 339.136 +		line.remove(0,pos+1);
 339.137 +		//Adding Node
 339.138 +		nodeList.append(newNode);
 339.139 +		line=file.readLine();
 339.140 +	    }
 339.141 +	    //Aging the nodes
 339.142 +	    int option=conf.getAgeFileNodes();
 339.143 +	    if(option==1)
 339.144 +	    {
 339.145 +		QDateTime oldTime;
 339.146 +		firstLine.chop(1);
 339.147 +		oldTime=oldTime.fromString(firstLine,"MM/dd/yyyy hh:mm:ss");
 339.148 +		QDateTime realTime;
 339.149 +		realTime=realTime.currentDateTime ();
 339.150 +		int dif= oldTime.secsTo(realTime);
 339.151 +		int normalAging = conf.getAgingTimer()/1000;
 339.152 +		int aging=dif/normalAging;
 339.153 +		//Aging all nodes
 339.154 +		for (ushort i = 0; i < nodeList.size(); ++i) 
 339.155 +		{
 339.156 +			//AGE PROBABILITY UPDATE
 339.157 +			Node tempNode;
 339.158 +			tempNode=nodeList.at(i);
 339.159 +			tempNode.probability=tempNode.probability*(pow(GAMMA,aging));
 339.160 +			nodeList.replace(i,tempNode);
 339.161 +		}
 339.162 +	    }
 339.163 +	    emit sendDebugNodeList(nodeList);
 339.164 +	    emit updatedNodeList(this);
 339.165 +	    file.close();
 339.166 +	}
 339.167 +}
 339.168 +
 339.169 +
 339.170 +
 339.171 +int NodeManager::getId(QString str)
 339.172 +{
 339.173 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 339.174 +	{
 339.175 +			QString s;
 339.176 +			QString n;
 339.177 +			s=str;
 339.178 +			n=nodeList.at(i).nodeName;
 339.179 +			if(nodeList.at(i).nodeName==str)
 339.180 +				return nodeList.at(i).nodeId;
 339.181 +	}
 339.182 +	return 0;
 339.183 +}
 339.184 +
 339.185 +
 339.186 +void NodeManager::addDictionary(int ourNodeId,QList<Node> dictionary)
 339.187 +{
 339.188 +	for (ushort i = 0; i < dictionary.size(); ++i) 
 339.189 +	{
 339.190 +		int isInTheList=0;
 339.191 +		for (ushort n = 0; n < nodeList.size(); ++n) 
 339.192 +		{
 339.193 +			if(dictionary.at(i).nodeId==nodeList.at(n).nodeId)
 339.194 +				isInTheList++;
 339.195 +			
 339.196 +		}
 339.197 +		if((isInTheList==0)&&(dictionary.at(i).nodeId!=ourNodeId))
 339.198 +		{
 339.199 +			nodeList.append(dictionary.at(i));
 339.200 +			//!!!!!!!!!!!!!!!!!!!!!!
 339.201 +				//DEBUG
 339.202 +			emit sendDebugNodeList(nodeList);
 339.203 +			emit updatedNodeList(this);
 339.204 +		}
 339.205 +	}
 339.206 +}
 339.207 +
 339.208 +void NodeManager::encounterNode(int encounterNodeId,int encounterNodeType,QString encounterNodeName)
 339.209 +{
 339.210 +	int isInTheList=0;
 339.211 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 339.212 +	{
 339.213 +		//ENCOUNTER PROBABILITY UPDATE
 339.214 +		if(nodeList.at(i).nodeId==encounterNodeId)
 339.215 +		{
 339.216 +				Node tempNode;
 339.217 +				tempNode=nodeList.at(i);
 339.218 +				//ENCOUNTING EQUATION
 339.219 +				tempNode.probability=tempNode.probability+((1-tempNode.probability)*PENCOUNTER);
 339.220 +				nodeList.replace(i,tempNode);
 339.221 +				isInTheList++;
 339.222 +		}
 339.223 +	}
 339.224 +	//UNKNOW NEW NODE
 339.225 +	if(isInTheList==0) 
 339.226 +	{
 339.227 +		Node tempNode;
 339.228 +		tempNode.nodeId=encounterNodeId;
 339.229 +		tempNode.nodeName=encounterNodeName;
 339.230 +		tempNode.flag=-1;
 339.231 +		tempNode.probability=PENCOUNTER;
 339.232 +		nodeList.append(tempNode);
 339.233 +		//!!!!!!!!!!!!!!!!!!!!!!
 339.234 +		//DEBUG
 339.235 +		emit sendDebugNodeList(nodeList);
 339.236 +		emit updatedNodeList(this);
 339.237 +	}
 339.238 +}
 339.239 +
 339.240 +
 339.241 +void NodeManager::addRIB(QList<Node>RIB,int encounterNodeId)//RIB=P_(B,x)
 339.242 +{
 339.243 +	float P_AB=1;
 339.244 +	//First we find P_AB
 339.245 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 339.246 +	{
 339.247 +		if(nodeList.at(i).nodeId==encounterNodeId)
 339.248 +			P_AB = nodeList.at(i).probability;
 339.249 +	}
 339.250 +	//Then we update all transitivites
 339.251 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 339.252 +	{
 339.253 +		//TRANSITIVE PROBABILITY UPDATE
 339.254 +		if(nodeList.at(i).nodeId!=encounterNodeId)
 339.255 +		{
 339.256 +			int nodeCId = nodeList.at(i).nodeId;
 339.257 +			float P_AC = nodeList.at(i).probability;
 339.258 +			float P_BC = 1;
 339.259 +			float newP_AC;
 339.260 +			int flag=0;
 339.261 +			for (ushort n = 0; n < RIB.size(); ++n) 
 339.262 +			{
 339.263 +				if(RIB.at(n).nodeId==nodeCId)
 339.264 +				{
 339.265 +					P_BC = RIB.at(n).probability;
 339.266 +					flag = RIB.at(n).flag;
 339.267 +				}
 339.268 +			}
 339.269 +			newP_AC=P_AC+((1-P_AC) * P_AB * P_BC * BETA);
 339.270 +			//Adding data to list
 339.271 +			Node tempNode;
 339.272 +			tempNode=nodeList.at(i);
 339.273 +			tempNode.probability=newP_AC;
 339.274 +			tempNode.flag=flag;
 339.275 +			nodeList.replace(i,tempNode);
 339.276 +		}
 339.277 +
 339.278 +	}
 339.279 +	//DEBUG
 339.280 +	emit sendDebugNodeList(nodeList);
 339.281 +}
 339.282 +
 339.283 +
 339.284 +void NodeManager::addNode(Node newNode)
 339.285 +{
 339.286 +	nodeList.append(newNode);
 339.287 +	//!!!!!!!!!!!!!!!!!!!!!!!!!!!
 339.288 +	emit updatedNodeList(this);
 339.289 +	//DEBUG
 339.290 +	emit sendDebugNodeList(nodeList);
 339.291 +}
 339.292 +
 339.293 +QList<Node> NodeManager::getNodeList()
 339.294 +{	
 339.295 +	return nodeList;
 339.296 +}
 339.297 +
 339.298 +//Gives out only the list of nodes with RIB information
 339.299 +QList<Node> NodeManager::getRIBNodeList()
 339.300 +{	
 339.301 +	QList<Node> newNodeList;
 339.302 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 339.303 +	{
 339.304 +		if(nodeList.at(i).flag != -1)
 339.305 +			newNodeList.append(nodeList.at(i));
 339.306 +	
 339.307 +	}
 339.308 +	return newNodeList;
 339.309 +}
 339.310 +
   340.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   340.2 +++ b/x86/x86/2.7/nodeManager.h	Thu Jun 26 17:39:40 2008 +0100
   340.3 @@ -0,0 +1,106 @@
   340.4 +#ifndef NODEMANAGER_H
   340.5 +#define NODEMANAGER_H
   340.6 +
   340.7 +#include <QtCore>
   340.8 +#include <node.h>
   340.9 +//#include <messageFile.cpp>
  340.10 +//#include <bundleManager.h>
  340.11 +
  340.12 +//! This class contains a list with routing information of all nodes this node is aware of.
  340.13 +class NodeManager : public QObject
  340.14 +{
  340.15 +	Q_OBJECT
  340.16 +public:
  340.17 +	int AGING_TIMER;
  340.18 +	float PENCOUNTER;
  340.19 +	float BETA;
  340.20 +	float GAMMA;
  340.21 +	QTimer *agingTimer;
  340.22 +	QTimer *writeToFileTimer;
  340.23 +	NodeManager();
  340.24 +	QString storagePath;
  340.25 +	QDir dir;
  340.26 +	int option;
  340.27 +
  340.28 +	
  340.29 +	
  340.30 +	//! Adds a node to the node list of this NodeManager
  340.31 +	/*! Also emits signals to update the GUI.
  340.32 +	 * @param node the node to be added
  340.33 +	 */
  340.34 +	void addNode(Node);
  340.35 +
  340.36 +	//! Looks up the node id of the specified node.
  340.37 +	/*!
  340.38 +	 * @param str the string name of the node.
  340.39 +	 * @return the node id of the specified node.
  340.40 +	 */
  340.41 +	int getId(QString);
  340.42 +
  340.43 +	//! Inserts nodes from a dictionary to the node list.
  340.44 +	/*! Only inserts nodes that were not already in the list.
  340.45 +	 * @param the list of nodes to be added to the node list.
  340.46 +	 */
  340.47 +	void addDictionary(int ourNodeId,QList<Node>);
  340.48 +
  340.49 +	//! Handles the reception of a new RIB.
  340.50 +	/*! Updates the transitivities in the node list according to the new RIB.
  340.51 +	 * @param RIB the RIB received from the encountered node.
  340.52 +	 * @param encounterNodeId the id if the encountered node.
  340.53 +	 */
  340.54 +	void addRIB(QList<Node>RIB,int encounterNodeId);
  340.55 +
  340.56 +	//! Adjusts the delivery predictability for a encountered node.
  340.57 +	/*! If the node was already in the node list the delivery predictability 
  340.58 +	 * is updated, otherwise the new node is added to the node list.
  340.59 +	 * @param encounterNodeId the id of the encountered node
  340.60 +	 * @param encounterNodeType Currently not used
  340.61 +	 * @param encounterNodeName the string name of the encountered node.
  340.62 +	 */
  340.63 +	void encounterNode(int encounterNodeId,int encounterNodeType,QString encounterNodeName);
  340.64 +
  340.65 +	//! Returns the node list of this node manager.
  340.66 +	/*! 
  340.67 +	 * @return the nodelist of this node manager.
  340.68 +	 */
  340.69 +	QList<Node> getNodeList();
  340.70 +
  340.71 +	//! Returns the list of nodes that have RIB information.
  340.72 +	/*! Iterates through the node list and returns only the nodes that have 
  340.73 +	 * RIB information stored.
  340.74 +	 * @return the nodes that have RIB information.
  340.75 +	 */
  340.76 +	QList<Node> getRIBNodeList();
  340.77 +
  340.78 +	//! the list of nodes (should probably be delared private
  340.79 +	QList<Node> nodeList;
  340.80 +
  340.81 +
  340.82 +signals:
  340.83 +	/*!
  340.84 +	 * Emits the node list. (Used for updating GUI).
  340.85 +	 */
  340.86 +	void sendDebugNodeList(QList<Node>);
  340.87 +	
  340.88 +	/*!
  340.89 +	 * Emits this NodeManager. (Used for GUI???)
  340.90 +	 */
  340.91 +	void updatedNodeList(NodeManager*);
  340.92 +public slots:
  340.93 +	/*!
  340.94 +	 * Performs aging of the probability of all nodes in the node list.
  340.95 +	 */
  340.96 +	void aging();
  340.97 +		
  340.98 +	/*!
  340.99 +	 * Writes the node list to the file nodes.txt.
 340.100 +	 */
 340.101 +	void saveToFile();
 340.102 +		
 340.103 +	/*!
 340.104 +	 * Imports a nodelist from the file nodes.txt and performs 
 340.105 +	 * appropriate aging on the nodes imported.
 340.106 +	 */
 340.107 +	void readFromFile();
 340.108 +};
 340.109 +#endif
   341.1 Binary file x86/x86/2.7/prophet has changed
   342.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   342.2 +++ b/x86/x86/2.7/prophet.ini	Thu Jun 26 17:39:40 2008 +0100
   342.3 @@ -0,0 +1,149 @@
   342.4 +# ------------------------------------------
   342.5 +#  PRoPHET configuration file - prophet.ini
   342.6 +# ------------------------------------------
   342.7 +
   342.8 +
   342.9 +# -----------------
  342.10 +#  Node Parameters
  342.11 +# -----------------
  342.12 +
  342.13 +# A unique number identifying this node.
  342.14 +NODEID=50
  342.15 +
  342.16 +# A unique name identifying this node, should be the same as local_eid in 
  342.17 +# DTN-configuration but without the "dtn://" prefix.
  342.18 +NODENAME=samonote.dtn
  342.19 +
  342.20 +# The IP number of this node.
  342.21 +NODEIP=192.168.10.44
  342.22 +
  342.23 +# IP number of any secondary network interface on the same host. If there is no secondary interface, just set it to the same as NODEIP1.
  342.24 +NODEIP2=192.168.0.3
  342.25 +
  342.26 +# The broadcast adress of this node. Should be as narrow as possible, ie rather use 192.168.10.255 than 255.255.255.255
  342.27 +NODEBROADCAST=192.168.10.255
  342.28 +
  342.29 +
  342.30 +#  --------------------
  342.31 +#   PRoPHET parameters 
  342.32 +#  --------------------
  342.33 +
  342.34 +# The type of routing to use
  342.35 +# 0 = Epidemic
  342.36 +# 1 = PRoPHET GRTR P_(B,D)>P_(A,D)
  342.37 +ROUTING=0
  342.38 +
  342.39 +# The queuing policy to use
  342.40 +# 0 = FIFO
  342.41 +QUEUE=0
  342.42 +
  342.43 +# Initialization constant
  342.44 +PENCOUNTER=0.75
  342.45 +
  342.46 +# Scaling constant. Controls how large an impact the transitivity should have 
  342.47 +# on delivery predictability.
  342.48 +BETA=0.25
  342.49 +
  342.50 +# Aging constant
  342.51 +GAMMA=0.9989
  342.52 +
  342.53 +# ?
  342.54 +HELLO=10000
  342.55 +
  342.56 +# ?
  342.57 +ALIVE=15
  342.58 +
  342.59 +
  342.60 +# --------
  342.61 +#  Timers
  342.62 +# --------
  342.63 +
  342.64 +# The interval in milliseconds between beacon broadcasts in neighbour awareness.
  342.65 +BROADCASTTIMER=5000
  342.66 +
  342.67 +# The interval in milliseconds for performing aging.
  342.68 +AGINGTIMER=60000
  342.69 +
  342.70 +# The time in milliseconds before the node leaves the Hello state.
  342.71 +HELLOTIMER=60000
  342.72 +
  342.73 +# The time in milliseconds before the node leaves the Initiator state.
  342.74 +INITIATORTIMER=60000
  342.75 +
  342.76 +# The time in milliseconds before the node leaves the Listener state.
  342.77 +LISTENERTIMER=60000
  342.78 +
  342.79 +
  342.80 +# ------------------------
  342.81 +#  DTN-related Parameters
  342.82 +# ------------------------
  342.83 +
  342.84 +# The hostname where PRoPHET should connect to DTN. Usually the same as NODEIP1.
  342.85 +DTNHOSTNAME=193.77.152.156
  342.86 +
  342.87 +# The port PRoPHET should connect to DTN on. Usually 5555 or 5050.
  342.88 +DTNHOSTPORT=5050
  342.89 +
  342.90 +# ?
  342.91 +DTNTIMER=5000
  342.92 +
  342.93 +
  342.94 +# --------------------
  342.95 +#  Storage Parameters
  342.96 +# --------------------
  342.97 +
  342.98 +# The maximum amount of disk space that PRoPHET should use for storing bundles 
  342.99 +# (in bytes).
 342.100 +STORAGESIZE=80000
 342.101 +
 342.102 +# The maximum amount of memory PRoPHET should use for storing bundles (in bytes)
 342.103 +MEMORYSTORAGESIZE=20000
 342.104 +
 342.105 +# The directory PRoPHET will use for storing bundles. It will be created on 
 342.106 +# startup if it does not already exist.
 342.107 +STORAGEPATH=c:\Samo\PRoPHET\win32\storage\
 342.108 +
 342.109 +# The directory PRoPHET will use for logging. It will be created on startup if 
 342.110 +# it does not already exist.
 342.111 +LOGPATH=c:\Samo\PRoPHET\win32\log\
 342.112 +
 342.113 +# The directory PRoPHET will use for storing the node list, bundle list etc. It
 342.114 +# will be created on startup if it does not already exist.
 342.115 +MSGPATH=c:\Samo\PRoPHET\win32\list\
 342.116 +
 342.117 +# Whether the node list should be stored to disk or not.
 342.118 +USEFILENODES=1
 342.119 +
 342.120 +# Whether nodes in the node list on disk should be aged or not.
 342.121 +AGEFILENODES=1
 342.122 +
 342.123 +# The interval at which information is written to disk.
 342.124 +WRITETOFILETIMER=10000
 342.125 +
 342.126 +# Wheter bundles should be stored to disk or not.
 342.127 +USEFILEBUNDLES=1
 342.128 +
 342.129 +# Logging on/off.
 342.130 +LOGGING=1
 342.131 +
 342.132 +
 342.133 +# ---------------
 342.134 +#  Misc features
 342.135 +# ---------------
 342.136 +
 342.137 +# ?
 342.138 +CONTINIUSUPDATE=1
 342.139 +
 342.140 +# Whether to use TTL or not.
 342.141 +USETTL=1
 342.142 +
 342.143 +# The time to live for new bundles (in seconds).
 342.144 +TTLVALUE=60
 342.145 +
 342.146 +# Use acks for bundles, on/off.
 342.147 +USEACKS=1
 342.148 +
 342.149 +# Use smartoffer on/off. Smartoffer is a feature where a bundle will not be 
 342.150 +# offered again to a node that has already received it.
 342.151 +SMARTOFFER=1
 342.152 +
   343.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   343.2 +++ b/x86/x86/2.7/prophet.pro	Thu Jun 26 17:39:40 2008 +0100
   343.3 @@ -0,0 +1,84 @@
   343.4 +# GUI = true  - generates Makefile for building with GUI support.
   343.5 +# GUI = false - generates Makefile for building without GUI support.
   343.6 +GUI = true
   343.7 +
   343.8 +# PDAGUI = true  - generares makefile for building with GUI for PDA
   343.9 +# PDAGUI = false - generates makefile for building without GUI for PDA
  343.10 +# PDAGUI has no effect unless GUI is set to true
  343.11 +PDAGUI = true
  343.12 +
  343.13 +# DTN_INTERFACE = true  - generates Makefile for building with DTN support.
  343.14 +# DTN_INTERFACE = false - generates Makefile for building without DTN support.
  343.15 +DTN_INTERFACE = false
  343.16 +
  343.17 +contains(GUI, true) {
  343.18 +	message("Creating Makefile with GUI")
  343.19 +	DEFINES += GUI
  343.20 +	contains(PDAGUI, true) {
  343.21 +		message("GUI will be built for PDA use")
  343.22 +		DEFINES += PDAGUI
  343.23 +		HEADERS += connectionWidget.h\
  343.24 +				   msgReadWidget.h\
  343.25 +				   configWidget.h
  343.26 +		SOURCES += connectionWidget.cpp\
  343.27 +				   msgReadWidget.cpp\
  343.28 +				   configWidget.cpp
  343.29 +	}
  343.30 +	HEADERS += infoWidget.h\		
  343.31 +			   bundleWidget.h\		
  343.32 +        	   msgWidget.h \
  343.33 +			   debugWidget.h
  343.34 +	SOURCES += infoWidget.cpp\		
  343.35 +			   bundleWidget.cpp\		
  343.36 +        	   msgWidget.cpp \
  343.37 +			   debugWidget.cpp
  343.38 +}
  343.39 +contains(GUI, false) {
  343.40 +	message("Creating Makefile without GUI")
  343.41 +}
  343.42 +contains(DTN_INTERFACE, true) {
  343.43 +	message("Creating Makefile with DTN_INTERFACE")
  343.44 +	DEFINES += DTN_INTERFACE
  343.45 +	HEADERS += DTNInterface.h
  343.46 +	SOURCES += DTNInterface.cpp
  343.47 +}
  343.48 +contains(DTN_INTERFACE, false) {
  343.49 +	message("Creating Makefile without DTN_INTERFACE")
  343.50 +}
  343.51 +
  343.52 +TEMPLATE = app
  343.53 +QT+=gui network
  343.54 +QT-=
  343.55 +TARGET += 
  343.56 +DEPENDPATH += .
  343.57 +INCLUDEPATH += .
  343.58 +CONFIG += qt release
  343.59 +HEADERS += 	neighbourAwareness.h\
  343.60 +			bundle.h \
  343.61 +			bundleManager.h \
  343.62 +			node.h \
  343.63 +			nodeManager.h \
  343.64 +			connection.h \
  343.65 +			tlv.h \
  343.66 +			messageFile.h \
  343.67 +			hello.h \
  343.68 +			main.h \	   
  343.69 +			dataPacket.h \
  343.70 +			readFile.h \
  343.71 +			tcpClient.h \
  343.72 +			bundleListFileIO.h
  343.73 +
  343.74 +SOURCES += 	main.cpp \
  343.75 +			bundle.cpp \
  343.76 +			bundleManager.cpp \
  343.77 +			node.cpp \
  343.78 +			nodeManager.cpp \
  343.79 +			connection.cpp \
  343.80 +			hello.cpp \
  343.81 +			tlv.cpp \
  343.82 +			dataPacket.cpp \
  343.83 +			messageFile.cpp\
  343.84 +			neighbourAwareness.cpp\
  343.85 +			readFile.cpp \
  343.86 +			tcpClient.cpp \
  343.87 +			bundleListFileIO.cpp
   344.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   344.2 +++ b/x86/x86/2.7/readFile.cpp	Thu Jun 26 17:39:40 2008 +0100
   344.3 @@ -0,0 +1,836 @@
   344.4 +#include <QFile>
   344.5 +#include <QString>
   344.6 +#include <QHostAddress>
   344.7 +#include <readFile.h>
   344.8 +
   344.9 +ReadFile::ReadFile()
  344.10 +{
  344.11 +	QFile configuration("prophet.ini");
  344.12 +}
  344.13 +
  344.14 +float ReadFile::getBeta()
  344.15 +{
  344.16 +	QFile configuration("prophet.ini");
  344.17 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  344.18 +	QString line;
  344.19 +	QString search="BETA=";
  344.20 +	line=configuration.readLine();
  344.21 +	while(line.size()>0)
  344.22 +	{
  344.23 +		if(line.indexOf(search)!=-1)
  344.24 +		{
  344.25 +			line.remove(search,Qt::CaseInsensitive);
  344.26 +			return line.toFloat();
  344.27 +		}
  344.28 +		line=configuration.readLine();
  344.29 +		
  344.30 +	}
  344.31 +	configuration.close();
  344.32 +	return (float)0.25;
  344.33 +}
  344.34 +
  344.35 +float ReadFile::getGamma()
  344.36 +{
  344.37 +	QFile configuration("prophet.ini");
  344.38 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  344.39 +	QString line;
  344.40 +	QString search="GAMMA=";
  344.41 +	line=configuration.readLine();
  344.42 +	while(line.size()>0)
  344.43 +	{
  344.44 +		if(line.indexOf(search)!=-1)
  344.45 +		{
  344.46 +			line.remove(search,Qt::CaseInsensitive);
  344.47 +			return line.toFloat();
  344.48 +		}
  344.49 +		line=configuration.readLine();
  344.50 +		
  344.51 +	}
  344.52 +		configuration.close();
  344.53 +
  344.54 +	return (float)0.99;
  344.55 +}
  344.56 +
  344.57 +float ReadFile::getPEncounter()
  344.58 +{
  344.59 +	QFile configuration("prophet.ini");
  344.60 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  344.61 +	QString line;
  344.62 +	QString search="PENCOUNTER=";
  344.63 +	line=configuration.readLine();
  344.64 +	while(line.size()>0)
  344.65 +	{
  344.66 +		if(line.indexOf(search)!=-1)
  344.67 +		{
  344.68 +			line.remove(search,Qt::CaseInsensitive);
  344.69 +			return line.toFloat();
  344.70 +		}
  344.71 +		line=configuration.readLine();
  344.72 +		
  344.73 +	}
  344.74 +		configuration.close();
  344.75 +
  344.76 +	return (float)0.75;
  344.77 +}
  344.78 +
  344.79 +int ReadFile::getSmartOffer()
  344.80 +{
  344.81 +	QFile configuration("prophet.ini");
  344.82 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  344.83 +	QString line;
  344.84 +	QString search="SMARTOFFER=";
  344.85 +	line=configuration.readLine();
  344.86 +	while(line.size()>0)
  344.87 +	{
  344.88 +		if(line.indexOf(search)!=-1)
  344.89 +		{
  344.90 +			line.remove(search,Qt::CaseInsensitive);
  344.91 +			return line.toInt();
  344.92 +		}
  344.93 +		line=configuration.readLine();
  344.94 +		
  344.95 +	}
  344.96 +		configuration.close();
  344.97 +
  344.98 +	return 1000;
  344.99 +}
 344.100 +
 344.101 +int ReadFile::getListenerTimer()
 344.102 +{
 344.103 +	QFile configuration("prophet.ini");
 344.104 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.105 +	QString line;
 344.106 +	QString search="LISTENERTIMER=";
 344.107 +	line=configuration.readLine();
 344.108 +	while(line.size()>0)
 344.109 +	{
 344.110 +		if(line.indexOf(search)!=-1)
 344.111 +		{
 344.112 +			line.remove(search,Qt::CaseInsensitive);
 344.113 +			return line.toInt();
 344.114 +		}
 344.115 +		line=configuration.readLine();
 344.116 +		
 344.117 +	}
 344.118 +		configuration.close();
 344.119 +
 344.120 +	return 1000;
 344.121 +}
 344.122 +
 344.123 +int ReadFile::getQueue()
 344.124 +{
 344.125 +	QFile configuration("prophet.ini");
 344.126 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.127 +	QString line;
 344.128 +	QString search="QUEUE=";
 344.129 +	line=configuration.readLine();
 344.130 +	while(line.size()>0)
 344.131 +	{
 344.132 +		if(line.indexOf(search)!=-1)
 344.133 +		{
 344.134 +			line.remove(search,Qt::CaseInsensitive);
 344.135 +			return line.toInt();
 344.136 +		}
 344.137 +		line=configuration.readLine();
 344.138 +		
 344.139 +	}
 344.140 +		configuration.close();
 344.141 +
 344.142 +	return 0;
 344.143 +}
 344.144 +
 344.145 +int ReadFile::getInitiatorTimer()
 344.146 +{
 344.147 +	QFile configuration("prophet.ini");
 344.148 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.149 +	QString line;
 344.150 +	QString search="INITIATORTIMER=";
 344.151 +	line=configuration.readLine();
 344.152 +	while(line.size()>0)
 344.153 +	{
 344.154 +		if(line.indexOf(search)!=-1)
 344.155 +		{
 344.156 +			line.remove(search,Qt::CaseInsensitive);
 344.157 +			return line.toInt();
 344.158 +		}
 344.159 +		line=configuration.readLine();
 344.160 +		
 344.161 +	}
 344.162 +		configuration.close();
 344.163 +
 344.164 +	return 1000;
 344.165 +}
 344.166 +int ReadFile::getUseTTL()
 344.167 +{
 344.168 +	QFile configuration("prophet.ini");
 344.169 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.170 +	QString line;
 344.171 +	QString search="USETTL=";
 344.172 +	line=configuration.readLine();
 344.173 +	while(line.size()>0)
 344.174 +	{
 344.175 +		if(line.indexOf(search)!=-1)
 344.176 +		{
 344.177 +			line.remove(search,Qt::CaseInsensitive);
 344.178 +			return line.toInt();
 344.179 +		}
 344.180 +		line=configuration.readLine();
 344.181 +		
 344.182 +	}
 344.183 +		configuration.close();
 344.184 +
 344.185 +	return 0;
 344.186 +
 344.187 +}
 344.188 +
 344.189 +int ReadFile::getTTL()
 344.190 +{
 344.191 +	QFile configuration("prophet.ini");
 344.192 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.193 +	QString line;
 344.194 +	QString search="TTLVALUE=";
 344.195 +	line=configuration.readLine();
 344.196 +	while(line.size()>0)
 344.197 +	{
 344.198 +		if(line.indexOf(search)!=-1)
 344.199 +		{
 344.200 +			line.remove(search,Qt::CaseInsensitive);
 344.201 +			return line.toInt();
 344.202 +		}
 344.203 +		line=configuration.readLine();
 344.204 +		
 344.205 +	}
 344.206 +		configuration.close();
 344.207 +
 344.208 +	return 100000;
 344.209 +
 344.210 +}
 344.211 +
 344.212 +int ReadFile::getUseACKS()
 344.213 +{
 344.214 +	QFile configuration("prophet.ini");
 344.215 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.216 +	QString line;
 344.217 +	QString search="USEACKS=";
 344.218 +	line=configuration.readLine();
 344.219 +	while(line.size()>0)
 344.220 +	{
 344.221 +		if(line.indexOf(search)!=-1)
 344.222 +		{
 344.223 +			line.remove(search,Qt::CaseInsensitive);
 344.224 +			return line.toInt();
 344.225 +		}
 344.226 +		line=configuration.readLine();
 344.227 +		
 344.228 +	}
 344.229 +		configuration.close();
 344.230 +
 344.231 +	return 0;
 344.232 +}
 344.233 +
 344.234 +int ReadFile::getHelloTimer()
 344.235 +{
 344.236 +	QFile configuration("prophet.ini");
 344.237 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.238 +	QString line;
 344.239 +	QString search="HELLOTIMER=";
 344.240 +	line=configuration.readLine();
 344.241 +	while(line.size()>0)
 344.242 +	{
 344.243 +		if(line.indexOf(search)!=-1)
 344.244 +		{
 344.245 +			line.remove(search,Qt::CaseInsensitive);
 344.246 +			return line.toInt();
 344.247 +		}
 344.248 +		line=configuration.readLine();
 344.249 +		
 344.250 +	}
 344.251 +		configuration.close();
 344.252 +
 344.253 +	return 1000;
 344.254 +}
 344.255 +
 344.256 +int ReadFile::getAgingTimer()
 344.257 +{
 344.258 +	QFile configuration("prophet.ini");
 344.259 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.260 +	QString line;
 344.261 +	QString search="AGINGTIMER=";
 344.262 +	line=configuration.readLine();
 344.263 +	while(line.size()>0)
 344.264 +	{
 344.265 +		if(line.indexOf(search)!=-1)
 344.266 +		{
 344.267 +			line.remove(search,Qt::CaseInsensitive);
 344.268 +			return line.toInt();
 344.269 +		}
 344.270 +		line=configuration.readLine();
 344.271 +		
 344.272 +	}
 344.273 +		configuration.close();
 344.274 +
 344.275 +	return 1000;
 344.276 +}
 344.277 +
 344.278 +int ReadFile::getDTNHostPort()
 344.279 +{
 344.280 +	QFile configuration("prophet.ini");
 344.281 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.282 +	QString line;
 344.283 +	QString search="DTNHOSTPORT=";
 344.284 +	line=configuration.readLine();
 344.285 +	while(line.size()>0)
 344.286 +	{
 344.287 +		if(line.indexOf(search)!=-1)
 344.288 +		{
 344.289 +			line.remove(search,Qt::CaseInsensitive);
 344.290 +			return line.toInt();
 344.291 +		}
 344.292 +		line=configuration.readLine();
 344.293 +		
 344.294 +	}
 344.295 +		configuration.close();
 344.296 +
 344.297 +	return 21;
 344.298 +
 344.299 +}	
 344.300 +
 344.301 +int ReadFile::getStorageSize()
 344.302 +{
 344.303 +	QFile configuration("prophet.ini");
 344.304 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.305 +	QString line;
 344.306 +	QString search="STORAGESIZE=";
 344.307 +	line=configuration.readLine();
 344.308 +	while(line.size()>0)
 344.309 +	{
 344.310 +		if(line.indexOf(search)!=-1)
 344.311 +		{
 344.312 +			line.remove(search,Qt::CaseInsensitive);
 344.313 +			return line.toInt();
 344.314 +		}
 344.315 +		line=configuration.readLine();
 344.316 +		
 344.317 +	}
 344.318 +		configuration.close();
 344.319 +
 344.320 +	return 1000;
 344.321 +
 344.322 +}	
 344.323 +
 344.324 +int ReadFile::getMemoryStorageSize()
 344.325 +{
 344.326 +	QFile configuration("prophet.ini");
 344.327 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.328 +	QString line;
 344.329 +	QString search="MEMORYSTORAGESIZE=";
 344.330 +	line=configuration.readLine();
 344.331 +	while(line.size()>0)
 344.332 +	{
 344.333 +		if(line.indexOf(search)!=-1)
 344.334 +		{
 344.335 +			line.remove(search,Qt::CaseInsensitive);
 344.336 +			return line.toInt();
 344.337 +		}
 344.338 +		line=configuration.readLine();
 344.339 +		
 344.340 +	}
 344.341 +		configuration.close();
 344.342 +
 344.343 +	return 1000;
 344.344 +
 344.345 +}	
 344.346 +
 344.347 +int ReadFile::getAlive()
 344.348 +{
 344.349 +	QFile configuration("prophet.ini");
 344.350 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.351 +	QString line;
 344.352 +	QString search="ALIVE=";
 344.353 +	line=configuration.readLine();
 344.354 +	while(line.size()>0)
 344.355 +	{
 344.356 +		if(line.indexOf(search)!=-1)
 344.357 +		{
 344.358 +			line.remove(search,Qt::CaseInsensitive);
 344.359 +			return line.toInt();
 344.360 +		}
 344.361 +		line=configuration.readLine();
 344.362 +		
 344.363 +	}
 344.364 +		configuration.close();
 344.365 +
 344.366 +	return 15;
 344.367 +
 344.368 +}	
 344.369 +
 344.370 +
 344.371 +int ReadFile::getBroadcastTimer()
 344.372 +{
 344.373 +	QFile configuration("prophet.ini");
 344.374 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.375 +	QString line;
 344.376 +	QString search="BROADCASTTIMER=";
 344.377 +	line=configuration.readLine();
 344.378 +	while(line.size()>0)
 344.379 +	{
 344.380 +		if(line.indexOf(search)!=-1)
 344.381 +		{
 344.382 +			line.remove(search,Qt::CaseInsensitive);
 344.383 +			return line.toInt();
 344.384 +		}
 344.385 +		line=configuration.readLine();
 344.386 +		
 344.387 +	}
 344.388 +		configuration.close();
 344.389 +
 344.390 +	return 1000;
 344.391 +
 344.392 +}
 344.393 +
 344.394 +
 344.395 +int ReadFile::getHello()
 344.396 +{
 344.397 +	QFile configuration("prophet.ini");
 344.398 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.399 +	QString line;
 344.400 +	QString search="HELLO=";
 344.401 +	line=configuration.readLine();
 344.402 +	while(line.size()>0)
 344.403 +	{
 344.404 +		if(line.indexOf(search)!=-1)
 344.405 +		{
 344.406 +			line.remove(search,Qt::CaseInsensitive);
 344.407 +			return line.toInt();
 344.408 +		}
 344.409 +		line=configuration.readLine();
 344.410 +		
 344.411 +	}
 344.412 +		configuration.close();
 344.413 +
 344.414 +	return 1;
 344.415 +
 344.416 +}
 344.417 +
 344.418 +
 344.419 +int ReadFile::getRouting()
 344.420 +{
 344.421 +	QFile configuration("prophet.ini");
 344.422 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.423 +	QString line;
 344.424 +	QString search="ROUTING=";
 344.425 +	line=configuration.readLine();
 344.426 +	while(line.size()>0)
 344.427 +	{
 344.428 +		if(line.indexOf(search)!=-1)
 344.429 +		{
 344.430 +			line.remove(search,Qt::CaseInsensitive);
 344.431 +			return line.toInt();
 344.432 +		}
 344.433 +		line=configuration.readLine();
 344.434 +		
 344.435 +	}
 344.436 +		configuration.close();
 344.437 +
 344.438 +	return 1;
 344.439 +}
 344.440 +
 344.441 +int ReadFile::getDTNTimer()
 344.442 +{
 344.443 +	QFile configuration("prophet.ini");
 344.444 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.445 +	QString line;
 344.446 +	QString search="DTNTIMER=";
 344.447 +	line=configuration.readLine();
 344.448 +	while(line.size()>0)
 344.449 +	{
 344.450 +		if(line.indexOf(search)!=-1)
 344.451 +		{
 344.452 +			line.remove(search,Qt::CaseInsensitive);
 344.453 +			return line.toInt();
 344.454 +		}
 344.455 +		line=configuration.readLine();
 344.456 +		
 344.457 +	}
 344.458 +		configuration.close();
 344.459 +
 344.460 +	return 1000;
 344.461 +}
 344.462 +
 344.463 +
 344.464 +
 344.465 +int ReadFile::getAgeFileNodes()
 344.466 +{
 344.467 +	QFile configuration("prophet.ini");
 344.468 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.469 +	QString line;
 344.470 +	QString search="AGEFILENODES=";
 344.471 +	line=configuration.readLine();
 344.472 +	while(line.size()>0)
 344.473 +	{
 344.474 +		if(line.indexOf(search)!=-1)
 344.475 +		{
 344.476 +			line.remove(search,Qt::CaseInsensitive);
 344.477 +			return line.toInt();
 344.478 +		}
 344.479 +		line=configuration.readLine();
 344.480 +		
 344.481 +	}
 344.482 +		configuration.close();
 344.483 +
 344.484 +	return 1;
 344.485 +}
 344.486 +
 344.487 +int ReadFile::getContiniusUpdate()
 344.488 +{
 344.489 +	QFile configuration("prophet.ini");
 344.490 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.491 +	QString line;
 344.492 +	QString search="CONTINIUSUPDATE=";
 344.493 +	line=configuration.readLine();
 344.494 +	while(line.size()>0)
 344.495 +	{
 344.496 +		if(line.indexOf(search)!=-1)
 344.497 +		{
 344.498 +			line.remove(search,Qt::CaseInsensitive);
 344.499 +			return line.toInt();
 344.500 +		}
 344.501 +		line=configuration.readLine();
 344.502 +		
 344.503 +	}
 344.504 +		configuration.close();
 344.505 +
 344.506 +	return 1;
 344.507 +}
 344.508 +
 344.509 +
 344.510 +int ReadFile::getNodeId()
 344.511 +{
 344.512 +	QFile configuration("prophet.ini");
 344.513 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.514 +	QString line;
 344.515 +	QString search="NODEID=";
 344.516 +	line=configuration.readLine();
 344.517 +	while(line.size()>0)
 344.518 +	{
 344.519 +		if(line.indexOf(search)!=-1)
 344.520 +		{
 344.521 +			line.remove(search,Qt::CaseInsensitive);
 344.522 +			return line.toInt();
 344.523 +		}
 344.524 +		line=configuration.readLine();
 344.525 +		
 344.526 +	}
 344.527 +		configuration.close();
 344.528 +
 344.529 +	return 0;
 344.530 +}
 344.531 +
 344.532 +int ReadFile::getUseFileBundles()
 344.533 +{
 344.534 +	QFile configuration("prophet.ini");
 344.535 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.536 +	QString line;
 344.537 +	QString search="USEFILEBUNDLES=";
 344.538 +	line=configuration.readLine();
 344.539 +	while(line.size()>0)
 344.540 +	{
 344.541 +		if(line.indexOf(search)!=-1)
 344.542 +		{
 344.543 +			line.remove(search,Qt::CaseInsensitive);
 344.544 +			return line.toInt();
 344.545 +		}
 344.546 +		line=configuration.readLine();
 344.547 +		
 344.548 +	}
 344.549 +		configuration.close();
 344.550 +
 344.551 +	return 1;
 344.552 +}
 344.553 +
 344.554 +
 344.555 +int ReadFile::getWriteToFileTimer()
 344.556 +{
 344.557 +	QFile configuration("prophet.ini");
 344.558 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.559 +	QString line;
 344.560 +	QString search="WRITETOFILETIMER=";
 344.561 +	line=configuration.readLine();
 344.562 +	while(line.size()>0)
 344.563 +	{
 344.564 +		if(line.indexOf(search)!=-1)
 344.565 +		{
 344.566 +			line.remove(search,Qt::CaseInsensitive);
 344.567 +			return line.toInt();
 344.568 +		}
 344.569 +		line=configuration.readLine();
 344.570 +		
 344.571 +	}
 344.572 +		configuration.close();
 344.573 +
 344.574 +	return 60;
 344.575 +}
 344.576 +
 344.577 +int ReadFile::getUseFileHash()
 344.578 +{
 344.579 +	QFile configuration("prophet.ini");
 344.580 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.581 +	QString line;
 344.582 +	QString search="USEFILEHASH=";
 344.583 +	line=configuration.readLine();
 344.584 +	while(line.size()>0)
 344.585 +	{
 344.586 +		if(line.indexOf(search)!=-1)
 344.587 +		{
 344.588 +			line.remove(search,Qt::CaseInsensitive);
 344.589 +			return line.toInt();
 344.590 +		}
 344.591 +		line=configuration.readLine();
 344.592 +		
 344.593 +	}
 344.594 +		configuration.close();
 344.595 +
 344.596 +	return 1;
 344.597 +}
 344.598 +
 344.599 +
 344.600 +int ReadFile::getLogOption()
 344.601 +{
 344.602 +	QFile configuration("prophet.ini");
 344.603 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.604 +	QString line;
 344.605 +	QString search="LOGGING=";
 344.606 +	line=configuration.readLine();
 344.607 +	while(line.size()>0)
 344.608 +	{
 344.609 +		if(line.indexOf(search)!=-1)
 344.610 +		{
 344.611 +			line.remove(search,Qt::CaseInsensitive);
 344.612 +			return line.toInt();
 344.613 +		}
 344.614 +		line=configuration.readLine();
 344.615 +		
 344.616 +	}
 344.617 +		configuration.close();
 344.618 +
 344.619 +	return 60;
 344.620 +}	
 344.621 +
 344.622 +int ReadFile::getUseFileNodes()
 344.623 +{
 344.624 +	QFile configuration("prophet.ini");
 344.625 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.626 +	QString line;
 344.627 +	QString search="USEFILENODES=";
 344.628 +	line=configuration.readLine();
 344.629 +	while(line.size()>0)
 344.630 +	{
 344.631 +		if(line.indexOf(search)!=-1)
 344.632 +		{
 344.633 +			line.remove(search,Qt::CaseInsensitive);
 344.634 +			return line.toInt();
 344.635 +		}
 344.636 +		line=configuration.readLine();
 344.637 +		
 344.638 +	}
 344.639 +		configuration.close();
 344.640 +
 344.641 +	return 0;
 344.642 +}	
 344.643 +
 344.644 +QString ReadFile::getNodeName()
 344.645 +{
 344.646 +	QFile configuration("prophet.ini");
 344.647 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.648 +	QString line;
 344.649 +	QString search="NODENAME=";
 344.650 +	line=configuration.readLine();
 344.651 +	while(line.size()>0)
 344.652 +	{
 344.653 +		if(line.indexOf(search)!=-1)
 344.654 +		{
 344.655 +			line.remove(search,Qt::CaseInsensitive);
 344.656 +			line.chop(1);
 344.657 +			return line;
 344.658 +		}
 344.659 +		line=configuration.readLine();
 344.660 +		
 344.661 +	}
 344.662 +		configuration.close();
 344.663 +
 344.664 +	QString ret="unknown";
 344.665 +	return ret;
 344.666 +}
 344.667 +
 344.668 +QString ReadFile::getStoragePath()
 344.669 +{
 344.670 +	QFile configuration("prophet.ini");
 344.671 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.672 +	QString line;
 344.673 +	QString search="STORAGEPATH=";
 344.674 +	line=configuration.readLine();
 344.675 +	while(line.size()>0)
 344.676 +	{
 344.677 +		if(line.indexOf(search)!=-1)
 344.678 +		{
 344.679 +			line.remove(search,Qt::CaseInsensitive);
 344.680 +			line.chop(1);
 344.681 +			return line;
 344.682 +		}
 344.683 +		line=configuration.readLine();
 344.684 +		
 344.685 +	}
 344.686 +	QString ret="";
 344.687 +		configuration.close();
 344.688 +
 344.689 +	return ret;
 344.690 +}
 344.691 +
 344.692 +QString ReadFile::getLogPath()
 344.693 +{
 344.694 +	QFile configuration("prophet.ini");
 344.695 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.696 +	QString line;
 344.697 +	QString search="LOGPATH=";
 344.698 +	line=configuration.readLine();
 344.699 +	while(line.size()>0)
 344.700 +	{
 344.701 +		if(line.indexOf(search)!=-1)
 344.702 +		{
 344.703 +			line.remove(search,Qt::CaseInsensitive);
 344.704 +			line.chop(1);
 344.705 +			return line;
 344.706 +		}
 344.707 +		line=configuration.readLine();
 344.708 +		
 344.709 +	}
 344.710 +	QString ret="";
 344.711 +			configuration.close();
 344.712 +
 344.713 +	return ret;
 344.714 +}
 344.715 +QString ReadFile::getMsgPath()
 344.716 +{
 344.717 +	QFile configuration("prophet.ini");
 344.718 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.719 +	QString line;
 344.720 +	QString search="MSGPATH=";
 344.721 +	line=configuration.readLine();
 344.722 +	while(line.size()>0)
 344.723 +	{
 344.724 +		if(line.indexOf(search)!=-1)
 344.725 +		{
 344.726 +			line.remove(search,Qt::CaseInsensitive);
 344.727 +			line.chop(1);
 344.728 +			return line;
 344.729 +		}
 344.730 +		line=configuration.readLine();
 344.731 +		
 344.732 +	}
 344.733 +	QString ret="";
 344.734 +		configuration.close();
 344.735 +
 344.736 +	return ret;
 344.737 +}
 344.738 +
 344.739 +QHostAddress ReadFile::getNodeIp()
 344.740 +{
 344.741 +	QFile configuration("prophet.ini");
 344.742 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.743 +	QString line;
 344.744 +	QString search="NODEIP=";
 344.745 +	line=configuration.readLine();
 344.746 +	while(line.size()>0)
 344.747 +	{
 344.748 +		if(line.indexOf(search)!=-1)
 344.749 +		{
 344.750 +			line.remove(search,Qt::CaseInsensitive);
 344.751 +			QHostAddress ip(line);
 344.752 +			return ip;
 344.753 +
 344.754 +		}
 344.755 +		line=configuration.readLine();
 344.756 +	
 344.757 +	}
 344.758 +		configuration.close();
 344.759 +
 344.760 +	QHostAddress ret("192.168.10.1");
 344.761 +	return ret;
 344.762 +}
 344.763 +
 344.764 +QHostAddress ReadFile::getBroadcast()
 344.765 +{
 344.766 +	QFile configuration("prophet.ini");
 344.767 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.768 +	QString line;
 344.769 +	QString search="NODEBROADCAST=";
 344.770 +	line=configuration.readLine();
 344.771 +	while(line.size()>0)
 344.772 +	{
 344.773 +		if(line.indexOf(search)!=-1)
 344.774 +		{
 344.775 +			line.remove(search,Qt::CaseInsensitive);
 344.776 +			QHostAddress ip(line);
 344.777 +			return ip;
 344.778 +
 344.779 +		}
 344.780 +		line=configuration.readLine();
 344.781 +	}
 344.782 +	QHostAddress ret("255.255.255.255");
 344.783 +		configuration.close();
 344.784 +
 344.785 +	return ret;
 344.786 +
 344.787 +}
 344.788 +
 344.789 +QHostAddress ReadFile::getNodeIp2()
 344.790 +{
 344.791 +	QFile configuration("prophet.ini");
 344.792 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.793 +	QString line;
 344.794 +	QString search="NODEIP2=";
 344.795 +	line=configuration.readLine();
 344.796 +	while(line.size()>0)
 344.797 +	{
 344.798 +		if(line.indexOf(search)!=-1)
 344.799 +		{
 344.800 +			line.remove(search,Qt::CaseInsensitive);
 344.801 +			QHostAddress ip(line);
 344.802 +			return ip;
 344.803 +
 344.804 +		}
 344.805 +		line=configuration.readLine();
 344.806 +	
 344.807 +	}
 344.808 +	QHostAddress ret("192.168.10.1");
 344.809 +		configuration.close();
 344.810 +
 344.811 +	return ret;
 344.812 +
 344.813 +}
 344.814 +
 344.815 +QHostAddress ReadFile::getDTNHostName()
 344.816 +{
 344.817 +	QFile configuration("prophet.ini");
 344.818 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 344.819 +	QString line;
 344.820 +	QString search="DTNHOSTNAME=";
 344.821 +	line=configuration.readLine();
 344.822 +	while(line.size()>0)
 344.823 +	{
 344.824 +		if(line.indexOf(search)!=-1)
 344.825 +		{
 344.826 +			line.remove(search,Qt::CaseInsensitive);
 344.827 +			QHostAddress ip(line);
 344.828 +			return ip;
 344.829 +
 344.830 +		}
 344.831 +		line=configuration.readLine();
 344.832 +	
 344.833 +	}
 344.834 +	QHostAddress ret("192.168.10.1");
 344.835 +		configuration.close();
 344.836 +
 344.837 +	return ret;
 344.838 +
 344.839 +}
   345.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   345.2 +++ b/x86/x86/2.7/readFile.h	Thu Jun 26 17:39:40 2008 +0100
   345.3 @@ -0,0 +1,64 @@
   345.4 +#ifndef READFILE_H
   345.5 +#define READFILE_H
   345.6 +
   345.7 +#include <QtCore>
   345.8 +#include <QtNetwork>
   345.9 +
  345.10 +//QSettings could be used instead...
  345.11 +
  345.12 +/*! \brief This class contains the parser for the configuration file 
  345.13 + * prophet.ini.
  345.14 + * 
  345.15 + * */
  345.16 +class ReadFile: public QObject
  345.17 +{
  345.18 +	Q_OBJECT
  345.19 +
  345.20 +	public:
  345.21 +
  345.22 +	QFile configuration;
  345.23 +
  345.24 +	ReadFile();
  345.25 +	float getGamma();
  345.26 +	float getBeta();
  345.27 +	float getPEncounter();
  345.28 +	int getNodeId();
  345.29 +	int getAgingTimer();
  345.30 +	int getHelloTimer();
  345.31 +	int getInitiatorTimer();
  345.32 +	int getListenerTimer();
  345.33 +	int getDTNHostPort();
  345.34 +	int getMemoryStorageSize();
  345.35 +	int getStorageSize();
  345.36 +	int getAlive();
  345.37 +	int getBroadcastTimer();
  345.38 +	int getHello();
  345.39 +	int getContiniusUpdate();
  345.40 +	int getRouting();
  345.41 +	int getUseFileNodes();
  345.42 +	int getWriteToFileTimer();
  345.43 +	int getAgeFileNodes();
  345.44 +	int getUseFileBundles();
  345.45 +	int getLogOption();
  345.46 +	int getUseACKS();
  345.47 +	int getTTL();
  345.48 +	int getUseTTL();
  345.49 +	int getDTNTimer();
  345.50 +	int getQueue();
  345.51 +	int getSmartOffer();
  345.52 +	int getUseFileHash();
  345.53 +	
  345.54 +	QString getStoragePath();
  345.55 +	QString getMsgPath();
  345.56 +	QString getLogPath();
  345.57 +
  345.58 +
  345.59 +
  345.60 +	QString getNodeName();
  345.61 +	QHostAddress getNodeIp();
  345.62 +	QHostAddress getNodeIp2();
  345.63 +	QHostAddress getDTNHostName();
  345.64 +	QHostAddress getBroadcast();
  345.65 +};
  345.66 +
  345.67 +#endif
   346.1 Binary file x86/x86/2.7/red_off.png has changed
   347.1 Binary file x86/x86/2.7/red_on.png has changed
   348.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   348.2 +++ b/x86/x86/2.7/tcpClient.cpp	Thu Jun 26 17:39:40 2008 +0100
   348.3 @@ -0,0 +1,101 @@
   348.4 +#include "tcpClient.h"
   348.5 +
   348.6 +TcpClient::TcpClient(QObject* parent) : QTcpSocket(parent)
   348.7 +{
   348.8 +
   348.9 +	timer = new QTimer;
  348.10 +	timer->setSingleShot(true);
  348.11 +	connect(timer, SIGNAL(timeout()), this, SLOT(reconnectToHost()));
  348.12 +	connect(this, SIGNAL(stateChanged(QAbstractSocket::SocketState)), this, SLOT(hostStateChanged(QAbstractSocket::SocketState)));
  348.13 +	connect(this, SIGNAL(error(QAbstractSocket::SocketError)), this, SLOT(hostError(QAbstractSocket::SocketError)));
  348.14 +	connect(this, SIGNAL(readyRead()), this, SLOT(hostReadyRead()));
  348.15 +	int i = readBufferSize();
  348.16 +	setReadBufferSize(0);
  348.17 +	currentHostIndex = 0;
  348.18 +}
  348.19 +
  348.20 +TcpClient::~TcpClient()
  348.21 +{
  348.22 +}
  348.23 +
  348.24 +void TcpClient::addHost(QString hn, int hp)
  348.25 +{
  348.26 +	hostNames << hn;
  348.27 +	hostPorts << hp;
  348.28 +	currentHostIndex = hostNames.count()-1;
  348.29 +	if ((state() == QAbstractSocket::UnconnectedState) && (hostNames.count() == 1))
  348.30 +		connectToHost(hostNames[currentHostIndex], hostPorts[currentHostIndex]);
  348.31 +}
  348.32 +
  348.33 +void TcpClient::reconnectToHost()
  348.34 +{
  348.35 +	if (hostNames.count() == 0)
  348.36 +		return;
  348.37 +	currentHostIndex++;
  348.38 +	currentHostIndex = currentHostIndex % hostNames.count();
  348.39 +	connectToHost(hostNames[currentHostIndex], hostPorts[currentHostIndex]);
  348.40 +}
  348.41 +
  348.42 +void TcpClient::hostStateChanged(QAbstractSocket::SocketState state)
  348.43 +{
  348.44 +	switch (state)
  348.45 +	{
  348.46 +	case QAbstractSocket::ConnectedState:
  348.47 +		{
  348.48 +			QList<QString>::iterator it;
  348.49 +			it = commands.begin();
  348.50 +			while (it != commands.end())
  348.51 +			{
  348.52 +				write((*it).toAscii());
  348.53 +				it++;
  348.54 +			}
  348.55 +			emit connected();
  348.56 +		}
  348.57 +		break;
  348.58 +	case QAbstractSocket::UnconnectedState:
  348.59 +		timer->start(2000);
  348.60 +		emit disconnected();
  348.61 +		break;
  348.62 +	}
  348.63 +}
  348.64 +
  348.65 +void TcpClient::hostError(QAbstractSocket::SocketError error)
  348.66 +{
  348.67 +	abort();
  348.68 +	timer->start(2000);
  348.69 +	emit disconnected();
  348.70 +}
  348.71 +
  348.72 +void TcpClient::hostReadyRead()
  348.73 +{
  348.74 +	buffer += readAll();
  348.75 +	int from = 0;
  348.76 +	int idx;
  348.77 +	int size = buffer.size();
  348.78 +	QByteArray end=buffer.mid(size-5);
  348.79 +	idx = end.indexOf("dtn%", from);
  348.80 +	if (idx != -1)
  348.81 +	{
  348.82 +		QByteArray oddan;
  348.83 +		oddan.append(buffer);
  348.84 +		int velikos = oddan.size();
  348.85 +		emit newAnswer(oddan);
  348.86 +		buffer.clear();
  348.87 +	}
  348.88 +}
  348.89 +
  348.90 +void TcpClient::appendCommand(int id, QString cmd)
  348.91 +{
  348.92 +	cmd += QString("\r");
  348.93 +	commands.append(cmd);
  348.94 +	if (state() == QAbstractSocket::ConnectedState)
  348.95 +		write(cmd.toAscii());
  348.96 +}
  348.97 +
  348.98 +bool TcpClient::isConnected()
  348.99 +{
 348.100 +	if (state() == QAbstractSocket::ConnectedState)
 348.101 +		return true;
 348.102 +	else
 348.103 +		return false;
 348.104 +}
   349.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   349.2 +++ b/x86/x86/2.7/tcpClient.h	Thu Jun 26 17:39:40 2008 +0100
   349.3 @@ -0,0 +1,40 @@
   349.4 +#ifndef TCPCLIENT_H
   349.5 +#define TCPCLIENT_H
   349.6 +
   349.7 +#include <QtCore>
   349.8 +#include <QTcpSocket>
   349.9 +#include <QTextCodec>
  349.10 +
  349.11 +class TcpClient : public QTcpSocket
  349.12 +{
  349.13 +	Q_OBJECT
  349.14 +
  349.15 +public:
  349.16 +	TcpClient(QObject* parent = 0);
  349.17 +	~TcpClient();
  349.18 +	virtual void addHost(QString hn, int hp);
  349.19 +	virtual void appendCommand(int id, QString cmd);
  349.20 +	virtual bool isConnected();
  349.21 +
  349.22 +public slots:
  349.23 +	virtual void reconnectToHost();
  349.24 +	virtual void hostStateChanged(QAbstractSocket::SocketState state);
  349.25 +	virtual void hostError(QAbstractSocket::SocketError error);
  349.26 +	virtual void hostReadyRead();
  349.27 +
  349.28 +signals:
  349.29 +	void newAnswer(QByteArray answ);
  349.30 +	void connected();
  349.31 +	void disconnected();
  349.32 +	
  349.33 +private:
  349.34 +	QList<QString> commands;
  349.35 +	QList<int> ids;
  349.36 +	QByteArray buffer;
  349.37 +	QTimer* timer;
  349.38 +	QList<QString> hostNames;
  349.39 +	QList<int> hostPorts;
  349.40 +	int currentHostIndex;
  349.41 +};
  349.42 +
  349.43 +#endif
   350.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   350.2 +++ b/x86/x86/2.7/tlv.cpp	Thu Jun 26 17:39:40 2008 +0100
   350.3 @@ -0,0 +1,521 @@
   350.4 +#include <QtCore>
   350.5 +#include <tlv.h>
   350.6 +#include <hello.h>
   350.7 +#include <messageFile.h>
   350.8 +#include <readFile.h>
   350.9 +#include <stdio.h>
  350.10 +
  350.11 +
  350.12 +//WARNING: SOME OF THE STRUCTURES HAS BEEN MODIFIED AND ARE NOT THE SAME AS IN DRAFT!
  350.13 +struct HelloHeader
  350.14 +{
  350.15 +	qint32 type;
  350.16 +	qint32 function;
  350.17 +	qint32 timer;
  350.18 +	qint32 nameLenght;
  350.19 +	qint32 nodeId;
  350.20 +	qint32 nodeType;
  350.21 +};
  350.22 +
  350.23 +struct DictionaryHeader 
  350.24 +{
  350.25 +	qint32 type;
  350.26 +	qint32 flags;
  350.27 +	qint32 lenght;
  350.28 +	qint32 entryCount;
  350.29 +	qint32 reserved;
  350.30 +};
  350.31 +
  350.32 +struct BundleListHeader 
  350.33 +{
  350.34 +	qint32 type;
  350.35 +	qint32 flags;
  350.36 +	qint32 lenght;
  350.37 +	qint32 entryCount;
  350.38 +	qint32 reserved;
  350.39 +};
  350.40 +
  350.41 +struct BundleListItem 
  350.42 +{
  350.43 +	qint32 destinationId;
  350.44 +	qint32 BFlags;
  350.45 +	qint32 reserved;
  350.46 +	qint32 bundleId;
  350.47 +};
  350.48 +
  350.49 +struct BundleDataHeader 
  350.50 +{
  350.51 +	qint32 sourceId;
  350.52 +	qint32 destinationId;
  350.53 +	qint32 bundleId;
  350.54 +	qint32 BFlags;
  350.55 +	qint32 reserved;
  350.56 +	qint32 dataLenght;	
  350.57 +	qint32 sourceStringLenght;
  350.58 +	qint32 destinationStringLenght;
  350.59 +	uint time;
  350.60 +};
  350.61 +
  350.62 +
  350.63 +struct DictionaryNodeHeader 
  350.64 +{
  350.65 +	qint32 stringId;
  350.66 +	qint32 lenght;
  350.67 +	qint32 reserved;
  350.68 +};
  350.69 +
  350.70 +struct RIBNodeHeader 
  350.71 +{
  350.72 +	qint32 stringId;
  350.73 +	float probability;
  350.74 +	qint32 RIBFlag;
  350.75 +};
  350.76 +
  350.77 +struct Header 
  350.78 +{
  350.79 +	qint32 type;
  350.80 +
  350.81 +};
  350.82 +
  350.83 +
  350.84 +
  350.85 +TLV::TLV(QObject *parent)
  350.86 +{
  350.87 +	ReadFile conf;
  350.88 +	fileOption=conf.getUseFileBundles();
  350.89 +	if(fileOption==1)
  350.90 +	{
  350.91 +		QString storagePath=conf.getStoragePath();
  350.92 +		dir.setPath(storagePath);
  350.93 +	}
  350.94 +}
  350.95 +
  350.96 +
  350.97 +
  350.98 +void TLV::receiveDatagram(QByteArray datagram)
  350.99 +{
 350.100 +	Header* TLVType;
 350.101 +	TLVType= (Header*) datagram.constData();
 350.102 +	qint32 datagramIndex;
 350.103 +	//Read out TLV Type
 350.104 +	QByteArray temp;
 350.105 +	Hello newHello;
 350.106 +	QList<Node> receivedNodes;
 350.107 +	QList<Bundle> receivedBundles;
 350.108 +	QString name;
 350.109 +	struct DictionaryHeader *dictionaryHeader; //It is the same for RIB
 350.110 +	struct BundleListHeader *bundleHeader;
 350.111 +	struct HelloHeader *hello;
 350.112 +	qint32 entryCount;	
 350.113 +	qint32 lenght;
 350.114 +	switch(TLVType->type)
 350.115 +	{
 350.116 +		//Hello massage forming
 350.117 +		case 0x01:	//////log->addLog(0,(QString)"TLV receiving Hello datagram...");
 350.118 +					hello= (HelloHeader*) datagram.constData();
 350.119 + 					newHello.HFunction=(qint32)hello->function;
 350.120 +					newHello.timer =(qint32)hello->timer;
 350.121 +					newHello.senderId=(qint32)hello->nodeId;
 350.122 +					newHello.senderType =(qint32)hello->nodeType;
 350.123 +					lenght = (qint32)hello->nameLenght;
 350.124 +					datagram.remove(0,sizeof(HelloHeader));
 350.125 +					name=datagram.mid(0,lenght);
 350.126 +					newHello.setSenderName(name);
 350.127 +					emit sendHello(newHello);
 350.128 +		break;
 350.129 +		//RIB
 350.130 +		case 0xA1:	//////log->addLog(0,(QString)"TLV receiving RIB datagram...");
 350.131 +					dictionaryHeader = (DictionaryHeader*) datagram.constData();
 350.132 +					entryCount=dictionaryHeader->entryCount;
 350.133 +					datagram.remove(0,sizeof(DictionaryHeader));
 350.134 +					for (ushort i = 0; i < entryCount; ++i) 
 350.135 +					{
 350.136 +						//Resolving data from datagram
 350.137 +						struct RIBNodeHeader *nodeHeader = (RIBNodeHeader*) datagram.constData();
 350.138 +						qint32 stringId = (qint32)nodeHeader->stringId;
 350.139 +						qint32 flag = (qint32)nodeHeader->RIBFlag;
 350.140 +						float probability = (float)nodeHeader->probability;
 350.141 +						datagram.remove(0,sizeof(RIBNodeHeader));
 350.142 +						//Setting node variables
 350.143 +						Node tempNode;
 350.144 +						tempNode.setContent(stringId,probability,flag,"X");
 350.145 +						//Adding variables in the list
 350.146 +						receivedNodes.append(tempNode);
 350.147 +					}
 350.148 +					emit sendRIB(receivedNodes);
 350.149 +		break;
 350.150 +		//BUNDLE OFFER RECEIVED
 350.151 +		case 0xA2:	//////log->addLog(0,(QString)"TLV receiving Bundle offer datagram...");
 350.152 +					bundleHeader = (BundleListHeader*) datagram.constData();
 350.153 +					entryCount=(qint32)bundleHeader->entryCount;
 350.154 +					datagramIndex=sizeof(BundleListHeader);
 350.155 +					datagram.remove(0,datagramIndex);
 350.156 +					for (ushort i = 0; i < entryCount; ++i) 
 350.157 +					{
 350.158 +						//Resolving data from datagram
 350.159 +						struct BundleListItem *bundleItem;
 350.160 +						bundleItem = (BundleListItem*) datagram.constData();
 350.161 +						
 350.162 +						qint32 destId = (qint32)bundleItem->destinationId;
 350.163 +						qint32 bundId = (qint32)bundleItem->bundleId;
 350.164 +						qint32 BFlags = (qint32)bundleItem->BFlags;
 350.165 +						qint32 reserved = (qint32)bundleItem->reserved;
 350.166 +						datagram.remove(0,sizeof(BundleListItem));
 350.167 +						//Setting Bundle variables
 350.168 +						Bundle tempBundle;
 350.169 +						tempBundle.destinationId = destId;
 350.170 +						tempBundle.id = bundId;
 350.171 +						tempBundle.options = BFlags;
 350.172 +						//Adding variables in the list
 350.173 +						receivedBundles.append(tempBundle);
 350.174 +					}
 350.175 +					emit sendBundleOffer(receivedBundles);
 350.176 +		break;
 350.177 +		//BUNDLE REQUEST RECEIVED
 350.178 +		case 0xA3:	//////log->addLog(0,(QString)"TLV receiving Bundle Request datagram...");
 350.179 +					bundleHeader = (BundleListHeader*) datagram.constData();
 350.180 +					entryCount=bundleHeader->entryCount;
 350.181 +					datagramIndex=sizeof(BundleListHeader);
 350.182 +					datagram.remove(0,datagramIndex);
 350.183 +					for (ushort i = 0; i < entryCount; ++i) 
 350.184 +					{
 350.185 +						//Resolving data from datagram
 350.186 +						struct BundleListItem *bundleItem;
 350.187 +						bundleItem = (BundleListItem*) datagram.constData();
 350.188 +						
 350.189 +						qint32 destId = (qint32)bundleItem->destinationId;
 350.190 +						qint32 bundId = (qint32)bundleItem->bundleId;
 350.191 +						qint32 BFlags = (qint32)bundleItem->BFlags;
 350.192 +						qint32 reserved = (qint32)bundleItem->reserved;
 350.193 +						datagram.remove(0,sizeof(BundleListItem));
 350.194 +						//Setting Bundle variables
 350.195 +						Bundle tempBundle;
 350.196 +						tempBundle.destinationId = destId;
 350.197 +						tempBundle.id = bundId;
 350.198 +						tempBundle.options = BFlags;
 350.199 +						//Adding variables in the list
 350.200 +						receivedBundles.append(tempBundle);
 350.201 +					}
 350.202 +					emit sendBundleRequest(receivedBundles);
 350.203 +		break;
 350.204 +		//Dictionary
 350.205 +		case 0xA0:	//////log->addLog(0,(QString)"TLV receiving Dictionary datagram...");
 350.206 +					dictionaryHeader = (DictionaryHeader*) datagram.constData();
 350.207 +					entryCount=dictionaryHeader->entryCount;
 350.208 +					datagram.remove(0,sizeof(DictionaryHeader));
 350.209 +					for (ushort i = 0; i < entryCount; ++i) 
 350.210 +					{
 350.211 +						QString nodeName;
 350.212 +						//Resolving data from datagram
 350.213 +						struct DictionaryNodeHeader * nodeHeader = (DictionaryNodeHeader*) datagram.constData();
 350.214 +						qint32 stringId = (qint32)nodeHeader->stringId;
 350.215 +						qint32 lenght = (qint32)nodeHeader->lenght;
 350.216 +						datagram.remove(0,sizeof(DictionaryNodeHeader)); //Because stings terminator
 350.217 +						nodeName=datagram.mid(0,lenght);
 350.218 +						datagram.remove(0,lenght);
 350.219 +						//Setting node variables
 350.220 +						Node tempNode;
 350.221 +						tempNode.setContent(stringId,0.0,-1,nodeName);
 350.222 +						//Adding variables in the list
 350.223 +						receivedNodes.append(tempNode);
 350.224 +					}
 350.225 +					emit sendDictionary(receivedNodes);
 350.226 +		break;		
 350.227 +		//BUNDLE DATA RECEIVED
 350.228 +		case 0xA4:	//////log->addLog(0,(QString)"TLV receiving Bundle data datagram...");
 350.229 +					bundleHeader = (BundleListHeader*) datagram.constData();
 350.230 +					entryCount=bundleHeader->entryCount;
 350.231 +					datagramIndex=sizeof(BundleListHeader);
 350.232 +					datagram.remove(0,datagramIndex);
 350.233 +					for (ushort i = 0; i < entryCount; ++i) 
 350.234 +					{
 350.235 +						//Resolving data from datagram
 350.236 +						struct BundleDataHeader *bundleItem;
 350.237 +						bundleItem = (BundleDataHeader*) datagram.constData();
 350.238 +						
 350.239 +						qint32 destId = (qint32)bundleItem->destinationId;
 350.240 +						qint32 srcId = (qint32)bundleItem->sourceId;
 350.241 +						qint32 bundId = (qint32)bundleItem->bundleId;
 350.242 +						qint32 BFlags = (qint32)bundleItem->BFlags;
 350.243 +						qint32 reserved = (qint32)bundleItem->reserved;
 350.244 +						qint32 lenght = (qint32)bundleItem->dataLenght;
 350.245 +						qint32 srclenght = (qint32)bundleItem->sourceStringLenght;
 350.246 +						qint32 dstlenght = (qint32)bundleItem->destinationStringLenght;
 350.247 +						
 350.248 +						QDateTime time;
 350.249 +						time.setTime_t(bundleItem->time);
 350.250 +						datagram.remove(0,sizeof(BundleDataHeader));
 350.251 +						//Setting Bundle variables
 350.252 +						Bundle tempBundle;
 350.253 +						tempBundle.destinationId = destId;
 350.254 +						tempBundle.sourceId = srcId;
 350.255 +						tempBundle.id = bundId;
 350.256 +						tempBundle.options = BFlags;
 350.257 +						tempBundle.timeStamp = time;
 350.258 +						QByteArray datagramPart;
 350.259 +						datagramPart=datagram.mid(0,lenght);
 350.260 +						tempBundle.data=datagramPart;
 350.261 +						datagram.remove(0,lenght);
 350.262 +						tempBundle.dataLength=lenght;
 350.263 +						datagramPart=datagram.mid(0,srclenght);
 350.264 +						tempBundle.sourceString=datagramPart;
 350.265 +						datagram.remove(0,srclenght);
 350.266 +						datagramPart=datagram.mid(0,dstlenght);
 350.267 +						tempBundle.destinationString=datagramPart;
 350.268 +						datagram.remove(0,dstlenght);
 350.269 +						//Adding variables in the list
 350.270 +						receivedBundles.append(tempBundle);
 350.271 +					}
 350.272 +					emit sendBundleData(receivedBundles);
 350.273 +		break;
 350.274 +		default:	//////log->addLog(0,(QString)"TLV receiving Unknown datagram...");
 350.275 +					//QString name;
 350.276 +					temp = datagram.mid(2,1);
 350.277 +//					function = temp.toushort();
 350.278 +					temp = datagram.mid(32,1);
 350.279 +//					timer = temp.toushort();
 350.280 +					temp = datagram.mid(40,1);
 350.281 +//					nameLenght = temp.toushort();
 350.282 +					temp = datagram.mid(48,0);
 350.283 +					newHello.setFunction(0);
 350.284 +					newHello.setTimer(0);
 350.285 +					newHello.setSenderName(0);
 350.286 +
 350.287 +		break;
 350.288 +	}
 350.289 +
 350.290 +}
 350.291 +
 350.292 +
 350.293 +void TLV::receiveHello(Hello hello)
 350.294 +{
 350.295 +	//Setting up variables
 350.296 +	struct HelloHeader header;
 350.297 +	QString nodeName = hello.getSenderName();
 350.298 +	header.type = 0x01;//Hello 
 350.299 +	header.function = (qint32)hello.getFunction();
 350.300 +	header.timer = (qint32)hello.getTimer();
 350.301 +	header.nodeId = (qint32)hello.senderId;
 350.302 +	header.nodeType = (qint32)hello.senderType;
 350.303 +	header.nameLenght = (qint32)nodeName.size();
 350.304 +	//Preparing heder
 350.305 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(HelloHeader));	
 350.306 +	//Adding Addres Strings
 350.307 +	newDatagram.append(nodeName.toAscii());
 350.308 +	//Sending our TLV datagram
 350.309 +	//////log->addLog(0,(QString)"TLV sending Hello datagram...");
 350.310 +	emit sendDatagram(newDatagram);
 350.311 +}
 350.312 +
 350.313 +
 350.314 +//Create Dictionary
 350.315 +void TLV::createDictionary(QList<Node> nodeList)
 350.316 +{
 350.317 +	//Setting up variables
 350.318 +	struct DictionaryHeader header;
 350.319 +	header.type = 0xA0;//Dictionary 
 350.320 +	header.flags = 0x00;
 350.321 +	header.lenght = 0x00;
 350.322 +	header.entryCount=(qint32)(nodeList.size());
 350.323 +	header.reserved = 0x00;
 350.324 +	//Preparing heder
 350.325 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(DictionaryHeader));	
 350.326 +	//Adding Addres Strings
 350.327 +	Node tempNode;
 350.328 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 350.329 +	{
 350.330 +		struct DictionaryNodeHeader newNodeHeader;
 350.331 +		//Resolving data from list
 350.332 +        tempNode = nodeList.at(i);
 350.333 +		newNodeHeader.stringId = (qint32)tempNode.getId();
 350.334 +		newNodeHeader.reserved=0x00;
 350.335 +		newNodeHeader.lenght= (qint32)tempNode.nodeName.size();
 350.336 +		//Puting data to datagram
 350.337 +		QByteArray nodeDatagram = QByteArray::fromRawData((char *)&newNodeHeader, sizeof(newNodeHeader));	
 350.338 +		nodeDatagram.append(tempNode.nodeName);
 350.339 +		newDatagram.append(nodeDatagram);
 350.340 +    }
 350.341 +	//////log->addLog(0,(QString)"TLV Sending dictionary datagram...");
 350.342 +	emit sendDatagram(newDatagram);
 350.343 +
 350.344 +}
 350.345 +
 350.346 +//Create RIB
 350.347 +void TLV::createRIB(QList<Node> nodeList)
 350.348 +{
 350.349 +	//Setting up variables
 350.350 +	struct DictionaryHeader header; //It is the same as Dictionary
 350.351 +	header.type = 0xA1;//RIB Type
 350.352 +	header.flags = 0x00;
 350.353 +	header.lenght = 0x00;
 350.354 +	header.entryCount=(qint32)nodeList.size();
 350.355 +	header.reserved = 0x00;
 350.356 +	//Preparing heder
 350.357 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(DictionaryHeader));	
 350.358 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 350.359 +	{
 350.360 +		Node tempNode;
 350.361 +		struct RIBNodeHeader  newNodeHeader;
 350.362 +		//Resolving data from list
 350.363 +        tempNode = nodeList.at(i);
 350.364 +		newNodeHeader.stringId = (qint32)tempNode.getId();
 350.365 +		newNodeHeader.probability = tempNode.getProbability();
 350.366 +		newNodeHeader.RIBFlag = (qint32)tempNode.getFlag();
 350.367 +		//Puting data to datagram
 350.368 +		QByteArray nodeDatagram = QByteArray::fromRawData((char *)&newNodeHeader, sizeof(newNodeHeader));	
 350.369 +		newDatagram.append(nodeDatagram);
 350.370 +    }
 350.371 +	//////log->addLog(0,(QString)"TLV Sending RIB datagram...");
 350.372 +	emit sendDatagram(newDatagram);
 350.373 +
 350.374 +}
 350.375 +
 350.376 +
 350.377 +//Create BundleOffer
 350.378 +void TLV::createBundleOffer(QList<Bundle> bundleList)
 350.379 +{
 350.380 +	//Setting up variables
 350.381 +	struct BundleListHeader header;
 350.382 +	header.type = 0xA2;//Offer
 350.383 +	header.flags = 0x22;
 350.384 +	header.lenght = 0x00;
 350.385 +	header.entryCount=(qint32)bundleList.size();
 350.386 +	header.reserved = 0x00;
 350.387 +	//Preparing heder
 350.388 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(BundleListHeader));	
 350.389 +	//Adding bundles
 350.390 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 350.391 +	{
 350.392 +		struct BundleListItem newBundleItem;
 350.393 +		//Resolving data from list
 350.394 +        Bundle tempBundle = bundleList.at(i);
 350.395 +		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 350.396 +		newBundleItem.bundleId=(qint32)tempBundle.id;
 350.397 +		newBundleItem.BFlags=(qint32)tempBundle.options;
 350.398 +		newBundleItem.reserved=0xaa;
 350.399 +		//Puting data to datagram
 350.400 +		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(newBundleItem));	
 350.401 +		newDatagram.append(bundleDatagram);
 350.402 +    }
 350.403 +	//////log->addLog(0,(QString)"TLV Sending bundle offer...");
 350.404 +	emit sendDatagram(newDatagram);
 350.405 +
 350.406 +}
 350.407 +
 350.408 +//Create BundleRequest
 350.409 +void TLV::createBundleRequest(QList<Bundle> bundleList)
 350.410 +{
 350.411 +	//Setting up variables
 350.412 +	struct BundleListHeader header;
 350.413 +	header.type = 0xA3;//Request
 350.414 +	header.flags = 0x22;
 350.415 +	header.lenght = 0x00;
 350.416 +	header.entryCount=bundleList.size();
 350.417 +	header.reserved = 0x00;
 350.418 +	//Preparing heder
 350.419 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(BundleListHeader));	
 350.420 +	//Adding bundles
 350.421 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 350.422 +	{
 350.423 +		struct BundleListItem newBundleItem;
 350.424 +		//Resolving data from list
 350.425 +        Bundle tempBundle = bundleList.at(i);
 350.426 +		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 350.427 +		newBundleItem.bundleId=(qint32)tempBundle.id;
 350.428 +		newBundleItem.BFlags=(qint32)tempBundle.options;
 350.429 +		newBundleItem.reserved=0xaa;
 350.430 +		//Puting data to datagram
 350.431 +		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(BundleListItem));	
 350.432 +		newDatagram.append(bundleDatagram);
 350.433 +    }
 350.434 +	//////log->addLog(0,(QString)"TLV Sending bundle request...");
 350.435 +	emit sendDatagram(newDatagram);
 350.436 +
 350.437 +}
 350.438 +
 350.439 +
 350.440 +///Create Bundle Data
 350.441 +void TLV::createBundleData(QList<Bundle> bundleList)
 350.442 +{
 350.443 +
 350.444 +	
 350.445 +	//Setting up variables
 350.446 +	struct BundleListHeader header;
 350.447 +	header.type = 0xA4;//Bundle Data
 350.448 +	header.flags = 0x22;
 350.449 +	header.lenght = 0x00;
 350.450 +	header.entryCount=bundleList.size();
 350.451 +	header.reserved = 0x00;
 350.452 +	//Preparing heder
 350.453 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(header));	
 350.454 +	//Adding bundles
 350.455 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 350.456 +	{
 350.457 +		struct BundleDataHeader newBundleItem;
 350.458 +		//Resolving data from list
 350.459 +        	Bundle tempBundle = bundleList.at(i);
 350.460 +		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 350.461 +		newBundleItem.sourceId=(qint32)tempBundle.sourceId;
 350.462 +		newBundleItem.bundleId=(qint32)tempBundle.id;
 350.463 +		newBundleItem.BFlags=(qint32)tempBundle.options;
 350.464 +		newBundleItem.reserved=0xaa;
 350.465 +		newBundleItem.time = tempBundle.timeStamp.toTime_t ();
 350.466 +		//Get bundle data
 350.467 +		QByteArray data;
 350.468 +		data.clear();
 350.469 +		int fileSize;
 350.470 +		if(fileOption==1)
 350.471 +		{
 350.472 +			QString filename;
 350.473 +			filename=QString("%1").arg((int)tempBundle.id);
 350.474 +			QFile file(dir.filePath(filename));
 350.475 +			if(file.exists()==1)
 350.476 +			{
 350.477 +				if (file.open(QIODevice::ReadOnly))
 350.478 +				{
 350.479 +					fileSize=file.size();
 350.480 +					data=file.readAll();
 350.481 +			    		file.close();
 350.482 +				}
 350.483 +			}
 350.484 +		}
 350.485 +		else
 350.486 +		{
 350.487 +			data = tempBundle.data;
 350.488 +		}
 350.489 +		if(data.size()<=0)
 350.490 +			data.clear();
 350.491 +	/*	int size = data.size();
 350.492 +	        QString printout="Size:";
 350.493 +		printout.append(QString("%1").arg((int)size));
 350.494 +		qDebug(printout.toAscii());
 350.495 +		printout.clear();
 350.496 +		printout.append("FileSize:");
 350.497 +		printout.append(QString("%1").arg((int)fileSize));
 350.498 +		qDebug(printout.toAscii());
 350.499 +		printout.clear();
 350.500 +		printout.append("Data:");
 350.501 +		printout.append(data);
 350.502 +		qDebug(printout.toAscii());
 350.503 +	*/	newBundleItem.dataLenght=(qint32)data.size();
 350.504 +		//Get bundle source string
 350.505 +		QByteArray srcData = tempBundle.sourceString;
 350.506 +		newBundleItem.sourceStringLenght=(qint32)srcData.size();
 350.507 +		//Get bundle destination string
 350.508 +		QByteArray dstData = tempBundle.destinationString;
 350.509 +		newBundleItem.destinationStringLenght=(qint32)dstData.size();
 350.510 +		//Puting item header to datagram
 350.511 +		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(newBundleItem));	
 350.512 +		//Puting item data to datagram
 350.513 +		bundleDatagram.append(data);
 350.514 +		bundleDatagram.append(srcData);
 350.515 +		bundleDatagram.append(dstData);
 350.516 +		//Adding it to main datagram
 350.517 +		newDatagram.append(bundleDatagram);
 350.518 +
 350.519 +    }
 350.520 +	//////log->addLog(0,(QString)"TLV Sending bundle data...");
 350.521 +	emit sendDatagram(newDatagram);
 350.522 +}
 350.523 +
 350.524 +
   351.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   351.2 +++ b/x86/x86/2.7/tlv.h	Thu Jun 26 17:39:40 2008 +0100
   351.3 @@ -0,0 +1,115 @@
   351.4 +#ifndef TLV_H
   351.5 +#define TLV_H
   351.6 +
   351.7 +#include <QtCore>
   351.8 +#include <hello.h>
   351.9 +#include <node.h>
  351.10 +#include <bundle.h>
  351.11 +
  351.12 +/*! \brief This class converts datagrams to objects and vice versa.
  351.13 + * 
  351.14 + */
  351.15 +class TLV : public QObject
  351.16 +{
  351.17 +
  351.18 +Q_OBJECT 
  351.19 +	public:
  351.20 +		TLV(QObject *parent = 0);
  351.21 +		int fileOption;
  351.22 +		QDir dir;
  351.23 +
  351.24 +	signals:
  351.25 +		/*! \brief
  351.26 +		 * Sends a datagram to the appropriate Connection object, 
  351.27 +		 * which in turn passes it on as a DataPacket to 
  351.28 +		 * NeighborAwareness where it is sent out on a socket.
  351.29 +		 */
  351.30 +		void sendDatagram(QByteArray);
  351.31 +	
  351.32 +		/*! \brief
  351.33 +		 * Emits a Hello message to the appropriate Connection object.
  351.34 +		 */
  351.35 +		void sendHello(Hello);
  351.36 +		
  351.37 +		/*! \brief
  351.38 +		 * Emits a list with id<-> name mappings to the appropriate 
  351.39 +		 * Conenction object.
  351.40 +		 */
  351.41 +		void sendDictionary(QList<Node>);
  351.42 +		
  351.43 +		/*! \brief
  351.44 +		 * Emits a list of id<->probability mappings to the 
  351.45 +		 * appropriate Connection object.
  351.46 +		 */
  351.47 +		void sendRIB(QList<Node>);
  351.48 +		
  351.49 +		/*! \brief
  351.50 +		 * Emits a bundle offer to the appropriate Connection object.
  351.51 +		 */
  351.52 +		void sendBundleOffer(QList<Bundle>);
  351.53 +		
  351.54 +		/*! \brief
  351.55 +		 * Emits a bundle request to the appropriate Connection object.
  351.56 +		 */
  351.57 +		void sendBundleRequest(QList<Bundle>);
  351.58 +		
  351.59 +		//! Emits a list of bundles containing data.
  351.60 +		/*!
  351.61 +		 * Connected to Connection::receiveBundles.
  351.62 +		 */
  351.63 +		void sendBundleData(QList<Bundle>);
  351.64 +		
  351.65 +	public slots:
  351.66 +	/*! \brief
  351.67 +	 * Builds a hello datagram and emits the signal sendDatagram.
  351.68 +	 * @param hello the Hello object to build a datagram of.
  351.69 +	 */
  351.70 +	void receiveHello(Hello);
  351.71 +		
  351.72 +	/*! \brief
  351.73 +	 * Classifies incoming Datagrams, creates objects from them and emits 
  351.74 +	 * the appropriate signals.
  351.75 +	 * @param datagram the data to be parsed.
  351.76 +	 */
  351.77 +	void receiveDatagram(QByteArray);
  351.78 +		
  351.79 +	/*! \brief
  351.80 +	 * Builds a datagram containing a dictionary, that is a mapping 
  351.81 +	 * between node ids and names. The datagram is emitted by the 
  351.82 +	 * sendDatagram signal.
  351.83 +	 * @param the list of nodes to create the dictionary from.
  351.84 +	 */
  351.85 +	void createDictionary(QList<Node>);
  351.86 +	
  351.87 +	/*! \brief
  351.88 +	 * Builds a datagram containing a RIB, that is a mapping between node 
  351.89 +	 * ids and their delivery predictabilities. Emits the sendDatagram 
  351.90 +	 * signal.
  351.91 +	 * @param the list of nodes to create the RIB from.
  351.92 +	 */
  351.93 +	void createRIB(QList<Node>);
  351.94 +	
  351.95 +	/*! \brief
  351.96 +	 * Builds a bundle offer datagram. That is a list of all bundles this 
  351.97 +	 * node is carrying. Emits the sendDatagram signal.
  351.98 +	 * @param the list of bundles to create the offer from.
  351.99 +	 */
 351.100 +	void createBundleOffer(QList<Bundle>);
 351.101 +	
 351.102 +	/*! \brief
 351.103 +	 * Builds a bundle request datagram, that is a datagram containing a 
 351.104 +	 * list of the bundles this node would like receive. Emits the 
 351.105 +	 * sendDatagram signal.
 351.106 +	 * @param a list of the bundles to be requested.
 351.107 +	 */
 351.108 +	void createBundleRequest(QList<Bundle>);
 351.109 +	
 351.110 +	/*! \brief
 351.111 +	 * Builds a datagram containing all bundles to be transferred to a 
 351.112 +	 * neighbor node. Emits the sendDatagram signal.
 351.113 +	 * @param the list of bundles to send to the neighbor node.
 351.114 +	 */
 351.115 +	void createBundleData(QList<Bundle>);
 351.116 +};
 351.117 +
 351.118 +#endif
   352.1 Binary file x86/x86/2.7/yellow_off.png has changed
   353.1 Binary file x86/x86/2.7/yellow_on.png has changed
   354.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   354.2 +++ b/x86/x86/DTN/BundleCommand.cc	Thu Jun 26 17:39:40 2008 +0100
   354.3 @@ -0,0 +1,309 @@
   354.4 +/*
   354.5 + *    Copyright 2004-2006 Intel Corporation
   354.6 + * 
   354.7 + *    Licensed under the Apache License, Version 2.0 (the "License");
   354.8 + *    you may not use this file except in compliance with the License.
   354.9 + *    You may obtain a copy of the License at
  354.10 + * 
  354.11 + *        http://www.apache.org/licenses/LICENSE-2.0
  354.12 + * 
  354.13 + *    Unless required by applicable law or agreed to in writing, software
  354.14 + *    distributed under the License is distributed on an "AS IS" BASIS,
  354.15 + *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  354.16 + *    See the License for the specific language governing permissions and
  354.17 + *    limitations under the License.
  354.18 + */
  354.19 +
  354.20 +
  354.21 +#include <oasys/util/HexDumpBuffer.h>
  354.22 +#include <oasys/util/StringBuffer.h>
  354.23 +#include <oasys/util/OptParser.h>
  354.24 +
  354.25 +#include "BundleCommand.h"
  354.26 +#include "CompletionNotifier.h"
  354.27 +#include "bundling/Bundle.h"
  354.28 +#include "bundling/BundleEvent.h"
  354.29 +#include "bundling/BundleDaemon.h"
  354.30 +#include "reg/TclRegistration.h"
  354.31 +
  354.32 +namespace dtn {
  354.33 +
  354.34 +BundleCommand::BundleCommand()
  354.35 +    : TclCommand("bundle") 
  354.36 +{
  354.37 +    add_to_help("inject <src> <dst> <payload> <opt1=val1> .. <optN=valN>",
  354.38 +                "valid options:\n"
  354.39 +                "            custody_xfer\n"
  354.40 +                "            receive_rcpt\n"
  354.41 +                "            custody_rcpt\n"
  354.42 +                "            forward_rcpt\n"
  354.43 +                "            delivery_rcpt\n"
  354.44 +                "            deletion_rcpt\n"
  354.45 +                "            expiration=integer\n"
  354.46 +                "            length=integer\n");
  354.47 +    add_to_help("stats", "get statistics on the bundles");
  354.48 +    add_to_help("daemon_stats", "daemon stats");
  354.49 +    add_to_help("reset_stats", "reset currently maintained statistics");
  354.50 +    add_to_help("list", "list all of the bundles in the system");
  354.51 +    add_to_help("info <id>", "get info on a specific bundle");
  354.52 +    add_to_help("dump <id>", "dump a specific bundle");
  354.53 +    add_to_help("dump_tcl <id>", "dump a bundle as a tcl list");
  354.54 +    add_to_help("dump_ascii <id>", "dump the bundle in ascii");
  354.55 +    add_to_help("expire <id>", "force a specific bundle to expire");
  354.56 +}
  354.57 +
  354.58 +BundleCommand::InjectOpts::InjectOpts()
  354.59 +    : custody_xfer_(false),
  354.60 +      receive_rcpt_(false), 
  354.61 +      custody_rcpt_(false), 
  354.62 +      forward_rcpt_(false), 
  354.63 +      delivery_rcpt_(false), 
  354.64 +      deletion_rcpt_(false), 
  354.65 +      expiration_(60),  // bundle TTL
  354.66 +      length_(0),  // bundle payload length
  354.67 +      replyto_("")
  354.68 +{}
  354.69 +    
  354.70 +bool
  354.71 +BundleCommand::parse_inject_options(InjectOpts* options,
  354.72 +                                    int objc, Tcl_Obj** objv,
  354.73 +                                    const char** invalidp)
  354.74 +{
  354.75 +    // no options specified:
  354.76 +    if (objc < 6) {
  354.77 +        return true;
  354.78 +    }
  354.79 +    
  354.80 +    oasys::OptParser p;
  354.81 +
  354.82 +    p.addopt(new oasys::BoolOpt("custody_xfer",  &options->custody_xfer_));
  354.83 +    p.addopt(new oasys::BoolOpt("receive_rcpt",  &options->receive_rcpt_));
  354.84 +    p.addopt(new oasys::BoolOpt("custody_rcpt",  &options->custody_rcpt_));
  354.85 +    p.addopt(new oasys::BoolOpt("forward_rcpt",  &options->forward_rcpt_));
  354.86 +    p.addopt(new oasys::BoolOpt("delivery_rcpt", &options->delivery_rcpt_));
  354.87 +    p.addopt(new oasys::BoolOpt("deletion_rcpt", &options->deletion_rcpt_));
  354.88 +    p.addopt(new oasys::UIntOpt("expiration",    &options->expiration_));
  354.89 +    p.addopt(new oasys::UIntOpt("length",        &options->length_));
  354.90 +    p.addopt(new oasys::StringOpt("replyto",     &options->replyto_));
  354.91 +
  354.92 +    for (int i=5; i<objc; i++) {
  354.93 +        int len;
  354.94 +        const char* option_name = Tcl_GetStringFromObj(objv[i], &len);
  354.95 +        if (! p.parse_opt(option_name, len)) {
  354.96 +            *invalidp = option_name;
  354.97 +            return false;
  354.98 +        }
  354.99 +    }
 354.100 +    return true;
 354.101 +}
 354.102 +
 354.103 +int
 354.104 +BundleCommand::exec(int objc, Tcl_Obj** objv, Tcl_Interp* interp)
 354.105 +{
 354.106 +    // need a subcommand
 354.107 +    if (objc < 2) {
 354.108 +        wrong_num_args(objc, objv, 1, 2, INT_MAX);
 354.109 +        return TCL_ERROR;
 354.110 +    }
 354.111 +
 354.112 +    const char* cmd = Tcl_GetStringFromObj(objv[1], 0);
 354.113 +
 354.114 +    if (strcmp(cmd, "inject") == 0) {
 354.115 +        // bundle inject <source> <dest> <payload> <param1<=value1?>?> ... <paramN<=valueN?>?>
 354.116 +        if (objc < 5) {
 354.117 +            wrong_num_args(objc, objv, 2, 5, INT_MAX);
 354.118 +            return TCL_ERROR;
 354.119 +        }
 354.120 +        
 354.121 +        Bundle* b = new Bundle();
 354.122 +        b->source_.assign(Tcl_GetStringFromObj(objv[2], 0));
 354.123 +        b->replyto_.assign(Tcl_GetStringFromObj(objv[2], 0));
 354.124 +        b->custodian_.assign(EndpointID::NULL_EID());
 354.125 +        b->dest_.assign(Tcl_GetStringFromObj(objv[3], 0));
 354.126 +        
 354.127 +        int payload_len;
 354.128 +        u_char* payload_data = Tcl_GetByteArrayFromObj(objv[4], &payload_len);
 354.129 +
 354.130 +        // now process any optional parameters:
 354.131 +        InjectOpts options;
 354.132 +        const char* invalid;
 354.133 +        if (!parse_inject_options(&options, objc, objv, &invalid)) {
 354.134 +            resultf("error parsing bundle inject options: invalid option '%s'",
 354.135 +                    invalid);
 354.136 +            return TCL_ERROR;
 354.137 +        }
 354.138 +
 354.139 +        b->custody_requested_ = options.custody_xfer_;
 354.140 +        b->receive_rcpt_      = options.receive_rcpt_;
 354.141 +        b->custody_rcpt_      = options.custody_rcpt_;
 354.142 +        b->forward_rcpt_      = options.forward_rcpt_;
 354.143 +        b->delivery_rcpt_     = options.delivery_rcpt_;
 354.144 +        b->deletion_rcpt_     = options.deletion_rcpt_;
 354.145 +        b->expiration_        = options.expiration_;
 354.146 +
 354.147 +        if (options.length_ != 0) {
 354.148 +            // explicit length but some of the data may just be left
 354.149 +            // as garbage. 
 354.150 +            b->payload_.set_length(options.length_);
 354.151 +            if (payload_len != 0) {
 354.152 +                b->payload_.write_data(payload_data, payload_len, 0);
 354.153 +            }
 354.154 +
 354.155 +            // make sure to write a byte at the end of the payload to
 354.156 +            // properly fool the BundlePayload into thinking that we
 354.157 +            // actually got all the data
 354.158 +            u_char byte = 0;
 354.159 +            b->payload_.write_data(&byte, options.length_ - 1, 1);
 354.160 +            
 354.161 +            payload_len = options.length_;
 354.162 +        } else {
 354.163 +            // use the object length
 354.164 +            b->payload_.set_data(payload_data, payload_len);
 354.165 +        }
 354.166 +        
 354.167 +        if (options.replyto_ != "") {
 354.168 +            b->replyto_.assign(options.replyto_.c_str());
 354.169 +        }
 354.170 +
 354.171 +        oasys::StringBuffer error;
 354.172 +        if (!b->validate(&error)) {
 354.173 +            resultf("bundle validation failed: %s", error.data());
 354.174 +            return TCL_ERROR;
 354.175 +        }
 354.176 +        
 354.177 +        log_debug("inject %d byte bundle %s->%s", payload_len,
 354.178 +                  b->source_.c_str(), b->dest_.c_str());
 354.179 +
 354.180 +        BundleDaemon::post(new BundleReceivedEvent(b, EVENTSRC_APP));
 354.181 +
 354.182 +        // return the creation timestamp (can use with source EID to
 354.183 +        // create a globally unique bundle identifier
 354.184 +        resultf("%u.%u", b->creation_ts_.seconds_, b->creation_ts_.seqno_);
 354.185 +        return TCL_OK;
 354.186 +        
 354.187 +    } else if (!strcmp(cmd, "stats")) {
 354.188 +        oasys::StringBuffer buf("Bundle Statistics: ");
 354.189 +        BundleDaemon::instance()->get_bundle_stats(&buf);
 354.190 +        set_result(buf.c_str());
 354.191 +        return TCL_OK;
 354.192 +
 354.193 +    } else if (!strcmp(cmd, "daemon_stats")) {
 354.194 +        oasys::StringBuffer buf("Bundle Daemon Statistics: ");
 354.195 +        BundleDaemon::instance()->get_daemon_stats(&buf);
 354.196 +        set_result(buf.c_str());
 354.197 +        return TCL_OK;
 354.198 +    } else if (!strcmp(cmd, "daemon_status")) {
 354.199 +        BundleDaemon::post_and_wait(new StatusRequest(),
 354.200 +                                    CompletionNotifier::notifier());
 354.201 +        set_result("DTN daemon ok");
 354.202 +        return TCL_OK;
 354.203 +    } else if (!strcmp(cmd, "reset_stats")) {
 354.204 +        BundleDaemon::instance()->reset_stats();
 354.205 +        return TCL_OK;
 354.206 +        
 354.207 +    } else if (!strcmp(cmd, "list")) {
 354.208 +        Bundle* b;
 354.209 +        BundleList::const_iterator iter;
 354.210 +        oasys::StringBuffer buf;
 354.211 +        BundleList* pending =
 354.212 +            BundleDaemon::instance()->pending_bundles();
 354.213 +        
 354.214 +        oasys::ScopeLock l(pending->lock(), "BundleCommand::exec");
 354.215 +        buf.appendf("Currently Pending Bundles (%zu): \n", pending->size());
 354.216 +    
 354.217 +        for (iter = pending->begin(); iter != pending->end(); ++iter) {
 354.218 +            b = *iter;
 354.219 +            buf.appendf("\t%-3d: %s -> %s length %zu\n",
 354.220 +                        b->bundleid_,
 354.221 +                        b->source_.c_str(),
 354.222 +                        b->dest_.c_str(),
 354.223 +                        b->payload_.length());
 354.224 +        }
 354.225 +        
 354.226 +        set_result(buf.c_str());
 354.227 +        
 354.228 +        return TCL_OK;
 354.229 +        
 354.230 +    } else if (!strcmp(cmd, "info") ||
 354.231 +               !strcmp(cmd, "dump") ||
 354.232 +               !strcmp(cmd, "dump_tcl") ||
 354.233 +               !strcmp(cmd, "dump_ascii") ||
 354.234 +               !strcmp(cmd, "expire"))
 354.235 +    {
 354.236 +        // bundle [info|dump|dump_ascii|expire] <id>
 354.237 +        if (objc != 3) {
 354.238 +            wrong_num_args(objc, objv, 2, 3, 3);
 354.239 +            return TCL_ERROR;
 354.240 +        }
 354.241 +
 354.242 +        int bundleid;
 354.243 +        if (Tcl_GetIntFromObj(interp, objv[2], &bundleid) != TCL_OK) {
 354.244 +            resultf("invalid bundle id %s",
 354.245 +                    Tcl_GetStringFromObj(objv[2], 0));
 354.246 +            return TCL_ERROR;
 354.247 +        }
 354.248 +
 354.249 +        BundleList* pending =
 354.250 +            BundleDaemon::instance()->pending_bundles();
 354.251 +        
 354.252 +        BundleRef bundle = pending->find(bundleid);
 354.253 +
 354.254 +        if (bundle == NULL) {
 354.255 +            resultf("no bundle with id %d", bundleid);
 354.256 +            return TCL_ERROR;
 354.257 +        }
 354.258 +
 354.259 +        if (strcmp(cmd, "info") == 0) {
 354.260 +            oasys::StringBuffer buf;
 354.261 +            bundle->format_verbose(&buf);
 354.262 +            buf.append("\n");
 354.263 +            bundle->fwdlog_.dump(&buf);
 354.264 +            set_result(buf.c_str());
 354.265 +
 354.266 +        } else if (strcmp(cmd, "dump_tcl") == 0) {
 354.267 +            Tcl_Obj* result = NULL;
 354.268 +            int ok =
 354.269 +                TclRegistration::parse_bundle_data(interp, bundle, &result);
 354.270 +            
 354.271 +            set_objresult(result);
 354.272 +            return ok;
 354.273 +            
 354.274 +        } else if (strcmp(cmd, "dump_ascii") == 0) {
 354.275 +            size_t len = bundle->payload_.length();
 354.276 +            oasys::HexDumpBuffer buf(len);
 354.277 +            const u_char* bp =
 354.278 +                bundle->payload_.read_data(0, len, (u_char*)buf.data());
 354.279 +            
 354.280 +            buf.append((const char*)bp, len);
 354.281 +            if (!strcmp(cmd, "dump")) {
 354.282 +                buf.hexify();
 354.283 +            }
 354.284 +            set_result(buf.c_str());
 354.285 +	}else if(strcmp(cmd, "dump") == 0) {
 354.286 +            size_t len = bundle->payload_.length();
 354.287 +            oasys::HexDumpBuffer buf(len);
 354.288 +            const u_char* bp =
 354.289 +            bundle->payload_.read_data(0, len, (u_char*)buf.data());
 354.290 +            
 354.291 +            buf.append((const char*)bp, len);
 354.292 +            buf.hexify();
 354.293 +            set_result(buf.c_str());
 354.294 +            BundleDaemon::instance()->post_at_head(
 354.295 +                new BundleExpiredEvent(bundle.object()));
 354.296 +            return TCL_OK;
 354.297 +        } else if (strcmp(cmd, "expire") == 0) {
 354.298 +            BundleDaemon::instance()->post_at_head(
 354.299 +                new BundleExpiredEvent(bundle.object()));
 354.300 +            return TCL_OK;
 354.301 +        }
 354.302 +        
 354.303 +        return TCL_OK;
 354.304 +
 354.305 +    } else {
 354.306 +        resultf("unknown bundle subcommand %s", cmd);
 354.307 +        return TCL_ERROR;
 354.308 +    }
 354.309 +}
 354.310 +
 354.311 +
 354.312 +} // namespace dtn
   355.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   355.2 +++ b/x86/x86/DTN/HexDumpBuffer.cc	Thu Jun 26 17:39:40 2008 +0100
   355.3 @@ -0,0 +1,63 @@
   355.4 +/*
   355.5 + * IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. By
   355.6 + * downloading, copying, installing or using the software you agree to
   355.7 + * this license. If you do not agree to this license, do not download,
   355.8 + * install, copy or use the software.
   355.9 + * 
  355.10 + * Intel Open Source License 
  355.11 + * 
  355.12 + * Copyright (c) 2004 Intel Corporation. All rights reserved. 
  355.13 + * 
  355.14 + * Redistribution and use in source and binary forms, with or without
  355.15 + * modification, are permitted provided that the following conditions are
  355.16 + * met:
  355.17 + * 
  355.18 + *   Redistributions of source code must retain the above copyright
  355.19 + *   notice, this list of conditions and the following disclaimer.
  355.20 + * 
  355.21 + *   Redistributions in binary form must reproduce the above copyright
  355.22 + *   notice, this list of conditions and the following disclaimer in the
  355.23 + *   documentation and/or other materials provided with the distribution.
  355.24 + * 
  355.25 + *   Neither the name of the Intel Corporation nor the names of its
  355.26 + *   contributors may be used to endorse or promote products derived from
  355.27 + *   this software without specific prior written permission.
  355.28 + *  
  355.29 + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  355.30 + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  355.31 + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  355.32 + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE INTEL OR
  355.33 + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  355.34 + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  355.35 + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  355.36 + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  355.37 + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  355.38 + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  355.39 + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  355.40 + */
  355.41 +
  355.42 +#include <ctype.h>
  355.43 +#include "HexDumpBuffer.h"
  355.44 +
  355.45 +namespace oasys {
  355.46 +
  355.47 +void
  355.48 +HexDumpBuffer::hexify()
  355.49 +{
  355.50 +    // make a copy of the current data
  355.51 +    size_t len = length();
  355.52 +    std::string contents(data(), len);
  355.53 +    // rewind the string buffer backwards
  355.54 +    trim(length());
  355.55 +
  355.56 +    // generate the dump
  355.57 +    u_char* bp = (u_char*)contents.data();
  355.58 +    appendf("Size:%d\n",len);
  355.59 +    for (size_t i = 0; i < len; ++i, ++bp)
  355.60 +    {
  355.61 +        // print the hex character
  355.62 +        appendf("%02x", *bp);
  355.63 +    }
  355.64 +}
  355.65 +
  355.66 +} // namespace oasys
   356.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   356.2 +++ b/x86/x86/DTN/file_locations.txt	Thu Jun 26 17:39:40 2008 +0100
   356.3 @@ -0,0 +1,2 @@
   356.4 +DTN_HOME/oasys/util/HexdumpBuffer.cc
   356.5 +DTN_HOME/servlib/cmd/BundleCommand.cc
   357.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   357.2 +++ b/x86/x86/DTNInterface.cpp	Thu Jun 26 17:39:40 2008 +0100
   357.3 @@ -0,0 +1,289 @@
   357.4 +#include <QtCore>
   357.5 +#include <QtNetwork>
   357.6 +#include <readFile.h>
   357.7 +#include <bundleManager.h>
   357.8 +#include <DTNInterface.h>
   357.9 +#include <tcpClient.h>
  357.10 +
  357.11 +#define DTNTIMER 500
  357.12 +
  357.13 +
  357.14 +#define INIT 0
  357.15 +#define DTNLIST 1
  357.16 +#define IDLE 2
  357.17 +#define PARSE 3
  357.18 +
  357.19 +DTNInterface::DTNInterface(BundleManager* bundleMng, NodeManager* nodeMng)
  357.20 +{
  357.21 +	ReadFile conf;
  357.22 +	hostPort=conf.getDTNHostPort();
  357.23 +	hostAddress=conf.getDTNHostName();
  357.24 +	ourName=conf.getNodeName();
  357.25 +	ourId=conf.getNodeId();
  357.26 +	bundleManager = bundleMng;
  357.27 +	nodeManager = nodeMng;
  357.28 +	//Create and connect Hello Timer
  357.29 +	timer = new QTimer(this);
  357.30 +    connect(timer, SIGNAL(timeout()), this, SLOT(getBundles()));
  357.31 +    timer->start(DTNTIMER);
  357.32 +	client = new TcpClient(this);
  357.33 +    sender = new TcpClient(this);
  357.34 +	connect(client, SIGNAL(newAnswer(QByteArray)), this, SLOT(getResponse(QByteArray)));
  357.35 +	client->addHost(hostAddress.toString(),hostPort);
  357.36 +	sender->addHost(hostAddress.toString(),hostPort);
  357.37 +	dtnState=INIT;
  357.38 +	bundlesToParse=0;
  357.39 +	parsedList.clear();
  357.40 +	bundleList.clear();
  357.41 +	ackOption=conf.getUseACKS();
  357.42 +
  357.43 +}
  357.44 +
  357.45 +void DTNInterface::receiveBundle(Bundle bundle)
  357.46 +{
  357.47 +	QString command;
  357.48 +	if(bundle.data.size()>0)
  357.49 +	{
  357.50 +		command.append("bundle inject ");
  357.51 +		command.append(bundle.sourceString);
  357.52 +		command.append(" ");
  357.53 +		command.append(bundle.destinationString);
  357.54 +		command.append(" \"");
  357.55 +		for (int m = 0; m < bundle.data.size(); ++m)
  357.56 +		{
  357.57 +			QString ch;
  357.58 +			ch.append("\\x");
  357.59 +			ch.append(QString("%1").arg((unsigned char)bundle.data.at(m),0,16)  );
  357.60 +			command.append(ch);
  357.61 +		}	
  357.62 +		command.append("\"");
  357.63 +		sender->appendCommand(0,command);
  357.64 +		QFile file("inject.txt");
  357.65 +		if(file.open(QIODevice::WriteOnly))
  357.66 +		{
  357.67 +		    file.write(command.toAscii());
  357.68 +		    file.close();
  357.69 +		
  357.70 +		}
  357.71 +		
  357.72 +		emit sendLog("Adding bundle to DTN...");
  357.73 +	}
  357.74 +	else
  357.75 +		emit sendLog("Zero bundle not sent to DTN...");
  357.76 +
  357.77 +}
  357.78 +
  357.79 +
  357.80 +void DTNInterface::getBundles()
  357.81 +{
  357.82 +	if(dtnState==IDLE)
  357.83 +	{
  357.84 +		dtnState=INIT;
  357.85 +		client->appendCommand(0,(QString)"");
  357.86 +	}
  357.87 +}
  357.88 +
  357.89 +
  357.90 +void DTNInterface::getResponse(QByteArray response)
  357.91 +{
  357.92 +	QString log;
  357.93 +	switch(dtnState)
  357.94 +	{
  357.95 +		case INIT:log.append("INIT:");break;
  357.96 +		case DTNLIST:log.append("DTNLIST:");break;
  357.97 +		case IDLE:log.append("IDLE:");break;
  357.98 +		case PARSE:log.append("PARSE:");break;
  357.99 +	}
 357.100 +	int size=response.size();
 357.101 +	if(size<500)
 357.102 +		log.append(response);
 357.103 +	else
 357.104 +		log.append("Long response...");
 357.105 +	emit sendLog(log);
 357.106 +	QString temp;
 357.107 +	int pos;
 357.108 +	int pos2;
 357.109 +	int inTheList=-1;
 357.110 +	int flag;
 357.111 +	
 357.112 +
 357.113 + 	switch(dtnState)
 357.114 +	{
 357.115 +		case INIT:	bundleIndex=0;
 357.116 +					bundleList.clear();
 357.117 +					client->appendCommand(0,(QString)"bundle list");
 357.118 +					dtnState=DTNLIST;
 357.119 +			break;
 357.120 +		case DTNLIST:	//we get the nuber of bundles
 357.121 +						pos = response.indexOf("(",0);
 357.122 +						pos2 = response.indexOf(")",0);
 357.123 +						temp=response.mid(pos+1,pos2-pos-1);
 357.124 +						bundlesToParse=temp.toInt(0,10);
 357.125 +						response.remove(0,pos2+6);
 357.126 +						emit sendLog("NR BUNDLES:");
 357.127 +	   				    emit sendLog(QString("%1").arg(bundlesToParse));
 357.128 +						while(bundlesToParse>0)
 357.129 +						{
 357.130 +							Bundle tempBundle;
 357.131 +							//If acking is enabled
 357.132 +							tempBundle.setContent(bundleManager->getSeq(),ourId,0,"",0);
 357.133 +							pos2 = response.indexOf(":",0);
 357.134 +							temp=response.mid(0,pos2);
 357.135 +							//Parse bundle ID
 357.136 +							tempBundle.options=temp.toInt(0,10);
 357.137 +							response.remove(0,pos2+2);
 357.138 +							//Parse source name
 357.139 +							pos2= response.indexOf("->",0);
 357.140 +							temp=response.mid(0,pos2-1);
 357.141 +							tempBundle.sourceString=temp.toAscii();
 357.142 +							response.remove(0,pos2+3);
 357.143 +							//Parse destination name
 357.144 +							pos2= response.indexOf("length",0);
 357.145 +							temp=response.mid(0,pos2-1);
 357.146 +							tempBundle.destinationString=temp.toAscii();
 357.147 +							//Parse data length
 357.148 +							response.remove(0,pos2+7);
 357.149 +							pos2= response.indexOf("\r",0);
 357.150 +							temp=response.mid(0,pos2);
 357.151 +							tempBundle.dataLength=temp.toInt(0,10);
 357.152 +							//Removing last part
 357.153 +							pos2= response.indexOf("\r",0);
 357.154 +							response.remove(0,pos2+3);
 357.155 +							bundleList.append(tempBundle);
 357.156 +							bundlesToParse--;
 357.157 +						}
 357.158 +						//Checking for unused bundles in parsed list
 357.159 +						for (int m = 0; m < parsedList.size(); ++m)
 357.160 +						{
 357.161 +							inTheList=-1;
 357.162 +							for (int n = 0; n < bundleList.size(); ++n)
 357.163 +							{
 357.164 +								if(parsedList.at(m)==bundleList.at(n).options)
 357.165 +									inTheList=m;
 357.166 +							}
 357.167 +							if(inTheList==-1)
 357.168 +							{
 357.169 +								parsedList.removeAt(m);
 357.170 +								m=0;
 357.171 +							}
 357.172 +						}
 357.173 +						//Check if it is some of the bundles are already on the parsed list
 357.174 +						for (int m = 0; m < parsedList.size(); ++m)
 357.175 +						{
 357.176 +							inTheList=-1;
 357.177 +							for (int n = 0; n < bundleList.size(); ++n)
 357.178 +							{
 357.179 +								if(parsedList.at(m)==bundleList.at(n).options)
 357.180 +									inTheList=n;
 357.181 +							}
 357.182 +							if(inTheList!=-1)
 357.183 +								bundleList.removeAt(inTheList);
 357.184 +						}
 357.185 +						if(bundleList.size()>0)
 357.186 +						{
 357.187 +							QString command;
 357.188 +							command.append("bundle dump ");
 357.189 +							command.append(QString("%1").arg(bundleList.at(bundleIndex).options));
 357.190 +							client->appendCommand(0,command);
 357.191 +							dtnState=PARSE;
 357.192 +							
 357.193 +						}
 357.194 +						else
 357.195 +						{
 357.196 +							dtnState=IDLE;
 357.197 +						}
 357.198 +			break;
 357.199 +		case PARSE:	client->appendCommand(0,(QString)"bundle list");
 357.200 +						//First we extract the bundle payload size
 357.201 +						temp=response.mid(0,20);
 357.202 +						pos=temp.indexOf("Size:",0);			
 357.203 +						int payloadSize;					
 357.204 +						flag=0;
 357.205 +						pos2=temp.indexOf("\n",0);
 357.206 +						temp=temp.mid(pos+5,pos2-(pos+6));
 357.207 +						payloadSize=temp.toInt(0,10);
 357.208 +						if(payloadSize>0)
 357.209 +						{
 357.210 +							
 357.211 +							QByteArray tempData;
 357.212 +							QString hexValue;
 357.213 +							char decValue;
 357.214 +							response.remove(0,pos2+1);
 357.215 +							pos=0;
 357.216 +							while(pos<(2*payloadSize))
 357.217 +							{
 357.218 +								//Decode hex value
 357.219 +								hexValue=response.mid(pos,2);
 357.220 +								decValue=hexValue.toShort(0,16);
 357.221 +								tempData.append(decValue);
 357.222 +								//Move to next value
 357.223 +								pos=pos+2;
 357.224 +
 357.225 +							}							
 357.226 +							
 357.227 +								
 357.228 +							Bundle tempBundle=bundleList.at(bundleIndex);
 357.229 +							tempBundle.data=tempData;
 357.230 +
 357.231 +						//Removing from the list
 357.232 +							parsedList.append(tempBundle.options);
 357.233 +			
 357.234 +							
 357.235 +							
 357.236 +							
 357.237 +							
 357.238 +							//Checking if this is not our bundle
 357.239 +							QString temp;
 357.240 +							QString destination;
 357.241 +							temp=tempBundle.destinationString;
 357.242 +							pos=temp.indexOf("://",0);
 357.243 +							temp.remove(0,pos+3);
 357.244 +							pos=temp.indexOf("/",0);
 357.245 +							destination=temp.mid(0,pos);
 357.246 +							if(destination!=ourName)
 357.247 +							{
 357.248 +								emit sendLog("Bundle parsed...\r\n");
 357.249 +								tempBundle.options=0;
 357.250 +								//If acking is enabled
 357.251 +								int option=0;
 357.252 +								if(ackOption==1)
 357.253 +								{
 357.254 +									//We set the ACKOption bit and set the ACK bit 
 357.255 +									option=option|0x01;
 357.256 +								}
 357.257 +								tempBundle.options=option;
 357.258 +								if(tempBundle.data.size()>0)
 357.259 +									emit sendBundle(tempBundle);
 357.260 +								bundleManager->updateBundlesDestinations(nodeManager);
 357.261 +								//Delete parsed bundles from DTN
 357.262 +								QString cmd;
 357.263 +								cmd.append("bundle expire ");
 357.264 +								cmd.append(QString("%1").arg(bundleList.at(bundleIndex).options));
 357.265 +								client->appendCommand(0,cmd);
 357.266 +							}
 357.267 +							else
 357.268 +							{
 357.269 +								emit sendLog("Bundle parsed but it is for us...\r\n");
 357.270 +							}
 357.271 +						
 357.272 +						}
 357.273 +						bundleIndex++;
 357.274 +						if(bundleIndex<bundleList.size())
 357.275 +						{
 357.276 +							QString command;
 357.277 +							//We need to use bundle dump_tcl command here as well
 357.278 +							command.append("bundle dump_tcl ");
 357.279 +							command.append(QString("%1").arg(bundleList.at(bundleIndex).options));
 357.280 +							client->appendCommand(0,command);
 357.281 +							dtnState=PARSE;
 357.282 +						}
 357.283 +						else
 357.284 +						{
 357.285 +							dtnState=IDLE;
 357.286 +						}
 357.287 +			break;
 357.288 +		case IDLE:		dtnState=IDLE;
 357.289 +			break;
 357.290 +	}
 357.291 +
 357.292 +}
   358.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   358.2 +++ b/x86/x86/DTNInterface.h	Thu Jun 26 17:39:40 2008 +0100
   358.3 @@ -0,0 +1,73 @@
   358.4 +#ifndef DTNINTERFACE_H
   358.5 +#define DTNINTERFACE_H
   358.6 +
   358.7 +//#include <iostream.h>
   358.8 +#include <QtCore>
   358.9 +#include <QtNetwork>
  358.10 +#include <connection.h>
  358.11 +#include <dataPacket.h>
  358.12 +#include <neighbourAwareness.h>
  358.13 +#include <bundleManager.h>
  358.14 +#include <nodeManager.h>
  358.15 +#include <tcpClient.h>
  358.16 +
  358.17 +/*! \brief This class handles the communication between PRoPHET and DTN.
  358.18 + *
  358.19 + * That is passing bundles between the BundleManager and DTN.<BR>
  358.20 + * DTN States:<BR>
  358.21 + * INIT - ???<BR>
  358.22 + * DTNLIST - ???<BR>
  358.23 + * IDLE - ???<BR>
  358.24 + * PARSE - ???<BR>
  358.25 + */
  358.26 +class DTNInterface : public QObject 
  358.27 +{
  358.28 +
  358.29 +	Q_OBJECT
  358.30 +	public:
  358.31 +	int dtnState;
  358.32 +	int bundlesToParse;
  358.33 +	QList<Bundle> bundleList;
  358.34 +	QList<int> parsedList;
  358.35 +	DTNInterface(BundleManager*,NodeManager* nodeMng);
  358.36 +	BundleManager *bundleManager;
  358.37 +	NodeManager* nodeManager;
  358.38 +	int bundleIndex; 
  358.39 +	int hostPort;
  358.40 +	QHostAddress hostAddress;
  358.41 +	TcpClient *client;
  358.42 +	TcpClient *sender;
  358.43 +	QString ourName;
  358.44 +	int ourId;
  358.45 +	QTimer *timer;
  358.46 +	int ackOption;
  358.47 +		
  358.48 +	public slots:
  358.49 +	/*!
  358.50 +	 * Fetches bundles from DTN???
  358.51 +	 */
  358.52 +	void getBundles();
  358.53 +	
  358.54 +	void getResponse(QByteArray response);
  358.55 +	
  358.56 +	/*!
  358.57 +	 * Injects the specified bundle into DTN.
  358.58 +	 */
  358.59 +	void receiveBundle(Bundle);
  358.60 +	signals:
  358.61 +	
  358.62 +	/*!
  358.63 +	 * Emit the specified QString to the DTN-interface log.
  358.64 +	 */
  358.65 +	void sendLog(QString);
  358.66 +	
  358.67 +	/*!
  358.68 +	 * Emit the specified QString to the DTN-interface log.
  358.69 +	 */
  358.70 +	void sendBundle(Bundle);
  358.71 +
  358.72 +
  358.73 +
  358.74 +};
  358.75 +
  358.76 +#endif
   359.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   359.2 +++ b/x86/x86/Doxyfile	Thu Jun 26 17:39:40 2008 +0100
   359.3 @@ -0,0 +1,1252 @@
   359.4 +# Doxyfile 1.5.0
   359.5 +
   359.6 +# This file describes the settings to be used by the documentation system
   359.7 +# doxygen (www.doxygen.org) for a project
   359.8 +#
   359.9 +# All text after a hash (#) is considered a comment and will be ignored
  359.10 +# The format is:
  359.11 +#       TAG = value [value, ...]
  359.12 +# For lists items can also be appended using:
  359.13 +#       TAG += value [value, ...]
  359.14 +# Values that contain spaces should be placed between quotes (" ")
  359.15 +
  359.16 +#---------------------------------------------------------------------------
  359.17 +# Project related configuration options
  359.18 +#---------------------------------------------------------------------------
  359.19 +
  359.20 +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded 
  359.21 +# by quotes) that should identify the project.
  359.22 +
  359.23 +PROJECT_NAME           = PRoPHET
  359.24 +
  359.25 +# The PROJECT_NUMBER tag can be used to enter a project or revision number. 
  359.26 +# This could be handy for archiving the generated documentation or 
  359.27 +# if some version control system is used.
  359.28 +
  359.29 +PROJECT_NUMBER         = 
  359.30 +
  359.31 +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) 
  359.32 +# base path where the generated documentation will be put. 
  359.33 +# If a relative path is entered, it will be relative to the location 
  359.34 +# where doxygen was started. If left blank the current directory will be used.
  359.35 +
  359.36 +OUTPUT_DIRECTORY       = docs
  359.37 +
  359.38 +# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 
  359.39 +# 4096 sub-directories (in 2 levels) under the output directory of each output 
  359.40 +# format and will distribute the generated files over these directories. 
  359.41 +# Enabling this option can be useful when feeding doxygen a huge amount of 
  359.42 +# source files, where putting all generated files in the same directory would 
  359.43 +# otherwise cause performance problems for the file system.
  359.44 +
  359.45 +CREATE_SUBDIRS         = NO
  359.46 +
  359.47 +# The OUTPUT_LANGUAGE tag is used to specify the language in which all 
  359.48 +# documentation generated by doxygen is written. Doxygen will use this 
  359.49 +# information to generate all constant output in the proper language. 
  359.50 +# The default language is English, other supported languages are: 
  359.51 +# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, 
  359.52 +# Croatian, Czech, Danish, Dutch, Finnish, French, German, Greek, Hungarian, 
  359.53 +# Italian, Japanese, Japanese-en (Japanese with English messages), Korean, 
  359.54 +# Korean-en, Lithuanian, Norwegian, Polish, Portuguese, Romanian, Russian, 
  359.55 +# Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
  359.56 +
  359.57 +OUTPUT_LANGUAGE        = English
  359.58 +
  359.59 +# This tag can be used to specify the encoding used in the generated output. 
  359.60 +# The encoding is not always determined by the language that is chosen, 
  359.61 +# but also whether or not the output is meant for Windows or non-Windows users. 
  359.62 +# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES 
  359.63 +# forces the Windows encoding (this is the default for the Windows binary), 
  359.64 +# whereas setting the tag to NO uses a Unix-style encoding (the default for 
  359.65 +# all platforms other than Windows).
  359.66 +
  359.67 +USE_WINDOWS_ENCODING   = YES
  359.68 +
  359.69 +# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will 
  359.70 +# include brief member descriptions after the members that are listed in 
  359.71 +# the file and class documentation (similar to JavaDoc). 
  359.72 +# Set to NO to disable this.
  359.73 +
  359.74 +BRIEF_MEMBER_DESC      = YES
  359.75 +
  359.76 +# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend 
  359.77 +# the brief description of a member or function before the detailed description. 
  359.78 +# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the 
  359.79 +# brief descriptions will be completely suppressed.
  359.80 +
  359.81 +REPEAT_BRIEF           = YES
  359.82 +
  359.83 +# This tag implements a quasi-intelligent brief description abbreviator 
  359.84 +# that is used to form the text in various listings. Each string 
  359.85 +# in this list, if found as the leading text of the brief description, will be 
  359.86 +# stripped from the text and the result after processing the whole list, is 
  359.87 +# used as the annotated text. Otherwise, the brief description is used as-is. 
  359.88 +# If left blank, the following values are used ("$name" is automatically 
  359.89 +# replaced with the name of the entity): "The $name class" "The $name widget" 
  359.90 +# "The $name file" "is" "provides" "specifies" "contains" 
  359.91 +# "represents" "a" "an" "the"
  359.92 +
  359.93 +ABBREVIATE_BRIEF       = 
  359.94 +
  359.95 +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then 
  359.96 +# Doxygen will generate a detailed section even if there is only a brief 
  359.97 +# description.
  359.98 +
  359.99 +ALWAYS_DETAILED_SEC    = YES
 359.100 +
 359.101 +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all 
 359.102 +# inherited members of a class in the documentation of that class as if those 
 359.103 +# members were ordinary class members. Constructors, destructors and assignment 
 359.104 +# operators of the base classes will not be shown.
 359.105 +
 359.106 +INLINE_INHERITED_MEMB  = NO
 359.107 +
 359.108 +# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full 
 359.109 +# path before files name in the file list and in the header files. If set 
 359.110 +# to NO the shortest path that makes the file name unique will be used.
 359.111 +
 359.112 +FULL_PATH_NAMES        = YES
 359.113 +
 359.114 +# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag 
 359.115 +# can be used to strip a user-defined part of the path. Stripping is 
 359.116 +# only done if one of the specified strings matches the left-hand part of 
 359.117 +# the path. The tag can be used to show relative paths in the file list. 
 359.118 +# If left blank the directory from which doxygen is run is used as the 
 359.119 +# path to strip.
 359.120 +
 359.121 +STRIP_FROM_PATH        = 
 359.122 +
 359.123 +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of 
 359.124 +# the path mentioned in the documentation of a class, which tells 
 359.125 +# the reader which header file to include in order to use a class. 
 359.126 +# If left blank only the name of the header file containing the class 
 359.127 +# definition is used. Otherwise one should specify the include paths that 
 359.128 +# are normally passed to the compiler using the -I flag.
 359.129 +
 359.130 +STRIP_FROM_INC_PATH    = 
 359.131 +
 359.132 +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter 
 359.133 +# (but less readable) file names. This can be useful is your file systems 
 359.134 +# doesn't support long names like on DOS, Mac, or CD-ROM.
 359.135 +
 359.136 +SHORT_NAMES            = NO
 359.137 +
 359.138 +# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen 
 359.139 +# will interpret the first line (until the first dot) of a JavaDoc-style 
 359.140 +# comment as the brief description. If set to NO, the JavaDoc 
 359.141 +# comments will behave just like the Qt-style comments (thus requiring an 
 359.142 +# explicit @brief command for a brief description.
 359.143 +
 359.144 +JAVADOC_AUTOBRIEF      = NO
 359.145 +
 359.146 +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen 
 359.147 +# treat a multi-line C++ special comment block (i.e. a block of //! or /// 
 359.148 +# comments) as a brief description. This used to be the default behaviour. 
 359.149 +# The new default is to treat a multi-line C++ comment block as a detailed 
 359.150 +# description. Set this tag to YES if you prefer the old behaviour instead.
 359.151 +
 359.152 +MULTILINE_CPP_IS_BRIEF = NO
 359.153 +
 359.154 +# If the DETAILS_AT_TOP tag is set to YES then Doxygen 
 359.155 +# will output the detailed description near the top, like JavaDoc.
 359.156 +# If set to NO, the detailed description appears after the member 
 359.157 +# documentation.
 359.158 +
 359.159 +DETAILS_AT_TOP         = YES
 359.160 +
 359.161 +# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented 
 359.162 +# member inherits the documentation from any documented member that it 
 359.163 +# re-implements.
 359.164 +
 359.165 +INHERIT_DOCS           = YES
 359.166 +
 359.167 +# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce 
 359.168 +# a new page for each member. If set to NO, the documentation of a member will 
 359.169 +# be part of the file/class/namespace that contains it.
 359.170 +
 359.171 +SEPARATE_MEMBER_PAGES  = NO
 359.172 +
 359.173 +# The TAB_SIZE tag can be used to set the number of spaces in a tab. 
 359.174 +# Doxygen uses this value to replace tabs by spaces in code fragments.
 359.175 +
 359.176 +TAB_SIZE               = 8
 359.177 +
 359.178 +# This tag can be used to specify a number of aliases that acts 
 359.179 +# as commands in the documentation. An alias has the form "name=value". 
 359.180 +# For example adding "sideeffect=\par Side Effects:\n" will allow you to 
 359.181 +# put the command \sideeffect (or @sideeffect) in the documentation, which 
 359.182 +# will result in a user-defined paragraph with heading "Side Effects:". 
 359.183 +# You can put \n's in the value part of an alias to insert newlines.
 359.184 +
 359.185 +ALIASES                = 
 359.186 +
 359.187 +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C 
 359.188 +# sources only. Doxygen will then generate output that is more tailored for C. 
 359.189 +# For instance, some of the names that are used will be different. The list 
 359.190 +# of all members will be omitted, etc.
 359.191 +
 359.192 +OPTIMIZE_OUTPUT_FOR_C  = NO
 359.193 +
 359.194 +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java 
 359.195 +# sources only. Doxygen will then generate output that is more tailored for Java. 
 359.196 +# For instance, namespaces will be presented as packages, qualified scopes 
 359.197 +# will look different, etc.
 359.198 +
 359.199 +OPTIMIZE_OUTPUT_JAVA   = NO
 359.200 +
 359.201 +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want to 
 359.202 +# include (a tag file for) the STL sources as input, then you should 
 359.203 +# set this tag to YES in order to let doxygen match functions declarations and 
 359.204 +# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. 
 359.205 +# func(std::string) {}). This also make the inheritance and collaboration 
 359.206 +# diagrams that involve STL classes more complete and accurate.
 359.207 +
 359.208 +BUILTIN_STL_SUPPORT    = NO
 359.209 +
 359.210 +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC 
 359.211 +# tag is set to YES, then doxygen will reuse the documentation of the first 
 359.212 +# member in the group (if any) for the other members of the group. By default 
 359.213 +# all members of a group must be documented explicitly.
 359.214 +
 359.215 +DISTRIBUTE_GROUP_DOC   = NO
 359.216 +
 359.217 +# Set the SUBGROUPING tag to YES (the default) to allow class member groups of 
 359.218 +# the same type (for instance a group of public functions) to be put as a 
 359.219 +# subgroup of that type (e.g. under the Public Functions section). Set it to 
 359.220 +# NO to prevent subgrouping. Alternatively, this can be done per class using 
 359.221 +# the \nosubgrouping command.
 359.222 +
 359.223 +SUBGROUPING            = YES
 359.224 +
 359.225 +#---------------------------------------------------------------------------
 359.226 +# Build related configuration options
 359.227 +#---------------------------------------------------------------------------
 359.228 +
 359.229 +# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in 
 359.230 +# documentation are documented, even if no documentation was available. 
 359.231 +# Private class members and static file members will be hidden unless 
 359.232 +# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
 359.233 +
 359.234 +EXTRACT_ALL            = NO
 359.235 +
 359.236 +# If the EXTRACT_PRIVATE tag is set to YES all private members of a class 
 359.237 +# will be included in the documentation.
 359.238 +
 359.239 +EXTRACT_PRIVATE        = NO
 359.240 +
 359.241 +# If the EXTRACT_STATIC tag is set to YES all static members of a file 
 359.242 +# will be included in the documentation.
 359.243 +
 359.244 +EXTRACT_STATIC         = NO
 359.245 +
 359.246 +# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) 
 359.247 +# defined locally in source files will be included in the documentation. 
 359.248 +# If set to NO only classes defined in header files are included.
 359.249 +
 359.250 +EXTRACT_LOCAL_CLASSES  = YES
 359.251 +
 359.252 +# This flag is only useful for Objective-C code. When set to YES local 
 359.253 +# methods, which are defined in the implementation section but not in 
 359.254 +# the interface are included in the documentation. 
 359.255 +# If set to NO (the default) only methods in the interface are included.
 359.256 +
 359.257 +EXTRACT_LOCAL_METHODS  = NO
 359.258 +
 359.259 +# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all 
 359.260 +# undocumented members of documented classes, files or namespaces. 
 359.261 +# If set to NO (the default) these members will be included in the 
 359.262 +# various overviews, but no documentation section is generated. 
 359.263 +# This option has no effect if EXTRACT_ALL is enabled.
 359.264 +
 359.265 +HIDE_UNDOC_MEMBERS     = NO
 359.266 +
 359.267 +# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all 
 359.268 +# undocumented classes that are normally visible in the class hierarchy. 
 359.269 +# If set to NO (the default) these classes will be included in the various 
 359.270 +# overviews. This option has no effect if EXTRACT_ALL is enabled.
 359.271 +
 359.272 +HIDE_UNDOC_CLASSES     = NO
 359.273 +
 359.274 +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all 
 359.275 +# friend (class|struct|union) declarations. 
 359.276 +# If set to NO (the default) these declarations will be included in the 
 359.277 +# documentation.
 359.278 +
 359.279 +HIDE_FRIEND_COMPOUNDS  = NO
 359.280 +
 359.281 +# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any 
 359.282 +# documentation blocks found inside the body of a function. 
 359.283 +# If set to NO (the default) these blocks will be appended to the 
 359.284 +# function's detailed documentation block.
 359.285 +
 359.286 +HIDE_IN_BODY_DOCS      = NO
 359.287 +
 359.288 +# The INTERNAL_DOCS tag determines if documentation 
 359.289 +# that is typed after a \internal command is included. If the tag is set 
 359.290 +# to NO (the default) then the documentation will be excluded. 
 359.291 +# Set it to YES to include the internal documentation.
 359.292 +
 359.293 +INTERNAL_DOCS          = NO
 359.294 +
 359.295 +# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate 
 359.296 +# file names in lower-case letters. If set to YES upper-case letters are also 
 359.297 +# allowed. This is useful if you have classes or files whose names only differ 
 359.298 +# in case and if your file system supports case sensitive file names. Windows 
 359.299 +# and Mac users are advised to set this option to NO.
 359.300 +
 359.301 +CASE_SENSE_NAMES       = NO
 359.302 +
 359.303 +# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen 
 359.304 +# will show members with their full class and namespace scopes in the 
 359.305 +# documentation. If set to YES the scope will be hidden.
 359.306 +
 359.307 +HIDE_SCOPE_NAMES       = NO
 359.308 +
 359.309 +# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen 
 359.310 +# will put a list of the files that are included by a file in the documentation 
 359.311 +# of that file.
 359.312 +
 359.313 +SHOW_INCLUDE_FILES     = YES
 359.314 +
 359.315 +# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] 
 359.316 +# is inserted in the documentation for inline members.
 359.317 +
 359.318 +INLINE_INFO            = YES
 359.319 +
 359.320 +# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen 
 359.321 +# will sort the (detailed) documentation of file and class members 
 359.322 +# alphabetically by member name. If set to NO the members will appear in 
 359.323 +# declaration order.
 359.324 +
 359.325 +SORT_MEMBER_DOCS       = YES
 359.326 +
 359.327 +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the 
 359.328 +# brief documentation of file, namespace and class members alphabetically 
 359.329 +# by member name. If set to NO (the default) the members will appear in 
 359.330 +# declaration order.
 359.331 +
 359.332 +SORT_BRIEF_DOCS        = NO
 359.333 +
 359.334 +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be 
 359.335 +# sorted by fully-qualified names, including namespaces. If set to 
 359.336 +# NO (the default), the class list will be sorted only by class name, 
 359.337 +# not including the namespace part. 
 359.338 +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
 359.339 +# Note: This option applies only to the class list, not to the 
 359.340 +# alphabetical list.
 359.341 +
 359.342 +SORT_BY_SCOPE_NAME     = NO
 359.343 +
 359.344 +# The GENERATE_TODOLIST tag can be used to enable (YES) or 
 359.345 +# disable (NO) the todo list. This list is created by putting \todo 
 359.346 +# commands in the documentation.
 359.347 +
 359.348 +GENERATE_TODOLIST      = YES
 359.349 +
 359.350 +# The GENERATE_TESTLIST tag can be used to enable (YES) or 
 359.351 +# disable (NO) the test list. This list is created by putting \test 
 359.352 +# commands in the documentation.
 359.353 +
 359.354 +GENERATE_TESTLIST      = YES
 359.355 +
 359.356 +# The GENERATE_BUGLIST tag can be used to enable (YES) or 
 359.357 +# disable (NO) the bug list. This list is created by putting \bug 
 359.358 +# commands in the documentation.
 359.359 +
 359.360 +GENERATE_BUGLIST       = YES
 359.361 +
 359.362 +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or 
 359.363 +# disable (NO) the deprecated list. This list is created by putting 
 359.364 +# \deprecated commands in the documentation.
 359.365 +
 359.366 +GENERATE_DEPRECATEDLIST= YES
 359.367 +
 359.368 +# The ENABLED_SECTIONS tag can be used to enable conditional 
 359.369 +# documentation sections, marked by \if sectionname ... \endif.
 359.370 +
 359.371 +ENABLED_SECTIONS       = 
 359.372 +
 359.373 +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines 
 359.374 +# the initial value of a variable or define consists of for it to appear in 
 359.375 +# the documentation. If the initializer consists of more lines than specified 
 359.376 +# here it will be hidden. Use a value of 0 to hide initializers completely. 
 359.377 +# The appearance of the initializer of individual variables and defines in the 
 359.378 +# documentation can be controlled using \showinitializer or \hideinitializer 
 359.379 +# command in the documentation regardless of this setting.
 359.380 +
 359.381 +MAX_INITIALIZER_LINES  = 30
 359.382 +
 359.383 +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated 
 359.384 +# at the bottom of the documentation of classes and structs. If set to YES the 
 359.385 +# list will mention the files that were used to generate the documentation.
 359.386 +
 359.387 +SHOW_USED_FILES        = YES
 359.388 +
 359.389 +# If the sources in your project are distributed over multiple directories 
 359.390 +# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy 
 359.391 +# in the documentation. The default is NO.
 359.392 +
 359.393 +SHOW_DIRECTORIES       = NO
 359.394 +
 359.395 +# The FILE_VERSION_FILTER tag can be used to specify a program or script that 
 359.396 +# doxygen should invoke to get the current version for each file (typically from the 
 359.397 +# version control system). Doxygen will invoke the program by executing (via 
 359.398 +# popen()) the command <command> <input-file>, where <command> is the value of 
 359.399 +# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file 
 359.400 +# provided by doxygen. Whatever the program writes to standard output 
 359.401 +# is used as the file version. See the manual for examples.
 359.402 +
 359.403 +FILE_VERSION_FILTER    = 
 359.404 +
 359.405 +#---------------------------------------------------------------------------
 359.406 +# configuration options related to warning and progress messages
 359.407 +#---------------------------------------------------------------------------
 359.408 +
 359.409 +# The QUIET tag can be used to turn on/off the messages that are generated 
 359.410 +# by doxygen. Possible values are YES and NO. If left blank NO is used.
 359.411 +
 359.412 +QUIET                  = NO
 359.413 +
 359.414 +# The WARNINGS tag can be used to turn on/off the warning messages that are 
 359.415 +# generated by doxygen. Possible values are YES and NO. If left blank 
 359.416 +# NO is used.
 359.417 +
 359.418 +WARNINGS               = YES
 359.419 +
 359.420 +# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings 
 359.421 +# for undocumented members. If EXTRACT_ALL is set to YES then this flag will 
 359.422 +# automatically be disabled.
 359.423 +
 359.424 +WARN_IF_UNDOCUMENTED   = YES
 359.425 +
 359.426 +# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for 
 359.427 +# potential errors in the documentation, such as not documenting some 
 359.428 +# parameters in a documented function, or documenting parameters that 
 359.429 +# don't exist or using markup commands wrongly.
 359.430 +
 359.431 +WARN_IF_DOC_ERROR      = YES
 359.432 +
 359.433 +# This WARN_NO_PARAMDOC option can be abled to get warnings for 
 359.434 +# functions that are documented, but have no documentation for their parameters 
 359.435 +# or return value. If set to NO (the default) doxygen will only warn about 
 359.436 +# wrong or incomplete parameter documentation, but not about the absence of 
 359.437 +# documentation.
 359.438 +
 359.439 +WARN_NO_PARAMDOC       = NO
 359.440 +
 359.441 +# The WARN_FORMAT tag determines the format of the warning messages that 
 359.442 +# doxygen can produce. The string should contain the $file, $line, and $text 
 359.443 +# tags, which will be replaced by the file and line number from which the 
 359.444 +# warning originated and the warning text. Optionally the format may contain 
 359.445 +# $version, which will be replaced by the version of the file (if it could 
 359.446 +# be obtained via FILE_VERSION_FILTER)
 359.447 +
 359.448 +WARN_FORMAT            = "$file:$line: $text"
 359.449 +
 359.450 +# The WARN_LOGFILE tag can be used to specify a file to which warning 
 359.451 +# and error messages should be written. If left blank the output is written 
 359.452 +# to stderr.
 359.453 +
 359.454 +WARN_LOGFILE           = 
 359.455 +
 359.456 +#---------------------------------------------------------------------------
 359.457 +# configuration options related to the input files
 359.458 +#---------------------------------------------------------------------------
 359.459 +
 359.460 +# The INPUT tag can be used to specify the files and/or directories that contain 
 359.461 +# documented source files. You may enter file names like "myfile.cpp" or 
 359.462 +# directories like "/usr/src/myproject". Separate the files or directories 
 359.463 +# with spaces.
 359.464 +
 359.465 +INPUT                  =
 359.466 +
 359.467 +# If the value of the INPUT tag contains directories, you can use the 
 359.468 +# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
 359.469 +# and *.h) to filter out the source-files in the directories. If left 
 359.470 +# blank the following patterns are tested: 
 359.471 +# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx 
 359.472 +# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py
 359.473 +
 359.474 +FILE_PATTERNS          = *.h *.cpp
 359.475 +
 359.476 +# The RECURSIVE tag can be used to turn specify whether or not subdirectories 
 359.477 +# should be searched for input files as well. Possible values are YES and NO. 
 359.478 +# If left blank NO is used.
 359.479 +
 359.480 +RECURSIVE              = NO
 359.481 +
 359.482 +# The EXCLUDE tag can be used to specify files and/or directories that should 
 359.483 +# excluded from the INPUT source files. This way you can easily exclude a 
 359.484 +# subdirectory from a directory tree whose root is specified with the INPUT tag.
 359.485 +
 359.486 +EXCLUDE                = 
 359.487 +
 359.488 +# The EXCLUDE_SYMLINKS tag can be used select whether or not files or 
 359.489 +# directories that are symbolic links (a Unix filesystem feature) are excluded 
 359.490 +# from the input.
 359.491 +
 359.492 +EXCLUDE_SYMLINKS       = NO
 359.493 +
 359.494 +# If the value of the INPUT tag contains directories, you can use the 
 359.495 +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude 
 359.496 +# certain files from those directories. Note that the wildcards are matched 
 359.497 +# against the file with absolute path, so to exclude all test directories 
 359.498 +# for example use the pattern */test/*
 359.499 +
 359.500 +EXCLUDE_PATTERNS       = 
 359.501 +
 359.502 +# The EXAMPLE_PATH tag can be used to specify one or more files or 
 359.503 +# directories that contain example code fragments that are included (see 
 359.504 +# the \include command).
 359.505 +
 359.506 +EXAMPLE_PATH           = 
 359.507 +
 359.508 +# If the value of the EXAMPLE_PATH tag contains directories, you can use the 
 359.509 +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
 359.510 +# and *.h) to filter out the source-files in the directories. If left 
 359.511 +# blank all files are included.
 359.512 +
 359.513 +EXAMPLE_PATTERNS       = 
 359.514 +
 359.515 +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be 
 359.516 +# searched for input files to be used with the \include or \dontinclude 
 359.517 +# commands irrespective of the value of the RECURSIVE tag. 
 359.518 +# Possible values are YES and NO. If left blank NO is used.
 359.519 +
 359.520 +EXAMPLE_RECURSIVE      = NO
 359.521 +
 359.522 +# The IMAGE_PATH tag can be used to specify one or more files or 
 359.523 +# directories that contain image that are included in the documentation (see 
 359.524 +# the \image command).
 359.525 +
 359.526 +IMAGE_PATH             = 
 359.527 +
 359.528 +# The INPUT_FILTER tag can be used to specify a program that doxygen should 
 359.529 +# invoke to filter for each input file. Doxygen will invoke the filter program 
 359.530 +# by executing (via popen()) the command <filter> <input-file>, where <filter> 
 359.531 +# is the value of the INPUT_FILTER tag, and <input-file> is the name of an 
 359.532 +# input file. Doxygen will then use the output that the filter program writes 
 359.533 +# to standard output.  If FILTER_PATTERNS is specified, this tag will be 
 359.534 +# ignored.
 359.535 +
 359.536 +INPUT_FILTER           = 
 359.537 +
 359.538 +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern 
 359.539 +# basis.  Doxygen will compare the file name with each pattern and apply the 
 359.540 +# filter if there is a match.  The filters are a list of the form: 
 359.541 +# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further 
 359.542 +# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER 
 359.543 +# is applied to all files.
 359.544 +
 359.545 +FILTER_PATTERNS        = 
 359.546 +
 359.547 +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using 
 359.548 +# INPUT_FILTER) will be used to filter the input files when producing source 
 359.549 +# files to browse (i.e. when SOURCE_BROWSER is set to YES).
 359.550 +
 359.551 +FILTER_SOURCE_FILES    = NO
 359.552 +
 359.553 +#---------------------------------------------------------------------------
 359.554 +# configuration options related to source browsing
 359.555 +#---------------------------------------------------------------------------
 359.556 +
 359.557 +# If the SOURCE_BROWSER tag is set to YES then a list of source files will 
 359.558 +# be generated. Documented entities will be cross-referenced with these sources. 
 359.559 +# Note: To get rid of all source code in the generated output, make sure also 
 359.560 +# VERBATIM_HEADERS is set to NO.
 359.561 +
 359.562 +SOURCE_BROWSER         = NO
 359.563 +
 359.564 +# Setting the INLINE_SOURCES tag to YES will include the body 
 359.565 +# of functions and classes directly in the documentation.
 359.566 +
 359.567 +INLINE_SOURCES         = NO
 359.568 +
 359.569 +# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct 
 359.570 +# doxygen to hide any special comment blocks from generated source code 
 359.571 +# fragments. Normal C and C++ comments will always remain visible.
 359.572 +
 359.573 +STRIP_CODE_COMMENTS    = YES
 359.574 +
 359.575 +# If the REFERENCED_BY_RELATION tag is set to YES (the default) 
 359.576 +# then for each documented function all documented 
 359.577 +# functions referencing it will be listed.
 359.578 +
 359.579 +REFERENCED_BY_RELATION = YES
 359.580 +
 359.581 +# If the REFERENCES_RELATION tag is set to YES (the default) 
 359.582 +# then for each documented function all documented entities 
 359.583 +# called/used by that function will be listed.
 359.584 +
 359.585 +REFERENCES_RELATION    = YES
 359.586 +
 359.587 +# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
 359.588 +# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
 359.589 +# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
 359.590 +# link to the source code.  Otherwise they will link to the documentstion.
 359.591 +
 359.592 +REFERENCES_LINK_SOURCE = YES
 359.593 +
 359.594 +# If the USE_HTAGS tag is set to YES then the references to source code 
 359.595 +# will point to the HTML generated by the htags(1) tool instead of doxygen 
 359.596 +# built-in source browser. The htags tool is part of GNU's global source 
 359.597 +# tagging system (see http://www.gnu.org/software/global/global.html). You 
 359.598 +# will need version 4.8.6 or higher.
 359.599 +
 359.600 +USE_HTAGS              = NO
 359.601 +
 359.602 +# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen 
 359.603 +# will generate a verbatim copy of the header file for each class for 
 359.604 +# which an include is specified. Set to NO to disable this.
 359.605 +
 359.606 +VERBATIM_HEADERS       = YES
 359.607 +
 359.608 +#---------------------------------------------------------------------------
 359.609 +# configuration options related to the alphabetical class index
 359.610 +#---------------------------------------------------------------------------
 359.611 +
 359.612 +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index 
 359.613 +# of all compounds will be generated. Enable this if the project 
 359.614 +# contains a lot of classes, structs, unions or interfaces.
 359.615 +
 359.616 +ALPHABETICAL_INDEX     = NO
 359.617 +
 359.618 +# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then 
 359.619 +# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns 
 359.620 +# in which this list will be split (can be a number in the range [1..20])
 359.621 +
 359.622 +COLS_IN_ALPHA_INDEX    = 5
 359.623 +
 359.624 +# In case all classes in a project start with a common prefix, all 
 359.625 +# classes will be put under the same header in the alphabetical index. 
 359.626 +# The IGNORE_PREFIX tag can be used to specify one or more prefixes that 
 359.627 +# should be ignored while generating the index headers.
 359.628 +
 359.629 +IGNORE_PREFIX          = 
 359.630 +
 359.631 +#---------------------------------------------------------------------------
 359.632 +# configuration options related to the HTML output
 359.633 +#---------------------------------------------------------------------------
 359.634 +
 359.635 +# If the GENERATE_HTML tag is set to YES (the default) Doxygen will 
 359.636 +# generate HTML output.
 359.637 +
 359.638 +GENERATE_HTML          = YES
 359.639 +
 359.640 +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. 
 359.641 +# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
 359.642 +# put in front of it. If left blank `html' will be used as the default path.
 359.643 +
 359.644 +HTML_OUTPUT            = html
 359.645 +
 359.646 +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for 
 359.647 +# each generated HTML page (for example: .htm,.php,.asp). If it is left blank 
 359.648 +# doxygen will generate files with .html extension.
 359.649 +
 359.650 +HTML_FILE_EXTENSION    = .html
 359.651 +
 359.652 +# The HTML_HEADER tag can be used to specify a personal HTML header for 
 359.653 +# each generated HTML page. If it is left blank doxygen will generate a 
 359.654 +# standard header.
 359.655 +
 359.656 +HTML_HEADER            = 
 359.657 +
 359.658 +# The HTML_FOOTER tag can be used to specify a personal HTML footer for 
 359.659 +# each generated HTML page. If it is left blank doxygen will generate a 
 359.660 +# standard footer.
 359.661 +
 359.662 +HTML_FOOTER            = 
 359.663 +
 359.664 +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading 
 359.665 +# style sheet that is used by each HTML page. It can be used to 
 359.666 +# fine-tune the look of the HTML output. If the tag is left blank doxygen 
 359.667 +# will generate a default style sheet. Note that doxygen will try to copy 
 359.668 +# the style sheet file to the HTML output directory, so don't put your own 
 359.669 +# stylesheet in the HTML output directory as well, or it will be erased!
 359.670 +
 359.671 +HTML_STYLESHEET        = 
 359.672 +
 359.673 +# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, 
 359.674 +# files or namespaces will be aligned in HTML using tables. If set to 
 359.675 +# NO a bullet list will be used.
 359.676 +
 359.677 +HTML_ALIGN_MEMBERS     = YES
 359.678 +
 359.679 +# If the GENERATE_HTMLHELP tag is set to YES, additional index files 
 359.680 +# will be generated that can be used as input for tools like the 
 359.681 +# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) 
 359.682 +# of the generated HTML documentation.
 359.683 +
 359.684 +GENERATE_HTMLHELP      = NO
 359.685 +
 359.686 +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can 
 359.687 +# be used to specify the file name of the resulting .chm file. You 
 359.688 +# can add a path in front of the file if the result should not be 
 359.689 +# written to the html output directory.
 359.690 +
 359.691 +CHM_FILE               = 
 359.692 +
 359.693 +# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can 
 359.694 +# be used to specify the location (absolute path including file name) of 
 359.695 +# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run 
 359.696 +# the HTML help compiler on the generated index.hhp.
 359.697 +
 359.698 +HHC_LOCATION           = 
 359.699 +
 359.700 +# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag 
 359.701 +# controls if a separate .chi index file is generated (YES) or that 
 359.702 +# it should be included in the master .chm file (NO).
 359.703 +
 359.704 +GENERATE_CHI           = NO
 359.705 +
 359.706 +# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag 
 359.707 +# controls whether a binary table of contents is generated (YES) or a 
 359.708 +# normal table of contents (NO) in the .chm file.
 359.709 +
 359.710 +BINARY_TOC             = NO
 359.711 +
 359.712 +# The TOC_EXPAND flag can be set to YES to add extra items for group members 
 359.713 +# to the contents of the HTML help documentation and to the tree view.
 359.714 +
 359.715 +TOC_EXPAND             = NO
 359.716 +
 359.717 +# The DISABLE_INDEX tag can be used to turn on/off the condensed index at 
 359.718 +# top of each HTML page. The value NO (the default) enables the index and 
 359.719 +# the value YES disables it.
 359.720 +
 359.721 +DISABLE_INDEX          = NO
 359.722 +
 359.723 +# This tag can be used to set the number of enum values (range [1..20]) 
 359.724 +# that doxygen will group on one line in the generated HTML documentation.
 359.725 +
 359.726 +ENUM_VALUES_PER_LINE   = 4
 359.727 +
 359.728 +# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
 359.729 +# generated containing a tree-like index structure (just like the one that 
 359.730 +# is generated for HTML Help). For this to work a browser that supports 
 359.731 +# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, 
 359.732 +# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are 
 359.733 +# probably better off using the HTML help feature.
 359.734 +
 359.735 +GENERATE_TREEVIEW      = NO
 359.736 +
 359.737 +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be 
 359.738 +# used to set the initial width (in pixels) of the frame in which the tree 
 359.739 +# is shown.
 359.740 +
 359.741 +TREEVIEW_WIDTH         = 250
 359.742 +
 359.743 +#---------------------------------------------------------------------------
 359.744 +# configuration options related to the LaTeX output
 359.745 +#---------------------------------------------------------------------------
 359.746 +
 359.747 +# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will 
 359.748 +# generate Latex output.
 359.749 +
 359.750 +GENERATE_LATEX         = YES
 359.751 +
 359.752 +# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. 
 359.753 +# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
 359.754 +# put in front of it. If left blank `latex' will be used as the default path.
 359.755 +
 359.756 +LATEX_OUTPUT           = latex
 359.757 +
 359.758 +# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be 
 359.759 +# invoked. If left blank `latex' will be used as the default command name.
 359.760 +
 359.761 +LATEX_CMD_NAME         = latex
 359.762 +
 359.763 +# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to 
 359.764 +# generate index for LaTeX. If left blank `makeindex' will be used as the 
 359.765 +# default command name.
 359.766 +
 359.767 +MAKEINDEX_CMD_NAME     = makeindex
 359.768 +
 359.769 +# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact 
 359.770 +# LaTeX documents. This may be useful for small projects and may help to 
 359.771 +# save some trees in general.
 359.772 +
 359.773 +COMPACT_LATEX          = NO
 359.774 +
 359.775 +# The PAPER_TYPE tag can be used to set the paper type that is used 
 359.776 +# by the printer. Possible values are: a4, a4wide, letter, legal and 
 359.777 +# executive. If left blank a4wide will be used.
 359.778 +
 359.779 +PAPER_TYPE             = a4wide
 359.780 +
 359.781 +# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX 
 359.782 +# packages that should be included in the LaTeX output.
 359.783 +
 359.784 +EXTRA_PACKAGES         = 
 359.785 +
 359.786 +# The LATEX_HEADER tag can be used to specify a personal LaTeX header for 
 359.787 +# the generated latex document. The header should contain everything until 
 359.788 +# the first chapter. If it is left blank doxygen will generate a 
 359.789 +# standard header. Notice: only use this tag if you know what you are doing!
 359.790 +
 359.791 +LATEX_HEADER           = 
 359.792 +
 359.793 +# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated 
 359.794 +# is prepared for conversion to pdf (using ps2pdf). The pdf file will 
 359.795 +# contain links (just like the HTML output) instead of page references 
 359.796 +# This makes the output suitable for online browsing using a pdf viewer.
 359.797 +
 359.798 +PDF_HYPERLINKS         = NO
 359.799 +
 359.800 +# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of 
 359.801 +# plain latex in the generated Makefile. Set this option to YES to get a 
 359.802 +# higher quality PDF documentation.
 359.803 +
 359.804 +USE_PDFLATEX           = NO
 359.805 +
 359.806 +# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. 
 359.807 +# command to the generated LaTeX files. This will instruct LaTeX to keep 
 359.808 +# running if errors occur, instead of asking the user for help. 
 359.809 +# This option is also used when generating formulas in HTML.
 359.810 +
 359.811 +LATEX_BATCHMODE        = NO
 359.812 +
 359.813 +# If LATEX_HIDE_INDICES is set to YES then doxygen will not 
 359.814 +# include the index chapters (such as File Index, Compound Index, etc.) 
 359.815 +# in the output.
 359.816 +
 359.817 +LATEX_HIDE_INDICES     = NO
 359.818 +
 359.819 +#---------------------------------------------------------------------------
 359.820 +# configuration options related to the RTF output
 359.821 +#---------------------------------------------------------------------------
 359.822 +
 359.823 +# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output 
 359.824 +# The RTF output is optimized for Word 97 and may not look very pretty with 
 359.825 +# other RTF readers or editors.
 359.826 +
 359.827 +GENERATE_RTF           = NO
 359.828 +
 359.829 +# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. 
 359.830 +# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
 359.831 +# put in front of it. If left blank `rtf' will be used as the default path.
 359.832 +
 359.833 +RTF_OUTPUT             = rtf
 359.834 +
 359.835 +# If the COMPACT_RTF tag is set to YES Doxygen generates more compact 
 359.836 +# RTF documents. This may be useful for small projects and may help to 
 359.837 +# save some trees in general.
 359.838 +
 359.839 +COMPACT_RTF            = NO
 359.840 +
 359.841 +# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated 
 359.842 +# will contain hyperlink fields. The RTF file will 
 359.843 +# contain links (just like the HTML output) instead of page references. 
 359.844 +# This makes the output suitable for online browsing using WORD or other 
 359.845 +# programs which support those fields. 
 359.846 +# Note: wordpad (write) and others do not support links.
 359.847 +
 359.848 +RTF_HYPERLINKS         = NO
 359.849 +
 359.850 +# Load stylesheet definitions from file. Syntax is similar to doxygen's 
 359.851 +# config file, i.e. a series of assignments. You only have to provide 
 359.852 +# replacements, missing definitions are set to their default value.
 359.853 +
 359.854 +RTF_STYLESHEET_FILE    = 
 359.855 +
 359.856 +# Set optional variables used in the generation of an rtf document. 
 359.857 +# Syntax is similar to doxygen's config file.
 359.858 +
 359.859 +RTF_EXTENSIONS_FILE    = 
 359.860 +
 359.861 +#---------------------------------------------------------------------------
 359.862 +# configuration options related to the man page output
 359.863 +#---------------------------------------------------------------------------
 359.864 +
 359.865 +# If the GENERATE_MAN tag is set to YES (the default) Doxygen will 
 359.866 +# generate man pages
 359.867 +
 359.868 +GENERATE_MAN           = NO
 359.869 +
 359.870 +# The MAN_OUTPUT tag is used to specify where the man pages will be put. 
 359.871 +# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
 359.872 +# put in front of it. If left blank `man' will be used as the default path.
 359.873 +
 359.874 +MAN_OUTPUT             = man
 359.875 +
 359.876 +# The MAN_EXTENSION tag determines the extension that is added to 
 359.877 +# the generated man pages (default is the subroutine's section .3)
 359.878 +
 359.879 +MAN_EXTENSION          = .3
 359.880 +
 359.881 +# If the MAN_LINKS tag is set to YES and Doxygen generates man output, 
 359.882 +# then it will generate one additional man file for each entity 
 359.883 +# documented in the real man page(s). These additional files 
 359.884 +# only source the real man page, but without them the man command 
 359.885 +# would be unable to find the correct page. The default is NO.
 359.886 +
 359.887 +MAN_LINKS              = NO
 359.888 +
 359.889 +#---------------------------------------------------------------------------
 359.890 +# configuration options related to the XML output
 359.891 +#---------------------------------------------------------------------------
 359.892 +
 359.893 +# If the GENERATE_XML tag is set to YES Doxygen will 
 359.894 +# generate an XML file that captures the structure of 
 359.895 +# the code including all documentation.
 359.896 +
 359.897 +GENERATE_XML           = NO
 359.898 +
 359.899 +# The XML_OUTPUT tag is used to specify where the XML pages will be put. 
 359.900 +# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
 359.901 +# put in front of it. If left blank `xml' will be used as the default path.
 359.902 +
 359.903 +XML_OUTPUT             = xml
 359.904 +
 359.905 +# The XML_SCHEMA tag can be used to specify an XML schema, 
 359.906 +# which can be used by a validating XML parser to check the 
 359.907 +# syntax of the XML files.
 359.908 +
 359.909 +XML_SCHEMA             = 
 359.910 +
 359.911 +# The XML_DTD tag can be used to specify an XML DTD, 
 359.912 +# which can be used by a validating XML parser to check the 
 359.913 +# syntax of the XML files.
 359.914 +
 359.915 +XML_DTD                = 
 359.916 +
 359.917 +# If the XML_PROGRAMLISTING tag is set to YES Doxygen will 
 359.918 +# dump the program listings (including syntax highlighting 
 359.919 +# and cross-referencing information) to the XML output. Note that 
 359.920 +# enabling this will significantly increase the size of the XML output.
 359.921 +
 359.922 +XML_PROGRAMLISTING     = YES
 359.923 +
 359.924 +#---------------------------------------------------------------------------
 359.925 +# configuration options for the AutoGen Definitions output
 359.926 +#---------------------------------------------------------------------------
 359.927 +
 359.928 +# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will 
 359.929 +# generate an AutoGen Definitions (see autogen.sf.net) file 
 359.930 +# that captures the structure of the code including all 
 359.931 +# documentation. Note that this feature is still experimental 
 359.932 +# and incomplete at the moment.
 359.933 +
 359.934 +GENERATE_AUTOGEN_DEF   = NO
 359.935 +
 359.936 +#---------------------------------------------------------------------------
 359.937 +# configuration options related to the Perl module output
 359.938 +#---------------------------------------------------------------------------
 359.939 +
 359.940 +# If the GENERATE_PERLMOD tag is set to YES Doxygen will 
 359.941 +# generate a Perl module file that captures the structure of 
 359.942 +# the code including all documentation. Note that this 
 359.943 +# feature is still experimental and incomplete at the 
 359.944 +# moment.
 359.945 +
 359.946 +GENERATE_PERLMOD       = NO
 359.947 +
 359.948 +# If the PERLMOD_LATEX tag is set to YES Doxygen will generate 
 359.949 +# the necessary Makefile rules, Perl scripts and LaTeX code to be able 
 359.950 +# to generate PDF and DVI output from the Perl module output.
 359.951 +
 359.952 +PERLMOD_LATEX          = NO
 359.953 +
 359.954 +# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be 
 359.955 +# nicely formatted so it can be parsed by a human reader.  This is useful 
 359.956 +# if you want to understand what is going on.  On the other hand, if this 
 359.957 +# tag is set to NO the size of the Perl module output will be much smaller 
 359.958 +# and Perl will parse it just the same.
 359.959 +
 359.960 +PERLMOD_PRETTY         = YES
 359.961 +
 359.962 +# The names of the make variables in the generated doxyrules.make file 
 359.963 +# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. 
 359.964 +# This is useful so different doxyrules.make files included by the same 
 359.965 +# Makefile don't overwrite each other's variables.
 359.966 +
 359.967 +PERLMOD_MAKEVAR_PREFIX = 
 359.968 +
 359.969 +#---------------------------------------------------------------------------
 359.970 +# Configuration options related to the preprocessor   
 359.971 +#---------------------------------------------------------------------------
 359.972 +
 359.973 +# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will 
 359.974 +# evaluate all C-preprocessor directives found in the sources and include 
 359.975 +# files.
 359.976 +
 359.977 +ENABLE_PREPROCESSING   = YES
 359.978 +
 359.979 +# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro 
 359.980 +# names in the source code. If set to NO (the default) only conditional 
 359.981 +# compilation will be performed. Macro expansion can be done in a controlled 
 359.982 +# way by setting EXPAND_ONLY_PREDEF to YES.
 359.983 +
 359.984 +MACRO_EXPANSION        = NO
 359.985 +
 359.986 +# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES 
 359.987 +# then the macro expansion is limited to the macros specified with the 
 359.988 +# PREDEFINED and EXPAND_AS_DEFINED tags.
 359.989 +
 359.990 +EXPAND_ONLY_PREDEF     = NO
 359.991 +
 359.992 +# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files 
 359.993 +# in the INCLUDE_PATH (see below) will be search if a #include is found.
 359.994 +
 359.995 +SEARCH_INCLUDES        = YES
 359.996 +
 359.997 +# The INCLUDE_PATH tag can be used to specify one or more directories that 
 359.998 +# contain include files that are not input files but should be processed by 
 359.999 +# the preprocessor.
359.1000 +
359.1001 +INCLUDE_PATH           = 
359.1002 +
359.1003 +# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard 
359.1004 +# patterns (like *.h and *.hpp) to filter out the header-files in the 
359.1005 +# directories. If left blank, the patterns specified with FILE_PATTERNS will 
359.1006 +# be used.
359.1007 +
359.1008 +INCLUDE_FILE_PATTERNS  = 
359.1009 +
359.1010 +# The PREDEFINED tag can be used to specify one or more macro names that 
359.1011 +# are defined before the preprocessor is started (similar to the -D option of 
359.1012 +# gcc). The argument of the tag is a list of macros of the form: name 
359.1013 +# or name=definition (no spaces). If the definition and the = are 
359.1014 +# omitted =1 is assumed. To prevent a macro definition from being 
359.1015 +# undefined via #undef or recursively expanded use the := operator 
359.1016 +# instead of the = operator.
359.1017 +
359.1018 +PREDEFINED             = 
359.1019 +
359.1020 +# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then 
359.1021 +# this tag can be used to specify a list of macro names that should be expanded. 
359.1022 +# The macro definition that is found in the sources will be used. 
359.1023 +# Use the PREDEFINED tag if you want to use a different macro definition.
359.1024 +
359.1025 +EXPAND_AS_DEFINED      = 
359.1026 +
359.1027 +# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then 
359.1028 +# doxygen's preprocessor will remove all function-like macros that are alone 
359.1029 +# on a line, have an all uppercase name, and do not end with a semicolon. Such 
359.1030 +# function macros are typically used for boiler-plate code, and will confuse 
359.1031 +# the parser if not removed.
359.1032 +
359.1033 +SKIP_FUNCTION_MACROS   = YES
359.1034 +
359.1035 +#---------------------------------------------------------------------------
359.1036 +# Configuration::additions related to external references   
359.1037 +#---------------------------------------------------------------------------
359.1038 +
359.1039 +# The TAGFILES option can be used to specify one or more tagfiles. 
359.1040 +# Optionally an initial location of the external documentation 
359.1041 +# can be added for each tagfile. The format of a tag file without 
359.1042 +# this location is as follows: 
359.1043 +#   TAGFILES = file1 file2 ... 
359.1044 +# Adding location for the tag files is done as follows: 
359.1045 +#   TAGFILES = file1=loc1 "file2 = loc2" ... 
359.1046 +# where "loc1" and "loc2" can be relative or absolute paths or 
359.1047 +# URLs. If a location is present for each tag, the installdox tool 
359.1048 +# does not have to be run to correct the links.
359.1049 +# Note that each tag file must have a unique name
359.1050 +# (where the name does NOT include the path)
359.1051 +# If a tag file is not located in the directory in which doxygen 
359.1052 +# is run, you must also specify the path to the tagfile here.
359.1053 +
359.1054 +TAGFILES               = 
359.1055 +
359.1056 +# When a file name is specified after GENERATE_TAGFILE, doxygen will create 
359.1057 +# a tag file that is based on the input files it reads.
359.1058 +
359.1059 +GENERATE_TAGFILE       = 
359.1060 +
359.1061 +# If the ALLEXTERNALS tag is set to YES all external classes will be listed 
359.1062 +# in the class index. If set to NO only the inherited external classes 
359.1063 +# will be listed.
359.1064 +
359.1065 +ALLEXTERNALS           = NO
359.1066 +
359.1067 +# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed 
359.1068 +# in the modules index. If set to NO, only the current project's groups will 
359.1069 +# be listed.
359.1070 +
359.1071 +EXTERNAL_GROUPS        = YES
359.1072 +
359.1073 +# The PERL_PATH should be the absolute path and name of the perl script 
359.1074 +# interpreter (i.e. the result of `which perl').
359.1075 +
359.1076 +PERL_PATH              = /usr/bin/perl
359.1077 +
359.1078 +#---------------------------------------------------------------------------
359.1079 +# Configuration options related to the dot tool   
359.1080 +#---------------------------------------------------------------------------
359.1081 +
359.1082 +# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will 
359.1083 +# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base 
359.1084 +# or super classes. Setting the tag to NO turns the diagrams off. Note that 
359.1085 +# this option is superseded by the HAVE_DOT option below. This is only a 
359.1086 +# fallback. It is recommended to install and use dot, since it yields more 
359.1087 +# powerful graphs.
359.1088 +
359.1089 +CLASS_DIAGRAMS         = YES
359.1090 +
359.1091 +# If set to YES, the inheritance and collaboration graphs will hide 
359.1092 +# inheritance and usage relations if the target is undocumented 
359.1093 +# or is not a class.
359.1094 +
359.1095 +HIDE_UNDOC_RELATIONS   = YES
359.1096 +
359.1097 +# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is 
359.1098 +# available from the path. This tool is part of Graphviz, a graph visualization 
359.1099 +# toolkit from AT&T and Lucent Bell Labs. The other options in this section 
359.1100 +# have no effect if this option is set to NO (the default)
359.1101 +
359.1102 +HAVE_DOT               = YES
359.1103 +
359.1104 +# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen 
359.1105 +# will generate a graph for each documented class showing the direct and 
359.1106 +# indirect inheritance relations. Setting this tag to YES will force the 
359.1107 +# the CLASS_DIAGRAMS tag to NO.
359.1108 +
359.1109 +CLASS_GRAPH            = YES
359.1110 +
359.1111 +# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen 
359.1112 +# will generate a graph for each documented class showing the direct and 
359.1113 +# indirect implementation dependencies (inheritance, containment, and 
359.1114 +# class references variables) of the class with other documented classes.
359.1115 +
359.1116 +COLLABORATION_GRAPH    = YES
359.1117 +
359.1118 +# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen 
359.1119 +# will generate a graph for groups, showing the direct groups dependencies
359.1120 +
359.1121 +GROUP_GRAPHS           = YES
359.1122 +
359.1123 +# If the UML_LOOK tag is set to YES doxygen will generate inheritance and 
359.1124 +# collaboration diagrams in a style similar to the OMG's Unified Modeling 
359.1125 +# Language.
359.1126 +
359.1127 +UML_LOOK               = NO
359.1128 +
359.1129 +# If set to YES, the inheritance and collaboration graphs will show the 
359.1130 +# relations between templates and their instances.
359.1131 +
359.1132 +TEMPLATE_RELATIONS     = NO
359.1133 +
359.1134 +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT 
359.1135 +# tags are set to YES then doxygen will generate a graph for each documented 
359.1136 +# file showing the direct and indirect include dependencies of the file with 
359.1137 +# other documented files.
359.1138 +
359.1139 +INCLUDE_GRAPH          = YES
359.1140 +
359.1141 +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and 
359.1142 +# HAVE_DOT tags are set to YES then doxygen will generate a graph for each 
359.1143 +# documented header file showing the documented files that directly or 
359.1144 +# indirectly include this file.
359.1145 +
359.1146 +INCLUDED_BY_GRAPH      = YES
359.1147 +
359.1148 +# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will 
359.1149 +# generate a call dependency graph for every global function or class method. 
359.1150 +# Note that enabling this option will significantly increase the time of a run. 
359.1151 +# So in most cases it will be better to enable call graphs for selected 
359.1152 +# functions only using the \callgraph command.
359.1153 +
359.1154 +CALL_GRAPH             = YES
359.1155 +
359.1156 +# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then doxygen will 
359.1157 +# generate a caller dependency graph for every global function or class method. 
359.1158 +# Note that enabling this option will significantly increase the time of a run. 
359.1159 +# So in most cases it will be better to enable caller graphs for selected 
359.1160 +# functions only using the \callergraph command.
359.1161 +
359.1162 +CALLER_GRAPH           = YES
359.1163 +
359.1164 +# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen 
359.1165 +# will graphical hierarchy of all classes instead of a textual one.
359.1166 +
359.1167 +GRAPHICAL_HIERARCHY    = YES
359.1168 +
359.1169 +# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES 
359.1170 +# then doxygen will show the dependencies a directory has on other directories 
359.1171 +# in a graphical way. The dependency relations are determined by the #include
359.1172 +# relations between the files in the directories.
359.1173 +
359.1174 +DIRECTORY_GRAPH        = YES
359.1175 +
359.1176 +# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images 
359.1177 +# generated by dot. Possible values are png, jpg, or gif
359.1178 +# If left blank png will be used.
359.1179 +
359.1180 +DOT_IMAGE_FORMAT       = png
359.1181 +
359.1182 +# The tag DOT_PATH can be used to specify the path where the dot tool can be 
359.1183 +# found. If left blank, it is assumed the dot tool can be found in the path.
359.1184 +
359.1185 +DOT_PATH               = 
359.1186 +
359.1187 +# The DOTFILE_DIRS tag can be used to specify one or more directories that 
359.1188 +# contain dot files that are included in the documentation (see the 
359.1189 +# \dotfile command).
359.1190 +
359.1191 +DOTFILE_DIRS           = 
359.1192 +
359.1193 +# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width 
359.1194 +# (in pixels) of the graphs generated by dot. If a graph becomes larger than 
359.1195 +# this value, doxygen will try to truncate the graph, so that it fits within 
359.1196 +# the specified constraint. Beware that most browsers cannot cope with very 
359.1197 +# large images.
359.1198 +
359.1199 +MAX_DOT_GRAPH_WIDTH    = 1024
359.1200 +
359.1201 +# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height 
359.1202 +# (in pixels) of the graphs generated by dot. If a graph becomes larger than 
359.1203 +# this value, doxygen will try to truncate the graph, so that it fits within 
359.1204 +# the specified constraint. Beware that most browsers cannot cope with very 
359.1205 +# large images.
359.1206 +
359.1207 +MAX_DOT_GRAPH_HEIGHT   = 1024
359.1208 +
359.1209 +# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the 
359.1210 +# graphs generated by dot. A depth value of 3 means that only nodes reachable 
359.1211 +# from the root by following a path via at most 3 edges will be shown. Nodes 
359.1212 +# that lay further from the root node will be omitted. Note that setting this 
359.1213 +# option to 1 or 2 may greatly reduce the computation time needed for large 
359.1214 +# code bases. Also note that a graph may be further truncated if the graph's 
359.1215 +# image dimensions are not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH 
359.1216 +# and MAX_DOT_GRAPH_HEIGHT). If 0 is used for the depth value (the default), 
359.1217 +# the graph is not depth-constrained.
359.1218 +
359.1219 +MAX_DOT_GRAPH_DEPTH    = 0
359.1220 +
359.1221 +# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent 
359.1222 +# background. This is disabled by default, which results in a white background. 
359.1223 +# Warning: Depending on the platform used, enabling this option may lead to 
359.1224 +# badly anti-aliased labels on the edges of a graph (i.e. they become hard to 
359.1225 +# read).
359.1226 +
359.1227 +DOT_TRANSPARENT        = NO
359.1228 +
359.1229 +# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output 
359.1230 +# files in one run (i.e. multiple -o and -T options on the command line). This 
359.1231 +# makes dot run faster, but since only newer versions of dot (>1.8.10) 
359.1232 +# support this, this feature is disabled by default.
359.1233 +
359.1234 +DOT_MULTI_TARGETS      = NO
359.1235 +
359.1236 +# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will 
359.1237 +# generate a legend page explaining the meaning of the various boxes and 
359.1238 +# arrows in the dot generated graphs.
359.1239 +
359.1240 +GENERATE_LEGEND        = YES
359.1241 +
359.1242 +# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will 
359.1243 +# remove the intermediate dot files that are used to generate 
359.1244 +# the various graphs.
359.1245 +
359.1246 +DOT_CLEANUP            = YES
359.1247 +
359.1248 +#---------------------------------------------------------------------------
359.1249 +# Configuration::additions related to the search engine   
359.1250 +#---------------------------------------------------------------------------
359.1251 +
359.1252 +# The SEARCHENGINE tag specifies whether or not a search engine should be 
359.1253 +# used. If set to NO the values of all tags below this one will be ignored.
359.1254 +
359.1255 +SEARCHENGINE           = NO
   360.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   360.2 +++ b/x86/x86/bundle.cpp	Thu Jun 26 17:39:40 2008 +0100
   360.3 @@ -0,0 +1,125 @@
   360.4 +#include <QtCore>
   360.5 +#include <bundle.h>
   360.6 +
   360.7 +///////////////////////////////////////
   360.8 +//Bundle options:
   360.9 +//BIT 0: Send ACK to this bundle option
  360.10 +//BIT 1: ACK Bundle
  360.11 +//BIT 2: PRoPHET Message
  360.12 +//BIT 3: This bundle is an ack (used in bundle requests for letting the other 
  360.13 +//		 node know that the bundle was received. NOT THE PRoPHET ACK!)
  360.14 +//////////////////////////////////////
  360.15 +
  360.16 +
  360.17 +Bundle::Bundle(QObject *parent)
  360.18 +{
  360.19 +			id=0;
  360.20 +			sourceId=0;
  360.21 +			destinationId=0;
  360.22 +			data.clear();
  360.23 +			options=0;
  360.24 +			sourceString.clear();
  360.25 +			destinationString.clear();
  360.26 +			dataLength=0;
  360.27 +}
  360.28 +
  360.29 +
  360.30 +Bundle& Bundle::operator=(const Bundle& other)
  360.31 +{
  360.32 + id = other.id;
  360.33 + sourceId = other.sourceId;
  360.34 + destinationId = other.destinationId;
  360.35 + data = other.data;
  360.36 + timeStamp = other.timeStamp;
  360.37 + options = other.options;
  360.38 + sourceString = other.sourceString;
  360.39 + destinationString = other.destinationString;
  360.40 + dataLength = other.dataLength;
  360.41 + return *this;
  360.42 +}
  360.43 +
  360.44 +Bundle::Bundle(const Bundle& other)
  360.45 +{
  360.46 + id = other.id;
  360.47 + sourceId = other.sourceId;
  360.48 + destinationId = other.destinationId;
  360.49 + data = other.data;
  360.50 + timeStamp = other.timeStamp;
  360.51 + options = other.options;
  360.52 + sourceString = other.sourceString;
  360.53 + destinationString = other.destinationString;
  360.54 + dataLength = other.dataLength;
  360.55 +}	
  360.56 +	
  360.57 +void Bundle::setContent(int seq,int s,int d,QByteArray m,int opt,QByteArray src,QByteArray dst)
  360.58 +{
  360.59 +	timeStamp=timeStamp.currentDateTime();
  360.60 +	id=((seq%10000)+(d*10000)+(s*10000000));
  360.61 +	sourceId=s;
  360.62 +	destinationId=d;
  360.63 +	data=m; 
  360.64 +	options=opt;
  360.65 +	sourceString = src;
  360.66 +	destinationString = dst;
  360.67 +	dataLength=data.size();
  360.68 +
  360.69 +
  360.70 +}
  360.71 +void Bundle::setContent(int seq,int s,int d,QByteArray m,int opt)
  360.72 +{
  360.73 +	timeStamp=timeStamp.currentDateTime();
  360.74 +	id=((seq%10000)+(d*10000)+(s*10000000));
  360.75 +	sourceId=s;
  360.76 +	destinationId=d;
  360.77 +	data=m;
  360.78 +	sourceString.clear();
  360.79 +	destinationString.clear();
  360.80 +	options=opt;
  360.81 +	dataLength=data.size();
  360.82 +
  360.83 +}
  360.84 +
  360.85 +void Bundle::setAck(){
  360.86 +	options |= 0x8; //set ack-bit
  360.87 +}
  360.88 +
  360.89 +void Bundle::unSetAck(){
  360.90 +	options &= 0xF7; //un-set ack-bit
  360.91 +}
  360.92 +
  360.93 +bool Bundle::isAck(){
  360.94 +	if((options & 0x08)==0x08)
  360.95 +		return 1;
  360.96 +	else
  360.97 +		return 0;
  360.98 +}
  360.99 +int Bundle::getId()
 360.100 +{
 360.101 +	return id;
 360.102 +}
 360.103 +
 360.104 +int Bundle::getSourceId()
 360.105 +{
 360.106 +	return sourceId;
 360.107 +}
 360.108 +
 360.109 +int Bundle::getDestinationId()
 360.110 +{
 360.111 +	return destinationId;
 360.112 +}
 360.113 +
 360.114 +QByteArray Bundle::getData()
 360.115 +{
 360.116 +	return data;
 360.117 +}
 360.118 +
 360.119 +QDateTime Bundle::getTime()
 360.120 +{
 360.121 +	return timeStamp;
 360.122 +}
 360.123 +
 360.124 +
 360.125 +int Bundle::getOptions()
 360.126 +{
 360.127 +	return options;
 360.128 +}
   361.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   361.2 +++ b/x86/x86/bundle.h	Thu Jun 26 17:39:40 2008 +0100
   361.3 @@ -0,0 +1,151 @@
   361.4 +#ifndef BUNDLE_H
   361.5 +#define BUNDLE_H
   361.6 +
   361.7 +#include <QtCore>
   361.8 +
   361.9 +/*! \brief This class represents a bundle within PRoPHET.
  361.10 + */
  361.11 +class Bundle : public QObject
  361.12 +{
  361.13 +
  361.14 +Q_OBJECT 
  361.15 +	public:
  361.16 +	int id;
  361.17 +	int sourceId;
  361.18 +	int destinationId;
  361.19 +	QByteArray data;
  361.20 +	QByteArray sourceString;
  361.21 +	QByteArray destinationString;
  361.22 +	QDateTime timeStamp;
  361.23 +	int options;
  361.24 +	int dataLength;
  361.25 +	// The id of the last node that sent the bundle.
  361.26 +	// Used for keeping track of which bundles have been sent to which nodes.
  361.27 +	int lastSender;
  361.28 +
  361.29 +
  361.30 +	Bundle(QObject *parent = 0);
  361.31 +	Bundle(const Bundle& other);
  361.32 +	Bundle& operator=(const Bundle& other);
  361.33 +
  361.34 +	/*! \brief Sets the content of this Bundle.
  361.35 +	 * @param seq The sequence number of this Bundle??? Used for 
  361.36 +	 * calculating the id.
  361.37 +	 * @param s The id of the source node this Bundle originated from.
  361.38 +	 * @param d The id of the destination node of this Bundle.
  361.39 +	 * @param m The data payload of this Bundle.
  361.40 +	 * @param opt The options for this bundle. Only the three LSBits are used
  361.41 +	 * \verbatim
  361.42 +	           3                2                   1              0
  361.43 +	  -------------------------------------------------------------------
  361.44 +	  ... | 1=Ack     | 0 = PRoPHET bundle | 1 = Ack me       | Not used |
  361.45 +	      | 0=Non-ack | 1 = DTN bundle     | 0 = Don't ack me |          |
  361.46 +	  -------------------------------------------------------------------
  361.47 +	  \endverbatim
  361.48 +	 * @param src The string name of the source node.
  361.49 +	 * @param dst The string name of the destination node.
  361.50 +	 */void setContent(int,int s,int d,QByteArray m,int opt,QByteArray src,QByteArray dst);
  361.51 +	
  361.52 +	/*!
  361.53 +	 * Sets the content of this Bundle.
  361.54 +	 * @param seq The sequence number of this Bundle??? Used for 
  361.55 +	 * calculating the id.
  361.56 +	 * @param s The id of the source node this Bundle originated from.
  361.57 +	 * @param d The id of the destination node of this Bundle.
  361.58 +	 * @param m The data payload of this Bundle.
  361.59 +	 * @param opt The options for this bundle. Only the three LSBits are used
  361.60 +	 * \verbatim
  361.61 +	          3                2                   1              0
  361.62 +	  -------------------------------------------------------------------
  361.63 +	  ... | 1=Ack     | 0 = PRoPHET bundle | 1 = Ack me       | Not used |
  361.64 +	      | 0=Non-ack | 1 = DTN bundle     | 0 = Don't ack me |          |
  361.65 +	  -------------------------------------------------------------------
  361.66 +	  \endverbatim
  361.67 +	 */
  361.68 +	void setContent(int,int,int,QByteArray,int);
  361.69 +	
  361.70 +	//! Sets the (non-PRoPHET) ack bit of this bundle.
  361.71 +	/*!
  361.72 +	 * This is used for ackin bundles on the connection level, so that each 
  361.73 +	 * bundle is only sent once in bundle offers.
  361.74 +	 */
  361.75 +	void setAck();
  361.76 +	
  361.77 +	//! Resets the (non-PRoPHET) ack bit of this bundle.
  361.78 +	/*!
  361.79 +	 * This is used for ackin bundles on the connection level, so that each 
  361.80 +	 * bundle is only sent once in bundle offers.
  361.81 +	 */
  361.82 +	void unSetAck();
  361.83 +
  361.84 +	//! Checks whether this bundle has the (non PRoPHET) ack bit set.
  361.85 +	/*!
  361.86 +	 * @return true if the (non PRoPHET) ack bit is set, false otherwise.
  361.87 +	 */
  361.88 +	bool isAck();
  361.89 +
  361.90 +	//! Sets the last sender of this bundle.
  361.91 +	/*!
  361.92 +	 * Used for keeping track of which bundles have already been sent to 
  361.93 +	 * certains nodes.
  361.94 +	 * @param sender the id of the last sender.
  361.95 +	 */
  361.96 +	void setLastSender(int sender){
  361.97 +		lastSender = sender;
  361.98 +	}
  361.99 +
 361.100 +	//! Returns the id if the last sender
 361.101 +	/*!
 361.102 +	 * Used for keeping track of which bundles have already been sent to 
 361.103 +	 * certain nodes.
 361.104 +	 * @return the id of the last sender
 361.105 +	 */
 361.106 +	int getLastSender(){
 361.107 +		return lastSender;
 361.108 +	}
 361.109 +
 361.110 +	/*!
 361.111 +	 * Returns the id of the Bundle.
 361.112 +	 * @return The id of this Bundle.
 361.113 +	 */
 361.114 +	int getId(); 
 361.115 +	
 361.116 +	/*!
 361.117 +	 * Returns the source id of this Bundle.
 361.118 +	 * @return The source id of this Bundle.
 361.119 +	 */
 361.120 +	int getSourceId();
 361.121 +	
 361.122 +	/*!
 361.123 +	 * Returns the destination id of this Bundle.
 361.124 +	 * @return The destination id of this Bundle.
 361.125 +	 */
 361.126 +	int getDestinationId();
 361.127 +	
 361.128 +	/*!
 361.129 +	 * Returns the timestamp of when this Bundle was created.
 361.130 +	 * @return The timestamp of when this Bundle was created.
 361.131 +	 */
 361.132 +	QDateTime getTime();
 361.133 +	
 361.134 +	/*!
 361.135 +	 * Returns the data payload of this Bundle.
 361.136 +	 * @return The data payload of this Bundle.
 361.137 +	 */
 361.138 +	QByteArray getData();
 361.139 +	
 361.140 +	/*!
 361.141 +	 * Returns the options of this Bundle. Only the three LSBits are used.
 361.142 +	 * \verbatim
 361.143 +	          3                2                   1              0
 361.144 +	  -------------------------------------------------------------------
 361.145 +	  ... | 1=Ack     | 0 = PRoPHET bundle | 1 = Ack me       | Not used |
 361.146 +	      | 0=Non-ack | 1 = DTN bundle     | 0 = Don't ack me |          |
 361.147 +	  -------------------------------------------------------------------
 361.148 +	  \endverbatim
 361.149 +	 */
 361.150 +	int getOptions();
 361.151 +	
 361.152 +};
 361.153 +
 361.154 +#endif
   362.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   362.2 +++ b/x86/x86/bundleListFileIO.cpp	Thu Jun 26 17:39:40 2008 +0100
   362.3 @@ -0,0 +1,111 @@
   362.4 +#include <QtCore>
   362.5 +#include <bundleListFileIO.h>
   362.6 +#include <readFile.h>
   362.7 +
   362.8 +BundleListFileIO::BundleListFileIO(QHash<int,int> *h, QDir storageDir, QString fileName)
   362.9 +{
  362.10 +	hash = h;
  362.11 +	file = new QFile(storageDir.filePath(fileName));
  362.12 +	ReadFile conf;
  362.13 +	fileOption=conf.getUseFileHash();
  362.14 +	int WRITETIMER =conf.getWriteToFileTimer();
  362.15 +	if(fileOption==1)
  362.16 +	{
  362.17 +		timer = new QTimer();
  362.18 +		connect(timer, SIGNAL(timeout()), this, SLOT(writeAll()));
  362.19 +		timer->start(WRITETIMER);
  362.20 +	}
  362.21 +
  362.22 +}
  362.23 +
  362.24 +int BundleListFileIO::writeItem(int key)
  362.25 +{
  362.26 +	if(file->open(QIODevice::WriteOnly |QIODevice::Append| QIODevice::Text))
  362.27 +	{
  362.28 +		//add the key
  362.29 +		QString s = QString("%1").arg((int)key);
  362.30 +		//a tab to make things look nice
  362.31 +		s.append("\t");
  362.32 +		//add the values of the key
  362.33 +		QList<int> l = hash->values(key);
  362.34 +		for(int i=0; i<l.size(); i++)
  362.35 +		{
  362.36 +			s.append(QString("%1").arg((int)l.at(i)));
  362.37 +			s.append(";");	//we use ; as separator
  362.38 +		}
  362.39 +		s.remove(s.size()-1,1); //remove the last ;
  362.40 +		s.append("\n");
  362.41 +		file->write(s.toAscii());
  362.42 +		file->close();
  362.43 +		return 0;
  362.44 +	}else
  362.45 +	{
  362.46 +		//file IO error
  362.47 +		return -1;
  362.48 +	}
  362.49 +}
  362.50 +
  362.51 +int BundleListFileIO::writeAll()
  362.52 +{
  362.53 +	//erase anything in the file
  362.54 +	file->open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text);
  362.55 +	file->close();
  362.56 +	//then write each key and its values
  362.57 +	//QList<int> l = hash->uniqueKeys(); //!!This method doesn't exist
  362.58 +	QList<int> keys = hash->keys();
  362.59 +	QList<int> uniqueKeys;
  362.60 +	for(int i=0; i<keys.size(); i++)
  362.61 +	{
  362.62 +		if(!uniqueKeys.contains(keys.at(i)))
  362.63 +		{
  362.64 +			uniqueKeys.append(keys.at(i));
  362.65 +		}
  362.66 +	}
  362.67 +	int ret = 0;
  362.68 +	for(int i=0; i<uniqueKeys.size(); i++)
  362.69 +	{
  362.70 +		int status = writeItem(uniqueKeys.at(i));
  362.71 +		if(status < 0)
  362.72 +			ret = status;
  362.73 +	}
  362.74 +	return ret;
  362.75 +}
  362.76 +
  362.77 +int BundleListFileIO::readAll()
  362.78 +{
  362.79 +	if (file->open(QIODevice::ReadOnly|QIODevice::Text))
  362.80 +	{
  362.81 +		QString line = file->readLine();
  362.82 +		while(line.size() > 0)
  362.83 +		{
  362.84 +			bool ok;
  362.85 +			QRegExp sep("[\t ]+");	//all tabs and spaces
  362.86 +			int key = line.section(sep, 0, 0).toInt(&ok, 10);
  362.87 +			if(!ok)
  362.88 +			{
  362.89 +				file->close();
  362.90 +				return -2;
  362.91 +			}
  362.92 +			QString values = line.section(sep, -1, -1);
  362.93 +			QStringList valuesList = values.split(";");
  362.94 +			for(int i=0; i<valuesList.size(); i++)
  362.95 +			{
  362.96 +				int value = valuesList.at(i).toInt();
  362.97 +				if(!ok)
  362.98 +				{
  362.99 +					file->close();
 362.100 +					return -2;
 362.101 +				}
 362.102 +				hash->insertMulti(key, value);
 362.103 +			}
 362.104 +			line = file->readLine();
 362.105 +		}
 362.106 +		file->close();
 362.107 +		return 0;
 362.108 +	}else
 362.109 +	{
 362.110 +		//file IO error
 362.111 +		return -1;
 362.112 +	}
 362.113 +}
 362.114 +
   363.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   363.2 +++ b/x86/x86/bundleListFileIO.h	Thu Jun 26 17:39:40 2008 +0100
   363.3 @@ -0,0 +1,54 @@
   363.4 +#ifndef BUNDLELISTFILEIO_H
   363.5 +#define BUNDLELISTFILEIO_H
   363.6 +#include <QtCore>
   363.7 +
   363.8 +//! Handles the file IO for the QMultiHash that keeps track of which nodes have received certain bundles.
   363.9 +/*! The QMultiHash should have integer bundle ids as keys and a list of 
  363.10 + * integer node ids as values.
  363.11 + */
  363.12 +class BundleListFileIO : public QObject
  363.13 +{
  363.14 +	Q_OBJECT
  363.15 +
  363.16 +	public:
  363.17 +		BundleListFileIO(QObject *parent = 0);
  363.18 +		BundleListFileIO(const BundleListFileIO& other);
  363.19 +		BundleListFileIO& operator=(const BundleListFileIO& other);;
  363.20 +
  363.21 +		//!Creates a new BundleListFileIO object.
  363.22 +		/*!
  363.23 +		 * @param hash the QMultiHash used for storing bundle->node mappings.
  363.24 +		 * @param fileName the name of the file used for storing the hash.
  363.25 +		 */
  363.26 +		BundleListFileIO(QHash<int,int> *hash, QDir storageDir, QString fileName);
  363.27 +
  363.28 +		//! Writes the specified item to the file.
  363.29 +		/*! If the key already exists in the file, the old one is overwritten.
  363.30 +		 * @param key the key od what should be written to file.
  363.31 +		 * @return 0 if success, -1 otherwise
  363.32 +		 */
  363.33 +		int writeItem(int key);
  363.34 +
  363.35 +		//! Reads all keys and values from file and inserts them into the hash.
  363.36 +		/*! If keys read from file already exist in the hash the values from 
  363.37 +		 * file are appended to the values in the hash.
  363.38 +		 * @return 0 if successful reading file, -1 if file IO error, -2 if parse error.
  363.39 +		 */
  363.40 +		int readAll();
  363.41 +
  363.42 +		//! Writes all items in the hash to file
  363.43 +		/*!
  363.44 +		 * @return 0 if all items were written successfully, -1 otherwise. 
  363.45 +		 * Even if -1 is returned, as many items as possible are written to 
  363.46 +		 * file.
  363.47 +		 */
  363.48 +private slots:
  363.49 +		int writeAll();
  363.50 +
  363.51 +	private:
  363.52 +		QHash<int,int> *hash;
  363.53 +		QFile* file;
  363.54 +		QTimer* timer;
  363.55 +		int fileOption;
  363.56 +};
  363.57 +#endif
   364.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   364.2 +++ b/x86/x86/bundleManager.cpp	Thu Jun 26 17:39:40 2008 +0100
   364.3 @@ -0,0 +1,767 @@
   364.4 +#include <QtCore>
   364.5 +#include <bundleManager.h>
   364.6 +#include <bundle.h>
   364.7 +#include <readFile.h>
   364.8 +#include <nodeManager.h>
   364.9 +#include <bundleListFileIO.h>
  364.10 +#include <stdlib.h>
  364.11 +
  364.12 +#define BUNDLEDESTUPDATE 1000
  364.13 +#define TTLTIMER 1000
  364.14 +
  364.15 +BundleManager::BundleManager(int id)
  364.16 +{
  364.17 +	ourId=id;
  364.18 +	ReadFile conf;
  364.19 +	memoryStorageSize=conf.getMemoryStorageSize();
  364.20 +	fileStorageSize=conf.getStorageSize();
  364.21 +	fileOption=conf.getUseFileBundles();
  364.22 +	TTLOption=conf.getUseTTL();
  364.23 +	TTLValue=conf.getTTL();
  364.24 +	smartOffer=conf.getSmartOffer();
  364.25 +	if(TTLOption==1)
  364.26 +	{
  364.27 +		TTLTimer = new QTimer();
  364.28 +		TTLTimer->start(TTLTIMER);
  364.29 +		connect(TTLTimer, SIGNAL(timeout()), this, SLOT(checkTTL()));
  364.30 +	}
  364.31 +	routing=conf.getRouting();
  364.32 +	int WRITETIMER =conf.getWriteToFileTimer();
  364.33 +	storagePath=conf.getStoragePath();
  364.34 +	dir.setPath(storagePath);
  364.35 +	//Create the dir if it does not exist
  364.36 +	if(!dir.exists())
  364.37 +		dir.mkpath(dir.path());
  364.38 +	QString msgDirPath=conf.getMsgPath();
  364.39 +	msgDir.setPath(msgDirPath);
  364.40 +	option=conf.getUseFileBundles();
  364.41 +	logOption=conf.getLogOption();
  364.42 +	if(fileOption==1)
  364.43 +	{
  364.44 +		readFromFile();
  364.45 +		writeToFileTimer = new QTimer();
  364.46 +		connect(writeToFileTimer, SIGNAL(timeout()), this, SLOT(saveToFile()));
  364.47 +		writeToFileTimer->start(WRITETIMER);
  364.48 +		emit sendDebugBundleList(bundleList);
  364.49 +	}
  364.50 +	else
  364.51 +	{
  364.52 +		int seed = 10000;		/* choose a seed value */
  364.53 +		srand(seed);		/*initialize random number generator*/
  364.54 +		seq = (int)(rand()*1000000);
  364.55 +	}
  364.56 +
  364.57 +
  364.58 +	timer = new QTimer();
  364.59 +	showFirstTime=0;
  364.60 +	timer->start(5000);
  364.61 +	connect(timer, SIGNAL(timeout()), this, SLOT(emitDebugList()));
  364.62 +	if(logOption==1)
  364.63 +	{
  364.64 +		log = new MessageFile;
  364.65 +		log->set("transfer.log", 1000000, 5);
  364.66 +	}
  364.67 +	QString fileName = "bundleHash.txt";
  364.68 +	hashFile = new BundleListFileIO(&transferredBundleHash,
  364.69 +													 dir,
  364.70 +													 fileName);
  364.71 +	//get all bundle->node mappings from file
  364.72 +
  364.73 +	int res; 
  364.74 +	if(conf.getUseFileHash()==1)
  364.75 +		res= hashFile->readAll();
  364.76 +	if(logOption==1)
  364.77 +	{
  364.78 +	    QString logString;
  364.79 +	    logString.append("Imported to hash from file, result(0=ok): ");	
  364.80 +	    logString.append(QString("%1").arg((int)res));
  364.81 +	    log->addLog(0,logString);
  364.82 +	}
  364.83 +}
  364.84 +
  364.85 +void BundleManager::emitDebugList()
  364.86 +{
  364.87 +	if(showFirstTime==0)
  364.88 +	{
  364.89 +		emit sendDebugBundleList(bundleList);
  364.90 +		showFirstTime=1;
  364.91 +	}
  364.92 +
  364.93 +}
  364.94 +void BundleManager::saveToFile()
  364.95 +{
  364.96 +	QFile file(dir.filePath("bundles.txt"));
  364.97 +	if(file.open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text))
  364.98 +	{
  364.99 +	    QDateTime realTime;
 364.100 +	    realTime=realTime.currentDateTime ();
 364.101 +	    QString time=realTime.toString("MM/dd/yyyy hh:mm:ss");
 364.102 +	    time.append("\n");
 364.103 +	    file.write(time.toAscii ());
 364.104 +	    QString seqString;
 364.105 +	    seqString.append(QString("%1").arg((int)seq));
 364.106 +	    seqString.append("\n");
 364.107 +	    file.write(seqString.toAscii ());
 364.108 +	    for (ushort i = 0; i < bundleList.size(); ++i) 
 364.109 +	    {
 364.110 +		QString bundleString;
 364.111 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).id));
 364.112 +		bundleString.append("\t");
 364.113 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).sourceId));
 364.114 +		bundleString.append("\t");
 364.115 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).destinationId));
 364.116 +		bundleString.append("\t");
 364.117 +		bundleString.append(bundleList.at(i).sourceString);
 364.118 +		bundleString.append("\t");
 364.119 +		bundleString.append(bundleList.at(i).destinationString);
 364.120 +		bundleString.append("\t");
 364.121 +		QDateTime Dtime = bundleList.at(i).timeStamp;
 364.122 +		QString time=Dtime.toString("MM/dd/yyyy hh:mm:ss");
 364.123 +		bundleString.append(time);
 364.124 +		bundleString.append("\t");
 364.125 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).options));
 364.126 +		bundleString.append("\t");
 364.127 +		bundleString.append(QString("%1").arg((int)bundleList.at(i).dataLength));
 364.128 +		bundleString.append("\n");
 364.129 +		file.write(bundleString.toAscii ());
 364.130 +	    }
 364.131 +	    file.close();
 364.132 +	}
 364.133 +}
 364.134 +
 364.135 +void BundleManager::readFromFile()
 364.136 +{
 364.137 +	QFile file(dir.filePath("bundles.txt"));
 364.138 +	if (file.open(QIODevice::ReadOnly|QIODevice::Text))
 364.139 +	{
 364.140 +		QString firstLine;
 364.141 +		QString seqLine;
 364.142 +		QString line;
 364.143 +		//First we read date and time
 364.144 +		firstLine=file.readLine();
 364.145 +		//Then we read bundle sequence number
 364.146 +		seqLine=file.readLine();
 364.147 +		seq=seqLine.toInt(0,10);
 364.148 +		//Then we add nodes
 364.149 +		line=file.readLine();
 364.150 +		while(line.size()>0)
 364.151 +		{
 364.152 +			//Parsing node
 364.153 +			int pos;
 364.154 +			QString temp;
 364.155 +			Bundle newBundle;
 364.156 +			//Bundle ID
 364.157 +			pos=line.indexOf("\t",0);
 364.158 +			temp=line.mid(0,pos);
 364.159 +			newBundle.id=temp.toInt(0,10);
 364.160 +			line.remove(0,pos+1);
 364.161 +			//Bundle source ID
 364.162 +			pos=line.indexOf("\t",0);
 364.163 +			temp=line.mid(0,pos);
 364.164 +			newBundle.sourceId=temp.toInt(0,10);
 364.165 +			line.remove(0,pos+1);
 364.166 +			//Bundle destination ID
 364.167 +			pos=line.indexOf("\t",0);
 364.168 +			temp=line.mid(0,pos);
 364.169 +			newBundle.destinationId=temp.toInt(0,10);
 364.170 +			line.remove(0,pos+1);
 364.171 +			//Bundle source string
 364.172 +			pos=line.indexOf("\t",0);
 364.173 +			temp=line.mid(0,pos);
 364.174 +			newBundle.sourceString=temp.toAscii();
 364.175 +			line.remove(0,pos+1);
 364.176 +			//Bundle destination string
 364.177 +			pos=line.indexOf("\t",0);
 364.178 +			temp=line.mid(0,pos);
 364.179 +			newBundle.destinationString=temp.toAscii();
 364.180 +			line.remove(0,pos+1);
 364.181 +			//Bundle timestamp
 364.182 +			pos=line.indexOf("\t",0);
 364.183 +			temp=line.mid(0,pos);
 364.184 +			QDateTime time;
 364.185 +			time=time.fromString(temp,"MM/dd/yyyy hh:mm:ss");
 364.186 +			newBundle.timeStamp=time;
 364.187 +			line.remove(0,pos+1);
 364.188 +			//Bundle options
 364.189 +			pos=line.indexOf("\t",0);
 364.190 +			temp=line.mid(0,pos);
 364.191 +			newBundle.options=temp.toInt(0,10);
 364.192 +			line.remove(0,pos+1);
 364.193 +			//Bundle datalength
 364.194 +			pos=line.indexOf("\t",0);
 364.195 +			temp=line.mid(0,pos);
 364.196 +			newBundle.dataLength=temp.toInt(0,10);
 364.197 +			line.remove(0,pos+1);
 364.198 +			//Adding Node
 364.199 +			QString bundlefilename;
 364.200 +			bundlefilename=QString("%1").arg((int)newBundle.id);
 364.201 +			QFile bundleFile(dir.filePath(bundlefilename));
 364.202 +			if (bundleFile.open(QIODevice::ReadOnly))
 364.203 +			{
 364.204 +			    int size=bundleFile.size();
 364.205 +			    bundleFile.close();
 364.206 +				if(bundleFile.size()>0)
 364.207 +				{
 364.208 +					bundleList.append(newBundle);
 364.209 +				}
 364.210 +			}
 364.211 +
 364.212 +
 364.213 +			line=file.readLine();
 364.214 +		}
 364.215 +		file.close();
 364.216 +	}
 364.217 +	//DEBUG
 364.218 +	emit sendDebugBundleList(bundleList);
 364.219 +	emit sendMemoryStorage(getMemoryStorageSize());
 364.220 +	emit sendFileStorage(getFileStorageSize());
 364.221 +
 364.222 +}
 364.223 +
 364.224 +QList<Bundle> BundleManager::getBundleList()
 364.225 +{	
 364.226 +	return bundleList;
 364.227 +}
 364.228 +
 364.229 +int BundleManager::getMemoryStorageSize()
 364.230 +{	
 364.231 +	int size=0;
 364.232 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 364.233 +	{
 364.234 +		size+=getMemoryBundleSize(bundleList.at(i));
 364.235 +	}
 364.236 +	return size;
 364.237 +}
 364.238 +
 364.239 +int BundleManager::getFileStorageSize()
 364.240 +{	
 364.241 +	int size=0;
 364.242 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 364.243 +	{
 364.244 +		size+=getFileBundleSize(bundleList.at(i));
 364.245 +	}
 364.246 +	return size;
 364.247 +}
 364.248 +
 364.249 +int BundleManager::getMemoryBundleSize(Bundle bundle)
 364.250 +{	
 364.251 +	int size=0;
 364.252 +	size+=sizeof(Bundle);
 364.253 +	size+=bundle.data.size();
 364.254 +	size+=bundle.destinationString.size();
 364.255 +	size+=bundle.sourceString.size();
 364.256 +	return size;
 364.257 +}
 364.258 +
 364.259 +int BundleManager::getFileBundleSize(Bundle bundle)
 364.260 +{	
 364.261 +	if(fileOption==1)
 364.262 +	{
 364.263 +		QString filename;
 364.264 +		filename=QString("%1").arg((int)bundle.id);
 364.265 +		QFile file(dir.filePath(filename));
 364.266 +		return file.size();
 364.267 +	}
 364.268 +	return 0;
 364.269 +}
 364.270 +
 364.271 +
 364.272 +QList<Bundle> BundleManager::getBundleOffer(QList<Node> ourList,QList<Node> encoutnerList,int encounterId)
 364.273 +{
 364.274 +	QList<Bundle> newBundleList;
 364.275 +//	return bundleList;
 364.276 +
 364.277 +	switch(routing)
 364.278 +	{
 364.279 +		case 0:	//EPIDEMIC ROUTING - I like it.. ;)	
 364.280 +			//We have to check for each bundle
 364.281 +			for (ushort i = 0; i < bundleList.size(); ++i) 
 364.282 +			{
 364.283 +				//We have to exclude our own bundles
 364.284 +				if(bundleList.at(i).destinationId!=ourId)
 364.285 +				{		
 364.286 +					if(smartOffer==1)
 364.287 +					{
 364.288 +					    // only offer the bundle if it was not already sent to the 
 364.289 +					    // encountered node.
 364.290 +					    QList<int> l = transferredBundleHash.values(bundleList.at(i).id);
 364.291 +					    if(!l.contains(encounterId))
 364.292 +					    {
 364.293 +							Bundle tempBundle;
 364.294 +							tempBundle=bundleList.at(i);
 364.295 +							newBundleList.append(tempBundle);
 364.296 +							if(logOption==1)
 364.297 +							{
 364.298 +							    QString logString;
 364.299 +		    					logString.append("Bundle: ");	
 364.300 +							    logString.append(QString("%1").arg((int)tempBundle.id));
 364.301 +		    					logString.append(" with encounterId: ");	
 364.302 +							    logString.append(QString("%1").arg((int)encounterId));
 364.303 +		    					logString.append(" not in hash, adding it to offer.");	
 364.304 +		    					log->addLog(0,logString);
 364.305 +							}
 364.306 +						}else
 364.307 +						{
 364.308 +							if(logOption==1)
 364.309 +							{
 364.310 +							    QString logString;
 364.311 +		    					logString.append("Bundle: ");	
 364.312 +							    logString.append(QString("%1").arg((int)bundleList.at(i).id));
 364.313 +		    					logString.append(" with encounterId: ");	
 364.314 +							    logString.append(QString("%1").arg((int)encounterId));
 364.315 +		    					logString.append(" is in hash, not adding it to offer.");	
 364.316 +		    					log->addLog(0,logString);
 364.317 +							}
 364.318 +						}
 364.319 +					}
 364.320 +					else // no smartOffer
 364.321 +					{
 364.322 +					    Bundle tempBundle;
 364.323 +					    tempBundle=bundleList.at(i);
 364.324 +					    newBundleList.append(tempBundle);	
 364.325 +    				}
 364.326 +					
 364.327 +				}
 364.328 +			}
 364.329 +			return newBundleList;
 364.330 +				return bundleList; break;	//this does nothing, probably should be removed
 364.331 +		case 1: //PROPHET ROUTING: GRTR  P_(B,D)>P_(A,D) - A bit more advanced
 364.332 +		//We have to check for each bundle
 364.333 +			for (ushort i = 0; i < bundleList.size(); ++i) 
 364.334 +			{
 364.335 +				//We have to exclude our own bundles
 364.336 +				if(bundleList.at(i).destinationId!=ourId)
 364.337 +				{		
 364.338 +					float ourProbability = -1.0;
 364.339 +					float encounterProbability = -1.0;
 364.340 +					int bundleDestination = bundleList.at(i).destinationId;
 364.341 +					//First we get our probability
 364.342 +					for (ushort n = 0; n < ourList.size(); ++n) 
 364.343 +					{
 364.344 +						int nodeId=ourList.at(n).nodeId;
 364.345 +						if(nodeId==bundleDestination)
 364.346 +							ourProbability = ourList.at(n).probability;
 364.347 +						}
 364.348 +					//Then we get encouter probability
 364.349 +					for (ushort n = 0; n < encoutnerList.size(); ++n) 
 364.350 +					{
 364.351 +						int nodeId=encoutnerList.at(n).nodeId;
 364.352 +						if(encoutnerList.at(n).nodeId==bundleDestination)
 364.353 +							encounterProbability = encoutnerList.at(n).probability;
 364.354 +					}
 364.355 +					//GTRT and Epidemic for ACKS
 364.356 +					if((((encounterProbability>ourProbability)||(bundleDestination==encounterId))&&(bundleDestination!=0)))//||(((bundleList.at(i).options&0x02)==0x02)))
 364.357 +					{		
 364.358 +					    if(smartOffer==1)
 364.359 +			    	    {
 364.360 +							// only send the bundle if it was not already sent to the 
 364.361 +							// encountered node.
 364.362 +							QList<int> l = transferredBundleHash.values(bundleList.at(i).id);
 364.363 +							if(!l.contains(encounterId))
 364.364 +							{
 364.365 +							    Bundle tempBundle;
 364.366 +							    tempBundle=bundleList.at(i);
 364.367 +							    newBundleList.append(tempBundle);
 364.368 +								if(logOption==1)
 364.369 +								{
 364.370 +								    QString logString;
 364.371 +			    					logString.append("Bundle: ");	
 364.372 +								    logString.append(QString("%1").arg((int)tempBundle.id));
 364.373 +		    						logString.append(" with encounterId: ");	
 364.374 +								    logString.append(QString("%1").arg((int)encounterId));
 364.375 +		    						logString.append(" not in hash, adding it to offer.");	
 364.376 +		    						log->addLog(0,logString);
 364.377 +								}
 364.378 +    						}else
 364.379 +							{
 364.380 +								if(logOption==1)
 364.381 +								{
 364.382 +							    	QString logString;
 364.383 +		    						logString.append("Bundle: ");	
 364.384 +								    logString.append(QString("%1").arg((int)bundleList.at(i).id));
 364.385 +		    						logString.append(" with encounterId: ");	
 364.386 +								    logString.append(QString("%1").arg((int)encounterId));
 364.387 +		    						logString.append(" is in hash, not adding it to offer.");	
 364.388 +		    						log->addLog(0,logString);
 364.389 +								}
 364.390 +							}
 364.391 +					    }
 364.392 +					    else	//no smartOffer
 364.393 +					    {
 364.394 +					        Bundle tempBundle;
 364.395 +					        tempBundle=bundleList.at(i);
 364.396 +					        newBundleList.append(tempBundle);
 364.397 +    					    }
 364.398 +					}
 364.399 +				}
 364.400 +			}
 364.401 +			return newBundleList;
 364.402 +			break;
 364.403 +	}
 364.404 +	return bundleList;
 364.405 +}
 364.406 +
 364.407 +void BundleManager::updateBundlesDestinations(NodeManager* nodeManager)
 364.408 +{
 364.409 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 364.410 +	{
 364.411 +		Bundle tempBundle;
 364.412 +		if(bundleList.at(i).destinationId==0)
 364.413 +		{
 364.414 +			QString source;
 364.415 +			QString destination;
 364.416 +			QString temp;
 364.417 +			int pos;
 364.418 +			tempBundle=bundleList.at(i);
 364.419 +/*			temp=tempBundle.sourceString;
 364.420 +			pos=temp.indexOf("://",0);
 364.421 +			temp.remove(0,pos+3);
 364.422 +			pos=temp.indexOf("/",0);
 364.423 +			source=temp.mid(0,pos);*/
 364.424 +			temp=tempBundle.destinationString;
 364.425 +			pos=temp.indexOf("://",0);
 364.426 +			temp.remove(0,pos+3);
 364.427 +			pos=temp.indexOf("/",0);
 364.428 +			destination=temp.mid(0,pos);
 364.429 +			tempBundle.destinationId=nodeManager->getId(destination);
 364.430 +			bundleList.replace(i,tempBundle);
 364.431 +			emit sendDebugBundleList(bundleList);
 364.432 +		}
 364.433 +	} 
 364.434 +
 364.435 +}
 364.436 +
 364.437 +QList<Bundle> BundleManager::prepareBundels(QList<Bundle> receivedList, int senderId)
 364.438 +{
 364.439 +	//Add any acked bundles to the hash with bundle->node mappings, then remove 
 364.440 +	//it from the received list.
 364.441 +	for(int i=0; i<receivedList.size(); i++)
 364.442 +	{
 364.443 +		Bundle b = receivedList.at(i);
 364.444 +		if(b.isAck())
 364.445 +		{
 364.446 +			//Only add the sender to the hash if not alrady in it
 364.447 +			QList<int> l = transferredBundleHash.values(b.id);
 364.448 +			if(!l.contains(senderId)){
 364.449 +				transferredBundleHash.insertMulti(b.id,senderId);
 364.450 +				if(logOption==1){
 364.451 +					QString logString;
 364.452 +					logString.append("Received smart-offer ack for Bundle: ");	
 364.453 +					logString.append(QString("%1").arg((int)b.id));
 364.454 +					logString.append(", adding it to hash. Sender: ");	
 364.455 +					logString.append(QString("%1").arg((int)senderId));
 364.456 +					log->addLog(0,logString);
 364.457 +				}
 364.458 +			}
 364.459 +			receivedList.removeAt(i);
 364.460 +		}
 364.461 +	}
 364.462 +	
 364.463 +	QList<Bundle> newBundleList;
 364.464 +	//We have to find and add all the bundles with data to the list
 364.465 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 364.466 +	{
 364.467 +		for (ushort j = 0; j < receivedList.size(); ++j) 
 364.468 +		{
 364.469 +			if(bundleList.at(i).id==receivedList.at(j).id)
 364.470 +				newBundleList.append(bundleList.at(i));
 364.471 +		}	
 364.472 +	}
 364.473 +	return newBundleList; 
 364.474 +}
 364.475 +
 364.476 +
 364.477 +QList<Bundle> BundleManager::prepareBundelRequest(QList<Bundle> receivedList)
 364.478 +{
 364.479 +	//We take only bundles that we don't have
 364.480 +	//Currently no memory restrictions!!!
 364.481 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 364.482 +	{
 364.483 +		for (ushort j = 0; j < receivedList.size(); ++j) 
 364.484 +		{
 364.485 +			if((bundleList.at(i).id==receivedList.at(j).id))//||(bundleList.at(i).options==receivedList.at(j).id))
 364.486 +			{
 364.487 +				receivedList.removeAt(j);
 364.488 +				j=0;
 364.489 +			}
 364.490 +		}	
 364.491 +	}
 364.492 +
 364.493 +	return receivedList; //We have to add some memory restrictions
 364.494 +}
 364.495 +
 364.496 +
 364.497 +
 364.498 +void BundleManager::addBundleList(QList<Bundle> receivedList)
 364.499 +{
 364.500 +	for (ushort n = 0; n < receivedList.size(); ++n)
 364.501 +	{
 364.502 +		Bundle newBundle;
 364.503 +		newBundle=receivedList.at(n);
 364.504 +		addBundle(newBundle);
 364.505 +	}	
 364.506 +}
 364.507 +
 364.508 +
 364.509 +//This is internal slot for adding bundles to the list
 364.510 +void BundleManager::storeBundle(Bundle newBundle)
 364.511 +{
 364.512 +
 364.513 +	//we obtain space for bundle
 364.514 +	//FIFO 
 364.515 +	while( 
 364.516 +		 (((getMemoryStorageSize()+getMemoryBundleSize(newBundle))>memoryStorageSize)||
 364.517 +		 ((getFileStorageSize()+getFileBundleSize(newBundle))>fileStorageSize))&&
 364.518 +		 (bundleList.size()>0)
 364.519 +		 )
 364.520 +	{
 364.521 +		if(fileOption==1)
 364.522 +		{
 364.523 +			Bundle firstBundle;
 364.524 +			firstBundle=bundleList.first();
 364.525 +			QString filename;
 364.526 +			filename=QString("%1").arg((int)firstBundle.id);
 364.527 +			QFile file(dir.filePath(filename));
 364.528 +			file.remove();
 364.529 +		}
 364.530 +		bundleList.removeFirst();
 364.531 +	}
 364.532 +	//Then we add it to the list
 364.533 +	if(fileOption==1)
 364.534 +	{
 364.535 +		QString filename;
 364.536 +		filename=QString("%1").arg((int)newBundle.id);
 364.537 +		QFile file(dir.filePath(filename));
 364.538 +		if (file.open(QIODevice::WriteOnly))
 364.539 +		{
 364.540 +			file.write(newBundle.data);
 364.541 +			newBundle.data.clear();
 364.542 +			file.close();
 364.543 +		}
 364.544 +	}
 364.545 +	bundleList.append(newBundle);
 364.546 +
 364.547 +		
 364.548 +	//DEBUG
 364.549 +	emit sendDebugBundleList(bundleList);
 364.550 +	emit sendMemoryStorage(getMemoryStorageSize());
 364.551 +	emit sendFileStorage(getFileStorageSize());
 364.552 +
 364.553 +
 364.554 +
 364.555 +}
 364.556 +
 364.557 +//This is external slot for receivng bundles
 364.558 +void BundleManager::addBundle(Bundle newBundle)
 364.559 +{
 364.560 +	int isInTheList=0;
 364.561 + 	Bundle tempBundle=newBundle;
 364.562 +	//Checking that we don't have the same bundle
 364.563 +	//or that wedidn't get any ACK for this bundle sofar
 364.564 +	for (ushort n = 0; n < bundleList.size(); ++n)
 364.565 +	{
 364.566 +		if(tempBundle.id==bundleList.at(n).id)
 364.567 +			isInTheList++;
 364.568 +		//Is there allready an ack for this bundle
 364.569 +		if((bundleList.at(n).options&0x02)==0x02)
 364.570 +		{		
 364.571 +			QByteArray data;
 364.572 +			if(fileOption==1)
 364.573 +			{
 364.574 +				QString filename;
 364.575 +				filename=QString("%1").arg((int)bundleList.at(n).id);
 364.576 +				QFile file(dir.filePath(filename));
 364.577 +				if(file.exists()==1)
 364.578 +				{
 364.579 +					if (file.open(QIODevice::ReadOnly))
 364.580 +					{
 364.581 +						data=file.readAll();
 364.582 +			    			file.close();
 364.583 +					}
 364.584 +				}
 364.585 +			}
 364.586 +			else
 364.587 +			{
 364.588 +				data = tempBundle.data;
 364.589 +			}
 364.590 +			if(tempBundle.id==data.toInt(0,10))   //Checking the bundle ACK bit
 364.591 +				isInTheList++;
 364.592 +		}
 364.593 +	}	
 364.594 +	if(isInTheList==0)
 364.595 +	{
 364.596 +		//We add a new bundle record to log file
 364.597 + 		if(logOption==1)
 364.598 +		{
 364.599 +		    QString logString;
 364.600 +		    logString.append("Bundle ID:");	
 364.601 +		    logString.append(QString("%1").arg((int)tempBundle.id));
 364.602 +		    logString.append(" SRC:");
 364.603 +		    logString.append(QString("%1").arg((int)tempBundle.sourceId));
 364.604 +		    logString.append(" ");
 364.605 +		    logString.append(tempBundle.sourceString);
 364.606 +		    logString.append(" DST:");
 364.607 +		    logString.append(QString("%1").arg((int)tempBundle.destinationId));
 364.608 +		    logString.append(" ");
 364.609 +		    logString.append(" Size:");
 364.610 +		    logString.append(QString("%1").arg((int)tempBundle.data.size()));
 364.611 +		    logString.append(tempBundle.destinationString);
 364.612 +		    log->addLog(0,logString);
 364.613 +		}
 364.614 +		//If this is a bundle endpoint we add it	
 364.615 +		if(tempBundle.destinationId==ourId)
 364.616 +		{
 364.617 +			//First we check if the Bundle is not ACK
 364.618 +			if((tempBundle.options&0x02)!=0x02)//Checking the bundle ACK bit
 364.619 +			{
 364.620 +				//We pass the bundle to Application layer
 364.621 +				//If this is a PRoPHET message...
 364.622 +				if((tempBundle.options&0x04)==0x04)//Checking the "PRoPHET" message bit
 364.623 +				{
 364.624 +					//We add a new msg
 364.625 +					QString filename;
 364.626 +					filename.append(tempBundle.timeStamp.toString("MM-dd_hh-mm"));
 364.627 +					filename.append("_ID_");
 364.628 +					filename.append(QString("%1").arg((int)tempBundle.id));
 364.629 +					filename.append("_FROM_");
 364.630 +					filename.append(tempBundle.sourceString);
 364.631 +					QFile file(msgDir.filePath(filename));
 364.632 +					if(file.open(QIODevice::WriteOnly|QIODevice::Truncate))
 364.633 +					{
 364.634 +						file.write(tempBundle.data);
 364.635 +						file.close();
 364.636 +					}
 364.637 +				}
 364.638 +				//Otherwise we pass it to the DTN
 364.639 +				else
 364.640 +				{
 364.641 +					QString logString;
 364.642 +					logString.append("Adding bundle to DTN  ID:");	
 364.643 +					logString.append(QString("%1").arg((int)tempBundle.id));
 364.644 +					logString.append(" SRC:");
 364.645 +					logString.append(QString("%1").arg((int)tempBundle.sourceId));
 364.646 +					logString.append(" ");
 364.647 +					logString.append(tempBundle.sourceString);
 364.648 +					logString.append(" DST:");
 364.649 +					logString.append(QString("%1").arg((int)tempBundle.destinationId));
 364.650 +					logString.append(" ");
 364.651 +					logString.append(tempBundle.destinationString);
 364.652 +					logString.append(" Size:");
 364.653 +					logString.append(QString("%1").arg((int)tempBundle.data.size()));
 364.654 +				    log->addLog(0,logString);
 364.655 +					emit sendDeliveredBundle(tempBundle);
 364.656 +				}
 364.657 +				//We store the bundle to our list
 364.658 +				//Adding recived bundle to storage if we are the ENDPOINT!!!!!!!!!!!!!
 364.659 +				storeBundle(tempBundle);
 364.660 +				//Then we check if we need to ACK this bundle
 364.661 +				if((tempBundle.options&0x01)==0x01)
 364.662 +				{
 364.663 +					//We create ACK
 364.664 +					Bundle ACKBundle;
 364.665 +					//And put the ACKed bundle ID to data field
 364.666 +					QByteArray ACKData;
 364.667 +					ACKData.setNum(tempBundle.id);
 364.668 +					int ACKOption;
 364.669 +					ACKOption = tempBundle.options;
 364.670 +					//We clear the ACKOption bit and set the ACK bit 
 364.671 +					ACKOption=ACKOption|0x02;
 364.672 +					ACKOption=ACKOption&0xFFFE;
 364.673 +					ACKBundle.setContent(seq,tempBundle.destinationId,tempBundle.sourceId,ACKData,ACKOption,tempBundle.destinationString,tempBundle.sourceString);
 364.674 +					seq++;
 364.675 +					//and add it to the list
 364.676 +					storeBundle(ACKBundle);
 364.677 +				}
 364.678 +			}
 364.679 +			//This is the ACK Bundle for us
 364.680 +			else
 364.681 +			{
 364.682 +				//Adding recived bundle to storage
 364.683 +				storeBundle(tempBundle);
 364.684 +				//Here can we pass some ACK inforation for application layer
 364.685 +				qint32 bundleId=tempBundle.data.toInt(0,10);
 364.686 +				removeBundle(bundleId);
 364.687 +			}
 364.688 +		}
 364.689 +		//This is not bundle's endpoint
 364.690 +		else
 364.691 +		{
 364.692 +			//If this is ACK of one of bundle that we have we remove it 
 364.693 +			if((tempBundle.options&0x02)==0x02)//Checking the bundle ACK bit
 364.694 +			{
 364.695 +				qint32 bundleId=tempBundle.data.toInt(0,10);
 364.696 +				removeBundle(bundleId);
 364.697 +			}
 364.698 +			storeBundle(tempBundle);
 364.699 +		}
 364.700 +
 364.701 +	}
 364.702 +}
 364.703 +
 364.704 +bool BundleManager::removeBundle(int bundleID)
 364.705 +{
 364.706 +	//First we search for the bundle
 364.707 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 364.708 +	{
 364.709 +		if(bundleID==bundleList.at(i).id)
 364.710 +		{
 364.711 +			//Then we dele it
 364.712 +			if(fileOption==1)
 364.713 +			{
 364.714 +				QString filename;
 364.715 +				filename=QString("%1").arg((int)bundleList.at(i).id);
 364.716 +				QFile file(dir.filePath(filename));
 364.717 +				if(file.exists()==1)
 364.718 +				{
 364.719 +					file.remove();
 364.720 +				}
 364.721 +			}
 364.722 +			bundleList.removeAt(i);			
 364.723 +			//DEBUG
 364.724 +			emit sendDebugBundleList(bundleList);
 364.725 +			emit sendMemoryStorage(getMemoryStorageSize());
 364.726 +			emit sendFileStorage(getFileStorageSize());
 364.727 +			return 1;
 364.728 +		}
 364.729 +	}
 364.730 +	return 0;
 364.731 +
 364.732 +}
 364.733 +
 364.734 +
 364.735 +void BundleManager::checkTTL()
 364.736 +{
 364.737 +	if(TTLOption==1)
 364.738 +	{
 364.739 +		QDateTime currentTime;
 364.740 +		currentTime=currentTime.currentDateTime();
 364.741 +		int currentTimeInSeconds=currentTime.toTime_t();
 364.742 +		for (ushort i = 0; i < bundleList.size(); ++i) 
 364.743 +		{
 364.744 +			int bundleTime=bundleList.at(i).timeStamp.toTime_t();
 364.745 +			if((bundleList.at(i).timeStamp.toTime_t()+TTLValue)<currentTimeInSeconds)
 364.746 +			{
 364.747 +				//Then we delete it
 364.748 +				removeBundle(bundleList.at(i).id);
 364.749 +				i=0;
 364.750 +			}
 364.751 +		}
 364.752 +	}
 364.753 +}
 364.754 +
 364.755 +void BundleManager::removeAllBundles()
 364.756 +{
 364.757 +	while(bundleList.size()>0)
 364.758 +	{
 364.759 +		removeBundle(bundleList.first().id);
 364.760 +	}
 364.761 +}
 364.762 +
 364.763 +int BundleManager::getSeq()
 364.764 +{
 364.765 +	seq++;
 364.766 +	seq%=1000000;
 364.767 +	return seq;
 364.768 +}
 364.769 +
 364.770 +
   365.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   365.2 +++ b/x86/x86/bundleManager.h	Thu Jun 26 17:39:40 2008 +0100
   365.3 @@ -0,0 +1,172 @@
   365.4 +#ifndef BUNDLEMANAGER_H
   365.5 +#define BUNDLEMANAGER_H
   365.6 +#include <QtCore>
   365.7 +#include <bundle.h>
   365.8 +#include <node.h>
   365.9 +#include <nodeManager.h>
  365.10 +#include <messageFile.h>
  365.11 +#include <bundleListFileIO.h>
  365.12 +
  365.13 +/*! \brief This class keeps track of bundles and handles bundle storage, both 
  365.14 + * in memory and on disk. 
  365.15 + *
  365.16 + * PRoPHET routing is also done in this class (but should be moved 
  365.17 + * to its own object.
  365.18 + */
  365.19 +class BundleManager : public QObject
  365.20 +{
  365.21 +	Q_OBJECT
  365.22 +
  365.23 +public:
  365.24 +	BundleManager(int);
  365.25 +	int getMemoryStorageSize();
  365.26 +	int getMemoryBundleSize(Bundle);
  365.27 +	int getFileStorageSize();
  365.28 +	int getFileBundleSize(Bundle);
  365.29 +	QList<Bundle> getBundleList();
  365.30 +
  365.31 +	//Returns the list of bundles that are to be offered to the encountered node.
  365.32 +	/*!
  365.33 +	 * Returns the list of bundles that are to be offered to the encountered 
  365.34 +	 * node.
  365.35 +	 * @param ourList our list of known nodes (from node manager).
  365.36 +	 * @param encoutnerlist the node list of the encountered node.
  365.37 +	 * @param encounterId the node id of the encountered node.
  365.38 +	 * @return the list of bundles that are to be offered to the encountered 
  365.39 +	 * node.
  365.40 +	 */
  365.41 +	QList<Bundle> getBundleOffer(QList<Node> ourList,QList<Node> encoutnerList,int encounterId);
  365.42 +	QList<Bundle> prepareBundelRequest(QList<Bundle>);
  365.43 +
  365.44 +	// Builds the list of bundles that are to be transferred to the encountered node.
  365.45 +	/*!
  365.46 +	 * @param receivedList the list of requested bundles.
  365.47 +	 * @param senderId the id of the node this Bundle was received from. 
  365.48 +	 * Note: This is NOT the source id.
  365.49 +	 * @return the list of bundles that will be sent to the other node.
  365.50 +	 */
  365.51 +	QList<Bundle> prepareBundels(QList<Bundle>, int senderId);
  365.52 +
  365.53 +private:
  365.54 +	QTimer *timer;
  365.55 +	QTimer *TTLTimer;
  365.56 +	int routing;	//0=epidemic, 1=GRTR
  365.57 +	int fileOption;
  365.58 +	int TTLOption;
  365.59 +	int TTLValue;
  365.60 +	int ACKOption;
  365.61 +	int memoryStorageSize;
  365.62 +	int fileStorageSize;
  365.63 +	int ourId;
  365.64 +	int seq;
  365.65 +	int smartOffer;
  365.66 +
  365.67 +	// keeps track of which nodes each bundle was sent to
  365.68 +	// key = bundle id, value = list of node ids
  365.69 +	// (should be declared private)
  365.70 +	QMultiHash<int, int> transferredBundleHash;
  365.71 +    BundleListFileIO* hashFile;
  365.72 +
  365.73 +	QTimer *writeToFileTimer;
  365.74 +	QList<Bundle> bundleList;
  365.75 +
  365.76 +	QDir dir;
  365.77 +	QDir msgDir;
  365.78 +	QString storagePath;
  365.79 +	int option;
  365.80 +	int logOption;
  365.81 +	MessageFile *log;
  365.82 +	bool showFirstTime;
  365.83 +
  365.84 +signals:
  365.85 +	/*!
  365.86 +	 * Emits the specified Bundle. (Used for passing bundles to DTN)
  365.87 +	 */
  365.88 +	void sendDeliveredBundle(Bundle);
  365.89 +	
  365.90 +		/*!
  365.91 +	 * Emits the memory usage of the bundle list in bytes(?).
  365.92 +	 */
  365.93 +	void sendMemoryStorage(int);
  365.94 +	
  365.95 +	/*!
  365.96 +	 * Emits the size (in bytes?) of the file storage.
  365.97 +	 */
  365.98 +	void sendFileStorage(int);
  365.99 +	
 365.100 +	/*!
 365.101 +	 * Emits the bundle list (to the GUI).
 365.102 +	 */
 365.103 +	void sendDebugBundleList(QList<Bundle>);
 365.104 +
 365.105 +public slots:
 365.106 +	/*!
 365.107 +	 * External method to get a  bundle sequence number.
 365.108 +	 */
 365.109 +	int getSeq();
 365.110 +
 365.111 +	/*!
 365.112 +	 * External slot for receiving bundles. Received bundles are 
 365.113 +	 * appropriately dispatched to either the application layer (an NSIM 
 365.114 +	 * bundle) or to DTN.
 365.115 +	 */
 365.116 +	void addBundle(Bundle);
 365.117 +	
 365.118 +	/*!
 365.119 +	 * Goes through the bundle list searching for bundles who's destination 
 365.120 +	 * id=0 and assigning the correct destination for any such bundles. 
 365.121 +	 * This function is a workaround for the situation when bundles are 
 365.122 +	 * received before this client is aware of (has a probability for) the 
 365.123 +	 * destination node.
 365.124 +	 */
 365.125 +	void updateBundlesDestinations(NodeManager*);
 365.126 +	
 365.127 +	/*!
 365.128 +	 * Inserts all bundles in the list to the list of this bundleManager.
 365.129 +	 * @param receivedList a list of bundles to be added to this 
 365.130 +	 * bundleManagers list.
 365.131 +	 */
 365.132 +	void addBundleList(QList<Bundle>);
 365.133 +	
 365.134 +private slots:
 365.135 +	/*!
 365.136 +	 * Saves the bundle list to the file bundles.txt.
 365.137 +	 */
 365.138 +	void saveToFile();
 365.139 +	
 365.140 +	/*!
 365.141 +	 * Updates the bundle list in memory to match the one stored on disk in 
 365.142 +	 * bundles.txt.
 365.143 +	 */
 365.144 +	void readFromFile();
 365.145 +	
 365.146 +	/*!
 365.147 +	 * Removes the specified bundle from the list.
 365.148 +	 * @param bundleID the id of the bundle to be removed.
 365.149 +	 */
 365.150 +	bool removeBundle(int);
 365.151 +	
 365.152 +	/*!
 365.153 +	 * Triggers sending the bundle list to the GUI.
 365.154 +	 */	
 365.155 +	void emitDebugList();
 365.156 +	
 365.157 +	/*!
 365.158 +	 * Iterates through the bundle list and removes any bundles which have 
 365.159 +	 * an outdated timestamp.
 365.160 +	 */
 365.161 +	void checkTTL();
 365.162 +	
 365.163 +	/*!
 365.164 +	 * Removes all bundles from the list.
 365.165 +	 */
 365.166 +	void removeAllBundles();
 365.167 +	
 365.168 +	/*!
 365.169 +	 * Internal slot for adding a bundle to the list.
 365.170 +	 */
 365.171 +	void storeBundle(Bundle);
 365.172 +
 365.173 +
 365.174 +};
 365.175 +#endif
   366.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   366.2 +++ b/x86/x86/bundleWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   366.3 @@ -0,0 +1,176 @@
   366.4 +#include <QtGui>
   366.5 +#include <bundleWidget.h>
   366.6 +#include <readFile.h>
   366.7 +
   366.8 +
   366.9 +BundleWidget::BundleWidget(QWidget *parent)
  366.10 +        : QWidget(parent)
  366.11 +{
  366.12 +#ifdef PDAGUI
  366.13 +//	setFixedSize(230, 300);
  366.14 +#else
  366.15 +	setFixedSize(990, 660);
  366.16 +#endif //PDAGUI
  366.17 +	
  366.18 +	ReadFile conf;
  366.19 +
  366.20 +#ifndef PDAGUI
  366.21 +	//List group
  366.22 +	QGroupBox *bundleBox = new QGroupBox("Bundle list");
  366.23 +#endif //PDAGUI
  366.24 +
  366.25 +	//Bundle table
  366.26 +	table = new QTableWidget(200, 9, this);
  366.27 +    QStringList horizontalLabels;
  366.28 +    horizontalLabels << "ID" << "TimeStamp" << "SrcStr" << "DestStr"<< "Source" << "Dest" << "Data" << "Options" << "Size";
  366.29 +	table->setHorizontalHeaderLabels(horizontalLabels); 
  366.30 +
  366.31 +
  366.32 +	//Final grid layout
  366.33 +    QGridLayout *bundleGroup = new QGridLayout;
  366.34 +	bundleGroup->addWidget(table, 0, 0);
  366.35 +#ifdef PDAGUI
  366.36 +	bundleGroup->setMargin(0);
  366.37 +	bundleGroup->setSpacing(0);
  366.38 +//	bundleBox->setFixedSize(230, 270);
  366.39 +#else
  366.40 +	bundleBox->setFixedSize(950, 550);
  366.41 +	bundleBox->setLayout(bundleGroup);
  366.42 +#endif //PDAGUI
  366.43 +
  366.44 +#ifndef PDAGUI
  366.45 +	QGroupBox *buttonBox = new QGroupBox("Administration");
  366.46 +#endif //PDAGUI
  366.47 +#ifdef PDAGUI
  366.48 +	removeSelected = new QPushButton("Remove Selected");
  366.49 +	removeAll = new QPushButton("Remove All");
  366.50 +#else
  366.51 +	removeSelected = new QPushButton("Remove Selected One");
  366.52 +	removeAll = new QPushButton("Remove All Bundles");
  366.53 +#endif //PDAGUI
  366.54 +	connect(removeSelected, SIGNAL(pressed()), this, SLOT(removeSelectedSlot()));
  366.55 +	connect(removeAll, SIGNAL(pressed()), this, SLOT(removeAllSlot()));
  366.56 +
  366.57 +
  366.58 +	//Final grid layout
  366.59 +    QGridLayout *administrationGroup = new QGridLayout;
  366.60 +
  366.61 +	administrationGroup->addWidget(removeSelected, 0, 0);
  366.62 +	administrationGroup->addWidget(removeAll, 0, 1);
  366.63 +
  366.64 +#ifdef PDAGUI
  366.65 +	administrationGroup->setMargin(0);
  366.66 +	administrationGroup->setSpacing(0);
  366.67 +// 	buttonBox->setFixedSize(230, 30);
  366.68 +//	buttonBox->setLayout(administrationGroup);
  366.69 +	//Define final layout
  366.70 +	QVBoxLayout *layout = new QVBoxLayout;
  366.71 +	layout->setMargin(0);
  366.72 +	layout->setSpacing(0);
  366.73 +	QWidget *tempWidget1 = new QWidget(this);
  366.74 +//	table->setFixedSize(230,260);
  366.75 +//	tempWidget1->setFixedSize(230,260);
  366.76 +	tempWidget1->setLayout(bundleGroup);
  366.77 +    layout->addWidget(tempWidget1);
  366.78 +	QWidget *tempWidget2 = new QWidget(this);
  366.79 +//	tempWidget2->setFixedSize(230,40);
  366.80 +	tempWidget2->setLayout(administrationGroup);
  366.81 +	layout->addWidget(tempWidget2);
  366.82 +    setLayout(layout);
  366.83 +#else
  366.84 + 	buttonBox->setFixedSize(950, 60);
  366.85 +	buttonBox->setLayout(administrationGroup);
  366.86 +	//Define final layout
  366.87 +	QVBoxLayout *layout = new QVBoxLayout;
  366.88 +    layout->addWidget(bundleBox);    
  366.89 +	layout->addWidget(buttonBox);    
  366.90 +    setLayout(layout);
  366.91 +#endif //PDAGUI
  366.92 +}
  366.93 +
  366.94 +
  366.95 +void BundleWidget::removeSelectedSlot()
  366.96 +{
  366.97 +
  366.98 +	QList<QTableWidgetItem*> list; 
  366.99 +	list = table->selectedItems ();
 366.100 +	if(list.size()==1)
 366.101 +	for (int i = 0; i < list.size(); ++i) 
 366.102 +	{
 366.103 +		QTableWidgetItem* item = list[i];
 366.104 +		int bundleId = item->text().toInt(0,10);
 366.105 +		emit removeBundle(bundleId);
 366.106 +	}
 366.107 +}
 366.108 +
 366.109 +void BundleWidget::removeAllSlot()
 366.110 +{
 366.111 +	 if(
 366.112 +	QMessageBox::question(
 366.113 +		this,
 366.114 +		 "Warning",
 366.115 +		"Are you really sure to remove all bundles?\n",
 366.116 +		"No","Yes",
 366.117 +		QString(),1,0)
 366.118 +	  )
 366.119 +		emit removeAllBundles();
 366.120 +}
 366.121 +
 366.122 +void BundleWidget::getBundleList(QList<Bundle> list)
 366.123 +{
 366.124 +	Bundle newBundle;
 366.125 +	table->clear();
 366.126 +	QStringList horizontalLabels;
 366.127 +    horizontalLabels << "ID" << "TimeStamp" << "SrcStr" << "DestStr"<< "Source" << "Dest" << "Data" << "Options" << "Size";
 366.128 +	table->setHorizontalHeaderLabels(horizontalLabels);
 366.129 +	table->setColumnWidth(0, 70);	//ID
 366.130 +	table->setColumnWidth(2, 70);	//time
 366.131 +	table->setColumnWidth(3, 70);	//srcstr
 366.132 +	table->setColumnWidth(4, 70);	//dststr
 366.133 +	table->setColumnWidth(5, 30);	//src
 366.134 +	table->setColumnWidth(6, 30);	//dst
 366.135 +	table->setColumnWidth(7, 70);	//data
 366.136 +	table->setColumnWidth(8, 40);	//opt
 366.137 +	table->setColumnWidth(9, 40);	//size
 366.138 +   for (int i = 0; i < list.size(); ++i) 
 366.139 +	{
 366.140 +		newBundle=list.at(i);
 366.141 +		QString text = QString("%1").arg((int)newBundle.getId());
 366.142 +		QTableWidgetItem *newItem = new QTableWidgetItem(text);
 366.143 +		table->setItem(i, 0, newItem);
 366.144 +	
 366.145 +		QDateTime time= newBundle.getTime();
 366.146 +		text = time.toString("MM/dd/yyyy hh:mm:ss");
 366.147 +		newItem = new QTableWidgetItem(text);
 366.148 +		table->setItem(i, 1, newItem);
 366.149 +
 366.150 +	
 366.151 +		newItem = new QTableWidgetItem((QString)newBundle.sourceString);
 366.152 +		table->setItem(i, 2, newItem);
 366.153 +		
 366.154 +		newItem = new QTableWidgetItem((QString)newBundle.destinationString);
 366.155 +		table->setItem(i, 3, newItem);
 366.156 +		
 366.157 +		text = QString("%1").arg((int)newBundle.getSourceId());
 366.158 +		newItem = new QTableWidgetItem(text);
 366.159 +		table->setItem(i, 4, newItem);
 366.160 +
 366.161 +		text = QString("%1").arg((int)newBundle.getDestinationId());
 366.162 +		newItem = new QTableWidgetItem(text);
 366.163 +		table->setItem(i, 5, newItem);
 366.164 +	
 366.165 +		newItem = new QTableWidgetItem((QString)newBundle.getData());
 366.166 +		table->setItem(i, 6, newItem);
 366.167 +
 366.168 +		text = QString("%1").arg((int)newBundle.getOptions());
 366.169 +		newItem = new QTableWidgetItem(text);
 366.170 +		table->setItem(i, 7, newItem);
 366.171 +
 366.172 +		text = QString("%1").arg((int)newBundle.dataLength);
 366.173 +		newItem = new QTableWidgetItem(text);
 366.174 +		table->setItem(i, 8, newItem);
 366.175 +
 366.176 +
 366.177 +	}
 366.178 +
 366.179 + }
   367.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   367.2 +++ b/x86/x86/bundleWidget.h	Thu Jun 26 17:39:40 2008 +0100
   367.3 @@ -0,0 +1,34 @@
   367.4 +#ifndef BUNDLEWIDGET_H
   367.5 +#define BUNDLEWIDGET_H
   367.6 +#include <QtGui>
   367.7 +#include <QtNetwork>
   367.8 +#include <bundle.h>
   367.9 +
  367.10 +
  367.11 +class BundleWidget : public QWidget
  367.12 +{
  367.13 +
  367.14 +	Q_OBJECT
  367.15 +
  367.16 +public:
  367.17 +
  367.18 +	BundleWidget(QWidget *parent = 0);
  367.19 +	QTableWidget *table;
  367.20 +	QPushButton *removeSelected;
  367.21 +	QPushButton *removeAll;
  367.22 +
  367.23 +signals:
  367.24 +	void removeBundle(int);
  367.25 +	void removeAllBundles();
  367.26 +public slots:
  367.27 +	void removeSelectedSlot();
  367.28 +	void removeAllSlot();
  367.29 +	void getBundleList(QList<Bundle>);
  367.30 +
  367.31 +
  367.32 +
  367.33 +};
  367.34 +
  367.35 +#endif
  367.36 +
  367.37 +
   368.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   368.2 +++ b/x86/x86/configWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   368.3 @@ -0,0 +1,257 @@
   368.4 +#include <QtGui>
   368.5 +#include <configWidget.h>
   368.6 +#include <readFile.h>
   368.7 +
   368.8 +ConfigWidget::ConfigWidget(QWidget *parent)
   368.9 +        : QWidget(parent)
  368.10 +{
  368.11 +	ReadFile conf;
  368.12 +
  368.13 +	//Reading configuration
  368.14 +	loadConfiguration();
  368.15 +	//Final grid layout
  368.16 +	QGridLayout *readGroup = new QGridLayout;
  368.17 +	readGroup->setMargin(2);
  368.18 +	readGroup->setSpacing(0);
  368.19 +
  368.20 +	QLabel *labelNODEID = new QLabel("NodeID:");
  368.21 +	readGroup->addWidget(labelNODEID, 0, 0);
  368.22 +	readGroup->addWidget(lineNODEID, 0, 1);
  368.23 +	QLabel *labelNODENAME = new QLabel("Node Name:");
  368.24 +	readGroup->addWidget(labelNODENAME, 1, 0);
  368.25 +	readGroup->addWidget(lineNODENAME, 1, 1);
  368.26 +	QLabel *labelNODEIP = new QLabel("Node IP:");
  368.27 +	readGroup->addWidget(labelNODEIP, 2, 0);
  368.28 +	readGroup->addWidget(lineNODEIP, 2, 1);
  368.29 +	QLabel *labelNODEIP2 = new QLabel("Node IP2:");
  368.30 +	readGroup->addWidget(labelNODEIP2, 3, 0);
  368.31 +	readGroup->addWidget(lineNODEIP2, 3, 1);
  368.32 +	QLabel *labelNODEBROADCAST = new QLabel("Broadcast Address:");
  368.33 +	readGroup->addWidget(labelNODEBROADCAST, 4, 0);
  368.34 +	readGroup->addWidget(lineNODEBROADCAST, 4, 1);
  368.35 +	QLabel *labelBROADCAST = new QLabel("Broadcast Timer:");
  368.36 +	readGroup->addWidget(labelBROADCAST, 5, 0);
  368.37 +	readGroup->addWidget(lineBROADCAST, 5, 1);
  368.38 +	QLabel *labelAGINGTIMER = new QLabel("Aging Timer:");
  368.39 +	readGroup->addWidget(labelAGINGTIMER, 6, 0);
  368.40 +	readGroup->addWidget(lineAGINGTIMER, 6, 1);
  368.41 +	QLabel *labelPENCOUNTER = new QLabel("PEcounter:");
  368.42 +	readGroup->addWidget(labelPENCOUNTER, 7, 0);
  368.43 +	readGroup->addWidget(linePENCOUNTER, 7, 1);
  368.44 +	QLabel *labelBETA = new QLabel("Beta:");
  368.45 +	readGroup->addWidget(labelBETA, 8, 0);
  368.46 +	readGroup->addWidget(lineBETA, 8, 1);
  368.47 +	QLabel *labelGAMMA = new QLabel("Gamma:");
  368.48 +	readGroup->addWidget(labelGAMMA, 9, 0);
  368.49 +	readGroup->addWidget(lineGAMMA, 9, 1);
  368.50 +	QLabel *labelHELLO = new QLabel("Hello Timer:");
  368.51 +	readGroup->addWidget(labelHELLO, 10, 0);
  368.52 +	readGroup->addWidget(lineHELLO, 10, 1);
  368.53 +
  368.54 +	QLabel *labelALIVE = new QLabel("Alive Timer:");
  368.55 +	readGroup->addWidget(labelALIVE, 11, 0);
  368.56 +	readGroup->addWidget(lineALIVE, 11, 1);
  368.57 +
  368.58 +	QLabel *labelHELLOTIMER = new QLabel("Hello Timer:");
  368.59 +	readGroup->addWidget(labelHELLOTIMER, 12, 0);
  368.60 +	readGroup->addWidget(lineHELLOTIMER, 12, 1);
  368.61 +
  368.62 +//	QLabel *laberINITIATORTIMER = new QLabel("Initiator Timer:");
  368.63 +//	readGroup->addWidget(laberINITIATORTIMER, 13, 0);
  368.64 +//	readGroup->addWidget(lineINITIATORTIMER, 13, 1);
  368.65 +
  368.66 +//	QLabel *labelLISTENERTIMER = new QLabel("Listener Timer:");
  368.67 +//	readGroup->addWidget(labelLISTENERTIMER, 14, 0);
  368.68 +//	readGroup->addWidget(lineLISTENERTIMER, 14, 1);
  368.69 +
  368.70 +	QLabel *labelDTNHOSTNAME = new QLabel("DTN Host Name:");
  368.71 +	readGroup->addWidget(labelDTNHOSTNAME, 13, 0);
  368.72 +	readGroup->addWidget(lineDTNHOSTNAME, 13, 1);
  368.73 +
  368.74 +	QLabel *labelDNTTIMER = new QLabel("DTN Timer:");
  368.75 +	readGroup->addWidget(labelDNTTIMER, 14, 0);
  368.76 +	readGroup->addWidget(lineDNTTIMER, 14, 1);
  368.77 +
  368.78 +	QLabel *labelSTORAGESIZE = new QLabel("File Storge size:");
  368.79 +	readGroup->addWidget(labelSTORAGESIZE, 15, 0);
  368.80 +	readGroup->addWidget(lineSTORAGESIZE, 15, 1);
  368.81 +
  368.82 +	QLabel *labelMEMORYSIZE = new QLabel("Memory Storge size:");
  368.83 +	readGroup->addWidget(labelMEMORYSIZE, 16, 0);
  368.84 +	readGroup->addWidget(lineMEMORYSIZE, 16, 1);
  368.85 +
  368.86 +	QLabel *labelROUTING = new QLabel("Routing Type:");
  368.87 +	readGroup->addWidget(labelROUTING, 17, 0);
  368.88 +	readGroup->addWidget(lineROUTING, 17, 1);
  368.89 +
  368.90 +	QLabel *labelQUEUE = new QLabel("Queue Type:");
  368.91 +	readGroup->addWidget(labelQUEUE, 18, 0);
  368.92 +	readGroup->addWidget(lineQUEUE, 18, 1);
  368.93 +
  368.94 +	QLabel *labelCONTINIUSUPDATE = new QLabel("Continius update:");
  368.95 +	readGroup->addWidget(labelCONTINIUSUPDATE, 19, 0);
  368.96 +	readGroup->addWidget(lineCONTINIUSUPDATE, 19, 1);
  368.97 +
  368.98 +	QLabel *labelSTORAGEPATH = new QLabel("Storage Path:");
  368.99 +	readGroup->addWidget(labelSTORAGEPATH, 20, 0);
 368.100 +	readGroup->addWidget(lineSTORAGEPATH, 20, 1);
 368.101 +
 368.102 +	QLabel *labelLOGPATH = new QLabel("Log Path:");
 368.103 +	readGroup->addWidget(labelLOGPATH, 21, 0);
 368.104 +	readGroup->addWidget(lineLOGPATH, 21, 1);
 368.105 +
 368.106 +	QLabel *labelMSGPATH = new QLabel("Messages Path:");
 368.107 +	readGroup->addWidget(labelMSGPATH, 22, 0);
 368.108 +	readGroup->addWidget(lineMSGPATH, 22, 1);
 368.109 +
 368.110 +	QLabel *labelAGEFILENODES = new QLabel("Age Nodes on Startup:");
 368.111 +	readGroup->addWidget(labelAGEFILENODES, 23, 0);
 368.112 +	readGroup->addWidget(lineAGEFILENODES, 23, 1);
 368.113 +
 368.114 +	QLabel *labelUSEFILENODES = new QLabel("Store Nodes To File:");
 368.115 +	readGroup->addWidget(labelUSEFILENODES, 24, 0);
 368.116 +	readGroup->addWidget(lineUSEFILENODES, 24, 1);
 368.117 +
 368.118 +	QLabel *labelWRITETOFILETIMER = new QLabel("File Writing Timer:");
 368.119 +	readGroup->addWidget(labelWRITETOFILETIMER, 25, 0);
 368.120 +	readGroup->addWidget(lineWRITETOFILETIMER, 25, 1);
 368.121 +
 368.122 +	QLabel *labelUSEFILEBUNDLES = new QLabel("Store Bundels To Files:");
 368.123 +	readGroup->addWidget(labelUSEFILEBUNDLES, 26, 0);
 368.124 +	readGroup->addWidget(lineUSEFILEBUNDLES, 26, 1);
 368.125 +
 368.126 +
 368.127 +	QLabel *labelLOGGING = new QLabel("Logging:");
 368.128 +	readGroup->addWidget(labelLOGGING, 27, 0);
 368.129 +	readGroup->addWidget(lineLOGGING, 27, 1);
 368.130 +
 368.131 +	QLabel *labelUSETTL = new QLabel("Use TTL:");
 368.132 +	readGroup->addWidget(labelUSETTL, 28, 0);
 368.133 +	readGroup->addWidget(lineUSETTL, 28, 1);
 368.134 +
 368.135 +	QLabel *labelTTL = new QLabel("TTL:");
 368.136 +	readGroup->addWidget(labelTTL, 29, 0);
 368.137 +	readGroup->addWidget(lineTTL, 29, 1);
 368.138 +
 368.139 +	QLabel *labelACKS = new QLabel("Use ACKs:");
 368.140 +	readGroup->addWidget(labelACKS, 30, 0);
 368.141 +	readGroup->addWidget(lineACKS, 30, 1);
 368.142 +
 368.143 +	//Define final layout
 368.144 +	QWidget *tempWidget = new QWidget();
 368.145 +	tempWidget->setLayout(readGroup);
 368.146 +	QScrollArea *scrollArea = new QScrollArea();
 368.147 +	scrollArea->setWidget(tempWidget);
 368.148 +	scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
 368.149 +	QGridLayout *layout = new QGridLayout();
 368.150 +	layout->setMargin(2);
 368.151 +	layout->setSpacing(2);
 368.152 +	layout->addWidget(scrollArea, 0, 0);
 368.153 +    setLayout(layout);
 368.154 +}
 368.155 +
 368.156 +void ConfigWidget::loadConfiguration()
 368.157 +{
 368.158 +	ReadFile conf;
 368.159 +	lineNODEID = new QLineEdit();
 368.160 +	lineNODEID->setText(QString("%1").arg(conf.getNodeId()));
 368.161 +
 368.162 +	lineNODENAME = new QLineEdit();
 368.163 +	lineNODENAME->setText(conf.getNodeName());
 368.164 +
 368.165 +	lineNODEIP = new QLineEdit();
 368.166 +	lineNODEIP->setText(conf.getNodeIp().toString());
 368.167 +
 368.168 +	lineNODEIP2 = new QLineEdit();
 368.169 +	lineNODEIP2->setText(conf.getNodeIp2().toString());
 368.170 +
 368.171 +	lineNODEBROADCAST = new QLineEdit();
 368.172 +	lineNODEBROADCAST->setText(conf.getBroadcast().toString());
 368.173 +
 368.174 +	lineBROADCAST = new QLineEdit();
 368.175 +	lineBROADCAST->setText(QString("%1").arg(conf.getBroadcastTimer()));
 368.176 +
 368.177 +	lineAGINGTIMER = new QLineEdit();
 368.178 +	lineAGINGTIMER->setText(QString("%1").arg(conf.getAgingTimer()));
 368.179 +
 368.180 +	linePENCOUNTER = new QLineEdit();
 368.181 +	linePENCOUNTER->setText(QString("%1").arg(conf.getPEncounter()));
 368.182 +
 368.183 +	lineBETA = new QLineEdit();
 368.184 +	lineBETA->setText(QString("%1").arg(conf.getBeta()));
 368.185 +
 368.186 +	lineGAMMA = new QLineEdit();
 368.187 +	lineGAMMA->setText(QString("%1").arg(conf.getGamma()));
 368.188 +	
 368.189 +	lineHELLO = new QLineEdit();
 368.190 +	lineHELLO->setText(QString("%1").arg(conf.getHello()));
 368.191 +	
 368.192 +	lineALIVE = new QLineEdit();
 368.193 +	lineALIVE->setText(QString("%1").arg(conf.getAlive()));
 368.194 +	
 368.195 +	lineHELLOTIMER = new QLineEdit();
 368.196 +	lineHELLOTIMER->setText(QString("%1").arg(conf.getHello()));
 368.197 +	
 368.198 +	lineINITIATORTIMER = new QLineEdit();
 368.199 +	lineINITIATORTIMER->setText(QString("%1").arg(conf.getInitiatorTimer()));
 368.200 +	
 368.201 +	lineLISTENERTIMER = new QLineEdit();
 368.202 +	lineLISTENERTIMER->setText(QString("%1").arg(conf.getListenerTimer()));
 368.203 +	
 368.204 +	lineDTNHOSTNAME = new QLineEdit();
 368.205 +	lineDTNHOSTNAME->setText(conf.getDTNHostName().toString());
 368.206 +	
 368.207 +	lineDNTTIMER = new QLineEdit();
 368.208 +	lineDNTTIMER->setText(QString("%1").arg(conf.getDTNTimer()));
 368.209 +
 368.210 +	lineSTORAGESIZE = new QLineEdit();
 368.211 +	lineSTORAGESIZE->setText(QString("%1").arg(conf.getStorageSize()));
 368.212 +
 368.213 +	lineMEMORYSIZE = new QLineEdit();
 368.214 +	lineMEMORYSIZE->setText(QString("%1").arg(conf.getMemoryStorageSize()));
 368.215 +
 368.216 +	lineROUTING = new QLineEdit();
 368.217 +	lineROUTING->setText(QString("%1").arg(conf.getRouting()));
 368.218 +
 368.219 +	lineQUEUE = new QLineEdit();
 368.220 +	lineQUEUE->setText(QString("%1").arg(conf.getQueue()));
 368.221 +
 368.222 +	lineCONTINIUSUPDATE = new QLineEdit();
 368.223 +	lineCONTINIUSUPDATE->setText(QString("%1").arg(conf.getContiniusUpdate()));
 368.224 +
 368.225 +	lineSTORAGEPATH = new QLineEdit();
 368.226 +	lineSTORAGEPATH->setText(QString("%1").arg(conf.getStoragePath()));
 368.227 +
 368.228 +	lineLOGPATH = new QLineEdit();
 368.229 +	lineLOGPATH->setText(QString("%1").arg(conf.getLogPath()));
 368.230 +
 368.231 +	lineMSGPATH = new QLineEdit();
 368.232 +	lineMSGPATH->setText(QString("%1").arg(conf.getMsgPath()));
 368.233 +
 368.234 +	lineAGEFILENODES = new QLineEdit();
 368.235 +	lineAGEFILENODES->setText(QString("%1").arg(conf.getAgeFileNodes()));
 368.236 +
 368.237 +	lineUSEFILENODES = new QLineEdit();
 368.238 +	lineUSEFILENODES->setText(QString("%1").arg(conf.getUseFileNodes()));
 368.239 +
 368.240 +	lineWRITETOFILETIMER = new QLineEdit();
 368.241 +	lineWRITETOFILETIMER->setText(QString("%1").arg(conf.getWriteToFileTimer()));
 368.242 +
 368.243 +	lineUSEFILEBUNDLES = new QLineEdit();
 368.244 +	lineUSEFILEBUNDLES->setText(QString("%1").arg(conf.getUseFileBundles()));
 368.245 +
 368.246 +	lineLOGGING = new QLineEdit();
 368.247 +	lineLOGGING->setText(QString("%1").arg(conf.getLogOption()));
 368.248 +
 368.249 +	
 368.250 +	lineUSETTL = new QLineEdit();
 368.251 +	lineUSETTL->setText(QString("%1").arg(conf.getUseTTL()));
 368.252 +
 368.253 +	lineTTL = new QLineEdit();
 368.254 +	lineTTL->setText(QString("%1").arg(conf.getTTL()));
 368.255 +
 368.256 +	lineACKS = new QLineEdit();
 368.257 +	lineACKS->setText(QString("%1").arg(conf.getUseACKS()));
 368.258 +
 368.259 +}
 368.260 +
   369.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   369.2 +++ b/x86/x86/configWidget.h	Thu Jun 26 17:39:40 2008 +0100
   369.3 @@ -0,0 +1,94 @@
   369.4 +#ifndef CONFIGWIDGET_H
   369.5 +#define CONFIGWIDGET_H
   369.6 +#include <QtGui>
   369.7 +#include <QtNetwork>
   369.8 +
   369.9 +class ConfigWidget : public QWidget
  369.10 +{
  369.11 +
  369.12 +	Q_OBJECT
  369.13 +
  369.14 +private:
  369.15 +	QLineEdit *label;
  369.16 +	
  369.17 +public:
  369.18 +	QTextBrowser *readText;
  369.19 +	QFileDialog *file;
  369.20 +	ConfigWidget(QWidget *parent = 0);
  369.21 +	QDir dir;
  369.22 +	
  369.23 +	//Configuration variables
  369.24 +	int NODEID;
  369.25 +	QString NODENAME;
  369.26 +	QHostAddress NODEIP;
  369.27 +	QHostAddress NODEIP2;
  369.28 +	QHostAddress NODEBROADCAST;
  369.29 +	int BROADCAST;
  369.30 +	int AGINGTIMER;
  369.31 +	float PENCOUNTER;
  369.32 +	float BETA;
  369.33 +	float GAMMA;
  369.34 +	int HELLO;
  369.35 +	int ALIVE;
  369.36 +	int HELLOTIMER;
  369.37 +	int INITIATORTIMER;
  369.38 +	int LISTENERTIMER;
  369.39 +	QHostAddress DTNHOSTNAME;
  369.40 +	int DNTTIMER;
  369.41 +	int STORAGESIZE;
  369.42 +	int MEMORYSIZE;
  369.43 +	int ROUTING;
  369.44 +	int QUEUE;
  369.45 +	int CONTINIUSUPDATE;
  369.46 +	QString STORAGEPATH;
  369.47 +	QString LOGPATH;
  369.48 +	QString MSGPATH;
  369.49 +	int AGEFILENODES;
  369.50 +	int USEFILENODES;
  369.51 +	int WRITETOFILETIMER;
  369.52 +	int USEFILEBUNDLES;
  369.53 +	int LOGGING;
  369.54 +
  369.55 +
  369.56 +	QLineEdit * lineNODEID;
  369.57 +	QLineEdit * lineNODENAME;
  369.58 +	QLineEdit * lineNODEIP;
  369.59 +	QLineEdit * lineNODEIP2;
  369.60 +	QLineEdit * lineNODEBROADCAST;
  369.61 +	QLineEdit * lineBROADCAST;
  369.62 +	QLineEdit * lineAGINGTIMER;
  369.63 +	QLineEdit * linePENCOUNTER;
  369.64 +	QLineEdit * lineBETA;
  369.65 +	QLineEdit * lineGAMMA;
  369.66 +	QLineEdit * lineHELLO;
  369.67 +	QLineEdit * lineALIVE;
  369.68 +	QLineEdit * lineHELLOTIMER;
  369.69 +	QLineEdit * lineINITIATORTIMER;
  369.70 +	QLineEdit * lineLISTENERTIMER;
  369.71 +	QLineEdit * lineDTNHOSTNAME;
  369.72 +	QLineEdit * lineDNTTIMER;
  369.73 +	QLineEdit * lineSTORAGESIZE;
  369.74 +	QLineEdit * lineMEMORYSIZE;
  369.75 +	QLineEdit * lineROUTING;
  369.76 +	QLineEdit * lineQUEUE;
  369.77 +	QLineEdit * lineCONTINIUSUPDATE;
  369.78 +	QLineEdit * lineSTORAGEPATH;
  369.79 +	QLineEdit * lineLOGPATH;
  369.80 +	QLineEdit * lineMSGPATH;
  369.81 +	QLineEdit * lineAGEFILENODES;
  369.82 +	QLineEdit * lineUSEFILENODES;
  369.83 +	QLineEdit * lineWRITETOFILETIMER;
  369.84 +	QLineEdit * lineUSEFILEBUNDLES;
  369.85 +	QLineEdit * lineLOGGING;
  369.86 +	QLineEdit * lineUSETTL;
  369.87 +	QLineEdit * lineTTL;
  369.88 +	QLineEdit * lineACKS;
  369.89 +
  369.90 +
  369.91 +public slots:
  369.92 +	void loadConfiguration();
  369.93 +};
  369.94 +
  369.95 +#endif
  369.96 +
  369.97 +
   370.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   370.2 +++ b/x86/x86/connection.cpp	Thu Jun 26 17:39:40 2008 +0100
   370.3 @@ -0,0 +1,709 @@
   370.4 +#include <QtCore>
   370.5 +#include <connection.h>
   370.6 +#include <tlv.h>
   370.7 +#include <messageFile.h>
   370.8 +#include <dataPacket.h>
   370.9 +#include <readFile.h>
  370.10 +
  370.11 +#define NOW 100
  370.12 +
  370.13 +//#define HELLO_TIMER 60000
  370.14 +//#define INITIATOR_TIMER 60000
  370.15 +//#define LISTENER_TIMER 60000
  370.16 +//#define HELLOT 10000
  370.17 +//#define BROADCAST 1000
  370.18 +
  370.19 +//Connections states for GUI
  370.20 +#define STATE_SYN 1
  370.21 +#define STATE_SYNACK 2
  370.22 +#define STATE_ACK 3
  370.23 +#define STATE_DICT 4
  370.24 +#define STATE_RIB 5
  370.25 +#define STATE_BOFF 6
  370.26 +#define STATE_BREQ 7
  370.27 +#define STATE_BUNDLE 8
  370.28 +#define STATE_ERROR 9
  370.29 +
  370.30 +//Connection states
  370.31 +#define WAIT_NB 0
  370.32 +#define HELLO 1
  370.33 +#define INFO_EXCH 2
  370.34 +#define WAIT_INFO 2
  370.35 +
  370.36 +
  370.37 +//Hello procedure states
  370.38 +#define SENDSYN 1
  370.39 +#define WAITSYNACK 2
  370.40 +#define WAITACK 4
  370.41 +#define ESTABLISHED 3
  370.42 +#define MASTER 4
  370.43 +#define SLAVE 5
  370.44 +
  370.45 +//Initiator states
  370.46 +#define SENDDICTIONARY 1
  370.47 +#define SENDRIB 2
  370.48 +#define SENDBOFFER 4
  370.49 +#define WAITBREQ 5
  370.50 +#define TIMEOUT 16
  370.51 +#define SENDBUNDLE 7
  370.52 +#define WAITFORBREQUEST 8
  370.53 +#define RESETLINK 19
  370.54 +#define IDLESTATE 110
  370.55 +
  370.56 +//Listener states
  370.57 +#define WAITFORDICTIONARY 1
  370.58 +#define WAITFORRIB 2
  370.59 +#define WAITFORBOFFER 3
  370.60 +#define SENDBREQUEST 4
  370.61 +#define WAITFORBUNDLES 5
  370.62 +
  370.63 +
  370.64 +
  370.65 +Connection::Connection(int connectId,int nodeId,QString nodeName,NodeManager* nodeManager,BundleManager* bundleManager,QObject *parent)
  370.66 +
  370.67 +{
  370.68 +	ReadFile init;
  370.69 +	HELLO_TIMER=init.getHelloTimer();
  370.70 +	INITIATOR_TIMER=init.getInitiatorTimer();
  370.71 +	LISTENER_TIMER=init.getListenerTimer();
  370.72 +	HELLOT=init.getHello();
  370.73 +	BROADCAST=init.getBroadcastTimer();
  370.74 +	continiusUpdate=init.getContiniusUpdate();
  370.75 +	update=0;
  370.76 +	updateRIB=0;
  370.77 +	encounterNodeId=0;
  370.78 +	//State variables
  370.79 +	connectionState=HELLO;
  370.80 +	helloState=SENDSYN;
  370.81 +	initiatorState=IDLESTATE;
  370.82 +	listenerState=IDLESTATE;
  370.83 +	//Define our node manager
  370.84 +	connectionNodeManager=nodeManager;
  370.85 +	//Define our bundle manager
  370.86 +	connectionBundleManager=bundleManager;
  370.87 +	//Set up unique connection ID
  370.88 +//	connectionId=rand();
  370.89 +//	connectionId=connectionId%1000;
  370.90 +	connectionId=connectId;
  370.91 +	//Set up connectionNodeName
  370.92 +	connectionNodeName=nodeName;
  370.93 +	//Set up connectionNodeName
  370.94 +	connectionNodeId=nodeId;
  370.95 +	//Create and connect Hello Timer
  370.96 +    helloTimer = new QTimer(this);
  370.97 +    connect(helloTimer, SIGNAL(timeout()), this, SLOT(helloProcedure()));
  370.98 +    helloTimer->start(rand()%HELLO);
  370.99 +
 370.100 +	//Create and connect Initiator Timer
 370.101 +    initiatorTimer = new QTimer(this);
 370.102 +    connect(initiatorTimer, SIGNAL(timeout()), this, SLOT(initiatorProcedure()));
 370.103 +    //initiatorTimer->start(INITIATOR_TIMER);
 370.104 +
 370.105 +	//Create and connect Listener Timer
 370.106 +    listenerTimer = new QTimer(this);
 370.107 +    connect(listenerTimer, SIGNAL(timeout()), this, SLOT(listenerProcedure()));
 370.108 +    //listenerTimer->start(LISTENER_TIMER);
 370.109 +
 370.110 +
 370.111 +
 370.112 +
 370.113 +	//Create and connect TLV translator
 370.114 +	TLVTranslator = new TLV;
 370.115 +
 370.116 +	//Main external datastreams
 370.117 +	connect(TLVTranslator,SIGNAL(sendDatagram(QByteArray)),this,SLOT(forwardSlotDatagram(QByteArray)));
 370.118 +	connect(this,SIGNAL(forwardSignalDatagram(QByteArray)),TLVTranslator,SLOT(receiveDatagram(QByteArray)));
 370.119 +
 370.120 +	//Hello procedure connections
 370.121 +    connect(this, SIGNAL(sendHello(Hello)),TLVTranslator,SLOT(receiveHello(Hello)));
 370.122 +    connect(TLVTranslator, SIGNAL(sendHello(Hello)),this,SLOT(receiveHello(Hello)));
 370.123 +
 370.124 +	//Initiators procedure connections
 370.125 +    connect(this, SIGNAL(sendDictionary(QList<Node>)),TLVTranslator,SLOT(createDictionary(QList<Node>)));
 370.126 +    connect(this, SIGNAL(sendRIB(QList<Node>)),TLVTranslator,SLOT(createRIB(QList<Node>)));
 370.127 +    connect(this, SIGNAL(sendBundleOffer(QList<Bundle>)),TLVTranslator,SLOT(createBundleOffer(QList<Bundle>)));
 370.128 +    connect(TLVTranslator, SIGNAL(sendBundleRequest(QList<Bundle>)),this,SLOT(receiveBundleRequest(QList<Bundle>)));
 370.129 +	connect(this, SIGNAL(sendBundles(QList<Bundle>)),TLVTranslator,SLOT(createBundleData(QList<Bundle>)));
 370.130 +
 370.131 +
 370.132 +	//Listener procedure connections
 370.133 +    connect(TLVTranslator, SIGNAL(sendDictionary(QList<Node>)),this,SLOT(receiveDictionary(QList<Node>)));
 370.134 +    connect(TLVTranslator, SIGNAL(sendRIB(QList<Node>)),this,SLOT(receiveRIB(QList<Node>)));
 370.135 +    connect(TLVTranslator, SIGNAL(sendBundleOffer(QList<Bundle>)),this,SLOT(receiveBundleOffer(QList<Bundle>)));
 370.136 +    connect(this, SIGNAL(sendBundleRequest(QList<Bundle>)),TLVTranslator,SLOT(createBundleRequest(QList<Bundle>)));
 370.137 +    connect(TLVTranslator, SIGNAL(sendBundleData(QList<Bundle>)),this,SLOT(receiveBundles(QList<Bundle>)));
 370.138 +	//GUI state
 370.139 +	emit newConnectionStatus(STATE_SYN);
 370.140 +
 370.141 +}
 370.142 +
 370.143 +
 370.144 +Connection::~Connection(void)
 370.145 +{
 370.146 +	if(helloTimer!=NULL)
 370.147 +	{
 370.148 +		helloTimer->stop();
 370.149 +		delete helloTimer;
 370.150 +	}
 370.151 +		if(initiatorTimer!=NULL)
 370.152 +	{
 370.153 +		initiatorTimer->stop();
 370.154 +		delete initiatorTimer;
 370.155 +	}
 370.156 +			if(listenerTimer!=NULL)
 370.157 +	{
 370.158 +		listenerTimer->stop();
 370.159 +		delete listenerTimer;
 370.160 +	}	
 370.161 +	if(TLVTranslator!=NULL)
 370.162 +	{
 370.163 +		delete TLVTranslator; 
 370.164 +	} 
 370.165 +
 370.166 +}
 370.167 +
 370.168 +
 370.169 +void Connection::helloProcedure()
 370.170 +{
 370.171 +	helloTimer->stop();
 370.172 +	//Prepare new Hello Object
 370.173 +	Hello newHello;
 370.174 +	switch(helloState)
 370.175 +	{
 370.176 +		case SENDSYN:	//log->addLog(connectionId,(QString)"Hello Procedure:SENDSYN");
 370.177 +						newHello.setFunction(SYN);
 370.178 +						newHello.setTimer(HELLO_TIMER);
 370.179 +						newHello.setSenderName(connectionNodeName);
 370.180 +						newHello.senderId=connectionNodeId;
 370.181 +						newHello.senderType=0;
 370.182 +						helloState=WAITSYNACK;
 370.183 +						emit sendHello(newHello);
 370.184 +						//GUI state
 370.185 +						emit newConnectionStatus(STATE_SYNACK);
 370.186 +			
 370.187 +		break;			
 370.188 +		default	:		//log->addLog(connectionId,(QString)"Hello Procedure:Default");
 370.189 +						helloState=SENDSYN;
 370.190 +						connectionState=HELLO;
 370.191 +						initiatorState=IDLESTATE;
 370.192 +						listenerState=IDLESTATE;
 370.193 +						listenerTimer->stop();
 370.194 +						initiatorTimer->stop();	
 370.195 +						//GUI state
 370.196 +						emit newConnectionStatus(STATE_ERROR);
 370.197 +	
 370.198 +		break;
 370.199 +		}	
 370.200 +		helloTimer->start(HELLO_TIMER);
 370.201 +}
 370.202 +
 370.203 +
 370.204 +
 370.205 +void Connection::receiveHello(Hello receivedHello)
 370.206 +{
 370.207 +	int helloType=receivedHello.getFunction();
 370.208 +	helloTimer->stop();
 370.209 +	
 370.210 +	//Prepare new Hello object
 370.211 +	Hello newHello;
 370.212 +	
 370.213 +	switch(helloType)
 370.214 +	{
 370.215 +	case SYNACK:	//log->addLog(connectionId,(QString)"Receive Hello:SYNACK");
 370.216 +					//Resolving a ID form encountered node
 370.217 +					encounterNodeId=receivedHello.senderId;
 370.218 +					encounterNodeName=receivedHello.senderName;
 370.219 +					encounterNodeType=receivedHello.senderType;
 370.220 +					if(update==0)
 370.221 +					{
 370.222 +						connectionNodeManager->encounterNode(encounterNodeId,encounterNodeType,encounterNodeName);
 370.223 +						if(continiusUpdate==0)
 370.224 +							update=1;
 370.225 +					}
 370.226 +
 370.227 +					//Setting our own ID
 370.228 +					newHello.setFunction(ACK);
 370.229 +					newHello.setTimer(HELLO_TIMER);
 370.230 +					newHello.setSenderName(connectionNodeName);
 370.231 +					newHello.senderId=connectionNodeId;
 370.232 +					newHello.senderType=0;
 370.233 +					emit sendHello(newHello);
 370.234 +					helloState=SLAVE;
 370.235 +					//Invoke Initiator and Listener
 370.236 +					helloTimer->stop();
 370.237 +					initiatorState=SENDDICTIONARY;
 370.238 +					listenerState=WAITFORDICTIONARY;
 370.239 +					initiatorTimer->start(NOW);
 370.240 +					listenerTimer->start(LISTENER_TIMER);
 370.241 +					///initiatorProcedure();
 370.242 +					//////////////////////////////
 370.243 +					//GUI state
 370.244 +					emit newConnectionStatus(STATE_DICT);
 370.245 +					
 370.246 +	break;
 370.247 +	case SYN:		//log->addLog(connectionId,(QString)"Receive Hello:SYN");
 370.248 +					newHello.setFunction(SYNACK);
 370.249 +					newHello.setTimer(HELLO_TIMER);
 370.250 +					newHello.setSenderName(connectionNodeName);
 370.251 +					newHello.senderId=connectionNodeId;
 370.252 +					newHello.senderType=0;
 370.253 +					helloState=WAITACK;helloTimer->start(HELLO_TIMER);
 370.254 +					emit sendHello(newHello);
 370.255 +					//GUI state
 370.256 +					emit newConnectionStatus(STATE_SYNACK);
 370.257 +
 370.258 +	break;
 370.259 +	case ACK:		//log->addLog(connectionId,(QString)"Receive Hello:ACK");
 370.260 +					//Resolving a ID form encountered node
 370.261 +					encounterNodeId=receivedHello.senderId;
 370.262 +					encounterNodeName=receivedHello.senderName;
 370.263 +					encounterNodeType=receivedHello.senderType;
 370.264 +					if(update==0)
 370.265 +					{
 370.266 +						connectionNodeManager->encounterNode(encounterNodeId,encounterNodeType,encounterNodeName);
 370.267 +						if(continiusUpdate==0)
 370.268 +							update=1;
 370.269 +					}
 370.270 +					helloState=MASTER;
 370.271 +					//Invoke Initiator and Listener
 370.272 +					helloTimer->stop();
 370.273 +					initiatorState=SENDDICTIONARY;
 370.274 +					listenerState=WAITFORDICTIONARY;
 370.275 +					initiatorTimer->start(NOW);
 370.276 +					listenerTimer->start(LISTENER_TIMER);
 370.277 +					//GUI state
 370.278 +					emit newConnectionStatus(STATE_DICT);
 370.279 +	break;
 370.280 +	case RSTACK:	//log->addLog(connectionId,(QString)"Receive Hello:RSTACK");
 370.281 +					helloState=SENDSYN;
 370.282 +					//GUI state
 370.283 +					emit newConnectionStatus(STATE_ERROR);
 370.284 +					connectionState=HELLO;helloTimer->start(HELLO_TIMER);
 370.285 +	break;
 370.286 +	default:		//log->addLog(connectionId,(QString)"Receive Hello:Default");
 370.287 +					helloState=SENDSYN;
 370.288 +					connectionState=HELLO;helloTimer->start(HELLO_TIMER);
 370.289 +					//GUI state
 370.290 +					emit newConnectionStatus(STATE_ERROR);
 370.291 +	break;
 370.292 +	}
 370.293 +	
 370.294 +
 370.295 +}
 370.296 +
 370.297 +void Connection::listenerProcedure()
 370.298 +{
 370.299 +	listenerTimer->stop();
 370.300 +	switch(initiatorState)
 370.301 +		{
 370.302 +		case WAITFORDICTIONARY://log->addLog(connectionId,(QString)"Listener:DICTIONARY timeout...");
 370.303 +							//we reset the link
 370.304 +							initiatorState=IDLESTATE;
 370.305 +							listenerState=IDLESTATE;
 370.306 +							connectionState=HELLO;
 370.307 +							helloState=SENDSYN;
 370.308 +							listenerTimer->stop();
 370.309 +							initiatorTimer->stop();
 370.310 +							helloTimer->start(HELLO_TIMER);
 370.311 +							//GUI state
 370.312 +							emit newConnectionStatus(STATE_ERROR);
 370.313 +
 370.314 +							
 370.315 +			
 370.316 +		break;			
 370.317 +		case WAITFORRIB:	//log->addLog(connectionId,(QString)"Listener:RIB timeout...");
 370.318 +							//we reset the link
 370.319 +							initiatorState=IDLESTATE;
 370.320 +							listenerState=IDLESTATE;
 370.321 +							connectionState=HELLO;
 370.322 +							helloState=SENDSYN;
 370.323 +							listenerTimer->stop();
 370.324 +							initiatorTimer->stop();
 370.325 +							helloTimer->start(HELLO_TIMER);
 370.326 +							//GUI state
 370.327 +							emit newConnectionStatus(STATE_ERROR);
 370.328 +			
 370.329 +		break;
 370.330 +		case WAITFORBOFFER:	//log->addLog(connectionId,(QString)"Listener:BOFFER timeout...");
 370.331 +							//we reset the link
 370.332 +							initiatorState=IDLESTATE;
 370.333 +							listenerState=IDLESTATE;
 370.334 +							connectionState=HELLO;
 370.335 +							helloState=SENDSYN;
 370.336 +							listenerTimer->stop();
 370.337 +							initiatorTimer->stop();
 370.338 +							helloTimer->start(HELLO_TIMER);
 370.339 +							//GUI state
 370.340 +							emit newConnectionStatus(STATE_ERROR);
 370.341 +
 370.342 +			
 370.343 +		break;
 370.344 +		case WAITFORBREQUEST://log->addLog(connectionId,(QString)"Listener:BREQ Timeout...");
 370.345 +							//we reset the link
 370.346 +							initiatorState=IDLESTATE;
 370.347 +							listenerState=IDLESTATE;
 370.348 +							connectionState=HELLO;
 370.349 +							helloState=SENDSYN;
 370.350 +							listenerTimer->stop();
 370.351 +							initiatorTimer->stop();
 370.352 +							helloTimer->start(HELLO_TIMER);
 370.353 +							//GUI state
 370.354 +							emit newConnectionStatus(STATE_ERROR);
 370.355 +
 370.356 +			
 370.357 +		break;
 370.358 +		case WAITFORBUNDLES://log->addLog(connectionId,(QString)"Listener:BUNDLES Timeout...");
 370.359 +							//we reset the link
 370.360 +							initiatorState=IDLESTATE;
 370.361 +							listenerState=IDLESTATE;
 370.362 +							connectionState=HELLO;
 370.363 +							helloState=SENDSYN;
 370.364 +							listenerTimer->stop();
 370.365 +							initiatorTimer->stop();
 370.366 +							helloTimer->start(HELLO_TIMER);
 370.367 +							listenerState=RESETLINK;
 370.368 +							//GUI state
 370.369 +							emit newConnectionStatus(STATE_ERROR);
 370.370 +
 370.371 +			
 370.372 +		break;
 370.373 +		case IDLESTATE:		//log->addLog(connectionId,(QString)"Listener:Idle state...");
 370.374 +							//we reset the link
 370.375 +							initiatorState=IDLESTATE;
 370.376 +							listenerState=IDLESTATE;
 370.377 +							connectionState=HELLO;
 370.378 +							helloState=SENDSYN;
 370.379 +							listenerTimer->stop();
 370.380 +							initiatorTimer->stop();
 370.381 +							helloTimer->start(HELLO_TIMER);
 370.382 +							//GUI state
 370.383 +							emit newConnectionStatus(STATE_ERROR);
 370.384 +														
 370.385 +							
 370.386 +		break;
 370.387 +		case RESETLINK:		//log->addLog(connectionId,(QString)"Listener:Link problem...");
 370.388 +							//we reset the link
 370.389 +							initiatorState=IDLESTATE;
 370.390 +							listenerState=IDLESTATE;
 370.391 +							connectionState=HELLO;
 370.392 +							helloState=SENDSYN;
 370.393 +							listenerTimer->stop();
 370.394 +							initiatorTimer->stop();
 370.395 +							helloTimer->start(HELLO_TIMER);
 370.396 +							//GUI state
 370.397 +							emit newConnectionStatus(STATE_ERROR);
 370.398 +			
 370.399 +		break;
 370.400 +		default	://log->addLog(connectionId,(QString)"Hm Listener Timeout default...");		
 370.401 +		break;
 370.402 +		}	
 370.403 +}
 370.404 +
 370.405 +
 370.406 +void Connection::initiatorProcedure()
 370.407 +{
 370.408 +	initiatorTimer->stop();
 370.409 +	QList<Node> nodeList;
 370.410 +	QList<Bundle> bundleList;
 370.411 +	switch(initiatorState)
 370.412 +		{
 370.413 +		case SENDDICTIONARY://log->addLog(connectionId,(QString)"Initiator:SENDDICTIONARY-RIB-BUNDLEOFFER");
 370.414 +							nodeList = connectionNodeManager->getNodeList();
 370.415 +							initiatorState=SENDRIB;
 370.416 +							emit sendDictionary(nodeList);
 370.417 +							nodeList = connectionNodeManager->getRIBNodeList();//We have to use only nodes with RIB
 370.418 +							initiatorState=SENDBOFFER;
 370.419 +							emit sendRIB(nodeList);
 370.420 +							bundleList = connectionBundleManager->getBundleOffer(connectionNodeManager->getNodeList(),lastReceivedRIB,encounterNodeId);
 370.421 +							emit sendBundleOffer(bundleList);
 370.422 +							initiatorState=WAITBREQ;
 370.423 +							initiatorTimer->start(INITIATOR_TIMER);
 370.424 +							//GUI state
 370.425 +							emit newConnectionStatus(STATE_BREQ);
 370.426 +		
 370.427 +		break;
 370.428 +		case WAITFORBREQUEST://log->addLog(connectionId,(QString)"Initiator:BREQ Timeout");
 370.429 +							//we reset the link
 370.430 +							initiatorState=IDLESTATE;
 370.431 +							listenerState=IDLESTATE;
 370.432 +							connectionState=HELLO;
 370.433 +							helloState=SENDSYN;
 370.434 +							listenerTimer->stop();
 370.435 +							initiatorTimer->stop();
 370.436 +							helloTimer->start(HELLO_TIMER);
 370.437 +							//GUI state
 370.438 +							emit newConnectionStatus(STATE_ERROR);
 370.439 +			
 370.440 +		break;
 370.441 +		case IDLESTATE:		//log->addLog(connectionId,(QString)"Initiator:Idle state...");
 370.442 +							//we reset the link
 370.443 +							initiatorState=IDLESTATE;
 370.444 +							listenerState=IDLESTATE;
 370.445 +							connectionState=HELLO;
 370.446 +							helloState=SENDSYN;
 370.447 +							listenerTimer->stop();
 370.448 +							initiatorTimer->stop();
 370.449 +							helloTimer->start(HELLO_TIMER);
 370.450 +							//GUI state
 370.451 +							emit newConnectionStatus(STATE_ERROR);
 370.452 +
 370.453 +			
 370.454 +		break;
 370.455 +		case RESETLINK:		//log->addLog(connectionId,(QString)"Initiator:Link problem...");
 370.456 +							//we reset the link
 370.457 +							initiatorState=IDLESTATE;
 370.458 +							listenerState=IDLESTATE;
 370.459 +							connectionState=HELLO;
 370.460 +							helloState=SENDSYN;
 370.461 +							listenerTimer->stop();
 370.462 +							initiatorTimer->stop();
 370.463 +							helloTimer->start(HELLO_TIMER);
 370.464 +							//GUI state
 370.465 +							emit newConnectionStatus(STATE_ERROR);
 370.466 +			
 370.467 +		break;
 370.468 +		default	://log->addLog(connectionId,(QString)"Hm default timeout initiator...");		
 370.469 +		break;
 370.470 +		}	
 370.471 + }
 370.472 +
 370.473 +
 370.474 +void Connection::receiveBundleOffer(QList<Bundle> receivedList) //LISTENER
 370.475 +{
 370.476 +	listenerTimer->stop();
 370.477 +	bundleRequestList=connectionBundleManager->prepareBundelRequest(receivedList);
 370.478 +	//log->addLog(connectionId,(QString)"Listener:Received Bundle Offer");
 370.479 +//	we send only one bundle request
 370.480 +	if(bundleRequestList.size()>0)
 370.481 +	{
 370.482 +		//log->addLog(connectionId,(QString)"Listener:Sending Full bundle request...");
 370.483 +		QList<Bundle> dummyList;
 370.484 +		dummyList.append(bundleRequestList.first());
 370.485 +		bundleRequestList.removeFirst();
 370.486 +		listenerState=WAITFORBUNDLES;
 370.487 +		listenerTimer->start(LISTENER_TIMER);
 370.488 +		emit sendBundleRequest(dummyList);
 370.489 +		//GUI state
 370.490 +		emit newConnectionStatus(STATE_BUNDLE);
 370.491 +
 370.492 +	}
 370.493 +	else 
 370.494 +	{
 370.495 +		//log->addLog(connectionId,(QString)"Listener:Sending Empty bundle request...");
 370.496 +		if(initiatorState==IDLESTATE)
 370.497 +		{	
 370.498 +			//we reset the link
 370.499 +			initiatorState=IDLESTATE;
 370.500 +			listenerState=IDLESTATE;
 370.501 +			listenerTimer->stop();
 370.502 +			initiatorTimer->stop();
 370.503 +
 370.504 +			if(helloState==MASTER)
 370.505 +			{
 370.506 +				helloState=SENDSYN;
 370.507 +				helloTimer->start(NOW);
 370.508 +				//log->addLog(connectionId,(QString)"Listener(receiveBOffer):We can restart connection...(MASTER)");
 370.509 +				//GUI state
 370.510 +				emit newConnectionStatus(STATE_SYN);
 370.511 +
 370.512 +			}
 370.513 +			else
 370.514 +			{
 370.515 +				helloState=SENDSYN;
 370.516 +				helloTimer->start(HELLO_TIMER);
 370.517 +				//GUI state
 370.518 +				emit newConnectionStatus(STATE_SYN);
 370.519 +
 370.520 +				//log->addLog(connectionId,(QString)"Listener(receiveBOffer):We can not restart connection(SLAVE)");
 370.521 +
 370.522 +			}
 370.523 +		}
 370.524 +		else
 370.525 +		{
 370.526 +			//log->addLog(connectionId,(QString)"Listener(receiveBOffer):But we can not restart connection...");
 370.527 +			listenerState=IDLESTATE;
 370.528 +			listenerTimer->stop();
 370.529 +		}
 370.530 +		emit sendBundleRequest(bundleRequestList);
 370.531 +		
 370.532 +	}
 370.533 +
 370.534 +}
 370.535 +
 370.536 +void Connection::receiveBundles(QList<Bundle> receivedList) //LISTENER
 370.537 +{
 370.538 +	//log->addLog(connectionId,(QString)"Listener:Received Bundles...");
 370.539 +	listenerTimer->stop();
 370.540 +	connectionBundleManager->addBundleList(receivedList);
 370.541 +//	we send only one bundle request
 370.542 +	if(bundleRequestList.size()>0)
 370.543 +	{
 370.544 +		//log->addLog(connectionId,(QString)"Listener:Requesting Bundles...");
 370.545 +		QList<Bundle> dummyList;
 370.546 +		for(int i=0; i<receivedList.size(); i++)
 370.547 +		{
 370.548 +			Bundle b = receivedList.at(i);
 370.549 +			b.setAck();
 370.550 +			//should we reset the ack-bit afterwards?
 370.551 +			dummyList.prepend(b);
 370.552 +			//do some logging here
 370.553 +		}
 370.554 +		dummyList.append(bundleRequestList.first());
 370.555 +		bundleRequestList.removeFirst();
 370.556 +		listenerState=WAITFORBUNDLES;
 370.557 +		listenerTimer->start(LISTENER_TIMER);
 370.558 +		emit sendBundleRequest(dummyList);
 370.559 +		//GUI state
 370.560 +		emit newConnectionStatus(STATE_BUNDLE);
 370.561 +
 370.562 +	}
 370.563 +	else //we finish comunication by sending empty bundle request
 370.564 +	{
 370.565 +		//log->addLog(connectionId,(QString)"Listener:No more needed Bundles...");
 370.566 +		if(initiatorState==IDLESTATE)
 370.567 +		{	
 370.568 +			//we reset the link
 370.569 +			initiatorState=IDLESTATE;
 370.570 +			listenerState=IDLESTATE;
 370.571 +			listenerTimer->stop();
 370.572 +			initiatorTimer->stop();
 370.573 +
 370.574 +			if(helloState==MASTER)
 370.575 +			{
 370.576 +				helloState=SENDSYN;
 370.577 +				helloTimer->start(HELLOT);
 370.578 +				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can restart connection...(MASTER)");
 370.579 +				//GUI state
 370.580 +				emit newConnectionStatus(STATE_SYN);
 370.581 +
 370.582 +			}
 370.583 +			else
 370.584 +			{
 370.585 +				//helloState=SENDSYN;
 370.586 +				//helloTimer->start(HELLO_TIMER);
 370.587 +				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can not restart connection(SLAVE)");
 370.588 +
 370.589 +			}
 370.590 +		}
 370.591 +		else
 370.592 +		{
 370.593 +			//log->addLog(connectionId,(QString)"Listener(receiveBundles):But we can not restart connection...");
 370.594 +			listenerState=IDLESTATE;
 370.595 +			listenerTimer->stop();
 370.596 +		
 370.597 +		}
 370.598 +		//append the received bundles (as acks) to the next request.
 370.599 +		//TODO: Should this be moved to the bundle manager???
 370.600 +		for(int i=0; i<receivedList.size(); i++)
 370.601 +		{
 370.602 +			Bundle b = receivedList.at(i);
 370.603 +			b.setAck();
 370.604 +			//should we reset the ack-bit afterwards?
 370.605 +			bundleRequestList.prepend(b);
 370.606 +			//do some logging here
 370.607 +		}
 370.608 +		emit sendBundleRequest(bundleRequestList);
 370.609 +		
 370.610 +	}
 370.611 +		
 370.612 +}
 370.613 +
 370.614 +void Connection::receiveBundleRequest(QList<Bundle> receivedList) //INITIATOR
 370.615 +{
 370.616 +	initiatorTimer->stop();
 370.617 +	QList<Bundle> bundleList;
 370.618 +	if(receivedList.size()>0)
 370.619 +	{
 370.620 +		bundleList=connectionBundleManager->prepareBundels(receivedList, encounterNodeId);
 370.621 +		initiatorState=WAITBREQ;
 370.622 +		//log->addLog(connectionId,(QString)"Initiator:Sending bundles");
 370.623 +		initiatorTimer->start(INITIATOR_TIMER);
 370.624 +		emit sendBundles(bundleList);
 370.625 +		//GUI state
 370.626 +		emit newConnectionStatus(STATE_BREQ);
 370.627 +
 370.628 +	}
 370.629 +	else
 370.630 +	{
 370.631 +		//log->addLog(connectionId,(QString)"Initiator:No more requested bundles");
 370.632 +		if(listenerState==IDLESTATE)
 370.633 +		{	
 370.634 +			//we reset the link
 370.635 +			if(helloState==MASTER)
 370.636 +			{
 370.637 +				helloState=SENDSYN;
 370.638 +				helloTimer->start(HELLOT);
 370.639 +				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can restart connection...");
 370.640 +				//GUI state
 370.641 +				emit newConnectionStatus(STATE_SYN);
 370.642 +
 370.643 +			}
 370.644 +			else
 370.645 +			{
 370.646 +				helloState=SENDSYN;
 370.647 +				helloTimer->start(HELLO_TIMER);
 370.648 +				//log->addLog(connectionId,(QString)"Listener(receiveBundles):We can not restart connection(SLAVE)");
 370.649 +				//GUI state
 370.650 +				emit newConnectionStatus(STATE_SYN);
 370.651 +
 370.652 +			}
 370.653 +		}
 370.654 +		else
 370.655 +		{
 370.656 +			//log->addLog(connectionId,(QString)"Initiator:But we can not restart connection...");
 370.657 +			initiatorState=IDLESTATE;
 370.658 +			initiatorTimer->stop();
 370.659 +		}
 370.660 +	}
 370.661 +	
 370.662 +}
 370.663 +
 370.664 +
 370.665 +void Connection::receiveDictionary(QList<Node> receivedList)
 370.666 +{
 370.667 +	listenerTimer->stop();
 370.668 +	connectionNodeManager->addDictionary(connectionNodeId,receivedList);
 370.669 +	listenerState=WAITFORRIB;
 370.670 +	//log->addLog(connectionId,(QString)"Listener:Received dictionary");
 370.671 +	listenerTimer->start(LISTENER_TIMER);
 370.672 +	//GUI state
 370.673 +	emit newConnectionStatus(STATE_RIB);
 370.674 +
 370.675 +}
 370.676 +
 370.677 +void Connection::receiveRIB(QList<Node> receivedList)
 370.678 +{
 370.679 +	listenerTimer->stop();
 370.680 +	if(updateRIB==0)
 370.681 +	{		
 370.682 +		connectionNodeManager->addRIB(receivedList,encounterNodeId);
 370.683 +		if(continiusUpdate==0)
 370.684 +			updateRIB=1;
 370.685 +	}		
 370.686 +	listenerState=WAITFORBOFFER;
 370.687 +	//Needed for Routing
 370.688 +	lastReceivedRIB=receivedList;
 370.689 +	//log->addLog(connectionId,(QString)"Listener:Received RIB");
 370.690 +	listenerTimer->start(LISTENER_TIMER);
 370.691 +	//GUI state
 370.692 +	emit newConnectionStatus(STATE_BOFF);
 370.693 +
 370.694 +}
 370.695 +
 370.696 +
 370.697 +
 370.698 +void Connection::receiveDatagram(DataPacket dataPacket)
 370.699 +{
 370.700 +	////log->addLog(connectionId,(QString)"Received datagram...");
 370.701 +	emit forwardSignalDatagram(dataPacket.data);
 370.702 +}
 370.703 +
 370.704 +
 370.705 +void Connection::forwardSlotDatagram(QByteArray datagram)
 370.706 +{
 370.707 +	DataPacket dataPacket;
 370.708 +	////log->addLog(connectionId,(QString)"Sended datagram...");
 370.709 +	dataPacket.data = datagram;
 370.710 +	dataPacket.id = connectionId;
 370.711 +	emit sendDataPacket(dataPacket);
 370.712 +}
   371.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   371.2 +++ b/x86/x86/connection.h	Thu Jun 26 17:39:40 2008 +0100
   371.3 @@ -0,0 +1,228 @@
   371.4 +#ifndef CONNECTION_H
   371.5 +#define CONNECTION_H
   371.6 +#include <QtCore>
   371.7 +#include <hello.h>
   371.8 +#include <tlv.h>
   371.9 +#include <nodeManager.h>
  371.10 +#include <bundleManager.h>
  371.11 +#include <dataPacket.h>
  371.12 +
  371.13 +
  371.14 +/*! \brief This class is instantiated for each connection between two nodes. 
  371.15 + * It contains the PRoPHET state machine.
  371.16 + *
  371.17 + * <PRE>
  371.18 + * Connection states
  371.19 + * WAIT_NB   - Start state, node waiting for a neighbour to connect to.
  371.20 + * HELLO     - Performs a three-way handshake to set up the connection. Also 
  371.21 + *             assigns a MASTER and a SLAVE for the communication.
  371.22 + * INFO_EXCH - Entered once the Hello procedure has set up the link. In this 
  371.23 + *             state routing information and bundles are exchanged.
  371.24 + * WAIT_INFO - Entered once the INFO_EXCH is completed. Nodes remain in this 
  371.25 + *             state until a timer expires or they are notified that the 
  371.26 + *             neighbor is out of range. WAIT_NB is then entered.
  371.27 + *
  371.28 + * Hello procedure states
  371.29 + * SENDSYN     - Initiation of the Hello procedure. First part of the 
  371.30 + *                three-way handshake.
  371.31 + * WAITSYNACK  - Second part of the three-way handshake.
  371.32 + * WAITACK     - Last part of the three-way handshake.
  371.33 + * ESTABLISHED
  371.34 + * MASTER      - One node is assigned to be MASTER, this node will enter the 
  371.35 + *                initiator states.
  371.36 + * SLAVE       - The other node will be assigned SLAVE, and will enter the 
  371.37 + *                listener states.
  371.38 + * 
  371.39 + * Initiator states (MASTER)
  371.40 + * SENDDICTIONARY
  371.41 + * SENDRIB
  371.42 + * SENDBOFFER
  371.43 + * WAITBREQ
  371.44 + * TIMEOUT
  371.45 + * SENDBUNDLE
  371.46 + * WAITFORBREQUEST
  371.47 + * RESETLINK
  371.48 + * IDLESTATE
  371.49 + * 
  371.50 + * Listener states (SLAVE)
  371.51 + * WAITFORDICTIONARY
  371.52 + * WAITFORRIB
  371.53 + * WAITFORBOFFER
  371.54 + * SENDBREQUEST
  371.55 + * WAITFORBUNDLES
  371.56 + * </PRE>
  371.57 + */
  371.58 +class Connection: public QObject
  371.59 +{
  371.60 +	Q_OBJECT 
  371.61 +	public:
  371.62 +		Connection(int,int ,QString ,NodeManager* ,BundleManager* ,QObject *parent = 0);
  371.63 +		~Connection(void);
  371.64 +
  371.65 +	private:
  371.66 +		int HELLO_TIMER;
  371.67 +		int INITIATOR_TIMER;
  371.68 +		int LISTENER_TIMER;
  371.69 +		int HELLOT;
  371.70 +		int BROADCAST;
  371.71 +		bool update;
  371.72 +		bool updateRIB;
  371.73 +		int continiusUpdate;
  371.74 +
  371.75 +		int connectionState;
  371.76 +		int helloState;
  371.77 +		int initiatorState;
  371.78 +		int listenerState;
  371.79 +		int encounterNodeId;
  371.80 +		int encounterNodeType;
  371.81 +		QString encounterNodeName;
  371.82 +		QTimer *helloTimer; 		
  371.83 +		QTimer *initiatorTimer; 		
  371.84 +		QTimer *listenerTimer; 		
  371.85 +		//TLV
  371.86 +		TLV *TLVTranslator; 
  371.87 +		QString connectionNodeName;
  371.88 +		QList<Node> lastReceivedRIB;
  371.89 +		QList<Bundle> bundleRequestList;
  371.90 +		int connectionId;
  371.91 +		int connectionNodeId;
  371.92 +		NodeManager* connectionNodeManager;
  371.93 +		BundleManager* connectionBundleManager;
  371.94 +
  371.95 +		
  371.96 +
  371.97 +	signals:
  371.98 +
  371.99 +		//! Sends a datapacket to neighAware.
 371.100 +		/*! Connected to NeighAware::sendDatagram
 371.101 +		 * @param packet the DataPacket to send.
 371.102 +		 */
 371.103 +		void sendDataPacket(DataPacket);
 371.104 +		
 371.105 +		//! Sends a Hello to the TLV.
 371.106 +		/*! Connected to TLV::receiveHello
 371.107 +		 * @param hello the Hello to be sent.
 371.108 +		 */
 371.109 +		void sendHello(Hello);
 371.110 +
 371.111 +		//! Sends a dictionary to tht TLV.
 371.112 +		/*! Connected to TLV::createDictionary
 371.113 +		 * @param nodes the list of nodes to be included in the dictionary.
 371.114 +		 */
 371.115 +		void sendDictionary(QList<Node>);
 371.116 +
 371.117 +		//! Sends a RIB to the TLV.
 371.118 +		/*! Connected to TLV::createRIB
 371.119 +		 * @param nodes the list of nodes to be included in the RIB.
 371.120 +		 */
 371.121 +		void sendRIB(QList<Node>);
 371.122 +
 371.123 +		//! Sends a datagram to the TLV.
 371.124 +		/*! Connected to TLV::receiveDatagram
 371.125 +		 * @param datagram the datagram to be sent.
 371.126 +		 */
 371.127 +		void forwardSignalDatagram(QByteArray);
 371.128 +
 371.129 +		//! Sends a bundle offer to the TLV.
 371.130 +		/*! Connected to TLV::createBundleOffer
 371.131 +		 * @param the list of bundles to be included in the offer.
 371.132 +		 */
 371.133 +		void sendBundleOffer(QList<Bundle>);
 371.134 +
 371.135 +		//! Sends a bundle request to the TLV.
 371.136 +		/*! Connected to TLV::createBundleRequest.
 371.137 +		 * @param the list of bundles to be requested. (?)
 371.138 +		 */
 371.139 +		void sendBundleRequest(QList<Bundle>);
 371.140 +
 371.141 +		//! Sends a list of bundles to the TLV.
 371.142 +		/*! Connected to TLV::createBundleData.
 371.143 +		 * @param the bundles to be sent.
 371.144 +		 */
 371.145 +		void sendBundles(QList<Bundle>);
 371.146 +
 371.147 +		//! Sends the status of this connection.
 371.148 +		/*! Connected to NeighAware::getNewConnectionStatus. (Is this only 
 371.149 +		 * used for GUI???)
 371.150 +		 * @param the connection state(?).
 371.151 +		 * <PRE>
 371.152 +		 *	WAIT_NB   = 0
 371.153 +		 *	HELLO     = 1
 371.154 +		 *	INFO_EXCH = 2
 371.155 +		 *	WAIT_INFO = 2
 371.156 +		 * </PRE>
 371.157 +		 */
 371.158 +		void newConnectionStatus(int);
 371.159 +	public slots:
 371.160 +
 371.161 +		//! Internal slot for receiving packets.
 371.162 +		/*! Extracts the data from the datagram and emits forwardSignalDatagram.
 371.163 +		 * @param dataPacket the datapacket received from the network. 
 371.164 +		 */
 371.165 +		void receiveDatagram(DataPacket);
 371.166 +
 371.167 +	private slots:
 371.168 +		//! Internal(?) slot for sending packets.
 371.169 +		/*! Inserts the data into a DataPacket and emits sendDataPacket.
 371.170 +		 * @param datagram the data to be sent.
 371.171 +		 */
 371.172 +		void forwardSlotDatagram(QByteArray);
 371.173 +
 371.174 +		//! Called every time the hello timer expires, initiates a new hello procedure.
 371.175 +		void helloProcedure();
 371.176 +
 371.177 +		//! Called when the Hello procedure is completed if this node was given the SLAVE role.
 371.178 +		void listenerProcedure();
 371.179 +
 371.180 +		//! Called when the Hello procedure is completed if this node was given the MASTER role.
 371.181 +		void initiatorProcedure();
 371.182 +
 371.183 +		//! Slot for reception of hello messages.  
 371.184 +		/*! Checks the type of the hello and reacts accordingly by changing 
 371.185 +		 * state, and possibly sending a response.
 371.186 +		 */
 371.187 +		void receiveHello(Hello);
 371.188 +
 371.189 +		//! Slot for handling the reception of a dictionary.
 371.190 +		/*! When a dictionary (node id, name mappings) is received it is 
 371.191 +		 * dispatched to the node manager.
 371.192 +		 * @param receivedList the list of (node id, name mappings)
 371.193 +		 */
 371.194 +		void receiveDictionary(QList<Node>);
 371.195 +
 371.196 +		//! Slot for handling the reception of the RIB.
 371.197 +		/*! The RIB (Routing Information Base) contains node id -> delivery 
 371.198 +		 * predictability mappings.
 371.199 +		 * @param receivedList the RIB table.
 371.200 +		 */
 371.201 +		void receiveRIB(QList<Node>);
 371.202 +
 371.203 +		//! Handles reception of bundle requests.
 371.204 +		/*! Prepares a bundle request based on the offer, and sends out a 
 371.205 +		 * request for the first bundle in the list. If no more bundles are to 
 371.206 +		 * be sent the connection is reset to the hello state and an empty 
 371.207 +		 * bundle request is sent to the other node to indicate this.
 371.208 +		 * @param receivedList the list of bundles that were offered by the 
 371.209 +		 * other node.
 371.210 +		 */
 371.211 +		void receiveBundleOffer(QList<Bundle>);
 371.212 +
 371.213 +		//! This function is where the initiator handles bundle requests.
 371.214 +		/*! When a request for a list of bundles is received the appropriate 
 371.215 +		 * bundles are sent to the other node.
 371.216 +		 * @param receivedList the list of bundles the other node requested.
 371.217 +		 */
 371.218 +		void receiveBundleRequest(QList<Bundle>);
 371.219 +
 371.220 +		//! This function is where the listener handles reception of bundles.
 371.221 +		/*! When a list of bundles is received (currently only one bundle at a 
 371.222 +		 * time) it is dispatched to the bundle manager and a new request is 
 371.223 +		 * sent out. If the bundle request list is empty an empty bundle 
 371.224 +		 * request is sent out to indicate this to the other node.
 371.225 +		 * @param receivedList the list of bundles received.
 371.226 +		 */
 371.227 +		void receiveBundles(QList<Bundle>);
 371.228 +
 371.229 +
 371.230 +};
 371.231 +#endif
   372.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   372.2 +++ b/x86/x86/connectionWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   372.3 @@ -0,0 +1,64 @@
   372.4 +#include <QtGui>
   372.5 +#include <connectionWidget.h>
   372.6 +#include <readFile.h>
   372.7 +
   372.8 +ConnectionWidget::ConnectionWidget(QWidget *parent)
   372.9 +        : QWidget(parent)
  372.10 +{
  372.11 +#ifdef PDAGUI
  372.12 +//	setFixedSize(230,300);
  372.13 +#else
  372.14 +	setFixedSize(990, 660);
  372.15 +#endif //PDAGUI
  372.16 +
  372.17 +//	QGroupBox *connectionBox = new QGroupBox("Active Connections");
  372.18 +
  372.19 +	//ConnectionsTable
  372.20 +	conTable = new QTableWidget(9, 4, this);
  372.21 +    QStringList horizontalConLabels;
  372.22 +    horizontalConLabels << "ID" << "IP" << "Alive" << "State" ;
  372.23 +	conTable->setHorizontalHeaderLabels(horizontalConLabels);
  372.24 +	conTable->setColumnWidth(0, 30);	//ID
  372.25 +	conTable->setColumnWidth(1, 70);	//IP
  372.26 +	conTable->setColumnWidth(2, 40);	//Alive
  372.27 +	conTable->setColumnWidth(3, 40);	//State
  372.28 +
  372.29 +	QGridLayout *layout = new QGridLayout();
  372.30 +	layout->setMargin(0);
  372.31 +	layout->setSpacing(0);
  372.32 +	layout->addWidget(conTable, 0, 0);
  372.33 +	setLayout(layout);
  372.34 +
  372.35 +
  372.36 +}
  372.37 +
  372.38 +//Receives a list of active connection and add them to the list
  372.39 +void ConnectionWidget:: getConnectionList(QList <ConnectionInfo> list)
  372.40 +{
  372.41 +	ConnectionInfo tempNode;
  372.42 +	conTable->clear();
  372.43 +        QStringList horizontalConLabels;
  372.44 +	horizontalConLabels << "ID" << "IP" << "Alive" << "State";
  372.45 +	conTable->setHorizontalHeaderLabels(horizontalConLabels);
  372.46 +	for (int i = 0; i < list.size(); ++i)
  372.47 +	{
  372.48 +		tempNode=list.at(i);
  372.49 +		//Adding ID
  372.50 +		QString text = QString("%1").arg((int)tempNode.id);
  372.51 +		QTableWidgetItem *newItem = new QTableWidgetItem(text);
  372.52 +		conTable->setItem(i, 0, newItem);
  372.53 +		//Adding IP
  372.54 +		text = tempNode.ip.toString();
  372.55 +		newItem = new QTableWidgetItem(text);
  372.56 +		conTable->setItem(i, 1, newItem);
  372.57 +		//Adding Alive variable
  372.58 +		text = QString("%1").arg((int)tempNode.alive);
  372.59 +		newItem = new QTableWidgetItem(text);
  372.60 +		conTable->setItem(i, 2, newItem);
  372.61 +		//Adding State of the TCP Connection
  372.62 +		int x = tempNode.tcpSocket->state();
  372.63 +		text = QString("%1").arg((int)x);
  372.64 +		newItem = new QTableWidgetItem(text);
  372.65 +		conTable->setItem(i, 3, newItem);
  372.66 +	}
  372.67 + }
   373.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   373.2 +++ b/x86/x86/connectionWidget.h	Thu Jun 26 17:39:40 2008 +0100
   373.3 @@ -0,0 +1,25 @@
   373.4 +#ifndef CONNECTIONWIDGET_H
   373.5 +#define CONNECTIONWIDGET_H
   373.6 +#include <QtGui>
   373.7 +#include <QtNetwork>
   373.8 +#include <bundle.h>
   373.9 +#include <nodeManager.h>
  373.10 +#include <neighbourAwareness.h>
  373.11 +
  373.12 +class ConnectionWidget: public QWidget
  373.13 +{
  373.14 +
  373.15 +	Q_OBJECT
  373.16 +
  373.17 +public:
  373.18 +	ConnectionWidget(QWidget *parent = 0);
  373.19 +private:
  373.20 +	QTableWidget* conTable;
  373.21 +
  373.22 +public slots:
  373.23 +	void getConnectionList(QList <ConnectionInfo>);
  373.24 +};
  373.25 +
  373.26 +#endif
  373.27 +
  373.28 +
   374.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   374.2 +++ b/x86/x86/dataPacket.cpp	Thu Jun 26 17:39:40 2008 +0100
   374.3 @@ -0,0 +1,21 @@
   374.4 +#include <QtCore>
   374.5 +#include <dataPacket.h>
   374.6 +
   374.7 +DataPacket::DataPacket(QObject *parent)
   374.8 +{
   374.9 +	id=0;
  374.10 +	data.clear();
  374.11 +}
  374.12 +
  374.13 +DataPacket& DataPacket::operator=(const DataPacket& other)
  374.14 +{
  374.15 + id = other.id;
  374.16 + data = other.data;
  374.17 + return *this;
  374.18 +}
  374.19 +
  374.20 +DataPacket::DataPacket(const DataPacket& other)
  374.21 +{
  374.22 + id = other.id;
  374.23 + data = other.data;
  374.24 +}	
   375.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   375.2 +++ b/x86/x86/dataPacket.h	Thu Jun 26 17:39:40 2008 +0100
   375.3 @@ -0,0 +1,21 @@
   375.4 +#ifndef DATAPACKET_H
   375.5 +#define DATAPACKET_H
   375.6 +#include <QtCore>
   375.7 +
   375.8 +/*! \brief This class represents a DataPacket. It is used when transfering 
   375.9 + * datagrams between the NeighAware and Connection classes.
  375.10 + */
  375.11 +class DataPacket: public QObject
  375.12 +{
  375.13 +
  375.14 +	Q_OBJECT 
  375.15 +	public:
  375.16 +	QByteArray data;
  375.17 +	int id;
  375.18 +	DataPacket(QObject *parent= 0);
  375.19 +	DataPacket(const DataPacket& other);
  375.20 +	DataPacket& operator=(const DataPacket& other);
  375.21 +
  375.22 +};
  375.23 +
  375.24 +#endif
   376.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   376.2 +++ b/x86/x86/debugWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   376.3 @@ -0,0 +1,242 @@
   376.4 +#include <debugWidget.h>
   376.5 +#include <QtGui>
   376.6 +#include <QtCore>
   376.7 +#include <readFile.h>
   376.8 +
   376.9 +
  376.10 +#define DTN 500
  376.11 +
  376.12 +DebugWidget::DebugWidget(NodeManager *nodeMng,BundleManager *bundleMng,QWidget *parent)
  376.13 +		: QWidget(parent)
  376.14 +{
  376.15 +#ifdef PDAGUI
  376.16 +	setFixedSize(240,320);
  376.17 +#else
  376.18 +	setFixedSize(1000,700);
  376.19 +#endif //PDAGUI
  376.20 +	ReadFile conf;
  376.21 +	QString mainText = "Prophet Window - ";
  376.22 +	mainText.append(conf.getNodeName());
  376.23 +	setWindowTitle(mainText);
  376.24 +	bundleManager=bundleMng;
  376.25 +
  376.26 +#ifdef PDAGUI
  376.27 +	//Connection list tab
  376.28 +	connectionWidget = new ConnectionWidget(this);
  376.29 +	
  376.30 +	//Read Messages Tab
  376.31 +	messageRead = new MsgReadWidget(nodeMng,bundleMng);
  376.32 +
  376.33 +	//Configuration Tab
  376.34 +	configWidget = new ConfigWidget(this);
  376.35 +#endif //PDAGUI
  376.36 +
  376.37 +	//Message Widget Tag
  376.38 +	message = new MsgWidget(nodeMng,bundleMng);
  376.39 +	connect(message, SIGNAL(sendBundle(Bundle)), this, SLOT(forwardAppBundle(Bundle)));
  376.40 +
  376.41 +	//Node Table Tag
  376.42 +	nodeTable = new QTableWidget(40, 4, this);
  376.43 +    QStringList horizontalNodeLabels;
  376.44 +    horizontalNodeLabels << "ID" << "Name" << "Probability" << "RIB Flag";
  376.45 +	nodeTable->setHorizontalHeaderLabels(horizontalNodeLabels); 
  376.46 +
  376.47 +	//Info tag
  376.48 +	infoWidget = new InfoWidget(nodeMng);
  376.49 +	connect(this, SIGNAL(traffic(int)), infoWidget, SLOT(getTraffic(int)));
  376.50 +	connect(this, SIGNAL(newConnectionStatus(int)), infoWidget, SLOT(getNewConnectionStatus(int)));
  376.51 +	connect(this, SIGNAL(newConnection(int)), infoWidget, SLOT(getNewConnection(int)));
  376.52 +	connect(this, SIGNAL(newRemovedConnection(int)), infoWidget, SLOT(getRemovedConnection(int)));
  376.53 +	connect(this, SIGNAL(usedFileStorage(int)), infoWidget, SLOT(getUsedFileStorage(int)));
  376.54 +	connect(this, SIGNAL(usedMemoryStorage(int)), infoWidget, SLOT(getUsedMemoryStorage(int)));
  376.55 +	connect(this, SIGNAL(forwardConnectionList(QList <ConnectionInfo>)), infoWidget, SLOT(getConnectionList(QList <ConnectionInfo>)));
  376.56 +#ifdef PDAGUI
  376.57 +	connect(infoWidget, SIGNAL(sendConnectionList(QList <ConnectionInfo>)), 
  376.58 +			connectionWidget, SLOT(getConnectionList(QList <ConnectionInfo>)));
  376.59 +#endif //PDAGUI
  376.60 +	
  376.61 +	//Bundle List Tag
  376.62 +	bundleWidget = new BundleWidget(this);
  376.63 +	connect(this, SIGNAL(sendBundleList(QList<Bundle>)), bundleWidget, SLOT(getBundleList(QList<Bundle>)));
  376.64 +	connect(bundleWidget, SIGNAL(removeBundle(int)), this, SLOT(removeBundleSlot(int)));
  376.65 +	connect(bundleWidget, SIGNAL(removeAllBundles()), this, SLOT(removeAllBundlesSlot()));
  376.66 +
  376.67 +	#ifdef DTN_INTERFACE
  376.68 +	//DTN Interface Tag
  376.69 +	dtnInfo = new QTextEdit;
  376.70 +	dtnInfo->setReadOnly(true);
  376.71 +	dtnEntery = 0;
  376.72 +	#endif /*DNT_INTERFACE*/
  376.73 +	
  376.74 +	//About Tag
  376.75 +	info = new QListWidget;
  376.76 +	//info->setSelectionMode(QAbstractItemView::NoSelection);
  376.77 +	QString itemText;
  376.78 +	itemText.append("http://prophet.snc.sapmi.net");
  376.79 +    QListWidgetItem *newItem = new QListWidgetItem;
  376.80 +    newItem->setText(itemText);
  376.81 +    info->insertItem(0, newItem);
  376.82 +	itemText.clear();
  376.83 +	itemText.append("PRoPHET Version: 2.7.0");
  376.84 +	newItem = new QListWidgetItem;
  376.85 +    newItem->setText(itemText);
  376.86 +    info->insertItem(0, newItem);
  376.87 +	itemText.clear();
  376.88 +	itemText.append("Protocol Authors: Anders Lindgren, Avri Doria");
  376.89 +	newItem = new QListWidgetItem;
  376.90 +    newItem->setText(itemText);
  376.91 +    info->insertItem(0, newItem);
  376.92 +	itemText.clear();
  376.93 +	itemText.append("Code Author: Samo Grasic, Mattias Ek");
  376.94 +	newItem = new QListWidgetItem;
  376.95 +    newItem->setText(itemText);
  376.96 +    info->insertItem(0, newItem);
  376.97 +	itemText.clear();
  376.98 +	itemText.append("Lulea University Of Technology, Center For Distance-Spanning Technology");
  376.99 +	newItem = new QListWidgetItem;
 376.100 +    newItem->setText(itemText);
 376.101 +    info->insertItem(0, newItem);
 376.102 +
 376.103 +
 376.104 +	//Tab Widget
 376.105 +	tabWidget = new QTabWidget;
 376.106 +	tabWidget->addTab(infoWidget,tr("Node info"));
 376.107 +	#ifdef PDAGUI
 376.108 +	tabWidget->addTab(connectionWidget,tr("Connections"));
 376.109 +	#endif //PDAGUI
 376.110 +	tabWidget->addTab(bundleWidget,tr("Bundle list"));
 376.111 +	#ifdef PDAGUI
 376.112 +	tabWidget->addTab(message, tr("NSIM - Send"));
 376.113 +	tabWidget->addTab(messageRead, tr("NSIM - Read"));
 376.114 +	#else
 376.115 +	tabWidget->addTab(message, tr("NSIM"));
 376.116 +	#endif //PDAGUI
 376.117 +	#ifdef DTN_INTERFACE
 376.118 +	tabWidget->addTab(dtnInfo,tr("DTN Interface"));
 376.119 +	#endif /*DTN_INTERFACE*/
 376.120 +	#ifdef PDAGUI
 376.121 +	tabWidget->addTab(configWidget, tr("Config"));
 376.122 +	#endif //PDAGUI
 376.123 +	tabWidget->addTab(nodeTable, tr("Node list"));
 376.124 +	tabWidget->addTab(info, tr("About"));
 376.125 +
 376.126 +	
 376.127 +	//Define final layout
 376.128 +	QVBoxLayout *layout = new QVBoxLayout;
 376.129 +#ifdef PDAGUI
 376.130 +	layout->setMargin(0);
 376.131 +	layout->setSpacing(0);
 376.132 +#endif //PDAGUI
 376.133 +    layout->addWidget(tabWidget);    
 376.134 +    setLayout(layout);
 376.135 +
 376.136 +}
 376.137 +
 376.138 +void DebugWidget::getBundleList(QList<Bundle> list)
 376.139 +{
 376.140 +	emit sendBundleList(list);
 376.141 +}
 376.142 +
 376.143 +void DebugWidget::getNodeList(QList<Node> list)
 376.144 +{
 376.145 +	Node tempNode;
 376.146 +	nodeTable->clear();
 376.147 +    QStringList horizontalNodeLabels;
 376.148 +    horizontalNodeLabels << "ID" << "Name" << "Probability" << "RIB Flag";
 376.149 +	nodeTable->setHorizontalHeaderLabels(horizontalNodeLabels); 
 376.150 +    for (int i = 0; i < list.size(); ++i) 
 376.151 +	{
 376.152 +		tempNode=list.at(i);
 376.153 +
 376.154 +		QString text = QString("%1").arg((int)tempNode.nodeId);
 376.155 +		QTableWidgetItem *newItem = new QTableWidgetItem(text);
 376.156 +		nodeTable->setItem(i, 0, newItem);
 376.157 +
 376.158 +		text = tempNode.getName();
 376.159 +		newItem = new QTableWidgetItem(text);
 376.160 +		nodeTable->setItem(i, 1, newItem);
 376.161 +
 376.162 +		text = QString("%1").arg((float)tempNode.probability);
 376.163 +		newItem = new QTableWidgetItem(text);
 376.164 +		nodeTable->setItem(i, 2, newItem);
 376.165 +
 376.166 +		text = QString("%1").arg((int)tempNode.flag);
 376.167 +		newItem = new QTableWidgetItem(text);
 376.168 +		nodeTable->setItem(i, 3, newItem);
 376.169 +		//table->resizeRowToContents(i);
 376.170 +	}
 376.171 +}
 376.172 +
 376.173 +void DebugWidget::getConnectionList(QList<ConnectionInfo> list)
 376.174 +{
 376.175 +	emit forwardConnectionList(list);
 376.176 +}
 376.177 +
 376.178 +void DebugWidget::getStorageSize(int size)
 376.179 +{
 376.180 +
 376.181 +}
 376.182 +
 376.183 +void DebugWidget::getLog(QString log)
 376.184 +{
 376.185 +	#ifdef DTN_INTERFACE
 376.186 +	if(dtnEntery>DTN)
 376.187 +	{
 376.188 +		dtnInfo->clear();
 376.189 +		dtnEntery=0;
 376.190 +	}
 376.191 +	dtnInfo->append(log);
 376.192 +	dtnEntery++; 
 376.193 +	#endif /*DTN_INTERFACE*/
 376.194 +}
 376.195 +
 376.196 +void DebugWidget::forwardAppBundle(Bundle newBundle)
 376.197 +{
 376.198 +	emit sendAppBundle(newBundle);
 376.199 +}
 376.200 +
 376.201 +void DebugWidget::getAppBundle(Bundle newBundle)
 376.202 +{
 376.203 +	message->getBundle(newBundle);
 376.204 +}
 376.205 +
 376.206 +void DebugWidget::getTraffic(int t)
 376.207 +{
 376.208 +	emit traffic(t);
 376.209 +}
 376.210 +
 376.211 +void DebugWidget::getNewConnection(int c)
 376.212 +{
 376.213 +	emit newConnection(c);
 376.214 +}
 376.215 +
 376.216 +void DebugWidget::getNewConnectionStatus(int c)
 376.217 +{
 376.218 +	emit newConnectionStatus(c);
 376.219 +}
 376.220 +
 376.221 +void DebugWidget::getRemovedConnection(int c)
 376.222 +{
 376.223 +	emit newRemovedConnection(c);
 376.224 +}
 376.225 +
 376.226 +void DebugWidget::getUsedMemoryStorage(int s)
 376.227 +{
 376.228 +	emit usedMemoryStorage(s);
 376.229 +}
 376.230 +
 376.231 +void DebugWidget::getUsedFileStorage(int s)
 376.232 +{
 376.233 +	emit usedFileStorage(s);
 376.234 +}
 376.235 +
 376.236 +void DebugWidget::removeBundleSlot(int s)
 376.237 +{
 376.238 +	emit removeBundle(s);
 376.239 +}
 376.240 +
 376.241 +void DebugWidget::removeAllBundlesSlot()
 376.242 +{
 376.243 +	emit removeAllBundles();
 376.244 +}
 376.245 +
   377.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   377.2 +++ b/x86/x86/debugWidget.h	Thu Jun 26 17:39:40 2008 +0100
   377.3 @@ -0,0 +1,73 @@
   377.4 +#ifndef DEBUGWIDGET_H
   377.5 +#define DEBUGWIDGET_H
   377.6 +
   377.7 +
   377.8 +#include <QtGui>
   377.9 +#include <bundle.h>
  377.10 +#include <node.h>
  377.11 +#include <connectionWidget.h>
  377.12 +#include <msgWidget.h>
  377.13 +#include <msgReadWidget.h>
  377.14 +#include <configWidget.h>
  377.15 +#include <infoWidget.h>
  377.16 +#include <bundleWidget.h>
  377.17 +#include <neighbourAwareness.h>
  377.18 +#include <bundleManager.h>
  377.19 +
  377.20 +class DebugWidget : public QWidget
  377.21 +{
  377.22 +	Q_OBJECT 
  377.23 +
  377.24 +	public:
  377.25 +		DebugWidget(NodeManager*,BundleManager*,QWidget *parent = 0);
  377.26 +		QTableWidget *table;
  377.27 +		QTableWidget *nodeTable;
  377.28 +		QTableWidget *conTable;
  377.29 +		ConnectionWidget *connectionWidget;
  377.30 +		MsgWidget *message;
  377.31 +		MsgReadWidget *messageRead;
  377.32 +		ConfigWidget *configWidget;
  377.33 +		QTabWidget *tabWidget;
  377.34 +		QListWidget *info;
  377.35 +		QTextEdit *dtnInfo;
  377.36 +		InfoWidget *infoWidget;
  377.37 +		BundleWidget *bundleWidget;
  377.38 +		BundleManager *bundleManager;	
  377.39 +	int dtnEntery;
  377.40 +	 signals:
  377.41 +		void sendAppBundle(Bundle);
  377.42 +		void traffic(int);
  377.43 +		void newConnectionStatus(int);
  377.44 +		void newConnection(int);
  377.45 +		void newRemovedConnection(int);
  377.46 +		void usedFileStorage(int);
  377.47 +		void usedMemoryStorage(int);
  377.48 +		void sendBundleList(QList<Bundle>);
  377.49 +		void forwardConnectionList(QList <ConnectionInfo>);
  377.50 +		void removeBundle(int);
  377.51 +		void removeAllBundles();
  377.52 +
  377.53 +	public slots:
  377.54 +	void getLog(QString);
  377.55 +	void getStorageSize(int);
  377.56 +	void getConnectionList(QList<ConnectionInfo> list);
  377.57 +	void getBundleList(QList<Bundle>);
  377.58 +	void forwardAppBundle(Bundle);
  377.59 +	void getAppBundle(Bundle);
  377.60 +	void getNodeList(QList<Node>);
  377.61 +
  377.62 +	void getTraffic(int);
  377.63 +	void getNewConnection(int);
  377.64 +	void getNewConnectionStatus(int);
  377.65 +	void getRemovedConnection(int);
  377.66 +	void getUsedFileStorage(int);
  377.67 +	void getUsedMemoryStorage(int);
  377.68 +	void removeBundleSlot(int);
  377.69 +	void removeAllBundlesSlot();
  377.70 +
  377.71 +
  377.72 +};
  377.73 +
  377.74 +#endif
  377.75 +
  377.76 +
   378.1 Binary file x86/x86/dia/signals.dia has changed
   379.1 Binary file x86/x86/green_off.png has changed
   380.1 Binary file x86/x86/green_on.png has changed
   381.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   381.2 +++ b/x86/x86/hello.cpp	Thu Jun 26 17:39:40 2008 +0100
   381.3 @@ -0,0 +1,65 @@
   381.4 +#include <QtCore>
   381.5 +#include <hello.h>
   381.6 +
   381.7 +Hello::Hello(QObject *parent)
   381.8 +{
   381.9 +	reserved=0;
  381.10 +	HFunction=0;
  381.11 +	timer=0;
  381.12 +	senderId=0;
  381.13 +	senderType=0;
  381.14 +	senderName.clear();
  381.15 +}
  381.16 +
  381.17 +
  381.18 +Hello& Hello::operator=(const Hello& other)
  381.19 +{
  381.20 + reserved = other.reserved;
  381.21 + HFunction = other.HFunction;
  381.22 + timer = other.timer;
  381.23 + senderName = other.senderName;
  381.24 + senderId = other.senderId;
  381.25 + senderType = other.senderType;
  381.26 + return *this;
  381.27 +}
  381.28 +
  381.29 +Hello::Hello(const Hello& other)
  381.30 +{
  381.31 + reserved = other.reserved;
  381.32 + HFunction = other.HFunction;
  381.33 + timer = other.timer;
  381.34 + senderName = other.senderName;
  381.35 +  senderId = other.senderId;
  381.36 + senderType = other.senderType;
  381.37 +
  381.38 +}	
  381.39 +	
  381.40 +void Hello::setFunction(int function)
  381.41 +{
  381.42 +	HFunction=function;
  381.43 +}
  381.44 +
  381.45 +void Hello::setSenderName(QString name)
  381.46 +{
  381.47 +	senderName=name;
  381.48 +}
  381.49 +
  381.50 +int Hello::getFunction()
  381.51 +{
  381.52 +	return HFunction;
  381.53 +}
  381.54 +
  381.55 +QString Hello::getSenderName()
  381.56 +{
  381.57 +	return senderName;
  381.58 +}
  381.59 +
  381.60 +void Hello::setTimer(int t)
  381.61 +{
  381.62 +	timer=t;
  381.63 +}
  381.64 +
  381.65 +int Hello::getTimer()
  381.66 +{
  381.67 +	return timer;
  381.68 +}
  381.69 \ No newline at end of file
   382.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   382.2 +++ b/x86/x86/hello.h	Thu Jun 26 17:39:40 2008 +0100
   382.3 @@ -0,0 +1,82 @@
   382.4 +#ifndef HELLO_H
   382.5 +#define HELLO_H
   382.6 +
   382.7 +#define SYN 1
   382.8 +#define SYNACK 2
   382.9 +#define ACK 3
  382.10 +#define RSTACK 4
  382.11 +
  382.12 +
  382.13 +
  382.14 +#include <QtCore>
  382.15 +
  382.16 +//!Object used during the PRoPHET hello procedure. 
  382.17 +/*!
  382.18 + * The different functions (HFs) of Hello messages:
  382.19 + * <PRE>
  382.20 + * SYN    - Beacon Hello, used for allowing other nodes to see us.
  382.21 + * SYNACK - Response to a SYN Hello.
  382.22 + * ACK    - Acknowledgement of the SYNACK.
  382.23 + * RSTACK - ???
  382.24 + * </PRE>
  382.25 + */
  382.26 +class Hello : public QObject
  382.27 +{
  382.28 +
  382.29 +Q_OBJECT 
  382.30 +	public:
  382.31 +	int reserved;
  382.32 +	int HFunction;
  382.33 +	int timer;
  382.34 +	int senderId;
  382.35 +	int senderType;
  382.36 +	QString senderName;
  382.37 +
  382.38 +	Hello(QObject *parent = 0);
  382.39 +	Hello(const Hello& other);
  382.40 +	Hello& operator=(const Hello& other);
  382.41 +
  382.42 +
  382.43 +	//! Sets the HF of this Hello.
  382.44 +	/*!
  382.45 +	 * @param function the HF of this Hello.
  382.46 +	 */
  382.47 +	void setFunction(int);
  382.48 +
  382.49 +	//! Sets the HF of this Hello.
  382.50 +	/*!
  382.51 +	 * @param function the HF of this Hello.
  382.52 +	 */
  382.53 +	int getFunction(); 
  382.54 +
  382.55 +	//! Returns the routable DTN name of the sender.
  382.56 +	/*!
  382.57 +	 * Used for updating routing information and making forwarding 
  382.58 +	 * decisions.
  382.59 +	 * @return the routable DTN name of the sender.
  382.60 +	 */
  382.61 +	QString getSenderName();	
  382.62 +
  382.63 +	//! Sets the routable DTN name of the sender.
  382.64 +	/*!
  382.65 +	 * Used for updating routing information and making forwarding 
  382.66 +	 * decisions.
  382.67 +	 * @param name a QString containing the senders name.
  382.68 +	 */	
  382.69 +	void setSenderName(QString);
  382.70 +
  382.71 +	//! Sets the Hello timer of this Hello.
  382.72 +	/*!
  382.73 +	 * @param t the interval between periodic Hello messages in units of 
  382.74 +	 * 100 ms.
  382.75 +	 */
  382.76 +	void setTimer(int);
  382.77 +
  382.78 +	//! Returns the interval (in 100 ms) this Hello is sent out.
  382.79 +	/*!
  382.80 +	 * @return the interval (in 100 ms) that periodic hellos are sent out.
  382.81 +	 */
  382.82 +	int getTimer(); 
  382.83 +};
  382.84 +
  382.85 +#endif
   383.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   383.2 +++ b/x86/x86/infoWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   383.3 @@ -0,0 +1,518 @@
   383.4 +#include <QtGui>
   383.5 +#include <infoWidget.h>
   383.6 +#include <readFile.h>
   383.7 +
   383.8 +
   383.9 +#define AVRTIME 1000
  383.10 +#define MAXRATE 100
  383.11 +#define YELLOWONTIME 1000
  383.12 +#define REDONTIME 4000
  383.13 +
  383.14 +//Connections states for GUI
  383.15 +#define STATE_SYN 1
  383.16 +#define STATE_SYNACK 2
  383.17 +#define STATE_ACK 3
  383.18 +#define STATE_DICT 4
  383.19 +#define STATE_RIB 5
  383.20 +#define STATE_BOFF 6
  383.21 +#define STATE_BREQ 7
  383.22 +#define STATE_BUNDLE 8
  383.23 +#define STATE_ERROR 9
  383.24 +
  383.25 +
  383.26 +InfoWidget::InfoWidget(NodeManager* nodeMng,QWidget *parent)
  383.27 +        : QWidget(parent)
  383.28 +{
  383.29 +#ifdef PDAGUI
  383.30 +//	setFixedSize(230,300);
  383.31 +#else
  383.32 +	setFixedSize(990, 660);
  383.33 +#endif //PDAGUI
  383.34 +	ReadFile conf;
  383.35 +	//Traffic timer and variables
  383.36 +	trafficRate=0;
  383.37 +	trafficSum=0;
  383.38 +	trafficTimer = new QTimer();
  383.39 +	yellowTimer = new QTimer();
  383.40 +	yellowTimer->setSingleShot(true);
  383.41 +	redTimer = new QTimer();
  383.42 +	redTimer->setSingleShot(true);
  383.43 +
  383.44 +	trafficTimer->start(AVRTIME);
  383.45 +	connect(trafficTimer, SIGNAL(timeout()), this, SLOT(calculateTraffic()));
  383.46 +	connect(yellowTimer, SIGNAL(timeout()), this, SLOT(yellowLedOff()));
  383.47 +	connect(redTimer, SIGNAL(timeout()), this, SLOT(redLedOff()));
  383.48 +
  383.49 +	//Load graphic
  383.50 +	redOn = new QPixmap("red_on.png");
  383.51 +	redOff= new QPixmap("red_off.png");
  383.52 +	yellowOn= new QPixmap("yellow_on.png");
  383.53 +	yellowOff= new QPixmap("yellow_off.png");
  383.54 +	greenOn= new QPixmap("green_on.png");
  383.55 +	greenOff= new QPixmap("green_off.png");
  383.56 +
  383.57 +#ifndef PDAGUI
  383.58 +	//ConnectionsTable
  383.59 +    QLabel *labelConnections = new QLabel(this);
  383.60 +    labelConnections->setText("Active connections:");
  383.61 +	conTable = new QTableWidget(9, 4, this);
  383.62 +    QStringList horizontalConLabels;
  383.63 +    horizontalConLabels << "ID" << "IP" << "Alive" << "State" ;
  383.64 +	conTable->setHorizontalHeaderLabels(horizontalConLabels); 
  383.65 +#endif //PDAGUI
  383.66 +
  383.67 +#ifndef PDAGUI
  383.68 +	//Status group
  383.69 +	QGroupBox *sendBox = new QGroupBox("Status");
  383.70 +#endif //PDAGUI
  383.71 +    //Memory resources
  383.72 +    QLabel *labelMemory = new QLabel(this);
  383.73 +    labelMemory->setText("Memory storage:");
  383.74 +	memoryBar= new QProgressBar;
  383.75 +	memoryBar->setMaximum (conf.getStorageSize());
  383.76 +	memoryBar->setMinimum (0);
  383.77 +	memoryBar->setValue (0);
  383.78 +	memoryBar->setTextVisible(true);
  383.79 +    //File resources
  383.80 +    QLabel *labelFile = new QLabel(this);
  383.81 +    labelFile->setText("File storage:");
  383.82 +	fileBar= new QProgressBar;
  383.83 +	fileBar->setMaximum (conf.getMemoryStorageSize());
  383.84 +	fileBar->setMinimum (0);
  383.85 +	fileBar->setValue (0);
  383.86 +	fileBar->setTextVisible(true);
  383.87 +	//Transfer speed
  383.88 +    QLabel *labelSpeed = new QLabel(this);
  383.89 +    labelSpeed->setText("Transfer speed:");
  383.90 +	speedBar= new QProgressBar;
  383.91 +	speedBar->setMaximum (MAXRATE);
  383.92 +	speedBar->setMinimum (0);
  383.93 +	speedBar->setValue (0);
  383.94 +	speedBar->setTextVisible(true);
  383.95 +	//Red label
  383.96 +	labelRed = new QLabel(this);
  383.97 +    labelRed->setPixmap(*redOff);
  383.98 +	redLine = new QLineEdit(this);
  383.99 +	redLine->setText("No error...");
 383.100 +
 383.101 +	//Green label
 383.102 +	labelGreen = new QLabel(this);
 383.103 +    labelGreen->setPixmap(*greenOff);
 383.104 +	greenLine = new QLineEdit(this);
 383.105 +	greenLine->setText("No connection...");
 383.106 +
 383.107 +	//Yellow label
 383.108 +	labelYellow = new QLabel(this);
 383.109 +    labelYellow->setPixmap(*yellowOff);
 383.110 +	yellowLine = new QLineEdit(this);
 383.111 +	yellowLine->setText("No transmission...");
 383.112 +
 383.113 +
 383.114 +
 383.115 +
 383.116 +	//Final grid layout
 383.117 +    QGridLayout *sendGroup = new QGridLayout;
 383.118 +#ifdef PDAGUI
 383.119 +	sendGroup->setMargin(5);
 383.120 +	sendGroup->setSpacing(3);
 383.121 +
 383.122 +	sendGroup->addWidget(labelMemory, 0, 0, 1, 3);
 383.123 +    sendGroup->addWidget(memoryBar, 0, 1, 1, -1);
 383.124 +	sendGroup->addWidget(labelFile, 1, 0, 1, 3);
 383.125 +    sendGroup->addWidget(fileBar, 1, 1, 1, -1);
 383.126 +	sendGroup->addWidget(labelSpeed, 2, 0, 1, 3);
 383.127 +	sendGroup->addWidget(speedBar, 2, 1, 1, -1);
 383.128 +	sendGroup->addWidget(labelRed, 3, 0, 1, 1);	sendGroup->addWidget(redLine, 3, 1, 1, -1);
 383.129 +	sendGroup->addWidget(labelGreen, 4, 0, 1, 1); sendGroup->addWidget(greenLine, 4, 1, 1, -1);
 383.130 +	sendGroup->addWidget(labelYellow, 5, 0, 1, 1); sendGroup->addWidget(yellowLine, 5, 1, 1, -1);
 383.131 +#else
 383.132 +	sendGroup->addWidget(labelMemory, 0, 0);
 383.133 +    sendGroup->addWidget(memoryBar, 1, 0, 1,2);
 383.134 +
 383.135 +	sendGroup->addWidget(labelFile, 2, 0);
 383.136 +    sendGroup->addWidget(fileBar, 3, 0, 1,2);
 383.137 +	sendGroup->addWidget(labelSpeed, 4, 0);
 383.138 +	sendGroup->addWidget(speedBar, 5, 0, 1,2);
 383.139 +	sendGroup->addWidget(labelRed, 6, 0);	sendGroup->addWidget(redLine, 6, 1);
 383.140 +	sendGroup->addWidget(labelGreen, 7, 0); sendGroup->addWidget(greenLine, 7, 1 );
 383.141 +	sendGroup->addWidget(labelYellow, 8, 0); sendGroup->addWidget(yellowLine, 8, 1);
 383.142 +
 383.143 +#endif //PDAGUI
 383.144 +
 383.145 +#ifndef PDAGUI
 383.146 +	sendGroup->addWidget(labelConnections, 9, 0);
 383.147 +	sendGroup->addWidget(conTable, 10, 0,1,2);
 383.148 +#endif //PDAGUI
 383.149 +
 383.150 +#ifdef PDAGUI
 383.151 +	//sendGroup->setFixedSize(240, 320);
 383.152 +#else
 383.153 +	sendBox->setFixedSize(450, 635);
 383.154 +	sendBox->setLayout(sendGroup);
 383.155 +#endif //PDAGUI
 383.156 +	///////////////////////////////////////////////////
 383.157 +	QGroupBox *readBox = new QGroupBox("Configuration");
 383.158 +
 383.159 +	//Reading configurations
 383.160 +	loadConfiguration();
 383.161 +	//Final grid layout
 383.162 +	QGridLayout *readGroup = new QGridLayout;
 383.163 +	QLabel *labelNODEID = new QLabel("NodeID:");
 383.164 +	readGroup->addWidget(labelNODEID, 0, 0);
 383.165 +	readGroup->addWidget(lineNODEID, 0, 1);
 383.166 +	QLabel *labelNODENAME = new QLabel("Node Name:");
 383.167 +	readGroup->addWidget(labelNODENAME, 1, 0);
 383.168 +	readGroup->addWidget(lineNODENAME, 1, 1);
 383.169 +	QLabel *labelNODEIP = new QLabel("Node IP:");
 383.170 +	readGroup->addWidget(labelNODEIP, 2, 0);
 383.171 +	readGroup->addWidget(lineNODEIP, 2, 1);
 383.172 +	QLabel *labelNODEIP2 = new QLabel("Node IP2:");
 383.173 +	readGroup->addWidget(labelNODEIP2, 3, 0);
 383.174 +	readGroup->addWidget(lineNODEIP2, 3, 1);
 383.175 +	QLabel *labelNODEBROADCAST = new QLabel("Broadcast Address:");
 383.176 +	readGroup->addWidget(labelNODEBROADCAST, 4, 0);
 383.177 +	readGroup->addWidget(lineNODEBROADCAST, 4, 1);
 383.178 +	QLabel *labelBROADCAST = new QLabel("Broadcast Timer:");
 383.179 +	readGroup->addWidget(labelBROADCAST, 5, 0);
 383.180 +	readGroup->addWidget(lineBROADCAST, 5, 1);
 383.181 +	QLabel *labelAGINGTIMER = new QLabel("Aging Timer:");
 383.182 +	readGroup->addWidget(labelAGINGTIMER, 6, 0);
 383.183 +	readGroup->addWidget(lineAGINGTIMER, 6, 1);
 383.184 +	QLabel *labelPENCOUNTER = new QLabel("PEcounter:");
 383.185 +	readGroup->addWidget(labelPENCOUNTER, 7, 0);
 383.186 +	readGroup->addWidget(linePENCOUNTER, 7, 1);
 383.187 +	QLabel *labelBETA = new QLabel("Beta:");
 383.188 +	readGroup->addWidget(labelBETA, 8, 0);
 383.189 +	readGroup->addWidget(lineBETA, 8, 1);
 383.190 +	QLabel *labelGAMMA = new QLabel("Gamma:");
 383.191 +	readGroup->addWidget(labelGAMMA, 9, 0);
 383.192 +	readGroup->addWidget(lineGAMMA, 9, 1);
 383.193 +
 383.194 +	QLabel *labelALIVE = new QLabel("Alive Timer:");
 383.195 +	readGroup->addWidget(labelALIVE, 11, 0);
 383.196 +	readGroup->addWidget(lineALIVE, 11, 1);
 383.197 +
 383.198 +	QLabel *labelHELLOTIMER = new QLabel("Hello Timer:");
 383.199 +	readGroup->addWidget(labelHELLOTIMER, 12, 0);
 383.200 +	readGroup->addWidget(lineHELLOTIMER, 12, 1);
 383.201 +
 383.202 +	QLabel *laberINITIATORTIMER = new QLabel("Initiator Timer:");
 383.203 +//	readGroup->addWidget(laberINITIATORTIMER, 13, 0);
 383.204 +//	readGroup->addWidget(lineINITIATORTIMER, 13, 1);
 383.205 +
 383.206 +	QLabel *labelLISTENERTIMER = new QLabel("Listener Timer:");
 383.207 +//	readGroup->addWidget(labelLISTENERTIMER, 14, 0);
 383.208 +//	readGroup->addWidget(lineLISTENERTIMER, 14, 1);
 383.209 +
 383.210 +	QLabel *labelDTNHOSTNAME = new QLabel("DTN Host Name:");
 383.211 +	readGroup->addWidget(labelDTNHOSTNAME, 13, 0);
 383.212 +	readGroup->addWidget(lineDTNHOSTNAME, 13, 1);
 383.213 +
 383.214 +	QLabel *labelDNTTIMER = new QLabel("DTN Timer:");
 383.215 +	readGroup->addWidget(labelDNTTIMER, 14, 0);
 383.216 +	readGroup->addWidget(lineDNTTIMER, 14, 1);
 383.217 +
 383.218 +	QLabel *labelSTORAGESIZE = new QLabel("File Storge size:");
 383.219 +	readGroup->addWidget(labelSTORAGESIZE, 15, 0);
 383.220 +	readGroup->addWidget(lineSTORAGESIZE, 15, 1);
 383.221 +
 383.222 +	QLabel *labelMEMORYSIZE = new QLabel("Memory Storge size:");
 383.223 +	readGroup->addWidget(labelMEMORYSIZE, 16, 0);
 383.224 +	readGroup->addWidget(lineMEMORYSIZE, 16, 1);
 383.225 +
 383.226 +	QLabel *labelROUTING = new QLabel("Routing Type:");
 383.227 +	readGroup->addWidget(labelROUTING, 17, 0);
 383.228 +	readGroup->addWidget(lineROUTING, 17, 1);
 383.229 +
 383.230 +	QLabel *labelQUEUE = new QLabel("Queue Type:");
 383.231 +	readGroup->addWidget(labelQUEUE, 18, 0);
 383.232 +	readGroup->addWidget(lineQUEUE, 18, 1);
 383.233 +
 383.234 +	QLabel *labelCONTINIUSUPDATE = new QLabel("Continius update:");
 383.235 +	readGroup->addWidget(labelCONTINIUSUPDATE, 19, 0);
 383.236 +	readGroup->addWidget(lineCONTINIUSUPDATE, 19, 1);
 383.237 +
 383.238 +	QLabel *labelSTORAGEPATH = new QLabel("Storage Path:");
 383.239 +	readGroup->addWidget(labelSTORAGEPATH, 20, 0);
 383.240 +	readGroup->addWidget(lineSTORAGEPATH, 20, 1);
 383.241 +
 383.242 +	QLabel *labelLOGPATH = new QLabel("Log Path:");
 383.243 +	readGroup->addWidget(labelLOGPATH, 21, 0);
 383.244 +	readGroup->addWidget(lineLOGPATH, 21, 1);
 383.245 +
 383.246 +	QLabel *labelMSGPATH = new QLabel("Messages Path:");
 383.247 +	readGroup->addWidget(labelMSGPATH, 22, 0);
 383.248 +	readGroup->addWidget(lineMSGPATH, 22, 1);
 383.249 +
 383.250 +	QLabel *labelAGEFILENODES = new QLabel("Age Nodes on Startup:");
 383.251 +	readGroup->addWidget(labelAGEFILENODES, 23, 0);
 383.252 +	readGroup->addWidget(lineAGEFILENODES, 23, 1);
 383.253 +
 383.254 +	QLabel *labelUSEFILENODES = new QLabel("Store Nodes To File:");
 383.255 +	readGroup->addWidget(labelUSEFILENODES, 24, 0);
 383.256 +	readGroup->addWidget(lineUSEFILENODES, 24, 1);
 383.257 +
 383.258 +	QLabel *labelWRITETOFILETIMER = new QLabel("File Writing Timer:");
 383.259 +	readGroup->addWidget(labelWRITETOFILETIMER, 25, 0);
 383.260 +	readGroup->addWidget(lineWRITETOFILETIMER, 25, 1);
 383.261 +
 383.262 +	QLabel *labelUSEFILEBUNDLES = new QLabel("Store Bundels To Files:");
 383.263 +	readGroup->addWidget(labelUSEFILEBUNDLES, 26, 0);
 383.264 +	readGroup->addWidget(lineUSEFILEBUNDLES, 26, 1);
 383.265 +
 383.266 +
 383.267 +	QLabel *labelLOGGING = new QLabel("Logging:");
 383.268 +	readGroup->addWidget(labelLOGGING, 27, 0);
 383.269 +	readGroup->addWidget(lineLOGGING, 27, 1);
 383.270 +
 383.271 +	QLabel *labelUSETTL = new QLabel("Use TTL:");
 383.272 +	readGroup->addWidget(labelUSETTL, 28, 0);
 383.273 +	readGroup->addWidget(lineUSETTL, 28, 1);
 383.274 +
 383.275 +	QLabel *labelTTL = new QLabel("TTL:");
 383.276 +	readGroup->addWidget(labelTTL, 29, 0);
 383.277 +	readGroup->addWidget(lineTTL, 29, 1);
 383.278 +
 383.279 +	QLabel *labelACKS = new QLabel("Use ACKs:");
 383.280 +	readGroup->addWidget(labelACKS, 30, 0);
 383.281 +	readGroup->addWidget(lineACKS, 30, 1);
 383.282 +
 383.283 +
 383.284 +
 383.285 +
 383.286 + 	readBox->setFixedSize(450, 635);
 383.287 +	readBox->setLayout(readGroup);
 383.288 +	Bundle *msg = new Bundle;
 383.289 +	//Define final layout
 383.290 +	QVBoxLayout *layout = new QVBoxLayout;
 383.291 +	layout->setDirection(QBoxLayout::LeftToRight);
 383.292 +#ifdef PDAGUI
 383.293 +    setLayout(sendGroup);
 383.294 +#else
 383.295 +    layout->addWidget(sendBox);
 383.296 +	layout->addWidget(readBox);    
 383.297 +    setLayout(layout);
 383.298 +#endif //PDAGUI
 383.299 +}
 383.300 +
 383.301 +void InfoWidget::loadConfiguration()
 383.302 +{
 383.303 +	ReadFile conf;
 383.304 +	lineNODEID = new QLineEdit();
 383.305 +	lineNODEID->setText(QString("%1").arg(conf.getNodeId()));
 383.306 +
 383.307 +	lineNODENAME = new QLineEdit();
 383.308 +	lineNODENAME->setText(conf.getNodeName());
 383.309 +
 383.310 +	lineNODEIP = new QLineEdit();
 383.311 +	lineNODEIP->setText(conf.getNodeIp().toString());
 383.312 +
 383.313 +	lineNODEIP2 = new QLineEdit();
 383.314 +	lineNODEIP2->setText(conf.getNodeIp2().toString());
 383.315 +
 383.316 +	lineNODEBROADCAST = new QLineEdit();
 383.317 +	lineNODEBROADCAST->setText(conf.getBroadcast().toString());
 383.318 +
 383.319 +	lineBROADCAST = new QLineEdit();
 383.320 +	lineBROADCAST->setText(QString("%1").arg(conf.getBroadcastTimer()));
 383.321 +
 383.322 +	lineAGINGTIMER = new QLineEdit();
 383.323 +	lineAGINGTIMER->setText(QString("%1").arg(conf.getAgingTimer()));
 383.324 +
 383.325 +	linePENCOUNTER = new QLineEdit();
 383.326 +	linePENCOUNTER->setText(QString("%1").arg(conf.getPEncounter()));
 383.327 +
 383.328 +	lineBETA = new QLineEdit();
 383.329 +	lineBETA->setText(QString("%1").arg(conf.getBeta()));
 383.330 +
 383.331 +	lineGAMMA = new QLineEdit();
 383.332 +	lineGAMMA->setText(QString("%1").arg(conf.getGamma()));
 383.333 +	
 383.334 +	lineALIVE = new QLineEdit();
 383.335 +	lineALIVE->setText(QString("%1").arg(conf.getAlive()));
 383.336 +	
 383.337 +	lineHELLOTIMER = new QLineEdit();
 383.338 +	lineHELLOTIMER->setText(QString("%1").arg(conf.getHello()));
 383.339 +	
 383.340 +	lineINITIATORTIMER = new QLineEdit();
 383.341 +	lineINITIATORTIMER->setText(QString("%1").arg(conf.getInitiatorTimer()));
 383.342 +	
 383.343 +	lineLISTENERTIMER = new QLineEdit();
 383.344 +	lineLISTENERTIMER->setText(QString("%1").arg(conf.getListenerTimer()));
 383.345 +	
 383.346 +	lineDTNHOSTNAME = new QLineEdit();
 383.347 +	lineDTNHOSTNAME->setText(conf.getDTNHostName().toString());
 383.348 +	
 383.349 +	lineDNTTIMER = new QLineEdit();
 383.350 +	lineDNTTIMER->setText(QString("%1").arg(conf.getDTNTimer()));
 383.351 +
 383.352 +	lineSTORAGESIZE = new QLineEdit();
 383.353 +	lineSTORAGESIZE->setText(QString("%1").arg(conf.getStorageSize()));
 383.354 +
 383.355 +	lineMEMORYSIZE = new QLineEdit();
 383.356 +	lineMEMORYSIZE->setText(QString("%1").arg(conf.getMemoryStorageSize()));
 383.357 +
 383.358 +	lineROUTING = new QLineEdit();
 383.359 +	lineROUTING->setText(QString("%1").arg(conf.getRouting()));
 383.360 +
 383.361 +	lineQUEUE = new QLineEdit();
 383.362 +	lineQUEUE->setText(QString("%1").arg(conf.getQueue()));
 383.363 +
 383.364 +	lineCONTINIUSUPDATE = new QLineEdit();
 383.365 +	lineCONTINIUSUPDATE->setText(QString("%1").arg(conf.getContiniusUpdate()));
 383.366 +
 383.367 +	lineSTORAGEPATH = new QLineEdit();
 383.368 +	lineSTORAGEPATH->setText(QString("%1").arg(conf.getStoragePath()));
 383.369 +
 383.370 +	lineLOGPATH = new QLineEdit();
 383.371 +	lineLOGPATH->setText(QString("%1").arg(conf.getLogPath()));
 383.372 +
 383.373 +	lineMSGPATH = new QLineEdit();
 383.374 +	lineMSGPATH->setText(QString("%1").arg(conf.getMsgPath()));
 383.375 +
 383.376 +	lineAGEFILENODES = new QLineEdit();
 383.377 +	lineAGEFILENODES->setText(QString("%1").arg(conf.getAgeFileNodes()));
 383.378 +
 383.379 +	lineUSEFILENODES = new QLineEdit();
 383.380 +	lineUSEFILENODES->setText(QString("%1").arg(conf.getUseFileNodes()));
 383.381 +
 383.382 +	lineWRITETOFILETIMER = new QLineEdit();
 383.383 +	lineWRITETOFILETIMER->setText(QString("%1").arg(conf.getWriteToFileTimer()));
 383.384 +
 383.385 +	lineUSEFILEBUNDLES = new QLineEdit();
 383.386 +	lineUSEFILEBUNDLES->setText(QString("%1").arg(conf.getUseFileBundles()));
 383.387 +
 383.388 +	lineLOGGING = new QLineEdit();
 383.389 +	lineLOGGING->setText(QString("%1").arg(conf.getLogOption()));
 383.390 +
 383.391 +	
 383.392 +	lineUSETTL = new QLineEdit();
 383.393 +	lineUSETTL->setText(QString("%1").arg(conf.getUseTTL()));
 383.394 +
 383.395 +	lineTTL = new QLineEdit();
 383.396 +	lineTTL->setText(QString("%1").arg(conf.getTTL()));
 383.397 +
 383.398 +	lineACKS = new QLineEdit();
 383.399 +	lineACKS->setText(QString("%1").arg(conf.getUseACKS()));
 383.400 +
 383.401 +}
 383.402 +
 383.403 +
 383.404 +
 383.405 +
 383.406 +
 383.407 +
 383.408 +void InfoWidget::yellowLedOff()
 383.409 +{
 383.410 +	labelYellow->setPixmap(*yellowOff);
 383.411 +	yellow=false;
 383.412 +	yellowLine->setText("No transmission...");
 383.413 +	yellowTimer->stop();
 383.414 +}
 383.415 +
 383.416 +void InfoWidget::redLedOff()
 383.417 +{
 383.418 +	labelRed->setPixmap(*redOff);
 383.419 +	redLine->setText("No error...");
 383.420 +	redTimer->stop();
 383.421 +}
 383.422 +
 383.423 +
 383.424 +
 383.425 +void InfoWidget::getTraffic(int tr)
 383.426 +{
 383.427 +   trafficSum=+tr;
 383.428 +   yellowLine->setText("Transmitting "+QString("%1").arg(tr)+" bytes...");
 383.429 + 
 383.430 +   yellowTimer->start(YELLOWONTIME);//(tr/MAXRATE)*1000);
 383.431 +   labelYellow->setPixmap(*yellowOn);
 383.432 +}
 383.433 +
 383.434 +//Calculating the transfer speed in GUI
 383.435 +void InfoWidget::calculateTraffic()
 383.436 +{
 383.437 +	trafficRate=(trafficSum)/(1000.0/AVRTIME);
 383.438 +	trafficSum=0;
 383.439 +	speedBar->setValue (trafficRate);
 383.440 +}
 383.441 +
 383.442 +
 383.443 +void InfoWidget::getNewConnection(int c)
 383.444 +{
 383.445 +	greenLine->setText("Connection Nr. "+QString("%1").arg(c)+" created...");
 383.446 +	labelGreen->setPixmap(*greenOn);
 383.447 +}
 383.448 +
 383.449 +
 383.450 +void InfoWidget::getNewConnectionStatus(int c)
 383.451 +{
 383.452 +
 383.453 +
 383.454 +	switch (c)
 383.455 +	{
 383.456 +	case STATE_SYN:		greenLine->setText("HELLO SYN...");break;
 383.457 +	case STATE_SYNACK:	greenLine->setText("HELLO SYNACK...");break;
 383.458 +	case STATE_ACK:		greenLine->setText("HELLO ACK...");break;
 383.459 +	case STATE_DICT:	greenLine->setText("DICTIONARY...");break;
 383.460 +	case STATE_RIB:		greenLine->setText("RUTING INFORMATION BASE...");break;
 383.461 +	case STATE_BOFF:	greenLine->setText("BUNDLE OFFER...");break;
 383.462 +	case STATE_BREQ:	greenLine->setText("BUNDLE REQUEST...");break;
 383.463 +	case STATE_BUNDLE:	greenLine->setText("BUNDLE DATA...");break;
 383.464 +	case STATE_ERROR:	greenLine->setText("ERROR  STATE...");break;
 383.465 +	default:	greenLine->setText("No connection...");labelGreen->setPixmap(*greenOff);break;
 383.466 +	}
 383.467 +}
 383.468 +
 383.469 +void InfoWidget::getRemovedConnection(int c)
 383.470 +{
 383.471 +	redLine->setText("Connection Nr. "+QString("%1").arg(c)+" removed...");
 383.472 +	redTimer->start(REDONTIME);
 383.473 +	labelRed->setPixmap(*redOn);
 383.474 +}
 383.475 +
 383.476 +void InfoWidget::getUsedMemoryStorage(int s)
 383.477 +{
 383.478 +	memoryBar->setValue (s);
 383.479 +}
 383.480 +
 383.481 +void InfoWidget::getUsedFileStorage(int s)
 383.482 +{
 383.483 +	fileBar->setValue (s);
 383.484 +}
 383.485 +
 383.486 +
 383.487 +//Receives a list of active connection and add them to the list
 383.488 +void InfoWidget:: getConnectionList(QList <ConnectionInfo> list)
 383.489 +{
 383.490 +#ifdef PDAGUI
 383.491 +	/* send the connection list to the connection tab */
 383.492 +	emit sendConnectionList(list);
 383.493 +#else
 383.494 +	ConnectionInfo tempNode;
 383.495 +	conTable->clear();
 383.496 +        QStringList horizontalConLabels;
 383.497 +	horizontalConLabels << "ID" << "IP" << "Alive" << "State";
 383.498 +	conTable->setHorizontalHeaderLabels(horizontalConLabels);
 383.499 +	for (int i = 0; i < list.size(); ++i)
 383.500 +	{
 383.501 +		tempNode=list.at(i);
 383.502 +		//Adding ID
 383.503 +		QString text = QString("%1").arg((int)tempNode.id);
 383.504 +		QTableWidgetItem *newItem = new QTableWidgetItem(text);
 383.505 +		conTable->setItem(i, 0, newItem);
 383.506 +		//Adding IP
 383.507 +		text = tempNode.ip.toString();
 383.508 +		newItem = new QTableWidgetItem(text);
 383.509 +		conTable->setItem(i, 1, newItem);
 383.510 +		//Adding Alive variable
 383.511 +		text = QString("%1").arg((int)tempNode.alive);
 383.512 +		newItem = new QTableWidgetItem(text);
 383.513 +		conTable->setItem(i, 2, newItem);
 383.514 +		//Adding State of the TCP Connection
 383.515 +		int x = tempNode.tcpSocket->state();
 383.516 +		text = QString("%1").arg((int)x);
 383.517 +		newItem = new QTableWidgetItem(text);
 383.518 +		conTable->setItem(i, 3, newItem);
 383.519 +	}
 383.520 +#endif //PDAGUI
 383.521 + }
   384.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   384.2 +++ b/x86/x86/infoWidget.h	Thu Jun 26 17:39:40 2008 +0100
   384.3 @@ -0,0 +1,153 @@
   384.4 +#ifndef INFOWIDGET_H
   384.5 +#define INFOWIDGET_H
   384.6 +#include <QtGui>
   384.7 +#include <QtNetwork>
   384.8 +#include <bundle.h>
   384.9 +#include <nodeManager.h>
  384.10 +#include <neighbourAwareness.h>
  384.11 +
  384.12 +class InfoWidget : public QWidget
  384.13 +{
  384.14 +
  384.15 +	Q_OBJECT
  384.16 +
  384.17 +private:
  384.18 +		
  384.19 +	QLineEdit *label;
  384.20 +
  384.21 +	
  384.22 +public:
  384.23 +	int seq;
  384.24 +	QComboBox *combo;
  384.25 +	QTextBrowser *readText;
  384.26 +	QFileDialog *file;
  384.27 +	QLineEdit *src;
  384.28 +	QLineEdit *dst;
  384.29 +	QLineEdit *opt;
  384.30 +	QTextEdit *line;
  384.31 +	QLineEdit *srcLine;
  384.32 +	QLineEdit *dstLine;
  384.33 +	InfoWidget(NodeManager*,QWidget *parent = 0);
  384.34 +	NodeManager* nodeManager;
  384.35 +	QTimer* timer;
  384.36 +	bool firstTime;
  384.37 +	QListWidget* msgList;
  384.38 +	QDir dir;
  384.39 +	//Status variables
  384.40 +	QProgressBar *memoryBar;
  384.41 +	QProgressBar *fileBar;
  384.42 +	QProgressBar *speedBar;
  384.43 +	QLabel *labelRed;
  384.44 +	QLabel *labelGreen;
  384.45 +	QLabel *labelYellow;
  384.46 +	QLineEdit *greenLine;
  384.47 +	QLineEdit *redLine;
  384.48 +	QLineEdit *yellowLine;
  384.49 +	int trafficSum;
  384.50 +	float trafficRate;
  384.51 +	QTimer *trafficTimer;
  384.52 +	QTimer *yellowTimer;
  384.53 +	QTimer *redTimer;
  384.54 +	QPixmap	*redOn;
  384.55 +	QPixmap	*redOff;
  384.56 +	QPixmap	*yellowOn;
  384.57 +	QPixmap	*yellowOff;
  384.58 +	QPixmap	*greenOn;
  384.59 +	QPixmap	*greenOff;
  384.60 +	bool yellow;
  384.61 +	QTableWidget* conTable;
  384.62 +
  384.63 +	
  384.64 +	//Configuration variables
  384.65 +	int NODEID;
  384.66 +	QString NODENAME;
  384.67 +	QHostAddress NODEIP;
  384.68 +	QHostAddress NODEIP2;
  384.69 +	QHostAddress NODEBROADCAST;
  384.70 +	int BROADCAST;
  384.71 +	int AGINGTIMER;
  384.72 +	float PENCOUNTER;
  384.73 +	float BETA;
  384.74 +	float GAMMA;
  384.75 +	int HELLO;
  384.76 +	int ALIVE;
  384.77 +	int HELLOTIMER;
  384.78 +	int INITIATORTIMER;
  384.79 +	int LISTENERTIMER;
  384.80 +	QHostAddress DTNHOSTNAME;
  384.81 +	int DNTTIMER;
  384.82 +	int STORAGESIZE;
  384.83 +	int MEMORYSIZE;
  384.84 +	int ROUTING;
  384.85 +	int QUEUE;
  384.86 +	int CONTINIUSUPDATE;
  384.87 +	QString STORAGEPATH;
  384.88 +	QString LOGPATH;
  384.89 +	QString MSGPATH;
  384.90 +	int AGEFILENODES;
  384.91 +	int USEFILENODES;
  384.92 +	int WRITETOFILETIMER;
  384.93 +	int USEFILEBUNDLES;
  384.94 +	int LOGGING;
  384.95 +
  384.96 +
  384.97 +	QLineEdit * lineNODEID;
  384.98 +	QLineEdit * lineNODENAME;
  384.99 +	QLineEdit * lineNODEIP;
 384.100 +	QLineEdit * lineNODEIP2;
 384.101 +	QLineEdit * lineNODEBROADCAST;
 384.102 +	QLineEdit * lineBROADCAST;
 384.103 +	QLineEdit * lineAGINGTIMER;
 384.104 +	QLineEdit * linePENCOUNTER;
 384.105 +	QLineEdit * lineBETA;
 384.106 +	QLineEdit * lineGAMMA;
 384.107 +	QLineEdit * lineHELLO;
 384.108 +	QLineEdit * lineALIVE;
 384.109 +	QLineEdit * lineHELLOTIMER;
 384.110 +	QLineEdit * lineINITIATORTIMER;
 384.111 +	QLineEdit * lineLISTENERTIMER;
 384.112 +	QLineEdit * lineDTNHOSTNAME;
 384.113 +	QLineEdit * lineDNTTIMER;
 384.114 +	QLineEdit * lineSTORAGESIZE;
 384.115 +	QLineEdit * lineMEMORYSIZE;
 384.116 +	QLineEdit * lineROUTING;
 384.117 +	QLineEdit * lineQUEUE;
 384.118 +	QLineEdit * lineCONTINIUSUPDATE;
 384.119 +	QLineEdit * lineSTORAGEPATH;
 384.120 +	QLineEdit * lineLOGPATH;
 384.121 +	QLineEdit * lineMSGPATH;
 384.122 +	QLineEdit * lineAGEFILENODES;
 384.123 +	QLineEdit * lineUSEFILENODES;
 384.124 +	QLineEdit * lineWRITETOFILETIMER;
 384.125 +	QLineEdit * lineUSEFILEBUNDLES;
 384.126 +	QLineEdit * lineLOGGING;
 384.127 +	QLineEdit * lineUSETTL;
 384.128 +	QLineEdit * lineTTL;
 384.129 +	QLineEdit * lineACKS;
 384.130 +
 384.131 +
 384.132 +
 384.133 +
 384.134 +signals:
 384.135 +	void sendConnectionList(QList <ConnectionInfo>);
 384.136 +
 384.137 +public slots:
 384.138 +	void loadConfiguration();
 384.139 +	void calculateTraffic();
 384.140 +	void yellowLedOff();	
 384.141 +	void redLedOff();
 384.142 +
 384.143 +	void getTraffic(int);
 384.144 +	void getConnectionList(QList <ConnectionInfo>);
 384.145 +	void getNewConnection(int);
 384.146 +	void getNewConnectionStatus(int);
 384.147 +	void getRemovedConnection(int);
 384.148 +	void getUsedFileStorage(int);
 384.149 +	void getUsedMemoryStorage(int);
 384.150 +
 384.151 +
 384.152 +};
 384.153 +
 384.154 +#endif
 384.155 +
 384.156 +
   385.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   385.2 +++ b/x86/x86/main.cpp	Thu Jun 26 17:39:40 2008 +0100
   385.3 @@ -0,0 +1,75 @@
   385.4 +#ifdef GUI
   385.5 +#include <QtGui>
   385.6 +#include <debugWidget.h>
   385.7 +#endif /*GUI*/
   385.8 +#include <QtCore>
   385.9 +#include <neighbourAwareness.h>
  385.10 +#ifdef DTN_INTERFACE
  385.11 +#include <DTNInterface.h>
  385.12 +#endif /*DTN_INTERFACE*/
  385.13 +#include <messageFile.h>
  385.14 +#include <readFile.h>
  385.15 +
  385.16 +using namespace std;
  385.17 +
  385.18 +
  385.19 +int main(int argc, char *argv[])
  385.20 +{
  385.21 +#ifdef GUI
  385.22 +	QApplication app(argc, argv);
  385.23 +#else
  385.24 +	QCoreApplication app(argc, argv);
  385.25 +#endif /*GUI*/
  385.26 +	ReadFile* conf;
  385.27 +	conf = new ReadFile;
  385.28 +	//Prepare Log File
  385.29 +	if(conf->getLogOption()==1)
  385.30 +	{
  385.31 +		MessageFile *log;
  385.32 +		log = new MessageFile;
  385.33 +		log->set("startup.log", 1000000, 5);
  385.34 +		log->addLog(0,(QString)"Starting Prophet!");
  385.35 +	}
  385.36 +
  385.37 +	//Create bundle manager
  385.38 +	BundleManager* mainBundleMananger = new BundleManager(conf->getNodeId());
  385.39 +	//Create node manager
  385.40 +	NodeManager* mainNodeManager = new NodeManager();
  385.41 +	//Neighbor Awarness
  385.42 +	NeighAware* neighbourawareness = new NeighAware(mainBundleMananger,mainNodeManager);
  385.43 +#ifdef DTN_INTERFACE
  385.44 +	//Create DTN interface
  385.45 +	DTNInterface* mainDTNInterface = new DTNInterface(mainBundleMananger,mainNodeManager);
  385.46 +	mainDTNInterface->connect(mainDTNInterface,SIGNAL(sendBundle(Bundle)),mainBundleMananger,SLOT(addBundle(Bundle)));
  385.47 +	mainDTNInterface->connect(mainBundleMananger,SIGNAL(sendDeliveredBundle(Bundle)),mainDTNInterface,SLOT(receiveBundle(Bundle)));
  385.48 +#endif /*DTN_INTERFACE*/
  385.49 +#ifdef GUI
  385.50 +	//Create debug
  385.51 +	DebugWidget* debugWidget = new DebugWidget(mainNodeManager,mainBundleMananger);
  385.52 +	debugWidget->show();
  385.53 +	//Connect Bundle manager, Node manager and Debug widget
  385.54 +	debugWidget->connect(mainBundleMananger,SIGNAL(sendDebugBundleList(QList<Bundle>)),debugWidget,SLOT(getBundleList(QList<Bundle>)));
  385.55 +	debugWidget->connect(debugWidget,SIGNAL(sendAppBundle(Bundle)),mainBundleMananger,SLOT(addBundle(Bundle)));
  385.56 +	debugWidget->connect(mainBundleMananger,SIGNAL(sendFileStorage(int)),debugWidget,SLOT(getUsedFileStorage(int)));
  385.57 +	debugWidget->connect(mainBundleMananger,SIGNAL(sendMemoryStorage(int)),debugWidget,SLOT(getUsedMemoryStorage(int)));
  385.58 +	debugWidget->connect(debugWidget,SIGNAL(removeBundle(int)),mainBundleMananger,SLOT(removeBundle(int)));
  385.59 +	debugWidget->connect(debugWidget,SIGNAL(removeAllBundles()),mainBundleMananger,SLOT(removeAllBundles()));
  385.60 +	//Updating bundle destinations
  385.61 +	debugWidget->connect(mainNodeManager,SIGNAL(updatedNodeList(NodeManager*)),mainBundleMananger,SLOT(updateBundlesDestinations(NodeManager*)));
  385.62 +#ifdef DTN_INTERFACE
  385.63 +	//Connect DTN Inteface and Debug widget
  385.64 +	debugWidget->connect(mainDTNInterface,SIGNAL(sendLog(QString)),debugWidget,SLOT(getLog(QString)));
  385.65 +#endif /*DTN_INTERFACE*/
  385.66 +	//Connect Node manager and Debug widget
  385.67 +	debugWidget->connect(mainNodeManager,SIGNAL(sendDebugNodeList(QList<Node>)),debugWidget,SLOT(getNodeList(QList<Node>)));
  385.68 +	debugWidget->connect(neighbourawareness,SIGNAL(sendDebugConList(QList<ConnectionInfo>)),debugWidget,SLOT(getConnectionList(QList<ConnectionInfo>)));
  385.69 +	debugWidget->connect(neighbourawareness,SIGNAL(traffic(int)),debugWidget,SLOT(getTraffic(int)));
  385.70 +	debugWidget->connect(neighbourawareness, SIGNAL(newConnectionStatus(int)), 	debugWidget, SLOT(getNewConnectionStatus(int)));
  385.71 +	debugWidget->connect(neighbourawareness, SIGNAL(newConnection(int)), 	debugWidget, SLOT(getNewConnection(int)));
  385.72 +	debugWidget->connect(neighbourawareness, SIGNAL(removedConnection(int)), debugWidget, SLOT(getRemovedConnection(int)));
  385.73 +#endif /*GUI*/
  385.74 +	delete conf;
  385.75 +	app.exec();
  385.76 +	return 0;
  385.77 +
  385.78 +}
   386.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   386.2 +++ b/x86/x86/main.h	Thu Jun 26 17:39:40 2008 +0100
   386.3 @@ -0,0 +1,4 @@
   386.4 +#ifdef GUI
   386.5 +#include <QtGui>
   386.6 +#endif
   386.7 +
   387.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   387.2 +++ b/x86/x86/messageFile.cpp	Thu Jun 26 17:39:40 2008 +0100
   387.3 @@ -0,0 +1,135 @@
   387.4 +#include <messageFile.h>
   387.5 +#include <readFile.h>
   387.6 +
   387.7 +#ifdef Q_WS_X11
   387.8 +#include <sys/types.h>
   387.9 +#include <sys/stat.h> 
  387.10 +#endif
  387.11 +
  387.12 +#include <QTextStream>
  387.13 +
  387.14 +void MessageFile::set(QString fileName, int fileSize, int fileNo)
  387.15 +{
  387.16 +	msgFileName = fileName;
  387.17 +	msgFileSize = fileSize;
  387.18 +	msgFileNo = fileNo;
  387.19 +	mutex = new QMutex;
  387.20 +	dt = new QDateTime;
  387.21 +	ReadFile conf;
  387.22 +	storagePath=conf.getLogPath();
  387.23 +	dir.setPath(storagePath);
  387.24 +	//create the directory if it does not exist
  387.25 +	if(!dir.exists())
  387.26 +		dir.mkpath(dir.path());
  387.27 +
  387.28 +}
  387.29 +
  387.30 +
  387.31 +void MessageFile::saveMessage(QString& message)
  387.32 +{
  387.33 +	saveMessage(message, false);
  387.34 +}
  387.35 +
  387.36 +void MessageFile::saveMessage(QString& message, bool datetime)
  387.37 +{
  387.38 +	QString dateTime;
  387.39 +	if (datetime == true)
  387.40 +	{
  387.41 +		mutex->lock();
  387.42 +		(*dt) = dt->currentDateTime();
  387.43 +		dateTime = dt->toString("MM/dd/yyyy hh:mm:ss.zzz ");
  387.44 +		mutex->unlock();
  387.45 +	}
  387.46 +	dateTime += message;
  387.47 +	saveMessage(0, dateTime);
  387.48 +
  387.49 +}
  387.50 +
  387.51 +
  387.52 +void MessageFile::saveMessage(int type, QString& message)
  387.53 +{
  387.54 +//	qDebug(message);
  387.55 +	mutex->lock();
  387.56 +	int i = 0;
  387.57 +	bool exists;
  387.58 +	QFile* f;
  387.59 +	f = new QFile(dir.filePath(msgFileName));
  387.60 +	exists = f->exists();
  387.61 +	if (f->open(QIODevice::WriteOnly|QIODevice::Append) == true)
  387.62 +	{
  387.63 +		QTextStream stream(f);
  387.64 +		stream << message;
  387.65 +		stream << "\r\n";
  387.66 +		i = f->size();
  387.67 +//		qDebug(QString("MessageFile size: %1 %2\r\n").arg(i).arg(msgFileSize));
  387.68 +		f->close();
  387.69 +#ifdef Q_WS_X11
  387.70 +		if (exists == false)
  387.71 +			chmod(msgFileName.toAscii(), S_IROTH|S_IWOTH|S_IRGRP|S_IWGRP|S_IRUSR|S_IWUSR);
  387.72 +#endif
  387.73 +	}
  387.74 +	delete f;
  387.75 +	if (i > msgFileSize)
  387.76 +	{
  387.77 +		QDir dir;
  387.78 +		QString fileNameOld;
  387.79 +		QString fileNameNew;
  387.80 +		i = msgFileNo;
  387.81 +		while (i > 1)
  387.82 +		{
  387.83 +			fileNameOld = msgFileName;
  387.84 +			fileNameOld += QString(".%1").arg(i);
  387.85 +			dir.remove(fileNameOld);
  387.86 +			i--;
  387.87 +			fileNameNew = msgFileName;
  387.88 +			fileNameNew += QString(".%1").arg(i);
  387.89 +			dir.rename(fileNameNew, fileNameOld);
  387.90 +		}
  387.91 +		fileNameOld = msgFileName;
  387.92 +		fileNameOld += QString(".%1").arg(i);
  387.93 +		dir.remove(fileNameOld);
  387.94 +		i--;
  387.95 +		fileNameNew = msgFileName;
  387.96 +		dir.rename(fileNameNew, fileNameOld);
  387.97 +	}
  387.98 +	mutex->unlock();
  387.99 +}
 387.100 +
 387.101 +void MessageFile::loadList(QStringList& sl, unsigned int maxItemNo)
 387.102 +{
 387.103 +	mutex->lock();
 387.104 +	sl.clear();
 387.105 +	QString line;
 387.106 +	QFile* f;
 387.107 +	f = new QFile(msgFileName);
 387.108 +	if (f->open(QIODevice::ReadOnly) == true)
 387.109 +	{
 387.110 +		QTextStream stream(f);
 387.111 +		while ((!stream.atEnd()) && (maxItemNo > 0))
 387.112 +		{
 387.113 +			sl.prepend(stream.readLine());
 387.114 +			maxItemNo--;
 387.115 +		}
 387.116 +		f->close();
 387.117 +	}
 387.118 +	mutex->unlock();
 387.119 +}
 387.120 +
 387.121 +void MessageFile::addLog(int indet,QString message)
 387.122 +{
 387.123 +	QString dateTime;
 387.124 +	QString id;
 387.125 +	id.sprintf(" %03d>> ", indet);
 387.126 +	if (1)
 387.127 +	{
 387.128 +		mutex->lock();
 387.129 +		(*dt) = dt->currentDateTime();
 387.130 +		dateTime = dt->toString("MM/dd/yyyy hh:mm:ss.zzz ");
 387.131 +		mutex->unlock();
 387.132 +	}
 387.133 +	dateTime += id;
 387.134 +	dateTime += message;
 387.135 +	saveMessage(0, dateTime);
 387.136 +
 387.137 +}
 387.138 +
   388.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   388.2 +++ b/x86/x86/messageFile.h	Thu Jun 26 17:39:40 2008 +0100
   388.3 @@ -0,0 +1,69 @@
   388.4 +#ifndef MESSAGEFILE_H
   388.5 +#define MESSAGEFILE_H
   388.6 +
   388.7 +#include <qobject.h>
   388.8 +#include <qfile.h>
   388.9 +#include <qdir.h>
  388.10 +#include <qmutex.h>
  388.11 +#include <qstringlist.h>
  388.12 +#include <qdatetime.h>
  388.13 +
  388.14 +//! Handles writing and reading logfiles.
  388.15 +/*!
  388.16 + * 
  388.17 + */
  388.18 +class MessageFile : public QObject
  388.19 +{
  388.20 +	Q_OBJECT
  388.21 +
  388.22 +public:
  388.23 +	//! Sets the parameters for message file storage.
  388.24 +	/*!
  388.25 +	 * @param fileName the name of the file(s) to store messages in.
  388.26 +	 * @param fileSize when a message file grows to this size, a new file 
  388.27 +	 * is created.
  388.28 +	 * @param fileNo the value the file number counter should be 
  388.29 +	 * initialized to.
  388.30 +	 */
  388.31 +	virtual void set(QString fileName, int fileSize, int fileNo);
  388.32 +	
  388.33 +	//! Reads a list of messages from the message file.
  388.34 +	/*!
  388.35 +	 * @param sl the stringlist where the result is put.
  388.36 +	 * @param maxItemNo the maximum number of items to read from the file.
  388.37 +	 */
  388.38 +	virtual void loadList(QStringList& sl, unsigned int maxItemNo = 0xFFFFFFFF);
  388.39 +	void MessageFile::addLog(int indet,QString message);
  388.40 +
  388.41 +public slots:
  388.42 +	//! Saves a message to file. (Internal?) 
  388.43 +	/*!
  388.44 +	 * A new file is created if the old one gets too big.
  388.45 +	 * @param type not used.
  388.46 +	 * @param message the message to be saved to file.
  388.47 +	 */
  388.48 +	virtual void saveMessage(int type, QString& message);
  388.49 +	
  388.50 +	//! Saves a message to file without a timestamp.
  388.51 +	virtual void saveMessage(QString& message);
  388.52 +	
  388.53 +	//! Saves a message to disk with optional timestamp.
  388.54 +	/*!
  388.55 +	 * @param message the message to save to file.
  388.56 +	 * @param datetime if true the current date and time (MM/dd/yyyy 
  388.57 +	 * hh:mm:ss:zzz) will be written along with the message. If false, 
  388.58 +	 * no timestamp is written to file along with the message.
  388.59 +	 */
  388.60 +	virtual void saveMessage(QString& message, bool datetime);
  388.61 +
  388.62 +protected:
  388.63 +	QString msgFileName;
  388.64 +	int msgFileSize;
  388.65 +	int msgFileNo;
  388.66 +	QMutex* mutex;
  388.67 +	QDateTime* dt;
  388.68 +	QString storagePath;
  388.69 +	QDir dir;
  388.70 +};
  388.71 +
  388.72 +#endif
   389.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   389.2 +++ b/x86/x86/msgReadWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   389.3 @@ -0,0 +1,113 @@
   389.4 +#include <QtGui>
   389.5 +#include <msgReadWidget.h>
   389.6 +#include <readFile.h>
   389.7 +
   389.8 +
   389.9 +
  389.10 +MsgReadWidget::MsgReadWidget(NodeManager* nodeMng,BundleManager* bundleMng,QWidget *parent)
  389.11 +        : QWidget(parent)
  389.12 +{
  389.13 +	nodeManager = nodeMng;
  389.14 +	bundleManager = bundleMng;
  389.15 +
  389.16 +	dst = new QLineEdit();
  389.17 +	dst->setMaxLength(3); 
  389.18 +	//Options
  389.19 +	QLabel *labelOpt = new QLabel(this);
  389.20 +    labelOpt->setText("Received messages:");
  389.21 +	opt = new QLineEdit();
  389.22 +	opt->setMaxLength(3); 
  389.23 +	//sourceString
  389.24 +	QLabel *srcStr = new QLabel(this);
  389.25 +    srcStr->setText("Content:");
  389.26 +	srcLine = new QLineEdit();
  389.27 +	//destinationString
  389.28 +//	QLabel *dstStr = new QLabel(this);
  389.29 +   // dstStr->setText("DestinationString");
  389.30 +	dstLine = new QLineEdit();
  389.31 +	
  389.32 +	//sendGroup->addWidget(dst, 1, 1);
  389.33 +	//sendGroup->addWidget(combo, 2, 1);
  389.34 +
  389.35 +	//sendGroup->addWidget(labelDst, 0, 1);
  389.36 +	//sendGroup->addWidget(dstLine, 3, 1);
  389.37 +
  389.38 +	//sendGroup->addWidget(labelOpt, 0, 2);
  389.39 +	//sendGroup->addWidget(opt, 1, 2);
  389.40 +
  389.41 +	//sendGroup->addWidget(labelMsg, 4, 0);
  389.42 + 	//sendGroup->addWidget(line, 5, 0, 1, 3);
  389.43 +    //sendGroup->addWidget(send, 3, 2);
  389.44 +	 //   sendGroup->addWidget(file, 6, 2);
  389.45 +	///////////////////////////////////////////////////
  389.46 +	readText = new QTextBrowser(this);
  389.47 +	msgList = new QListWidget;
  389.48 +	//Define final layout
  389.49 +	QVBoxLayout *layout = new QVBoxLayout;
  389.50 +	layout->addWidget(labelOpt);
  389.51 +	layout->addWidget(msgList);
  389.52 +	layout->addWidget(srcStr);
  389.53 +	layout->addWidget(readText);
  389.54 +    setLayout(layout);
  389.55 +	//Define connections
  389.56 +//	connect(line, SIGNAL(returnPressed ()(QString)),label,SLOT(setText(QString)));
  389.57 +	//Prepare update timer
  389.58 +	timer = new QTimer();
  389.59 +	connect(timer, SIGNAL(timeout()), this, SLOT(updateLists()));
  389.60 +	connect(msgList, SIGNAL(itemClicked (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
  389.61 +	connect(msgList, SIGNAL(itemDoubleClicked  (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
  389.62 +
  389.63 +
  389.64 +	timer->start(5000);
  389.65 +	firstTime=0;
  389.66 +	ReadFile conf;
  389.67 +	ackOption=conf.getUseACKS();
  389.68 +	QString msgPath=conf.getMsgPath();
  389.69 +	dir.setPath(msgPath);
  389.70 +	//create the dir if it does not exist
  389.71 +	if(!dir.exists())
  389.72 +		dir.mkpath(dir.path());
  389.73 +	sourceId =conf.getNodeId();
  389.74 +	sourceStr = conf.getNodeName();
  389.75 +
  389.76 +}
  389.77 +
  389.78 +void MsgReadWidget::getBundle(Bundle newBundle)
  389.79 +{
  389.80 +	label->setText(newBundle.getData());
  389.81 +}
  389.82 +
  389.83 +void MsgReadWidget::updateLists()
  389.84 +{
  389.85 +	QList<QString> list;
  389.86 +	list = dir.entryList();
  389.87 +	msgList->clear();
  389.88 +	for (ushort i = 0; i < list.size(); ++i) 
  389.89 +	{
  389.90 +		QListWidgetItem *newItem = new QListWidgetItem;
  389.91 +		newItem->setText(list.at(i));
  389.92 +		msgList->insertItem(i, newItem);
  389.93 +	}
  389.94 +}
  389.95 +
  389.96 +void MsgReadWidget::showMsg(QListWidgetItem * item)
  389.97 +{
  389.98 +	QString fileName;
  389.99 +	if(item!=NULL)
 389.100 +	{
 389.101 +		fileName = item->text();
 389.102 +		if(fileName.size()>2)
 389.103 +		{
 389.104 +			QFile file(dir.filePath(fileName));
 389.105 +			if(file.open(QIODevice::ReadOnly))
 389.106 +			{
 389.107 +				QByteArray data;
 389.108 +				data=file.readAll();
 389.109 +				readText->clear();
 389.110 +				readText->insertPlainText(data);
 389.111 +				file.close();
 389.112 +			}
 389.113 +		}
 389.114 +	}
 389.115 +}
 389.116 +
   390.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   390.2 +++ b/x86/x86/msgReadWidget.h	Thu Jun 26 17:39:40 2008 +0100
   390.3 @@ -0,0 +1,49 @@
   390.4 +#ifndef MSGREADWIDGET_H
   390.5 +#define MSGREADWIDGET_H
   390.6 +#include <QtGui>
   390.7 +#include <bundle.h>
   390.8 +#include <nodeManager.h>
   390.9 +#include <bundleManager.h>
  390.10 +
  390.11 +class MsgReadWidget : public QWidget
  390.12 +{
  390.13 +
  390.14 +	Q_OBJECT
  390.15 +
  390.16 +private:
  390.17 +		
  390.18 +	QLineEdit *label;
  390.19 +
  390.20 +	
  390.21 +public:
  390.22 +	QComboBox *combo;
  390.23 +	QTextBrowser *readText;
  390.24 +	QFileDialog *file;
  390.25 +	QLineEdit *src;
  390.26 +	QLineEdit *dst;
  390.27 +	QLineEdit *opt;
  390.28 +	QTextEdit *line;
  390.29 +	QLineEdit *srcLine;
  390.30 +	QLineEdit *dstLine;
  390.31 +	MsgReadWidget(NodeManager*,BundleManager*,QWidget *parent = 0);
  390.32 +	NodeManager* nodeManager;
  390.33 +	BundleManager* bundleManager;
  390.34 +	QTimer* timer;
  390.35 +	bool firstTime;
  390.36 +	QListWidget* msgList;
  390.37 +	QDir dir;
  390.38 +	int sourceId;
  390.39 +	int ackOption;
  390.40 +	QString sourceStr;
  390.41 +
  390.42 +signals:
  390.43 +	
  390.44 +public slots:
  390.45 +	void getBundle(Bundle newBundle);
  390.46 +	void updateLists();
  390.47 +	void showMsg(QListWidgetItem *);
  390.48 +};
  390.49 +
  390.50 +#endif
  390.51 +
  390.52 +
   391.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   391.2 +++ b/x86/x86/msgWidget.cpp	Thu Jun 26 17:39:40 2008 +0100
   391.3 @@ -0,0 +1,233 @@
   391.4 +#include <QtGui>
   391.5 +#include <msgWidget.h>
   391.6 +#include <readFile.h>
   391.7 +
   391.8 +
   391.9 +
  391.10 +MsgWidget::MsgWidget(NodeManager* nodeMng,BundleManager* bundleMng,QWidget *parent)
  391.11 +        : QWidget(parent)
  391.12 +{
  391.13 +#ifndef PDAGUI
  391.14 +	setFixedSize(990, 660);
  391.15 +#endif //PDAGUI
  391.16 +	nodeManager = nodeMng;
  391.17 +	bundleManager = bundleMng;
  391.18 +	connect(nodeMng,SIGNAL(updatedNodeList(NodeManager*)),this,SLOT(updatedNodeList(NodeManager*)));
  391.19 +
  391.20 +#ifndef PDAGUI
  391.21 +	//Send message group
  391.22 +	QGroupBox *sendBox = new QGroupBox("Send message");
  391.23 +#endif //PDAGUI
  391.24 +    //Source
  391.25 +    QLabel *labelSrc = new QLabel(this);
  391.26 +    labelSrc->setText("Select destination:");
  391.27 +	src = new QLineEdit();
  391.28 +	src->setMaxLength(3); 
  391.29 +	//Destination
  391.30 +	QLabel *labelDst = new QLabel(this);
  391.31 +    labelDst->setText("Send message:");
  391.32 +	combo = new QComboBox(this);
  391.33 +	//Message
  391.34 +	QLabel *labelMsg = new QLabel(this);
  391.35 +    labelMsg->setText("Type message here:");
  391.36 +	line = new QTextEdit();
  391.37 +
  391.38 +#ifndef PDAGUI
  391.39 +	dst = new QLineEdit();
  391.40 +	dst->setMaxLength(3); 
  391.41 +	//Options
  391.42 +	QLabel *labelOpt = new QLabel(this);
  391.43 +    labelOpt->setText("Received messages:");
  391.44 +	opt = new QLineEdit();
  391.45 +	opt->setMaxLength(3); 
  391.46 +	//sourceString
  391.47 +	QLabel *srcStr = new QLabel(this);
  391.48 +    srcStr->setText("Content:");
  391.49 +	srcLine = new QLineEdit();
  391.50 +	//destinationString
  391.51 +	QLabel *dstStr = new QLabel(this);
  391.52 +   // dstStr->setText("DestinationString");
  391.53 +	dstLine = new QLineEdit();
  391.54 +#endif //PDAGUI
  391.55 +	//Send
  391.56 +	QPushButton *send= new QPushButton("Send", this);
  391.57 +	//File
  391.58 +	//QFileDialog *file = new QFileDialog(this);	
  391.59 +	//Final grid layout
  391.60 +    QGridLayout *sendGroup = new QGridLayout;
  391.61 +	sendGroup->addWidget(labelSrc, 0, 0);
  391.62 +    sendGroup->addWidget(combo, 1, 0);
  391.63 +
  391.64 +	sendGroup->addWidget(labelDst, 0, 1);
  391.65 +    sendGroup->addWidget(send, 1, 1);
  391.66 +	sendGroup->addWidget(labelMsg, 2, 0);
  391.67 +	sendGroup->addWidget(line, 3, 0, 1, 2);
  391.68 +
  391.69 +	//sendGroup->addWidget(dst, 1, 1);
  391.70 +	//sendGroup->addWidget(combo, 2, 1);
  391.71 +
  391.72 +	//sendGroup->addWidget(labelDst, 0, 1);
  391.73 +	//sendGroup->addWidget(dstLine, 3, 1);
  391.74 +
  391.75 +	//sendGroup->addWidget(labelOpt, 0, 2);
  391.76 +	//sendGroup->addWidget(opt, 1, 2);
  391.77 +
  391.78 +	//sendGroup->addWidget(labelMsg, 4, 0);
  391.79 + 	//sendGroup->addWidget(line, 5, 0, 1, 3);
  391.80 +    //sendGroup->addWidget(send, 3, 2);
  391.81 +	 //   sendGroup->addWidget(file, 6, 2);
  391.82 +#ifdef PDAGUI
  391.83 +	setLayout(sendGroup);
  391.84 +#else
  391.85 +	sendBox->setFixedSize(450, 620);
  391.86 +	sendBox->setLayout(sendGroup);
  391.87 +#endif //PDAGUI
  391.88 +	///////////////////////////////////////////////////
  391.89 +#ifndef PDAGUI
  391.90 +	QGroupBox *readBox = new QGroupBox("Read message");
  391.91 +	readText = new QTextBrowser(this);
  391.92 +	msgList = new QListWidget;
  391.93 +	//Final grid layout
  391.94 +    QGridLayout *readGroup = new QGridLayout;
  391.95 +	readGroup->addWidget(labelOpt, 0, 0);
  391.96 +	readGroup->addWidget(msgList, 1, 0);
  391.97 +	readGroup->addWidget(srcStr, 2, 0);
  391.98 +	readGroup->addWidget(readText, 3, 0);
  391.99 + 	readBox->setFixedSize(450, 620);
 391.100 +	readBox->setLayout(readGroup);
 391.101 +	Bundle *msg = new Bundle; //is this used for anything???
 391.102 +	//Define final layout
 391.103 +	QVBoxLayout *layout = new QVBoxLayout;
 391.104 +	layout->setDirection(QBoxLayout::LeftToRight);
 391.105 +    layout->addWidget(sendBox);    
 391.106 +    layout->addWidget(readBox);    
 391.107 +    setLayout(layout);
 391.108 +	//Define connections
 391.109 +//	connect(line, SIGNAL(returnPressed ()(QString)),label,SLOT(setText(QString)));
 391.110 +#endif //PDAGUI
 391.111 +	//Prepare update timer
 391.112 +	timer = new QTimer();
 391.113 +	connect(timer, SIGNAL(timeout()), this, SLOT(updateLists()));
 391.114 +#ifndef PDAGUI
 391.115 +	connect(msgList, SIGNAL(itemClicked (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
 391.116 +	connect(msgList, SIGNAL(itemDoubleClicked  (QListWidgetItem *)), this, SLOT(showMsg(QListWidgetItem *)));
 391.117 +#endif //PDAGUI
 391.118 +	connect(nodeManager, SIGNAL(updatedNodeList(NodeManager*)), this, SLOT(updatedNodeList(NodeManager* )));
 391.119 +
 391.120 +	bool b = connect(send,SIGNAL(clicked(void)),this, SLOT(composeBundle(void)) );
 391.121 +
 391.122 +
 391.123 +
 391.124 +	timer->start(5000);
 391.125 +	firstTime=0;
 391.126 +	ReadFile conf;
 391.127 +	ackOption=conf.getUseACKS();
 391.128 +	QString msgPath=conf.getMsgPath();
 391.129 +	dir.setPath(msgPath);
 391.130 +	//create the dir if it does not exist
 391.131 +	if(!dir.exists())
 391.132 +		dir.mkpath(dir.path());
 391.133 +	sourceId =conf.getNodeId();
 391.134 +	sourceStr = conf.getNodeName();
 391.135 +
 391.136 +}
 391.137 +
 391.138 +void MsgWidget::updatedNodeList(NodeManager* ptr)
 391.139 +{
 391.140 +	//First time we update combobox
 391.141 +	QList <Node> nodeList;
 391.142 +	nodeList = nodeManager->getNodeList();
 391.143 +	combo->clear();
 391.144 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 391.145 +	{
 391.146 +			combo->insertItem(i,nodeList.at(i).nodeName);
 391.147 +	}
 391.148 +	firstTime=1;
 391.149 +
 391.150 +}
 391.151 +
 391.152 +
 391.153 +void MsgWidget::getBundle(Bundle newBundle)
 391.154 +{
 391.155 +	label->setText(newBundle.getData());
 391.156 +}
 391.157 +
 391.158 +void MsgWidget::updateLists()
 391.159 +{
 391.160 +	if(firstTime==0)
 391.161 +	{
 391.162 +		//First time we update combobox
 391.163 +		QList <Node> nodeList;
 391.164 +		nodeList = nodeManager->getNodeList();
 391.165 +		combo->clear();
 391.166 +		for (ushort i = 0; i < nodeList.size(); ++i) 
 391.167 +		{
 391.168 +			combo->insertItem(i,nodeList.at(i).nodeName);
 391.169 +		}
 391.170 +		firstTime=1;
 391.171 +	}
 391.172 +#ifndef PDAGUI
 391.173 +	QList<QString> list;
 391.174 +	list = dir.entryList();
 391.175 +	msgList->clear();
 391.176 +	for (ushort i = 0; i < list.size(); ++i) 
 391.177 +	{
 391.178 +		QListWidgetItem *newItem = new QListWidgetItem;
 391.179 +		newItem->setText(list.at(i));
 391.180 +		msgList->insertItem(i, newItem);
 391.181 +	}
 391.182 +#endif //PDAGUI
 391.183 +}
 391.184 +
 391.185 +void MsgWidget::showMsg(QListWidgetItem * item)
 391.186 +{
 391.187 +	QString fileName;
 391.188 +	if(item!=NULL)
 391.189 +	{
 391.190 +	fileName = item->text();
 391.191 +	if(fileName.size()>2)
 391.192 +	{
 391.193 +	
 391.194 +	QFile file(dir.filePath(fileName));
 391.195 +	if(file.open(QIODevice::ReadOnly))
 391.196 +	{
 391.197 +		QByteArray data;
 391.198 +		data=file.readAll();
 391.199 +		readText->clear();
 391.200 +		readText->insertPlainText(data);
 391.201 +		file.close();
 391.202 +	}
 391.203 +	}
 391.204 +}}
 391.205 +
 391.206 +
 391.207 +
 391.208 +
 391.209 +
 391.210 +void MsgWidget::composeBundle()
 391.211 +{
 391.212 +	Bundle newBundle;
 391.213 +	QString stringData;// = line->text();
 391.214 +	QByteArray data = line->toPlainText().toAscii();
 391.215 +	if(combo->count()>0)
 391.216 +	{
 391.217 +
 391.218 +		int dstId=nodeManager->nodeList.at(combo->currentIndex()).nodeId;
 391.219 +		QString dstStr = combo->itemText(combo->currentIndex()); 
 391.220 +		int option;
 391.221 +		option=0x04;
 391.222 +		//If acking is enabled
 391.223 +		if(ackOption==1)
 391.224 +		{
 391.225 +			//We set the ACKOption bit and set the ACK bit 
 391.226 +			option=option|0x01;
 391.227 +		}
 391.228 +		newBundle.setContent(bundleManager->getSeq(),sourceId,dstId,data,option,sourceStr.toAscii(),dstStr.toAscii());
 391.229 +		emit sendBundle(newBundle);
 391.230 +		 QMessageBox::information(this, "PRoPHET notSoIM",
 391.231 +		"Message sent!\n");
 391.232 +	}
 391.233 +
 391.234 +}
 391.235 +
 391.236 +
   392.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   392.2 +++ b/x86/x86/msgWidget.h	Thu Jun 26 17:39:40 2008 +0100
   392.3 @@ -0,0 +1,52 @@
   392.4 +#ifndef MSGWIDGET_H
   392.5 +#define MSGWIDGET_H
   392.6 +#include <QtGui>
   392.7 +#include <bundle.h>
   392.8 +#include <nodeManager.h>
   392.9 +#include <bundleManager.h>
  392.10 +
  392.11 +class MsgWidget : public QWidget
  392.12 +{
  392.13 +
  392.14 +	Q_OBJECT
  392.15 +
  392.16 +private:
  392.17 +		
  392.18 +	QLineEdit *label;
  392.19 +
  392.20 +	
  392.21 +public:
  392.22 +	QComboBox *combo;
  392.23 +	QTextBrowser *readText;
  392.24 +	QFileDialog *file;
  392.25 +	QLineEdit *src;
  392.26 +	QLineEdit *dst;
  392.27 +	QLineEdit *opt;
  392.28 +	QTextEdit *line;
  392.29 +	QLineEdit *srcLine;
  392.30 +	QLineEdit *dstLine;
  392.31 +	MsgWidget(NodeManager*,BundleManager*,QWidget *parent = 0);
  392.32 +	NodeManager* nodeManager;
  392.33 +	BundleManager* bundleManager;
  392.34 +	QTimer* timer;
  392.35 +	bool firstTime;
  392.36 +	QListWidget* msgList;
  392.37 +	QDir dir;
  392.38 +	int sourceId;
  392.39 +	int ackOption;
  392.40 +	QString sourceStr;
  392.41 +
  392.42 +signals:
  392.43 +	void sendBundle(Bundle);
  392.44 +	
  392.45 +public slots:
  392.46 +        void composeBundle();
  392.47 +	void getBundle(Bundle newBundle);
  392.48 +	void updateLists();
  392.49 +	void updatedNodeList(NodeManager* ptr);
  392.50 +	void showMsg(QListWidgetItem *);
  392.51 +};
  392.52 +
  392.53 +#endif
  392.54 +
  392.55 +
   393.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   393.2 +++ b/x86/x86/neighbourAwareness.cpp	Thu Jun 26 17:39:40 2008 +0100
   393.3 @@ -0,0 +1,407 @@
   393.4 +#include <QtCore>
   393.5 +#include <QtNetwork>
   393.6 +#include <connection.h>
   393.7 +#include <dataPacket.h>
   393.8 +#include <neighbourAwareness.h>
   393.9 +#include <stdio.h>
  393.10 +#include <readFile.h>
  393.11 +#include <main.h>
  393.12 +#include <messageFile.h>
  393.13 +#ifdef Q_WS_X11
  393.14 +#include <sys/types.h>
  393.15 +#include <sys/stat.h> 
  393.16 +#endif
  393.17 +//extern MessageFile *log;
  393.18 +
  393.19 +#define VERSION 6
  393.20 +#define HELLO_DATAGRAM "PROPHET"
  393.21 +//#define ALIVE 15
  393.22 +#define TERMINATOR "yxxyyaxayax"
  393.23 +#define TERMINATOR2 "zsdfgfdgfdg"
  393.24 +struct DatagramHeader
  393.25 +{
  393.26 +	qint32 version;
  393.27 +	qint32 lenght;
  393.28 +	qint32 checkSum;
  393.29 +	qint32 nr;
  393.30 +};
  393.31 +
  393.32 +ConnectionInfo::ConnectionInfo(QObject *parent)
  393.33 +{
  393.34 +	ReadFile conf;
  393.35 +	alive=conf.getAlive();
  393.36 +	data.clear();
  393.37 +}
  393.38 +
  393.39 +
  393.40 +ConnectionInfo& ConnectionInfo::operator=(const ConnectionInfo& other)
  393.41 +{
  393.42 + id = other.id;
  393.43 + alive = other.alive;
  393.44 + ip = other.ip;
  393.45 + data = other.data;
  393.46 + tcpSocket = other.tcpSocket;
  393.47 + isClient = other.isClient;
  393.48 + conptr= other.conptr;
  393.49 +
  393.50 + return *this;
  393.51 +}
  393.52 +
  393.53 +ConnectionInfo::ConnectionInfo(const ConnectionInfo& other)
  393.54 +{
  393.55 + id = other.id;
  393.56 + alive = other.alive;
  393.57 + ip = other.ip;
  393.58 + data = other.data;
  393.59 + tcpSocket = other.tcpSocket;
  393.60 + isClient = other.isClient;
  393.61 + conptr= other.conptr;
  393.62 +}	
  393.63 +
  393.64 +
  393.65 +NeighAwareServer::NeighAwareServer(QObject* parent) : QTcpServer(parent)
  393.66 +{
  393.67 +}
  393.68 +
  393.69 +void NeighAwareServer::incomingConnection(int socketDescriptor)
  393.70 +{ 
  393.71 +	QTcpSocket* newSocket = new QTcpSocket(this);
  393.72 +	newSocket->setSocketDescriptor(socketDescriptor);
  393.73 +	bool permitNewConnection = false;
  393.74 +	emit newConnectionEstablished(newSocket, permitNewConnection);
  393.75 +	if (permitNewConnection == false)
  393.76 +	{
  393.77 +		newSocket->deleteLater();
  393.78 +		newSocket->disconnectFromHost();
  393.79 +	}
  393.80 +}	
  393.81 +	
  393.82 +
  393.83 +NeighAware::NeighAware(BundleManager* bundleMng, NodeManager* nodeMng)
  393.84 +{
  393.85 +	nodeManager = nodeMng;
  393.86 +	bundleManager = bundleMng;
  393.87 +	terminator.clear();
  393.88 +	terminator.append(TERMINATOR);
  393.89 +	terminator.append(TERMINATOR2);
  393.90 +
  393.91 +	file = new ReadFile;
  393.92 +	myip=file->getNodeIp();
  393.93 +	myip2=file->getNodeIp2();
  393.94 +	broadcast=file->getBroadcast();
  393.95 +	nodeId=file->getNodeId();
  393.96 +	nodeName=file->getNodeName();
  393.97 +	ALIVE=file->getAlive();
  393.98 +	numid = 0;
  393.99 +
 393.100 +
 393.101 +
 393.102 +	tcpServer = new NeighAwareServer(this);
 393.103 +	bool b = connect(tcpServer, SIGNAL(newConnectionEstablished(QTcpSocket*, bool&)), this, SLOT(newConnectionEstablished(QTcpSocket*, bool&)));
 393.104 +	tcpServer->listen(myip,30001);
 393.105 +
 393.106 +	udpSocketp = new QUdpSocket(this);
 393.107 +	udpSocketp->bind(30000);
 393.108 +    connect(udpSocketp, SIGNAL(readyRead()),this, SLOT(processPingDatagrams()));
 393.109 +	
 393.110 +	broadcastTimer = new QTimer(this);
 393.111 +	connect(broadcastTimer, SIGNAL(timeout()), this, SLOT(broadcastDatagram()));
 393.112 +	int timer =file->getBroadcastTimer();
 393.113 +	broadcastTimer->start(timer);
 393.114 +
 393.115 +	//DEBUG
 393.116 +	log = new MessageFile;
 393.117 +	log->set("connections.log", 1000000, 5);
 393.118 +}
 393.119 +
 393.120 +void NeighAware::newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection)
 393.121 +{ 
 393.122 +	QHostAddress ip;
 393.123 +	ip = newSocket->peerAddress();
 393.124 +	QString bla = ip.toString();
 393.125 +	int index=-1;
 393.126 +	for(int i=0;i<connectionlist.size();i++)
 393.127 +	{
 393.128 +		QString bla = ip.toString();
 393.129 +		if(ip == connectionlist.at(i).ip)
 393.130 +			index=i;
 393.131 +	}
 393.132 +	if(index==-1)
 393.133 +	{
 393.134 +		newSocket->connect(newSocket,SIGNAL(readyRead()),this,SLOT(processPendingDatagrams()));
 393.135 +		newSocket->connect(newSocket,SIGNAL(disconnected()),this,SLOT(stateChanged()));
 393.136 +		newSocket->connect(newSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(errorDecode(QAbstractSocket::SocketError)));
 393.137 +		//We add a new connection to the list
 393.138 +		ConnectionInfo connectioninfo;
 393.139 +		//Adding
 393.140 +		connectioninfo.conptr = new Connection(numid,file->getNodeId(),file->getNodeName(),nodeManager,bundleManager,this);
 393.141 +		newSocket->connect(connectioninfo.conptr,SIGNAL(sendDataPacket(DataPacket)),this,SLOT(sendDatagram(DataPacket)));
 393.142 +		newSocket->connect(connectioninfo.conptr,SIGNAL(newConnectionStatus(int)),this,SLOT(getNewConnectionStatus(int)));
 393.143 +
 393.144 +		///
 393.145 +		connectioninfo.ip=ip;
 393.146 +		connectioninfo.id=numid;
 393.147 +		connectioninfo.alive=ALIVE;
 393.148 +		connectioninfo.tcpSocket = newSocket;
 393.149 +		connectioninfo.isClient = false;
 393.150 +
 393.151 +
 393.152 +   			if(connectioninfo.tcpSocket->waitForConnected(500))
 393.153 +			{
 393.154 +			    QHostAddress tmp=connectioninfo.ip;
 393.155 +    			    QString logString;
 393.156 +			    logString.append("New connection(S):");	
 393.157 +			    logString.append(tmp.toString());
 393.158 +			    log->addLog(0,logString);
 393.159 +			    connectionlist << connectioninfo;
 393.160 +				emit newConnection(connectioninfo.id);
 393.161 +			}
 393.162 +			else
 393.163 +			{
 393.164 +			    QHostAddress tmp=connectioninfo.ip;
 393.165 +			    QString logString;
 393.166 +			    logString.append("Drop connection(S):");	
 393.167 +			    logString.append(tmp.toString());
 393.168 +			    log->addLog(0,logString);
 393.169 +			    delete connectioninfo.conptr;
 393.170 +			    delete connectioninfo.tcpSocket;
 393.171 +			}
 393.172 +
 393.173 +		
 393.174 +		numid++;
 393.175 +		permitNewConnection=true;
 393.176 +		sendDebugConList(connectionlist);
 393.177 +	}
 393.178 +}
 393.179 +
 393.180 +void NeighAware::broadcastDatagram()
 393.181 +{  	
 393.182 +	QByteArray datagram=HELLO_DATAGRAM;
 393.183 +	QString debug = broadcast.toString();
 393.184 + 	udpSocketp->writeDatagram(datagram.data(), datagram.size(), broadcast, 30000);
 393.185 +	emit traffic(datagram.size());
 393.186 +	for(int i=0;i<connectionlist.count();i++)
 393.187 +	{
 393.188 +		connectionlist[i].alive--;
 393.189 +		if(connectionlist[i].alive<=0)
 393.190 +		{
 393.191 +			
 393.192 +			connectionlist[i].tcpSocket->disconnectFromHost();
 393.193 +			emit removedConnection(connectionlist[i].id);
 393.194 +			delete connectionlist[i].tcpSocket;
 393.195 +			delete connectionlist[i].conptr;
 393.196 +			//Emiting removed connection to GUI
 393.197 +			emit removedConnection(connectionlist[i].id);
 393.198 +			connectionlist.removeAt(i);	
 393.199 +			//Emiting empty list to GUI
 393.200 +			if(connectionlist.size()==0)
 393.201 +				emit newConnectionStatus(0);
 393.202 +			sendDebugConList(connectionlist);
 393.203 +		}
 393.204 +		sendDebugConList(connectionlist);
 393.205 +	}
 393.206 +	QFile f("connections.txt");
 393.207 +	if (f.open(QIODevice::WriteOnly) == true)
 393.208 +	{
 393.209 +		for(int i=0;i<connectionlist.size();i++)
 393.210 +		{
 393.211 +			f.write(connectionlist[i].ip.toString().toAscii());
 393.212 +			if (connectionlist[i].isClient == true)
 393.213 +				f.write(QString("\tclient\r\n").toAscii());
 393.214 +			else
 393.215 +				f.write(QString("\tserver\r\n").toAscii());
 393.216 +		}
 393.217 +		f.close();
 393.218 +	}
 393.219 +
 393.220 + }
 393.221 +
 393.222 +void NeighAware::processPingDatagrams()
 393.223 +{
 393.224 +	while (udpSocketp->hasPendingDatagrams()) 
 393.225 +	{
 393.226 +        QByteArray datagram;
 393.227 +		
 393.228 +		quint16 port;
 393.229 +		QHostAddress ip;
 393.230 +		bool insert=true;
 393.231 +		datagram.resize(udpSocketp->pendingDatagramSize());
 393.232 +        udpSocketp->readDatagram(datagram.data(), datagram.size(), &ip, &port);
 393.233 +		QString bla = ip.toString();
 393.234 +		//Is the node in the list?
 393.235 +		if ((ip==myip) || (ip==myip2))
 393.236 +		{
 393.237 +			insert=false;
 393.238 +		}
 393.239 +		else
 393.240 +		{
 393.241 +			for(int i=0;i<connectionlist.size();i++)
 393.242 +			{
 393.243 +			 
 393.244 +				if(connectionlist.at(i).ip ==ip)
 393.245 +				{ 
 393.246 +					insert=false;
 393.247 +				}
 393.248 +			}
 393.249 +		}
 393.250 +		//If not we insert it.
 393.251 +		if(insert==true)
 393.252 +		{
 393.253 +			QTcpSocket* newSocket = new QTcpSocket(this);
 393.254 +			newSocket->connect(newSocket,SIGNAL(readyRead()),this,SLOT(processPendingDatagrams()));
 393.255 +			newSocket->connect(newSocket,SIGNAL(disconnected()),this,SLOT(stateChanged()));
 393.256 +			newSocket->connect(newSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(errorDecode(QAbstractSocket::SocketError)));
 393.257 +			newSocket->connectToHost(ip, 30001);
 393.258 +			//We add a new connection to the list
 393.259 +			ConnectionInfo connectioninfo;
 393.260 +			//Adding
 393.261 +			connectioninfo.conptr = new Connection(numid,file->getNodeId(),file->getNodeName(),nodeManager,bundleManager,this);
 393.262 +			newSocket->connect(connectioninfo.conptr,SIGNAL(sendDataPacket(DataPacket)),this,SLOT(sendDatagram(DataPacket)));
 393.263 +			newSocket->connect(connectioninfo.conptr,SIGNAL(newConnectionStatus(int)),this,SLOT(getNewConnectionStatus(int)));
 393.264 +
 393.265 +			///
 393.266 +			connectioninfo.ip=ip;
 393.267 +			connectioninfo.id=numid;
 393.268 +			connectioninfo.alive=ALIVE;
 393.269 +			connectioninfo.tcpSocket = newSocket;
 393.270 +			connectioninfo.isClient = true;
 393.271 +
 393.272 +			
 393.273 +    			if(connectioninfo.tcpSocket->waitForConnected(500))
 393.274 +			{
 393.275 +			    QHostAddress tmp=connectioninfo.ip;
 393.276 +    			    QString logString;
 393.277 +			    logString.append("New connection(C):");	
 393.278 +			    logString.append(tmp.toString());
 393.279 +			    log->addLog(0,logString);
 393.280 +				emit newConnection(connectioninfo.id);
 393.281 +			    connectionlist << connectioninfo;
 393.282 +			}
 393.283 +			else
 393.284 +			{
 393.285 +			    QHostAddress tmp=connectioninfo.ip;
 393.286 +			    QString logString;
 393.287 +			    logString.append("Drop connection(C):");	
 393.288 +			    logString.append(tmp.toString());
 393.289 +			    log->addLog(0,logString);
 393.290 +    			    connectioninfo.tcpSocket->disconnectFromHost();
 393.291 +			    delete connectioninfo.conptr;
 393.292 +			    delete connectioninfo.tcpSocket;
 393.293 +			}
 393.294 +			numid++;
 393.295 +			sendDebugConList(connectionlist);
 393.296 +		}
 393.297 +	}
 393.298 +}
 393.299 +
 393.300 +
 393.301 +void NeighAware::sendDatagram(DataPacket datapacket)
 393.302 +{  	
 393.303 +	QHostAddress ip;
 393.304 +	for(int i=0;i<connectionlist.size();i++)
 393.305 +	{
 393.306 +		if(connectionlist.at(i).id==datapacket.id) 
 393.307 +		{
 393.308 +			ip=connectionlist.at(i).ip;
 393.309 +
 393.310 +			//Preparing heder
 393.311 +			QByteArray newDatagram;
 393.312 +			newDatagram.append(datapacket.data);
 393.313 +			//Appending terminator
 393.314 +			newDatagram.append(terminator);
 393.315 +			//Sending datagram 
 393.316 +			connectionlist[i].tcpSocket->write(newDatagram);
 393.317 +			emit traffic(newDatagram.size());
 393.318 +		}
 393.319 +	}
 393.320 +
 393.321 +
 393.322 +}
 393.323 +
 393.324 +
 393.325 +
 393.326 +void NeighAware::stateChanged()
 393.327 +{
 393.328 +	QString logString;
 393.329 +	logString.append(">>>>>>>>>>>>State:");
 393.330 +	log->addLog(0,logString);
 393.331 +
 393.332 +	for(int i=0;i<connectionlist.count();i++)
 393.333 +	{
 393.334 +		if((connectionlist.at(i).tcpSocket->state() != QAbstractSocket::ConnectedState))    
 393.335 +		{
 393.336 +			connectionlist[i].alive=0;
 393.337 +
 393.338 +			sendDebugConList(connectionlist);
 393.339 +		}
 393.340 +	}
 393.341 +}
 393.342 +
 393.343 +void NeighAware::errorDecode(QAbstractSocket::SocketError error)
 393.344 +{
 393.345 +	int i=error;
 393.346 +	QString logString;
 393.347 +	logString.append(QString("Error %1\n\r").arg((int)error).toAscii());
 393.348 +	log->addLog(0,logString);
 393.349 +	
 393.350 +	for(int i=0;i<connectionlist.count();i++)
 393.351 +	{
 393.352 +		if((connectionlist.at(i).tcpSocket->state() != QAbstractSocket::ConnectedState))    
 393.353 +		{
 393.354 +
 393.355 +			connectionlist[i].alive=0;
 393.356 +			sendDebugConList(connectionlist);
 393.357 +		}
 393.358 +	}
 393.359 +
 393.360 +			QFile f("error.txt");
 393.361 +		if (f.open(QIODevice::WriteOnly|QIODevice::Append) == true)
 393.362 +		{
 393.363 +			f.write(QString("Error %1\n\r").arg((int)error).toAscii());
 393.364 +			f.close();
 393.365 +		}
 393.366 +
 393.367 +}
 393.368 +
 393.369 +
 393.370 +
 393.371 +void NeighAware::processPendingDatagrams()
 393.372 +{
 393.373 +	for(int i=0;i<connectionlist.size();i++)
 393.374 +	{
 393.375 +		QByteArray packetPart;
 393.376 +		packetPart=connectionlist[i].tcpSocket->readAll();
 393.377 +		emit traffic(packetPart.size());
 393.378 +		if(packetPart.size()>0)
 393.379 +		{
 393.380 +			//Updating alive variable
 393.381 +			connectionlist[i].alive=ALIVE;
 393.382 +			//We add datagram to data
 393.383 +			connectionlist[i].data.append(packetPart);
 393.384 +			int idx;
 393.385 +			idx = connectionlist[i].data.indexOf(terminator,0);
 393.386 +			while(idx != -1)
 393.387 +			{
 393.388 +				//We remove the terminator
 393.389 +				QByteArray tempData;
 393.390 +				tempData=connectionlist[i].data.mid(0,idx);
 393.391 +				connectionlist[i].data.remove(0,(idx+terminator.size()));
 393.392 +				DataPacket send;
 393.393 +				send.data.append(tempData);
 393.394 +				send.id=connectionlist[i].id;
 393.395 +				connectionlist[i].conptr->receiveDatagram(send);
 393.396 +				idx = connectionlist[i].data.indexOf(terminator,0);
 393.397 +			}
 393.398 +			
 393.399 +		}
 393.400 +	}
 393.401 +}
 393.402 +
 393.403 +void NeighAware::getNewConnectionStatus(int status)
 393.404 +{
 393.405 +	emit newConnectionStatus(status);
 393.406 +}
 393.407 +		
 393.408 +		
 393.409 +
 393.410 +		
   394.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   394.2 +++ b/x86/x86/neighbourAwareness.h	Thu Jun 26 17:39:40 2008 +0100
   394.3 @@ -0,0 +1,177 @@
   394.4 +#ifndef NEIGHBOURAWARENESS_H
   394.5 +#define NEIGHBOURAWARENESS_H
   394.6 +
   394.7 +//#include <iostream.h>
   394.8 +#include <QtCore>
   394.9 +#include <QtNetwork>
  394.10 +#include <connection.h>
  394.11 +#include <dataPacket.h>
  394.12 +#include <neighbourAwareness.h>
  394.13 +#include <bundleManager.h>
  394.14 +#include <nodeManager.h>
  394.15 +#include <messageFile.h>
  394.16 +#include <readFile.h>
  394.17 +
  394.18 +
  394.19 +/*! \brief This class carries data concerning a certain connection. 
  394.20 + * Instantiated for each connection.
  394.21 + */
  394.22 +class ConnectionInfo : public QObject 
  394.23 +{
  394.24 +	Q_OBJECT
  394.25 +	public:
  394.26 +	ConnectionInfo(QObject *parent = 0);
  394.27 +	ConnectionInfo(const ConnectionInfo& other);
  394.28 +	ConnectionInfo& operator=(const ConnectionInfo& other);
  394.29 +	QHostAddress ip;
  394.30 +	QByteArray data;
  394.31 +	QTcpSocket* tcpSocket;
  394.32 +	QTcpSocket* clientTcpSocket;
  394.33 +	Connection *conptr;
  394.34 +	int alive;
  394.35 +	int id;
  394.36 +	bool isClient;
  394.37 +};
  394.38 +
  394.39 +class NeighAwareServer : public QTcpServer
  394.40 +{
  394.41 +	Q_OBJECT
  394.42 +
  394.43 +public:
  394.44 +	NeighAwareServer(QObject *parent = 0);
  394.45 +
  394.46 +protected slots:
  394.47 +	virtual void incomingConnection(int socketDescripton);
  394.48 +
  394.49 +signals:
  394.50 +	void newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection);
  394.51 +
  394.52 +};
  394.53 +
  394.54 +
  394.55 +/*! \brief This class detects when two nodes meet to initiate communication. 
  394.56 + *
  394.57 + * A ConnectionInfo and the associated Connection object is created for each 
  394.58 + * encounter.
  394.59 + */
  394.60 +class NeighAware : public QObject 
  394.61 +{
  394.62 +
  394.63 +
  394.64 +Q_OBJECT
  394.65 +
  394.66 +public:
  394.67 +
  394.68 +	NeighAware(BundleManager*, NodeManager*);
  394.69 +	NodeManager *nodeManager;
  394.70 +	BundleManager *bundleManager;
  394.71 +
  394.72 +	QList<ConnectionInfo> connectionlist;
  394.73 +   	QByteArray terminator; 	
  394.74 +
  394.75 +	QHostAddress myip;
  394.76 +	QHostAddress myip2;
  394.77 +	QHostAddress broadcast;
  394.78 +	int nodeId;
  394.79 +	QString nodeName;
  394.80 +	int ALIVE;
  394.81 +	int numid;
  394.82 +	ReadFile *file;
  394.83 +
  394.84 +	NeighAwareServer *tcpServer;
  394.85 +	QUdpSocket *udpSocketp;
  394.86 +	QTimer *broadcastTimer;
  394.87 +	QTimer *testTimer;
  394.88 +	MessageFile* log;
  394.89 +
  394.90 +	int logOption;
  394.91 +	
  394.92 +public slots:
  394.93 +	/*!
  394.94 +	 * Expects notification of when new connections are established. It 
  394.95 +	 * sets up the ConnectionInfo and Connection objects, and also connects 
  394.96 +	 * the signals for the new connection. This slot is connected to the 
  394.97 +	 * TcpServer.
  394.98 +	 * @param newSocket the socket of the TCP connection.
  394.99 +	 * @param permitNewConnection this bool will be true if the connection 
 394.100 +	 * was permitted, otherwise false.
 394.101 +	 */
 394.102 +	void newConnectionEstablished(QTcpSocket* newSocket, bool& permitNewConnection);
 394.103 +
 394.104 +   	/*!
 394.105 +	 * Writes any socket errors to the file error.txt.
 394.106 +	 */
 394.107 +	void errorDecode(QAbstractSocket::SocketError);
 394.108 +	
 394.109 +	/*!
 394.110 +	 * Removes items with out of date states from the connectionlist.
 394.111 +	 */
 394.112 +	void stateChanged();
 394.113 +	
 394.114 +	/*!
 394.115 +	 * Broadcasts a HELLO_DATAGRAM on the UDP socket 30000.
 394.116 +	 */
 394.117 +	void broadcastDatagram();
 394.118 +	
 394.119 +	/*!
 394.120 +	 * Sends the specified packet on the TCP socket.
 394.121 +	 */
 394.122 +	void sendDatagram(DataPacket datapacket);
 394.123 +
 394.124 +	/*!
 394.125 +	 * Receives packets from all TCP connections and dispatches them to 
 394.126 +	 * the appropriate Connection object.
 394.127 +	 */
 394.128 +	void processPendingDatagrams();
 394.129 +	
 394.130 +	/*!
 394.131 +	 * Processes all datagrams received on the UDP socket and creates new 
 394.132 +	 * Connection objects if neccessary.
 394.133 +	 */
 394.134 +	void processPingDatagrams();
 394.135 +	
 394.136 +	/*!
 394.137 +	 * Used just to forward new connection state to the GUI
 394.138 +	 */
 394.139 +	void getNewConnectionStatus(int);
 394.140 +signals:
 394.141 +	/*!
 394.142 +	 * Sends a list of ConnectionInfo objects to the GUI to be 
 394.143 +	 * displayed/updated.
 394.144 +	 * @param a QList of ConnectionInfo objects.
 394.145 +	 */
 394.146 +	void sendDebugConList(QList<ConnectionInfo>);
 394.147 +	/*!
 394.148 +	 * Passes a datagram reveived on the network interface to the TLV. Not used.
 394.149 +	 * @param dataPacket the packet that was received.
 394.150 +	 */
 394.151 +	void passDatagram(DataPacket);
 394.152 +	
 394.153 +	/*!
 394.154 +	 * Signals the size of every sent or received datagram. Connected to 
 394.155 +	 * the GUI. Used for transfer speed calculations.
 394.156 +	 * @param size The size of the received or sent datagram.
 394.157 +	 */
 394.158 +	void traffic(int);
 394.159 +
 394.160 +	/*!
 394.161 +	 * Signals that a connection was removed. Connected to GUI.
 394.162 +	 * @param id the id of the connection that was removed.
 394.163 +	 */
 394.164 +	void removedConnection(int);
 394.165 +	
 394.166 +	/*!
 394.167 +	 * Signals that a new connection with another node has been 
 394.168 +	 * established. Connected to GUI.
 394.169 +	 * @param id the id of the new connection.
 394.170 +	 */
 394.171 +	void newConnection(int);
 394.172 +
 394.173 +	/*!
 394.174 +	 * Signals new protocol state in one of the connections
 394.175 +	 */
 394.176 +	void newConnectionStatus(int);
 394.177 +
 394.178 +};
 394.179 +
 394.180 +#endif
   395.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   395.2 +++ b/x86/x86/node.cpp	Thu Jun 26 17:39:40 2008 +0100
   395.3 @@ -0,0 +1,59 @@
   395.4 +#include <QtCore>
   395.5 +#include <node.h>
   395.6 +
   395.7 +
   395.8 +Node::Node(QObject *parent)
   395.9 +{
  395.10 +			nodeId=0;
  395.11 +			probability=0.0;
  395.12 +			nodeName.clear();
  395.13 +			flag=-1;
  395.14 +}
  395.15 +
  395.16 +Node& Node::operator=(const Node& other)
  395.17 +{
  395.18 + nodeId = other.nodeId;
  395.19 + flag = other.flag;
  395.20 + probability = other.probability;
  395.21 + nodeName = other.nodeName;
  395.22 + return *this;
  395.23 +}
  395.24 +
  395.25 +Node::Node(const Node& other)
  395.26 +{
  395.27 + nodeId = other.nodeId;
  395.28 + flag = other.flag;
  395.29 + probability = other.probability;
  395.30 + nodeName = other.nodeName;
  395.31 +}	
  395.32 +	
  395.33 +void Node::setContent(int id,float pro,int f,QString name)
  395.34 +{
  395.35 +	flag=f;
  395.36 +	nodeId=id;
  395.37 +	probability=pro;
  395.38 +	nodeName=name;
  395.39 +
  395.40 +}
  395.41 +
  395.42 +int Node::getId()
  395.43 +{
  395.44 +	return nodeId;
  395.45 +}
  395.46 +
  395.47 +int Node::getFlag()
  395.48 +{
  395.49 +	
  395.50 +	return flag;
  395.51 +}
  395.52 +
  395.53 +float Node::getProbability()
  395.54 +{
  395.55 +	return probability;
  395.56 +}
  395.57 +
  395.58 +QString Node::getName()
  395.59 +{
  395.60 +	return nodeName;
  395.61 +}
  395.62 +
   396.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   396.2 +++ b/x86/x86/node.h	Thu Jun 26 17:39:40 2008 +0100
   396.3 @@ -0,0 +1,51 @@
   396.4 +#ifndef NODE_H
   396.5 +#define NODE_H
   396.6 +
   396.7 +#include <QtCore>
   396.8 +
   396.9 +/*! \brief This class contains the attributes regarding a certain node in the 
  396.10 + * network.
  396.11 + */
  396.12 +class Node : public QObject
  396.13 +{
  396.14 +
  396.15 +Q_OBJECT 
  396.16 +	public:
  396.17 +	int nodeId;
  396.18 +	float probability;
  396.19 +	int flag;
  396.20 +	QString nodeName;
  396.21 +
  396.22 +
  396.23 +	Node(QObject *parent = 0);
  396.24 +	Node(const Node& other);
  396.25 +	Node& operator=(const Node& other);
  396.26 +
  396.27 +
  396.28 +	/*!
  396.29 +	 * Sets the attributes of this node.
  396.30 +	 * @param id the id of this node.
  396.31 +	 * @param pro the delivery predictability to this node.
  396.32 +	 * @param f the (RIB?)flags of this node.
  396.33 +	 * <PRE>
  396.34 +	 * Flag bit 0: Relay Node
  396.35 +	 * Flag bit 1: Custody Node
  396.36 +	 * Flag bit 2: Internet GW Node
  396.37 +	 * Flag bit 3-7: Reserved
  396.38 +	 * </PRE>
  396.39 +	 * @param the name of this node
  396.40 +	 */
  396.41 +	void setContent(int,float,int,QString);
  396.42 +
  396.43 +	//! Returns the id if this node
  396.44 +	int getId();
  396.45 +
  396.46 +	//! Returns the flags of this node
  396.47 +	int getFlag(); 
  396.48 +	//! Returns the delivery predictability value for this node.
  396.49 +	float getProbability();
  396.50 +	//!Returns the name of this node
  396.51 +	QString getName();
  396.52 +};
  396.53 +
  396.54 +#endif
   397.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   397.2 +++ b/x86/x86/nodeManager.cpp	Thu Jun 26 17:39:40 2008 +0100
   397.3 @@ -0,0 +1,307 @@
   397.4 +#include <QtCore>
   397.5 +#include <nodeManager.h>
   397.6 +#include <node.h>
   397.7 +#include <readFile.h>
   397.8 +#include <math.h>
   397.9 +#include <qmutex.h>
  397.10 +
  397.11 +//#define AGING_TIMER 900
  397.12 +//#define PENCOUNTER 0.75
  397.13 +//#define BETA 0.25
  397.14 +//#define GAMMA 0.90
  397.15 +
  397.16 +NodeManager::NodeManager()//BundleManager* bundleMng)
  397.17 +{
  397.18 +	ReadFile conf;
  397.19 +	BETA=conf.getBeta();
  397.20 +	PENCOUNTER=conf.getPEncounter();
  397.21 +	GAMMA=conf.getGamma();
  397.22 +	AGING_TIMER=conf.getAgingTimer();
  397.23 +	int WRITETIMER =conf.getWriteToFileTimer();
  397.24 +	int fileOption = conf.getUseFileNodes();
  397.25 +	//Create and connect Hello Timer
  397.26 +	//bundleManager = bundleMng;
  397.27 +	agingTimer = new QTimer();
  397.28 +	storagePath=conf.getStoragePath();
  397.29 +	dir.setPath(storagePath);
  397.30 +	//create the dir if it does not exist
  397.31 +	if(!dir.exists())
  397.32 +		dir.mkpath(dir.path());
  397.33 +	option=conf.getUseFileNodes();
  397.34 +        connect(agingTimer, SIGNAL(timeout()), this, SLOT(aging()));
  397.35 +        agingTimer->start(AGING_TIMER);
  397.36 +	if(fileOption==1)
  397.37 +	{
  397.38 +		readFromFile();
  397.39 +		writeToFileTimer = new QTimer();
  397.40 +		connect(writeToFileTimer, SIGNAL(timeout()), this, SLOT(saveToFile()));
  397.41 +		writeToFileTimer->start(WRITETIMER);
  397.42 +		emit sendDebugNodeList(nodeList);
  397.43 +	}
  397.44 +}
  397.45 +
  397.46 +
  397.47 +void NodeManager::aging()
  397.48 +{
  397.49 +	for (ushort i = 0; i < nodeList.size(); ++i) 
  397.50 +	{
  397.51 +			//AGE PROBABILITY UPDATE
  397.52 +			Node tempNode;
  397.53 +			tempNode=nodeList.at(i);
  397.54 +			tempNode.probability=tempNode.probability*GAMMA;
  397.55 +			nodeList.replace(i,tempNode);
  397.56 +
  397.57 +	}
  397.58 +	//DEBUG
  397.59 +	emit sendDebugNodeList(nodeList);
  397.60 +}
  397.61 +
  397.62 +void NodeManager::saveToFile()
  397.63 +{
  397.64 +	QFile file(dir.filePath("nodes.txt"));
  397.65 +	if(file.open(QIODevice::WriteOnly |QIODevice::Truncate| QIODevice::Text))
  397.66 +	{
  397.67 +	    QDateTime realTime;
  397.68 +	    realTime=realTime.currentDateTime ();
  397.69 +	    QString time=realTime.toString("MM/dd/yyyy hh:mm:ss");
  397.70 +	    time.append("\n");
  397.71 +	    file.write(time.toAscii ());
  397.72 +	    for (ushort i = 0; i < nodeList.size(); ++i) 
  397.73 +	    {
  397.74 +		QString nodeString;
  397.75 +		nodeString.append(QString("%1").arg((int)nodeList.at(i).nodeId));
  397.76 +		nodeString.append("\t");
  397.77 +		nodeString.append(nodeList.at(i).nodeName);
  397.78 +		nodeString.append("\t");
  397.79 +		//nodeString.append(QString("%1").arg((float)nodeList.at(i).probability));
  397.80 +		//Avoiding double type printout/////////////////
  397.81 +		int prob=nodeList.at(i).probability*100000000;
  397.82 +		QString probString=QString("0.%1").arg(prob);
  397.83 +		nodeString.append(probString);
  397.84 +		////////////////////////////////////////////////
  397.85 +		nodeString.append("\t");
  397.86 +		nodeString.append(QString("%1").arg((int)nodeList.at(i).flag));
  397.87 +		nodeString.append("\n");
  397.88 +		file.write(nodeString.toAscii ());
  397.89 +	    }
  397.90 +	    file.close();
  397.91 +	}
  397.92 +	//DEBUG
  397.93 +	emit sendDebugNodeList(nodeList);
  397.94 +}
  397.95 +
  397.96 +void NodeManager::readFromFile()
  397.97 +{
  397.98 +	ReadFile conf;
  397.99 +	QString storagePath=conf.getStoragePath();
 397.100 +	QDir dir;
 397.101 +	dir.setPath(storagePath);
 397.102 +	QFile file(dir.filePath("nodes.txt"));
 397.103 +	if(file.open(QIODevice::ReadOnly | QIODevice::Text))
 397.104 +	{
 397.105 +	    QString firstLine;
 397.106 +	    QString line;
 397.107 +	    //First we read date and time
 397.108 +	    firstLine=file.readLine();
 397.109 +	    //Then we add nodes
 397.110 +	    line=file.readLine();
 397.111 +	    while(line.size()>0)
 397.112 +	    {
 397.113 +    		//Parsing node
 397.114 +		int pos;
 397.115 +		QString temp;
 397.116 +		Node newNode;
 397.117 +		//Node ID
 397.118 +		pos=line.indexOf("\t",0);
 397.119 +		temp=line.mid(0,pos);
 397.120 +		newNode.nodeId=temp.toInt(0,10);
 397.121 +		line.remove(0,pos+1);
 397.122 +		//Node Name
 397.123 +		pos=line.indexOf("\t",0);
 397.124 +		temp=line.mid(0,pos);
 397.125 +		newNode.nodeName=temp;
 397.126 +		line.remove(0,pos+1);
 397.127 +		//Node Probability
 397.128 +		pos=line.indexOf("\t",0);
 397.129 +		temp=line.mid(0,pos);
 397.130 +		newNode.probability=temp.toFloat();
 397.131 +		line.remove(0,pos+1);
 397.132 +		//Node Flag
 397.133 +		pos=line.indexOf("\t",0);
 397.134 +		temp=line.mid(0,pos);
 397.135 +		newNode.flag=temp.toInt(0,10);
 397.136 +		line.remove(0,pos+1);
 397.137 +		//Adding Node
 397.138 +		nodeList.append(newNode);
 397.139 +		line=file.readLine();
 397.140 +	    }
 397.141 +	    //Aging the nodes
 397.142 +	    int option=conf.getAgeFileNodes();
 397.143 +	    if(option==1)
 397.144 +	    {
 397.145 +		QDateTime oldTime;
 397.146 +		firstLine.chop(1);
 397.147 +		oldTime=oldTime.fromString(firstLine,"MM/dd/yyyy hh:mm:ss");
 397.148 +		QDateTime realTime;
 397.149 +		realTime=realTime.currentDateTime ();
 397.150 +		int dif= oldTime.secsTo(realTime);
 397.151 +		int normalAging = conf.getAgingTimer()/1000;
 397.152 +		int aging=dif/normalAging;
 397.153 +		//Aging all nodes
 397.154 +		for (ushort i = 0; i < nodeList.size(); ++i) 
 397.155 +		{
 397.156 +			//AGE PROBABILITY UPDATE
 397.157 +			Node tempNode;
 397.158 +			tempNode=nodeList.at(i);
 397.159 +			tempNode.probability=tempNode.probability*(pow(GAMMA,aging));
 397.160 +			nodeList.replace(i,tempNode);
 397.161 +		}
 397.162 +	    }
 397.163 +	    emit sendDebugNodeList(nodeList);
 397.164 +	    emit updatedNodeList(this);
 397.165 +	    file.close();
 397.166 +	}
 397.167 +}
 397.168 +
 397.169 +
 397.170 +
 397.171 +int NodeManager::getId(QString str)
 397.172 +{
 397.173 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 397.174 +	{
 397.175 +			QString s;
 397.176 +			QString n;
 397.177 +			s=str;
 397.178 +			n=nodeList.at(i).nodeName;
 397.179 +			if(nodeList.at(i).nodeName==str)
 397.180 +				return nodeList.at(i).nodeId;
 397.181 +	}
 397.182 +	return 0;
 397.183 +}
 397.184 +
 397.185 +
 397.186 +void NodeManager::addDictionary(int ourNodeId,QList<Node> dictionary)
 397.187 +{
 397.188 +	for (ushort i = 0; i < dictionary.size(); ++i) 
 397.189 +	{
 397.190 +		int isInTheList=0;
 397.191 +		for (ushort n = 0; n < nodeList.size(); ++n) 
 397.192 +		{
 397.193 +			if(dictionary.at(i).nodeId==nodeList.at(n).nodeId)
 397.194 +				isInTheList++;
 397.195 +			
 397.196 +		}
 397.197 +		if((isInTheList==0)&&(dictionary.at(i).nodeId!=ourNodeId))
 397.198 +		{
 397.199 +			nodeList.append(dictionary.at(i));
 397.200 +			//!!!!!!!!!!!!!!!!!!!!!!
 397.201 +				//DEBUG
 397.202 +			emit sendDebugNodeList(nodeList);
 397.203 +			emit updatedNodeList(this);
 397.204 +		}
 397.205 +	}
 397.206 +}
 397.207 +
 397.208 +void NodeManager::encounterNode(int encounterNodeId,int encounterNodeType,QString encounterNodeName)
 397.209 +{
 397.210 +	int isInTheList=0;
 397.211 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 397.212 +	{
 397.213 +		//ENCOUNTER PROBABILITY UPDATE
 397.214 +		if(nodeList.at(i).nodeId==encounterNodeId)
 397.215 +		{
 397.216 +				Node tempNode;
 397.217 +				tempNode=nodeList.at(i);
 397.218 +				//ENCOUNTING EQUATION
 397.219 +				tempNode.probability=tempNode.probability+((1-tempNode.probability)*PENCOUNTER);
 397.220 +				nodeList.replace(i,tempNode);
 397.221 +				isInTheList++;
 397.222 +		}
 397.223 +	}
 397.224 +	//UNKNOW NEW NODE
 397.225 +	if(isInTheList==0) 
 397.226 +	{
 397.227 +		Node tempNode;
 397.228 +		tempNode.nodeId=encounterNodeId;
 397.229 +		tempNode.nodeName=encounterNodeName;
 397.230 +		tempNode.flag=-1;
 397.231 +		tempNode.probability=PENCOUNTER;
 397.232 +		nodeList.append(tempNode);
 397.233 +		//!!!!!!!!!!!!!!!!!!!!!!
 397.234 +		//DEBUG
 397.235 +		emit sendDebugNodeList(nodeList);
 397.236 +		emit updatedNodeList(this);
 397.237 +	}
 397.238 +}
 397.239 +
 397.240 +
 397.241 +void NodeManager::addRIB(QList<Node>RIB,int encounterNodeId)//RIB=P_(B,x)
 397.242 +{
 397.243 +	float P_AB=1;
 397.244 +	//First we find P_AB
 397.245 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 397.246 +	{
 397.247 +		if(nodeList.at(i).nodeId==encounterNodeId)
 397.248 +			P_AB = nodeList.at(i).probability;
 397.249 +	}
 397.250 +	//Then we update all transitivites
 397.251 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 397.252 +	{
 397.253 +		//TRANSITIVE PROBABILITY UPDATE
 397.254 +		if(nodeList.at(i).nodeId!=encounterNodeId)
 397.255 +		{
 397.256 +			int nodeCId = nodeList.at(i).nodeId;
 397.257 +			float P_AC = nodeList.at(i).probability;
 397.258 +			float P_BC = 1;
 397.259 +			float newP_AC;
 397.260 +			int flag=0;
 397.261 +			for (ushort n = 0; n < RIB.size(); ++n) 
 397.262 +			{
 397.263 +				if(RIB.at(n).nodeId==nodeCId)
 397.264 +				{
 397.265 +					P_BC = RIB.at(n).probability;
 397.266 +					flag = RIB.at(n).flag;
 397.267 +				}
 397.268 +			}
 397.269 +			newP_AC=P_AC+((1-P_AC) * P_AB * P_BC * BETA);
 397.270 +			//Adding data to list
 397.271 +			Node tempNode;
 397.272 +			tempNode=nodeList.at(i);
 397.273 +			tempNode.probability=newP_AC;
 397.274 +			tempNode.flag=flag;
 397.275 +			nodeList.replace(i,tempNode);
 397.276 +		}
 397.277 +
 397.278 +	}
 397.279 +	//DEBUG
 397.280 +	emit sendDebugNodeList(nodeList);
 397.281 +}
 397.282 +
 397.283 +
 397.284 +void NodeManager::addNode(Node newNode)
 397.285 +{
 397.286 +	nodeList.append(newNode);
 397.287 +	//!!!!!!!!!!!!!!!!!!!!!!!!!!!
 397.288 +	emit updatedNodeList(this);
 397.289 +	//DEBUG
 397.290 +	emit sendDebugNodeList(nodeList);
 397.291 +}
 397.292 +
 397.293 +QList<Node> NodeManager::getNodeList()
 397.294 +{	
 397.295 +	return nodeList;
 397.296 +}
 397.297 +
 397.298 +//Gives out only the list of nodes with RIB information
 397.299 +QList<Node> NodeManager::getRIBNodeList()
 397.300 +{	
 397.301 +	QList<Node> newNodeList;
 397.302 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 397.303 +	{
 397.304 +		if(nodeList.at(i).flag != -1)
 397.305 +			newNodeList.append(nodeList.at(i));
 397.306 +	
 397.307 +	}
 397.308 +	return newNodeList;
 397.309 +}
 397.310 +
   398.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   398.2 +++ b/x86/x86/nodeManager.h	Thu Jun 26 17:39:40 2008 +0100
   398.3 @@ -0,0 +1,106 @@
   398.4 +#ifndef NODEMANAGER_H
   398.5 +#define NODEMANAGER_H
   398.6 +
   398.7 +#include <QtCore>
   398.8 +#include <node.h>
   398.9 +//#include <messageFile.cpp>
  398.10 +//#include <bundleManager.h>
  398.11 +
  398.12 +//! This class contains a list with routing information of all nodes this node is aware of.
  398.13 +class NodeManager : public QObject
  398.14 +{
  398.15 +	Q_OBJECT
  398.16 +public:
  398.17 +	int AGING_TIMER;
  398.18 +	float PENCOUNTER;
  398.19 +	float BETA;
  398.20 +	float GAMMA;
  398.21 +	QTimer *agingTimer;
  398.22 +	QTimer *writeToFileTimer;
  398.23 +	NodeManager();
  398.24 +	QString storagePath;
  398.25 +	QDir dir;
  398.26 +	int option;
  398.27 +
  398.28 +	
  398.29 +	
  398.30 +	//! Adds a node to the node list of this NodeManager
  398.31 +	/*! Also emits signals to update the GUI.
  398.32 +	 * @param node the node to be added
  398.33 +	 */
  398.34 +	void addNode(Node);
  398.35 +
  398.36 +	//! Looks up the node id of the specified node.
  398.37 +	/*!
  398.38 +	 * @param str the string name of the node.
  398.39 +	 * @return the node id of the specified node.
  398.40 +	 */
  398.41 +	int getId(QString);
  398.42 +
  398.43 +	//! Inserts nodes from a dictionary to the node list.
  398.44 +	/*! Only inserts nodes that were not already in the list.
  398.45 +	 * @param the list of nodes to be added to the node list.
  398.46 +	 */
  398.47 +	void addDictionary(int ourNodeId,QList<Node>);
  398.48 +
  398.49 +	//! Handles the reception of a new RIB.
  398.50 +	/*! Updates the transitivities in the node list according to the new RIB.
  398.51 +	 * @param RIB the RIB received from the encountered node.
  398.52 +	 * @param encounterNodeId the id if the encountered node.
  398.53 +	 */
  398.54 +	void addRIB(QList<Node>RIB,int encounterNodeId);
  398.55 +
  398.56 +	//! Adjusts the delivery predictability for a encountered node.
  398.57 +	/*! If the node was already in the node list the delivery predictability 
  398.58 +	 * is updated, otherwise the new node is added to the node list.
  398.59 +	 * @param encounterNodeId the id of the encountered node
  398.60 +	 * @param encounterNodeType Currently not used
  398.61 +	 * @param encounterNodeName the string name of the encountered node.
  398.62 +	 */
  398.63 +	void encounterNode(int encounterNodeId,int encounterNodeType,QString encounterNodeName);
  398.64 +
  398.65 +	//! Returns the node list of this node manager.
  398.66 +	/*! 
  398.67 +	 * @return the nodelist of this node manager.
  398.68 +	 */
  398.69 +	QList<Node> getNodeList();
  398.70 +
  398.71 +	//! Returns the list of nodes that have RIB information.
  398.72 +	/*! Iterates through the node list and returns only the nodes that have 
  398.73 +	 * RIB information stored.
  398.74 +	 * @return the nodes that have RIB information.
  398.75 +	 */
  398.76 +	QList<Node> getRIBNodeList();
  398.77 +
  398.78 +	//! the list of nodes (should probably be delared private
  398.79 +	QList<Node> nodeList;
  398.80 +
  398.81 +
  398.82 +signals:
  398.83 +	/*!
  398.84 +	 * Emits the node list. (Used for updating GUI).
  398.85 +	 */
  398.86 +	void sendDebugNodeList(QList<Node>);
  398.87 +	
  398.88 +	/*!
  398.89 +	 * Emits this NodeManager. (Used for GUI???)
  398.90 +	 */
  398.91 +	void updatedNodeList(NodeManager*);
  398.92 +public slots:
  398.93 +	/*!
  398.94 +	 * Performs aging of the probability of all nodes in the node list.
  398.95 +	 */
  398.96 +	void aging();
  398.97 +		
  398.98 +	/*!
  398.99 +	 * Writes the node list to the file nodes.txt.
 398.100 +	 */
 398.101 +	void saveToFile();
 398.102 +		
 398.103 +	/*!
 398.104 +	 * Imports a nodelist from the file nodes.txt and performs 
 398.105 +	 * appropriate aging on the nodes imported.
 398.106 +	 */
 398.107 +	void readFromFile();
 398.108 +};
 398.109 +#endif
   399.1 Binary file x86/x86/prophet has changed
   400.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   400.2 +++ b/x86/x86/prophet.ini	Thu Jun 26 17:39:40 2008 +0100
   400.3 @@ -0,0 +1,149 @@
   400.4 +# ------------------------------------------
   400.5 +#  PRoPHET configuration file - prophet.ini
   400.6 +# ------------------------------------------
   400.7 +
   400.8 +
   400.9 +# -----------------
  400.10 +#  Node Parameters
  400.11 +# -----------------
  400.12 +
  400.13 +# A unique number identifying this node.
  400.14 +NODEID=50
  400.15 +
  400.16 +# A unique name identifying this node, should be the same as local_eid in 
  400.17 +# DTN-configuration but without the "dtn://" prefix.
  400.18 +NODENAME=samonote.dtn
  400.19 +
  400.20 +# The IP number of this node.
  400.21 +NODEIP=192.168.10.44
  400.22 +
  400.23 +# IP number of any secondary network interface on the same host. If there is no secondary interface, just set it to the same as NODEIP1.
  400.24 +NODEIP2=192.168.0.3
  400.25 +
  400.26 +# The broadcast adress of this node. Should be as narrow as possible, ie rather use 192.168.10.255 than 255.255.255.255
  400.27 +NODEBROADCAST=192.168.10.255
  400.28 +
  400.29 +
  400.30 +#  --------------------
  400.31 +#   PRoPHET parameters 
  400.32 +#  --------------------
  400.33 +
  400.34 +# The type of routing to use
  400.35 +# 0 = Epidemic
  400.36 +# 1 = PRoPHET GRTR P_(B,D)>P_(A,D)
  400.37 +ROUTING=0
  400.38 +
  400.39 +# The queuing policy to use
  400.40 +# 0 = FIFO
  400.41 +QUEUE=0
  400.42 +
  400.43 +# Initialization constant
  400.44 +PENCOUNTER=0.75
  400.45 +
  400.46 +# Scaling constant. Controls how large an impact the transitivity should have 
  400.47 +# on delivery predictability.
  400.48 +BETA=0.25
  400.49 +
  400.50 +# Aging constant
  400.51 +GAMMA=0.9989
  400.52 +
  400.53 +# ?
  400.54 +HELLO=10000
  400.55 +
  400.56 +# ?
  400.57 +ALIVE=15
  400.58 +
  400.59 +
  400.60 +# --------
  400.61 +#  Timers
  400.62 +# --------
  400.63 +
  400.64 +# The interval in milliseconds between beacon broadcasts in neighbour awareness.
  400.65 +BROADCASTTIMER=5000
  400.66 +
  400.67 +# The interval in milliseconds for performing aging.
  400.68 +AGINGTIMER=60000
  400.69 +
  400.70 +# The time in milliseconds before the node leaves the Hello state.
  400.71 +HELLOTIMER=60000
  400.72 +
  400.73 +# The time in milliseconds before the node leaves the Initiator state.
  400.74 +INITIATORTIMER=60000
  400.75 +
  400.76 +# The time in milliseconds before the node leaves the Listener state.
  400.77 +LISTENERTIMER=60000
  400.78 +
  400.79 +
  400.80 +# ------------------------
  400.81 +#  DTN-related Parameters
  400.82 +# ------------------------
  400.83 +
  400.84 +# The hostname where PRoPHET should connect to DTN. Usually the same as NODEIP1.
  400.85 +DTNHOSTNAME=193.77.152.156
  400.86 +
  400.87 +# The port PRoPHET should connect to DTN on. Usually 5555 or 5050.
  400.88 +DTNHOSTPORT=5050
  400.89 +
  400.90 +# ?
  400.91 +DTNTIMER=5000
  400.92 +
  400.93 +
  400.94 +# --------------------
  400.95 +#  Storage Parameters
  400.96 +# --------------------
  400.97 +
  400.98 +# The maximum amount of disk space that PRoPHET should use for storing bundles 
  400.99 +# (in bytes).
 400.100 +STORAGESIZE=80000
 400.101 +
 400.102 +# The maximum amount of memory PRoPHET should use for storing bundles (in bytes)
 400.103 +MEMORYSTORAGESIZE=20000
 400.104 +
 400.105 +# The directory PRoPHET will use for storing bundles. It will be created on 
 400.106 +# startup if it does not already exist.
 400.107 +STORAGEPATH=c:\Samo\PRoPHET\win32\storage\
 400.108 +
 400.109 +# The directory PRoPHET will use for logging. It will be created on startup if 
 400.110 +# it does not already exist.
 400.111 +LOGPATH=c:\Samo\PRoPHET\win32\log\
 400.112 +
 400.113 +# The directory PRoPHET will use for storing the node list, bundle list etc. It
 400.114 +# will be created on startup if it does not already exist.
 400.115 +MSGPATH=c:\Samo\PRoPHET\win32\list\
 400.116 +
 400.117 +# Whether the node list should be stored to disk or not.
 400.118 +USEFILENODES=1
 400.119 +
 400.120 +# Whether nodes in the node list on disk should be aged or not.
 400.121 +AGEFILENODES=1
 400.122 +
 400.123 +# The interval at which information is written to disk.
 400.124 +WRITETOFILETIMER=10000
 400.125 +
 400.126 +# Wheter bundles should be stored to disk or not.
 400.127 +USEFILEBUNDLES=1
 400.128 +
 400.129 +# Logging on/off.
 400.130 +LOGGING=1
 400.131 +
 400.132 +
 400.133 +# ---------------
 400.134 +#  Misc features
 400.135 +# ---------------
 400.136 +
 400.137 +# ?
 400.138 +CONTINIUSUPDATE=1
 400.139 +
 400.140 +# Whether to use TTL or not.
 400.141 +USETTL=1
 400.142 +
 400.143 +# The time to live for new bundles (in seconds).
 400.144 +TTLVALUE=60
 400.145 +
 400.146 +# Use acks for bundles, on/off.
 400.147 +USEACKS=1
 400.148 +
 400.149 +# Use smartoffer on/off. Smartoffer is a feature where a bundle will not be 
 400.150 +# offered again to a node that has already received it.
 400.151 +SMARTOFFER=1
 400.152 +
   401.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   401.2 +++ b/x86/x86/prophet.pro	Thu Jun 26 17:39:40 2008 +0100
   401.3 @@ -0,0 +1,84 @@
   401.4 +# GUI = true  - generates Makefile for building with GUI support.
   401.5 +# GUI = false - generates Makefile for building without GUI support.
   401.6 +GUI = true
   401.7 +
   401.8 +# PDAGUI = true  - generares makefile for building with GUI for PDA
   401.9 +# PDAGUI = false - generates makefile for building without GUI for PDA
  401.10 +# PDAGUI has no effect unless GUI is set to true
  401.11 +PDAGUI = true
  401.12 +
  401.13 +# DTN_INTERFACE = true  - generates Makefile for building with DTN support.
  401.14 +# DTN_INTERFACE = false - generates Makefile for building without DTN support.
  401.15 +DTN_INTERFACE = false
  401.16 +
  401.17 +contains(GUI, true) {
  401.18 +	message("Creating Makefile with GUI")
  401.19 +	DEFINES += GUI
  401.20 +	contains(PDAGUI, true) {
  401.21 +		message("GUI will be built for PDA use")
  401.22 +		DEFINES += PDAGUI
  401.23 +		HEADERS += connectionWidget.h\
  401.24 +				   msgReadWidget.h\
  401.25 +				   configWidget.h
  401.26 +		SOURCES += connectionWidget.cpp\
  401.27 +				   msgReadWidget.cpp\
  401.28 +				   configWidget.cpp
  401.29 +	}
  401.30 +	HEADERS += infoWidget.h\		
  401.31 +			   bundleWidget.h\		
  401.32 +        	   msgWidget.h \
  401.33 +			   debugWidget.h
  401.34 +	SOURCES += infoWidget.cpp\		
  401.35 +			   bundleWidget.cpp\		
  401.36 +        	   msgWidget.cpp \
  401.37 +			   debugWidget.cpp
  401.38 +}
  401.39 +contains(GUI, false) {
  401.40 +	message("Creating Makefile without GUI")
  401.41 +}
  401.42 +contains(DTN_INTERFACE, true) {
  401.43 +	message("Creating Makefile with DTN_INTERFACE")
  401.44 +	DEFINES += DTN_INTERFACE
  401.45 +	HEADERS += DTNInterface.h
  401.46 +	SOURCES += DTNInterface.cpp
  401.47 +}
  401.48 +contains(DTN_INTERFACE, false) {
  401.49 +	message("Creating Makefile without DTN_INTERFACE")
  401.50 +}
  401.51 +
  401.52 +TEMPLATE = app
  401.53 +QT+=gui network
  401.54 +QT-=
  401.55 +TARGET += 
  401.56 +DEPENDPATH += .
  401.57 +INCLUDEPATH += .
  401.58 +CONFIG += qt release
  401.59 +HEADERS += 	neighbourAwareness.h\
  401.60 +			bundle.h \
  401.61 +			bundleManager.h \
  401.62 +			node.h \
  401.63 +			nodeManager.h \
  401.64 +			connection.h \
  401.65 +			tlv.h \
  401.66 +			messageFile.h \
  401.67 +			hello.h \
  401.68 +			main.h \	   
  401.69 +			dataPacket.h \
  401.70 +			readFile.h \
  401.71 +			tcpClient.h \
  401.72 +			bundleListFileIO.h
  401.73 +
  401.74 +SOURCES += 	main.cpp \
  401.75 +			bundle.cpp \
  401.76 +			bundleManager.cpp \
  401.77 +			node.cpp \
  401.78 +			nodeManager.cpp \
  401.79 +			connection.cpp \
  401.80 +			hello.cpp \
  401.81 +			tlv.cpp \
  401.82 +			dataPacket.cpp \
  401.83 +			messageFile.cpp\
  401.84 +			neighbourAwareness.cpp\
  401.85 +			readFile.cpp \
  401.86 +			tcpClient.cpp \
  401.87 +			bundleListFileIO.cpp
   402.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   402.2 +++ b/x86/x86/readFile.cpp	Thu Jun 26 17:39:40 2008 +0100
   402.3 @@ -0,0 +1,836 @@
   402.4 +#include <QFile>
   402.5 +#include <QString>
   402.6 +#include <QHostAddress>
   402.7 +#include <readFile.h>
   402.8 +
   402.9 +ReadFile::ReadFile()
  402.10 +{
  402.11 +	QFile configuration("prophet.ini");
  402.12 +}
  402.13 +
  402.14 +float ReadFile::getBeta()
  402.15 +{
  402.16 +	QFile configuration("prophet.ini");
  402.17 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  402.18 +	QString line;
  402.19 +	QString search="BETA=";
  402.20 +	line=configuration.readLine();
  402.21 +	while(line.size()>0)
  402.22 +	{
  402.23 +		if(line.indexOf(search)!=-1)
  402.24 +		{
  402.25 +			line.remove(search,Qt::CaseInsensitive);
  402.26 +			return line.toFloat();
  402.27 +		}
  402.28 +		line=configuration.readLine();
  402.29 +		
  402.30 +	}
  402.31 +	configuration.close();
  402.32 +	return (float)0.25;
  402.33 +}
  402.34 +
  402.35 +float ReadFile::getGamma()
  402.36 +{
  402.37 +	QFile configuration("prophet.ini");
  402.38 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  402.39 +	QString line;
  402.40 +	QString search="GAMMA=";
  402.41 +	line=configuration.readLine();
  402.42 +	while(line.size()>0)
  402.43 +	{
  402.44 +		if(line.indexOf(search)!=-1)
  402.45 +		{
  402.46 +			line.remove(search,Qt::CaseInsensitive);
  402.47 +			return line.toFloat();
  402.48 +		}
  402.49 +		line=configuration.readLine();
  402.50 +		
  402.51 +	}
  402.52 +		configuration.close();
  402.53 +
  402.54 +	return (float)0.99;
  402.55 +}
  402.56 +
  402.57 +float ReadFile::getPEncounter()
  402.58 +{
  402.59 +	QFile configuration("prophet.ini");
  402.60 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  402.61 +	QString line;
  402.62 +	QString search="PENCOUNTER=";
  402.63 +	line=configuration.readLine();
  402.64 +	while(line.size()>0)
  402.65 +	{
  402.66 +		if(line.indexOf(search)!=-1)
  402.67 +		{
  402.68 +			line.remove(search,Qt::CaseInsensitive);
  402.69 +			return line.toFloat();
  402.70 +		}
  402.71 +		line=configuration.readLine();
  402.72 +		
  402.73 +	}
  402.74 +		configuration.close();
  402.75 +
  402.76 +	return (float)0.75;
  402.77 +}
  402.78 +
  402.79 +int ReadFile::getSmartOffer()
  402.80 +{
  402.81 +	QFile configuration("prophet.ini");
  402.82 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
  402.83 +	QString line;
  402.84 +	QString search="SMARTOFFER=";
  402.85 +	line=configuration.readLine();
  402.86 +	while(line.size()>0)
  402.87 +	{
  402.88 +		if(line.indexOf(search)!=-1)
  402.89 +		{
  402.90 +			line.remove(search,Qt::CaseInsensitive);
  402.91 +			return line.toInt();
  402.92 +		}
  402.93 +		line=configuration.readLine();
  402.94 +		
  402.95 +	}
  402.96 +		configuration.close();
  402.97 +
  402.98 +	return 1000;
  402.99 +}
 402.100 +
 402.101 +int ReadFile::getListenerTimer()
 402.102 +{
 402.103 +	QFile configuration("prophet.ini");
 402.104 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.105 +	QString line;
 402.106 +	QString search="LISTENERTIMER=";
 402.107 +	line=configuration.readLine();
 402.108 +	while(line.size()>0)
 402.109 +	{
 402.110 +		if(line.indexOf(search)!=-1)
 402.111 +		{
 402.112 +			line.remove(search,Qt::CaseInsensitive);
 402.113 +			return line.toInt();
 402.114 +		}
 402.115 +		line=configuration.readLine();
 402.116 +		
 402.117 +	}
 402.118 +		configuration.close();
 402.119 +
 402.120 +	return 1000;
 402.121 +}
 402.122 +
 402.123 +int ReadFile::getQueue()
 402.124 +{
 402.125 +	QFile configuration("prophet.ini");
 402.126 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.127 +	QString line;
 402.128 +	QString search="QUEUE=";
 402.129 +	line=configuration.readLine();
 402.130 +	while(line.size()>0)
 402.131 +	{
 402.132 +		if(line.indexOf(search)!=-1)
 402.133 +		{
 402.134 +			line.remove(search,Qt::CaseInsensitive);
 402.135 +			return line.toInt();
 402.136 +		}
 402.137 +		line=configuration.readLine();
 402.138 +		
 402.139 +	}
 402.140 +		configuration.close();
 402.141 +
 402.142 +	return 0;
 402.143 +}
 402.144 +
 402.145 +int ReadFile::getInitiatorTimer()
 402.146 +{
 402.147 +	QFile configuration("prophet.ini");
 402.148 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.149 +	QString line;
 402.150 +	QString search="INITIATORTIMER=";
 402.151 +	line=configuration.readLine();
 402.152 +	while(line.size()>0)
 402.153 +	{
 402.154 +		if(line.indexOf(search)!=-1)
 402.155 +		{
 402.156 +			line.remove(search,Qt::CaseInsensitive);
 402.157 +			return line.toInt();
 402.158 +		}
 402.159 +		line=configuration.readLine();
 402.160 +		
 402.161 +	}
 402.162 +		configuration.close();
 402.163 +
 402.164 +	return 1000;
 402.165 +}
 402.166 +int ReadFile::getUseTTL()
 402.167 +{
 402.168 +	QFile configuration("prophet.ini");
 402.169 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.170 +	QString line;
 402.171 +	QString search="USETTL=";
 402.172 +	line=configuration.readLine();
 402.173 +	while(line.size()>0)
 402.174 +	{
 402.175 +		if(line.indexOf(search)!=-1)
 402.176 +		{
 402.177 +			line.remove(search,Qt::CaseInsensitive);
 402.178 +			return line.toInt();
 402.179 +		}
 402.180 +		line=configuration.readLine();
 402.181 +		
 402.182 +	}
 402.183 +		configuration.close();
 402.184 +
 402.185 +	return 0;
 402.186 +
 402.187 +}
 402.188 +
 402.189 +int ReadFile::getTTL()
 402.190 +{
 402.191 +	QFile configuration("prophet.ini");
 402.192 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.193 +	QString line;
 402.194 +	QString search="TTLVALUE=";
 402.195 +	line=configuration.readLine();
 402.196 +	while(line.size()>0)
 402.197 +	{
 402.198 +		if(line.indexOf(search)!=-1)
 402.199 +		{
 402.200 +			line.remove(search,Qt::CaseInsensitive);
 402.201 +			return line.toInt();
 402.202 +		}
 402.203 +		line=configuration.readLine();
 402.204 +		
 402.205 +	}
 402.206 +		configuration.close();
 402.207 +
 402.208 +	return 100000;
 402.209 +
 402.210 +}
 402.211 +
 402.212 +int ReadFile::getUseACKS()
 402.213 +{
 402.214 +	QFile configuration("prophet.ini");
 402.215 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.216 +	QString line;
 402.217 +	QString search="USEACKS=";
 402.218 +	line=configuration.readLine();
 402.219 +	while(line.size()>0)
 402.220 +	{
 402.221 +		if(line.indexOf(search)!=-1)
 402.222 +		{
 402.223 +			line.remove(search,Qt::CaseInsensitive);
 402.224 +			return line.toInt();
 402.225 +		}
 402.226 +		line=configuration.readLine();
 402.227 +		
 402.228 +	}
 402.229 +		configuration.close();
 402.230 +
 402.231 +	return 0;
 402.232 +}
 402.233 +
 402.234 +int ReadFile::getHelloTimer()
 402.235 +{
 402.236 +	QFile configuration("prophet.ini");
 402.237 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.238 +	QString line;
 402.239 +	QString search="HELLOTIMER=";
 402.240 +	line=configuration.readLine();
 402.241 +	while(line.size()>0)
 402.242 +	{
 402.243 +		if(line.indexOf(search)!=-1)
 402.244 +		{
 402.245 +			line.remove(search,Qt::CaseInsensitive);
 402.246 +			return line.toInt();
 402.247 +		}
 402.248 +		line=configuration.readLine();
 402.249 +		
 402.250 +	}
 402.251 +		configuration.close();
 402.252 +
 402.253 +	return 1000;
 402.254 +}
 402.255 +
 402.256 +int ReadFile::getAgingTimer()
 402.257 +{
 402.258 +	QFile configuration("prophet.ini");
 402.259 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.260 +	QString line;
 402.261 +	QString search="AGINGTIMER=";
 402.262 +	line=configuration.readLine();
 402.263 +	while(line.size()>0)
 402.264 +	{
 402.265 +		if(line.indexOf(search)!=-1)
 402.266 +		{
 402.267 +			line.remove(search,Qt::CaseInsensitive);
 402.268 +			return line.toInt();
 402.269 +		}
 402.270 +		line=configuration.readLine();
 402.271 +		
 402.272 +	}
 402.273 +		configuration.close();
 402.274 +
 402.275 +	return 1000;
 402.276 +}
 402.277 +
 402.278 +int ReadFile::getDTNHostPort()
 402.279 +{
 402.280 +	QFile configuration("prophet.ini");
 402.281 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.282 +	QString line;
 402.283 +	QString search="DTNHOSTPORT=";
 402.284 +	line=configuration.readLine();
 402.285 +	while(line.size()>0)
 402.286 +	{
 402.287 +		if(line.indexOf(search)!=-1)
 402.288 +		{
 402.289 +			line.remove(search,Qt::CaseInsensitive);
 402.290 +			return line.toInt();
 402.291 +		}
 402.292 +		line=configuration.readLine();
 402.293 +		
 402.294 +	}
 402.295 +		configuration.close();
 402.296 +
 402.297 +	return 21;
 402.298 +
 402.299 +}	
 402.300 +
 402.301 +int ReadFile::getStorageSize()
 402.302 +{
 402.303 +	QFile configuration("prophet.ini");
 402.304 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.305 +	QString line;
 402.306 +	QString search="STORAGESIZE=";
 402.307 +	line=configuration.readLine();
 402.308 +	while(line.size()>0)
 402.309 +	{
 402.310 +		if(line.indexOf(search)!=-1)
 402.311 +		{
 402.312 +			line.remove(search,Qt::CaseInsensitive);
 402.313 +			return line.toInt();
 402.314 +		}
 402.315 +		line=configuration.readLine();
 402.316 +		
 402.317 +	}
 402.318 +		configuration.close();
 402.319 +
 402.320 +	return 1000;
 402.321 +
 402.322 +}	
 402.323 +
 402.324 +int ReadFile::getMemoryStorageSize()
 402.325 +{
 402.326 +	QFile configuration("prophet.ini");
 402.327 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.328 +	QString line;
 402.329 +	QString search="MEMORYSTORAGESIZE=";
 402.330 +	line=configuration.readLine();
 402.331 +	while(line.size()>0)
 402.332 +	{
 402.333 +		if(line.indexOf(search)!=-1)
 402.334 +		{
 402.335 +			line.remove(search,Qt::CaseInsensitive);
 402.336 +			return line.toInt();
 402.337 +		}
 402.338 +		line=configuration.readLine();
 402.339 +		
 402.340 +	}
 402.341 +		configuration.close();
 402.342 +
 402.343 +	return 1000;
 402.344 +
 402.345 +}	
 402.346 +
 402.347 +int ReadFile::getAlive()
 402.348 +{
 402.349 +	QFile configuration("prophet.ini");
 402.350 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.351 +	QString line;
 402.352 +	QString search="ALIVE=";
 402.353 +	line=configuration.readLine();
 402.354 +	while(line.size()>0)
 402.355 +	{
 402.356 +		if(line.indexOf(search)!=-1)
 402.357 +		{
 402.358 +			line.remove(search,Qt::CaseInsensitive);
 402.359 +			return line.toInt();
 402.360 +		}
 402.361 +		line=configuration.readLine();
 402.362 +		
 402.363 +	}
 402.364 +		configuration.close();
 402.365 +
 402.366 +	return 15;
 402.367 +
 402.368 +}	
 402.369 +
 402.370 +
 402.371 +int ReadFile::getBroadcastTimer()
 402.372 +{
 402.373 +	QFile configuration("prophet.ini");
 402.374 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.375 +	QString line;
 402.376 +	QString search="BROADCASTTIMER=";
 402.377 +	line=configuration.readLine();
 402.378 +	while(line.size()>0)
 402.379 +	{
 402.380 +		if(line.indexOf(search)!=-1)
 402.381 +		{
 402.382 +			line.remove(search,Qt::CaseInsensitive);
 402.383 +			return line.toInt();
 402.384 +		}
 402.385 +		line=configuration.readLine();
 402.386 +		
 402.387 +	}
 402.388 +		configuration.close();
 402.389 +
 402.390 +	return 1000;
 402.391 +
 402.392 +}
 402.393 +
 402.394 +
 402.395 +int ReadFile::getHello()
 402.396 +{
 402.397 +	QFile configuration("prophet.ini");
 402.398 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.399 +	QString line;
 402.400 +	QString search="HELLO=";
 402.401 +	line=configuration.readLine();
 402.402 +	while(line.size()>0)
 402.403 +	{
 402.404 +		if(line.indexOf(search)!=-1)
 402.405 +		{
 402.406 +			line.remove(search,Qt::CaseInsensitive);
 402.407 +			return line.toInt();
 402.408 +		}
 402.409 +		line=configuration.readLine();
 402.410 +		
 402.411 +	}
 402.412 +		configuration.close();
 402.413 +
 402.414 +	return 1;
 402.415 +
 402.416 +}
 402.417 +
 402.418 +
 402.419 +int ReadFile::getRouting()
 402.420 +{
 402.421 +	QFile configuration("prophet.ini");
 402.422 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.423 +	QString line;
 402.424 +	QString search="ROUTING=";
 402.425 +	line=configuration.readLine();
 402.426 +	while(line.size()>0)
 402.427 +	{
 402.428 +		if(line.indexOf(search)!=-1)
 402.429 +		{
 402.430 +			line.remove(search,Qt::CaseInsensitive);
 402.431 +			return line.toInt();
 402.432 +		}
 402.433 +		line=configuration.readLine();
 402.434 +		
 402.435 +	}
 402.436 +		configuration.close();
 402.437 +
 402.438 +	return 1;
 402.439 +}
 402.440 +
 402.441 +int ReadFile::getDTNTimer()
 402.442 +{
 402.443 +	QFile configuration("prophet.ini");
 402.444 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.445 +	QString line;
 402.446 +	QString search="DTNTIMER=";
 402.447 +	line=configuration.readLine();
 402.448 +	while(line.size()>0)
 402.449 +	{
 402.450 +		if(line.indexOf(search)!=-1)
 402.451 +		{
 402.452 +			line.remove(search,Qt::CaseInsensitive);
 402.453 +			return line.toInt();
 402.454 +		}
 402.455 +		line=configuration.readLine();
 402.456 +		
 402.457 +	}
 402.458 +		configuration.close();
 402.459 +
 402.460 +	return 1000;
 402.461 +}
 402.462 +
 402.463 +
 402.464 +
 402.465 +int ReadFile::getAgeFileNodes()
 402.466 +{
 402.467 +	QFile configuration("prophet.ini");
 402.468 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.469 +	QString line;
 402.470 +	QString search="AGEFILENODES=";
 402.471 +	line=configuration.readLine();
 402.472 +	while(line.size()>0)
 402.473 +	{
 402.474 +		if(line.indexOf(search)!=-1)
 402.475 +		{
 402.476 +			line.remove(search,Qt::CaseInsensitive);
 402.477 +			return line.toInt();
 402.478 +		}
 402.479 +		line=configuration.readLine();
 402.480 +		
 402.481 +	}
 402.482 +		configuration.close();
 402.483 +
 402.484 +	return 1;
 402.485 +}
 402.486 +
 402.487 +int ReadFile::getContiniusUpdate()
 402.488 +{
 402.489 +	QFile configuration("prophet.ini");
 402.490 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.491 +	QString line;
 402.492 +	QString search="CONTINIUSUPDATE=";
 402.493 +	line=configuration.readLine();
 402.494 +	while(line.size()>0)
 402.495 +	{
 402.496 +		if(line.indexOf(search)!=-1)
 402.497 +		{
 402.498 +			line.remove(search,Qt::CaseInsensitive);
 402.499 +			return line.toInt();
 402.500 +		}
 402.501 +		line=configuration.readLine();
 402.502 +		
 402.503 +	}
 402.504 +		configuration.close();
 402.505 +
 402.506 +	return 1;
 402.507 +}
 402.508 +
 402.509 +
 402.510 +int ReadFile::getNodeId()
 402.511 +{
 402.512 +	QFile configuration("prophet.ini");
 402.513 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.514 +	QString line;
 402.515 +	QString search="NODEID=";
 402.516 +	line=configuration.readLine();
 402.517 +	while(line.size()>0)
 402.518 +	{
 402.519 +		if(line.indexOf(search)!=-1)
 402.520 +		{
 402.521 +			line.remove(search,Qt::CaseInsensitive);
 402.522 +			return line.toInt();
 402.523 +		}
 402.524 +		line=configuration.readLine();
 402.525 +		
 402.526 +	}
 402.527 +		configuration.close();
 402.528 +
 402.529 +	return 0;
 402.530 +}
 402.531 +
 402.532 +int ReadFile::getUseFileBundles()
 402.533 +{
 402.534 +	QFile configuration("prophet.ini");
 402.535 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.536 +	QString line;
 402.537 +	QString search="USEFILEBUNDLES=";
 402.538 +	line=configuration.readLine();
 402.539 +	while(line.size()>0)
 402.540 +	{
 402.541 +		if(line.indexOf(search)!=-1)
 402.542 +		{
 402.543 +			line.remove(search,Qt::CaseInsensitive);
 402.544 +			return line.toInt();
 402.545 +		}
 402.546 +		line=configuration.readLine();
 402.547 +		
 402.548 +	}
 402.549 +		configuration.close();
 402.550 +
 402.551 +	return 1;
 402.552 +}
 402.553 +
 402.554 +
 402.555 +int ReadFile::getWriteToFileTimer()
 402.556 +{
 402.557 +	QFile configuration("prophet.ini");
 402.558 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.559 +	QString line;
 402.560 +	QString search="WRITETOFILETIMER=";
 402.561 +	line=configuration.readLine();
 402.562 +	while(line.size()>0)
 402.563 +	{
 402.564 +		if(line.indexOf(search)!=-1)
 402.565 +		{
 402.566 +			line.remove(search,Qt::CaseInsensitive);
 402.567 +			return line.toInt();
 402.568 +		}
 402.569 +		line=configuration.readLine();
 402.570 +		
 402.571 +	}
 402.572 +		configuration.close();
 402.573 +
 402.574 +	return 60;
 402.575 +}
 402.576 +
 402.577 +int ReadFile::getUseFileHash()
 402.578 +{
 402.579 +	QFile configuration("prophet.ini");
 402.580 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.581 +	QString line;
 402.582 +	QString search="USEFILEHASH=";
 402.583 +	line=configuration.readLine();
 402.584 +	while(line.size()>0)
 402.585 +	{
 402.586 +		if(line.indexOf(search)!=-1)
 402.587 +		{
 402.588 +			line.remove(search,Qt::CaseInsensitive);
 402.589 +			return line.toInt();
 402.590 +		}
 402.591 +		line=configuration.readLine();
 402.592 +		
 402.593 +	}
 402.594 +		configuration.close();
 402.595 +
 402.596 +	return 1;
 402.597 +}
 402.598 +
 402.599 +
 402.600 +int ReadFile::getLogOption()
 402.601 +{
 402.602 +	QFile configuration("prophet.ini");
 402.603 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.604 +	QString line;
 402.605 +	QString search="LOGGING=";
 402.606 +	line=configuration.readLine();
 402.607 +	while(line.size()>0)
 402.608 +	{
 402.609 +		if(line.indexOf(search)!=-1)
 402.610 +		{
 402.611 +			line.remove(search,Qt::CaseInsensitive);
 402.612 +			return line.toInt();
 402.613 +		}
 402.614 +		line=configuration.readLine();
 402.615 +		
 402.616 +	}
 402.617 +		configuration.close();
 402.618 +
 402.619 +	return 60;
 402.620 +}	
 402.621 +
 402.622 +int ReadFile::getUseFileNodes()
 402.623 +{
 402.624 +	QFile configuration("prophet.ini");
 402.625 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.626 +	QString line;
 402.627 +	QString search="USEFILENODES=";
 402.628 +	line=configuration.readLine();
 402.629 +	while(line.size()>0)
 402.630 +	{
 402.631 +		if(line.indexOf(search)!=-1)
 402.632 +		{
 402.633 +			line.remove(search,Qt::CaseInsensitive);
 402.634 +			return line.toInt();
 402.635 +		}
 402.636 +		line=configuration.readLine();
 402.637 +		
 402.638 +	}
 402.639 +		configuration.close();
 402.640 +
 402.641 +	return 0;
 402.642 +}	
 402.643 +
 402.644 +QString ReadFile::getNodeName()
 402.645 +{
 402.646 +	QFile configuration("prophet.ini");
 402.647 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.648 +	QString line;
 402.649 +	QString search="NODENAME=";
 402.650 +	line=configuration.readLine();
 402.651 +	while(line.size()>0)
 402.652 +	{
 402.653 +		if(line.indexOf(search)!=-1)
 402.654 +		{
 402.655 +			line.remove(search,Qt::CaseInsensitive);
 402.656 +			line.chop(1);
 402.657 +			return line;
 402.658 +		}
 402.659 +		line=configuration.readLine();
 402.660 +		
 402.661 +	}
 402.662 +		configuration.close();
 402.663 +
 402.664 +	QString ret="unknown";
 402.665 +	return ret;
 402.666 +}
 402.667 +
 402.668 +QString ReadFile::getStoragePath()
 402.669 +{
 402.670 +	QFile configuration("prophet.ini");
 402.671 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.672 +	QString line;
 402.673 +	QString search="STORAGEPATH=";
 402.674 +	line=configuration.readLine();
 402.675 +	while(line.size()>0)
 402.676 +	{
 402.677 +		if(line.indexOf(search)!=-1)
 402.678 +		{
 402.679 +			line.remove(search,Qt::CaseInsensitive);
 402.680 +			line.chop(1);
 402.681 +			return line;
 402.682 +		}
 402.683 +		line=configuration.readLine();
 402.684 +		
 402.685 +	}
 402.686 +	QString ret="";
 402.687 +		configuration.close();
 402.688 +
 402.689 +	return ret;
 402.690 +}
 402.691 +
 402.692 +QString ReadFile::getLogPath()
 402.693 +{
 402.694 +	QFile configuration("prophet.ini");
 402.695 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.696 +	QString line;
 402.697 +	QString search="LOGPATH=";
 402.698 +	line=configuration.readLine();
 402.699 +	while(line.size()>0)
 402.700 +	{
 402.701 +		if(line.indexOf(search)!=-1)
 402.702 +		{
 402.703 +			line.remove(search,Qt::CaseInsensitive);
 402.704 +			line.chop(1);
 402.705 +			return line;
 402.706 +		}
 402.707 +		line=configuration.readLine();
 402.708 +		
 402.709 +	}
 402.710 +	QString ret="";
 402.711 +			configuration.close();
 402.712 +
 402.713 +	return ret;
 402.714 +}
 402.715 +QString ReadFile::getMsgPath()
 402.716 +{
 402.717 +	QFile configuration("prophet.ini");
 402.718 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.719 +	QString line;
 402.720 +	QString search="MSGPATH=";
 402.721 +	line=configuration.readLine();
 402.722 +	while(line.size()>0)
 402.723 +	{
 402.724 +		if(line.indexOf(search)!=-1)
 402.725 +		{
 402.726 +			line.remove(search,Qt::CaseInsensitive);
 402.727 +			line.chop(1);
 402.728 +			return line;
 402.729 +		}
 402.730 +		line=configuration.readLine();
 402.731 +		
 402.732 +	}
 402.733 +	QString ret="";
 402.734 +		configuration.close();
 402.735 +
 402.736 +	return ret;
 402.737 +}
 402.738 +
 402.739 +QHostAddress ReadFile::getNodeIp()
 402.740 +{
 402.741 +	QFile configuration("prophet.ini");
 402.742 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.743 +	QString line;
 402.744 +	QString search="NODEIP=";
 402.745 +	line=configuration.readLine();
 402.746 +	while(line.size()>0)
 402.747 +	{
 402.748 +		if(line.indexOf(search)!=-1)
 402.749 +		{
 402.750 +			line.remove(search,Qt::CaseInsensitive);
 402.751 +			QHostAddress ip(line);
 402.752 +			return ip;
 402.753 +
 402.754 +		}
 402.755 +		line=configuration.readLine();
 402.756 +	
 402.757 +	}
 402.758 +		configuration.close();
 402.759 +
 402.760 +	QHostAddress ret("192.168.10.1");
 402.761 +	return ret;
 402.762 +}
 402.763 +
 402.764 +QHostAddress ReadFile::getBroadcast()
 402.765 +{
 402.766 +	QFile configuration("prophet.ini");
 402.767 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.768 +	QString line;
 402.769 +	QString search="NODEBROADCAST=";
 402.770 +	line=configuration.readLine();
 402.771 +	while(line.size()>0)
 402.772 +	{
 402.773 +		if(line.indexOf(search)!=-1)
 402.774 +		{
 402.775 +			line.remove(search,Qt::CaseInsensitive);
 402.776 +			QHostAddress ip(line);
 402.777 +			return ip;
 402.778 +
 402.779 +		}
 402.780 +		line=configuration.readLine();
 402.781 +	}
 402.782 +	QHostAddress ret("255.255.255.255");
 402.783 +		configuration.close();
 402.784 +
 402.785 +	return ret;
 402.786 +
 402.787 +}
 402.788 +
 402.789 +QHostAddress ReadFile::getNodeIp2()
 402.790 +{
 402.791 +	QFile configuration("prophet.ini");
 402.792 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.793 +	QString line;
 402.794 +	QString search="NODEIP2=";
 402.795 +	line=configuration.readLine();
 402.796 +	while(line.size()>0)
 402.797 +	{
 402.798 +		if(line.indexOf(search)!=-1)
 402.799 +		{
 402.800 +			line.remove(search,Qt::CaseInsensitive);
 402.801 +			QHostAddress ip(line);
 402.802 +			return ip;
 402.803 +
 402.804 +		}
 402.805 +		line=configuration.readLine();
 402.806 +	
 402.807 +	}
 402.808 +	QHostAddress ret("192.168.10.1");
 402.809 +		configuration.close();
 402.810 +
 402.811 +	return ret;
 402.812 +
 402.813 +}
 402.814 +
 402.815 +QHostAddress ReadFile::getDTNHostName()
 402.816 +{
 402.817 +	QFile configuration("prophet.ini");
 402.818 +	configuration.open(QIODevice::ReadOnly | QIODevice::Text);
 402.819 +	QString line;
 402.820 +	QString search="DTNHOSTNAME=";
 402.821 +	line=configuration.readLine();
 402.822 +	while(line.size()>0)
 402.823 +	{
 402.824 +		if(line.indexOf(search)!=-1)
 402.825 +		{
 402.826 +			line.remove(search,Qt::CaseInsensitive);
 402.827 +			QHostAddress ip(line);
 402.828 +			return ip;
 402.829 +
 402.830 +		}
 402.831 +		line=configuration.readLine();
 402.832 +	
 402.833 +	}
 402.834 +	QHostAddress ret("192.168.10.1");
 402.835 +		configuration.close();
 402.836 +
 402.837 +	return ret;
 402.838 +
 402.839 +}
   403.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   403.2 +++ b/x86/x86/readFile.h	Thu Jun 26 17:39:40 2008 +0100
   403.3 @@ -0,0 +1,64 @@
   403.4 +#ifndef READFILE_H
   403.5 +#define READFILE_H
   403.6 +
   403.7 +#include <QtCore>
   403.8 +#include <QtNetwork>
   403.9 +
  403.10 +//QSettings could be used instead...
  403.11 +
  403.12 +/*! \brief This class contains the parser for the configuration file 
  403.13 + * prophet.ini.
  403.14 + * 
  403.15 + * */
  403.16 +class ReadFile: public QObject
  403.17 +{
  403.18 +	Q_OBJECT
  403.19 +
  403.20 +	public:
  403.21 +
  403.22 +	QFile configuration;
  403.23 +
  403.24 +	ReadFile();
  403.25 +	float getGamma();
  403.26 +	float getBeta();
  403.27 +	float getPEncounter();
  403.28 +	int getNodeId();
  403.29 +	int getAgingTimer();
  403.30 +	int getHelloTimer();
  403.31 +	int getInitiatorTimer();
  403.32 +	int getListenerTimer();
  403.33 +	int getDTNHostPort();
  403.34 +	int getMemoryStorageSize();
  403.35 +	int getStorageSize();
  403.36 +	int getAlive();
  403.37 +	int getBroadcastTimer();
  403.38 +	int getHello();
  403.39 +	int getContiniusUpdate();
  403.40 +	int getRouting();
  403.41 +	int getUseFileNodes();
  403.42 +	int getWriteToFileTimer();
  403.43 +	int getAgeFileNodes();
  403.44 +	int getUseFileBundles();
  403.45 +	int getLogOption();
  403.46 +	int getUseACKS();
  403.47 +	int getTTL();
  403.48 +	int getUseTTL();
  403.49 +	int getDTNTimer();
  403.50 +	int getQueue();
  403.51 +	int getSmartOffer();
  403.52 +	int getUseFileHash();
  403.53 +	
  403.54 +	QString getStoragePath();
  403.55 +	QString getMsgPath();
  403.56 +	QString getLogPath();
  403.57 +
  403.58 +
  403.59 +
  403.60 +	QString getNodeName();
  403.61 +	QHostAddress getNodeIp();
  403.62 +	QHostAddress getNodeIp2();
  403.63 +	QHostAddress getDTNHostName();
  403.64 +	QHostAddress getBroadcast();
  403.65 +};
  403.66 +
  403.67 +#endif
   404.1 Binary file x86/x86/red_off.png has changed
   405.1 Binary file x86/x86/red_on.png has changed
   406.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   406.2 +++ b/x86/x86/tcpClient.cpp	Thu Jun 26 17:39:40 2008 +0100
   406.3 @@ -0,0 +1,101 @@
   406.4 +#include "tcpClient.h"
   406.5 +
   406.6 +TcpClient::TcpClient(QObject* parent) : QTcpSocket(parent)
   406.7 +{
   406.8 +
   406.9 +	timer = new QTimer;
  406.10 +	timer->setSingleShot(true);
  406.11 +	connect(timer, SIGNAL(timeout()), this, SLOT(reconnectToHost()));
  406.12 +	connect(this, SIGNAL(stateChanged(QAbstractSocket::SocketState)), this, SLOT(hostStateChanged(QAbstractSocket::SocketState)));
  406.13 +	connect(this, SIGNAL(error(QAbstractSocket::SocketError)), this, SLOT(hostError(QAbstractSocket::SocketError)));
  406.14 +	connect(this, SIGNAL(readyRead()), this, SLOT(hostReadyRead()));
  406.15 +	int i = readBufferSize();
  406.16 +	setReadBufferSize(0);
  406.17 +	currentHostIndex = 0;
  406.18 +}
  406.19 +
  406.20 +TcpClient::~TcpClient()
  406.21 +{
  406.22 +}
  406.23 +
  406.24 +void TcpClient::addHost(QString hn, int hp)
  406.25 +{
  406.26 +	hostNames << hn;
  406.27 +	hostPorts << hp;
  406.28 +	currentHostIndex = hostNames.count()-1;
  406.29 +	if ((state() == QAbstractSocket::UnconnectedState) && (hostNames.count() == 1))
  406.30 +		connectToHost(hostNames[currentHostIndex], hostPorts[currentHostIndex]);
  406.31 +}
  406.32 +
  406.33 +void TcpClient::reconnectToHost()
  406.34 +{
  406.35 +	if (hostNames.count() == 0)
  406.36 +		return;
  406.37 +	currentHostIndex++;
  406.38 +	currentHostIndex = currentHostIndex % hostNames.count();
  406.39 +	connectToHost(hostNames[currentHostIndex], hostPorts[currentHostIndex]);
  406.40 +}
  406.41 +
  406.42 +void TcpClient::hostStateChanged(QAbstractSocket::SocketState state)
  406.43 +{
  406.44 +	switch (state)
  406.45 +	{
  406.46 +	case QAbstractSocket::ConnectedState:
  406.47 +		{
  406.48 +			QList<QString>::iterator it;
  406.49 +			it = commands.begin();
  406.50 +			while (it != commands.end())
  406.51 +			{
  406.52 +				write((*it).toAscii());
  406.53 +				it++;
  406.54 +			}
  406.55 +			emit connected();
  406.56 +		}
  406.57 +		break;
  406.58 +	case QAbstractSocket::UnconnectedState:
  406.59 +		timer->start(2000);
  406.60 +		emit disconnected();
  406.61 +		break;
  406.62 +	}
  406.63 +}
  406.64 +
  406.65 +void TcpClient::hostError(QAbstractSocket::SocketError error)
  406.66 +{
  406.67 +	abort();
  406.68 +	timer->start(2000);
  406.69 +	emit disconnected();
  406.70 +}
  406.71 +
  406.72 +void TcpClient::hostReadyRead()
  406.73 +{
  406.74 +	buffer += readAll();
  406.75 +	int from = 0;
  406.76 +	int idx;
  406.77 +	int size = buffer.size();
  406.78 +	QByteArray end=buffer.mid(size-5);
  406.79 +	idx = end.indexOf("dtn%", from);
  406.80 +	if (idx != -1)
  406.81 +	{
  406.82 +		QByteArray oddan;
  406.83 +		oddan.append(buffer);
  406.84 +		int velikos = oddan.size();
  406.85 +		emit newAnswer(oddan);
  406.86 +		buffer.clear();
  406.87 +	}
  406.88 +}
  406.89 +
  406.90 +void TcpClient::appendCommand(int id, QString cmd)
  406.91 +{
  406.92 +	cmd += QString("\r");
  406.93 +	commands.append(cmd);
  406.94 +	if (state() == QAbstractSocket::ConnectedState)
  406.95 +		write(cmd.toAscii());
  406.96 +}
  406.97 +
  406.98 +bool TcpClient::isConnected()
  406.99 +{
 406.100 +	if (state() == QAbstractSocket::ConnectedState)
 406.101 +		return true;
 406.102 +	else
 406.103 +		return false;
 406.104 +}
   407.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   407.2 +++ b/x86/x86/tcpClient.h	Thu Jun 26 17:39:40 2008 +0100
   407.3 @@ -0,0 +1,40 @@
   407.4 +#ifndef TCPCLIENT_H
   407.5 +#define TCPCLIENT_H
   407.6 +
   407.7 +#include <QtCore>
   407.8 +#include <QTcpSocket>
   407.9 +#include <QTextCodec>
  407.10 +
  407.11 +class TcpClient : public QTcpSocket
  407.12 +{
  407.13 +	Q_OBJECT
  407.14 +
  407.15 +public:
  407.16 +	TcpClient(QObject* parent = 0);
  407.17 +	~TcpClient();
  407.18 +	virtual void addHost(QString hn, int hp);
  407.19 +	virtual void appendCommand(int id, QString cmd);
  407.20 +	virtual bool isConnected();
  407.21 +
  407.22 +public slots:
  407.23 +	virtual void reconnectToHost();
  407.24 +	virtual void hostStateChanged(QAbstractSocket::SocketState state);
  407.25 +	virtual void hostError(QAbstractSocket::SocketError error);
  407.26 +	virtual void hostReadyRead();
  407.27 +
  407.28 +signals:
  407.29 +	void newAnswer(QByteArray answ);
  407.30 +	void connected();
  407.31 +	void disconnected();
  407.32 +	
  407.33 +private:
  407.34 +	QList<QString> commands;
  407.35 +	QList<int> ids;
  407.36 +	QByteArray buffer;
  407.37 +	QTimer* timer;
  407.38 +	QList<QString> hostNames;
  407.39 +	QList<int> hostPorts;
  407.40 +	int currentHostIndex;
  407.41 +};
  407.42 +
  407.43 +#endif
   408.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   408.2 +++ b/x86/x86/tlv.cpp	Thu Jun 26 17:39:40 2008 +0100
   408.3 @@ -0,0 +1,521 @@
   408.4 +#include <QtCore>
   408.5 +#include <tlv.h>
   408.6 +#include <hello.h>
   408.7 +#include <messageFile.h>
   408.8 +#include <readFile.h>
   408.9 +#include <stdio.h>
  408.10 +
  408.11 +
  408.12 +//WARNING: SOME OF THE STRUCTURES HAS BEEN MODIFIED AND ARE NOT THE SAME AS IN DRAFT!
  408.13 +struct HelloHeader
  408.14 +{
  408.15 +	qint32 type;
  408.16 +	qint32 function;
  408.17 +	qint32 timer;
  408.18 +	qint32 nameLenght;
  408.19 +	qint32 nodeId;
  408.20 +	qint32 nodeType;
  408.21 +};
  408.22 +
  408.23 +struct DictionaryHeader 
  408.24 +{
  408.25 +	qint32 type;
  408.26 +	qint32 flags;
  408.27 +	qint32 lenght;
  408.28 +	qint32 entryCount;
  408.29 +	qint32 reserved;
  408.30 +};
  408.31 +
  408.32 +struct BundleListHeader 
  408.33 +{
  408.34 +	qint32 type;
  408.35 +	qint32 flags;
  408.36 +	qint32 lenght;
  408.37 +	qint32 entryCount;
  408.38 +	qint32 reserved;
  408.39 +};
  408.40 +
  408.41 +struct BundleListItem 
  408.42 +{
  408.43 +	qint32 destinationId;
  408.44 +	qint32 BFlags;
  408.45 +	qint32 reserved;
  408.46 +	qint32 bundleId;
  408.47 +};
  408.48 +
  408.49 +struct BundleDataHeader 
  408.50 +{
  408.51 +	qint32 sourceId;
  408.52 +	qint32 destinationId;
  408.53 +	qint32 bundleId;
  408.54 +	qint32 BFlags;
  408.55 +	qint32 reserved;
  408.56 +	qint32 dataLenght;	
  408.57 +	qint32 sourceStringLenght;
  408.58 +	qint32 destinationStringLenght;
  408.59 +	uint time;
  408.60 +};
  408.61 +
  408.62 +
  408.63 +struct DictionaryNodeHeader 
  408.64 +{
  408.65 +	qint32 stringId;
  408.66 +	qint32 lenght;
  408.67 +	qint32 reserved;
  408.68 +};
  408.69 +
  408.70 +struct RIBNodeHeader 
  408.71 +{
  408.72 +	qint32 stringId;
  408.73 +	float probability;
  408.74 +	qint32 RIBFlag;
  408.75 +};
  408.76 +
  408.77 +struct Header 
  408.78 +{
  408.79 +	qint32 type;
  408.80 +
  408.81 +};
  408.82 +
  408.83 +
  408.84 +
  408.85 +TLV::TLV(QObject *parent)
  408.86 +{
  408.87 +	ReadFile conf;
  408.88 +	fileOption=conf.getUseFileBundles();
  408.89 +	if(fileOption==1)
  408.90 +	{
  408.91 +		QString storagePath=conf.getStoragePath();
  408.92 +		dir.setPath(storagePath);
  408.93 +	}
  408.94 +}
  408.95 +
  408.96 +
  408.97 +
  408.98 +void TLV::receiveDatagram(QByteArray datagram)
  408.99 +{
 408.100 +	Header* TLVType;
 408.101 +	TLVType= (Header*) datagram.constData();
 408.102 +	qint32 datagramIndex;
 408.103 +	//Read out TLV Type
 408.104 +	QByteArray temp;
 408.105 +	Hello newHello;
 408.106 +	QList<Node> receivedNodes;
 408.107 +	QList<Bundle> receivedBundles;
 408.108 +	QString name;
 408.109 +	struct DictionaryHeader *dictionaryHeader; //It is the same for RIB
 408.110 +	struct BundleListHeader *bundleHeader;
 408.111 +	struct HelloHeader *hello;
 408.112 +	qint32 entryCount;	
 408.113 +	qint32 lenght;
 408.114 +	switch(TLVType->type)
 408.115 +	{
 408.116 +		//Hello massage forming
 408.117 +		case 0x01:	//////log->addLog(0,(QString)"TLV receiving Hello datagram...");
 408.118 +					hello= (HelloHeader*) datagram.constData();
 408.119 + 					newHello.HFunction=(qint32)hello->function;
 408.120 +					newHello.timer =(qint32)hello->timer;
 408.121 +					newHello.senderId=(qint32)hello->nodeId;
 408.122 +					newHello.senderType =(qint32)hello->nodeType;
 408.123 +					lenght = (qint32)hello->nameLenght;
 408.124 +					datagram.remove(0,sizeof(HelloHeader));
 408.125 +					name=datagram.mid(0,lenght);
 408.126 +					newHello.setSenderName(name);
 408.127 +					emit sendHello(newHello);
 408.128 +		break;
 408.129 +		//RIB
 408.130 +		case 0xA1:	//////log->addLog(0,(QString)"TLV receiving RIB datagram...");
 408.131 +					dictionaryHeader = (DictionaryHeader*) datagram.constData();
 408.132 +					entryCount=dictionaryHeader->entryCount;
 408.133 +					datagram.remove(0,sizeof(DictionaryHeader));
 408.134 +					for (ushort i = 0; i < entryCount; ++i) 
 408.135 +					{
 408.136 +						//Resolving data from datagram
 408.137 +						struct RIBNodeHeader *nodeHeader = (RIBNodeHeader*) datagram.constData();
 408.138 +						qint32 stringId = (qint32)nodeHeader->stringId;
 408.139 +						qint32 flag = (qint32)nodeHeader->RIBFlag;
 408.140 +						float probability = (float)nodeHeader->probability;
 408.141 +						datagram.remove(0,sizeof(RIBNodeHeader));
 408.142 +						//Setting node variables
 408.143 +						Node tempNode;
 408.144 +						tempNode.setContent(stringId,probability,flag,"X");
 408.145 +						//Adding variables in the list
 408.146 +						receivedNodes.append(tempNode);
 408.147 +					}
 408.148 +					emit sendRIB(receivedNodes);
 408.149 +		break;
 408.150 +		//BUNDLE OFFER RECEIVED
 408.151 +		case 0xA2:	//////log->addLog(0,(QString)"TLV receiving Bundle offer datagram...");
 408.152 +					bundleHeader = (BundleListHeader*) datagram.constData();
 408.153 +					entryCount=(qint32)bundleHeader->entryCount;
 408.154 +					datagramIndex=sizeof(BundleListHeader);
 408.155 +					datagram.remove(0,datagramIndex);
 408.156 +					for (ushort i = 0; i < entryCount; ++i) 
 408.157 +					{
 408.158 +						//Resolving data from datagram
 408.159 +						struct BundleListItem *bundleItem;
 408.160 +						bundleItem = (BundleListItem*) datagram.constData();
 408.161 +						
 408.162 +						qint32 destId = (qint32)bundleItem->destinationId;
 408.163 +						qint32 bundId = (qint32)bundleItem->bundleId;
 408.164 +						qint32 BFlags = (qint32)bundleItem->BFlags;
 408.165 +						qint32 reserved = (qint32)bundleItem->reserved;
 408.166 +						datagram.remove(0,sizeof(BundleListItem));
 408.167 +						//Setting Bundle variables
 408.168 +						Bundle tempBundle;
 408.169 +						tempBundle.destinationId = destId;
 408.170 +						tempBundle.id = bundId;
 408.171 +						tempBundle.options = BFlags;
 408.172 +						//Adding variables in the list
 408.173 +						receivedBundles.append(tempBundle);
 408.174 +					}
 408.175 +					emit sendBundleOffer(receivedBundles);
 408.176 +		break;
 408.177 +		//BUNDLE REQUEST RECEIVED
 408.178 +		case 0xA3:	//////log->addLog(0,(QString)"TLV receiving Bundle Request datagram...");
 408.179 +					bundleHeader = (BundleListHeader*) datagram.constData();
 408.180 +					entryCount=bundleHeader->entryCount;
 408.181 +					datagramIndex=sizeof(BundleListHeader);
 408.182 +					datagram.remove(0,datagramIndex);
 408.183 +					for (ushort i = 0; i < entryCount; ++i) 
 408.184 +					{
 408.185 +						//Resolving data from datagram
 408.186 +						struct BundleListItem *bundleItem;
 408.187 +						bundleItem = (BundleListItem*) datagram.constData();
 408.188 +						
 408.189 +						qint32 destId = (qint32)bundleItem->destinationId;
 408.190 +						qint32 bundId = (qint32)bundleItem->bundleId;
 408.191 +						qint32 BFlags = (qint32)bundleItem->BFlags;
 408.192 +						qint32 reserved = (qint32)bundleItem->reserved;
 408.193 +						datagram.remove(0,sizeof(BundleListItem));
 408.194 +						//Setting Bundle variables
 408.195 +						Bundle tempBundle;
 408.196 +						tempBundle.destinationId = destId;
 408.197 +						tempBundle.id = bundId;
 408.198 +						tempBundle.options = BFlags;
 408.199 +						//Adding variables in the list
 408.200 +						receivedBundles.append(tempBundle);
 408.201 +					}
 408.202 +					emit sendBundleRequest(receivedBundles);
 408.203 +		break;
 408.204 +		//Dictionary
 408.205 +		case 0xA0:	//////log->addLog(0,(QString)"TLV receiving Dictionary datagram...");
 408.206 +					dictionaryHeader = (DictionaryHeader*) datagram.constData();
 408.207 +					entryCount=dictionaryHeader->entryCount;
 408.208 +					datagram.remove(0,sizeof(DictionaryHeader));
 408.209 +					for (ushort i = 0; i < entryCount; ++i) 
 408.210 +					{
 408.211 +						QString nodeName;
 408.212 +						//Resolving data from datagram
 408.213 +						struct DictionaryNodeHeader * nodeHeader = (DictionaryNodeHeader*) datagram.constData();
 408.214 +						qint32 stringId = (qint32)nodeHeader->stringId;
 408.215 +						qint32 lenght = (qint32)nodeHeader->lenght;
 408.216 +						datagram.remove(0,sizeof(DictionaryNodeHeader)); //Because stings terminator
 408.217 +						nodeName=datagram.mid(0,lenght);
 408.218 +						datagram.remove(0,lenght);
 408.219 +						//Setting node variables
 408.220 +						Node tempNode;
 408.221 +						tempNode.setContent(stringId,0.0,-1,nodeName);
 408.222 +						//Adding variables in the list
 408.223 +						receivedNodes.append(tempNode);
 408.224 +					}
 408.225 +					emit sendDictionary(receivedNodes);
 408.226 +		break;		
 408.227 +		//BUNDLE DATA RECEIVED
 408.228 +		case 0xA4:	//////log->addLog(0,(QString)"TLV receiving Bundle data datagram...");
 408.229 +					bundleHeader = (BundleListHeader*) datagram.constData();
 408.230 +					entryCount=bundleHeader->entryCount;
 408.231 +					datagramIndex=sizeof(BundleListHeader);
 408.232 +					datagram.remove(0,datagramIndex);
 408.233 +					for (ushort i = 0; i < entryCount; ++i) 
 408.234 +					{
 408.235 +						//Resolving data from datagram
 408.236 +						struct BundleDataHeader *bundleItem;
 408.237 +						bundleItem = (BundleDataHeader*) datagram.constData();
 408.238 +						
 408.239 +						qint32 destId = (qint32)bundleItem->destinationId;
 408.240 +						qint32 srcId = (qint32)bundleItem->sourceId;
 408.241 +						qint32 bundId = (qint32)bundleItem->bundleId;
 408.242 +						qint32 BFlags = (qint32)bundleItem->BFlags;
 408.243 +						qint32 reserved = (qint32)bundleItem->reserved;
 408.244 +						qint32 lenght = (qint32)bundleItem->dataLenght;
 408.245 +						qint32 srclenght = (qint32)bundleItem->sourceStringLenght;
 408.246 +						qint32 dstlenght = (qint32)bundleItem->destinationStringLenght;
 408.247 +						
 408.248 +						QDateTime time;
 408.249 +						time.setTime_t(bundleItem->time);
 408.250 +						datagram.remove(0,sizeof(BundleDataHeader));
 408.251 +						//Setting Bundle variables
 408.252 +						Bundle tempBundle;
 408.253 +						tempBundle.destinationId = destId;
 408.254 +						tempBundle.sourceId = srcId;
 408.255 +						tempBundle.id = bundId;
 408.256 +						tempBundle.options = BFlags;
 408.257 +						tempBundle.timeStamp = time;
 408.258 +						QByteArray datagramPart;
 408.259 +						datagramPart=datagram.mid(0,lenght);
 408.260 +						tempBundle.data=datagramPart;
 408.261 +						datagram.remove(0,lenght);
 408.262 +						tempBundle.dataLength=lenght;
 408.263 +						datagramPart=datagram.mid(0,srclenght);
 408.264 +						tempBundle.sourceString=datagramPart;
 408.265 +						datagram.remove(0,srclenght);
 408.266 +						datagramPart=datagram.mid(0,dstlenght);
 408.267 +						tempBundle.destinationString=datagramPart;
 408.268 +						datagram.remove(0,dstlenght);
 408.269 +						//Adding variables in the list
 408.270 +						receivedBundles.append(tempBundle);
 408.271 +					}
 408.272 +					emit sendBundleData(receivedBundles);
 408.273 +		break;
 408.274 +		default:	//////log->addLog(0,(QString)"TLV receiving Unknown datagram...");
 408.275 +					//QString name;
 408.276 +					temp = datagram.mid(2,1);
 408.277 +//					function = temp.toushort();
 408.278 +					temp = datagram.mid(32,1);
 408.279 +//					timer = temp.toushort();
 408.280 +					temp = datagram.mid(40,1);
 408.281 +//					nameLenght = temp.toushort();
 408.282 +					temp = datagram.mid(48,0);
 408.283 +					newHello.setFunction(0);
 408.284 +					newHello.setTimer(0);
 408.285 +					newHello.setSenderName(0);
 408.286 +
 408.287 +		break;
 408.288 +	}
 408.289 +
 408.290 +}
 408.291 +
 408.292 +
 408.293 +void TLV::receiveHello(Hello hello)
 408.294 +{
 408.295 +	//Setting up variables
 408.296 +	struct HelloHeader header;
 408.297 +	QString nodeName = hello.getSenderName();
 408.298 +	header.type = 0x01;//Hello 
 408.299 +	header.function = (qint32)hello.getFunction();
 408.300 +	header.timer = (qint32)hello.getTimer();
 408.301 +	header.nodeId = (qint32)hello.senderId;
 408.302 +	header.nodeType = (qint32)hello.senderType;
 408.303 +	header.nameLenght = (qint32)nodeName.size();
 408.304 +	//Preparing heder
 408.305 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(HelloHeader));	
 408.306 +	//Adding Addres Strings
 408.307 +	newDatagram.append(nodeName.toAscii());
 408.308 +	//Sending our TLV datagram
 408.309 +	//////log->addLog(0,(QString)"TLV sending Hello datagram...");
 408.310 +	emit sendDatagram(newDatagram);
 408.311 +}
 408.312 +
 408.313 +
 408.314 +//Create Dictionary
 408.315 +void TLV::createDictionary(QList<Node> nodeList)
 408.316 +{
 408.317 +	//Setting up variables
 408.318 +	struct DictionaryHeader header;
 408.319 +	header.type = 0xA0;//Dictionary 
 408.320 +	header.flags = 0x00;
 408.321 +	header.lenght = 0x00;
 408.322 +	header.entryCount=(qint32)(nodeList.size());
 408.323 +	header.reserved = 0x00;
 408.324 +	//Preparing heder
 408.325 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(DictionaryHeader));	
 408.326 +	//Adding Addres Strings
 408.327 +	Node tempNode;
 408.328 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 408.329 +	{
 408.330 +		struct DictionaryNodeHeader newNodeHeader;
 408.331 +		//Resolving data from list
 408.332 +        tempNode = nodeList.at(i);
 408.333 +		newNodeHeader.stringId = (qint32)tempNode.getId();
 408.334 +		newNodeHeader.reserved=0x00;
 408.335 +		newNodeHeader.lenght= (qint32)tempNode.nodeName.size();
 408.336 +		//Puting data to datagram
 408.337 +		QByteArray nodeDatagram = QByteArray::fromRawData((char *)&newNodeHeader, sizeof(newNodeHeader));	
 408.338 +		nodeDatagram.append(tempNode.nodeName);
 408.339 +		newDatagram.append(nodeDatagram);
 408.340 +    }
 408.341 +	//////log->addLog(0,(QString)"TLV Sending dictionary datagram...");
 408.342 +	emit sendDatagram(newDatagram);
 408.343 +
 408.344 +}
 408.345 +
 408.346 +//Create RIB
 408.347 +void TLV::createRIB(QList<Node> nodeList)
 408.348 +{
 408.349 +	//Setting up variables
 408.350 +	struct DictionaryHeader header; //It is the same as Dictionary
 408.351 +	header.type = 0xA1;//RIB Type
 408.352 +	header.flags = 0x00;
 408.353 +	header.lenght = 0x00;
 408.354 +	header.entryCount=(qint32)nodeList.size();
 408.355 +	header.reserved = 0x00;
 408.356 +	//Preparing heder
 408.357 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(DictionaryHeader));	
 408.358 +	for (ushort i = 0; i < nodeList.size(); ++i) 
 408.359 +	{
 408.360 +		Node tempNode;
 408.361 +		struct RIBNodeHeader  newNodeHeader;
 408.362 +		//Resolving data from list
 408.363 +        tempNode = nodeList.at(i);
 408.364 +		newNodeHeader.stringId = (qint32)tempNode.getId();
 408.365 +		newNodeHeader.probability = tempNode.getProbability();
 408.366 +		newNodeHeader.RIBFlag = (qint32)tempNode.getFlag();
 408.367 +		//Puting data to datagram
 408.368 +		QByteArray nodeDatagram = QByteArray::fromRawData((char *)&newNodeHeader, sizeof(newNodeHeader));	
 408.369 +		newDatagram.append(nodeDatagram);
 408.370 +    }
 408.371 +	//////log->addLog(0,(QString)"TLV Sending RIB datagram...");
 408.372 +	emit sendDatagram(newDatagram);
 408.373 +
 408.374 +}
 408.375 +
 408.376 +
 408.377 +//Create BundleOffer
 408.378 +void TLV::createBundleOffer(QList<Bundle> bundleList)
 408.379 +{
 408.380 +	//Setting up variables
 408.381 +	struct BundleListHeader header;
 408.382 +	header.type = 0xA2;//Offer
 408.383 +	header.flags = 0x22;
 408.384 +	header.lenght = 0x00;
 408.385 +	header.entryCount=(qint32)bundleList.size();
 408.386 +	header.reserved = 0x00;
 408.387 +	//Preparing heder
 408.388 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(BundleListHeader));	
 408.389 +	//Adding bundles
 408.390 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 408.391 +	{
 408.392 +		struct BundleListItem newBundleItem;
 408.393 +		//Resolving data from list
 408.394 +        Bundle tempBundle = bundleList.at(i);
 408.395 +		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 408.396 +		newBundleItem.bundleId=(qint32)tempBundle.id;
 408.397 +		newBundleItem.BFlags=(qint32)tempBundle.options;
 408.398 +		newBundleItem.reserved=0xaa;
 408.399 +		//Puting data to datagram
 408.400 +		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(newBundleItem));	
 408.401 +		newDatagram.append(bundleDatagram);
 408.402 +    }
 408.403 +	//////log->addLog(0,(QString)"TLV Sending bundle offer...");
 408.404 +	emit sendDatagram(newDatagram);
 408.405 +
 408.406 +}
 408.407 +
 408.408 +//Create BundleRequest
 408.409 +void TLV::createBundleRequest(QList<Bundle> bundleList)
 408.410 +{
 408.411 +	//Setting up variables
 408.412 +	struct BundleListHeader header;
 408.413 +	header.type = 0xA3;//Request
 408.414 +	header.flags = 0x22;
 408.415 +	header.lenght = 0x00;
 408.416 +	header.entryCount=bundleList.size();
 408.417 +	header.reserved = 0x00;
 408.418 +	//Preparing heder
 408.419 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(BundleListHeader));	
 408.420 +	//Adding bundles
 408.421 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 408.422 +	{
 408.423 +		struct BundleListItem newBundleItem;
 408.424 +		//Resolving data from list
 408.425 +        Bundle tempBundle = bundleList.at(i);
 408.426 +		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 408.427 +		newBundleItem.bundleId=(qint32)tempBundle.id;
 408.428 +		newBundleItem.BFlags=(qint32)tempBundle.options;
 408.429 +		newBundleItem.reserved=0xaa;
 408.430 +		//Puting data to datagram
 408.431 +		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(BundleListItem));	
 408.432 +		newDatagram.append(bundleDatagram);
 408.433 +    }
 408.434 +	//////log->addLog(0,(QString)"TLV Sending bundle request...");
 408.435 +	emit sendDatagram(newDatagram);
 408.436 +
 408.437 +}
 408.438 +
 408.439 +
 408.440 +///Create Bundle Data
 408.441 +void TLV::createBundleData(QList<Bundle> bundleList)
 408.442 +{
 408.443 +
 408.444 +	
 408.445 +	//Setting up variables
 408.446 +	struct BundleListHeader header;
 408.447 +	header.type = 0xA4;//Bundle Data
 408.448 +	header.flags = 0x22;
 408.449 +	header.lenght = 0x00;
 408.450 +	header.entryCount=bundleList.size();
 408.451 +	header.reserved = 0x00;
 408.452 +	//Preparing heder
 408.453 +	QByteArray newDatagram = QByteArray::fromRawData((char *)&header, sizeof(header));	
 408.454 +	//Adding bundles
 408.455 +	for (ushort i = 0; i < bundleList.size(); ++i) 
 408.456 +	{
 408.457 +		struct BundleDataHeader newBundleItem;
 408.458 +		//Resolving data from list
 408.459 +        	Bundle tempBundle = bundleList.at(i);
 408.460 +		newBundleItem.destinationId=(qint32)tempBundle.destinationId;
 408.461 +		newBundleItem.sourceId=(qint32)tempBundle.sourceId;
 408.462 +		newBundleItem.bundleId=(qint32)tempBundle.id;
 408.463 +		newBundleItem.BFlags=(qint32)tempBundle.options;
 408.464 +		newBundleItem.reserved=0xaa;
 408.465 +		newBundleItem.time = tempBundle.timeStamp.toTime_t ();
 408.466 +		//Get bundle data
 408.467 +		QByteArray data;
 408.468 +		data.clear();
 408.469 +		int fileSize;
 408.470 +		if(fileOption==1)
 408.471 +		{
 408.472 +			QString filename;
 408.473 +			filename=QString("%1").arg((int)tempBundle.id);
 408.474 +			QFile file(dir.filePath(filename));
 408.475 +			if(file.exists()==1)
 408.476 +			{
 408.477 +				if (file.open(QIODevice::ReadOnly))
 408.478 +				{
 408.479 +					fileSize=file.size();
 408.480 +					data=file.readAll();
 408.481 +			    		file.close();
 408.482 +				}
 408.483 +			}
 408.484 +		}
 408.485 +		else
 408.486 +		{
 408.487 +			data = tempBundle.data;
 408.488 +		}
 408.489 +		if(data.size()<=0)
 408.490 +			data.clear();
 408.491 +	/*	int size = data.size();
 408.492 +	        QString printout="Size:";
 408.493 +		printout.append(QString("%1").arg((int)size));
 408.494 +		qDebug(printout.toAscii());
 408.495 +		printout.clear();
 408.496 +		printout.append("FileSize:");
 408.497 +		printout.append(QString("%1").arg((int)fileSize));
 408.498 +		qDebug(printout.toAscii());
 408.499 +		printout.clear();
 408.500 +		printout.append("Data:");
 408.501 +		printout.append(data);
 408.502 +		qDebug(printout.toAscii());
 408.503 +	*/	newBundleItem.dataLenght=(qint32)data.size();
 408.504 +		//Get bundle source string
 408.505 +		QByteArray srcData = tempBundle.sourceString;
 408.506 +		newBundleItem.sourceStringLenght=(qint32)srcData.size();
 408.507 +		//Get bundle destination string
 408.508 +		QByteArray dstData = tempBundle.destinationString;
 408.509 +		newBundleItem.destinationStringLenght=(qint32)dstData.size();
 408.510 +		//Puting item header to datagram
 408.511 +		QByteArray bundleDatagram = QByteArray::fromRawData((char *)&newBundleItem, sizeof(newBundleItem));	
 408.512 +		//Puting item data to datagram
 408.513 +		bundleDatagram.append(data);
 408.514 +		bundleDatagram.append(srcData);
 408.515 +		bundleDatagram.append(dstData);
 408.516 +		//Adding it to main datagram
 408.517 +		newDatagram.append(bundleDatagram);
 408.518 +
 408.519 +    }
 408.520 +	//////log->addLog(0,(QString)"TLV Sending bundle data...");
 408.521 +	emit sendDatagram(newDatagram);
 408.522 +}
 408.523 +
 408.524 +
   409.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   409.2 +++ b/x86/x86/tlv.h	Thu Jun 26 17:39:40 2008 +0100
   409.3 @@ -0,0 +1,115 @@
   409.4 +#ifndef TLV_H
   409.5 +#define TLV_H
   409.6 +
   409.7 +#include <QtCore>
   409.8 +#include <hello.h>
   409.9 +#include <node.h>
  409.10 +#include <bundle.h>
  409.11 +
  409.12 +/*! \brief This class converts datagrams to objects and vice versa.
  409.13 + * 
  409.14 + */
  409.15 +class TLV : public QObject
  409.16 +{
  409.17 +
  409.18 +Q_OBJECT 
  409.19 +	public:
  409.20 +		TLV(QObject *parent = 0);
  409.21 +		int fileOption;
  409.22 +		QDir dir;
  409.23 +
  409.24 +	signals:
  409.25 +		/*! \brief
  409.26 +		 * Sends a datagram to the appropriate Connection object, 
  409.27 +		 * which in turn passes it on as a DataPacket to 
  409.28 +		 * NeighborAwareness where it is sent out on a socket.
  409.29 +		 */
  409.30 +		void sendDatagram(QByteArray);
  409.31 +	
  409.32 +		/*! \brief
  409.33 +		 * Emits a Hello message to the appropriate Connection object.
  409.34 +		 */
  409.35 +		void sendHello(Hello);
  409.36 +		
  409.37 +		/*! \brief
  409.38 +		 * Emits a list with id<-> name mappings to the appropriate 
  409.39 +		 * Conenction object.
  409.40 +		 */
  409.41 +		void sendDictionary(QList<Node>);
  409.42 +		
  409.43 +		/*! \brief
  409.44 +		 * Emits a list of id<->probability mappings to the 
  409.45 +		 * appropriate Connection object.
  409.46 +		 */
  409.47 +		void sendRIB(QList<Node>);
  409.48 +		
  409.49 +		/*! \brief
  409.50 +		 * Emits a bundle offer to the appropriate Connection object.
  409.51 +		 */
  409.52 +		void sendBundleOffer(QList<Bundle>);
  409.53 +		
  409.54 +		/*! \brief
  409.55 +		 * Emits a bundle request to the appropriate Connection object.
  409.56 +		 */
  409.57 +		void sendBundleRequest(QList<Bundle>);
  409.58 +		
  409.59 +		//! Emits a list of bundles containing data.
  409.60 +		/*!
  409.61 +		 * Connected to Connection::receiveBundles.
  409.62 +		 */
  409.63 +		void sendBundleData(QList<Bundle>);
  409.64 +		
  409.65 +	public slots:
  409.66 +	/*! \brief
  409.67 +	 * Builds a hello datagram and emits the signal sendDatagram.
  409.68 +	 * @param hello the Hello object to build a datagram of.
  409.69 +	 */
  409.70 +	void receiveHello(Hello);
  409.71 +		
  409.72 +	/*! \brief
  409.73 +	 * Classifies incoming Datagrams, creates objects from them and emits 
  409.74 +	 * the appropriate signals.
  409.75 +	 * @param datagram the data to be parsed.
  409.76 +	 */
  409.77 +	void receiveDatagram(QByteArray);
  409.78 +		
  409.79 +	/*! \brief
  409.80 +	 * Builds a datagram containing a dictionary, that is a mapping 
  409.81 +	 * between node ids and names. The datagram is emitted by the 
  409.82 +	 * sendDatagram signal.
  409.83 +	 * @param the list of nodes to create the dictionary from.
  409.84 +	 */
  409.85 +	void createDictionary(QList<Node>);
  409.86 +	
  409.87 +	/*! \brief
  409.88 +	 * Builds a datagram containing a RIB, that is a mapping between node 
  409.89 +	 * ids and their delivery predictabilities. Emits the sendDatagram 
  409.90 +	 * signal.
  409.91 +	 * @param the list of nodes to create the RIB from.
  409.92 +	 */
  409.93 +	void createRIB(QList<Node>);
  409.94 +	
  409.95 +	/*! \brief
  409.96 +	 * Builds a bundle offer datagram. That is a list of all bundles this 
  409.97 +	 * node is carrying. Emits the sendDatagram signal.
  409.98 +	 * @param the list of bundles to create the offer from.
  409.99 +	 */
 409.100 +	void createBundleOffer(QList<Bundle>);
 409.101 +	
 409.102 +	/*! \brief
 409.103 +	 * Builds a bundle request datagram, that is a datagram containing a 
 409.104 +	 * list of the bundles this node would like receive. Emits the 
 409.105 +	 * sendDatagram signal.
 409.106 +	 * @param a list of the bundles to be requested.
 409.107 +	 */
 409.108 +	void createBundleRequest(QList<Bundle>);
 409.109 +	
 409.110 +	/*! \brief
 409.111 +	 * Builds a datagram containing all bundles to be transferred to a 
 409.112 +	 * neighbor node. Emits the sendDatagram signal.
 409.113 +	 * @param the list of bundles to send to the neighbor node.
 409.114 +	 */
 409.115 +	void createBundleData(QList<Bundle>);
 409.116 +};
 409.117 +
 409.118 +#endif
   410.1 Binary file x86/x86/yellow_off.png has changed
   411.1 Binary file x86/x86/yellow_on.png has changed
   412.1 Binary file x86/yellow_off.png has changed
   413.1 Binary file x86/yellow_on.png has changed