aboutsummaryrefslogtreecommitdiff
path: root/cvs/cvsweb.cgi/code/nelns/admin_executor_service/admin_executor_service.cpp.diff?r1=1.4&r2=1.5
diff options
context:
space:
mode:
authorneodarz <neodarz@neodarz.net>2018-08-11 20:21:34 +0200
committerneodarz <neodarz@neodarz.net>2018-08-11 20:21:34 +0200
commit0ea5fc66924303d1bf73ba283a383e2aadee02f2 (patch)
tree2568e71a7ccc44ec23b8bb3f0ff97fb6bf2ed709 /cvs/cvsweb.cgi/code/nelns/admin_executor_service/admin_executor_service.cpp.diff?r1=1.4&r2=1.5
downloadnevrax-website-self-hostable-0ea5fc66924303d1bf73ba283a383e2aadee02f2.tar.xz
nevrax-website-self-hostable-0ea5fc66924303d1bf73ba283a383e2aadee02f2.zip
Initial commit
Diffstat (limited to 'cvs/cvsweb.cgi/code/nelns/admin_executor_service/admin_executor_service.cpp.diff?r1=1.4&r2=1.5')
-rw-r--r--cvs/cvsweb.cgi/code/nelns/admin_executor_service/admin_executor_service.cpp.diff?r1=1.4&r2=1.5265
1 files changed, 265 insertions, 0 deletions
diff --git a/cvs/cvsweb.cgi/code/nelns/admin_executor_service/admin_executor_service.cpp.diff?r1=1.4&r2=1.5 b/cvs/cvsweb.cgi/code/nelns/admin_executor_service/admin_executor_service.cpp.diff?r1=1.4&r2=1.5
new file mode 100644
index 00000000..b466dba9
--- /dev/null
+++ b/cvs/cvsweb.cgi/code/nelns/admin_executor_service/admin_executor_service.cpp.diff?r1=1.4&r2=1.5
@@ -0,0 +1,265 @@
+<!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.5</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.4 and 1.5</h3>
+<table border=0 cellspacing=0 cellpadding=0 width="100%">
+<tr bgcolor="#ffffff">
+<th width="50%" valign=TOP>version 1.4, 2001/05/10 08:20:06</th>
+<th width="50%" valign=TOP>version 1.5, 2001/05/18 16:51:33</th>
+<tr bgcolor="#dddddd"><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 7</b>&nbsp;<font size=-1></font></td></tr></table></td><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 7</b>&nbsp;<font size=-1></font></td></tr></table></td>
+<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 D.T.C. SYSTEM.</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; * This file is part of NEVRAX NeL Network Services.</font></td></tr>
+<tr><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><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></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 D.T.C. SYSTEM is distributed in the hope that it will be useful, but</font></td><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></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 D.T.C. SYSTEM; see the file COPYING. If not, write to the</font></td><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></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 bgcolor="#dddddd"><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 27</b>&nbsp;<font size=-1></font></td></tr></table></td><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 27</b>&nbsp;<font size=-1></font></td></tr></table></td>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;fcntl.h&gt;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;fcntl.h&gt;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;sys/stat.h&gt;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;sys/stat.h&gt;</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;#include &quot;nel/misc/types_nl.h&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 bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;#ifdef NL_OS_WINDOWS</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;direct.h&gt;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;#else</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;unistd.h&gt;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;#endif</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;#include &lt;string&gt;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;string&gt;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;list&gt;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;#include &lt;list&gt;</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 bgcolor="#dddddd"><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 73</b>&nbsp;<font size=-1></font></td></tr></table></td><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 81</b>&nbsp;<font size=-1></font></td></tr></table></td>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;return sit;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;return sit;</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;SIT findService (uint32 sid)</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp;SIT findService (uint32 sid, bool asrt = true)</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; &nbsp; &nbsp; &nbsp; &nbsp;SIT sit;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;SIT sit;</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;for (sit = Services.begin(); sit != Services.end(); sit++)</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;for (sit = Services.begin(); sit != Services.end(); sit++)</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; &nbsp; &nbsp; &nbsp; &nbsp;if ((*sit).Id == sid) break;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if ((*sit).Id == 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="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (asrt)</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;nlassert (sit != Services.end());</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;return sit;</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;return sit;</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 bgcolor="#dddddd"><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 87</b>&nbsp;<font size=-1></font></td></tr></table></td><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 97</b>&nbsp;<font size=-1></font></td></tr></table></td>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp;class CExecuteCommandThread : public IRunnable</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;class CExecuteCommandThread : public IRunnable</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;public:</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;public:</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;string Command;</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;string Command, Path;</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;CExecuteCommandThread (string command) : Command(command) { }</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CExecuteCommandThread (string command, string path = &quot;&quot;) : Command(command), Path(path) { }</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; &nbsp; &nbsp; &nbsp; &nbsp;void run ()</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;void run ()</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;nlinfo (&quot;start executing: %s&quot;, Command.c_str());</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;nlinfo (&quot;start executing '%s' in '%s' directory&quot;, Command.c_str(), Path.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;</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;char oldpath[256];</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 (!Path.empty())</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 bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;_getcwd(oldpath,256);</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; &nbsp; &nbsp; &nbsp; &nbsp;_chdir(Path.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;}</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; &nbsp; &nbsp; &nbsp; &nbsp;system (Command.c_str());</font></td><td><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="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &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;if (!Path.empty())</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; &nbsp; &nbsp; &nbsp; &nbsp;_chdir(oldpath);</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; &nbsp; &nbsp; &nbsp; &nbsp;nlinfo (&quot;end executing: %s&quot;, Command.c_str());</font></td><td><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; &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 bgcolor="#dddddd"><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 222</b>&nbsp;<font size=-1></font></td></tr></table></td><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 244</b>&nbsp;<font size=-1></font></td></tr></table></td>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CNetManager::send (&quot;AESAS&quot;, msgout);</font></td><td><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;static void cbLog (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;// received an answer for a command, give it to the AS</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;// broadcast the message to the admin service</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;LOG&quot;);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;string log;</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 (log);</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 (log);</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 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;void serviceConnection (const string &amp;serviceName, TSockId from, void *arg)</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;void serviceConnection (const string &amp;serviceName, TSockId from, void *arg)</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; &nbsp; &nbsp; &nbsp; &nbsp;Services.push_back (CService (from));</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Services.push_back (CService (from));</font></td></tr>
+<tr bgcolor="#dddddd"><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 258</b>&nbsp;<font size=-1></font></td></tr></table></td><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 292</b>&nbsp;<font size=-1></font></td></tr></table></td>
+<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; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;SID&quot;, cbServiceIdentification },</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;SID&quot;, cbServiceIdentification },</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;SR&quot;, cbServiceReady },</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;SR&quot;, cbServiceReady },</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;LOG&quot;, cbLog },</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 bgcolor="#dddddd"><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 266</b>&nbsp;<font size=-1></font></td></tr></table></td><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 301</b>&nbsp;<font size=-1></font></td></tr></table></td>
+<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="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;void errorMessage(string message, TSockId from)</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;ERR&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 (message);</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, from);</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;static void cbExecuteSystemCommand (CMessage&amp; msgin, TSockId from, CCallbackNetBase &amp;netbase)</font></td><td><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;{</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;string systemCommand;</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;string command;</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;uint8 background;</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;msgin.serial (systemCommand);</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgin.serial (command);</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgin.serial (background);</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;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;thread-&gt;start ();</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 cbStartService (CMessage&amp; msgin, TSockId from, CCallbackNetBase &amp;netbase)</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;string serviceAlias, command, path;</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 (serviceAlias);</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;nlinfo (&quot;I have to execute '%s'&quot;, systemCommand.c_str());</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;nlinfo (&quot;Starting the service alias '%s'&quot;, serviceAlias.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;executeCommand (systemCommand, background==1);</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;try</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;path = IService::ConfigFile.getVar(serviceAlias).asString(0);</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;command = IService::ConfigFile.getVar(serviceAlias).asString(1);</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;catch(EConfigFile &amp;e)</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;nlwarning (&quot;error in serviceAlias '%s' in config file (%s)&quot;, serviceAlias.c_str(), e.what());</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;return;</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;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</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;</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;IThread *thread = IThread::create (new CExecuteCommandThread (command, path));</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;thread-&gt;start ();</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;static void cbStopService (CMessage&amp; msgin, TSockId from, CCallbackNetBase &amp;netbase)</font></td><td><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;{</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;string service;</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;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;msgin.serial (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;nlinfo (&quot;I have to stop service '%s'&quot;);</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;nlinfo (&quot;I have to stop service&quot;);</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;SIT sit = findService (sid, false);</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (sit == Services.end())</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;// don't find the aes, send an error message</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;errorMessage (&quot;couldn't stop service, aes didn't find the service&quot;, from);</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;return;</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 bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CMessage msgout (CNetManager::getSIDA(&quot;AES&quot;), &quot;STOPS&quot;);</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;AES&quot;, msgout, (*sit).SockId);</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;static void cbExecCommand (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;uint32 sid;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;string command;</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 (sid);</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 (command);</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;SIT sit = findService (sid, false);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (sit == Services.end())</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;// don't find the aes, send an error message</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;errorMessage (&quot;couldn't stop service, aes didn't find the service&quot;, from);</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;</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;CMessage msgout (CNetManager::getSIDA(&quot;AES&quot;), &quot;EXEC_COMMAND&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 (command);</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;AES&quot;, msgout, (*sit).SockId);</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;void loadAndSendServicesAliasList (CConfigFile::CVar &amp;var);</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;void cbASServiceConnection (const string &amp;serviceName, TSockId from, void *arg)</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;void cbASServiceConnection (const string &amp;serviceName, TSockId from, void *arg)</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; &nbsp; &nbsp; &nbsp; &nbsp;// new admin service, send him all out info about services</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// new admin service, send him all out info about services</font></td></tr>
+<tr bgcolor="#dddddd"><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 303</b>&nbsp;<font size=-1></font></td></tr></table></td><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 402</b>&nbsp;<font size=-1></font></td></tr></table></td>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgout.serial ((*sit).Ready);</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgout.serial ((*sit).Ready);</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;CNetManager::send (&quot;AESAS&quot;, msgout, from);</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CNetManager::send (&quot;AESAS&quot;, msgout, from);</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;loadAndSendServicesAliasList (IService::ConfigFile.getVar (&quot;Services&quot;));</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;TCallbackItem AESASCallbackArray[] =</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;TCallbackItem AESASCallbackArray[] =</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;{ &quot;ESC&quot;, cbExecuteSystemCommand },</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;SYS&quot;, cbExecuteSystemCommand },</font></td></tr>
+<tr><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;SS&quot;, cbStopService },</font></td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;STARTS&quot;, cbStartService },</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;STOPS&quot;, cbStopService },</font></td></tr>
+<tr><td bgcolor="#99cc99">&nbsp;</td><td bgcolor="#99ff99"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{ &quot;EXEC_COMMAND&quot;, cbExecCommand },</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 bgcolor="#dddddd"><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 317</b>&nbsp;<font size=-1></font></td></tr></table></td><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 420</b>&nbsp;<font size=-1></font></td></tr></table></td>
+<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="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp;void loadAndSendServicesAliasList (CConfigFile::CVar &amp;services)</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;vector&lt;string&gt; servicesaliaslist;</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;for (sint i = 0 ; i &lt; services.size (); i++)</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;servicesaliaslist.push_back (services.asString(i));</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;CMessage msgout2 (CNetManager::getSIDA (&quot;AESAS&quot;), &quot;SAL&quot;);</font></td></tr>
+<tr><td bgcolor="#cccccc">&nbsp;</td><td bgcolor="#ccccff"><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;msgout2.serialCont (servicesaliaslist);</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;, msgout2, 0);</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><font face="Helvetica,Arial" size="-1">&nbsp;class CAdminExecutorService : public IService</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;class CAdminExecutorService : public IService</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;public:</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp;public:</font></td></tr>
+<tr bgcolor="#dddddd"><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 331</b>&nbsp;<font size=-1></font></td></tr></table></td><td width="50%"><table width="100%" border=1 cellpadding=5><tr><td><b>Line 448</b>&nbsp;<font size=-1></font></td></tr></table></td>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CNetManager::setConnectionCallback (&quot;AESAS&quot;, cbASServiceConnection, NULL);</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CNetManager::setConnectionCallback (&quot;AESAS&quot;, cbASServiceConnection, NULL);</font></td></tr>
+<tr><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CNetManager::addServer (&quot;AESAS&quot;, 49996);</font></td><td><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><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><td><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;</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;ConfigFile.setCallback (&quot;Services&quot;, loadAndSendServicesAliasList);</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;loadAndSendServicesAliasList (IService::ConfigFile.getVar (&quot;Services&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><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; &nbsp; &nbsp; &nbsp; &nbsp;bool &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;update ()</font></td><td><font face="Helvetica,Arial" size="-1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;bool &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;update ()</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.4</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.5</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.4">
+<INPUT TYPE=HIDDEN NAME="r2" VALUE="1.5">
+<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