aboutsummaryrefslogtreecommitdiff
path: root/cvs/cvsweb.cgi/code/nelns/admin_executor_service/admin_executor_service.cpp.diff?r1=1.1&r2=1.2
diff options
context:
space:
mode:
Diffstat (limited to 'cvs/cvsweb.cgi/code/nelns/admin_executor_service/admin_executor_service.cpp.diff?r1=1.1&r2=1.2')
-rw-r--r--cvs/cvsweb.cgi/code/nelns/admin_executor_service/admin_executor_service.cpp.diff?r1=1.1&r2=1.2368
1 files changed, 368 insertions, 0 deletions
diff --git a/cvs/cvsweb.cgi/code/nelns/admin_executor_service/admin_executor_service.cpp.diff?r1=1.1&r2=1.2 b/cvs/cvsweb.cgi/code/nelns/admin_executor_service/admin_executor_service.cpp.diff?r1=1.1&r2=1.2
new file mode 100644
index 00000000..7382084f
--- /dev/null
+++ b/cvs/cvsweb.cgi/code/nelns/admin_executor_service/admin_executor_service.cpp.diff?r1=1.1&r2=1.2
@@ -0,0 +1,368 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>
+<HEAD><style> A { color:black }</style>
+<!-- hennerik CVSweb $Revision: 1.93 $ -->
+<TITLE>code/nelns/admin_executor_service/admin_executor_service.cpp - diff - 1.2</TITLE></HEAD>
+<BODY BGCOLOR="#eeeeee">
+<table width="100%" border=0 cellspacing=0 cellpadding=1 bgcolor="#aaaaaa"><tr valign=bottom><td><a href="/cvs/cvsweb.cgi/code/nelns/admin_executor_service/admin_executor_service.cpp"><IMG SRC="http://www.nevrax.org/inc/img/picto-up.gif" ALT="[BACK]" BORDER="0" WIDTH="14" HEIGHT="13"></a> <b>Return to <A HREF="/cvs/cvsweb.cgi/code/nelns/admin_executor_service/admin_executor_service.cpp">admin_executor_service.cpp</A>
+ CVS log</b> <IMG SRC="http://www.nevrax.org/inc/img/picto-news.gif" ALT="[TXT]" BORDER="0" WIDTH="13" HEIGHT="15"></td><td align=right><IMG SRC="http://www.nevrax.org/inc/img/picto-dir.gif" ALT="[DIR]" BORDER="0" WIDTH="15" HEIGHT="13"> <b>Up to <a href="/cvs/cvsweb.cgi/">Nevrax</a> / <a href="/cvs/cvsweb.cgi/code/">code</a> / <a href="/cvs/cvsweb.cgi/code/nelns/">nelns</a> / <a href="/cvs/cvsweb.cgi/code/nelns/admin_executor_service/">admin_executor_service</a></b></td></tr></table><h3 align=center>Diff for /code/nelns/admin_executor_service/admin_executor_service.cpp between version 1.1 and 1.2</h3>
+<table border=0 cellspacing=0 cellpadding=0 width="100%">
+<tr bgcolor="#ffffff">
+<th width="50%" valign=TOP>version 1.1, 2001/04/18 13:54:25</th>
+<th width="50%" valign=TOP>version 1.2, 2001/05/02 12:36:39</th>
+<tr bgcolor="#dddddd"><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 2</b>&nbsp;<font size=-1></font></td></tr></table></td><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 2</b>&nbsp;<font size=-1></font></td></tr></table></td>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; * Admin Executor Service (AES)</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; * Admin Executor Service (AES)</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; *</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; *</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; * $Id$</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; * $Id$</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; *</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; */</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; */</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;/* Copyright, 2000 Nevrax Ltd.</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;/* Copyright, 2000 Nevrax Ltd.</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; *</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; *</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * This file is part of NEVRAX NeL Network Services</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * This file is part of NEVRAX D.T.C. SYSTEM.</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * NEVRAX NeL Network Services is free software; you can redistribute it and/or modify</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * NEVRAX D.T.C. SYSTEM is free software; you can redistribute it and/or modify</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; * it under the terms of the GNU General Public License as published by</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; * it under the terms of the GNU General Public License as published by</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; * the Free Software Foundation; either version 2, or (at your option)</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; * the Free Software Foundation; either version 2, or (at your option)</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; * any later version.</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; * any later version.</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; *</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; *</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * NEVRAX NeL Network Services is distributed in the hope that it will be useful, but</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * NEVRAX D.T.C. SYSTEM is distributed in the hope that it will be useful, but</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; * WITHOUT ANY WARRANTY; without even the implied warranty of</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; * WITHOUT ANY WARRANTY; without even the implied warranty of</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; * General Public License for more details.</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; * General Public License for more details.</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; *</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; *</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; * You should have received a copy of the GNU General Public License</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; * You should have received a copy of the GNU General Public License</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * along with NEVRAX NeL Network Services; see the file COPYING. If not, write to the</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * along with NEVRAX D.T.C. SYSTEM; see the file COPYING. If not, write to the</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; * Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; * Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; * MA 02111-1307, USA.</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; * MA 02111-1307, USA.</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; */</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; */</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;nel/misc/debug.h&gt;</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;io.h&gt;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;nel/misc/log.h&gt;</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;process.h&gt;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;nel/misc/common.h&gt;</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;fcntl.h&gt;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;nel/net/service.h&gt;</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;sys/stat.h&gt;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;nel/net/net_displayer.h&gt;</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;string&gt;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &quot;sysload.h&quot;</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;list&gt;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &quot;sysmem.h&quot;</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &quot;sysswap.h&quot;</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &quot;nel/misc/debug.h&quot;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &quot;nel/misc/config_file.h&quot;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &quot;nel/misc/thread.h&quot;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &quot;nel/net/service.h&quot;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;#include &quot;nel/net/net_manager.h&quot;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;using namespace std;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;using namespace std;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;using namespace NLMISC;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;using namespace NLMISC;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;using namespace NLNET;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;using namespace NLNET;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#ff9999"><font face="Helvetica,Arial" size="-1">&nbsp;static const char UNKNOW_VALUE[] = &quot;&lt;Unknown&gt;&quot;;</font></td><td bgcolor="#cccccc">&nbsp;</td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;struct CService</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CService(TSockId s) : ServiceSockId(s), ServiceId(NextServiceId++) { }</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;CLog StatLog(CLog::LOG_STAT);</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;TSockId &nbsp; &nbsp; &nbsp; &nbsp;ServiceSockId; &nbsp; &nbsp; &nbsp; &nbsp;// socket number to communicate with</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;uint32 &nbsp; &nbsp; &nbsp; &nbsp;ServiceId; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// id to identify it</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;string &nbsp; &nbsp; &nbsp; &nbsp;ShortName;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;string &nbsp; &nbsp; &nbsp; &nbsp;LongName;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;private:</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;/// Log Stat data (STT)</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;static &nbsp; &nbsp; &nbsp; &nbsp;uint32 NextServiceId;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;void sendData (const char *str, TSenderId from)</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;};</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;StatLog.displayNL( str );</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;}</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;uint32 CService::NextServiceId = 0;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;/// Log the last minute average load</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;list&lt;CService&gt; Services;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;void cbLoad ( CMessage&amp; message, TSenderId from )</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;typedef list&lt;CService&gt;::iterator sit;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CSysLoad sysload = CSysLoad();</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;double &nbsp; load &nbsp; &nbsp;= sysload.getLoadInfo();</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;string &nbsp; answer( &quot;LOAD &quot; );</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if ( load &lt; 0 )</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;sit find (TSockId sid)</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;answer.append( UNKNOW_VALUE );</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sit it;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;for (it = Services.begin(); it != Services.end(); it++)</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if ((*it).ServiceSockId == sid) break;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;else</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;return it;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;}</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;sit find (uint32 sid)</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sit it;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;for (it = Services.begin(); it != Services.end(); it++)</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;char str[6];</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if ((*it).ServiceId == sid) break;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;smprintf( str, 6, &quot;%.2f&quot;, load );</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;answer.append( string(str) );</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;return it;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;}</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sendData( answer.c_str(), from );</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;class CExecuteCommandThread : public IRunnable</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;public:</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;string Command;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CExecuteCommandThread (string command) : Command(command) { }</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;void run ()</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;nlinfo (&quot;start executing: %s&quot;, Command.c_str());</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;system (Command.c_str());</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;nlinfo (&quot;end executing: %s&quot;, Command.c_str());</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;}</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;}</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;};</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;void executeCommand (string command, bool background)</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (command.empty()) return;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;/// Log the total memory size and the used memory size (in B)</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;/*</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;void cbMemory ( CMessage&amp; message, TSenderId from )</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;nlinfo (&quot;start executing: %s&quot;, command.c_str());</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (command[command.size()-1] == '&amp;')</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CSysMemory sysmem &nbsp; = CSysMemory();</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;command.resize(command.size()-2);</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sint &nbsp; &nbsp; &nbsp; memUsage = sysmem.getMemoryUsage();</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;string &nbsp; &nbsp; answer( &quot;MEM &quot; );</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if ( memUsage &lt; 0 )</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (spawnlp (_P_NOWAIT, cmd.c_str(), command.c_str(), NULL) == -1)</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;answer.append( UNKNOW_VALUE );</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;perror (&quot;ca chie grave!!!!: &quot;);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;else</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;else</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;char str[3];</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (spawnlp (_P_WAIT, cmd.c_str(), command.c_str(), NULL) == -1)</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;smprintf( str, 3, &quot;%d&quot;, memUsage );</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;answer.append( string(str) );</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;perror (&quot;ca chie grave!!!!: &quot;);</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;nlinfo (&quot;end executing: %s&quot;, command.c_str());</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;*/</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sendData( answer.c_str(), from );</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;command += &quot; &gt;NUL:&quot;;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (background)</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;IThread *thread = IThread::create (new CExecuteCommandThread (command));</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;thread-&gt;start ();</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;else</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CExecuteCommandThread cmdt (command);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;cmdt.run ();</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;}</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;}</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;/// Log the swap size and the used swap space (in kB)</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;/*</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;void cbSwap ( CMessage&amp; message, TSenderId from )</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;// execute without </font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;void executeCommand (string command, TSockId from, CCallbackNetBase &amp;netbase)</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CSysSwap sysswap &nbsp; = CSysSwap();</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (command.empty()) return;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sint &nbsp; &nbsp; swapUsage = sysswap.getSwapUsage();</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;string &nbsp; answer( &quot;SWAP &quot; );</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#define STDOUT 1</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#define STDERR 2</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;int nul, oldstdout, oldstderr;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;char *tmpfilename = tmpnam (NULL);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;nul = _open(tmpfilename, _O_RDWR | _O_CREAT | _O_TRUNC | _O_TEMPORARY | _O_SHORT_LIVED | _O_EXCL, _S_IREAD | _S_IWRITE);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;oldstdout = _dup(STDOUT);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;oldstderr = _dup(STDERR);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;_dup2(nul, STDOUT);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;_dup2(nul, STDERR);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;system(command.c_str());</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;_dup2(oldstdout, STDOUT);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;_dup2(oldstderr, STDERR);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;_close(oldstdout);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;_close(oldstderr);</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if ( swapUsage &lt; 0 )</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;_lseek (nul, 0L, SEEK_SET);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;while (!_eof(nul))</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;answer.append( UNKNOW_VALUE );</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;uint8 buffer[10000];</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;uint32 nbread = _read (nul, buffer, 10000);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CMessage msgout (netbase.getSIDA(), &quot;ESCR&quot;);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgout.serial (nbread);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgout.serialBuffer (buffer, nbread);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;netbase.send (msgout, from);</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;else</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;_close(nul);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;*/</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;/*</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;FILE *fp = fopen (&quot;test.txt&quot;, &quot;r&quot;);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;do</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;char str[3];</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;char str[1024];</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;smprintf( str, 3, &quot;%d&quot;, swapUsage );</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;fgets (str, 1024, fp);</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;answer.append( string(str) );</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (feof(fp)) break;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;result.push_back (str);</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;while (true);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;fclose (fp);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;// &nbsp; &nbsp; &nbsp;remove (&quot;test.txt&quot;);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;*///}</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sendData( answer.c_str(), from );</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;////////////////////////////////////////////////////////////////////////////////////////////////////////</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;}</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;////////////////////////////////////////////////////////////////////////////////////////////////////////</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;////////////////// CONNECTION TO THE SERVICES //////////////////////////////////////////////////////////</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;////////////////////////////////////////////////////////////////////////////////////////////////////////</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;////////////////////////////////////////////////////////////////////////////////////////////////////////</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;static void cbServiceIdentification (CMessage&amp; msgin, TSockId from, CCallbackNetBase &amp;netbase)</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CService *c = (CService*) from-&gt;appId();</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgin.serial (c-&gt;ShortName);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgin.serial (c-&gt;LongName);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;nlinfo (&quot;%s %s %s is identified&quot;, from-&gt;asString().c_str(), c-&gt;ShortName.c_str(), c-&gt;LongName.c_str());</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CMessage msgout (CNetManager::getSIDA (&quot;AESAS&quot;), &quot;SID&quot;);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgout.serial (c-&gt;ShortName);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgout.serial (c-&gt;LongName);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CNetManager::send (&quot;AESAS&quot;, msgout);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;}</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;// Log all the server informations.</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;static void cbServiceReady (CMessage&amp; msgin, TSockId from, CCallbackNetBase &amp;netbase)</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;void cbSystem ( CMessage&amp; message, TSenderId from )</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;cbLoad &nbsp; ( message, from );</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CService *c = (CService*) from-&gt;appId();</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;cbMemory ( message, from );</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;cbSwap &nbsp; ( message, from );</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;nlinfo (&quot;%s %s %s is ready&quot;, from-&gt;asString().c_str(), c-&gt;ShortName.c_str(), c-&gt;LongName.c_str());</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CMessage msgout (CNetManager::getSIDA (&quot;AESAS&quot;), &quot;SR&quot;);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgout.serial (c-&gt;ShortName);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgout.serial (c-&gt;LongName);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CNetManager::send (&quot;AESAS&quot;, msgout);</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;}</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;}</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;void serviceConnection (const string &amp;serviceName, TSockId from, void *arg)</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Services.push_back (CService(from));</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CService *c = &amp;(Services.back());</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;from-&gt;setAppId ((uint64)c);</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;/**</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;nlinfo (&quot;%s is connected&quot;, from-&gt;asString().c_str());</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * Callback Array</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * Message types:</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CMessage msgout (CNetManager::getSIDA (&quot;AESAS&quot;), &quot;SC&quot;);</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * &nbsp; &nbsp; &nbsp;LOAD: &nbsp; log Load information</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CNetManager::send (&quot;AESAS&quot;, msgout);</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * &nbsp; &nbsp; &nbsp;MEMORY: log Memory information</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;}</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * &nbsp; &nbsp; &nbsp;SWAP: &nbsp; log Swap information</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * &nbsp; &nbsp; &nbsp;SYSTEM: log the Load, Memory, and Swap informations</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;void serviceDisconnection (const string &amp;serviceName, TSockId from, void *arg)</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; */</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;TCallbackItem CallbackArray[] =</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;LOAD&quot;, &nbsp; cbLoad },</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CService *c = (CService*) from-&gt;appId();</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;MEMORY&quot;, cbMemory },</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;SWAP&quot;, &nbsp; cbSwap },</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;SYSTEM&quot;, cbSystem }</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;nlinfo (&quot;%s %s %s is disconnected&quot;, from-&gt;asString().c_str(), c-&gt;ShortName.c_str(), c-&gt;LongName.c_str());</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;};</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CMessage msgout (CNetManager::getSIDA (&quot;AESAS&quot;), &quot;SD&quot;);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgout.serial (c-&gt;ShortName);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgout.serial (c-&gt;LongName);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CNetManager::send (&quot;AESAS&quot;, msgout);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;}</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;/** Admin Executor Service (AES).</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;/** Callback Array</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * Log informations (load, memory usage, etc ...) about the server it's</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * running on.</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * These informations are used by the Admin Service (AS) and the Naming</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * Service (NS) to watch the differents servers of the shard.</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; */</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; */</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;class CAdminExecutorService : public NLNET::IService</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;TCallbackItem ServicesCallbackArray[] =</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;public:</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;SID&quot;, cbServiceIdentification },</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;SR&quot;, cbServiceReady },</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;};</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/// Initializes the service</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;////////////////////////////////////////////////////////////////////////////////////////////////////////</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;void init ()</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;////////////////////////////////////////////////////////////////////////////////////////////////////////</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;////////////////// CONNECTION TO THE AS ////////////////////////////////////////////////////////////////</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;////////////////////////////////////////////////////////////////////////////////////////////////////////</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;////////////////////////////////////////////////////////////////////////////////////////////////////////</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;static void cbExecuteSystemCommand (CMessage&amp; msgin, TSockId from, CCallbackNetBase &amp;netbase)</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// Connect to the Log Service</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;string systemCommand;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;StatLog.addDisplayer( new NLMISC::CStdDisplayer() );</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;uint8 background;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgin.serial (systemCommand);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgin.serial (background);</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;NLNET::CNetDisplayer *nd = new NLNET::CNetDisplayer;</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;nlinfo (&quot;I have to execute '%s'&quot;, systemCommand.c_str());</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if ( nd-&gt;connected() )</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;executeCommand (systemCommand, background==1);</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;StatLog.addDisplayer( nd );</font></td><td bgcolor="#99cc99">&nbsp;</td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;else</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;static void cbStopService (CMessage&amp; msgin, TSockId from, CCallbackNetBase &amp;netbase)</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;nlerror( &quot;Coudn't connect to the Log Service.&quot; );</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;string service;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;nlinfo (&quot;I have to stop service&quot;);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;TCallbackItem AESASCallbackArray[] =</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;ESC&quot;, cbExecuteSystemCommand },</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;SS&quot;, cbStopService },</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;};</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;};</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;////////////////////////////////////////////////////////////////////////////////////////////////////////</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;////////////////////////////////////////////////////////////////////////////////////////////////////////</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;////////////////// SERVICE IMPLEMENTATION //////////////////////////////////////////////////////////////</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;////////////////////////////////////////////////////////////////////////////////////////////////////////</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;////////////////////////////////////////////////////////////////////////////////////////////////////////</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;class CAdminExecutorService : public IService</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;{</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;public:</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/// Init the service, load the universal time.</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;void &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;init ()</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CNetManager::setConnectionCallback (&quot;AES&quot;, serviceConnection, NULL);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CNetManager::setDisconnectionCallback (&quot;AES&quot;, serviceDisconnection, NULL);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// install the server for AS</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CNetManager::addServer (&quot;AESAS&quot;, 49996);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CNetManager::addCallbackArray (&quot;AESAS&quot;, AESASCallbackArray, sizeof(AESASCallbackArray)/sizeof(AESASCallbackArray[0]));</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;bool &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;update ()</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;return true;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;};</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#ff9999"><font face="Helvetica,Arial" size="-1">&nbsp;NLNET_SERVICE_MAIN( CAdminExecutorService, &quot;AES&quot;, 50009 );</font></td><td bgcolor="#cccccc">&nbsp;</td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;// End of admin_executor_service.cpp</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;/// Naming Service</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;NLNET_SERVICE_MAIN (CAdminExecutorService, &quot;AES&quot;, &quot;admin_executor_service&quot;, 49997, ServicesCallbackArray);</font></td></tr>
+</table><br><hr noshade width="100%">
+<table border=0><tr><td><table border=1><tr><td>Legend:<br><table border=0 cellspacing=0 cellpadding=1>
+<tr><td align=center bgcolor="#ff9999">Removed from v.1.1</td><td bgcolor="#cccccc">&nbsp;</td></tr><tr bgcolor="#99ff99"><td align=center colspan=2>changed lines</td></tr><tr><td bgcolor="#cccccc">&nbsp;</td><td align=center bgcolor="#ccccff">Added in v.1.2</td></tr></table></td></tr></table>
+<td><FORM METHOD="GET" ACTION="/cvs/cvsweb.cgi/code/nelns/admin_executor_service/admin_executor_service.cpp.diff">
+<INPUT TYPE=HIDDEN NAME="r1" VALUE="1.1">
+<INPUT TYPE=HIDDEN NAME="r2" VALUE="1.2">
+<SELECT NAME="f" onchange="submit()">
+<OPTION VALUE=h SELECTED>Colored Diff<OPTION VALUE=H>Long Colored Diff<OPTION VALUE=u>Unidiff<OPTION VALUE=c>Context Diff<OPTION VALUE=s>Side by Side</SELECT><INPUT TYPE=SUBMIT VALUE="Show">
+</FORM>
+</td></tr></table> \ No newline at end of file