diff options
author | wolff1 <wolff1@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2009-02-23 21:33:57 +0000 |
---|---|---|
committer | wolff1 <wolff1@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2009-02-23 21:33:57 +0000 |
commit | a10286c7bf3faf525feb22a40852a10644666fec (patch) | |
tree | ae59833feb0069d74a932c0b86bbd4da04dfc7e2 /ACE | |
parent | 21bd6c21eb3346a10e81be73857e45ed241ceca3 (diff) | |
download | ATCD-a10286c7bf3faf525feb22a40852a10644666fec.tar.gz |
merge in changes from trunk/ACE revisions 83248 - 84587
Diffstat (limited to 'ACE')
696 files changed, 24147 insertions, 13335 deletions
diff --git a/ACE/ACE-INSTALL.html b/ACE/ACE-INSTALL.html index b52a868ae6b..e3e9a3b07a5 100644 --- a/ACE/ACE-INSTALL.html +++ b/ACE/ACE-INSTALL.html @@ -155,8 +155,8 @@ document</a>.</p><p> <td>Maintains ACE on many platforms required for their ACE and TAO service offerings. We support AIX, CodeGear C++ Builder 2007/2009, CodeGear RAD Studio 2007, - CBuilderX 1.0, MinGW, Microsoft Visual C++ 7.1/8/9, GCC, - Cygwin, VxWorks 5.5.x - 6.x (kernel and rtp), OpenVMS 8.2-1 & 8.3 on Alpha and IA64, + CBuilderX 1.0, Windows CE, MinGW, Microsoft Visual C++ 7.1/8/9, GCC, + Cygwin, VxWorks 5.5.x - 6.x (kernel and rtp), OpenVMS 8.2-1 & 8.3 on Alpha and IA64, BlueCAT Linux, RedHat Linux, Fedora, MacOSX, Solaris, Tru64, SuSE Linux on Alpha/IA32/EM64T/IA64, RTEMS, QNX, LynxOS 4.0/4.2, HPUX 11i v1/v2 32/64 bit on PA-RISC, and @@ -594,6 +594,14 @@ can be built with the compiler and linker included in the <a href="http://www.mi </td> </tr> </tbody></table> + +<p>The VC++ compiler and linker can now be invoked from GNU make just like +most UNIX builds. Follow the instructions in the <a href="#unix_traditional"> +ACE/GNU Configuration</a> sections and see the additional information in the +comments of +<a href="include/makeinclude/platform_win32_msvc.GNU">platform_win32_msvc.GNU</a>. +</p> + <p>If you happen to open a VC7.1 file from within VC8, it will offer to convert the file to the newer format for you. With the stock VC8, do not do this; Visual Studio will crash while attempting to convert the large @@ -637,14 +645,6 @@ https://msdn.microsoft.com/visualc/downloads/default.aspx</a> for information. programs that uses ACE. Otherwise you may experience problems finding ace.dll or aced.dll.<br> <br> - </li><li>If you want to use the standard C++ headers (iostream, cstdio, ... - as defined by the C++ Standard Draft 2) that comes with MSVC, - then add the line: <br> - <br> - <code>#define ACE_HAS_STANDARD_CPP_LIBRARY 1</code><br> - <br> - before the #include statement in ACE_ROOT\ace\config.h.<br> - <br> </li><li>To use ACE with MFC libraries, also add the following to your <code>config.h</code> file. Notice that if you want to spawn a new thread with CWinThread, make sure you spawn the @@ -1020,6 +1020,11 @@ setup selects by default: <blockquote><code></code><pre> % export PATH=//c/cygwin/bin:$PATH </pre></blockquote> + or + + <blockquote><code></code><pre> % export PATH=/cygdrive/c/cygwin/bin:$PATH + </pre></blockquote> + <p> Note Cygwin uses ``<tt>/</tt>'' as directory separator, and ``<tt>//X</tt>'' as a notation for Win32 drive <tt>X</tt>. diff --git a/ACE/ACEXML/common/HttpCharStream.cpp b/ACE/ACEXML/common/HttpCharStream.cpp index 811709ecd27..b22d5a77a5f 100644 --- a/ACE/ACEXML/common/HttpCharStream.cpp +++ b/ACE/ACEXML/common/HttpCharStream.cpp @@ -412,10 +412,10 @@ ACEXML_HttpCharStream::read (ACEXML_Char *str, if (this->stream_ == 0) return -1; len = len * sizeof (ACEXML_Char); - char* temp = const_cast<char*> (this->stream_->recv (len)); - str = ACE_TEXT_CHAR_TO_TCHAR (temp); - if (str == 0) + const char* temp = this->stream_->recv (len); + if (temp == 0) return -1; + ACE_OS::strncpy (str, ACE_TEXT_CHAR_TO_TCHAR (temp), len); return static_cast<int> (len); } diff --git a/ACE/ACEXML/examples/SAXPrint/main.cpp b/ACE/ACEXML/examples/SAXPrint/main.cpp index d875fff1964..b43b1247c63 100644 --- a/ACE/ACEXML/examples/SAXPrint/main.cpp +++ b/ACE/ACEXML/examples/SAXPrint/main.cpp @@ -62,7 +62,7 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[]) ACE_ERROR ((LM_ERROR, ACE_TEXT ("ZZIPLIB support has not been") ACE_TEXT (" compiled in. Refer to ") ACE_TEXT ("$ACE_ROOT/ACEXML/README for more ") - ACE_TEXT ("information. \n"))); + ACE_TEXT ("information.\n"))); return -1; #else break; diff --git a/ACE/ASNMP/examples/get/get.cpp b/ACE/ASNMP/examples/get/get.cpp index 2b7b6b1ebd3..6cf1b0a7aab 100644 --- a/ACE/ASNMP/examples/get/get.cpp +++ b/ACE/ASNMP/examples/get/get.cpp @@ -142,8 +142,8 @@ void getapp::usage() { cout << "Usage:\n"; cout << "get [options] dotted-quad | DNSName[:port]\n"; - cout << " -o OID defaults to 1.3.6.1.2.1.1.1.0 (mibII sysDescr.0) \n"; - cout << " -c Community_name, default is 'public' \n"; + cout << " -o OID defaults to 1.3.6.1.2.1.1.1.0 (mibII sysDescr.0)\n"; + cout << " -c Community_name, default is 'public'\n"; cout << " -r N retries default is N = 1 retry\n"; cout << " -t N timeout in seconds default is 1 second" << endl; } diff --git a/ACE/ASNMP/examples/get/get_async.cpp b/ACE/ASNMP/examples/get/get_async.cpp index c3d82bfb609..008f7b18f66 100644 --- a/ACE/ASNMP/examples/get/get_async.cpp +++ b/ACE/ASNMP/examples/get/get_async.cpp @@ -142,8 +142,8 @@ void getapp::usage() { cout << "Usage:\n"; cout << "get [options] dotted-quad | DNSName[:port]\n"; - cout << " -o OID defaults to 1.3.6.1.2.1.1.1.0 (mibII sysDescr.0) \n"; - cout << " -c Community_name, default is 'public' \n"; + cout << " -o OID defaults to 1.3.6.1.2.1.1.1.0 (mibII sysDescr.0)\n"; + cout << " -c Community_name, default is 'public'\n"; cout << " -r N retries default is N = 1 retry\n"; cout << " -t N timeout in seconds default is 1 second" << endl; } diff --git a/ACE/ASNMP/examples/next/next.cpp b/ACE/ASNMP/examples/next/next.cpp index 50005cd4bc8..ed68a033d8f 100644 --- a/ACE/ASNMP/examples/next/next.cpp +++ b/ACE/ASNMP/examples/next/next.cpp @@ -141,8 +141,8 @@ void nextapp::usage() { cout << "Usage:\n"; cout << "next [options] dotted-quad | DNSName[:port]\n"; - cout << " -o OID starts with oid after 1.3.6.1.2.1.1.1.0 (mibII sysDescr.0) \n"; - cout << " -c Community_name, default is 'public' \n"; + cout << " -o OID starts with oid after 1.3.6.1.2.1.1.1.0 (mibII sysDescr.0)\n"; + cout << " -c Community_name, default is 'public'\n"; cout << " -r N retries default is N = 1 retry\n"; cout << " -t N timeout in seconds default is 1 second" << endl; } diff --git a/ACE/ASNMP/examples/set/set.cpp b/ACE/ASNMP/examples/set/set.cpp index baa6cfbf111..73302ab69c1 100644 --- a/ACE/ASNMP/examples/set/set.cpp +++ b/ACE/ASNMP/examples/set/set.cpp @@ -210,8 +210,8 @@ void set::usage() { cout << "Usage:\n"; cout << "next [options] dotted-quad | DNSName[:port]\n"; - cout << " -o OID starts with oid after 1.3.6.1.2.1.1.1.0 (mibII sysDescr.0) \n"; - cout << " -c Community_name, default is 'private' \n"; + cout << " -o OID starts with oid after 1.3.6.1.2.1.1.1.0 (mibII sysDescr.0)\n"; + cout << " -c Community_name, default is 'private'\n"; cout << " -r N retries default is N = 1 retry\n"; cout << " -t N timeout in seconds default is 1 second\n"; cout << " -O oid_to_set -{I,U,G,S,P} value\n"; diff --git a/ACE/ASNMP/examples/trap/trap.cpp b/ACE/ASNMP/examples/trap/trap.cpp index e394b2ee919..4be4021ca3e 100644 --- a/ACE/ASNMP/examples/trap/trap.cpp +++ b/ACE/ASNMP/examples/trap/trap.cpp @@ -145,7 +145,7 @@ void trapapp::usage() { cout << "Usage:\n"; cout << "trap [options] dotted-quad | DNSName[:port]\n"; - cout << " -c Community_name, default is 'public' \n"; + cout << " -c Community_name, default is 'public'\n"; cout << " -r N retries default is N = 1 retry\n"; cout << " -t N timeout in seconds default is 1 second" << endl; cout << " -e oid enterprise oid default is 1.3.6.1.2.1.1.1.2.0.1\n"; diff --git a/ACE/ASNMP/examples/walk/walk.cpp b/ACE/ASNMP/examples/walk/walk.cpp index 3ff29e9bd86..dabd3a5437a 100644 --- a/ACE/ASNMP/examples/walk/walk.cpp +++ b/ACE/ASNMP/examples/walk/walk.cpp @@ -141,8 +141,8 @@ void walkapp::usage() { cout << "Usage:\n"; cout << "walk [options] dotted-quad | DNSName[:port]\n"; - cout << " -o OID starts with oid after 1.3.6.1.2.1.1.1.0 (mibII sysDescr.0) \n"; - cout << " -c Community_name, default is 'public' \n"; + cout << " -o OID starts with oid after 1.3.6.1.2.1.1.1.0 (mibII sysDescr.0)\n"; + cout << " -c Community_name, default is 'public'\n"; cout << " -r N retries default is N = 1 retry\n"; cout << " -t N timeout in seconds default is 1 second" << endl; } diff --git a/ACE/COPYING b/ACE/COPYING index 1d96c4905d3..0b4d139ae6e 100644 --- a/ACE/COPYING +++ b/ACE/COPYING @@ -1,14 +1,14 @@ _________________________________________________________________ - + Copyright and Licensing Information for ACE(TM), TAO(TM), CIAO(TM), and CoSMIC(TM) - + [1]ACE(TM), [2]TAO(TM), [3]CIAO(TM), and [4]CoSMIC(TM) (henceforth referred to as "DOC software") are copyrighted by [5]Douglas C. Schmidt and his [6]research group at [7]Washington University, [8]University of California, Irvine, and [9]Vanderbilt University, - Copyright (c) 1993-2008, all rights reserved. Since DOC software is + Copyright (c) 1993-2009, all rights reserved. Since DOC software is open-source, freely available software, you are free to use, modify, copy, and distribute--perpetually and irrevocably--the DOC software source code and object code produced from the source, as well as copy @@ -16,7 +16,7 @@ include this copyright statement along with any code built using DOC software that you release. No copyright statement needs to be provided if you just ship binary executables of your software products. - + You can use DOC software in commercial and/or binary software releases and are under no obligation to redistribute any of your source code that is built using DOC software. Note, however, that you may not do @@ -27,7 +27,7 @@ software in your software, though we encourage you to let [10]us know so we can promote your project in the [11]DOC software success stories. - + The [12]ACE, [13]TAO, [14]CIAO, and [15]CoSMIC web sites are maintained by the [16]DOC Group at the [17]Institute for Software Integrated Systems (ISIS) and the [18]Center for Distributed Object @@ -50,13 +50,13 @@ University, UC Irvine, or Vanderbilt University, their employees, or students be liable for any lost revenue or profits or other special, indirect and consequential damages. - + DOC software is provided with no support and without any obligation on the part of Washington University, UC Irvine, Vanderbilt University, their employees, or students to assist in its use, correction, modification, or enhancement. A [19]number of companies around the world provide commercial support for DOC software, however. - + DOC software is Y2K-compliant, as long as the underlying OS platform is Y2K-compliant. Likewise, DOC software is compliant with the new US daylight savings rule passed by Congress as "The Energy Policy Act of @@ -65,7 +65,7 @@ obtains time/date and calendaring information from operating systems users will not be affected by the new DST rules as long as they upgrade their operating systems accordingly. - + The names ACE(TM), TAO(TM), CIAO(TM), CoSMIC(TM), Washington University, UC Irvine, and Vanderbilt University, may not be used to endorse or promote products or services derived from this source @@ -75,13 +75,13 @@ CIAO(TM), or CoSMIC(TM), nor does it grant permission for the name Washington University, UC Irvine, or Vanderbilt University to appear in their names. - + If you have any suggestions, additions, comments, or questions, please let [20]me know. - + [21]Douglas C. Schmidt _________________________________________________________________ - + Back to the [22]ACE home page. References diff --git a/ACE/ChangeLog b/ACE/ChangeLog index 67cbafbd8b3..dc64b0d1de1 100644 --- a/ACE/ChangeLog +++ b/ACE/ChangeLog @@ -1,7074 +1,567 @@ -Tue Oct 14 22:27:30 UTC 2008 Tim Pollock <pollockt@ociweb.com> - - * ace/Ping_Socket.cpp: - - Removed tabs accidentally added in previous modification. - -Tue Oct 14 19:38:45 UTC 2008 Tim Pollock <pollockt@ociweb.com> - - * ace/Ping_Socket.cpp: - - Fixed WinCE 5 build error associated with call to getpid. - -Tue Oct 14 13:09:35 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/config-sunos5.10.h: - - Undefine ACE_LACKS_WCSTOLL. - - * ace/config-sunos5.5.h: - - Define ACE_LACKS_WCSTOLL. - -Tue Oct 14 12:56:42 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/config-win32-msvc.h: - - Define ACE_STRTOLL_EQUIVALENT and ACE_WCSTOLL_EQUIVALENT. - -Tue Oct 14 12:49:11 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> +Mon Feb 23 13:11:15 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> * ace/config-vxworks5.x.h: * ace/config-vxworks6.2.h: * ace/config-vxworks6.3.h: - * ace/config-vxworks6.4.h: - * ace/config-win32-borland.h: - - Define ACE_LACKS_STRTOLL and ACE_LACKS_WCSTOLL. - -Tue Oct 14 12:49:13 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> - - * bin/tao_other_tests.lst: - - Disabled IPv6 tests for bug#3444 on non-IPv6 builds. And - disabled the same test on static builds since it loads - TAO_Strategies and TAO_PortableGroup dynamically. - -Tue Oct 14 12:44:28 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/config-hpux-11.00.h: - - Define ACE_LACKS_STRTOLL and ACE_LACKS_WCSTOLL. - -Tue Oct 14 09:30:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/OS_NS_stdlib.cpp: - * ace/OS_NS_stdlib.h: - - Un-tabify commit of J.T. Conklin. - -Mon Oct 13 17:21:28 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * bin/fuzz.pl: - - Add strtoll and strtoull to $OS_NS_stdlib_symbols regex in - check_for_lack_ACE_OS fuzz check. Thanks to Abdullah Sowayan - <abdullah dot sowayan at lmco dot com> for pointing this out. - - * ace/OS_NS_stdlib.cpp: - * ace/OS_NS_stdlib.h: - * ace/OS_NS_stdlib.inl: - - Add strtoll() wrapper. Fixes bugzilla issue #3456. - - Add wcstol(), wcstoul(), wcstoll(), and wcstoull() emulations - for systems with wide characters, but without these functions. - Fixes bugzilla issue #3457. - -Mon Oct 13 14:23:06 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> - - * ace/config-linux-common.h: - * bin/tao_other_tests.lst: - - Added 3 defines to reflect a difference of Linux in setting - IP_MULTICAST_TTL and IP(V6)_MULTICAST_LOOP. This is required by - Bug#3444. Added a test for Bug#3444. - -Mon Oct 13 13:21:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * rpmbuild/ace-tao-ciao.txt: - * rpmbuild/ace-tao.spec: - Incremented already version number, release script doesn't do this - yet - - * rpmbuild/ace-tao-ciao.txt: - icmp is now enabled by default on linux - -Mon Oct 13 11:10:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * include/makeinclude/platform_lynxos.GNU: - Problems with Lynxos5.0 due to -mshared being passed to compiler - (inaddition to linker) - -Mon Oct 13 07:21:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Local_Name_Space_T.cpp: - * ace/MEM_Connector.cpp: - * ace/Multihomed_INET_Addr.cpp: - * ace/Sock_Connect.cpp: - ACE_TCHAR fixes - -Fri Oct 10 08:57:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/Stack_Trace.cpp: - Disable MSVC warning 4748 "/GS can not protect parameters - and local variables from local buffer overrun because - optimizations are disabled in function" - -Thu Oct 9 21:52:18 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/config-win32-common.h: Add ACE_HAS_ICMP_SUPPORT if Winsock 2 - is available. - - * tests/Network_Adapters_Test.{h cpp}: Removed extraneous ACE::init. - Compare IP addresses using ACE_INET_Addr::is_ip_equal() instead of - comparing get_ip_address() returns - this allows it to work with - either IPv4 or IPv6. - -Thu Oct 9 17:54:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - Added more WinCE6 support by integrating some changes from OCI. - Mon Aug 11 15:40:37 UTC 2008 Phil Mesnier <mesnier_p@ociweb.com> - * ace/config-win32-msvc-8.h: - * ace/config-WinCE.h: - WinCE 6.0 supports TSS and still does not support sig_atomic_t. - -Wed Oct 8 21:06:42 UTC 2008 Steve Huston <shuston@riverace.com> - - * tests/Network_Adapters_Test.cpp: Extend the errno checks to correctly - sense insufficient privs on AIX (EACCESS). - -Wed Oct 8 20:57:24 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/Ping_Socket.cpp (send_echo_check): Fixed problem introduced in - Tue Oct 7 23:04:50 UTC 2008 Steve Huston <shuston@riverace.com> - while setting the ICMP id. - - * tests/Network_Adapters_Test.cpp: If the test can't run due to - insufficient privs, do ACE_END_TEST and return; don't exit. Want - to avoid triggering a test fail in the scoreboard when the test - can't be run. - -Wed Oct 8 18:29:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * apps/gperf/src/Options.cpp - * apps/gperf/src/Options.h - Fixed ACE_TCHAR problems - - * apps/gperf/src/gperf.mpc - * apps/gperf/tests/gperf_test.mpb - Build and test gperf when uses_wchar is set - -Wed Oct 8 18:11:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Dirent_Test.cpp: - Use the new ACE_HAS_TCHAR_DIRENT. Fixes bugzilla 3130 - -Wed Oct 8 18:08:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/os_include/os_dirent.h: - Set ACE_HAS_TCHAR_DIRENT when the dirent struct has a tchar - filename. This is currently with CodeGear C++ with - uses wchar enabled or with dirent emulation. This fixes bugzilla - 3438 - -Wed Oct 8 09:44:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-borland-common.h: - Moved the contents to config-win32-borland.h and removed - this file - - * ace/config-win32-borland.h: - Added contents of config-borland-common.h - -Tue Oct 7 23:04:50 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/config-aix-5.x.h: Added ACE_HAS_ICMP_SUPPORT - - * ace/Ping_Socket.cpp: When setting or checking the ICMP id field, - it's 16 bits, so restrict values to that range. AIX pids are 32 bits, - and the ID checks failed; this fixes it. - -Tue Oct 7 23:01:44 UTC 2008 Steve Huston <shuston@riverace.com> + Removed, these VxWorks versions aren't maintained anymore - * tests/Network_Adapters_Test.cpp: If the ping/raw socket open fails - because of a lack of privilege, issue a warning that the test can't - run, not an error. - -Mon Oct 6 22:27:54 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/WFMO_Reactor.inl (suspend_handlers): Never suspend the notify - or the wakeup_all_threads handles - these are specially set up by - ACE_WFMO_Reactor::open(), not by users, and are critical to the - proper functioning of the event loop. - Fixes Bugzilla #3267. - - * tests/Reactor_Dispatch_Order_Test.cpp: Added some additional - sanity checks and fixed some logging. - -Fri Oct 3 19:05:39 UTC 2008 Yan Dai <dai_y@ociweb.com> - - * ace/Reactor_Token_T.cpp: - - Made reactor notify with zero timeout and ignore timeout case in - sleep_hook(). This would fix bugzilla 2465 reactor deadlock - problem. - -Thu Oct 2 16:41:57 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/Basic_Types.h: Adjust the byte order decision for Itanium - hardware. Itanium can run either byte order - the OS selects it - at boot. The checks were correct for Windows (and maybe Linux) - but not for HP-UX. Apparantly something in the predefined macros - at aC++ 06.20 changed enough to fool this check. - -Mon Sep 29 18:04:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/CDR_File_Test.cpp: - * tests/Log_Msg_Test.cpp: - VxWorks 6.6 can't unlink in advance on NFS - -Mon Sep 29 13:36:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/MakeProjectCreator/config/acedefaults.mpb: - * tests/unload_libace.mpb: - Use unicode lib modifier - -Sun Sep 28 18:16:53 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Bug_3432_Regression_Test.cpp: - * tests/OS_Test.cpp: - * tests/run_test.lst: - * tests/tests.mpc: - Moved strptime test to its own file because ACE_OS::strptime() seems to - behave differently on HPUX and no time to sort that out at this moment - - * tests/Pipe_Test.cpp: - Renamed a few methods so that we don't have to disable the ACE_OS check - -Sun Sep 28 10:28:53 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/generate_rel_manpages: - We are using doxygen 1.5.6 from now - -Thu Sep 25 18:27:53 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/config_h.m4: - - Remove ACE_LACKS_STRPTIME and ACE_LACKS_SI_ADDR autoheader - templates. We already use the AC_DEFINE macros third argument - for the descriptive text in the cooresponding feature tests. - -Thu Sep 25 17:37:19 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/config_h.m4: - - Add comment explaining why I'm bothering replacing autoheader - templates in this file. - - * m4/acinclude.m4: - * m4/config_h.m4: - - Move ACE_HAS_LLSEEK, ACE_HAS_LSEEK64, - ACE_LACKS_LLSEEK_PROTOTYPE, and ACE_LACKS_LSEEK64_PROTOTYPE - autoheader templates to ACE_CHECK_LSEEK64 feature test macro. - - * configure.ac: - * m4/config_h.m4: - - Replace use of autoheader templates with AC_DEFINE macro's third - argument for ACE_LACKS_CONDATTR_PSHARED, - ACE_LACKS_MUTEXATTR_PSHARED, and ACE_LACKS_RWLOCKATTR_PSHARED - feature tests. - -Thu Sep 25 16:45:16 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - * m4/config_h.m4: - - Remove feature test and autoheader template for - ACE_LACKS_PLACEMENT_OPERATOR_NEW, as it is no longer used. - -Thu Sep 25 16:23:26 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - * m4/config_h.m4: - - Replace ~50 lines of open code with simple call to AC_CHECK_TYPE - with ACE_DEFINE with a third argument for the ACE_LACKS_SEMBUF_T - feature test. - - Move feature test for ACE_HAS_BYTESEX_H so it's adjacent to the - test for ACE_HAS_BYTESWAP_H. - -Thu Sep 25 13:58:48 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/acinclude.m4: - - Remove ACE_CHECK_STRUCT and ACE_TRY_COMPILE_STRUCT autoconf - macros. All use has been replaced by the standard autoconf - AC_CHECK_TYPE macro. - - * configure.ac: - * m4/config_h.m4: - - Replace use of ACE_CHECK_STRUCT with AC_CHECK_TYPE, and the use - of AH_TEMPLATE with AC_DEFINE with a third argument for the - ACE_HAS_PRUSAGE_T, ACE_LACKS_STRRECVFD, ACE_LACKS_SIGACTION, - ACE_LACKS_SIGSET, and ACE_LACKS_UTSNAME_T feature tests. - - Replace use of ACE_TRY_COMPILE_STRUCT with AC_CHECK_TYPE in - internal feature tests (no feature test macros are defined) - for pthread_rwlock_t and pthread_rwlockattr_t. - - Remove duplicate ACE_LACKS_SI_ADDR feature test. - - Replace use of "test xxx == yyy" with "test xxx = yyy", the - former is a GNU extension. - -Thu Sep 25 11:49:45 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/acinclude.m4: - - Remove ACE_CHECK_TYPE autoconf macro. All use of it has been - replaced by the standard autoconf AC_CHECK_TYPE macro. - - * configure.ac: - * m4/config_h.m4: - - Replace use of ACE_CHECK_TYPE with AC_CHECK_TYPE and the use - of AH_TEMPLATE with AC_DEFINE with a third argument for the - ACE_HAS_HI_RES_TIMER feature test. - -Thu Sep 25 00:28:52 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - * m4/config_h.m4: - - Replace use of ACE_CHECK_STRUCT with AC_CHECK_TYPE, and the use - of AH_TEMPLATE with AC_DEFINE with a third argument for the - ACE_LACKS_STRUCT_DIR, ACE_LACKS_FILELOCKS, ACE_LACKS_RWLOCK_T, - and ACE_HAS_STRBUF_T feature tests. - -Wed Sep 24 17:43:22 UTC 2008 Rich Seibel <seibel_r@ociweb.com> - - * bin/tao_other_tests.lst: - - Added test for Bug 3387. - -Wed Sep 24 14:16:50 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * ACE-INSTALL.html: - - Updated info on Visual Studio 2008 / VC9 and 64-bit Windows. - -Tue Sep 23 21:55:28 UTC 2008 Phil Mesnier <mesnier_p@ociweb.com> - - * bin/tao_other_tests.lst: - - Bug 3431 was fixed, so I'm making this test part of the nightly - build. - -Tue Sep 23 19:32:38 2008 Steve Huston <shuston@riverace.com> - - Brought in from ACE 5.6a: - Tue Aug 26 17:11:10 UTC 2008 Steve Huston <shuston@riverace.com> - - * tests/Service_Config_Test.cpp: Add a test for looking up services - from a thread started outside ACE's control. This has code for - Pthreads and Windows; other platforms will require additions if - desired. - -Tue Sep 23 16:49:12 UTC 2008 Steve Huston <shuston@riverace.com> - - * tests/Bug_2980_Regression_Test.cpp: Adjust to shared lib suffix - that differs from ".so". Fixes HP-UX 11iv2 on PA-RISC. Generalizes - (and reverts) the platform tests made in - Mon Sep 22 13:17:19 UTC 2008 Simon McQueen <sm@prismtech.com> - -Tue Sep 23 15:41:43 2008 Steve Huston <shuston@riverace.com> - - * tests/run_test.pl: Don't delete Service_Config_Test.conf from the - target; on local builds, it deletes it from the working dir and - svn needs to restore it. Fixes Bugzilla #3409. Thanks to Johnny - Willemsen for noticing this. - - * ace/os_include/sys/os_types.h: - * ace/OS_NS_sys_stat.inl (umask): Changed mode_t from an int back to - u_short. int conflicts with other packages' defs of mode_t (in - particular, Perl). Of all the places mode_t is used, the only place - int made a real difference was in calling _umask_s() on Windows - VC8+. This change reverts the affected piece of - Fri Mar 9 00:53:43 UTC 2007 Steve Huston <shuston@riverace.com> - -Tue Sep 23 15:32:57 UTC 2008 Phil Mesnier <mesnier_p@ociweb.com> - - * bin/tao_other_tests.lst: - - Added new test for bug #3431. This test will definitely fail - until the underlying problem in the IFR is addressed. There is - no immediate plan to fix bug 3431. - -Tue Sep 23 11:25:58 UTC 2008 Simon McQueen <sm@prismtech.com> - - * ace/Assert.h: - - Add new macro: ACE_TEST_ASSERT. Behaves just like ACE_ASSERT but it - doesn't boil away to nothing on non debug platforms. - -Mon Sep 22 23:18:36 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/OS_NS_unistd.inl: - * ace/OS_NS_time.inl: - Fixed WinCE link error - - * ace/OS_NS_unistd.cpp: - Initialise variable with 0 - - * ace/config-vxworks6.4.h: - Extended the check for lacking log2 - -Mon Sep 22 14:54:36 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/ETCL/ETCL_Constraint.cpp: - - Fix fuzz errors. - -Mon Sep 22 13:17:19 UTC 2008 Simon McQueen <sm@prismtech.com> - - * tests/Bug_2980_Regression_Test.cpp: - - Make this test portable for MacOS and HP-UX. - -Mon Sep 22 11:25:53 UTC 2008 Simon McQueen <sm@prismtech.com> - - * bin/MakeProjectCreator/templates/gnu.mpd: - - Use variable CURDIR instead of PWD where possible to identify the - current working directory. Fixes bug #3393. - -Sat Sep 20 13:13:29 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/config_h.m4: - - Remove ACE_HAS_SYSV_SYSINFO autoheader template. This is now - handled within the ACE_CHECK_FUNC_SYSINFO macro. - - * configure.ac: - - Remove checks for ACE_HAS_SYS_SYSINFO_H, ACE_HAS_SYSTEMINFO_H, - and ACE_HAS_SYSV_SYSINFO, and replace them with a single call - to the new ACE_CHECK_FUNC_SYSINFO macro, which handles all the - details. Fixes bugzilla issue #3325. - - * m4/ace_func.m4: - - New autoconf macro ACE_CHECK_FUNC_SYSINFO, which sets the - ACE_HAS_SYS_SYSINFO_H, ACE_HAS_SYS_SYSTEMINFO_H, - ACE_HAS_SYSV_SYSINFO, and/or ACE_HAS_LINUX_SYSINFO feature - test macros as appropriate for the system. - -Sat Sep 20 12:23:10 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/OS_NS_unistd.inl: - * ace/README: - * ace/config-irix6.x-common.h: - * ace/config-sunos5.4-g++.h: - * ace/config-sunos5.4-sunc++-4.x.h: - * ace/config-sunos5.5.h: - * ace/config-tandem.h: - * ace/config-unixware-7.1.0.h: - * ace/config-unixware-7.1.0.udk.h: - * configure.ac: - * m4/config_h.m4: - - Rename ACE_HAS_SYSINFO feature test macro to ACE_HAS_SYSV_SYSINFO, - to further distinguish it from ACE_HAS_LINUX_SYSINFO. - -Fri Sep 19 19:26:18 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * bin/PerlACE/Process_Win32.pm: - - If the executable contains whitespace, quote it when composing the - command line. - -Fri Sep 19 17:51:12 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/ETCL/ETCL_Constraint.cpp: - - Avoid core dump by returning 0 when evaluating division by zero. - Partial fix for bugzilla issue #3429. - -Fri Sep 19 13:57:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Test_Outpot.cpp: - Use ostream->good() to check if the stream is ok or not. bad() only - checks for a corrupt stream, not if it could be created. This way the - test doesn't run when we can't create the logfile on disk - - * tests/Cached_Accept_Conn_Test.cpp - Removed check for deprecated compiler - -Fri Sep 19 09:41:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Network_Adapters_Test.cpp: - Unicode fix - -Fri Sep 19 09:32:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/unload_libace.mpb: - This project doesn't use acedefaults which then results in some - borland required flags not being set - -Thu Sep 18 21:15:57 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/ace_defines.m4: - * m4/ace_functions.m4: - * m4/ace_headers.m4: - - Update m4 quoting so that macros work with both old and current - versions of autoconf. Tested with both autoconf 2.58 (which is - the earliest version we support) and the recently released 2.63. - Fixes bugzilla issue #3396. - -Thu Sep 18 18:54:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/INET_Addr.{h,cpp}: - Use bool and several doxygen changes - -Thu Sep 18 10:30:00 UTC 2008 Simon Massey <sma@prismtech.com> - - * bin/diff-builds-and-group-fixed-tests-only.sh: - - Provide no test revision grouping results as well. - -Thu Sep 18 06:33:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/OS_NS_Time.{h,cpp,inl} (strptime): - Always clear struct tm to zero - - * tests/OS_Test.cpp: - Updated for change above - - * tests/Cached_Conn_Test.cpp: - Removed check for deprecated compiler - -Wed Sep 17 18:47:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Cached_Connect_Strategy_T.{h,cpp}: - reuse_addr is a bool - -Wed Sep 17 18:11:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/checked_iterator.h: - Reverted change below for the moment, causes a lot of warnings in some - builds. - - Tue Sep 16 12:48:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - * ace/checked_iterator.h: - Check for dinkum stl. Thanks to Mark Hebbel - <Mark dot Hebbel at baslerweb dot com> for reporting this. This - fixes bugzilla 3420 - -Wed Sep 17 14:13:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/OS_NS_time.cpp (strptime_emulation): - Don't set struct tm to zero - - * ace/OS_Test.cpp: - Set struct tm to zero before calling strptime - -Wed Sep 17 13:23:56 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/ETCL/ETCL_Constraint.cpp: - - Explicitly initialize base class in ETCL_Literal_Constraint copy - constructor. - -Wed Sep 17 12:24:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Network_Adapters_Test.cpp: - Unicode fix - -Wed Sep 17 12:19:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Thread_Manager.cpp: - Found that the revert for bugzilla 3391 was not perfect. Thanks to - Yauheni Akhotnikau <eao197 at intervale dot ru> for reporting - this. - -Wed Sep 17 09:15:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/tests.mpc: - * tests/run_test.lst: - Network_Adapters_Test shouldn't build/run with ace_for_tao - -Wed Sep 17 08:45:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/PerlACE/ProcessVX_Unix.pm: - * bin/PerlACE/ProcessVX_Win32.pm: - Improved error handling when we can't connect with telnet - -Wed Sep 17 06:48:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-vxworks5.x.h: - * ace/config-vxworks6.2.h: - * ace/config-vxworks6.3.h: - * ace/config-vxworks6.4.h: - VxWorks doens't have tzset - - * ace/OS_NS_time.inl: - Simplified tzset - -Tue Sep 16 21:58:59 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/ETCL/ETCL_Constraint.cpp: - - Changed ETCL_Literal_Constraint::copy(), so that the string - associated with a constraint object of type ACE_ETCL_STRING is - freed before the constraint is overwritten by the new value. - This avoids a memory leak. - - * ace/ETCL/ETCL_Constraint.cpp: - * ace/ETCL/ETCL_Constraint.inl: - - Implement ETCL_Literal_Constraint::operator!=, operator<=, and - operator>= in terms of operator==, operator>, and operator< and - make them inline. Removes a lot of boilerplate code and reduces - static footprint. - -Tue Sep 16 21:12:21 UTC 2008 Phil Mesnier <phil@ociweb.com> - - * bin/MakeProjectCreator/config/crosscompile.mpb: - - Add a new flag to support crosscompiliation on Win32 platforms. - This is initially needed to improve support for WinCE targets - built using Visual Studio. See companion changes in the MPC - tree for more details. - -Tue Sep 16 17:54:56 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * include/makeinclude/platform_sunos5_sunc++.GNU: - - Reverted the exceptions=0 part of the previous commit. exceptions=0 - is still supported for ACE, but not for TAO. - -Tue Sep 16 14:53:16 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * include/makeinclude/platform_sunos5_sunc++.GNU: - - When using the Sun std library (not stlport), explicitly link -lCrun - and -lCstd. The linker will not include these when building shared - libraries. Also removed code that was only used for exceptions=0. - -Tue Sep 16 13:10:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * examples/Bounded_Packet_Relay/bpr_thread.cpp: - Removed msvc6 workaround and initialise some pointers with 0 - - * examples/Reactor/Multicast/server.cpp: - Corrected error message - - * examples/Web_Crawler/Web_Crawler.mpc: - Removed borland - -Tue Sep 16 12:59:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/OS_NS_stdio.inl: - Reverted some wince changes which shouldn't have been committed - -Tue Sep 16 12:47:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/OS_NS_unistd.inl: - Reverted some wince changes which shouldn't have been committed - -Tue Sep 16 12:48:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/checked_iterator.h: - Check for dinkum stl. Thanks to Mark Hebbel - <Mark dot Hebbel at baslerweb dot com> for reporting this. This - fixes bugzilla 3420 - -Tue Sep 16 12:19:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * apps/Gateway/Gateway/Event_Channel.h - * apps/gperf/src/Options.cpp - * apps/gperf/src/Options.h - * apps/JAWS2/JAWS/Server.cpp - * apps/JAWS2/JAWS/Server.h - * apps/JAWS3/bench/mkfiles.cpp - * apps/JAWS3/bench/rqfiles.cpp - * apps/JAWS3/http/HTTP_Service_Handler.cpp - * apps/JAWS3/small/SS_Service_Handler.cpp - * apps/JAWS/stress_testing/benchd.cpp - * netsvcs/clients/Tokens/collection/collection.cpp - * netsvcs/clients/Tokens/collection/rw_locks.cpp - * netsvcs/clients/Tokens/deadlock/deadlock_detection_test.cpp - * netsvcs/clients/Tokens/manual/manual.cpp - * netsvcs/clients/Tokens/mutex/test_mutex.cpp - * netsvcs/clients/Tokens/rw_lock/rw_locks.cpp - * performance-tests/Misc/test_guard.cpp - * performance-tests/RPC/client.cpp - ACE_TCHAR changes - -Tue Sep 16 10:52:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/*.bor: - * bin/MakeProjectCreator/templates/bor.mpd - * bin/MakeProjectCreator/templates/bordll.mpt - * bin/MakeProjectCreator/templates/borexe.mpt - * bin/MakeProjectCreator/config/borland.features - * bin/MakeProjectCreator/modules/BorlandProjectCreator.pm - * bin/MakeProjectCreator/modules/BorlandWorkspaceCreator.pm - Removed, use the bmake mpc template from now - - * bin/MakeProjectCreator/config/ipv6.mpb: - * bin/MakeProjectCreator/config/vcl.mpb: - * bin/MakeProjectCreator/README: - Removed borland usage - -Tue Sep 16 09:09:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Acceptor.{h,cpp}: - * ace/ACE.{h,cpp}: - * ace/ATM_Acceptor.{h,inl}: - * ace/Connector.cpp: - * ace/DEV_Connector.{h,inl}: - * ace/FILE_Connector.{h,inl}: - * ace/FlReactor/FlReactor.{h,cpp}: - * ace/FoxReactor/FoxReactor.{h,cpp}: - * ace/LOCK_SOCK_Acceptor.{h,cpp}: - * ace/LSOCK_Acceptor.{h,cpp}: - * ace/MEM_Acceptor.{h,cpp}: - * ace/Priority_Reactor.{h,cpp}: - * ace/QtReactor/QtReactor.{h,cpp}: - * ace/Reactor.{h,inl}: - * ace/Reactor_Impl.h: - * ace/Select_Reactor_Base.h: - * ace/Select_Reactor_T.{h,cpp,inl}: - * ace/Service_Manager.cpp: - * ace/SOCK_Acceptor.cpp - * ace/SOCK_Acceptor.h - * ace/SOCK_Connector.h - * ace/SOCK_Connector.inl - * ace/SOCK_SEQPACK_Acceptor.cpp - * ace/SOCK_SEQPACK_Acceptor.h - * ace/SOCK_SEQPACK_Connector.h - * ace/SOCK_SEQPACK_Connector.inl - * ace/SPIPE_Acceptor.cpp - * ace/SPIPE_Acceptor.h - * ace/SPIPE_Connector.h - * ace/SPIPE_Connector.inl - * ace/SSL/SSL_SOCK_Acceptor.cpp - * ace/SSL/SSL_SOCK_Acceptor.h - * ace/SSL/SSL_SOCK_Connector.h - * ace/Strategies_T.cpp - * ace/Strategies_T.h - * ace/TkReactor/TkReactor.cpp - * ace/TkReactor/TkReactor.h - * ace/TLI_Acceptor.cpp - * ace/TLI_Acceptor.h - * ace/TLI_Connector.h - * ace/TLI_Connector.inl - * ace/TP_Reactor.cpp - * ace/TP_Reactor.h - * ace/UPIPE_Acceptor.cpp - * ace/UPIPE_Acceptor.h - * ace/UPIPE_Connector.h - * ace/UPIPE_Connector.inl - * ace/WFMO_Reactor.cpp - * ace/WFMO_Reactor.h - * ace/WFMO_Reactor.inl - * ace/XtReactor/XtReactor.cpp - * ace/XtReactor/XtReactor.h - Changed restart and reset_new_handles from int to bool - - * ace/ace_for_tao.mpc: - * ace/QoS/qos.mpc: - Zap borland as project type - - * ace/ace_qt3reactor.mpc: - Removed empty line - - * ace/Bound_Ptr.{h,inl}: - Let the null methods return bool - - * ace/config-borland-common.h: - Borland has strptime - - * ace/config-linux-common.h: - Enable icmp support by default on linux - - * ace/config-mvs.h: - * ace/config-qnx-rtp-62x.h: - * ace/config-qnx-rtp-pre62x.h: - * ace/config-tandem-nsk-mips-v2.h: - * ace/config-tandem-nsk-mips-v3.h: - Removed fd_mask as define and added ACE_LACKS_FD_MASK - - * ace/config-rtems.h: - Added ACE_LACKS_TZSTE - - * ace/config-WinCE.h: - Updated some defines - - * ace/Dev_Poll_Reactor.{h,cpp}: - Use more bool - - * ace/File_Lock.h: - * ace/Message_Block.h: - Doxygen changes - - * ace/Guard_T.{h,inl}: - * ace/Service_Object.h: - Bool changes and doxygen changes - - * ace/Handle_Set.h: - Removed QNX workaround - - * ace/Log_Msg.{h,cpp,inl}: - Bool changes, doxygen changes - - * ace/Message_Queue.h: - Removed not needed includes + * ace/config-vxworks.h: + Updated - * ace/Message_Queue_NT.h: - Doxygen changes +Mon Feb 23 08:16:15 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> - * ace/Notification_Queue.cpp: + * bin/MakeProjectCreator/config/global.features Layout changes - * ace/os_include/sys/os_select.h: - Added ACE_LACKS_FD_MASK - - * ace/OS_Log_Msg_Attributes.h: - Use bool - - * ace/OS_NS_dirent.cpp: - Const changes - - * ace/OS_NS_netdb.cpp: - Initialise pointers with 0 - - * ace/OS_NS_stdio.inl: - WinCE changes - - * ace/OS_NS_stropts.h: - Doxygen changes - - * ace/OS_NS_time.inl: - Use more defines - - * ace/OS_NS_unistd.{h,inl}: - Always have chdir available as method + * bin/PerlACE/ProcessVX_Unix.pm + Improved quote handling -Tue Sep 16 08:47:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/OS_Test.cpp: - Added test for strptime - - * tests/Service_Config_Test.cpp: - Don't use ACE_ASSERT and always update the error_count. Fixes the failing - of this test in release builds - - * tests/Test_Output.cpp: - Initialise pointer with 0 - -Tue Sep 16 08:45:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/tao_orb_tests.lst: - Added bug 2543 - - * bin/make_release.py: - Generate bmake files - - * bin/fuzz.pl: - bor files shouldn't be in the repo anymore - -Tue Sep 16 08:42:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ACE-INSTALL.html: - Updated Borland/CodeGear support - - * Release: - Package debianbuild, no generatin of ACE-INSTALL, use bmak files - -Tue Sep 16 08:38:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * debianbuild: - New directory to store packaging files for debian - - * docs/Download.html: - Updated for CodeGear - - * include/makeinclude/wrapper_macros.GNU: - No need to add $ACE_ROOT/ace to libpath - -Tue Sep 16 08:32:00 UTC 2008 Simon Massey <sma@prismtech.com> - - * ace/config-lynxos.h: - * ace/os_include/os_signal.h: - * include/makeinclude/platform_lynxos.GNU: - - Updated for LynxOS 5.0. - -Tue Sep 16 08:27:00 UTC 2008 Simon Massey <sma@prismtech.com> - - * ace/Object_Manager.cpp: - - The following fixes stop our automated scoreboard from locking up during - automated window VC8 builds and test runs. The enhance the original - ACE_DISABLE_WIN32_ERROR_WINDOWS builds but only on VC8 and above INTEL - machines. - - Starting with VC8 (VS2005), it is necessary to add the call to - _set_abort_behavior( 0, _CALL_REPORTFAULT); to ensure that calls to - abort() do not bypass any declared unhandled exception handler and directly - call the default debugger or "report this problem to microsoft" dialogue. - This does NOT stop the standard message from being logged to the error stream. - - Also starting with VC8 (VS2005), Microsoft changed the behaviour of the CRT - in some security related and special situations. The are many situations in - which our ACE_UnhandledExceptionFilter will never be called. This is a major - change to the previous versions of the CRT and is not very well documented. - See: - http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=101337 - - Basically the CRT simply uninstalls the registered unhandled exception filter - and then forces a call to the default-debugger. Jochen's solution is to stop - the CRT from calling SetUnhandledExceptionFilter() after we have setup our own - handler. NOTE this fix only works for intel based windows builds. - - This fix was derived from that proposed by Jochen Kalmbach here: - http://blog.kalmbachnet.de/?postid=75 - -Tue Sep 16 08:12:00 UTC 2008 Simon Massey <sma@prismtech.com> - - * bin/diff-builds-and-group-fixed-tests-only.sh: - - Change default date to last release date. - -Mon Sep 15 16:34:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * NEWS: - * docs/Download.html: - * etc/index.html: - - Updated for x.6.6 - -Mon Sep 15 11:08:04 UTC 2008 Simon Massey <sma@prismtech.com> - - * ACE version 5.6.6 released. - -Fri Sep 12 21:13:04 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * bin/MakeProjectCreator/config/MPC.cfg: - - Changed how DDS_ROOT is referenced (for OpenDDS support). - -Fri Sep 12 12:56:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - Reverted change below, brakes VMS support - - Tue Sep 9 18:46:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - * bin/mwc.pl: - * bin/mpc.pl: - Use FindBin::RealScript to get the real script name, that also - works when we have a symbolic link with a different name to - one of these scripts. This fixes bugzilla 3407 - -Thu Sep 11 14:55:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/diff-builds.pl - * bin/diff-builds-and-group-fixed-tests-only.sh - - Make revision number appending to new test failures optional. - -Tue Sep 9 18:46:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/mwc.pl: - * bin/mpc.pl: - Use FindBin::RealScript to get the real script name, that also - works when we have a symbolic link with a different name to - one of these scripts. This fixes bugzilla 3407 - -Tue Sep 9 14:05:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/diff-builds-and-group-fixed-tests-only.sh - Change the sort to cater from revision numbers. - -Tue Sep 9 13:39:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/diff-builds.pl - typo vi / non-vi edit - -Tue Sep 9 13:35:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/diff-builds.pl - Adjust for revision numbers. - -Tue Sep 9 11:36:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/OS_NS_time.cpp (strptime_emulation): - Clear the struct tm before filling it. Without we get a random - value back if the user doesn't use a full date. - -Tue Sep 9 11:31:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/MakeProjectCreator/modules/VXTestProjectCreator.pm: - * bin/MakeProjectCreator/templates/vxtest.mpd: - Also generate a vxtest file for libraries - -Thu Sep 4 14:39:33 UTC 2008 Ciju John <johnc at ociweb dot com> - - * bin/diff-builds-and-group-fixed-tests-only.sh: - '-P' isn't a valid option on Ubantu linux (Bug 15051). Replacing - with Perl alternate. - -Wed Sep 3 10:23:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/tao_other_tests.lst: - Don't run OBV Typed events with micro and compact configurations - -Wed Sep 3 07:31:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/PerlACE/ProcessVX_Unix.pm: - * bin/PerlACE/ProcessVX_Win32.pm: - Added support for ACE_RUN_VX_TGTSRV_WORKINGDIR. Before starting - the executable we will do a chdir to this directory when it - is specified - -Wed Sep 3 07:10:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Bound_Ptr_Test.cpp: - Don't use ACE_ASSERT, it is disabled in release mode and this test - had some real functionality placed within an ACE_ASSERT. This fixes - bugzilla 3415 - -Tue Sep 2 14:11:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/MakeProjectCreator/config/acedefaults.mpb: - Don't use ACE_LIB_TEXT but ACE_TEXT, the former has been deprecated - a long time ago - -Thu Aug 28 21:18:11 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * bin/tao_orb_tests.lst: - * bin/tao_other_tests.lst: - - Removed "Exceptions" and "NO_EXCEPTIONS" as -Config options. - -Thu Aug 28 18:33:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/PerlACE/ProcessVX_Unix.pm: - * bin/PerlACE/ProcessVX_Win32.pm: - Improved prompt matching - -Thu Aug 28 13:04:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/auto_run_tests.pl: - The error when we can't chdir to a directory was confusing - - * bin/PerlACE/ProcessVX.pm: - * bin/PerlACE/ProcessVX_Unix.pm: - * bin/PerlACE/ProcessVX_Win32.pm: - Reduced duplicate code and added support for ACE_RUN_VX_STARTUP_SCRIPT - and ACE_RUN_VX_STARTUP_SCRIPT_ROOT with which we can specify a - startup script that is executed before the real application is started - - * bin/PerlACE/TestTarget_VxWorks.pm: - A VxWorks target has to be rebooted between tests - -Mon Aug 25 11:15:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/tao_other_tests.lst: - Added missing run_test.pl to the OBV/Typed_Events test - -Thu Aug 21 09:38:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * docs/Download.html: - Added OpenSuSE build services as new rpm download location. - Removed ACE-install.sh reference, it is not part of the - archive anymore - -Thu Aug 21 06:54:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/MakeProjectCreator/templates/gnu.mpd: - Also check /usr/lib64 for the libs - - * bin/depgen.pl: - * bin/mpc.pl: - * bin/mwc.pl: - * bin/PerlACE/ConfigList.pm: - * bin/PerlACE/MSProject.pm: - * bin/PerlACE/Process.pm: - * bin/PerlACE/Process_Unix.pm: - * bin/PerlACE/Process_VMS.pm: - * bin/PerlACE/Process_Win32.pm: - * bin/PerlACE/ProcessLVRT.pm: - * bin/PerlACE/ProcessVX.pm: - * bin/PerlACE/ProcessVX_Unix.pm: - * bin/PerlACE/ProcessVX_Win32.pm: - * bin/PerlACE/Run_Test.pm: - * bin/PerlACE/TestTarget.pm: - * bin/PerlACE/TestTarget_LVRT.pm: - * bin/PerlACE/TestTarget_VxWorks.pm: - * bin/Uniqueid.pm: - Added missing shebang lines to fix rpm packaging warnings - -Wed Aug 20 09:38:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/MakeProjectCreator/modules/BorlandProjectCreator.pm: - * bin/MMakeProjectCreator/modules/BorlandWorkspaceCreator.pm: - Fixed bugzilla 3403. Migrated parts of the bmake type to this - generator, fixes issues when we need to go a directory up - in the workspace. As side effect the resulting Makefile.bor - is smaller in size which reduces the full size of the - distribution. In the near future I want to remove the borland - MPC generator and only use bmake. - -Wed Aug 20 09:08:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/PerlACE/ProcessVX_Unix.pm: - * bin/PerlACE/ProcessVX_Win32.pm: - Fixed a bug with putenv with rtp mode - -Tue Aug 19 19:06:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/PerlACE/ProcessVX_Unix.pm: - * bin/PerlACE/ProcessVX_Win32.pm: - Don't use cmd to send commands through telnet. The disadvantage - of the cmd method is that it only returns when the prompt - appears again. When this doesn't happen we don't get the output - of the last command into our build log or on the telnet client - -Tue Aug 19 14:01:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-win32-borland.h: - * ace/OS_NS_stdlib.inl: - * ace/config-win32-msvc.h: - CodeGear C++ Builder 2009 has wcstoull and strtoull - -Mon Aug 18 11:30:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-win32-borland.h: - CodeGear C++ Builder 2009 doesn't support inline assembly - -Mon Aug 18 10:17:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ACE-INSTALL.html: - Improved BCB instructions - -Sun Aug 17 18:04:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ACE-INSTALL.html: - * include/makeinclude/compiler.bor: - Added BCBVER 10/11/12 - -Sun Aug 17 07:30:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/mwc.pl: - * bin/mpc.pl: - Use RealBin to get the location of this script, that gives the - real location also in case we use a symbolic link to these - scripts. Thanks to Adam Mitz for pointing me to RealBin - -Fri Aug 15 11:07:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * make/makeinclude/platform_aix_ibm.GNU: - Added missing AIX compiler version 0800. - -Wed Aug 13 14:40:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Truncate.h: - Added missing specializations for Borland C++. - -Wed Aug 13 14:18:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * m4/ace_defines.m4: - * m4/ace_functions.m4: - * m4/ace_headers.m4: - Reverted change below, doesn't work on suse 11.1 yet - -Wed Aug 13 13:22:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * m4/ace_defines.m4: - * m4/ace_functions.m4: - * m4/ace_headers.m4: - Updated these files to work with autoconf 2.62. Thanks to - Philipp Thomas <pth at suse dot de> for these patches. These - are needed to use autoconf on OpenSuSE Factory (11.1 beta). - This fixes bugzilla 3396. - -Wed Aug 13 11:55:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Truncate.h: - Added missing specializations for Borland C++. - -Wed Aug 13 11:44:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * rpmbuild/ace-tao-ciao.txt: - Made several improvements to this new spec file. Thanks to - Philipp Thomas <pth at suse dot de> for assisting with this - -Tue Aug 12 19:45:16 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Time_Value.inl: - * examples/OS/Process/process.cpp: - * examples/Misc/test_dump.h: - * examples/ASX/Event_Server/Event_Server/Supplier_Router.cpp: - * examples/ASX/Event_Server/Event_Server/Event_Analyzer.cpp: - * examples/ASX/Event_Server/Event_Server/Consumer_Router.cpp: - * examples/ASX/Message_Queue/buffer_stream.cpp: - * examples/ASX/Message_Queue/bounded_buffer.cpp: - * examples/ASX/Message_Queue/priority_buffer.cpp: - * examples/ASX/UPIPE_Event_Server/Supplier_Router.cpp: - * examples/ASX/UPIPE_Event_Server/Event_Analyzer.cpp: - * examples/ASX/UPIPE_Event_Server/event_server.cpp: - * examples/ASX/UPIPE_Event_Server/Consumer_Router.cpp: - * examples/Web_Crawler/Iterators.cpp: - * examples/Web_Crawler/URL_Visitor.cpp: - * examples/Web_Crawler/Mem_Map_Stream.cpp: - * examples/Shared_Malloc/test_malloc.cpp: - * examples/QOS/Simple/Sender_QoS_Event_Handler.cpp: - * examples/APG/ThreadPools/TP_Reactor.cpp: - * examples/IPC_SAP/FILE_SAP/client.cpp: - * examples/IPC_SAP/SOCK_SAP/CPP-inclient.cpp: - * examples/IPC_SAP/SPIPE_SAP/NPClient.cpp: - * examples/IPC_SAP/SSL_SAP/SSL-server-fancy.cpp: - * examples/IPC_SAP/SSL_SAP/SSL-client-simple.cpp: - * examples/IPC_SAP/SSL_SAP/SSL-client.cpp: - * examples/IPC_SAP/FIFO_SAP/FIFO-client.cpp: - * examples/Logger/client/logging_app.cpp: - * examples/Service_Configurator/IPC-tests/client/remote_stream_client_test.cpp: - * examples/Threads/thread_pool.cpp: - * examples/Threads/thread_specific.cpp: - * examples/Threads/task_four.cpp: - * examples/Reactor/Multicast/Log_Wrapper.cpp: - * examples/Reactor/WFMO_Reactor/Window_Messages.cpp: - * examples/Reactor/Proactor/test_cancel.cpp: - * examples/Reactor/Proactor/test_proactor.cpp: - * examples/Reactor/Misc/notification.cpp: - * examples/Connection/blocking/SPIPE-connector.cpp: - * examples/Mem_Map/file-reverse/file-reverse.cpp: - * examples/C++NPv1/Logging_Handler.cpp: - * examples/C++NPv1/Logging_Client.cpp: - * examples/C++NPv2/AC_Client_Logging_Daemon.cpp: - * examples/C++NPv2/Reactor_Logging_Server_Adapter.cpp: - * examples/C++NPv2/Client_Logging_Daemon.cpp: - * examples/C++NPv2/Service_Reporter.cpp: - * examples/C++NPv2/Logging_Handler.cpp: - - More truncation warning fixes. - -Tue Aug 12 18:15:08 UTC 2008 James H. Hill <hillj@isis.vanderbilt.edu> - - * docs/ace_guidelines.vsmacros: - - Update the macros file to ingore .xsd files. - - * docs/svn/config: - * docs/svn/svn-prefs.reg: - - Added .aspx files to the configuration preferences. - -Tue Aug 12 08:00:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Thread_Manager.cpp: - Revert changes of bugzilla 3391, Thread_Pool_Test does fail - with the change - -Mon Aug 11 18:18:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Log_Msg_Test.cpp: - Fixed unicode compile error - -Mon Aug 11 16:09:20 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * bin/tao_orb_tests.lst: - - Exclude TAO/tests/Bug_3068_Regression from single-threaded builds. - -Mon Aug 11 13:49:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * tests/tests.mpc: - There were still some tests that produce test libraries that were - not updated when acelib was devorced from ace_output project. Such - tests need to either add the dependancy (to place their output in - the standard lib directory) or have "libout = ." to specify the - library to be placed locally in the test directory. - -Mon Aug 11 13:37:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Thread_Manager.{h,cpp,inl}: - Make sure we don't miss any already terminated threads when doing - a join. Also made some code more readable, removed ancient AIX - workarounds. This fixes bugzilla 3391. Thanks to - <giovanni dot mele at nagra dot com> for reporting this - - * ace/Containers_T.{h,cpp}: - Changed dont_remove to a bool - -Mon Aug 11 12:45:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/OS_NS_stdio.cpp: - Simplified some methods - -Mon Aug 11 08:56:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Log_Msg_Test.cpp: - Extending testing of ACE_Log_Msg by enabling the format specifiers - tests and add a test for %T. Also removed the check for vsnprintf - to see that VxWorks 5.5.x still has a problem with buffer overflows. - In that case we have to fix that in ACE_Log_Msg. - - * ace/Log_Msg.cpp: - Fixed some buffer size calculations when ACE_TCHAR != char. Fixed - %T when wchar is used, thanks to Nathalie D'Amours - <nathalie at bearsontheloose dot com> for reporting this. This fixes - bugzilla 3388 - - * ace/ACE.{h,cpp} (timestamp): - Use bool and sizes of buffers should have size_t as type - - * ace/MEM_Stream_Test.cpp: - Removed incorrect comment - -Mon Aug 11 07:36:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Makefile.am: - Added missing header files. Thanks to haibin zhang - <dragzhb at yahoo dot com dot cn> for reporting this - -Sun Aug 10 23:02:15 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * ace/SSL/SSL_SOCK_Stream.inl (set_handle): - - Reverted back to the C-style cast that was there before Jeff's commit - because many compilers didn't like a reinterpret_cast<int> here. - -Sat Aug 9 17:42:10 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * ace/SSL/SSL_SOCK_Acceptor.cpp: - * ace/SSL/SSL_SOCK_Connector.cpp: - * ace/SSL/SSL_SOCK_Stream.inl: - * ace/SSL/SSL_SOCK_Stream.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_R_Stream.inl: + * debianbuild/dsc: + New file - Fixed compile errors in inline=0 and Win32-ssl builds. - ACE_Utils::truncate_cast can't cast ACE_HANDLE to int on Win32. + * ace/Activation_Queue.cpp + * ace/ATM_Addr.cpp + * ace/ATM_Connector.inl + * ace/Configuration_Import_Export.cpp + * ace/Dynamic_Message_Strategy.cpp + * ace/Future.cpp + * ace/Message_Queue_T.cpp + * ace/Naming_Context.cpp + * ace/POSIX_Asynch_IO.cpp + * ace/QoS/QoS_Session_Impl.cpp + * ace/Timer_Heap_T.cpp + * ace/Timer_Wheel_T.cpp + * ace/TP_Reactor.cpp + * ace/WIN32_Asynch_IO.cpp + * ACEXML/examples/SAXPrint/main.cpp + * apps/gperf/src/Options.cpp + * apps/JAWS/server/HTTP_Handler.cpp + * apps/mkcsregdb/mkcsregdb.cpp + * ASNMP/examples/get/get.cpp + * ASNMP/examples/get/get_async.cpp + * ASNMP/examples/next/next.cpp + * ASNMP/examples/set/set.cpp + * ASNMP/examples/trap/trap.cpp + * ASNMP/examples/walk/walk.cpp + * examples/APG/Containers/DLList.cpp + * examples/APG/Containers/Hash_Map.cpp + * examples/APG/Containers/Hash_Map_Hash.cpp + * examples/APG/Containers/Map_Manager.cpp + * examples/APG/Containers/Map_Manager_Specialization.cpp + * examples/APG/Containers/RB_Tree.cpp + * examples/APG/Containers/RB_Tree_Functors.cpp + * examples/APG/ThreadManagement/Coop_Cancel.cpp + * examples/APG/ThreadManagement/ExitHandler.cpp + * examples/APG/ThreadManagement/Pool.cpp + * examples/APG/ThreadManagement/Signals2.cpp + * examples/APG/ThreadManagement/Start_Hook.cpp + * examples/APG/ThreadSafety/Atomic_Op.cpp + * examples/APG/ThreadSafety/TSS.cpp + * examples/APG/Timers/Task.cpp + * examples/ASX/Event_Server/Event_Server/Options.cpp + * examples/ASX/Event_Server/Event_Server/Peer_Router.cpp + * examples/ASX/Event_Server/Transceiver/transceiver.cpp + * examples/ASX/UPIPE_Event_Server/Options.cpp + * examples/ASX/UPIPE_Event_Server/Peer_Router.cpp + * examples/Connection/misc/Connection_Handler.cpp + * examples/IPC_SAP/ATM_SAP/CPP-client.cpp + * examples/IPC_SAP/SSL_SAP/SSL-server-fancy.cpp + * examples/IPC_SAP/SSL_SAP/SSL-server.cpp + * examples/QOS/Change_Receiver_FlowSpec/receiver.cpp + * examples/QOS/Change_Receiver_FlowSpec/sender.cpp + * examples/QOS/Change_Sender_TSpec/receiver.cpp + * examples/QOS/Change_Sender_TSpec/sender.cpp + * examples/QOS/Simple/receiver.cpp + * examples/QOS/Simple/sender.cpp + * examples/Reactor/Proactor/post_completions.cpp + * examples/Reactor/Proactor/test_aiosig.cpp + * examples/Reactor/Proactor/test_aiosig_ace.cpp + * examples/Reactor/Proactor/test_end_event_loop.cpp + * examples/Threads/auto_event.cpp + * examples/Threads/manual_event.cpp + * examples/Timer_Queue/Async_Timer_Queue_Test.cpp + * Kokyu/DSRT_CV_Dispatcher_Impl_T.cpp + * Kokyu/DSRT_Direct_Dispatcher_Impl_T.cpp + * Kokyu/tests/DSRT_MIF/MIF.cpp + * netsvcs/clients/Naming/Dump_Restore/Dump_Restore.cpp + * netsvcs/lib/Name_Handler.cpp + * NEWS + * performance-tests/SCTP/Options_Manager.cpp + * performance-tests/Server_Concurrency/Leader_Follower/RT_CORBA_Leader_Follower.cpp + * performance-tests/Server_Concurrency/Queue_Based_Workers/RT_CORBA_Workers.cpp + * performance-tests/Synch-Benchmarks/Perf_Test/Performance_Test_Options.cpp + * performance-tests/TCP/tcp_test.cpp + * performance-tests/TTCP/ACE-C++/wrapper-new-ttcp.cpp + * performance-tests/UDP/udp_test.cpp + * protocols/tests/HTBP/Reactor_Tests/server.cpp + * protocols/tests/HTBP/Send_Large_Msg/server.cpp + * protocols/tests/HTBP/Send_Recv_Tests/client.cpp + * protocols/tests/HTBP/Send_Recv_Tests/server.cpp + * tests/Cache_Map_Manager_Test.cpp + * tests/CDR_Array_Test.cpp + * tests/CDR_Test.cpp + * tests/DLList_Test.cpp + * tests/Get_Opt_Test.cpp + * tests/Hash_Map_Manager_Test.cpp + * tests/Hash_Multi_Map_Manager_Test.cpp + * tests/IOStream_Test.cpp + * tests/Logging_Strategy_Test.cpp + * tests/Max_Default_Port_Test.cpp + * tests/Max_Default_Port_Test_IPV6.cpp + * tests/Message_Queue_Notifications_Test.cpp + * tests/MT_Reference_Counted_Event_Handler_Test.cpp + * tests/Multicast_Test.cpp + * tests/Multicast_Test_IPV6.cpp + * tests/Naming_Test.cpp + * tests/Network_Adapters_Test.cpp + * tests/Pipe_Test.cpp + * tests/QtReactor_Test.cpp + * tests/Reactor_Notification_Queue_Test.cpp + * tests/Reactor_Remove_Resume_Test.cpp + * tests/Reactor_Remove_Resume_Test_Dev_Poll.cpp + * tests/Reactors_Test.cpp + * tests/Signal_Test.cpp + * tests/SOCK_Netlink_Test.cpp + * tests/SOCK_SEQPACK_SCTP_Test.cpp + * tests/SString_Test.cpp + * tests/Thread_Pool_Reactor_Resume_Test.cpp + * tests/Upgradable_RW_Test.cpp + Zapped empty spaces at the end of a line + +Fri Feb 20 13:50:33 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> -Fri Aug 8 20:35:37 UTC 2008 Adam Mitz <mitza@ociweb.com> + * ace/config-win32-mingw.h: + Support MinGW 3.15 - * ace/Stack_Trace.cpp: + * include/makeinclude/platform_gnuwin32_common.GNU: + Improvement for cross compilation - Glibc implementation: fixed whitespace - VxWorks (both kernel and RTP): VxWorks can return -1 for the number - of arguments when the actual number is unknown. + Thanks to Jani Hakala <jahakala at iki dot fi> for delivering some + patches -Fri Aug 8 19:33:42 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + * ace/config-vxworks6.7.h: + Improved support - * ace/Message_Queue_T.cpp: - * ace/SSL/SSL_Asynch_BIO.cpp: - * ace/SSL/SSL_SOCK_Acceptor.cpp: - * ace/SSL/SSL_Context.cpp: - * ace/SSL/SSL_Asynch_Stream.cpp: - * ace/SSL/SSL_SOCK_Connector.cpp: - * ace/SSL/SSL_SOCK_Stream.cpp: - * ace/SSL/SSL_SOCK_Stream.inl: - * Kokyu/DSRT_Sched_Queue_T.cpp: - * Kokyu/Default_Dispatcher_Impl.cpp: - * ACEXML/common/Transcode.cpp: - * ACEXML/common/HttpCharStream.cpp: - * ACEXML/common/Mem_Map_Stream.cpp: - * examples/Monitor/MC_Test_Utilities.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_Timeout.inl: - * examples/Service_Configurator/IPC-tests/server/Handle_Thr_Stream.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_L_FIFO.inl: - * examples/Service_Configurator/IPC-tests/server/Handle_Broadcast.inl: - * examples/Service_Configurator/IPC-tests/server/Handle_R_Stream.inl: +Fri Feb 20 09:54:33 UTC 2009 Marcel Smit <msmit@remedy.nl> - Fixes for VC 7.1 warnings, mostly truncation. + * ace/config-win32-common.h: + * tests/Process_Manager_Test.cpp: + Added define ACE_HAS_WIN32_PRIORITY_CLASS. On win32 + platforms where process priority classes exists, + one can use this define. -Fri Aug 8 17:58:28 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> +Fri Feb 20 09:28:33 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> - * configure.ac: + * ace/Log_Msg_IPC.h: + Added include of Default_Constants.h - Changed the ACE_NEW_THROWS_EXCEPTION feature test to use - setrlimit() (on systems that have it) to reduce the RLIMIT_DATA - limit so the test, which continuously allocates memory in order - to observe the behavior of out-of-memory conditions, will "fail" - quickly without unnecessarily consuming a lot of system - resources. Fixes bugzilla #3090. +Fri Feb 20 07:29:18 UTC 2009 Olli Savia <ops@iki.fi> -Fri Aug 8 14:42:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * tests/Based_Pointer_Test_Lib.cpp: + Reverted the last changes made by Johnny + (ace/svc_export.h is back again). - * bin/fuzz.pl: - Also check cpp/inl files for RefCountServantBase + * tests/Based_Pointer_Test_Lib_Export.h: + Removed from repository (ace/svc_export.h is back again). -Fri Aug 8 08:36:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> +Fri Feb 20 07:29:18 UTC 2009 Olli Savia <ops@iki.fi> - * ace/Truncate.h: - Added missing specializations for Borland C++. + * ace/config-openbsd.h: + Added ACE_LACKS_LOG2 and ACE_LACKS_ISCTYPE. -Fri Aug 8 08:17:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> +Thu Feb 19 20:27:33 UTC 2009 Olli Savia <ops@iki.fi> - * ace/Makefile.am: - Added missing Svc_Conf_Token_Table.h which was already in the MPC - file. Thanks to haibin zhang <dragzhb at yahoo dot com dot cn> - for reporting this + * ace/config-freebsd.h: + Removed ACE_HAS_SIG_MACROS. -Thu Aug 7 21:59:58 UTC 2008 Adam Mitz <mitza@ociweb.com> +Thu Feb 19 17:38:33 UTC 2009 Marcel Smit <msmit@remedy.nl> - * bin/tao_orb_tests.lst: + * tests/Process_Manager_Test.cpp: + Expanded test with process priority on Windows platforms. - Added the new test TAO/tests/Bug_3068_Regression. +Thu Feb 19 14:01:33 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> -Thu Aug 7 20:21:29 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + * ace/Default_Constants.h: + * ace/Log_Msg_IPC.cpp: + * ace/Log_Msg_IPC.h: + * netsvcs/lib/Client_Logging_Handler.cpp: + * netsvcs/lib/Client_Logging_Handler.h: + Added new ACE_HAS_STREAM_LOG_MSG_IPC which controls whether the + ACE Log_Msg IPC should use streams or not. When ACE_HAS_STREAM_PIPES + is defined we default to 1, else to 0. We do see that using stream + pipes causes problems on at least Solaris, so the user can decide + to set this value explicitly to 0 - * ace/Process_Manager.cpp: - * ace/Asynch_IO.cpp: - * ace/Pagefile_Memory_Pool.cpp: - * ace/MEM_IO.cpp: - * ace/Time_Value.inl: - * ace/SV_Semaphore_Simple.cpp: - * ace/Thread_Manager.cpp: - * ace/MEM_IO.inl: - * ace/ETCL/ETCL_Interpreter.cpp: - * ace/UPIPE_Stream.cpp: - * ace/SOCK_Dgram.cpp: - * ace/FILE_IO.cpp: - * ace/OS_NS_unistd.cpp: - * ace/FIFO_Recv_Msg.inl: - * ace/CDR_Size.cpp: - * ace/ACE.cpp: * ace/CDR_Stream.cpp: + * ace/CDR_Stream.h: + * ace/Message_Block.inl: + Doxygen and layout changes - Added usage of ACE_Utils::truncate_cast<> - to get rid of conversion warnings, mostly from size_t - to ssize_t. - -Thu Aug 7 18:02:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * NEWS: - ACE/TAO/CIAO now supports CodeGear C++ Builder 2009 - -Thu Aug 7 15:28:13 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Control/Makefile.am: - - Added source file Null_Network_Interface_Monitor.cpp that - was overlooked until now. - -Wed Aug 6 18:45:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/ace.mpc: - Added a few missing header files - -Wed Aug 6 18:17:32 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * protocols/ace/HTBP/HTBP_Channel.cpp: - * ace/SSL/SSL_Asynch_Stream.cpp: - * performance-tests/TCP/tcp_test.cpp: - * performance-tests/UDP/udp_test.cpp: - * tests/Upgradable_RW_Test.cpp: - * tests/ARGV_Test.cpp: - * tests/OrdMultiSet_Test.cpp: - * apps/JAWS/server/HTTP_Server.cpp: - * apps/soreduce/Obj_Module.cpp: - * apps/soreduce/Library.cpp: - * apps/soreduce/soreduce.cpp: - * apps/soreduce/SO_Group.cpp: - * websvcs/lib/URL_Addr.cpp: - * examples/OS/Process/imore.cpp: - * examples/Connection/blocking/SPIPE-connector.cpp: - * examples/C++NPv2/AC_Client_Logging_Daemon.cpp: - * examples/C++NPv2/Client_Logging_Daemon.cpp: - - Cosmetic changes to eliminate warnings from - some Linux compilers. - -Wed Aug 6 13:40:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * docs/bczar/bczar.html: - Updated the "Bugzilla" section to match the current version - of bugzilla's interface. - -Wed Aug 6 13:01:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/SOCK_CODgram.cpp: - Fixed gcc 4.3 warnings - -Wed Aug 6 08:49:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * examples/Connection/blocking/SPIPE-connector.cpp: - * examples/OS/Process/imore.cpp: - Fixed gcc 4.3 warnings - -Wed Aug 6 08:45:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * examples/C++NPv2/AC_Client_Logging_Daemon.cpp: - * examples/C++NPv2/Client_Logging_Daemon.cpp: - Fixed gcc 4.3 warnings - -Wed Aug 6 08:12:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * configure.ac: - * m4/ace.m4: - Use more cached values, improved detection of tcl. Add bzip2 - support - -Wed Aug 6 08:01:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ACEXML/common/ZipCharStream.cpp: - Fixed compile error in some builds - - * ACEXML/parser/parser/Parser.cpp: - Check for the dtd file using a / and \ path specifier. This - makes it possible to also use a / on windows to specify - the path. This fixes bugzilla 3352 - - * ACEXML/common/FileCharStream.h: - Doxygen fix - - * ACEXML/common/FileCharStream.cpp: - No need to check for a valid pointer before calling delete - -Tue Aug 5 19:33:26 2008 Steve Huston <shuston@riverace.com> - - * ace/Log_Msg.cpp: Fixed tab characters. - - * ace/config-posix.h: Only set ACE_HAS_POSIX_SEM_TIMEOUT if the - _POSIX_TIMEOUTS feature test is not -1 (disabled). Fixes build - on HP-UX 11iv3. - - * examples/APG/ThreadPools/LF_ThreadPool.cpp (elect_new_leader): Log - the "Resiging and Electing" message at LM_DEBUG severity, not - LM_ERROR. This is on APG page 342. Thanks to Julien Vintrou for - pointing this out. - - * THANKS: Added Julien Vintrou. - -Tue Aug 5 20:19:28 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/config-linux-common.h: Removed ACE_HAS_BROKEN_THREAD_KEYFREE. - Reverts change from - Thu Aug 9 13:39:12 UTC 2007 Johnny Willemsen <jwillemsen@remedy.nl> - which is no longer needed. - -Tue Aug 5 18:51:02 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/MMAP_Memory_Pool.cpp: - * ace/Service_Manager.cpp: - * ace/Stream.cpp: - * Kokyu/Dispatcher_Task.cpp: - * apps/gperf/src/List_Node.cpp: - * apps/gperf/src/Key_List.cpp: - * apps/gperf/src/Gen_Perf.cpp: - * apps/gperf/src/Iterator.cpp: - * apps/gperf/src/Hash_Table.cpp: - * ACEXML/common/ZipCharStream.cpp: - * ACEXML/common/HttpCharStream.cpp: - * ACEXML/parser/parser/Parser.inl: - * ASNMP/asnmp/asn1.cpp: - * ASNMP/asnmp/address.cpp: - - Cosmetic changes to eliminate warnings on - Fedora Rawhide. - -Tue Aug 5 18:37:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * rpmbuild/ace-tao-init-fedora.tar.bz2: - * rpmbuild/ace-tao-init-suse.tar.bz2: - Seperated distribution specific files in two bz2 archives, - the rpm spec file will use one of them - -Tue Aug 5 16:41:03 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/Log_Msg.h: Changed key_created_ from int to bool. - - * ace/Log_Msg.cpp (close): Two changes related to Bugzilla 2980: - - Remove the #if ACE_HAS_BROKEN_THREAD_KEYFREE - the code inside - that block was what should always be done - delete the ACE_Log_Msg - instance and reset the TSS value to 0 so it's not cleaned up again - later when the thread runs down. The whole idea of the - ACE_HAS_BROKEN_THREAD_KEYFREE seems dubious and should probably be - removed, but I haven't gone that far - there's one more use in - OS_NS_Thread which seems pertinent for LynxOS and I can't test - it, so it's still there - but should be reviewed and probably - removed. - - Free the TSS key - if setting key_created_ to 0, what's the point - of leaving the key? Any future attempt to get the per-thread value - would result in a new key being created. Again, freeing the key - has no affect on already-allocated instances. - This should resolve Bugzilla 2980 again. - -Tue Aug 5 14:33:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * rpmbuild/ace-tao-ciao.txt: - Spec file that is work in progress. Didn't use spec as extension - because that gives problems with rpmbuild. - -Tue Aug 5 13:52:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Guard_T.h: - * ace/Guard_T.inl: - * ace/TSS_T.cpp: - Changed block to a bool - - * ace/Guard_T.h: - Initialise owner_ to solve gcc 4.3 warnings - -Tue Aug 05 10:15:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * tests/Reactor_Remove_Resume_Test_Dev_Poll.cpp: - - I don't know why removing "TP_Reactor.h" stopped ACE.h from - being included; but is seems it was incidently included in - the previous (non-Dev_Poll) test. - -Tue Aug 5 08:02:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ACEXML/common/HttpCharStream.cpp: - Fixed gcc4.3 warning - -Tue Aug 5 07:53:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * ace/Message_Block.cpp: + Use %@ for pointers - * tests/Message_Queue_Test.cpp: - * tests/Message_Queue_Test_Ex.cpp: - Fixed gcc4.3 warning +Wed Feb 18 20:51:33 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> -Tue Aug 5 07:11:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * bin/MakeProjectCreator/config/minizip.mpb: + Added new base project for minizip - * examples/IPC_SAP/SOCK_SAP/run_test - * examples/IPC_SAP/SOCK_SAP/summarize - * examples/IPC_SAP/SSL_SAP/summarize - * examples/IPC_SAP/SOCK_SAP/run_test.sh - * examples/IPC_SAP/SOCK_SAP/summarize.pl - * examples/IPC_SAP/SSL_SAP/summarize.pl - Renamed files to have an extension that matches the type of file +Wed Feb 18 19:36:33 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> -Tue Aug 5 06:45:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * ace/config-win32-msvc-7.h: + Layout change - * bin/add_rel_link.sh: - Added missing path + * ace/config-win32-msvc-8.h: + Disable warning 4250, and 4355, we do this for the other + msvc versions but not for vc8 -Mon Aug 4 19:58:20 UTC 2008 Steve Huston <shuston@riverace.com> +Wed Feb 18 19:06:33 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> - * ace/Process.cpp (inherit_environment): Re using Unicode from - Thu Jul 31 15:10:16 UTC 2008 Adam Mitz <mitza@ociweb.com> - only do it for systems that have ACE_HAS_WCHAR. Fixes a LabVIEW - Pharlap ETS build issue. + * netsvcs/lib/Client_Logging_Handler.cpp: + * netsvcs/lib/Client_Logging_Handler.h: + Just use ACE_HAS_STREAM_PIPES, there are too much other + dependencies on this define -Mon Aug 04 13:08:00 UTC 2008 Simon Massey <sma at prismtech dot com> +Wed Feb 18 15:34:33 UTC 2009 Marcel Smit <msmit@remedy.nl> - * tests/Reactor_Remove_Resume_Test.cpp: - * tests/Reactor_Remove_Resume_Test_Dev_Poll.cpp: - * tests/run_test.lst: * tests/tests.mpc: + Reverted the last changes made by Johnny + (ace/svc_export.h is back again). - Split out the ACE_Dev_Poll_Reactor part of this test since - this is excersing a known problem with ACE_Dev_Poll_Reactor - (see Bugzilla 3178). - -Mon Aug 4 07:20:12 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-g++-common.h: - * ace/config-macros.h: - Moved definition of ACE_UNUSED_ARG for GC back to config-macros.h else - it isn't available when doing an autoconf build - -Fri Aug 1 10:59:55 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * tests/Process_Env_Test.cpp: - - #ifdef-out the helper functions in the cases where the body of - run_main is also #ifdef'ed-out. - -Thu Jul 31 15:10:16 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * ace/Process.cpp (inherit_environment): +Wed Feb 18 12:58:33 UTC 2009 Olli Savia <ops@iki.fi> - When "use_unicode_environment" is in effect, use the unicode env - block (GetEnvironmentStringsW) when copying the current environment - in order to inherit it (Win32 only). + * ace/config-freebsd.h: + Added ACE_LACKS_ISCTYPE. - * tests/Process_Env_Test.cpp: - - Extended this test to verify that a large environment block is indeed - inherited by the spawned process. - -Thu Jul 31 13:16:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/tao_orb_tests.lst: - - The QUICK test alternatives should have the same configs as - their non-quick alternative tests. This has been playing havok - with !Win32 tests on windows platforms that are using QUICK. - -Thu Jul 31 12:35:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * tests/run_test.lst: - * tests/tests.mpc: - * tests/Refcounted_Event_Handler_Test_DevPoll.cpp: - * tests/Reference_Counted_Event_Handler_Test_Dev_Poll.cpp: - - Test renamed (has to be less than 38 characters). - -Thu Jul 31 10:25:12 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> +Wed Feb 18 10:25:49 UTC 2009 Olli Savia <ops@iki.fi> * ace/config-g++-common.h: - Use a different ACE_UNUSED_ARG macro for GCC 4.2 and newer. Moved - also the definition for gcc to this file instead of config-macros.h. - Thanks to Jules Colding <colding at 42tools dot com>, Jonathan Brannan - <jbrannan at atdesk dot com>, and Ken Sedgwick <ken at bonsai dot com> - for providing the patches. This fixes bugzilla 3270 - - * ace/config-macros.h: - Don't define ACE_UNUSED_ARG for GCC - - * rpmbuild/ace-tao.spec: - Removed unused arg patch - - * rpmbuild/ace-tao-unusedarg.patch: - Removed, not needed anymore - -Thu Jul 31 10:20:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * tests/Reactor_Dispatch_Order_Test_Dev_Poll.cpp: - - To avoid warnings on platforms where: - #if defined (ACE_HAS_DEV_POLL) || defined (ACE_HAS_EVENT_POLL) - is false, this test has now been fully guarded and an alternate - main provided. - - * tests/Reference_Counted_Event_Handler_Test_Dev_Poll.cpp: - * tests/run_test.lst: - * tests/tests.mpc: - - Since the collated test scores are actually grouping both runs - of the original test together (they ignore parameters apparently), - a newly named test was needed. - -Thu Jul 31 10:05:12 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-macros.h: - Only define ACE_UNUSED_ARG when it is not defined yet. Makes it - easier to test how to resolve warnings with gcc 4.3 - -Wed Jul 30 14:03:12 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_vxworks6.2.GNU: - * include/makeinclude/platform_vxworks6.3.GNU: - Also convert slashes in HOST_ROOT - -Wed Jul 30 09:55:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * tests/tests.mpc: - - Missed adding the new Reactor_Dispatch_Order_Test_Dev_Poll - entry. - -Tue Jul 29 22:23:08 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/ace.m4: - - Add ACE_PATH_BZIP2 feature test, sets ACE_BZIP2_CPPFLAGS, - ACE_BZIP2_LDFLAGS, and ACE_BZIP2_LIBS as needed when - --with-bzip2 is specified on the command line. - -Tue Jul 29 21:33:14 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * bin/MakeProjectCreator/config/automake.features: - - Add bzip2=1 - -Tue Jul 29 21:29:43 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * bin/MakeProjectCreator/config/ace_bzip2.mpb: - - New file, overrides definitions from MPC's bzip2.mpb for - automake build. - -Tue Jul 29 19:58:22 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * bin/tao_orb_tests.lst: - - Reverted Tue Jul 29 14:21:32 UTC 2008 Adam Mitz <mitza@ociweb.com> - because the bug should now be fixed in TAO. - -Tue Jul 29 18:11:32 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/tao_orb_tests.lst: - TAO/tests/Bug_3000_Regression fails because that issue remains - unresolved, added !FIXED_BUGS_ONLY. - -Tue Jul 29 14:21:32 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * bin/tao_orb_tests.lst: - - TAO/tests/Bug_3163_Regression fails because that issue remains - unresolved, added !FIXED_BUGS_ONLY. - -Tue Jul 29 12:45:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * tests/run_test.lst: - * tests/Reference_Counted_Event_Handler_Test.cpp: - - Corrected the disabling of ACE_Dev_Poll_Reactor test and split - the test into two runs once with this reactor test disabled - and once with just this reactor test enabled (marked with - !FIXED_BUGS_ONLY) due to internal problems with - ACE_Dev_Poll_Reactor. - -Tue Jul 29 12:14:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * tests/run_test.lst: - * tests/Reactor_Dispatch_Order_Test.cpp: - * tests/Reactor_Dispatch_Order_Test_Dev_Poll.cpp: - - These tests now actually return a failure if the test failed - instead of always returning 0. I have also split out the - problematic part of this test re-enabled by: - Wed Jul 9 19:07:24 2008 Steve Huston which itself reversed: - Sat Mar 29 08:16:57 UTC 2008 Johnny Willemsen that originally - disabled testing for ACE_Dev_Poll_Reactor due to internal - problems with ACE_Dev_Poll_Reactor. - -Mon Jul 28 13:39:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-macros.h: - * ace/streams.h: - Removed workarounds for ancient Borland C++ versions - -Mon Jul 28 13:32:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Asynch_Acceptor.cpp: - * ace/WIN32_Asynch_IO.cpp: - Removed compiler checks - - * ace/OS_NS_stdio.cpp: - Don't check for Borland C++ but for ACE_HAS_NONCONST_FDOPEN - - * ace/OS_NS_stdio.inl: - Removed workaround for Borland C++ - -Mon Jul 28 13:10:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Global_Macros.h: - Removed obsolete workaround for Borland C++ - -Mon Jul 28 13:03:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/ace_wchar.h: - Removed obsolete workaround for Borland C++ - -Mon Jul 28 11:52:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Registry.cpp: - Don't declare a static object within a method because that - could lead to race conditions in a multi threaded program - - * ace/ace_qt4reactor.mpc: - Fixed bug in this file - -Mon Jul 28 11:40:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/ETCL/ETCL_Interpreter.h: - Doxygen fixes and made destructor virtual, this is a base class - - * ace/INET_Addr.cpp: - Const change - -Fri Jul 25 14:21:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/ace_qtreactor.mpc: - * ace/ace_qt3reactor.mpc: - Renamed qt to qt3, this builds and links the qtreactor - with qt3 - - * ace/ace_qt4reactor.mpc: - New project for qt4 - - You can set qt=1 and qt3=1 together or set qt4=1, but not - both at the same time. Thanks to Kees van Marle - <kvmarle at remedy dot nl> for testing qt4 - -Fri Jul 25 14:13:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/QtReactor/QtReactor.cpp: - * ace/QtReactor/QtReactor.h: - Improved qt4 support - -Fri Jul 25 14:09:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/MakeProjectCreator/config/ace_qt3.mpb - * bin/MakeProjectCreator/config/ace_qt4.mpb - * bin/MakeProjectCreator/config/global.features: - Set qt3 and qt4 default to 0. qt4 has different libs - that we need to link with but also the qglobal.h is - located on a different location, so added ACE_HAS_QT4 - which is then used to select which qglobal.h we include. - - * bin/MakeProjectCreator/config/ace_qtreactor.mpb: - This is for qt3 so derive from ace_qt3 - -Thu Jul 24 19:04:13 2008 Steve Huston <shuston@riverace.com> - - * ace/Containers_T.h: Improved documentation for ACE_DLList, noting - especially that T pointers inserted into the list are not deleted - when removed. Thank you to Bob Fiske for this improvement and sample - code to illustrate. - - * THANKS: Added Bob Fiske. - -Thu Jul 24 12:50:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/diff-builds-and-group-fixed-tests-only.sh: - This shell script runs the perl diff-builds.pl script between - the date given as the first parameter and the current utc date. - The output is tidied up and any !FIXED_BUGS_ONLY bugs are - removed before being grouped and the failed tests counted. - -Thu Jul 24 08:10:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/tao_orb_tests.lst: - * bin/tao_other_tests.lst: - Added config item !FIXED_BUGS_ONLY to tests that highlight - problems that have not yet been fixed. Please remove this - config item once the bugs have actually been fixed, and - include this config item with any newly added tests in the - future that fall into this category. - -Wed Jul 23 13:30:28 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/PerlACE/Process_Win32.pm: - Allow named .bat files for windows. - -Wed Jul 23 13:08:28 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/generate_doxygen.pl: - * etc/tao_ziop.doxygen: - * html/index.html: - Added TAO ZIOP to the documentation + Define ACE_LACKS_NUMERIC_LIMITS and ACE_LACKS_ISCTYPE if + compiling with GCC 2.x. -Wed Jul 23 10:51:28 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Select_Reactor_Base.h: - Doxygen change - - * ace/Select_Reactor_T.cpp: - * ace/Select_Reactor_T.h: - * ace/TP_Reactor.cpp: - * ace/TP_Reactor.h: - mask_signals should be a bool like in the base class - -Wed Jul 23 08:11:28 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/SOCK_Dgram_Mcast.cpp: - Use reentrant get_host_addr. This fixes bugzilla 3368. Thanks to - Yongming Wang <wangym at gmail dot com> for reporting this - -Tue Jul 22 15:02:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/group_test_stats.sh: - Reverse and sort numerically so that highest number of - failures are listed first. - -Tue Jul 22 13:09:28 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * ace/config-lynxos.h: + * ace/config-vxworks5.x.h: + Do not define ACE_LACKS_NUMERIC_LIMITS. It is now handled by + config-g++-common.h. - * bin/tao_orb_tests.lst: - Added ZIOP test +Wed Feb 18 09:22:29 UTC 2009 Marcel Smit <msmit@remedy.nl> -Tue Jul 22 11:52:28 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * tests/DLL_Test.h: + Revert changes made by Johnny (just use + ace/svc_export.h again). - * bin/make_release.py: - Don't convert line ending for pdf files + * tests/DLL_Test_Export.h: + Removed since ace/svc_export.h is + used again. -Tue Jul 22 09:55:28 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> +Tue Feb 17 23:56:45 UTC 2009 William R. Otte <wotte@dre.vanderbilt.edu> * bin/MakeProjectCreator/config/global.features: - bzip2 is default disabled - -Tue Jul 22 07:36:28 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/CDR_Stream.{h,cpp,inl}: - Added setting for alignment which is needed for ZIOP where we want - to place back the wr_ptr to a previous location. Few const and layout - changes - -Mon Jul 21 13:09:28 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/tao_other_tests.lst: - Run nslist tests under vxworks - -Sat Jul 19 19:58:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-macosx-tiger.h: - Make sure we set the correct ACE_SIZEOF_LONG_DOUBLE value. Thanks - to Frank F�rster <F dot Forster at herts dot ac dot uk> for reporting this - -Thu Jul 17 20:24:11 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/OS_NS_sys_socket.inl (recvfrom): For Pharlap ETS, correct for - a situation where recvfrom() returns a good address but an - unexpectedly short length. - -Tue Jul 15 17:29:22 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * examples/Monitor/Bytes_Sent/bytes_sent.cpp: - * examples/Monitor/Message_Queue_Size/message_queue_size.cpp: - * examples/Monitor/Constraint/constraint.cpp: - * examples/Monitor/CPU_Load/cpu_load.cpp: - * examples/Monitor/Num_Threads/num_threads.cpp: - * examples/Monitor/Group/group.cpp: - * examples/Monitor/Memory_Usage/memory_usage.cpp: - - Changes corresponding to the relocation in - - Tue Jul 15 17:19:14 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - -Tue Jul 15 17:19:14 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Size.cpp: - * ace/Monitor_Control_Types.cpp: - * ace/Monitor_Control_Types.h: - * ace/Monitor_Base.cpp: - * ace/Monitor_Base.h: - * ace/Monitor_Base.inl: - * ace/Monitor_Control/Bytes_Received_Monitor.cpp: - * ace/Monitor_Control/Packets_Received_Monitor.cpp: - * ace/Monitor_Control/CPU_Load_Monitor.cpp: - * ace/Monitor_Control/Monitor_Group.cpp: - * ace/Monitor_Control/Memory_Usage_Monitor.cpp: - * ace/Monitor_Control/Monitor_Query.cpp: - * ace/Monitor_Control/Num_Threads_Monitor.cpp: - * ace/Monitor_Control/Bytes_Sent_Monitor.cpp: - * ace/Monitor_Control/Packets_Sent_Monitor.cpp: - - Relocated the statistics-related values from - Monitor_Base to Monitor_Control_Types. Also - inlined the information type accessor, the - constraint list accessor and the refcounting - methods. - -Tue Jul 15 01:27:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-win32-common.h: - Added pragma comment for iphlpapi.lib. Thanks to Yongming Wang - <wangym at gmail dot com> for reporting this - -Mon Jul 14 12:50:34 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * NEWS: - - Added an entry for my change from Mon Jun 30 12:41:00 UTC 2008. - -Mon Jul 14 12:05:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/Message_Queue_T.cpp: - - Correct void function dump returns from previous commit of: - Fri Jul 11 08:06:40 UTC 2008 James H. Hill - -Sat Jul 12 12:59:19 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-borland-common.h: - Removed BCB4 support - - * ace/ACE.cpp: - Const/layout changes - - * ace/Configuration.h: - Doxygen changes - - * ace/Monitor_Base.cpp (retrieve_and_clear): - Use clear_i to prevent deadlocks - - * ace/SOCK_IO.cpp: - Const changes - - * ace/Strategies_T.cpp: - layout changes - -Fri Jul 11 23:48:19 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/make_release.py: - Don't exclude the mwc files for vc8. Thanks to Michael Guntli - <michael dot guntli at leica-geosystems dot com> for reporting - this. This fixes bugzilla 3364 - -Fri Jul 11 14:41:19 UTC 2008 James H. Hill <hillj@isis.vanderbilt.edu> - - * NEWS: - - Updated the NEW file to reflect previous ChangeLog entry. - -Fri Jul 11 08:06:40 UTC 2008 James H. Hill <hillj@isis.vanderbilt.edu> - - * ace/Message_Queue_T.h: - * ace/Message_Queue_T.cpp: - - Implemented the iterator and reverse iterator for the - ACE_Message_Queue_Ex class. - -Wed Jul 9 21:20:13 UTC 2008 Ken Sedgwick <ken+5a4@bonsai.com> - - * rpmbuild/README: - Added basic rpmbuild instructions. - -Wed Jul 9 19:07:24 2008 Steve Huston <shuston@riverace.com> - - * tests/Reactor_Dispatch_Order_Test.cpp: Reversed this change: - Sat Mar 29 08:16:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - which disabled testing for ACE_Dev_Poll_Reactor. Let's see what the - issues are then address and/or disable as needed. - Also fixed a cut/paste error. - -Wed Jul 9 18:37:57 2008 Steve Huston <shuston@riverace.com> - - * tests/Reference_Counted_Event_Handler_Test.cpp: Enabled test for - Winsock 2 systems; previously only ran the ACE_WFMO_Reactor-based - test for non-Winsock 2 systems, where it is not supported. - -Wed Jul 9 17:45:40 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/config_h.m4: - - Remove autoheader template for ACE_HAS_NON_BLOCKING_CONNECTS. - - * tests/MT_SOCK_Test.cpp: - - Remove use of ACE_HAS_NON_BLOCKING_CONNECTS feature test macro. - It was removed since ACE no longer supports any systems that - required it. - -Wed Jul 9 16:09:30 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/config_h.m4: - * configure.ac: - - Remove feature test and autoheader template for - ACE_LACKS_WILDCARD_BIND. - - * ace/Sock_Connect.cpp: - - Remove use of ACE_LACKS_WILDCARD_BIND feature test macro. - - * ace/README: - - Remove ACE_LACKS_WILDCARD_BIND from the list of feature test - macros. It was removed since ACE no longer supports any systems - that required it. -Wed Jul 9 16:02:32 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + Disabled xerces by default as well. - * configure.ac: +Tue Feb 17 20:19:06 UTC 2009 Olli Savia <ops@iki.fi> - Changed ACE_HAS_SIGVAL_SIGVAL_INT and ACE_HAS_SIGVAL_SIGVAL_PTR - feature tests to use "union sigval" instead of "sigval_t". The - former is what ACE uses; while the latter is a common extension, - it is not in the XPG3 specification. Thanks to Olli Savia. + * ace/os_include/os_stddef.h: + Removed unneeded definitions for NULL and offsetof. -Wed Jul 9 14:23:00 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/README: - - Remove ACE_HAS_TEMPLATE_SPECIALIZATION from list of feature - test macros. - -Wed Jul 9 14:18:26 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/config_h.m4: - * configure.ac: - - Remove feature test and autoheader template for - ACE_HAS_DLFCN_H_BROKEN_EXTERN_C. - - * ace/os_include/os_dlfcn.h: - - Remove use of ACE_HAS_DLFCN_H_BROKEN_EXTERN_C feature test - macro. - - * ace/README: - - Remove ACE_HAS_DLFCN_H_BROKEN_EXTERN_C from the list of feature - test macros. It was removed since ACE no longer supports any - systems that required it. - -Wed Jul 9 09:20:03 UTC 2008 Olli Savia <ops@iki.fi> - - * ace/TTY_IO.h: - * ace/TTY_IO.cpp: - Removed deprecated 'parityenb' member from ACE_TTY_IO::Serial_Params - structure. - - * NEWS: - Added a note about change above. - -Tue Jul 8 21:53:31 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> - - * ace/Service_Manager.cpp (process_request): Ensure that requests - are processed using the global context, rather than the current - one. Thanks to Michael Doubez <michael dot doubez at gmail dot - com> for suggesting this fix. - -Tue Jul 8 16:44:24 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/config_h.m4: - - Remove autoheader template for ACE_HAS_BROKEN_HPUX_TEMPLATES. +Tue Feb 17 18:08:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + * netsvcs/lib/Client_Logging_Handler.h: + * netsvcs/lib/Name_Handler.cpp: + * netsvcs/lib/Name_Handler.h: + * netsvcs/lib/Server_Logging_Handler.h: * netsvcs/lib/Server_Logging_Handler_T.cpp: - * netsvcs/lib/Server_Logging_Handler_T.h: - - Remove use of ACE_HAS_BROKEN_HPUX_TEMPLATES feature test macro. - - * ace/README: - - Remove ACE_HAS_BROKEN_HPUX_TEMPLATES from the list of feature - test macros. It was removed since ACE no longer supports any - systems that required it. - -Tue Jul 8 16:41:26 2008 Steve Huston <shuston@riverace.com> - - * ace/WIN32_Asynch_IO.cpp (ACE_WIN32_Asynch_Write_Stream::write): For - Winsock 2-capable platforms, use WSASend() instead of WriteFile(). - The former performs an order of magnitude faster. Thanks to - Namrata Gandhi for running the Win32 native performance tests. - -Tue Jul 8 16:35:57 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/config_h.m4: - * configure.ac: - - Remove feature test and autoheader template for - ACE_NEEDS_REGEXPR_H. It is no longer used by ACE. - - * ace/config-unixware-7.1.0.h: - * ace/config-unixware-7.1.0.udk.h: - - Remove the ACE_NEEDS_REGEXPR_H feature test macro definition. - It is no longer used by ACE. - -Tue Jul 8 16:06:46 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * NEWS: - - Document new --enable-rcsid option for autoconf build. - - * m4/ace.m4: - * m4/config_h.m4: - * m4/platform.m4: - - Add support of a new --enable-rcsid option for the autoconf - build. Previously, compiling RCS IDs into object files was - tightly coupled with the --enable-debug option and was always - disabled for certain operating systems. A separate option allows - the user to select this behavior independently. - -Tue Jul 8 14:41:08 2008 Steve Huston <shuston@riverace.com> - - * tests/Reference_Counted_Event_Handler_Test.cpp: Fixed test cases - that I accidentally reversed in - Fri Jul 4 20:11:02 UTC 2008 Steve Huston <shuston@riverace.com> - -Tue Jul 08 06:44:09 MST 2008 Trevor Fields <fields_t@ociweb.com> - - * bin/PerlACE/Run_Test.pm: - - Added waitforfileoutput and waitforfileoutput_timed - methods that wait for output to appear in a file. - -Sun Jul 6 19:47:27 UTC 2008 Ken Sedgwick <ken+5a4@bonsai.com> - - * rpmbuild/ace-tao.spec: - Added idl and pidl include files to tao-devel package. - -Sun Jul 6 18:28:58 UTC 2008 Ken Sedgwick <ken+5a4@bonsai.com> - - * rpmbuild/ace-tao.spec: - * rpmbuild/ace-tao-orbsvcs-daemon.patch: - * rpmbuild/ace-tao-config.patch: - Updated for latest DOC Group release (x.6.6). - Tracked libACE_Monitor_Control name change. - Fixed broken patches. - -Fri Jul 4 20:11:02 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/config-macros.h: Don't set ACE_HAS_PROCESS_SPAWN for - ACE_HAS_PHARLAP - there's only one process available. - - * ace/Recursive_Thread_Mutex.cpp (get_nesting_level): Add Pharlap ETS - to those platforms without access to the recursion count on a - recursive mutex. - - * tests/run_test.lst: Disable Sendfile_Test on LABVIEW_RT - it lacks - sendfile support. - - * tests/Reference_Counted_Event_Handler_Test.cpp: Replaced ACE_ASSERT - with ACE_ERROR; surrounded naked strings with ACE_TEXT; added a test - option for using ACE_Dev_Poll_Reactor where available. - - * tests/Service_Config_Test.cpp: Replaced ACE_ASSERT with ACE_ERROR. - - * tests/Thread_Pool_Reactor_Resume_Test.cpp: - * tests/Thread_Pool_Reactor_Test.cpp: Add ACE_HAS_PHARLAP to those - platforms that need to scale back the max number of connections - due to limited capacity. - -Thu Jul 3 21:42:54 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - - Changed the feature test used for the existance of the sigval_t - type not to define ACE_LACKS_SIGVAL_T if it does not exist. - - However, it is still needed to set the ac_cv_type_sigval_t shell - variable, which is used to decide whether to perform the - ACE_HAS_SIGVAL_SIGVAL_INT and ACE_HAS_SIGVAL_SIGVAL_PTR feature - tests. - - This fixes (the newly reopened) bugzilla #2794. Thanks to Olli - Savi for suggesting taking another look. - -Thu Jul 3 16:38:35 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * bin/MakeProjectCreator/templates/gnu.mpd: - - Added the use of 'postclean' to be used during the realclean - target. - -Wed Jul 2 18:30:15 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Base.cpp (clear_i): - - Added resize of string array (if applicable) to 0. - - * ace/Monitor_Control/CPU_Load_Monitor.h: - * ace/Monitor_Control/Bytes_Received_Monitor.cpp: - * ace/Monitor_Control/Packets_Received_Monitor.cpp: - * ace/Monitor_Control/Memory_Usage_Monitor.h: - * ace/Monitor_Control/Num_Threads_Monitor.h: - * ace/Monitor_Control/CPU_Load_Monitor.cpp: - * ace/Monitor_Control/Memory_Usage_Monitor.cpp: - * ace/Monitor_Control/Num_Threads_Monitor.cpp: - * ace/Monitor_Control/Bytes_Sent_Monitor.cpp: - * ace/Monitor_Control/Packets_Sent_Monitor.cpp: - - Finished implementation of clear_i() method for all - platforms. - -Wed Jul 2 12:45:53 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> - - * Updated the COPYING file to make it consistent with what's on the website. - -Wed Jul 02 12:30:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/Monitor_Control/Solaris_Network_Interface_Monitor.cpp: - - ACE_TEXT () and ACE_TEXT_ALWAYS_CHAR () required here. - -Wed Jul 02 12:05:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/Framework_Component.cpp: - - Annoying text constant problem in a build. No need for ACE_TEXT() - here. - -Wed Jul 2 11:51:03 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * tests/Makefile.am: - - Added the Process_Env_Test. - -Wed Jul 02 11:40:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * tests/Process_Env_Test.cpp: - - Annoyingly the ACE_RCSID() macro provides it's own ; - This fixes the "Process_Env_Test.cpp:23: error: extra ';'" error. - -Tue Jul 1 22:47:17 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/Process.{h cpp}: Can't define or use the new convert_env_buffer() - method unless ACE_HAS_WCHAR is defined. This extra check is needed - for LabVIEW RT / Pharlap ETS because it purports to be Win32 but - does not have wide-char support. - -Tue Jul 1 14:20:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/PythonACE/fuzz/check_no_tabs.py: - - Attempt to provide tabs check. - -Tue Jul 1 12:29:34 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Control/Bytes_Received_Monitor.cpp: - * ace/Monitor_Control/Packets_Received_Monitor.cpp: - * ace/Monitor_Control/Bytes_Sent_Monitor.cpp: - * ace/Monitor_Control/Packets_Sent_Monitor.cpp: - - Cosmetic changes. - -Mon Jun 30 16:50:05 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * ace/Process.h: - - Fixed a misplaced bit of code. - -Mon Jun 30 12:41:00 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * ace/Process.h: - * ace/Process.cpp: - - Added an option to ACE_Process_Options to use a wchar_t environment - buffer instead of char. This is useful only on Windows with - ACE_USES_WCHAR undefined. The benefit of using a wchar_t - environment buffer is that it is not limited to 32kb as a char - environment buffer is. - - In ACE_Process::spawn(), convert the char environment buffer to a - wchar_t environment buffer if specified to do so in the process - options. - - * tests/Process_Env_Test.cpp: - * tests/run_test.lst: - * tests/tests.mpc: - - Added a test for the above feature. - -Fri Jun 27 18:04:52 UTC 2008 Steve Huston <shuston@riverace.com> - - * include/makeinclude/rules.local.GNU: Removed the first setting of - CLEANUP_OBJS by itself - it was a duplicate of what's done in - CLEANUP_BIN's case, but with possibly an incorrect objext. Prevents - a main executable's object file from being deleted twice and ensures - only valid object file extension is used. Thanks to Howard Finer - for pointing this out. - -Fri Jun 27 16:08:27 UTC 2008 Steve Huston <shuston@riverace.com> - - * include/makeinclude/rules.local.GNU: Add $(VOBJS) to CLEANUP_OBJS to - be sure all objects that go into a binary are cleaned up. - -Fri Jun 27 15:35:58 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * bin/MakeProjectCreator/modules/AutomakeWorkspaceHelper.pm: - - Changed TAO_IDLFLAGS to Rename executable from gperf to - ace_gperf. - -Fri Jun 27 14:58:17 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Control/Solaris_Network_Interface_Monitor.h: - - Changed ACE_CString member to ACE_TString, to accommodate - wchar builds. - -Thu Jun 26 20:41:20 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/Profile_Timer.cpp: - - Explictly #include "ace/OS_NS_fcntl.h" and "ace/OS_NS_unistd.h" - if ACE_HAS_PRUSAGE_T is defined. These headers are implicitly - #included with inline builds, but are required for builds - where inline has been disabled. - -Thu Jun 26 13:13:16 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Control_Types.h: - * ace/Monitor_Base.cpp: - * ace/Monitor_Base.h: - * ace/Monitor_Control/Monitor_Group.h: - * ace/Monitor_Control/Monitor_Group.cpp: - - Restored support for string data type in - monitor storage, by moving data types, - members and methods from their original - location in an earlier version of the - Notification Service monitor classes, - to the appropriate locations in ACE. - -Thu Jun 26 02:45:21 UTC 2008 Phil Mesnier <mesnier_p@ociweb.com> - - * THANKS: added Ittehad Shaikh - -Wed Jun 25 15:05:29 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * apps/gperf/src/Makefile.am: - - Rename executable from gperf to ace_gperf. - -Wed Jun 25 14:59:13 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * apps/gperf/tests/Makefile.am: - - Re-tabify. - -Wed Jun 25 14:09:52 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * rpmbuild/ace-tao-config.patch - Removed ACE_GPERF - - * rpmbuild/ace-tao.spec: - Document changes - - * rpmbuild/ace-tao-gperf-info.patch: - Removed, not needed anymore - -Wed Jun 25 13:29:13 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/config_h.m4: - * configure.ac: - - Remove feature test and autoheader template for - ACE_HAS_BROKEN_NETBSD_MSYNC. - - * ace/OS_NS_sys_mman.inl: - - Remove the use of the ACE_HAS_BROKEN_NETBSD_MSYNC feature test - macro. It was removed since ACE no longer supports the systems - that required it. - -Wed Jun 25 11:23:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/Monitor_Control/Bytes_Received_Monitor.cpp: - - Tue Jun 24 11:46:41 UTC 2008 Jeff Parsons committed - Miss-cased ACE_TEXT. - -Wed Jun 25 10:00:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/fuzz.pl: - - Enhance ACE_TMAIN and ORB_init checks for /* .. */ comments. - -Wed Jun 25 06:58:52 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * apps/gperf/gperf.1: - * apps/gperf/gperf.info: - * apps/gperf/gperf.mpc: - * apps/gperf/gperf.texi: - * apps/gperf/ace_gperf.1: - * apps/gperf/ace_gperf.info: - * apps/gperf/ace_gperf.mpc: - * apps/gperf/ace_gperf.texi: - * apps/gperf/gperf/src/gperf.mpc: - * apps/gperf/gperf/tests/gperf_test.mpb: - * apps/gperf/gperf/tests/Makefile.am: - Renamed gperf to ace_gperf to make sure we always get the gperf - from ace, fedora also has a regular gperf package - - * include/makeinclude/platform_vxworks5.5.x.GNU: - * include/makeinclude/platform_vxworks6.2.GNU: - * include/makeinclude/platform_vxworks6.3.GNU: - Updated for gperf rename - - * rpmbuild/ace-tao.spec: - Removed gperf rename which only was done in the rpm package. - This fixes bugzilla 3342 - -Wed Jun 25 05:59:52 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * include/makeinclude/platform_netbsd.GNU: - - Conditionally set no_hidden_visibility to 1. - -Tue Jun 24 13:52:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * tests/Bug_2980_Regression_Test.cpp: - * tests/tests.mpc: - - Remove ACE_TMAIN from this test and stop it building on - wide systems (as per original test). The test can not use - ace directly. - -Tue Jun 24 13:30:31 2008 Steve Huston <shuston@riverace.com> - - * ace/CDR_Stream.h: For ACE_OutputCDR, note that attempting to set a - specific byte order requires ACE_ENABLE_SWAP_ON_WRITE to have any - affect. Thanks to Howard Finer for pointing this out. - -Tue Jun 24 11:46:41 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Control/Bytes_Received_Monitor.cpp: - * ace/Monitor_Control/Packets_Received_Monitor.cpp: - * ace/Monitor_Control/Bytes_Sent_Monitor.cpp: - * ace/Monitor_Control/Packets_Sent_Monitor.cpp: - - For Solaris and *BSD WChar builds, ACE_TEXT-ified the argument - in the call to the platform-specific base class - constructor. - -Tue Jun 24 11:02:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/Svc_Conf_Token_Table.h: - - commit generated 3rd file. - Fix the dependancies for FC6_Compact_NoInline build. - -Tue Jun 24 09:45:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * tests/Bug_2980_Regression_Test.cpp: - * tests/tests.mpc: - - Manually add the ACE_TMAIN code to this test. - -Tue Jun 24 00:03:27 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/Monitor_Control/BSD_Network_Interface_Monitor.cpp: - * ace/Monitor_Control/BSD_Network_Interface_Monitor.h: - - Changed to fetch current value in constructor, and subtract - that from subsequent values in each update() call. - -Mon Jun 23 15:28:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/Svc_Conf_y.cpp: - - Fix fuzz errors incorrect ACE_TMAIN/main use; commit generated 2nd. - -Mon Jun 23 15:27:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/Svc_Conf.y: - - Fix fuzz errors incorrect ACE_TMAIN/main use; commit source 1st. - -Mon Jun 23 13:51:23 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Control/Windows_Monitor.h: - - Changed class member type from ACE_CString to ACE_TString - to accomondate Unicode builds. - - * ace/Monitor_Control/Windows_Monitor.cpp: - - Removed incorrect use of ACE_TEXT wrapper on a non-literal. - -Mon Jun 23 12:34:35 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * bin/tao_other_tests.lst: - - Added the new Notify Timeout test. - -Mon Jun 23 12:09:26 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> - - * examples/C++NPv2/display_logfile.cpp: Divided an ACE_TCHAR - string by sizeof (ACE_TCHAR) to get the appropriate size. - Thanks to J.T. <jtc at acorntoolworks dot com> for reporting - this. - -Mon Jun 23 11:12:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/Svc_Conf_y.cpp: - * bin/LabVIEW_RT/labview_test_controller/test.cpp: - * ASNMP/examples/trap/trap.cpp: - * ASNMP/examples/get/get.cpp: - * ASNMP/examples/get/get_async.cpp: - * ASNMP/examples/set/set.cpp: - * ASNMP/examples/next/next.cpp: - * ASNMP/examples/walk/walk.cpp: - * netsvcs/clients/Tokens/mutex/test_mutex.cpp: - * performance-tests/RPC/client.cpp: - * tests/Bug_2980_Regression_Test.cpp: - - Fix fuzz errors incorrect ACE_TMAIN/main use. - -Sun Jun 22 17:23:08 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Control/CPU_Load_Monitor.cpp: - * ace/Monitor_Control/Memory_Usage_Monitor.cpp: - * ace/Monitor_Control/Num_Threads_Monitor.cpp: - - Fix to clear_i() implementation for these monitors that - compiled only on Windows. - -Fri Jun 20 20:40:50 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Size.cpp: - * ace/Monitor_Base.cpp: - * ace/Monitor_Base.h: - - Moved stats features from the Notification Service monitor - class to the ACE base class. - - * ace/Monitor_Control/Windows_Multi_Instance_Monitor.cpp: - * ace/Monitor_Control/Linux_Network_Interface_Monitor.cpp: - * ace/Monitor_Control/CPU_Load_Monitor.h: - * ace/Monitor_Control/Bytes_Received_Monitor.cpp: - * ace/Monitor_Control/Windows_Monitor.h: - * ace/Monitor_Control/Packets_Received_Monitor.cpp: - * ace/Monitor_Control/Memory_Usage_Monitor.h: - * ace/Monitor_Control/Monitor_Group.h: - * ace/Monitor_Control/Null_Network_Interface_Monitor.cpp: - * ace/Monitor_Control/BSD_Network_Interface_Monitor.h: - * ace/Monitor_Control/Solaris_Network_Interface_Monitor.h: - * ace/Monitor_Control/Num_Threads_Monitor.h: - * ace/Monitor_Control/Bytes_Sent_Monitor.h: - * ace/Monitor_Control/CPU_Load_Monitor.cpp: - * ace/Monitor_Control/Packets_Sent_Monitor.h: - * ace/Monitor_Control/Windows_Monitor.cpp: - * ace/Monitor_Control/Monitor_Group.cpp: - * ace/Monitor_Control/Memory_Usage_Monitor.cpp: - * ace/Monitor_Control/Linux_Network_Interface_Monitor.h: - * ace/Monitor_Control/Windows_Multi_Instance_Monitor.h: - * ace/Monitor_Control/BSD_Network_Interface_Monitor.cpp: - * ace/Monitor_Control/Bytes_Received_Monitor.h: - * ace/Monitor_Control/Solaris_Network_Interface_Monitor.cpp: - * ace/Monitor_Control/Packets_Received_Monitor.h: - * ace/Monitor_Control/Null_Network_Interface_Monitor.h: - * ace/Monitor_Control/Num_Threads_Monitor.cpp: - * ace/Monitor_Control/Bytes_Sent_Monitor.cpp: - * ace/Monitor_Control/Packets_Sent_Monitor.cpp: - - Implemented overrides of clear_i() for all the OS - monitors. - -Fri Jun 20 20:25:12 UTC 2008 Steve Huston <shuston@riverace.com> - - * bin/PerlACE/README: Edited to reflect the change in process for - referring to test components. Components are now referred to with - numbers instead of names. - - * bin/PerlACE/TestTarget.pm: In create_target(), warn if the component - is not a number. - - * bin/PerlACE/ProcessLVRT.pm: Don't try to close an undefined Telnet. - - * bin/tao_orb_tests.lst: Removed the LabVIEW_RT disabling on - Bug_2702_Regression, Oneway_Send_Timeouts, and Abstract_Interface. - - * tests/run_test.pl: Changed the target component from "ace" to 1 per - new component referring convention. - -Fri Jun 20 18:40:10 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * bin/PerlACE/Run_Test.pm: - - Removed references to HostProcess and TargetProcess. - - * bin/PerlACE/TestTarget.pm: - * bin/PerlACE/TestTarget_VxWorks.pm: - - Added a new test target for VxWorks. It currently has no reboot - related functionality. - - * bin/PerlACE/TestTarget_LVRT.pm: - - Added the ability to accept multiple files for the DeleteFile - method as unlink does. - - * bin/PerlACE/HostProcess.pm: - * bin/PerlACE/TargetProcess.pm: - - Removed these files. - -Fri Jun 20 15:15:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/fuzz.pl: - - Small bug in white space compaction. - -Fri Jun 20 14:15:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/fuzz.pl: - - Enhance ACE_TMAIN check for multi-line detection and remove - detection level for this check. - -Fri Jun 20 12:09:53 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * examples/IPC_SAP/SSL_SAP/SSL-client-simple.cpp: - * examples/IPC_SAP/SSL_SAP/SSL-client.cpp: - - Added static_cast's to avoid warnings from vc8. - -Thu Jun 19 16:21:07 2008 Steve Huston <shuston@riverace.com> - - * ace/CDR_Base.h: - * ace/CDR_Stream.h: Added a enum to ACE_CDR with the values for - byte ordering specifier. Moved the setting of ACE_CDR_BYTE_ORDER - from CDR_Stream.h to CDR_Base.h so it can be used in the enum. - These make it easier for users to figure out what to do when they - want to force a specific byte ordering. - Also did a little more doxygen cleanup. - -Thu Jun 19 15:11:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/fuzz.pl: - - Enable ORB_init() 3rd parameter null string check. - -Thu Jun 19 14:11:04 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/Monitor_Control/BSD_Network_Interface_Monitor.cpp: - - Explicitly #include <sys/ioctl.h> and <net/if.h> for non-inline - builds. - -Wed Jun 18 17:36:34 UTC 2008 Yan Dai <dai_y@ociweb.com> - - * ace/Stack_Trace.cpp: - - Moved pragma disable warning directives from inside of function to - outside to take effect. - -Wed Jun 18 17:27:51 2008 Steve Huston <shuston@riverace.com> - - * ace/CDR_Stream.h: Some doxygen improvements. - -Wed Jun 18 15:36:11 UTC 2008 Phil Mesnier <mesnier_p@ociweb.com> - - * bin/tao_orb_tests.lst: - - Added new run_test scripts for the special variants of the TAO - POA EndpointPolicy test. - -Wed Jun 18 13:20:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/fuzz.pl: - - Redo check for wide character incompatabilty ORB_init() miss-use. - Caters for multi-line ORB_init. - -Wed Jun 18 12:16:48 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * bin/PerlACE/Run_Test.pm: - - Increase the process start wait time for QNX. - -Wed Jun 18 10:43:20 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_linux_icc.GNU: - Don't use deprecated options - -Wed Jun 18 09:50:20 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * README: - * ACE-INSTALL.html: - Updated - -Tue Jun 17 22:43:20 2008 Steve Huston <shuston@riverace.com> - - * ace/Reactor.h: Clarify that calling remove_handler() for a signal - handler does not invoke the handler's handle_close() callback. Also - note that this behavior is under debate in Bugzilla #2368. Thanks to - Bill Kendall <wkendall at sgi dot com> for calling this to attention. - - * THANKS: Added Bill Kendall. - -Tue Jun 17 15:36:49 UTC 2008 Yan Dai <dai_y@ociweb.com> - - * ace/Stack_Trace.cpp: - - Disabled warning C4706 in load_dbghelp_library_if_needed() - and enabled afterwards on windows. - -Tue Jun 17 13:55:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/fuzz.pl: - - Add check for wide character incompatabilty ORB_init() miss-use. - -Tue Jun 17 12:40:03 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/Monitor_Control/BSD_Network_Interface_Monitor.cpp: - - Explicitly #include <sys/sockio.h> for non-inline builds. - -Tue Jun 17 09:30:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * apps/JAWS/clients/WebSTONE/src/bench.c: - * apps/JAWS/clients/WebSTONE/src/errexit.c: - * apps/JAWS/clients/WebSTONE/src/genrand.c: - * apps/JAWS/clients/WebSTONE/src/timefunc.c: - * apps/JAWS/clients/WebSTONE/src/webclient.c: - * apps/JAWS/clients/WebSTONE/src/webmaster.c: - - Fuzz errors, Untabify. - -Tue Jun 17 08:13:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * include/make_include/platform_sunos5_common.GNU: - - Changed default "kstat ?= 1" at Johnny Willemsens request. - -Tue Jun 17 06:42:51 UTC 2008 Yan Dai <dai_y@ociweb.com> - - * ace/Stack_Trace.cpp: - - Fixed declared method (determine_starting_frame) never referenced - warning on HP aCC build. - -Mon Jun 16 21:26:05 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> - - * bin/fuzz.pl: - - Enable check_for_tab for all files in the repository. - -Mon Jun 16 21:22:03 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> - - * apps/JAWS/clients/Caching/Local_Locator.cpp: - * apps/JAWS/clients/WebSTONE/src/bench.c: - * apps/JAWS/clients/WebSTONE/src/errexit.c: - * apps/JAWS/clients/WebSTONE/src/genrand.c: - * apps/JAWS/clients/WebSTONE/src/get.c: - * apps/JAWS/clients/WebSTONE/src/gettimeofday.c: - * apps/JAWS/clients/WebSTONE/src/parse_file_list.c: - * apps/JAWS/clients/WebSTONE/src/rexec.c: - * apps/JAWS/clients/WebSTONE/src/statistics.c: - * apps/JAWS/clients/WebSTONE/src/sysdep.c: - * apps/JAWS/clients/WebSTONE/src/timefunc.c: - * apps/drwho/Hash_Table.cpp: - - Untabify. - -Mon Jun 16 20:24:45 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> - - * apps/Gateway/Gateway/Connection_Handler.cpp: - * apps/Gateway/Gateway/Event_Forwarding_Discriminator.cpp: - * apps/Gateway/Peer/Options.cpp: - * apps/JAWS/clients/Blobby/Options.cpp: - * apps/JAWS/clients/Blobby/blobby.cpp: - * apps/JAWS/clients/Caching/ID_Generator.cpp: - * apps/JAWS/clients/Caching/Local_Locator.cpp: - * apps/JAWS/clients/Caching/Locator_Request_Reply.cpp: - * apps/JAWS/clients/Caching/URL_Properties.inl: - * apps/JAWS/clients/WebSTONE/src/bench.c: - * apps/JAWS/clients/WebSTONE/src/cgi-send.c: - * apps/JAWS/clients/WebSTONE/src/get.c: - * apps/JAWS/clients/WebSTONE/src/getopt.c: - * apps/JAWS/clients/WebSTONE/src/nsapi-send.c: - * apps/JAWS/server/HTTP_Config.cpp: - * apps/JAWS/server/HTTP_Handler.cpp: - * apps/JAWS/server/HTTP_Helpers.cpp: - * apps/JAWS/server/HTTP_Response.cpp: - * apps/JAWS/server/HTTP_Server.h: - * apps/JAWS/server/HTTP_Server.cpp: - * apps/JAWS/stress_testing/benchd.cpp: - * apps/JAWS/stress_testing/connection.cpp: - * apps/JAWS/stress_testing/http_tester.cpp: - * apps/JAWS2/JAWS/Cache_Hash_T.h: - * apps/JAWS2/JAWS/Hash_Bucket_T.h: - * apps/drwho/File_Manager.cpp: - * apps/drwho/Hash_Table.cpp: - * apps/drwho/PMC_All.cpp: - * apps/drwho/PMC_Flo.cpp: - * apps/drwho/PMC_Ruser.cpp: - * apps/drwho/PMC_Usr.cpp: - * apps/drwho/PMS_Ruser.cpp: - * apps/drwho/PM_Client.cpp: - * apps/drwho/Rwho_DB_Manager.cpp: - * apps/gperf/src/Gen_Perf.cpp: - - Untabify. - -Mon Jun 16 19:06:38 UTC 2008 William R. Otte <wotte@dre.vanderbilt.edu> - - * ace/config-borland-common.h: - * ace/config-hpux-11.00.h: - * ace/config-mvs.h: - * ace/config-win32-dmc.h: - * ace/config-win32-ghs.h: - * ace/config-win32-msvc.h: - - Fixes for MCPP preprocessing on Windows. - -Mon Jun 16 19:06:44 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * ace/Acceptor.cpp: - * ace/Connector.cpp: - * ace/Strategies_T.cpp: - - Use the NORMAL_CLOSE_OPERATION enum value when closing the service - handler during activation. - -Mon Jun 16 18:33:34 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> - - * examples/ASX/UPIPE_Event_Server/Peer_Router.cpp: - * examples/OS/Process/imore.cpp: - * examples/Reactor/Proactor/test_proactor3.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_R_Stream.cpp: - - Untabify. - -Mon Jun 16 18:00:26 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> - - * ASNMP/examples/get/get.cpp: - * ASNMP/examples/get/get_async.cpp: - * ASNMP/examples/next/next.cpp: - * ASNMP/examples/set/set.cpp: - - Untabify. - -Mon Jun 16 17:53:00 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> - - * examples/IPC_SAP/SPIPE_SAP/consumer_msg.cpp: - * examples/IPC_SAP/SPIPE_SAP/consumer_read.cpp: - * examples/IPC_SAP/TLI_SAP/db-client.cpp: - * examples/Log_Msg/Log_Msg_MFC/Log_Msg_MFC.h: - * examples/Log_Msg/Log_Msg_MFC/Log_Msg_MFCDlg.h: - * examples/Log_Msg/Log_Msg_MFC/StdAfx.h: - * examples/Log_Msg/Log_Msg_MFC/StdAfx.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_L_Dgram.inl: - - Untabify. - -Mon Jun 16 17:27:36 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * bin/PerlACE/TargetProcess.pm: - - Remove the "use" of PerlACE::ProcessVX. It is already used in - PerlACE::Process and using it in this module causes things to be - evaluated incorrectly with respect to @ARGV. - -Mon Jun 16 17:01:19 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> - - * bin/fuzz.pl: - - Enable check_for_tab check for ACE_ROOT/examples - -Mon Jun 16 16:54:25 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> - - * examples/APG/Logging/Callback-2.h: - * examples/APG/Logging/Callback-3.h: - * examples/APG/Logging/Use_Logger.cpp: - * examples/APG/Threads/Message_Queue.cpp: - * examples/APG/Timers/CB.h: - * examples/APG/Timers/PCB.cpp: - * examples/ASX/CCM_App/SC_Server.cpp: - * examples/ASX/Event_Server/Event_Server/Consumer_Router.cpp: - * examples/ASX/Event_Server/Event_Server/Event_Analyzer.cpp: - * examples/ASX/Event_Server/Event_Server/Peer_Router.cpp: - * examples/ASX/Event_Server/Event_Server/Supplier_Router.cpp: - * examples/ASX/Message_Queue/bounded_buffer.cpp: - * examples/ASX/Message_Queue/priority_buffer.cpp: - * examples/ASX/UPIPE_Event_Server/Peer_Router.cpp: - * examples/Bounded_Packet_Relay/BPR_Drivers.cpp: - * examples/Bounded_Packet_Relay/Thread_Bounded_Packet_Relay.cpp: - * examples/Bounded_Packet_Relay/bpr_thread.cpp: - * examples/C++NPv2/display_logfile.cpp: - * examples/Connection/misc/Connection_Handler.h: - * examples/IPC_SAP/ATM_SAP/CPP-client.cpp: - * examples/IPC_SAP/ATM_SAP/CPP-server.cpp: - * examples/IPC_SAP/DEV_SAP/writer/writer.cpp: - * examples/IPC_SAP/FIFO_SAP/FIFO-Msg-server.cpp: - * examples/IPC_SAP/FIFO_SAP/FIFO-client.cpp: - * examples/IPC_SAP/FIFO_SAP/FIFO-test.cpp: - * examples/IPC_SAP/FILE_SAP/client.cpp: - * examples/IPC_SAP/SOCK_SAP/C-inclient.cpp: - * examples/IPC_SAP/SOCK_SAP/CPP-unclient.cpp: - * examples/IPC_SAP/SPIPE_SAP/NPServer.cpp: - * examples/IPC_SAP/SPIPE_SAP/producer_msg.cpp: - * examples/IPC_SAP/TLI_SAP/CPP-ATM-client.cpp: - * examples/IPC_SAP/TLI_SAP/CPP-ATM-server.cpp: - * examples/IPC_SAP/TLI_SAP/CPP-client.cpp: - * examples/IPC_SAP/TLI_SAP/CPP-server.cpp: - * examples/IPC_SAP/TLI_SAP/db-client.cpp: - * examples/IPC_SAP/TLI_SAP/ftp-client.cpp: - * examples/Log_Msg/Log_Msg_MFC/Log_Msg_MFC.h: - * examples/Log_Msg/Log_Msg_MFC/Log_Msg_MFC.cpp: - * examples/Log_Msg/Log_Msg_MFC/Log_Msg_MFCDlg.h: - * examples/Log_Msg/Log_Msg_MFC/Log_Msg_MFCDlg.cpp: - * examples/Logger/Acceptor-server/server_loggerd.h: - * examples/Logger/Acceptor-server/server_loggerd.cpp: - * examples/Logger/simple-server/Logging_Handler.cpp: - * examples/Logger/simple-server/server_loggerd.cpp: - * examples/Mem_Map/IO-tests/test_io.cpp: - * examples/Misc/test_get_opt.cpp: - * examples/Misc/test_profile_timer.cpp: - * examples/OS/Process/imore.cpp: - * examples/QOS/Change_Receiver_FlowSpec/Receiver_QoS_Event_Handler.cpp: - * examples/Reactor/FIFO/client.cpp: - * examples/Reactor/FIFO/server.cpp: - * examples/Reactor/Misc/notification.cpp: - * examples/Reactor/Misc/test_signals_1.cpp: - * examples/Reactor/Misc/test_signals_2.cpp: - * examples/Reactor/Ntalker/ntalker.cpp: - * examples/Reactor/Proactor/test_cancel.h: - * examples/Reactor/Proactor/test_cancel.cpp: - * examples/Reactor/Proactor/test_multiple_loops.cpp: - * examples/Reactor/Proactor/test_proactor3.cpp: - * examples/Reactor/Proactor/test_timeout.cpp: - * examples/Reactor/Proactor/test_timeout_st.cpp: - * examples/Registry/test_registry_update.cpp: - * examples/Service_Configurator/IPC-tests/client/broadcast_client_test.cpp: - * examples/Service_Configurator/IPC-tests/client/local_dgram_client_test.cpp: - * examples/Service_Configurator/IPC-tests/client/local_pipe_client_test.cpp: - * examples/Service_Configurator/IPC-tests/client/local_stream_client_test.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_L_CODgram.inl: - * examples/Service_Configurator/IPC-tests/server/Handle_L_Dgram.inl: - * examples/Service_Configurator/IPC-tests/server/Handle_L_FIFO.inl: - * examples/Service_Configurator/IPC-tests/server/Handle_L_Pipe.inl: - * examples/Service_Configurator/IPC-tests/server/Handle_L_SPIPE.inl: - * examples/Service_Configurator/IPC-tests/server/Handle_L_Stream.inl: - * examples/Service_Configurator/IPC-tests/server/Handle_R_Dgram.inl: - * examples/Service_Configurator/IPC-tests/server/Handle_Thr_Stream.cpp: - * examples/Service_Configurator/Misc/Timer_Service.cpp: - * examples/Shared_Memory/test_SV.cpp: - * examples/System_V_IPC/SV_Message_Queues/TMQ_Client.cpp: - * examples/Threads/recursive_mutex.cpp: - * examples/Threads/task_one.cpp: - * examples/Threads/thread_manager.cpp: - * examples/Threads/token.cpp: - - Untabify. - -Mon Jun 16 16:04:40 2008 Steve Huston <shuston@riverace.com> - - * bin/PerlACE/TestTarget.pm: When getting the exe subdir for a - target, pick up the command line setting if the "default" target - is in use. This should fix the broken exesubdir TAO builds. - -Mon Jun 16 15:45:45 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Control/Null_Network_Interface_Monitor.cpp: - * ace/Monitor_Control/Null_Network_Interface_Monitor.h: - - New files, defining a base class for tne network interface OS - monitors when the monitor framework itself is enabled but no - platform-specific OS monitor flags are defined, whether because - the platform itself does not support native system-level - monitoring, or because the Linux, Windows or Solaris OS - monitor flags has been turned off for some reason. - - * ace/Monitor_Control/Monitor_Control.mpc: - * ace/Monitor_Control/Bytes_Sent_Monitor.h: - * ace/Monitor_Control/Packets_Sent_Monitor.h: - * ace/Monitor_Control/Linux_Network_Interface_Monitor.h: - * ace/Monitor_Control/Bytes_Received_Monitor.h: - * ace/Monitor_Control/Packets_Received_Monitor.h: - - Incorporated the new no-op network interface monitor base class - into the existing network interface monitor classes. If this - new base class is used, the monitor's value will always be 0, - and its update() method will be a no-op. - -Mon Jun 16 12:12:16 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/config-sunos5.5.h: - - Reverted addition of ACE_HAS_KSTAT flag in - - Fri Jun 13 14:00:00 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - Thanks to Johnny Willemsen <jwillemsen@remedy.nl>, we now - know that the correct way to do this is to set kstat=1 - in platform_macros.GNU. - -Mon Jun 16 11:28:11 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> - - * bin/fuzz.pl: - - Enable check_for_tab check for TAO/tests/examples and TAO/performance-tests - -Mon Jun 16 10:30:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * tests/Max_Default_Port_Test.cpp: - - Un-tabify. - -Mon Jun 16 10:20:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/Monitor_Control/BSD_Network_Interface_Moinitor.cpp: - - Correct Fuzz errors (removed NULL). - -Mon Jun 16 01:01:27 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> - - * bin/fuzz.pl: - - Enable check_for_tab check for TAO/tests - -Sun Jun 15 16:03:29 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> - - * bin/fuzz.pl: - - Enable check_for_tab check for TAO/orbsvcs - -Sun Jun 15 13:23:13 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-linux-common.h: - Added ACE_LACKS_STRRECVFD when no streams are available (like fc9) - - * rpmbuild/ace-tao-strrecvfd.patch: - Deleted - - * rpmbuild/ace-tao.spec: - Patch 6 is not needed anymore - - * ace/Strategies_T.h: - Doxygen change - -Sun Jun 15 03:08:53 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/Monitor_Control/Monitor_Control.mpc: - - Add BSD_Network_Interface_Monitor.cpp to Source_Files section. - -Fri Jun 13 14:50:28 UTC 2008 Simon Massey <sma at prismtech dot com> - - Add BSD_Network_Interface_Monitor.cpp and - - untab-ified to remove fuzz errors. - -Fri Jun 13 14:45:28 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Control/Windows_Multi_Instance_Monitor.cpp: - - Removed unused local variable. - -Fri Jun 13 14:31:35 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * ace/Stack_Trace.cpp (Solaris section): - - Yesterday's addition of support for 64-bit SPARC broke on x86. - -Fri Jun 13 14:00:00 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/config-sunos5.5.h: - - Added #define of ACE_HAS_KSTAT, used by the OS monitors in - ace/Monitor_Control on Solaris platforms to guard the - visibility of Solaris-specific code and base classes. - -Fri Jun 13 13:40:39 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/Monitor_Control/Makefile.am: - - Add BSD_Network_Interface_Monitor.cpp and - Solaris_Network_Interface_Monitor.cpp to Headers_File section. - - * ace/Monitor_Control/Bytes_Received_Monitor.cpp: - * ace/Monitor_Control/Bytes_Received_Monitor.h: - * ace/Monitor_Control/Bytes_Sent_Monitor.cpp: - * ace/Monitor_Control/Bytes_Sent_Monitor.h: - * ace/Monitor_Control/Packets_Received_Monitor.cpp: - * ace/Monitor_Control/Packets_Received_Monitor.h: - * ace/Monitor_Control/Packets_Sent_Monitor.cpp: - * ace/Monitor_Control/Packets_Sent_Monitor.h: - - Inherit from BSD_Network_Interface_Monitor on FreeBSD, - NetBSD, and OpenBSD systems. - - * ace/Monitor_Control/BSD_Network_Interface_Monitor.cpp: - * ace/Monitor_Control/BSD_Network_Interface_Monitor.h: - - New files, network interface monitor for systems with 4.4BSD - derived network stack. - -Fri Jun 13 13:24:11 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Control/Linux_Network_Interface_Monitor.cpp: - * ace/Monitor_Control/Bytes_Received_Monitor.cpp: - * ace/Monitor_Control/Packets_Received_Monitor.cpp: - * ace/Monitor_Control/Bytes_Sent_Monitor.h: - * ace/Monitor_Control/Packets_Sent_Monitor.h: - * ace/Monitor_Control/Linux_Network_Interface_Monitor.h: - * ace/Monitor_Control/Bytes_Received_Monitor.h: - * ace/Monitor_Control/Packets_Received_Monitor.h: - * ace/Monitor_Control/Bytes_Sent_Monitor.cpp: - * ace/Monitor_Control/Packets_Sent_Monitor.cpp: - - Added '|| defined (AIX)' to every occurrence of - '#if defined (linux)' to eliminate build errors on the - latter platform. - -Thu Jun 12 21:57:33 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/config_h.m4: - * configure.ac: - - Remove feature test for ACE_HAS_TEMPLATE_SPECIALIZATION. - - * ace/config-borland-common.h: - * ace/config-cray.h: - * ace/config-cxx-common.h: - * ace/config-g++-common.h: - * ace/config-hpux-11.00.h: - * ace/config-icc-common.h: - * ace/config-integritySCA.h: - * ace/config-irix6.x-sgic++.h: - * ace/config-mvs.h: - * ace/config-openvms.h: - * ace/config-suncc-common.h: - * ace/config-sunos5.4-sunc++-4.x.h: - * ace/config-sunos5.5.h: - * ace/config-sunos5.6.h: - * ace/config-tandem-nsk-mips-v2.h: - * ace/config-tandem-nsk-mips-v3.h: - * ace/config-tru64.h: - * ace/config-unixware-7.1.0.udk.h: - * ace/config-win32-dmc.h: - * ace/config-win32-ghs.h: - * ace/config-win32-msvc-8.h: - * ace/config-win32-msvc-9.h: - * ace/config-win32-msvc-7.h: - - Remove unused #define of ACE_HAS_TEMPLATE_SPECIALIZATION. This - feature test macro is no longer used. - -Thu Jun 12 18:47:54 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Control/Solaris_Network_Interface_Monitor.h: - * ace/Monitor_Control/Solaris_Network_Interface_Monitor.cpp: - - New files, containing a base class used with - Bytes_Received_Monitor, Bytes_Sent_Monitor, - Packets_Received_Monitor and Packets_Sent_Monitor - when they are compiled on Solaris platforms. - - * ace/Monitor_Control/Windows_Multi_Instance_Monitor.cpp: - * ace/Monitor_Control/Linux_Network_Interface_Monitor.cpp: - * ace/Monitor_Control/CPU_Load_Monitor.h: - * ace/Monitor_Control/Bytes_Received_Monitor.cpp: - * ace/Monitor_Control/Windows_Monitor.h: - * ace/Monitor_Control/Packets_Received_Monitor.cpp: - * ace/Monitor_Control/Memory_Usage_Monitor.h: - * ace/Monitor_Control/Monitor_Control.mpc: - * ace/Monitor_Control/Num_Threads_Monitor.h: - * ace/Monitor_Control/Bytes_Sent_Monitor.h: - * ace/Monitor_Control/CPU_Load_Monitor.cpp: - * ace/Monitor_Control/Packets_Sent_Monitor.h: - * ace/Monitor_Control/Windows_Monitor.cpp: - * ace/Monitor_Control/Memory_Usage_Monitor.cpp: - * ace/Monitor_Control/Linux_Network_Interface_Monitor.h: - * ace/Monitor_Control/Windows_Multi_Instance_Monitor.h: - * ace/Monitor_Control/Bytes_Received_Monitor.h: - * ace/Monitor_Control/Packets_Received_Monitor.h: - * ace/Monitor_Control/Num_Threads_Monitor.cpp: - * ace/Monitor_Control/Bytes_Sent_Monitor.cpp: - * ace/Monitor_Control/Packets_Sent_Monitor.cpp: - - - Changed required to complete the support of - network interface monitors on Solaris. - - - Changed guards for Windows-specific header file - inclusion to use the recently added ACE_HAS_PDH_H, - which in turn guards the definition of the - ACE_HAS_WIN32_PDH flag used in source code. - - - Changed the names of the platform-specific monitor - update methods to update_i(), from the distinct - names they had before. This changed allowed the - elimination of many #ifdef guards in source code. - -Thu Jun 12 17:42:47 UTC 2008 Steve Huston <shuston@riverace.com> - - * bin/PerlACE/Process.pm: - * bin/PerlACE/Process_Win32.pm: Moved the Target sub from Process_Win32 - to Process so everybody can see it. Thanks to Chad Elliott for - finding and suggesting the correction for it. - -Thu Jun 12 16:04:33 UTC 2008 Steve Huston <shuston@riverace.com> - - * bin/tao_orb_tests.lst: Disabled newly added tests on LabVIEW_RT. - - * bin/PerlACE/README: Describes how the ACE+TAO test procedures work. - Includes a description of how to drive the generalized ability to - redirect execution of tests off of the build host. - - * bin/PerlACE/TestTarget.pm: - * bin/PerlACE/TestTarget_LVRT.pm: - * bin/PerlACE/ProcessLVRT.pm: - * bin/PerlACE/Process_Win32.pm: Add the ability to configure various - aspects of ACE+TAO (+CIAO I guess, but haven't tried that) to run - on machines other than the build host and with alternate roots - (ACE_ROOT, TAO_ROOT). This is an effort to generalize the ability - to run off of the build host without adding more switches and options - and convoluted settings and platform-specific code in the main - scripts. The README file explains how to set up modules to extend - testing to other platforms. LabVIEW_RT is the only one there now; - VxWorks is an obvious addition and would allow a bunch of special-case - code to be removed from the main scripts. The test-driving script - does require some change to take advantage of this capability. ACE - tests in ACE_wrappers/tests have the change. A few TAO tests do - (see TAO ChangeLog). Without the changes to the test-driving script - everything behaves as it always did. - - * tests/run_test.pl: Uses the new TestTarget capability, naming the - test target "ace". Thus, to redirect these tests to another machine, - set the DOC_TEST_ACE environment variable with a configuration name - and set configuration variables accordingly. - -Thu Jun 12 14:38:19 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * ace/Stack_Trace.h: - * ace/Stack_Trace.cpp: - - Added support for SPARCv9 (64-bit). - Reverted the Win32 assembly back to the simplest form, we had tried - to make it compatible with Borland but it still didn't work. As of - now ACE compiled by Borland will not generate stack traces. - -Thu Jun 12 12:17:52 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * ace/Stack_Trace.cpp: - - Corrected Win32 assembler compilation error. - -Wed Jun 11 16:24:00 UTC 2008 Phil Mesnier <mesnier_p@ociweb.com> - - * bin/tao_orb_tests.lst: - - Added new test case. - -Wed Jun 11 13:55:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/Time_Value.inl: - * ace/Time_Value.h: - - Add extra inline void msec(int) that calls void msec(long) - to avoid amiguity between void msec(long) and void msec(_int64 &) - when natual sized integers are given (which seems to be - quite often). - -Wed Jun 11 13:02:22 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * bin/PerlACE/Run_Test.pm: - - Replaced the "use PerlACE::Process". It is necessary to be loaded - inside this module to ensure that all of the command line options - can be processed. - -Wed Jun 11 04:17:42 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/platform.m4: - - Remove ACE_HAS_AIX_BROKEN_SOCKET_HEADER definitions. - -Wed Jun 11 03:51:32 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - * m4/config_h.m4: - - Remove feature test and autoheader template for - ACE_HAS_CHARPTR_SPRINTF. This feature test macro is no longer - used. - -Wed Jun 11 03:39:48 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - * m4/config_h.m4: - - Remove feature test and autoheader template for - ACE_LACKS_FLOATING_POINT. This feature test macro is no longer - used. - -Wed Jun 11 03:33:31 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - * m4/config_h.m4: - - Remove feature test and autoheader template for - ACE_HAS_TYPENAME_KEYWORD. This feature test macro is no longer - used. - -Wed Jun 11 03:31:02 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - * m4/config_h.m4: - - Remove feature test and autoheader template for - ACE_HAS_SPARCWORKS_401_SIGNALS. This feature test macro is no - longer used. - -Wed Jun 11 02:57:12 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/config_h.m4: - - Remove autoheader template for ACE_HAS_AIX_BROKEN_SOCKET_HEADER. - This feature test macro is no longer used. - -Wed Jun 11 02:52:16 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - * m4/config_h.m4: - - Remove feature test and autoheader template for - ACE_SELECT_USES_INT. This feature test macro is no longer used. - -Wed Jun 11 02:48:07 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/config_h.m4: - - Remove autoheader template for HAVE_RESTARTABLE_SYSCALLS. - This feature test macro is no longer used. - -Wed Jun 11 00:17:01 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - * m4/config_h.m4: - - Remove feature test and autoheader template for - ACE_HAS_IRIX_53_SIGNALS. This feature test macro is no longer - used. - -Tue Jun 10 23:57:53 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - * m4/config_h.m4: - - Remove feature tests and autoheader templates for - ACE_HAS_STD_TEMPLATE_SPECIALIZATION and - ACE_HAS_STD_TEMPLATE_CLASS_MEMBER_SPECIALIZATION. - These feature test macros are no longer used. - -Tue Jun 10 23:52:19 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - * m4/config_h.m4: - - Remove feature test and autoheader template for - ACE_HAS_BROKEN_SAP_ANY. This feature test macro is no longer - used. - -Tue Jun 10 23:49:46 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/config_h.m4: - - Remove autoheader template for ACE_HAS_BROKEN_NESTED_TEMPLATES. - This feature test macro is no longer used. - -Tue Jun 10 23:47:46 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/config_h.m4: - - Remove autoheader template for ACE_HAS_SUNOS4_SIGNAL_T. - This feature test macro is no longer used. - -Tue Jun 10 23:45:34 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - * m4/config_h.m4: - - Remove feature test and autoheader template for - ACE_HAS_BROKEN_CONDITIONAL_STRING_CAST. This feature test macro - is no longer used. - -Tue Jun 10 23:43:19 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - * m4/config_h.m4: - - Remove feature test and autoheader template for - ACE_HAS_BROKEN_CONVERSIONS. This feature test macro is no - longer used. - -Tue Jun 10 23:41:11 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - * m4/config_h.m4: - - Remove feature test and autoheader template for - ACE_HAS_BROKEN_NAMESPACES. This feature test macro is no longer - used. - -Tue Jun 10 23:39:09 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/config_h.m4: - - Remove autoheader template for ACE_HAS_SYSCALL_GETRUSAGE. This - feature test macro is no longer used. - -Tue Jun 10 23:16:31 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - * m4/config_h.m4: - - Remove feature test and autoheader template for - ACE_HAS_BROKEN_TIMESPEC_MEMBERS. This feature test macro is no - longer used. - -Tue Jun 10 21:28:23 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/platform.m4: - - Add ACE_CHECK_GETNAME_RETURNS_RANDOM_SIN_ZERO feature check, - which sets the ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO feature test - macro on Linux systems running kernels older than 2.5.47. This - is a compile time check, like was done in config-linux-common.h, - based on the value of LINUX_VERSION_CODE from <linux/version.h>. - This means ACE compiled on a newer Linux system but deployed on - an older one could result in run-time failures. - - Fixes Bugzilla #3132. - -Tue Jun 10 21:33:25 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/CDR_Stream.h: - * ace/CDR_Stream.cpp: - - Replaced a Monitor class forward declaration with the full file - include, moved from the source file to the header file. This - move enables ACE monitor points to compile when inlining is - turned on. - -Tue Jun 10 18:46:24 UTC 2008 Yan Dai <dai_y@ociweb.com> - - * ace/Stack_Trace.h: - - Updated comments to not exclude Borland from supported platforms. - - * ace/Stack_Trace.cpp: - - - Moved the label "x" from inside of asm to be outside. Some compiler - does not like it. - - Enabled LynxOS support and excluded support for gcc old versions before 3.3. - -Tue Jun 10 13:56:17 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * ace/Stack_Trace.cpp: - - One more fix for Win32 wchar. - -Tue Jun 10 13:32:57 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * tests/Bug_2980_Regression_Test.cpp: - - Avoid pointer-to-function and pointer-to-object warnings from g++. - -Tue Jun 10 12:53:05 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * tests/SSL/SSL_Asynch_Stream_Test.cpp: - - Modified to avoid virtual method hiding. - -Tue Jun 10 11:37:09 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * tests/Time_Value_Test.cpp: - - Added a static cast to avoid warnings on QNX. - -Tue Jun 10 10:57:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/ACE.cpp: - - Correct presidence bug highlighted by FC9_GCC_430 build: - ACE.cpp:1429: warning: suggest parentheses around && within || - ACE.cpp:1665: warning: suggest parentheses around && within || - ACE.cpp:1853: warning: suggest parentheses around && within || - The default precidence is && before ||, but the way the || - statements were grouped, it was clear that was not the intended - resolution. - - Correct empty if statement bug highlighted by FC9_GCC_430 build: - ACE.cpp:2773: warning: suggest braces around empty body in an 'if' statement - - Also removed warnings by using empty braces: - ACE.cpp:3389: warning: suggest a space before ';' or explicit braces around empty body in 'while' statement - ACE.cpp:3414: warning: suggest a space before ';' or explicit braces around empty body in 'while' statement - - -Mon Jun 9 21:38:04 UTC 2008 Yan Dai <dai_y@ociweb.com> - - * ace/Stack_Trace.cpp: - - Passed string literals instead of ACE_TEXT string to GetProcAddress as it - accepts LPCSTR which is defined as char*. This should fix wchar (Win32) - build errors. - -Mon Jun 9 20:52:52 2008 Steve Huston <shuston@riverace.com> - - * ace/Asynch_IO.h: Doxygen improvements. - -Mon Jun 9 19:40:56 UTC 2008 Yan Dai <dai_y@ociweb.com> - - * ace/Stack_Trace.h: - * ace/Stack_Trace.cpp: - - Excluded LynxOS, MinGW and Borland builds from stack trace supported - platforms. - -Mon Jun 09 14:46:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/Stack_Trace.cpp: - * ace/Stack_Trace.h: - - Remove TEXT() and TCHAR Fuzz errors. - -Mon Jun 9 11:26:36 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * ace/ace_for_tao.mpc: - - Added Stack_Trace.cpp since Log_Msg.cpp needs it. - -Mon Jun 09 10:42:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/NT_Service.cpp: - - unambiguated call to time_value msec(long) at line 437 - caused by new uint64 non-const setter provided by: - Thu Jun 5 14:52:43 UTC 2008 Steve Huston - -Sun Jun 8 18:09:22 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/platform.m4: - - Add ACE_CHECK_HAS_DLSYM_SEGFAULT_ON_INVALID_HANDLE feature - check, which sets the ACE_HAS_DLSYM_SEGFAULT_ON_INVALID_HANDLE - feature test macro on Linux and OpenBSD systems (as is done in - the canned config-*.h files). Fixes Bugzilla #3141. - -Sat Jun 7 13:56:56 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * ace/Log_Msg.cpp: - - Use ACE_TEXT instead of ACE_LIB_TEXT. - -Sat Jun 7 03:28:01 UTC 2008 Yan Dai <dai_y@ociweb.com> - - Merged in stack_trace_branch that added stack trace support. - - * NEWS: - - Add an entry for stack trace support. - - * ace/Log_Msg.h: - - Added comments for "%?". - - * ace/Log_Msg.cpp: - - Added new conversion character, the question mark, which gets - replaced by a stack trace on supported platforms. - - * ace/Stack_Trace.h: - * ace/Stack_Trace.cpp: - - Added new class that, on supported platforms, will take a - snapshot of the current stack when instantiated. + * netsvcs/lib/Time_Request_Reply.cpp: + * netsvcs/lib/Time_Request_Reply.h: + * netsvcs/lib/Token_Handler.cpp: + * netsvcs/lib/Token_Handler.h: + * netsvcs/lib/TS_Clerk_Handler.cpp: + * netsvcs/lib/TS_Clerk_Handler.h: + * netsvcs/lib/TS_Server_Handler.cpp: + * netsvcs/lib/TS_Server_Handler.h: + Revert svc_export.h file, much more dependencies then I expected + +Tue Feb 17 17:46:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> * ace/ace.mpc: - - Added Stack_Trace in as source. - - * ace/config-macosx-leopard.h: - - Added ACE_HAS_EXECINFO_H define. - + * ace/ace_for_tao.mpc: * ace/Makefile.am: + Readded svc_export.h - Added Stack_Trace.h and Stack_Trace.cpp. +Tue Feb 17 17:45:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> - * configure.ac: + * ace/svc_export.h: + Readded this file, removing it breaks a lot of examples which all + first have to be updated - Added checks for execinfo.h header. +Tue Feb 17 14:27:50 UTC 2009 Olli Savia <ops@iki.fi> - * tests/Stack_Trace_Test.cpp: + * ace/os_include/os_signal.h: + Removed some legacy Linux code. - New test. +Tue Feb 17 14:20:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> - * tests/run_test.lst: + * tests/Based_Pointer_Test_Lib.cpp: + * tests/Based_Pointer_Test_Lib_Export.h: + * tests/DLL_Test.h: + * tests/DLL_Test_Export.h: * tests/tests.mpc: + Added specific export files for these tests - Added Stack_Trace_Test in. - -Fri Jun 6 19:05:14 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * bin/PerlACE/ProcessVX_Unix.pm: - * bin/PerlACE/ProcessVX_Win32.pm: - - Put an eval around the require of Net::Telnet so that these - modules can always be "used", but not necessarily employed. - - * bin/PerlACE/Run_Test.pm: - - Use PerlACE::TargetProcess and PerlACE::HostProcess so that all - test scripts may use them. - - * bin/PerlACE/TargetProcess.pm: - * bin/PerlACE/HostProcess.pm: - - Added modules to simplify the writing of test scripts so that - VxWorks testing can be transparent to the script itself. Having - two packages allows for role reversal (using the -reverse_roles - option to run_test.pl). For example, if you have a test that - consists of a server and a client, the script will look like this: - - $SV = new PerlACE::TargetProcess("server", "-o $iorfile"); - $CL = new PerlACE::HostProcess("client", "-k file://$iorfile"); - - If testing for VxWorks, the server process will be run on the - target and the client process will be run on the host. If the - -reverse_roles option is provided to run_test.pl, the server - process will run on the host and the client process will run on - the target. - -Fri Jun 06 13:00:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/ACE.cpp: - - untabified. - -Fri Jun 06 11:10:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/ACE.cpp: - - Added #include ace/OS_NS_fcntl.h to previous commit of - Thu Jun 5 23:46:14 UTC 2008 J.T. Conklin. - -Fri Jun 6 08:31:06 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> - - * ace/config-hpux-11.00.h: - According to Steve Huston HP-UX does provide strtoull and - wcstoull but they can be used not as straight forward as - in other compilers. I have no access to HP-UX so I added - corresponding TODO comment about ACE_LACKS_STRTOULL and - ACE_LACKS_WCSTOULL that I added previously. - - * ace/config-vxworks6.2.h: - * ace/config-vxworks6.4.h: - * ace/config-vxworks5.x.h: - * ace/config-vxworks6.3.h: - VxWorks doesn't provide wcstoull as well. - Added ACE_LACKS_WCSTOULL. - -Thu Jun 5 23:46:14 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/ACE.cpp: - - Changed daemonize() to open /dev/null and duplicate the file - descriptor as descriptors 0, 1, and 2 if it is invoked with the - closed_all_handles flag set. This avoids problems with I/O - to/from stdin, stdout, and stderr; cin, cout, and cerr; - etc. being written to/read from whatever files/sockets/devices - associated with descriptors 0, 1, and 2 when they are reopened. - This fixes Bugzilla #3338. - -Thu Jun 5 16:30:58 2008 Steve Huston <shuston@riverace.com> - - * NEWS: Added note concerning ACE_Time_Value changes from - Thu Jun 5 14:52:43 UTC 2008 Steve Huston <shuston@riverace.com> - -Tue Jun 3 13:09:27 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> - - * ace/OS_main.h (wmain): Added - - ACE_BEGIN_VERSIONED_NAMESPACE_DECL - ACE_END_VERSIONED_NAMESPACE_DECL - - to the ace_wmain_i macro. Thanks to June Fang <june dot fang at - gmail dot com> for reporting this. - -Thu Jun 5 14:52:43 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/Time_Value.{h inl}: Added a non-const variant of - void msec(ACE_UINT64&) - this allows the msec(ACE_UINT64&) accessor - to be called on both const and non-const objects without error. - Fixes Bugzilla #3336. Thanks to Simon Massey for this idea. - - * tests/Time_Value_Test.cpp: Added a const-checking msec() call and - corrected the test case. - -Thu Jun 05 13:45:00 UTC 2008 Simon Massey <sma@prismtech.com> - - * ace/Get_Opt.cpp: - * ace/Get_Opt.h: - * ace/Get_Opt.inl: - - As a conveniance in wide character builds allow the - options string to be specified as a standard narrow - string (that is converted internally). This type of - use is littered throughout the TAO code. - - * ace/OS_NS_stdio.cpp: - * ace/OS_NS_stdio.h: - * ace/OS_NS_stdio.inl: - - As a conveniance in wide character builds allow the - fopen() call to have parameters of mixed wide/narrow - type. This type of use is littered throughout the TAO - code. - - * ace/OS_NS_stdlib.inl: - - Correct the mkstemp facades, they were not returning - the modified template string under wide character builds, - this caused the tao_idl compiler to be unable to find - the pre-processed files to rename that it had just created. - - * examples/Log_Msg/Log_Msg_MFC/Log_Msg_MFC.mpc: - * examples/Log_Msg/Log_Msg_MFC/Log_Msg_Unicode_MFC.mpc: - - Deleted the Unicode specific version, normal one suffices - after all. - - * bin/tao_orb_tests.lst: - - Disabled problematic LynxOS test. - -Wed Jun 4 22:45:20 2008 Steve Huston <shuston@riverace.com> - - * ace/config-pharlap.h: Added ACE_LACKS_FILELLOCKS. My changes from - Mon Apr 28 21:53:23 UTC 2008 Steve Huston <shuston@riverace.com> - exposed a call to LockFileEx, which is not present on Pharlap - (and, therefore, not present in LabVIEW RT). The alternate API, - LockFile, is present on Pharlap but documented as unsupported. - Since the OS doesn't do multiple processes, there are more effective - ways to synchronize that file locks anyway. - -Wed Jun 4 20:59:16 UTC 2008 Ciju John <johnc at ociweb dot com> - - * ace/SSL/SSL_Context.cpp: - Fix for Bug 3337. ::SSL_add_dir_cert_subjects_to_stack() isn't - ready for Windows. - -Wed Jun 4 17:12:10 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/ACE.cpp (timestamp): - - Make sure to divide sizeof timebuf by sizeof (ACE_TCHAR) to - avoid buffer overflow. This is another instance of the same - problem fixed in: - - Mon Jun 2 15:26:57 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> - -Wed Jun 4 16:05:54 UTC 2008 Steve Huston <shuston@riverace.com> - - * tests/Time_Value_Test.cpp: Added a test case for Bugzilla #3336 - as reported by Aaron Scamehorn. - -Wed Jun 4 14:36:55 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Point_Registry.cpp: - * ace/Monitor_Base.cpp: +Tue Feb 17 13:13:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> - Disabled warning messages reporting an unsuccessful unbind - of a monitor from the monitor point registry. In some - cases, it appears that the default process reactor singleton - is destroyed before the monitor point registry. The reactor - has an associated ACE_Message_Queue, which in turn has an - associated monitor. Somehow in the destruction of the - singleton, the normal chain of destructor calls, which - would remove the monitor from the registry, is bypassed, - leaving the removal to happen when the registry's - destructor is called and the entry in question is no longer - valid. In any case, this happens only at process shutdown, - and there is no memory leak. Ways to make this happen in - a more friendly fashion are being looked into. + * netsvcs/lib/Client_Logging_Handler.cpp: + Runtime fix -Tue Jun 3 16:14:39 UTC 2008 Ken Sedgwick <ken+5a4@bonsai.com> +Tue Feb 17 12:53:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> - * rpmbuild/ace-tao.spec: - * rpmbuild/ace-tao-unusedarg.patch: - * rpmbuild/ace-tao-strrecvfd.patch: + * netsvcs/lib/Client_Logging_Handler.cpp: + logger_key_ is only required when using stream_pipes - Added ace-tao-strrecvfd.patch (related to bug #3291). - Changed make loop construct to abort when subcomponent fails. - Removed PSS from TAO build list. - Added ace-tao-unusedarg.patch (related to bug #3270). - Made qt3 BuildRequires conditional on Fedora version. +Tue Feb 17 11:52:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> -Mon Jun 2 15:26:57 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + * netsvcs/lib/Client_Logging_Handler.cpp: + * netsvcs/lib/Client_Logging_Handler.h: + Added new ACE_NETSVCS_CLIENT_LOGGING_HANDLER_USES_STREAM_PIPES which + can be explicitly set to 0 to just use sockets - * ace/Log_Record.cpp (format_msg): Make sure to divide sizeof ctp - by sizeof (ACE_TCHAR) to avoid buffer overflow. Thanks to June - Fang <june dot fang at gmail dot com> for reporting this. - -Sun Jun 1 02:01:38 UTC 2008 Ken Sedgwick <ken+5a4@bonsai.com> - - * rpmbuild/ace-tao.spec: - * rpmbuild/ace-tao-etc.tar.gz: - * rpmbuild/ace-tao-orbsvcs-daemon.patch: - - Added ace-tao-orbsvcs-daemon.patch to workaround - daemonization problems in rpm installed services. - Fixed tao-cosconcurrency command line arguments. - -Fri May 30 13:57:06 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> - - * ace/config-vxworks6.2.h: - * ace/config-vxworks6.4.h: - * ace/config-vxworks5.x.h: - * ace/config-vxworks6.3.h: - VxWorks doesn't provide strtoull(). - -Fri May 30 13:48:48 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> - - * ace/config-openvms.h: - OpenVMS doesn't provide wcstoull() function. - -Fri May 30 13:37:13 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> - - * ace/OS_NS_stdlib.inl: - Fixed MinGW builds. - - * ace/config-cygwin32.h: - Disabled wcstoull() on cygwin since it doesn't provide - such function. - -Fri May 30 13:17:55 UTC 2008 Simon Massey <sma@prismtech.com> - - * test/INET_Addr_Test_IPV6.cpp: - Resolve Conflict #define INTERFACE with MFC under VC8. - -Fri May 30 10:07:55 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> - - * ace/config-win32-borland.h: - Borland compilers doesn't provide strtoull() and wcstoull(). - - * ace/config-sunos5.5.h: - * ace/config-sunos5.10.h: - wcstoull() didn't exist on Solaris until version 10. - - * ace/config-hpux-11.00.h: - HP-UX doesn't provide strtoull() and wcstoull(). - -Thu May 29 16:08:01 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> - - * ace/OS_NS_stdlib.cpp: - * ace/OS_NS_stdlib.inl: - * ace/OS_NS_stdlib.h: - - Added strtoull() function to ACE_OS. - - * configure.ac: - - Added a check for presence of strtoull() and wcstoull() - in the build environment. - -Thu May 29 15:15:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/INET_Addr.cpp: - - Remove tabs to avoid fuzz warning. - -Thu May 29 10:15:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * tests/Bug_3332_Regression_Test.cpp: - - Remove signed/unsigned comparison warnings. - -Wed May 28 18:13:15 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/INET_Addr.cpp: - * ace/INET_Addr.h: - - Changed ACE_INET_Addr::get_host_addr(char *, int) to be thread - safe by calling ACE_OS::inet_ntop() instead of - ACE_OS::inet_ntoa(). - - Changed ACE_INET_Addr::get_host_addr(void) to call - INET_Addr::get_host_addr(char *, size) with a static buffer. - - Removed the special cases for VxWorks in both of the above - methods which called inet_ntoa_b() which, according to comments, - was for efficency and thread safety. These are are now as - efficent and thread safe (or not, in the case of ACE_INET_Addr:: - get_host_addr(void)) as any other target platform, but no longer - need a string buffer member in every ACE_INET_Addr instance. - -Wed May 28 13:46:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/Malloc.h: - Eliminate a warning from some fanicaly builds. - -Wed May 28 08:10:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * tests/Bug_3332_Regression_Test.cpp: - * tests/Bug_3332_Regression_Test.txt: - * tests/run_test.lst: - * tests/tests.mpc: - - Regression test for the change of: - Fri May 23 12:45:00 UTC 2008 * ace/RB_Tree.cpp. - -Tue May 27 23:10:33 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/Makefile.am: - - Adding missing template and header files. - -Tue May 27 12:11:07 UTC 2008 Chad Elliott <elliott_c@ociweb.com> +Tue Feb 17 10:57:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> * ace/ace.mpc: - - Added missing template and header files. - -Mon May 26 13:54:38 UTC 2008 Olli Savia <ops@iki.fi> - - * ace/config-lynxos.h: - Defined ACE_LACKS_POLL_H. - -Mon May 26 07:28:23 UTC 2008 Ken Sedgwick <ken+5a4@bonsai.com> - - * rpmbuild/ace-tao.spec: - Clarified the tao-cosevent and tao-rtevent "Summary" tags. - -Mon May 26 00:31:51 UTC 2008 Ken Sedgwick <ken+5a4@bonsai.com> - - * rpmbuild/ace-tao.spec: - Fixed rpm build error: bad tar extraction command. - -Sun May 25 17:18:20 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * ace/ace.mwc: - - s/MonitorControl/Monitor_Control/ - -Sun May 25 04:11:37 UTC 2008 Ken Sedgwick <ken+5a4@bonsai.com> - - * rpmbuild/ace-tao.spec: - * rpmbuild/ace-tao-rnq.patch: - * rpmbuild/ace-tao-config-tmplvis.patch: - * rpmbuild/ace-tao-hasicmp.patch: - * rpmbuild/ace-tao-obstack.patch: - * rpmbuild/ace-tao-config-ipv6.patch: - Removed ace-tao-obstack.patch, no longer needed. - Converted ace-tao-config-ipv6.patch into conditional rpm script. - Converted ace-tao-rnq.patch into conditional rpm script. - Converted ace-tao-config-tmplvis.patch and ace-tao-hasicmp.patch - into rpm script. - -Sat May 24 19:50:46 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * bin/MakeProjectCreator/modules/AutomakeWorkspaceHelper.pm: - - Adjust libpaths now that ACE_MonitorControl library has been - renamed to just ACE_Monitor_Control. - -Fri May 23 14:20:48 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * m4/platform.m4: - - Added *mingw64* case in ACE_SET_PLATFORM_MACROS and - ACE_CHECK_FORMAT_SPECIFIERS feature test macros. - -Fri May 23 12:45:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * ace/RB_Tree.cpp: - - Enhancement to stop external pointers to retained items being - invalidated upon key deletion. - -Fri May 23 12:14:54 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Control/Auto_Update_Starter.h: - - Updated filename (which was recently changed) in a comment. - Thanks to Simon Massey <simon.massey@prismtech.com> for - reporting the fuzz warning. - -Fri May 23 08:14:38 UTC 2008 Olli Savia <ops@iki.fi> - - * tests/run_test.lst: - - Run Bug_2980_Regression_Test on LynxOS. - -Fri May 23 00:18:24 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - + * ace/ace_for_tao.mpc: * ace/Makefile.am: + * ace/svc_export.h: + * netsvcs/lib/svc_export.h: + * netsvcs/lib/Makefile.am + Moved svc_export to the netsvcs lib directory, it belongs there - Rename MonitorControl subdirectory to Monitor_Control, to - adapt to this change: - - Wed May 21 19:01:10 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - -Thu May 22 23:04:38 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - - Rename MonitorControl subdirectory to Monitor_Control, to - adapt to this change: - - Wed May 21 19:01:10 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - -Thu May 22 19:29:35 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Base.h (clear): - - Made the method virtual, since it's overridden in the - TAO Notification Service monitors and we are now using - the ACE monitor registry which stores everyhing as the - ACE base class monitor. - -Thu May 22 14:56:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/PerlACE/ProcessVX_Unix.pm: - * bin/PerlACE/ProcessVX_Win32.pm: - Added support for ACE_RUN_VX_EXE_SUBDIR which can be used when - the vxworks executables are build in a subdirectory - -Thu May 22 09:47:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * rpmbuild/ace-tao-codeset.patch: - * ace/Codeset_Registry_db.cpp: - Merged patch into the regular registry - - * ace/OS_NS_sys_uio.cpp: - Const change - - * ace/Service_Config.cpp: + * ace/CDR_Stream.cpp: Layout change - * rpmbuild/ace-tao.spec: - Removed codeset patch - -Thu May 22 09:37:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * rpmbuild/* - New directory with files needed to create rpm's for ACE/TAO. - These files will be improved and we will check whether the - rpm patches can be integrated into the real config files. - Thanks to Ken Sedgwick <ksedgwick at bonsai dot com> for - delivering these files. - -Wed May 21 19:01:10 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/MonitorControl/*: - - Changed directory name to Monitor_Control and renamed all - contained files, classes, libs, MPC projects, ifdef guards, - and macros similarly, to better conform to the ACE style. - - * ace/Monitor_Point_Registry.cpp: - * ace/Monitor_Admin.h: - * ace/Monitor_Admin.cpp: - * bin/MakeProjectCreator/config/ace_mc.mpb: - * examples/Monitor/Bytes_Sent/bytes_sent.cpp: - * examples/Monitor/Bytes_Sent/Makefile.am: - * examples/Monitor/Message_Queue_Size/message_queue_size.cpp: - * examples/Monitor/Message_Queue_Size/Makefile.am: - * examples/Monitor/Constraint/constraint.cpp: - * examples/Monitor/Constraint/Makefile.am: - * examples/Monitor/CPU_Load/cpu_load.cpp: - * examples/Monitor/CPU_Load/Makefile.am: - * examples/Monitor/Num_Threads/Makefile.am: - * examples/Monitor/Num_Threads/num_threads.cpp: - * examples/Monitor/Group/Makefile.am: - * examples/Monitor/Group/group.cpp: - * examples/Monitor/Memory_Usage/Makefile.am: - * examples/Monitor/Memory_Usage/memory_usage.cpp: - - Changes corresponding to the renaming above. - -Wed May 21 14:06:13 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Monitor_Base.h: - * ace/Monitor_Base.cpp: - - Made the update() method non pure virtual. - -Tue May 20 19:33:29 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/Message_Queue_T.cpp: - - Added the stringified process id to the construction of - the message queue size monitor's name, since some tests - were showing that message queues were being created with - the same hex address in different processes. - -Tue May 20 17:55:39 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * ace/Svc_Handler.h: - - Added an enum to be used as flags parameter for close(). - - * ace/Acceptor.cpp: - * ace/Connector.cpp: - * ace/Strategies_T.cpp: - - Use the new enum during the call to close() on the service handler - to indicate the circumstances behind the closure. - - This is part of a set of commits for Bug 2935. - -Tue May 20 09:45:21 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Ping_Socket.{h,cpp}: - Use bool - -Mon May 19 19:26:21 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Log_Msg_Test.cpp: - On VxWorks/LynxOS we didn't test the buffer overflow, but we - shouldn't test this when ACE_LACKS_VSNPRINTF is defined - because it will then fail - -Mon May 19 19:13:21 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Hash_Map_Manager_T.h: + * ace/Lock_Adapter_T.h: + * ace/Message_Block.cpp: + * ace/Message_Block.h: + * ace/Reverse_Lock_T.h: Doxygen change - * ace/Hash_Map_Manager_T.cpp (shared_find) - Set errno to ENOENT when the size is zero - -Mon May 19 19:08:21 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/tao_orb_tests.lst: - Added 2085 and 2243 - -Mon May 19 14:19:21 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * docs/bczar/bczar.html: - Updated mailing lists - - * docs/Download.html: - * etc/index.html: - Updated for x.6.5 - - * ace/config-openvms.h: - Removed sock max of 64kb - -Mon May 19 02:53:21 CDT 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ACE version 5.6.5 released. - -Fri May 16 10:13:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - Reverted change below, causes problems in the builds - * include/makeinclude/platform_linux.GNU: - Only set DLD and LD when they are not set yet - -Fri May 16 07:50:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Based_Pointer_Test.cpp: - Also define a public destructor to silence the gnu warning that - we only have private - -Fri May 16 07:49:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * examples/Monitor/Num_Threads/num_threads.cpp: - Fixed compile errors when monitoring framework is disabled - -Fri May 16 07:41:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * examples/APG/Streams/Answerer.cpp: - * examples/APG/Streams/EndTask.h: - Replaced EndTask with TheEndTask to resolve a name conflict - when using MinGW - -Fri May 16 07:18:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_linux.GNU: - * include/makeinclude/platform_linux_common.GNU: - Support lib64 paths to detect certain features. Thanks to Ken - Sedgwick <ksedgwick at bonsai dot com> for reporting this - - * include/makeinclude/platform_linux.GNU: - Only set DLD and LD when they are not set yet - -Thu May 15 14:00:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Based_Pointer_T.{h,inl}: - * tests/Based_Pointer_Test.cpp: - Fixed bugzilla 3285, make it possible to use - ACE_Based_Pointer<void>. Thanks to Thomas Brownridge - <thomas dot brownridge at lmco dot com> for reporting this. - -Thu May 15 12:36:42 UTC 2008 Phil Mesnier <mesnier_p@ociweb.com> - - * ace/MMAP_Memory_Pool.cpp: - When using a default base address of 0x0 and otherwise wanting - a fixed address, a special flag was used to imply that after the - first address is selected the system in a call to ::mmap() - subsequent calls to ::mmap() reuse the selected base address - as a fixed address. This may cause problems with reloading - persistent data if the stored data contains pointers and the - system selected base address changes from run to run. - - * ace/config-linux-common.h: - The default base address for the x86-64 platform cannot be 0x0. - Doing so causes the system to choose an address which for some - unknown reason causes SEGV errors in Malloc_T. The linux-specific - mmap flag, MAP_32BIT, resolves those segv errors, but on x86-64 - using 0x0 as the default base address on subsequent runs cause - a different assigned base address to be selected. If the data - in the mapped memory contains pointers to mapped memory, those - are then wrong and cause SEGV crashs. By experimentation, it - seems the default base address for powerpc is appropriate for - x86-64. - -Thu May 15 10:19:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/rules.lib.GNU: - Fixed OpenVMS specific part - -Thu May 15 10:17:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Unbounded_Set_Ex.cpp: - Fixed bug in the insert method - - * ace/Unbounded_Set_Test.cpp: - Extended this test to reproduce the bug above and replaced all - ACE_ASSERTS with if checks - -Thu May 15 10:05:00 UTC 2008 Simon Massey <sma at prismtech dot com> - - * bin/msvc_mpc_auto_compile.pl: - Split orbsvcs out from ciao build. - -Thu May 15 07:09:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/ace.mpc: - Added config-win32-msvc9.h, thanks to <tim at burmair dot com> for - reporting this - -Wed May 14 20:41:17 2008 Steve Huston <shuston@riverace.com> - - * ace/Thread_Manager.h: Expanded the documentation, particularly for - spawn[_n]. - -Wed May 14 18:30:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-irix6.x-common.h: - * ace/config-linux-common.h: - * ace/config-sunos5.4-g++.h: - * ace/config-sunos5.4-sunc++-4.x.h: - * ace/config-sunos5.5.h: - * ace/config-tandem.h: - * ace/config-unixware-7.1.0.h: - * ace/config-unixware-7.1.0.udk.h: - * ace/MonitorControl/MemoryUsageMonitor.cpp: - * ace/MonitorControl/MemoryUsageMonitor.h: - * ace/OS.inl: - * ace/os_include/os_unistd.h: - * ace/os_include/sys/os_resource.h: - * ace/POSIX_Proactor.cpp: - * ace/configure.ac: - Seems we already had a ACE_HAS_SYSINFO but this is a different - method but with the same name as we use in the monitoring code. - Added ACE_HAS_SYS_SYSTEMINFO_H as new define, renamed the - linux define to ACE_HAS_LINUX_SYSINFO - -Wed May 14 18:14:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/ACE.cpp: - Layout changes - - * ace/config-vxworks5.x.h: - * ace/OS_NS_unistd.inl: - * ace/Sock_Connect.cpp: - Extended for VxWorks Medusa - - * ace/Logging_Strategy.cpp: - Initialise pointer with 0 - -Wed May 14 14:26:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_vxworks5.5.x.GNU: - Detect medusa pid/pcd/pne - -Wed May 14 12:34:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/os_include/os_pdhmsg.h: - New file - - * ace/config-win32-common.h: - Added ACE_HAS_PDHMSG_H - - * ace/config-win32-mingw.h: - * ace/config-WinCE.h: - Added ACE_LACKS_PDHMSG_H - - * ace/Makefile.am: - Added new file - - * ace/MonitorControl/WindowsMultiInstanceMonitor.cpp: - Use new os_pdhmsg.h - -Wed May 14 12:24:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/os_include/os_kstat.h: - * ace/os_include/sys/os_sysinfo.h: - New header files - - * ace/os_include/os_glob.h: - * ace/os_include/sys/os_statvfs.h: - Removed not needed includes - - * configure.ac: - Added check for sysinfo.h - - * ace/config-linux-common.h: - Added ACE_HAS_SYSINFO and ACE_HAS_SYSINFO_H - - * ace/Makefile.am: - Added new files - - * ace/MonitorControl/CPULoadMonitor.h: - * ace/MonitorControl/MemoryUsageMonitor.cpp: - * ace/MonitorControl/MemoryUsageMonitor.h: - Use the new defines and header files - -Wed May 14 10:41:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/*: - * examples/Monitor/*: - Renamed MonitorControl namespace to Monitor_Control to comply - to ACE coding guidelines - -Wed May 14 09:48:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/run_test.lst: - Enabled some more tests on vxworks - -Tue May 13 19:20:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/diff-builds.pl: - Updated for move of test stats - -Mon May 12 12:19:15 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * examples/Monitor/MC_Test_Utilities.h: - * examples/Monitor/Bytes_Sent/bytes_sent.cpp: - * examples/Monitor/Message_Queue_Size/message_queue_size.cpp: - * examples/Monitor/Constraint/constraint.cpp: - * examples/Monitor/CPU_Load/cpu_load.cpp: - * examples/Monitor/MC_Test_Utilities.cpp: - * examples/Monitor/Group/group.cpp: - * examples/Monitor/Memory_Usage/memory_usage.cpp: - - Added appropriate preprocessor guards to ensure a - successful build when ACE_HAS_MONITOR_FRAMEWORK is - defined as 0. - - * examples/Monitor/Message_Queue_Size/Message_Queue_Size.mpc: - - Removed outdated macro additions from project. - -Fri May 9 18:58:52 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * ace/Service_Config.h: - * ace/Service_Config.inl: - * ace/Service_Config.cpp: - * ace/Service_Gestalt.cpp: - - Calling ACE_Service_Config::open() does not correctly initialize - the SC global state (process name, in particular but others - too). Fixing bug#3319. - -Fri May 9 17:58:21 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * bin/MakeProjectCreator/modules/AutomakeWorkspaceHelper.pm: - - Revert changes of: - Thu May 8 22:13:24 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - Now that ETCL Parser library has been renamed back to - ACE_ETCL_Parser. - -Fri May 9 17:55:39 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * examples/Monitor/Bytes_Sent/Makefile.am: - * examples/Monitor/Message_Queue_Size/Makefile.am: - * examples/Monitor/Constraint/Makefile.am: - * examples/Monitor/CPU_Load/Makefile.am: - * examples/Monitor/Num_Threads/Makefile.am: - * examples/Monitor/Group/Makefile.am: - * examples/Monitor/Memory_Usage/Makefile.am: - * ace/ETCL/Makefile.am: - * ace/MonitorControl/Makefile.am: - - Regenerated. - -Fri May 9 14:17:11 UTC 2008 William R. Otte <wotte@william-r-ottes-macbook-pro.local> - - * include/makeinclude/platform_macosx_icc.GNU: + * netsvcs/lib/Client_Logging_Handler.cpp: + Make sure we receive the expected length - Support for ICC on Intel Macs. + * netsvcs/lib/lib.mpc: + Set the correct export define -Fri May 9 12:04:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-all.h: - Added ACE_HAS_MONITOR_POINTS which currently is set to 0. We will - enable this in a few builds to test them in detail. This way the - user can decide to enable the monitor framework but not get the - ACE builtin monitor points + * netsvcs/lib/Client_Logging_Handler.h: + * netsvcs/lib/Name_Handler.cpp: + * netsvcs/lib/Name_Handler.h: + * netsvcs/lib/Server_Logging_Handler.h: + * netsvcs/lib/Server_Logging_Handler_T.cpp: + * netsvcs/lib/Time_Request_Reply.cpp: + * netsvcs/lib/Time_Request_Reply.h: + * netsvcs/lib/Token_Handler.cpp: + * netsvcs/lib/Token_Handler.h: + * netsvcs/lib/TS_Clerk_Handler.cpp: + * netsvcs/lib/TS_Clerk_Handler.h: + * netsvcs/lib/TS_Server_Handler.cpp: + * netsvcs/lib/TS_Server_Handler.h: + Updated include of svc_export and no need to set the + build define + +Mon Feb 16 18:58:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> - * ace/CDR_Stream.cpp: * ace/CDR_Stream.h: - * ace/CDR_Stream.inl: - * ace/Message_Queue_T.cpp: - * ace/Message_Queue_T.h: - Added monitor points - - * ace/Codeset_IBM1047.cpp: - Removed code to silence the hp compiler, this is not needed in other - files - -Fri May 9 11:44:59 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * bin/MakeProjectCreator/config/ace_etcl_parser.mpb: - - Changed the filename etcl_parser.mpb to the one - above, for consistency in the names of ACE-related - files. Also changed the corresponding library name - to ACE_ETCL_Parser. - - * ace/ETCL/ACE_ETCL_Parser.pc.in: - - Changed the name of ETCL_Parser.pc.in likewise. - Also changed the contents of this file accordingly. - - * ace/ETCL/ETCL.mpc: - * ace/MonitorControl/MonitorControl.mpc: - * bin/MakeProjectCreator/config/ace_mc.mpb: - - Changes corresponding to the name changes above. - -Thu May 8 23:03:15 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * bin/MakeProjectCreator/config/ace_zlib.mpb: - - ACE-specific zlib base project that overrides library settings - in MPC's own zlib base project for the automake build. - -Thu May 8 22:13:24 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * bin/MakeProjectCreator/modules/AutomakeWorkspaceHelper.pm: - - Adjust libpaths now that ACE_ETCL_Parser library has been - renamed to just ETCL_Parser. - -Thu May 8 22:07:40 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/ETCL/Makefile.am: - - Regenerated. - - * ace/ETCL/ACE_ETCL.pc.in: - * ace/ETCL/ETCL_Parser.pc.in: - - New pkg-config template files. - - * ace/ETCL/ETCL.mpc: - - Add Pkgconfig_Files sections for ACE_ETCL and ETCL_Parser - projects. - -Thu May 8 21:06:29 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/ETCL/ETCL_Constraint_Visitor.h: - * ace/ETCL/ETCL_Constraint_Visitor.cpp: - - Removed a no-op method mean to be overridden - in derived visitors, but then abandoned. - -Fri May 2 17:45:13 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> - - * docs/ACE-guidelines.html: Updated the style guide to discuss the - use of '_' vs intercaps. - -Thu May 8 10:51:29 UTC 2008 Steve Huston <shuston@riverace.com> - - * include/makeinclude/platform_sunos5_g++.GNU: Ensure -pipe is not - inserted into CCFLAGS twice. Similar to earlier change from - Wed Jan 23 17:23:31 UTC 2008 Steve Huston <shuston@riverace.com> - Fixes Bugzilla #3232. - -Thu May 8 08:06:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/ETCL/ETCL_l.cpp: - * ace/ETCL/ETCL_y.cpp: - Fixed casing of include - -Wed May 7 19:28:35 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/Unbounded_Set.{h inl}: Replaced typedef BASE with base_type. - Avoids a BASE macro on AIX. - -Wed May 7 19:02:51 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/ETCL/ETCL_include: - - Removed this directory. - - * ace/ETCL/etcl_parser_export.h: - - Relocated here from ace/ETCL/ETCL_include. - - * bin/MakeProjectCreator/config/etcl_parser.mpb: - - Renamed this file from ace_etcl_parser.mpb. - - * ace/ETCL/ETCL_l.cpp: - * ace/ETCL/ETCL.yy - * ace/ETCL/ETCL_Interpreter.cpp: - * ace/ETCL/ETCL.ll: - * ace/ETCL/ETCL_y.cpp: - * ace/ETCL/ETCL_Interpreter.h: - * ace/ETCL/ETCL.mpc: - * ace/MonitorControl/MonitorControl.mpc: - * bin/MakeProjectCreator/config/ace_mc.mpb: - - All changes in this checkin are to remove - unnecessary things as a result of making the - ETCL parser the only one used. The corresponding - parser in TAO is eliminated. - -Wed May 7 17:11:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_linux_icc.GNU: - Added ICC 11.0 - -Wed May 7 14:28:54 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * bin/ChangeLogEditor/FileLocatorFactory.pm: - - Changed to detect Subversion before CVS. - -Wed May 7 14:12:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Bug_3319_Regression_Test.cpp: - * tests/run_test.lst: - * tests/tests.mpc: - Added regression for bugzilla 3319 - -Wed May 7 10:52:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Hash_Map_Manager_T.cpp: - Fixed GCC warning about maybe unitialised use and also - use prefix decrement and no need for some intermediate variables - -Wed May 7 08:42:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-vxworks5.x.h: - Added ACE_HAS_4_4BSD_SENDMSG_RECVMSG - -Wed May 7 07:03:29 UTC 2008 William R. Otte <wotte@dre.vanderbilt.edu> - - * ace/Unbounded_Set.h - - Fuzz fix. - -Wed May 7 06:33:30 UTC 2008 William R. Otte <wotte@dre.vanderbilt.edu> - - * ace/Unbounded_Set.inl - - Fix unused argument warning. - -Tue May 6 17:03:17 UTC 2008 William R. Otte <wotte@dre.vanderbilt.edu> - - * ace/Hash_Map_Manager_T.cpp: - Fixed segfault if shared_find is called on a map of size zero. - - * ace/Log_Msg.h: - - Comments for trace_active were swapped. - - * ace/Node.h: - * ace/Node.cpp: - * ace/Unbounded_Set.h: - * ace/Unbounded_Set.inl: - * ace/Unbounded_Set.cpp: - * ace/Unbounded_Set_Ex.h: - * ace/Unbounded_Set_Ex.inl: - * ace/Unbounded_Set_Ex.cpp: - - Extended the Unbounded_Set to include a comparator template parameter, - which must implement operator (), which returns true if the items are - equivalent. This class has been renamed Unbounded_Set_Ex. - - Unbounded_Set is now implemented in terms of Unbounded_Set_Ex with a - comparator that uses operator== to compare the items. - - * ace/Service_Gestalt.h: - * tests/Unbounded_Set_Test.cpp: - - Slight updates to conform with new implementation. - - * NEWS - - Added description for above. - -Tue May 6 12:37:43 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/ETCL/ETCL_Constraint.h: - * ace/ETCL/ETCL_Constraint_Visitor.cpp: - * ace/ETCL/ETCL_Constraint_Visitor.h: - * ace/ETCL/ETCL_Constraint.inl: - * ace/ETCL/ETCL_Constraint.cpp: - - Moved code from the TAO ETCL classes to base classes - here. - -Tue May 6 08:27:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/PerlACE/ProcessVX_Unix.pm: - * bin/PerlACE/ProcessVX_Win32.pm: - Added support for ACE_RUN_VX_TGT_TELNET_HOST and - ACE_RUN_VX_TGT_TELNET_PORT so that an explicit telnet server - can be configured. If not specified we use ACE_RUN_VX_TGTHOST - which also specifies the ip address that is used as endpoint - for the corba servers - -Mon May 5 17:09:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/build_dll.bor: - * include/makeinclude/build_exe.bor: - * include/makeinclude/build_lib.bor: - Handle files with cxx extension just as we could handle cpp files - -Mon May 5 07:53:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/os_include/os_pdh.h: - New os_include file for pdh.h - - * ace/configure.ac: - Added check for pdh.h - - * ace/Makefile.am: - Added new file - - * ace/config-win32-common.h: - * ace/config-win32-mingw.h: - * ace/config-WinCE.h: - Windows has pdh.h, but not MinGW and not WinCE - - * ace/MonitorControl/BytesReceivedMonitor.cpp: - * ace/MonitorControl/BytesReceivedMonitor.h: - * ace/MonitorControl/BytesSentMonitor.cpp: - * ace/MonitorControl/BytesSentMonitor.h: - * ace/MonitorControl/CPULoadMonitor.cpp: - * ace/MonitorControl/CPULoadMonitor.h: - * ace/MonitorControl/MemoryUsageMonitor.cpp: - * ace/MonitorControl/MemoryUsageMonitor.h: - * ace/MonitorControl/NumThreadsMonitor.cpp: - * ace/MonitorControl/NumThreadsMonitor.h: - * ace/MonitorControl/PacketsReceivedMonitor.cpp: - * ace/MonitorControl/PacketsReceivedMonitor.h: - * ace/MonitorControl/PacketsSentMonitor.cpp: - * ace/MonitorControl/PacketsSentMonitor.h: - * ace/MonitorControl/WindowsMonitor.cpp: - * ace/MonitorControl/WindowsMonitor.h: - * ace/MonitorControl/WindowsMultiInstanceMonitor.cpp: - * ace/MonitorControl/WindowsMultiInstanceMonitor.h: - Use ACE_HAS_WIN32_PDH instead of ACE_WIN32 because with WinCE and - MinGW we don't have pdh on windows - -Mon May 5 07:37:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * examples/Monitor/CPU_Load/cpu_load.cpp: - * examples/Monitor/Group/group.cpp: - Fixed C90 warnings - -Mon May 5 07:30:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * examples/Monitor/MC_Test_Utilities.mpc: - Don't build with ace_for_tao enabled - -Sat May 3 17:00:07 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * bin/MakeProjectCreator/modules/AutomakeWorkspaceHelper.pm: - - Add relative libdirs for new ACE_ETCL, ACE_ETCL_Parser, and - ACE_MonitorControl libraries. - -Sat May 3 13:47:21 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * examples/Makefile.am: - - Regenerated. - -Fri May 2 23:58:38 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - - Build new example directories. - - * examples/Monitor/Bytes_Sent/Makefile.am: - * examples/Monitor/Message_Queue_Size/Makefile.am: - * examples/Monitor/Constraint/Makefile.am: - * examples/Monitor/CPU_Load/Makefile.am: - * examples/Monitor/Num_Threads/Makefile.am: - * examples/Monitor/Group/Makefile.am: - * examples/Monitor/Memory_Usage/Makefile.am: - * examples/Monitor/Makefile.am: - * examples/Semaphores/Makefile.am: - - New Makefile.am's. - -Fri May 2 23:29:06 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/ETCL/Makefile.am: - - Regenerated. - - * ace/ETCL/ETCL.mpc: - - Add automake specific rule for includes. - -Fri May 2 22:53:46 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - - Build ace/ETCL and ace/MonitorControl. - -Fri May 2 21:54:40 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/ETCL/Makefile.am: - * ace/MonitorControl/Makefile.am: - - New Makefile.am's. - - * ace/Makefile.am: - - Regenerated. - -Fri May 2 18:36:41 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/ETCL/ETCL_Interpreter.h: - - Fix for build problems with versioned namespaces turned on. - -Fri May 2 17:50:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-vxworks6.2.h: - * ace/config-vxworks6.3.h: - * ace/config-vxworks6.4.h: - Only define _C99 when it is not defined yet - -Fri May 2 17:20:37 UTC 2008 Steve Huston <shuston@riverace.com> - - * tests/Message_Queue_Test.cpp: Removed the delay sleep between loop - iterations - it causes the test to time out too often. Increased - the message count back to multiples of 100,000. - -Fri May 2 15:34:55 UTC 2008 Steve Huston <shuston@riverace.com> - - * tests/RW_Process_Mutex_Test.cpp: Fixed compile warning about - redundant variable. - -Fri May 2 11:07:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/MMAP_Memory_Pool.{h,cpp}: - Doxygen improvements and moved the documentation about the - handle_signal method from the cpp to the header file so that - it appears in the doxygen documentation - -Fri May 2 09:36:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/tao_orb_tests.lst: - Added Bug_3315_Regression - -Fri May 2 08:25:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/msvc_static_order.lst: - Added new libs - -Fri May 2 08:15:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/ace_for_tao.mpc: - Added new monitor files - -Fri May 2 08:04:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Monitor_Admin.cpp - * ace/Monitor_Admin.h - * ace/MonitorControl/AutoUpdateStarter.cpp - * ace/MonitorControl/AutoUpdateStarter.h - * ace/MonitorControl/MonitorControl_utils.h - Updated for naming conventions - -Fri May 2 07:47:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * examples/Monitor/Bytes_Sent/bytes_sent.cpp - * examples/Monitor/Constraint/constraint.cpp - * examples/Monitor/CPU_Load/cpu_load.cpp - * examples/Monitor/Group/group.cpp - * examples/Monitor/Memory_Usage/memory_usage.cpp - * examples/Monitor/Message_Queue_Size/message_queue_size.cpp - * examples/Monitor/Num_Threads/num_threads.cpp - Updated include - - * examples/Monitor/Bytes_Sent/Bytes_Sent.mpc - * examples/Monitor/Constraint/Constraint.mpc - * examples/Monitor/Num_Threads/Num_Threads.mpc - * examples/Monitor/Group/Group.mpc - * examples/Monitor/CPU_Load/CPU_Load.mpc - * examples/Monitor/Message_Queue_Size/Message_Queue_Size.mpc - Don't build with ace_for_tao - -Thu May 1 22:35:17 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/MonitorControl/MonitorControl.mpc: - * bin/MakeProjectCreator/config/ace_mc.mpb: - Avoid wince - it lacks the needed PDH capability. - -Thu May 1 18:27:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/MonitorControl/MonitorControl.mpc: - * bin/MakeProjectCreator/config/ace_mc.mpb: - Use ACE_MonitorControl as shared library name - -Thu May 1 17:31:01 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * ace/Service_Config.cpp: Removed an assert guarding the case when - the current thread has no associated configuration context. Added - code that would initialize the thread's configuration context with - the global, instead. This addresses bug# 3315. - -Thu May 1 17:11:48 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/ace.mwc: - - Added MonitorControl directory to the workspace. - -Thu May 1 17:05:37 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ace/MonitorControl/PacketsSentMonitor.h: - * ace/MonitorControl/WindowsMultiInstanceMonitor.cpp: - * ace/MonitorControl/WindowsMonitor.cpp: - * ace/MonitorControl/PacketsReceivedMonitor.cpp: - * ace/MonitorControl/MonitorGroup.h: - * ace/MonitorControl/MonitorQuery.h: - * ace/MonitorControl/NumThreadsMonitor.cpp: - * ace/MonitorControl/PacketsSentMonitor.cpp: - * ace/MonitorControl/MonitorGroup.cpp: - * ace/MonitorControl/WindowsMultiInstanceMonitor.h: - * ace/MonitorControl/WindowsMonitor.h: - * ace/MonitorControl/MonitorControl_utils.h: - * ace/MonitorControl/MonitorQuery.cpp: - * ace/MonitorControl/PacketsReceivedMonitor.h: - * ace/MonitorControl/NumThreadsMonitor.h: - - Changed header includes to be consistently relative - to $ACE_ROOT. - -Thu May 1 16:11:12 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * MonitorControl/*: - - Moved this directory to $ACE_ROOT/ace. - -Thu May 1 15:56:58 UTC 2008 Steve Huston <shuston@riverace.com> - - * tests/run_test.lst: Change Bug_2980_Regression_Test's !MSVC to - !Win32. The test won't run on Windows per its comments, but no - XML configs set MSVC - they set Win32. - -Thu May 1 15:27:25 UTC 2008 Steve Huston <shuston@riverace.com> - - * tests/Message_Queue_Test.cpp: In the counting test, run multiples - of 50,000 instead of 100,000, blocks. The test is timing out on a - number of platforms. - - * tests/RW_Process_Mutex_Test.cpp: Fix signed/unsigned warnings and - wchar build error. Changed the default lock name to something other - than the program's name. Using the program name produces "text - file busy" when attempting a file lock on it... doh... - -Thu May 1 14:47:33 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * MonitorControl/examples/*: - - Removed this directory and moved its contents to - $ACE_ROOT/examples/Monitor. - - * bin/MakeProjectCreator/config/acelib.mpb: - - Cosmetic changes. - -Thu May 1 14:37:03 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * bin/MakeProjectCreator/modules/VXTestProjectCreator.pm: - - Override the warn_useless_project() method so that we are no - longer warned about "no useful targets" for this project type. - -Wed Apr 30 22:01:10 UTC 2008 Steve Huston <shuston@riverace.com> - - * tests/RW_Process_Mutex_Test.cpp: New test for proper functioning - of ACE_RW_Process_Mutex. - - * tests/tests.mpc: - * tests/run_test.lst: Add RW_Process_Mutex_Test. - -Wed Apr 30 21:14:45 UTC 2008 James H. Hill <hillj@isis.vanderbilt.edu> - - * ace/Hash_Map_Manager_T.h: - - Two of the backwards compatible iterators for - ACE_Hash_Map_Manager incorrectly defined the iterator_category - trait based on the container_type, which does not have an - iterator_category. Now the trait is defined in terms of its - base class. This resolved Bugzilla Bug #3314. - -Wed Apr 30 16:49:27 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * MonitorControl/PacketsSentMonitor.h: - * MonitorControl/BytesReceivedMonitor.h: - * MonitorControl/PacketsReceivedMonitor.h: - * MonitorControl/BytesSentMonitor.h: - - Added include of export header file, since it's not - pulled in indirectly on Solaris builds. - - * MonitorControl/WindowsMultiInstanceMonitor.cpp: - - Fixed signed/unsigned comparison warnings on wchar builds. - -Wed Apr 30 16:24:41 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * MonitorControl/CPULoadMonitor.cpp: - * MonitorControl/WindowsMonitor.cpp: - * MonitorControl/WindowsMultiInstanceMonitor.cpp: - * MonitorControl/MemoryUsageMonitor.cpp: - * MonitorControl/NumThreadsMonitor.cpp: - * MonitorControl/LinuxNetworkInterfaceMonitor.cpp: - - Fixed wchar build errors. - -Wed Apr 30 13:49:52 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/UUID.cpp (get_timestamp_and_clocksequence): Case clock sequence - value using ACE_UINT16 instead of u_char to prevent duplicates - when many UUIDs are generated quickly. Thanks to Wim van den Boogaard - for this fix. Resolves Bugzilla #3313. - -Tue Apr 29 19:52:48 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/Proactor.cpp: Simplify the timer_handler_ task spawn and - shutdown. Also, if close() sees an error from the implementation's - close, don't stop closing. Things are most likely already ripped - apart too far to recover from, and it's likely to cause a hang to - just try to stop closing now. - - * ace/POSIX_Asynch_IO.cpp: Correctly handle the ACE_Message_Block - pointers passed to operations and later updating when complete. - Thanks to Fernando C. Jeronymo <fernando dot fcavalcanti at - gmail.com> for diagnosing this problem. - - * THANKS: Added Fernando C. Jeronymo to the Hall of Fame. - - * tests/Proactor_UDP_Test.cpp: Fix to close down correctly in - half-duplex mode. - -Tue Apr 29 19:12:53 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * bin/MakeProjectCreator/config/ace_etcl_parser.mpb: - - Changed the path of the 'includes' line to match - the new location of ETCL. - - * MonitorControl/Constraint_Interpreter.cpp: - * MonitorControl/Constraint_Visitor.h: - * MonitorControl/Constraint_Visitor.cpp: - * MonitorControl/Constraint_Interpreter.h: - - Updated #includes to match the new location of ETCL. - - * MonitorControl/AutoUpdateStarter.h: - - Moved location of enabled monitors check, it was - previous to any place it could see the #define in - an included file. - - * MonitorControl/examples/Constraint/constraint.cpp: - * MonitorControl/examples/CPU_Load/cpu_load.cpp: - * MonitorControl/examples/Group/group.cpp: - - Some compile warnings fixed. - -Tue Apr 29 18:37:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * MonitorControl/AutoUpdateStarter.h: - * MonitorControl/Constraint_Interpreter.h: - * MonitorControl/Constraint_Visitor.h: - * MonitorControl/LinuxNetworkInterfaceMonitor.h: - * MonitorControl/MonitorControl.h: - * MonitorControl/MonitorQuery.h: - * MonitorControl/WindowsMonitor.h: - * MonitorControl/WindowsMultiInstanceMonitor.h: - Make sure we have at least one include before pragma once - -Tue Apr 29 18:27:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * docs/bczar/bczar.html: - * etc/index.html: - Updated Beta to Micro - -Tue Apr 29 18:02:22 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * ETCL/*: - - Moved this directory and all its contents to $ACE_ROOT/ace. - Also changed #includes to be relative to $ACE_ROOT. - - * ace/ace.mwc: - - Added ETCL directory. - - * docs/svn/svn-prefs.reg: - - Added *.diff to list. - -Tue Apr 29 17:45:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * MonitorControl/examples/Bytes_Sent/bytes_sent.cpp: - * MonitorControl/examples/Constraint/constraint.cpp: - * MonitorControl/examples/CPU_Load/cpu_load.cpp: - * MonitorControl/examples/Group/group.cpp: - * MonitorControl/examples/Memory_Usage/memory_usage.cpp: - * MonitorControl/examples/Message_Queue_Size/message_queue_size.cpp: - * MonitorControl/examples/Num_Threads/num_threads.cpp: - Updated main for unicode - -Tue Apr 29 13:14:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Test_Output.cpp: - Check for ACE_VXWORKS - -Tue Apr 29 13:12:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * MonitorControl/AutoUpdateStarter.cpp: - * MonitorControl/Constraint_Interpreter.cpp: - * MonitorControl/Constraint_Interpreter.h: - * MonitorControl/Constraint_Visitor.cpp: - * MonitorControl/Constraint_Visitor.h: - * MonitorControl/CPULoadMonitor.cpp: - * MonitorControl/LinuxNetworkInterfaceMonitor.cpp: - * MonitorControl/NumThreadsMonitor.cpp: - * MonitorControl/WindowsMonitor.cpp: - * MonitorControl/WindowsMultiInstanceMonitor.cpp: - Updated includes to fix errors and improve compile speed when - this lib is disabled - -Tue Apr 29 08:16:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/MakeProjectCreator/templates/vxtest.mpd: - Zap empty line - - * bin/PerlACE/ProcessVX.pm: - * bin/PerlACE/ProcessVX_Unix.pm: - * bin/PerlACE/ProcessVX_Win32.pm: - Improved handling of vxtest file - -Tue Apr 29 07:23:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/MEM_Connector.cpp: - * ace/Service_Manager.cpp: - * ace/SOCK_Dgram_Mcast.cpp: - Reverted accidental commits from Doug - -Tue Apr 29 06:32:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/MakeProjectCreator/modules/VXTestProjectCreator.pm: - Generate exename.vxtest instead of project name - - * bin/MakeProjectCreator/templates/vxtest.mpd: - Don't generate ld < - -Mon Apr 28 22:34:10 UTC 2008 Steve Huston <shuston@riverace.com> - - * tests/Proactor_UDP_Test.cpp: Fix compile errors on non-Windows. - -Mon Apr 28 21:53:23 UTC 2008 Steve Huston <shuston@riverace.com> - - * docs/ACE-development-process.html: Fix a few remaining nits. - - * ace/OS_NS_stdio.inl: Removed all the pre-ACE_HAS_WINNT4 code in the - file locks methods. This was the only place left in ACE that - referred to ACE_HAS_WINNT4; all pre-NT4 support was removed last - year from the rest of ACE. This also corrects behavior of file - locks as well as ACE_RW_Process_Mutex. - - * ace/RW_Process_Mutex.h: Doxygen improvements. - - * ace/SOCK_CODgram.h: Doxygen improvements. - - * ace/SOCK_CODgram.cpp (open): If either of the local or remote - addresses is specified, use its address family rather than the - value of protocol_family. If both are specified, they must match. - - * tests/Message_Queue_Test.cpp: Added a counting test to validate the - queue's message counting. - - * tests/Proactor_UDP_Test.cpp: New test for UDP with ACE_Proactor. - - * tests/tests.mpc: - * tests/run_test.lst: Add Proactor_UDP_Test. - -Mon Apr 28 19:21:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/PerlACE/ProcessVX.pm: - * bin/PerlACE/ProcessVX_Unix.pm: - * bin/PerlACE/ProcessVX_Win32.pm: - Use the vxtest file when testing shared non rtp - -Mon Apr 28 19:06:10 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * MonitorControl/MonitorControl.h: - - Added ACE_HAS_MONITOR_FRAMEWORK guard to this file. - -Mon Apr 28 18:24:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/ace_wchar.h: - Added defines needed to build MonitorControl unicode - - * MonitorControl/WindowsMonitor.cpp: - * MonitorControl/WindowsMultiInstanceMonitor.cpp: - Make a correct difference between unicode and non unicode builds - - * ace/Strategies_T.{h,inl}: - Refcount from base is now a long - -Mon Apr 28 18:23:55 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * bin/PerlACE/ProcessVX_Unix.pm: - - Fixed a bug in my previous commit of this file, - $cmdnr was not updated when the unload commands were added. - -Mon Apr 28 17:59:43 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> - - * Constraint_Interpreter.cpp: - * Constraint_Visitor.h: - * MonitorGroup.h: - * MonitorQuery.h: - * AutoUpdateStarter.h: - * Constraint_Visitor.cpp: - * MonitorGroup.cpp: - * Constraint_Interpreter.h: - * MonitorQuery.cpp: - * AutoUpdateStarter.cpp: - * MonitorControl_utils.h: - - Added ACE_HAS_MONITOR_FRAMEWORK guards - similarly to the other files in the library. - -Mon Apr 28 17:54:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * MonitorControl/BytesReceivedMonitor.cpp: - * MonitorControl/BytesSentMonitor.cpp: - * MonitorControl/CPULoadMonitor.cpp: - * MonitorControl/MemoryUsageMonitor.cpp: - * MonitorControl/NumThreadsMonitor.cpp: - * MonitorControl/PacketsReceivedMonitor.cpp: - * MonitorControl/PacketsSentMonitor.cpp: - * MonitorControl/WindowsMonitor.cpp: - * MonitorControl/WindowsMonitor.h: - * MonitorControl/WindowsMultiInstanceMonitor.cpp: - * MonitorControl/WindowsMultiInstanceMonitor.h: - Fixed unicode compile problems on windows - -Mon Apr 28 13:25:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * examples/APG/Streams/streams.mpc: - * examples/C++NPv2/C++NPv2.mpc: - Use base projects - -Mon Apr 28 13:20:40 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> - - * ace/Vector_T.inl (ACE_Vector): Take another shot at fixing the - max_size() problem. - -Mon Apr 28 12:45:18 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * bin/tao_orb_tests.lst: - - Added the new TAO HandleExhaustion test for all but Windows. - -Mon Apr 28 12:21:55 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> - - * ace/Vector_T.inl (ACE_Vector): Zapped the "this->" in "this->max_size()". - Thanks to Karl-Heinz <wind at itq dot de> for reporting this. - -Mon Apr 28 12:13:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_sunos5_common.GNU: - Added kstat support needed for monitoring lib on solaris - -Mon Apr 28 12:05:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * MonitorControl/*: - Merge from MonitorControl branch. - -Mon Apr 28 11:37:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-all.h: - * ace/Global_Macros.h: - Moved set of define to config-all - - * ace/Truncate.h: - * ace/Condition_T.h: - Doxygen fix - -Mon Apr 28 11:36:46 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * ace/Acceptor.h: - * ace/Acceptor.cpp: - - Added a virtual method to facilitate the configurable handling of - accept() errors. - -Mon Apr 28 11:30:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ETCL/*: - New ETCL library for ACE - - * bin/MakeProjectCreator/config/ace_etcl.mpb: - * bin/MakeProjectCreator/config/ace_etcl_parser.mpb: - * bin/MakeProjectCreator/config/ace_mc.mpb: - New base projects - - * bin/MakeProjectCreator/config/acenosubsets.mpb: - Layout changes - -Mon Apr 28 10:31:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Monitor_Admin.cpp: - * ace/Monitor_Admin.h: - * ace/Monitor_Admin_Manager.cpp: - * ace/Monitor_Admin_Manager.h: - * ace/Monitor_Base.cpp: - * ace/Monitor_Base.h: - * ace/Monitor_Base.inl: - * ace/Monitor_Control_Action.cpp: - * ace/Monitor_Control_Action.h: - * ace/Monitor_Control_Types.cpp: - * ace/Monitor_Control_Types.h: - * ace/Monitor_Point_Registry.cpp: - * ace/Monitor_Point_Registry.h: - * ace/ace.mpc: - * ace/Global_Macros.h: - First commit coming from the Monitor branch. This will add a - monitoring framework to ACE with which size of queues, cpu load - and other resources can be monitored. - -Sun Apr 27 05:55:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Service_Object.cpp: - Fixed big introduced by some cleanup I did - -Fri Apr 25 21:47:54 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * bin/MakeProjectCreator/templates/vxtest.mpd: - * bin/PerlACE/ProcessVX_Unix.pm: - - Began integration of the foo.vxtest files into the actual testing - process. This needs to get enhanced in ProcessVX_Win32.pm too. - -Fri Apr 25 21:21:56 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * ace/Object_Manager.cpp: - - Removed a comment that no longer applies. - - * bin/PerlACE/Process_Win32.pm: - - Changed the check for failure to spawn a process, in order to avoid - a race condition (the spawned process exits normally before we even - check its status). - - * bin/auto_run_tests.pl: - - With -s, account for different parameter formatting requirements in - the win32 and posix sandbox programs. - -Fri Apr 25 14:25:00 UTC 2008 Simon Massey <sma at pristmech dot com> - - * tests/Unload_libACE.cpp: - I've backed out this change due to lack of time to chase up - the lack of macro definitions. This will need to be revisited. - -Fri Apr 25 10:40:00 UTC 2008 Simon Massey <sma at pristmech dot com> - - * tests/Unload_libACE.cpp: - This test wasn't using ACE_TMAIN. - -Fri Apr 25 09:10:00 UTC 2008 Simon Massey <sma at pristmech dot com> - - * bin/MakeProjectCreator/config/global.features: - * examples/Log_Mgs/Log_Msg_MFC/Log_Mgs_MFC.mpc: - Feature name "uses_wchar" already used within ACE/TAO. Replaces - the "unicode" feature name. Template / project names within MPC - still named unicode. - -Thu Apr 24 18:45:32 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-linux-common.h: - When ACE_LACKS_STROPTS_H not is defined we assume we have - strbut so we set ACE_HAS_STRBUF_T - -Thu Apr 24 16:47:16 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * bin/tao_orb_tests.lst: - - The DLL_ORB test requires threads. Disable it when the ST config - is used. - -Thu Apr 24 15:05:50 UTC 2008 Simon McQueen <sm@prismtech.com> - - * bin/tao_orb_tests.lst: - - Scheduled new regression test for bug #3299. - -Thu Apr 24 09:55:00 UTC 2008 Simon Massey <sma at pristmech dot com> - - * bin/MakeProjectCreator/config/ace_unicode.mpb: - * bin/MakeProjectCreator/config/global.features: - Default unicode=0 feature. Unicode does not depend upon MFC, - may be used together as necessary. - - * examples/Log_Mgs/Log_Msg_MFC/Log_Mgs_MFC.mpc: - * examples/Log_Mgs/Log_Msg_MFC/Log_Mgs_Unicode_MFC.mpc: - Split out the unicode requirements. - -Thu Apr 24 05:58:32 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Refcountable_T.{cpp,inl}: - Use ACE_INLINE - -Thu Apr 24 05:47:32 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-posix.h: - Reverted change below, already made a similar change which is less risky - - Thu Apr 17 19:27:23 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> - * ace/config-posix.h: Added a check for - - #if defined _XOPEN_STREAMS && _XOPEN_STREAMS == -1 - # define ACE_LACKS_STROPTS_H - #endif - - so that ACE will compile properly on Fedora 8. Thanks to - Jules Colding <colding at 42tools dot com> for this fix. - -Thu Apr 17 19:27:23 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> - - * ace/config-posix.h: Added a check for - - #if defined _XOPEN_STREAMS && _XOPEN_STREAMS == -1 - # define ACE_LACKS_STROPTS_H - #endif - - so that ACE will compile properly on Fedora 8. Thanks to - Jules Colding <colding at 42tools dot com> for this fix. - -Wed Apr 23 18:29:32 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Refcountable.{h,cpp,inl}: - * ace/Refcountable_T.{h,cpp,inl}: - Changed ACE_Refcountable to ACE_Refcountable_T which has a - trait for the type of lock. ACE_Refcountable is now a typedef - of ACE_Refcountable_T<ACE_Null_Mutex>. Also the refcount - type is now a long so that we can make use of the Atomic_Op - optimizations on some platforms - - * ace/ace.mpc: - * ace/Makefile.am: - Updated for the change above - -Wed Apr 23 14:49:32 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-linux-common.h: - When _XOPEN_STREAMS is defined to -1 we don't have stropts.h, - this fixes bugzilla 3291. Thanks to Jules Colding - <colding at 42tools dot com> for reporting this - -Wed Apr 23 14:10:32 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * docs/ACE-development-process.html: - We are using svn as repository - -Wed Apr 23 14:01:32 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/generate_rel_manpages: - Corrected doxygen path - - * bin/group_test_stats.sh: - Helper script to analyze test stat diffs - - * ace/Sig_Handler.{h,cpp}: - Doxygen changes and changed third_party_sig_handler flag to a - bool - - * ace/Service_Repository.{h,cpp}: - Changed ignore_suspended to a bool - - * ace/Intrusive_Auto_Ptr.h: - Fixed typo in comment - - * ace/config-vxworks6.2.h: - * ace/config-vxworks6.3.h: - * ace/config-vxworks6.4.h: - Removed workaround that is only needed with VxWorks 5.5.1 - - * ace/Codeset_Registry_db.cpp: - Added UCS2 and correct short names. This fixes bugzilla 3295 - - * ace/Codeset_IBM1047.h: + * ace/FIFO_Recv_Msg.h: + * ace/FIFO_Send_Msg.h: + * ace/SPIPE_Stream.h: Doxygen changes - * ace/Cleanup_Strategies_T.h: - Layout changes - - * ace/Service_Gestalt.{h,inl}: - No need for virtual methods, use bool and doxygen changes - - * ace/Service_Manager.h: - Explicitly mark destructor as virtual - - * ace/Service_Object.{h,cpp,inl}: - Use bool - -Wed Apr 23 01:53:32 CDT 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ACE version 5.6.4 released. - -Wed Apr 16 13:06:05 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * ace/ARGV.cpp: - Don't quote quotes already quoted. - -Mon Apr 14 12:10:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/run_test.pl: - Don't run 2980 when WCHAR is set - -Mon Apr 14 11:08:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Threading_Helper_T.cpp: - Removed - - * ace/Makefile.am: - Removed file above - - * ace/Service_Config.{h,cpp,inl}: - Changed the template instantiations like we have for Atomic_Op. - -Mon Apr 14 09:54:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/tests.mpc: - Don't build 2980 with wchar enabled and added empty resource - file section - -Mon Apr 14 08:59:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Threading_Helper_T.cpp: - Added new file with the threading helper template code. This resolves - the strange link problems with BCB. This file is included in the - Service_Config.h file - - * ace/Makefile.am: - Added new files - - * ace/Service_Config.{h,cpp,inl}: - Include the new Threading_Helper_T.cpp and removed the implementation - from these files - - * tests/tests.mpc: - Added missing include for bug 2980 - - * ace/Codeset_Registry.h: - Fixed typo in comment - - * ace/Shared_Object.h: - Doxygen changes - -Mon Apr 14 01:56:06 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * ace/Service_Config.h: - * ace/Service_Config.inl: - * ace/Service_Config.cpp: - - Moved ACE_Threading_Helper ctor and dtor implementaion - inline. This makes them available to code that indirectly - references the threadkey_ member (like, in examples/). This - should resolve link-time problems with borland compilers. - - * tests/Bug_2980_Regression_Test.cpp (unloadDll): - - Fixing warnings about missing extern "C" qualifier in call to - pthread_create. - -Sun Apr 13 07:27:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/OS_NS_Thread.cpp (_vx_call_entry): - Set the sc::current before calling main. This resolves the - sc asserts with vxworks kernel mode. Thanks to Iliyan - for suggesting this addition - -Fri Apr 11 17:36:34 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> - - * docs/Download.html: - * docs/ACE-development-process.html: - * docs/ACE-bug-process.html: Updated these files to use the major, - minor, and micro release terminology. - -Fri Apr 11 15:26:08 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * tests/Bug_2980_Regression_Test.cpp: - * tests/run_test.lst: - - Including config-lite.h: the driver is non-ACE but it still - needs to know platform-specific stuff, like threads usage, - etc. - -Fri Apr 11 01:51:13 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * ace/Svc_Conf_Tokens.h: - * ace/svcconf.mpb: - - Fixing a fuzz build warning of a missing $Id. Also, not all - make(1)'s have $(MV), so changing mpb to use just "mv" - -Thu Apr 10 22:32:58 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * ace/Service_Config.h: - * ace/Service_Config.cpp: - - Fixing compile problems with single-thread-only builds - using - the compiler's abilities (partial specialization) to generate - appropriate code. - - * ace/Svc_Conf.h: - * ace/Svc_Conf_Token_Table.h: - * ace/Svc_Conf_Tokens.h: - * ace/Svc_Conf_y.cpp: - * ace/svcconf.mpb: - - Changes to fix compile problems related to versioned namespace - use. Eliminated custom token file post-processing - replaced - with a wrapper header file (yacc(1) is now producing - Token_Table.h, which gets included in Tokens.h) - -Thu Apr 10 14:42:04 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * ace/Svc_Conf.h: - - Adding YYSTYPE_IS_DECLARED to prevent yacc(1) from trying to use a - trivial definition of YYSTYPE. - - * ace/Svc_Conf.y: - - Fixing an unused variable warning. Adding an YYSTYPE guard. - - * ace/Svc_Conf_Tokens.h: - * ace/Svc_Conf_y.cpp: - * ace/svcconf.mpb: - - Undefining YYSTYPE_IS_DECLARED at the bottom of Svc_Conf_Tokens.h - prevents it from leaking and poluting the global namespace. This - allows other yacc(1) based parsers to be used in ACE - apps. Cleaning up and recording generated files. - -Thu Apr 10 13:27:13 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * tests/Bug_2980_Regression_Test.cpp: - - Fixed compilation issues and reversed the CAN_RUN_TEST check to - get it to run on non-win32 and non-vxworks operating systems. - -Thu Apr 10 10:11:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Dynamic_Service.inl: - Corrected method signatures - -Thu Apr 10 10:03:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Bug_2980_Regression_Test.cpp: - Fixed BCB compile error - -Thu Apr 10 07:13:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_linux_pgi.GNU: - Removed deprecated linker flags - - * ace/Dev_Poll_Reactor.cpp: - * ace/Notification_Queue.cpp: - * ace/Service_Config.cpp: - * ace/Service_Object.cpp: - * ace/Sock_Connect.cpp: - Added missing includes - - * ace/Notification_Queue.cpp: - * ace/Notification_Queue.inl: - Added missing versioned namespace macros - -Thu Apr 10 06:41:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Service_Gestalt.h: - Added include of Guard_T.h - - * include/makeinclude/platform_linux_pgi.GNU: - Updated for latest pgCC version - -Thu Apr 10 00:50:53 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * tests/Bug_2980_Regression_Test.cpp: - * tests/tests.mpc: - - Fixing a compile problem with no-threads builds. - -Wed Apr 9 22:05:30 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * ace/Svc_Conf.h: - * ace/Svc_Conf.y: - * ace/Svc_Conf_Lexer.h: - * ace/Svc_Conf_Lexer.cpp: - * ace/Svc_Conf_Param.h: - * ace/Svc_Conf_Tokens.h: - * ace/Svc_Conf_y.cpp: - * ace/svcconf.mpb: - - Simplified the build sequence reducing the number of additional - transformations needed for Bison's parser output. That includes - the elimination of the ACE_YY prefix, which was necessary only - because of these transformations. Added ACE_TEXT around naked - string literals. Fixed build warnings with unicode builds. - -Wed Apr 9 20:22:46 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * ace/Service_Repository.cpp: - Fixing relocate_i to both account for empty slots _and_ provide - useful logging. - -Wed Apr 9 18:24:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/tao_orb_tests.lst: - Don't run 3171 with CORBA/e micro - -Wed Apr 9 11:50:27 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * bin/MakeProjectCreator/modules/VXTestProjectCreator.pm: - - Added a need_to_write_project override method to only allow the - project file to be written if it is an executable project. - - * bin/MakeProjectCreator/modules/VXTestWorkspaceCreator.pm: - - Fixed a bug where an invalid base module was used in the @ISA. - -Wed Apr 9 11:41:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Bug_2980_Regression_Test.cpp: - Check for ACE_VXWORKS - -Wed Apr 9 11:11:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Svc_Conf_y.cpp: - Fixed unicode build problems - -Wed Apr 9 08:06:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Svc_Conf.y: - * ace/Svc_Conf_y.cpp: - Fixed unicode build problems - -Wed Apr 9 07:18:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Service_Config.h: - Export ACE_Threading_Helper, it is used as protected class - member - - * ace/Service_Gestalt.cpp: - Don't use ACE_LIB_TEXT - - * ace/High_Res_Timer.h: - * ace/Based_Pointer_T.h: - Doxygen changes - - * ace/Naming_Context.cpp: - Fixed gcc 4.3 warning - - * ace/OS_NS_errno.h (last_error): - Give the argument a name so that doxygen can do its work - - * ace/Select_Reactor_T.cpp: - Use scoping - - * ace/MMAP_Memory_Pool.{h,cpp}: - Add a bool flag to indicate whether the signal handler has to - be installed or not. Made some other flags bool and win32 there - is no need have a signal handler as member. This fixes bugzilla - 3290 - -Wed Apr 9 02:43:37 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * ace/Dynamic_Service.inl (instance): - Adjusting interface to take a smart pointer. - - * ace/OS_NS_unistd.cpp (argv_to_string): - Adding interpretation for tabs and new line characters as - characters to trigger quoting. - - * ace/Service_Config.h: - * ace/Service_Config.cpp: - * ace/Service_Gestalt.h: - * ace/Service_Gestalt.inl: - * ace/Service_Gestalt.cpp: - * ace/Service_Repository.cpp: - Reformatting, updating comments and logging. - -Wed Apr 9 01:21:42 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> - - * ace/Condition_T.cpp (wait): Fixed a bug where the mutex - parameter wasn't being used properly if abstime was 0. Thanks - to Andriy Gapon <avg at icyb dot net dot ua> for reporting this. - -Mon Apr 7 18:49:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/MakeProjectCreator/docs/templates/gnu.txt: - Document linkflags - -Mon Apr 7 15:21:38 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - This the second part of the SC refatoring. It builds on top of - the intrusive refcounting mechanism introduced earlier to improve - design and eliminate memory issues (leaks, SEGV on shutdown) - - * ace/Service_Config.cpp (open_i,ACE_Service_Config): - - Moved the implicit configuration file handling from open_i to - the SG instance. Eliminated close_svcs() by incorporating its - functionality in close(). - - * ace/Service_Config.inl: - * ace/Service_Config.h (ACE_Service_Config_Guard,ACE_Service_Config): - - Removing the inheritance relationship between Service Config and - Service Gestalt. To simplify the memory management, SC becomes an - interface to the actual configuration data managed by SG. Coupled - with the reference counting of SG instances, this ensures correct - memory management in multi-threaded environments where both the - TSS and the user code may trigger SG finalization. - - Introducing ACE_Threading_Helper to simplify TSS management - (RAII idiom). Changed ACE_Service_Config_Guard to use the new - smart pointer for SG. Doxygen comments cleanup. - - * ace/Svc_Conf.y: - * ace/Svc_Conf_y.cpp: - - Fixing unused function definition - - * tests/Bug_2980_Regression_Test.cpp: - - Updating the test to prevent it from breaking vxWorks builds - which appear to lack a declaration for dlopen() - -Sun Apr 6 01:53:13 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * ace/Service_Gestalt.cpp: - - Fixing unused variable warning. - - * ace/Svc_Conf_y.cpp: - * ace/svcconf.mpb: - - Ensuring there are no TAB characters present in the generated - file. - - * tests/run_test.lst: - - Excluding Bug_2980_Regression as it is not runnable on vxWorks. - -Sat Apr 5 16:21:50 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * ace/Service_Config.inl: - * ace/Service_Config.cpp: - * ace/Service_Gestalt.cpp: - * ace/Service_Gestalt.h: - - Making SG intrusively refcountable by introducing - intrusive_{add,remove}_ref methods and a refcounter. Adding - skip_default_svc_conf_file parameter in process_directives. - - * ace/svcconf.mpb: - * tests/Object_Manager_Flipping_Test.cpp: - - Reformatting and cleanup. - -Sat Apr 5 13:42:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Bug_2980_Regression_Test.cpp: - Fixed argument not used warnings - -Sat Apr 5 13:36:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Parse_Node.cpp: - Moved include out of versioned namespace block - -Sat Apr 5 11:50:40 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * ace/Parse_Node.cpp: - * ace/Svc_Conf.y: - * ace/Svc_Conf_Tokens.h: - * ace/Svc_Conf_y.cpp: - - Replacing ACE_LIB_TEXT with ACE_TEXT - -Fri Apr 4 21:43:35 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * THANKS: - - Adding Michael Carter <mcarter at swri dot org> for reporting - and debugging bug 3007. - - * ace/Base_Thread_Adapter.h: - * ace/Base_Thread_Adapter.cpp: - - Storing a pointer to SG that was current in the parent thread, - which enables correct "inheritance" of the SG in the child thread. - - * ace/Parse_Node.h: - * ace/Parse_Node.cpp: - - Fixing ACE_Stream_Node::{apply,link} to ensure the modules are linked - together and initialized correctly - see bug# 2916. Moving the - initialization code out of the yacc parser, here. - - * ace/Service_Object.cpp: - * ace/Service_Types.cpp: - - Improving the log output in fini(). - - * ace/Service_Repository.h: - - Eliminating an unused parameter static_only from relocate_i() - - * ace/Service_Repository.cpp: - - Simplified relocate_i() and fixed an error that was causing it to - choose incorrect ranges of service indexes to relocate. - Eliminated the boolean static_only parameter as it was always - being set to true. Changed remove() to eliminate the "packing" - code and updated the few other methods, which assumed there are no - "gaps" in the service storage. - - * ace/Svc_Conf.h: - * ace/Svc_Conf.y: - * ace/Svc_Conf_Tokens.h: - * ace/Svc_Conf_y.cpp: - - Adding an overloaded yyerror that takes just a string to comply - with the changed bison template. Moving the module initialization - code out of the parser. See ACE_Stream_Node class and bug# 2916. - - * ace/Thread_Adapter.cpp: - - The invoke() method, which runs in the new thread, initializes the - thread-specific configuration context. This scheme ensures any - newly spawned thread would inherit the spawning thread's service - configuration context. - - * ace/ace.mpc: - - Adding Intrusive_Auto_Ptr to the list. - - * ace/svcconf.mpb: - - Updated for the grammar updates, see bug# 2916. - - * examples/ASX/CCM_App/ASX_CCM_App.mpc: - * examples/ASX/CCM_App/CCM_App.cpp: - - The DLL names are case-sensitive on *nix. Minor layout changes. - - * tests/Object_Manager_Flipping_Test.cpp: - - Updated to use the Intrusive_Auto_Ptr - - * tests/run_test.lst: - * tests/tests.mpc: - - Adding Bug_2980_Regression_Test - -Fri Apr 4 18:27:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * configure.ac: - Fixed iostream detection. This fixes bugzilla 3288 - This to Thomas Girard <thomas dot g dot girard at free dot fr> - for reporting this. - -Thu Apr 3 14:13:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_vxworks5.5.x.GNU: - * include/makeinclude/platform_vxworks6.2.GNU: - * include/makeinclude/platform_vxworks6.3.GNU: - Changed the make variable from which we zap the -ansi and also support - this with the diab compiler - -Thu Apr 3 09:40:00 UTC 2008 Simon Massey <simon dot massey at prismtech dot com> - - * apps/JAWS/stress_testing/benchd.cpp: - - Using "interface" as the descriptive name of a parameter seems to - cause VC8 (when building with MFC) to assume you mean a struct type - and it raises an incorrect systax error. - -Thu Apr 3 07:05:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/MakeProjectCreator/templates/gnu.mpd: - Generate link_groups also when staticflags are not set - -Wed Apr 2 21:40:00 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - - Fix typo in ACE_HAS_BSWAP_{16,32,64} feature tests. - This to Thomas Girard <thomas dot g dot girard at free dot fr> - for reporting this. - -Wed Apr 2 20:22:50 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * ace/Intrusive_Auto_Ptr.h: - * ace/Intrusive_Auto_Ptr.inl: - - Correcting a problem with VC71 - -Wed Apr 2 11:06:30 UTC 2008 Vladimir Zykov <vladimir.zykov@prismtech.com> - - * bin/tao_orb_tests.lst: - - Enabled a TAO/tests/Collocated_Forwarding on vxworks and - vxworks_rtp. - -Wed Apr 2 09:05:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_vxworks5.5.x.GNU: - * include/makeinclude/platform_vxworks6.2.GNU: - * include/makeinclude/platform_vxworks6.3.GNU: - Add no_cflags_ansi and no_ccflags_ansi which if set do remove the - -ansi compiler flag - -Wed Apr 2 08:14:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/config-linux-common.h: - Replaced ACE_HAS_VOIDPTR_GETTIMEOFDAY with - ACE_HAS_TIMEZONE_GETTIMEOFDAY, this fixes bugzilla 3145 - This to Thomas Girard <thomas dot g dot girard at free dot fr> - for reporting this - -Wed Apr 2 07:51:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/run_test.lst: - Enabled a few tests on VxWorks again, in the past rebooting a - crashed target was problematic but that is not an issue anymore - -Tue Apr 1 14:20:34 UTC 2008 Vladimir Zykov <vladimir.zykov@prismtech.com> - - * bin/tao_orb_tests.lst: - Added a new test for collocated forwarding case. - -Tue Apr 1 12:58:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/tao_other_tests.lst: - Added OBV typed event test - -Tue Apr 1 12:52:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/tao_orb_tests.lst: - Add the DSI Gateway exception test, they should run, the scoreboard - will show if they run - -Tue Apr 1 08:33:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_openvms.GNU: - Set ACE_OPENVMS_IA64 on Itanium - - * include/makeinclude/rules.lib.GNU: - Only use a special AR rule on OpenVMS IA64 - -Tue Apr 1 07:38:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Intrusive_Auto_Ptr_Test.cpp: - Fixed argument not used warning - -Tue Apr 1 07:34:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/tao_other_tests.lst: - Enabled a few tests for vxworks +Mon Feb 16 17:09:40 UTC 2009 William R. Otte <wotte@dre.vanderbilt.edu> -Tue Apr 1 07:12:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Reactor_Dispatch_Order_Test.cpp: - Only run the reactor once, this will lead to the failing of this test - when using the WFMO Reactor which seems to be a old issue that needs - to get addressed - -Tue Apr 1 06:54:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/tao_other_tests.lst: - Disabled most tests for vxworks and vxworks_rtp, we first need to - convert a lot of scripts to support vxworks - -Mon Mar 31 21:48:58 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - - Changed to avoid feature test for pthread_getaffinity_np() and - pthread_setaffinity_np() if system does not have cpu_set_t. In - that case, the pthread functions are amost certainly not - compatible. - - * ace/Makefile.am: - - Add Intrusive_Auto_Ptr.cpp, Intrusive_Auto_Ptr.h, and - Intrusive_Auto_ptr.inl to nobase_include_HEADERS. - -Mon Mar 31 18:56:40 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * ace/Refcounted_Auto_Ptr.h: - * ace/Refcounted_Auto_Ptr.inl: - * ace/Refcounted_Auto_Ptr.cpp: - - Reverting the changes because a) they are not really necessary - for the refactoring of the service config, and; b) the AIX - compiler appears to not deal well with implicit conversion - definitions, to template member types. - -Mon Mar 31 16:15:17 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * tests/tests.mpc: - - Adding Intrusive_Auto_Ptr_Test to the list - -Mon Mar 31 14:52:58 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * ace/Intrusive_Auto_Ptr.h: - * ace/Intrusive_Auto_Ptr.cpp: - * ace/Refcounted_Auto_Ptr.h: - * ace/Refcounted_Auto_Ptr.inl: - * ace/Refcounted_Auto_Ptr.cpp: - - Added preprocessor guards for proper inlining. Qualified - the type name in the implementation of opretator - unspecified_bool_type () to appease GCC 3.x - -Mon Mar 31 13:50:45 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - * tests/run_test.lst: - - Adding Intrusive_Auto_Ptr_Test to the list - -Mon Mar 31 12:09:20 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * bin/MakeProjectCreator/modules/AutomakeWorkspaceHelper.pm: - - Always reference Kokyu libraries from $(ACE_BUILDDIR) instead of - $(top_builddir) so that it will work from both ACE and TAO. - -Mon Mar 31 11:00:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Bug_2980_Regression_Dll.cpp: - * tests/Bug_2980_Regression_Test.cpp: - Fixed fuzz errors - -Mon Mar 31 08:59:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/OS_Test.cpp: - Added test for ACE_OS::last_error() - -Sun Mar 30 19:54:23 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> - - This is the first step of merging the changes from the gestalt - refactoring branch. It includes only changes that are merely - peripheral, without impacting the actual configuration mechanism - - yet. - - * ace/ARGV.h: - * ace/ARGV.cpp: - - Introducing a ctor that takes the number of parameters in argv, - thus eliminating the requirement to have argv 0-terminated. This - requirement can be a hard to satisfy in cases where the argv has - been "manualy constructed", i.e. not provided by the OS - environment. - - * ace/Intrusive_Auto_Ptr.h: - * ace/Intrusive_Auto_Ptr.inl: - * ace/Intrusive_Auto_Ptr.cpp: - - Added an intrusive auto pointer implementation. It is a reference - counted auto pointer that can be used for types with explicit - reference management implementations. - - * ace/OS_NS_unistd.h: - * ace/OS_NS_unistd.cpp: - - Introducing new argv_to_string which takes an explicit argc - argument and relaxes the requirement on argv (to be 0-terminated). - - * ace/Refcounted_Auto_Ptr.h: - * ace/Refcounted_Auto_Ptr.inl: - - Adding a mechanism that provides a correct conversion to boolean - for smart pointers, which preserves the smantics of "if (ap) ..." - without the unwanted side effects. Credit goes to Andrei - Alexandrescu's Modern C++ Design book. - - * ace/Service_Types.cpp: - - Cosmetics: adding this-> to member references. - - * examples/ASX/CCM_App/ASX_CCM_App.mpc: - * examples/ASX/CCM_App/CCM_App.cpp: - - Fixing a problem that precludes the test from running correctly - on *nix - the DLL names are not case-insensitive. Minor layout - changes. - - * tests/Intrusive_Auto_Ptr_Test.cpp: - - A test for the new auto ptr. - - * tests/Bug_2980_Regression_Dll.cpp: - * tests/Bug_2980_Regression_Test.cpp: - * tests/run_test.lst: - * tests/tests.mpc: - - Addded a test for bug 2980. Thanks to Lothar Werzinger <lothar - at tradescape biz> for contributing the code. - -Sun Mar 30 18:54:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/PerlACE/ProcessVX_Win32.pm: - Handle single quotes in the executable arguments - -Sat Mar 29 08:16:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * tests/Reactor_Dispatch_Order_Test.cpp: - Dev_Poll reactor displays other bugs, so disable this part of - the test - - * ace/Select_Reactor_Base.cpp: - Position the iterator on the first element that is none zero, fixes - crashing of the reactor_dispatch_order_test on non windows platforms - -Fri Mar 28 17:18:50 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/CDR_Stream.cpp (write_long_placeholder, write_short_placeholder): - Be careful to adjust and grow the stream's block before taking - the pointer that's returned to the user. Thanks to Alain Kocelniak - <alain@corys.fr> for this fix. - - * ace/CDR_Stream.h: Note that the placeholder methods return 0 if - the method fails due to insufficient memory. - - * THANKS: Added Alain Kocelniak to the Hall of Fame. - -Fri Mar 28 15:40:03 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * tests/unload_libace.mpb: - - Inhert from vc_warnings instead of duplicating part of it's - functionality. - -Fri Mar 28 09:24:25 UTC 2008 Vladimir Zykov <vladimir.zykov@prismtech.com> - - * bin/tao_orb_tests.lst: - - Enabled a test to Bug_3276_Regression. + * bin/MakeProjectCreator/config/global.features: -Fri Mar 28 09:17:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + Disabled ofccm by default. - * tests/Reactor_Dispatch_Order_Test.cpp: - Extended this test to also test suspend/resume_handlers and the - dev_poll reactor. Thanks to Russell Morra for extending this test +Mon Feb 16 13:30:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> - * ace/ACE.cpp: - * ace/High_Res_Timer.inl: - Layout changes + * ace/Array_Base.h: + * ace/Local_Tokens.h: + * ace/SPIPE_Stream.h: + * ace/Stream.h: + * ace/Unbounded_Set_Ex.h: + * ace/Vector_T.h + Doyxgen change * ace/Hash_Map_Manager_T.cpp: - Use prefix increment instead of postfix - - * ace/High_Res_Timer.h: - * ace/Reactor.h: - * ace/Select_Reactor_Base.h: - Doxygen changes - - * ace/Select_Reactor_Base.inl: - Fixed done implementation. This fixes bugzilla 3267 - - * ace/String_Base.cpp: - Initialise pointer with 0 - - * ace/WFMO_Reactor.{h,cpp,inl}: - Bool changes, fixed implementation of suspend_handlers/resume_handlers, - the to_be_added set modifications where not done correctly - -Thu Mar 27 19:09:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/tao_orb_tests.lst: - * bin/tao_other_tests.lst: - Diabled 3251/3252 in a static build - -Thu Mar 27 16:27:44 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * ace/Object_Manager.cpp: - - In Win32 debug builds with ACE_DISABLE_WIN32_ERROR_WINDOWS, also - redirect assert messages to stderr instead of GUI message boxes. - -Thu Mar 27 16:17:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * docs/ACE-bug-process.html: - * docs/ACE-development-process.html: - * docs/ACE-guidelines.html: - * docs/usage-bugzilla.html: - Updated bugzilla location - -Thu Mar 27 15:52:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/MakeProjectCreator/modules/VXTestProjectCreator.pm: - * bin/MakeProjectCreator/modules/VXTestWorkspaceCreator.pm: - * bin/MakeProjectCreator/templates/vxtest.mpd: - New MPC generator called vxtest. This will generate the loading - of the downloadable kernel modules for an application. - -Thu Mar 27 14:07:27 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * configure.ac: - - #include <byteswap.h> in ACE_HAS_BSWAP_{16,32,64} feature tests. - Resolves bugzilla issue #3134. - -Thu Mar 27 12:54:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_vxworks6.3.GNU: - Small change to get the VxWorks shared library build further - -Thu Mar 27 12:46:48 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * tests/SSL/Thread_Pool_Reactor_SSL_Test.cpp: - - Changed ACE_TMAIN to run_main for the non-threaded portion of the - #ifdef. ACE_TMAIN is defined in Main.cpp. - -Thu Mar 27 12:37:18 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * ASNMP/asnmp/snmperrs.h: - - Added an unknown error code message to the pErrs array to avoid - getting a garbage pointer from Snmp::error_string() in the event - that the error code is outside the valid range. - -Thu Mar 27 11:11:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Free_List.cpp: - Fixed ambiguous else with GCC 4.3. Thanks to Jules Colding - <colding at 42tools dot com> for reporting this - -Thu Mar 27 10:36:18 UTC 2008 Simon McQueen <sm@prismtech.com> - - * include/makeinclude/wrapper_macros.GNU: - - Make it possible to specify an alternate name / location for - platform_macros.GNU. This fixes bug #3269. - -Wed Mar 26 15:32:01 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * bin/MakeProjectCreator/templates/gnu.mpd: - - Corrected my change from yesterday so that it works properly for - executable projects that pull in source files from other directories. - -Tue Mar 25 18:02:52 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * ASNMP/asnmp/wpdu.cpp: - - Added an intermediate integer to avoid type-punned pointer - dereferencing. - -Tue Mar 25 14:19:31 UTC 2008 Adam Mitz <mitza@ociweb.com> - - * bin/MakeProjectCreator/templates/gnu.mpd: - - When generating the linker command line for executable linked against - static libs, exclude the "libFoo.a" form of the libraries. They are - already accounted for by "-lFoo" arguments. This resolved Bugzilla - Bug #3266. - -Tue Mar 25 10:43:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * netsvcs/lib/Server_Logging_Handler.cpp: - Corrected static template member instantiation to resolve compile - error on OpenVMS Alpha - -Tue Mar 25 10:12:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_openvms.GNU: - Disable warnings on IA64 without using GNV, that doesn't work - in all cases - -Tue Mar 25 09:08:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/INET_Addr.cpp: - Detect sockets that are bigger then ACE_MAX_DEFAULT_PORT. - Thanks to Patrick Rabau <pr2345 at gmail dot com> for - reporting this. This fixes bugzilla 3264 - - * tests/INET_Addr_Test.cpp: - Added a test for an overflow of the port number - - * ace/Hash_Map_Manager_T.{h,inl}: - Changed head argument of the iterators to a bool - - * ace/Reactor.h: - * ace/Reactor_Impl.h: - Doxygen changes - -Tue Mar 25 00:38:33 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> - - * ace/Makefile.am: - - Add Configuration.inl to nobase_include_HEADERS. - -Mon Mar 24 16:21:30 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> - - * ace/OS_NS_Thread.cpp (event_timedwait): Fixed this code so that - it will treat 0 using "wait indefinitely" semantics for Windows - and all other OS platforms. Thanks to Paul Carter <pcarter at - scires dot com> for contributing this. - -Mon Mar 24 16:13:51 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> - - * tests/Manual_Event_Test.cpp (worker): Added a test to ensure - that a null pointer works properly for the - ACE_Manual_Event::wait() method. Thanks to Paul Carter <pcarter - at scires dot com> for contributing this. - -Mon Mar 24 15:43:28 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> - - * bin/MakeProjectCreator/config/MPC.cfg: - - MPC can now be configured to recognize ACE_TMAIN as an executable - entry point. We no longer need to explicitly state that a project will - be an executable in the MPC file, MPC will automatically deduce that - the project is an executable given the presence of ACE_TMAIN. - - This change above relates to the following change in MPC: - Mon Mar 24 15:18:28 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - -Mon Mar 24 02:25:58 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> - - * COPYING: Updated the license a bit based on feedback from Tom - Callaway" <tcallawa at redhat dot com>. These changes will - enable ACE+TAO to be shipped with Fedora. - -Fri Mar 21 16:12:53 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/OS_NS_unistd.cpp (num_processors_online): Count the online - processors for Windows, not just the number present. - - * tests/OS_Test.cpp: Sanity-check the num_processors_online() value. - -Fri Mar 21 15:10:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/FoxReactor/FoxReactor.cpp: - Fix 64bit issues, this fixes bugzilla 3248 - This to Thomas Girard <thomas dot g dot girard at free dot fr> - for reporting this - -Fri Mar 21 10:46:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * m4/ace.m4: - Changed gperf check - - * apps/Makefile.aml: - Updated gperf check. This fixes bugzilla 3249. - This to Thomas Girard <thomas dot g dot girard at free dot fr> - for reporting this - -Fri Mar 21 10:06:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + Use prefix increment - * ace/config-vxworks.h: - If ACE_VXWORKS is not defined try to figure out which vxworks - version we are using based on some vxworks version defines - - * ace/Select_Reactor_Base.h: - Doxygen changes and made the constructor of - ACE_Select_Reactor_Handler_Repository_Iterator explicit - - * ace/Process.{h,cpp}: - Layout change - -Thu Mar 20 15:34:18 UTC 2008 Chad Elliott <elliott_c@ociweb.com> - - * bin/MakeProjectCreator/config/acedefaults.mpb: - - Changed the ACE_LD_DECORATOR_STR macro to use $(LIBMODIFIER) - instead of $(ILIBMODIFIER) for the bmake project type. - -Thu Mar 20 12:42:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Addr.h: - Layout change - - * ace/High_Res_Timer.cpp: - Changed supported flag to a bool - - * ace/INET_Addr.h: - Doxygen change - - * ace/Svc_Conf.h: - Moved regular include before pragma once - -Wed Mar 19 13:45:00 UTC 2008 Simon Massey <simon.massey@prismtech.com> - - * ace/tao_orb_tests.lst: - Remove TAO/tests/Bug_1482_Regression from LynxOS. - -Wed Mar 19 11:41:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/Process_Manager.h: - * ace/Semaphore.h: - * ace/SOCK.h: - * ace/SOCK_IO.h: - Doxygen changes - - * ace/Service_Gestalt.h: - Removed not needed forward declaration + * ace/Hash_Map_Manager_T.h: + * ace/Hash_Map_Manager_T.inl: + Removed cur_size method, current_size does the same and is + public - * ace/OS_NS_Thread.h: + * ace/Log_Msg.cpp: Layout change -Tue Mar 18 20:17:55 UTC 2008 Steve Huston <shuston@riverace.com> - - * bin/PerlACE/ProcessLVRT.pm: - * bin/PerlACE/TestTarget_LVRT.pm: Handle timeouts to the target better - and smarten up the way it gets log files from a failed target. - - * bin/PerlACE/TestTarget.pm: - * bin/PerlACE/TestTarget_LVRT.pm: Add a GetFile() method to get a file - from the target to the local machine. By default, it does nothing. - It's meant for use by targets that don't necessarily have locally - accessible file systems, such as LabVIEW RT. - - * bin/Run_Test.pm: - * bin/PerlACE/Process_Win32.pm: Add support for running tests on - LabVIEW RT similarly to the way they're done on VxWorks; TAO tests - run the server on the target and the client on the host. - - * bin/LabVIEW_RT/labview_test_controller/labview_test_controller.cpp: - Catch exceptions and try to report it to stderr before the machine - locks up, dies, etc. - -Tue Mar 18 07:33:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_openvms.GNU: - Removed -Wc/DISTINGUISH_NESTED_ENUMS, only needed for one test - -Mon Mar 14 09:17:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/tao_other_tests.lst: - Added 3252 - -Mon Mar 14 09:07:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/tao_orb_tests.lst: - Added 3251 - -Fri Mar 14 19:57:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_aix_g++.GNU: - Improved support for buildbits=64 - -Fri Mar 14 19:09:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * netsvcs/lib/Client_Logging_Handler.cpp: + If we don't receive the exact number of bytes with spipe stream + see that as error - * ace/INET_Addr.cpp: - Fixe warning with GCC 4.2 on AIX +Mon Feb 16 10:57:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> -Fri Mar 14 19:07:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * ace/Log_Msg_IPC.cpp: + Check all stream insertion return values - * include/makeinclude/platform_aix_g++.GNU: - Disable visibility by default. With GCC 4.2 on AIX we get warnings - that visibility is not supported in that configuration +Sat Feb 14 14:53:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> -Fri Mar 14 15:02:33 UTC 2008 Ciju John <johnc at ociweb dot com> - - * bin/tao_other_tests.lst: - Turn on the Notify Persistent_POA test. - -Fri Mar 14 09:30:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_aix_g++.GNU: - Don't use -mcpu=common, that is an ancient default of AIX 5.1 - -Thu Mar 13 12:41:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_aix_g++.GNU: - Fixed support for buildbits=32/64 - -Wed Mar 12 19:49:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - Reverted the gperf change below, breaks all autoconf builds - - Wed Mar 12 06:55:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - * m4/ace.m4: - Added enable-aio, enable-ipo and fixed gperf handling. - This to Thomas Girard <thomas dot g dot girard at free dot fr> - for reporting this - -Wed Mar 12 15:08:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/PerlACE/ProcessVX.pm: - Fix retry mechanism for the iBoot bar - -Wed Mar 12 12:59:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * m4/ace.m4: - Added support for fox, thanks to Thomas Girard - <thomas dot g dot girard at free dot fr> for reporting this. - This fixes bugzilla 3147 - -Wed Mar 12 11:59:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/FoxReactor/FoxReactor.{h,cpp}: - Removed check for ACE_HAS_FOX - - * include/makeinclude/wrapper_macros.GNU: - Changed fox handling, matches the other reactors. Thanks to - Thomas Girard <thomas dot g dot girard at free dot fr> for - reporting this. This resolves bugzilla 3248 - - * include/makeinclude/platform_aix_ibm.GNU: - Added support for Visual Age 9 - -Wed Mar 12 11:53:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/FoxReactor/FoxReactor.h: - Added missing include, thanks to Thomas Girard - <thomas dot g dot girard at free dot fr> for reporting this - -Wed Mar 12 07:07:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/FoxReactor/FoxReactor.cpp: - Fixed compile errors, thanks to Thomas Girard - <thomas dot g dot girard at free dot fr> for reporting this - -Wed Mar 12 06:59:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * ace/ace.mwc: - * bin/MakeProjectCreator/config/global.features: - Added fox reactor, thanks to Thomas Girard - <thomas dot g dot girard at free dot fr> for reporting this - -Wed Mar 12 06:55:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * m4/ace.m4: - Added enable-aio, enable-ipo and fixed gperf handling. - This to Thomas Girard <thomas dot g dot girard at free dot fr> - for reporting this - -Tue Mar 11 12:24:43 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/Svc_Conf.h: Add #include "ace/config.h" so a setting for - ACE_LACKS_PRAGMA_ONCE can be seen. Fixes compile warnings. - -Tue Mar 11 12:20:02 UTC 2008 Steve Huston <shuston@riverace.com> - - * ace/Log_Msg.cpp (log): Fixed compile error. No need to use - ACE_TEXT_ALWAYS_CHAR for a char* literal. - -Mon Mar 10 22:27:09 UTC 2008 Nanbor Wang <nanbor@wakefield.txcorp.com> - - * ace/Svc_Conf.h: Removed redundant inclusion of Obstack.h. It is - included later in Svc_Conf_Param.h. Removing this extra - inclusion allows us to build on MacOS Leopard with optimization - enabled. - -Mon Mar 10 15:35:02 UTC 2008 Steve Huston <shuston@riverace.com> + * ace/Log_Msg.cpp: + Print null if we get a nill string for a %p format specifier instead + of causing a crash. This fixes bugzilla 3571 - * ace/Log_Msg.{h cpp} (log): For %C, clearly note that it always prints - a narrow-char string, and adjust the va_arg to match. Thanks to - Russell Morra for reporting this issue. + * tests/Log_Msg_Test.cpp: + Extended this test. + +Fri Feb 13 13:30:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Dev_Poll_Reactor.cpp + * ace/Log_Msg.cpp + * ace/MEM_Acceptor.cpp + * ace/MMAP_Memory_Pool.cpp + * ace/POSIX_Asynch_IO.cpp + * ace/POSIX_CB_Proactor.cpp + * ace/POSIX_Proactor.cpp + * ace/Registry_Name_Space.cpp + * ace/Remote_Tokens.cpp + * ace/Service_Config.cpp + * ace/Service_Gestalt.cpp + * ace/Shared_Memory_Pool.cpp + * ace/SOCK_Dgram_Bcast.cpp + * ace/SUN_Proactor.cpp + * ace/TLI.cpp + Use ACE_TEXT() with %p in ACE_DEBUG/ACE_ERROR. The log string + passed to ACE_DEBUG/ACE_ERROR is converted automatically to + unicode in an unicode build. The %p expects an unicode string, + if a plain ascii string is passed in, this is just handled as + unicode string and could lead to a crash because then we are + just reading random memory + +Fri Feb 13 12:18:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * netsvcs/lib/Client_Logging_Handler.cpp: + * netsvcs/lib/Server_Logging_Handler_T.cpp: + Log a message when insert/extract fails -Mon Mar 10 13:20:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> +Fri Feb 13 11:12:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> - * tests/Multicast_Test.cpp: - When sending fails, print the ip address we are using in the error + * netsvcs/lib/Client_Logging_Handler.cpp: + * netsvcs/lib/Server_Logging_Handler_T.cpp: + When demarshaling fails return 0 instead of -1. That keeps the + event handler registered with the reactor for the next log message. -Sat Mar 8 16:23:57 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> - - * ace/WIN32_Asynch_IO.cpp (send): Enhanced the code to allow sends - of 0-sized datagrams. Thanks to Andi Heusser <aheusser at gmail - dot com> for this fix. - -Thu Mar 6 16:49:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/rules.lib.GNU: - Rearranged some rules to make sure c/C files are compiled with the - C compiler on OpenVMS - -Thu Mar 6 13:10:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_openvms.GNU: - Improved this file - -Thu Mar 6 10:33:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_openvms.GNU: - Removed restriction that only a shared or static build can be done - -Wed Mar 5 07:54:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/tao_orb_tests.lst: - Don't run the parallel connect strategy test on VxWorks 5.5, the - command length of the shell is not long enough. - -Tue Mar 4 09:27:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/ProcessVX.pm: - Added a retry to the iPass protocol code, in a full test run - we sometimes see that the reboot has failed. With this retry - we hopefully get rid of those false test failures - -Tue Mar 4 05:54:22 UTC 2008 William Otte <wotte@dre.vanderbilt.edu> - - * bin/svn_props.py: - Automatically set default properties when svn complains. - -Mon Mar 3 11:22:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/MakeProjectCreator/templates/bor.mpd: - Just single line comments - - * bin/MakeProjectCreator/templates/gnu.mpd: - Check VXWORKSLINK for 1 - -Mon Mar 3 11:10:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_vxworks5.5.x.GNU: - * include/makeinclude/platform_vxworks6.2.GNU: - * include/makeinclude/platform_vxworks6.3.GNU: - * include/makeinclude/rules.bin.GNU: - * include/makeinclude/rules.lib.GNU: - Use 1 for VXWORKSLINK instead of true. Added footprint=1 - as flag to specify that you are doing a footprint build - -Mon Mar 3 10:49:28 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> - - * apps/JAWS/clients/WebSTONE/src/cgi-send.c: - * apps/JAWS/clients/WebSTONE/src/genrand.c: - * apps/JAWS/clients/WebSTONE/src/webmaster.c: - * contrib/utility/Example/CommandLine/Foo/command.cpp: - * contrib/utility/Example/ExH/BadCast/bad_cast.cpp: - * contrib/utility/Example/ExH/Compound/compound.cpp: - * contrib/utility/Example/ExH/HelloWorld/hello_world.cpp: - * contrib/utility/Example/ExH/LogicToSystem/logic_to_system.cpp: - * contrib/utility/Example/Hetero/Container/container.cpp: - * contrib/utility/Example/Introspection/InheritanceTree/inheritance_tree.cpp: - * contrib/utility/Example/Introspection/Traversal/driver.cpp: - * contrib/utility/Test/ExH/Converter/converter.cpp: - * contrib/utility/Test/ExH/Inline/inline.cpp: - * contrib/utility/Test/ExH/Logic/DescriptiveException/descriptive_exception.cpp: - * contrib/utility/Test/ExH/System/DescriptiveException/descriptive_exception.cpp: - * contrib/utility/Test/Introspection/Inline/inline.cpp: - * contrib/utility/Test/Synch/Inline/inline.cpp: - * etc/xlc_dummy.cpp: - * examples/Reactor/Proactor/test_aiocb.cpp: - * examples/Reactor/Proactor/test_aiosig.cpp: - - Disable fuzz's check_for_improper_main_declaration check on these files. - These files don't use ACE. - - * examples/Reactor/WFMO_Reactor/Multithreading.cpp: - * examples/Reactor/WFMO_Reactor/Registration.cpp: - * examples/Reactor/WFMO_Reactor/Registry_Changes.cpp: - * examples/Threads/task_three.cpp: - - Use the proper form of ACE_TMAIN. Namely, the argv parameter - should be "ACE_TCHAR *argv[]" instead of "ACE_TCHAR **argv" - or "ACE_TCHAR *[]" instead of "ACE_TCHAR **" - - * apps/JAWS3/bench/average.cpp: - * netsvcs/clients/Tokens/invariant/invariant.cpp: - - Use ACE_TMAIN instead of main as the program entry point to comply - with ACE/TAO/CIAO coding standards. - -Mon Mar 3 08:58:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_openvms.GNU: - Improved this file - -Mon Mar 3 07:30:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_openvms.GNU: - Don't set INSLIB - -Mon Mar 3 07:00:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/rules.local.GNU: - Rearranged some rules so that C files are compiled with the - C compiler on OpenVMS - -Mon Mar 3 06:57:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/ProcessVX.pm: - Added support to specify a custom password for the iBoot +Thu Feb 12 07:33:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> -Sun Mar 2 20:04:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/ProcessVX.pm: - Integrated some OCI changes for the iBoot - -Sun Mar 2 19:32:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * bin/auto_run_tests.pl: - Use ACE_ROOT as defailt root test directory instead of the current - directory - -Sun Mar 2 18:53:12 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> - - * ASNMP/agent/main.cpp: - * ace/Svc_Conf_y.cpp: - * apps/JAWS3/jaws3/main.cpp: - * examples/Mem_Map/IO-tests/test_io.cpp: - * examples/Reactor/Multicast/client.cpp: - * examples/Reactor/Multicast/server.cpp: - * examples/Reactor/Proactor/test_aiocb_ace.cpp: - * examples/System_V_IPC/SV_Shared_Memory/SV_Shared_Memory_Test.cpp: - * netsvcs/clients/Naming/Dump_Restore/createfile.cpp: - * netsvcs/clients/Tokens/collection/collection.cpp: - * netsvcs/clients/Tokens/collection/rw_locks.cpp: - * netsvcs/clients/Tokens/deadlock/deadlock_detection_test.cpp: - * netsvcs/clients/Tokens/invariant/invariant.cpp: - * netsvcs/clients/Tokens/manual/manual.cpp: - * netsvcs/clients/Tokens/mutex/test_mutex.cpp: - * netsvcs/clients/Tokens/rw_lock/rw_locks.cpp: - * performance-tests/Misc/context_switch_time.cpp: - * performance-tests/Misc/test_guard.cpp: - * performance-tests/Server_Concurrency/Leader_Follower/RT_CORBA_Leader_Follower.cpp: - * performance-tests/Server_Concurrency/Queue_Based_Workers/RT_CORBA_Workers.cpp: - * performance-tests/TTCP/ACE-C++/wrapper-new-ttcp.cpp: - - Use ACE_TMAIN instead of main as the program entry point to comply - with ACE/TAO/CIAO coding standards. - - * examples/Mem_Map/IO-tests/Mem_Map_IO_Tests.mpc: + * ace/config-win32-common.h: + * ace/os_include/sys/os_types.h: + Added ACE_LACKS_MODE_T, ACE_LACKS_CADDR_T, ACE_LACKS_NLINK_T, + ACE_LACKS_UID_T, and ACE_LACKS_GID_T as new defines. This makes + it possible for an enduser to disable the typedefs by undefining + these defines. Thanks to Bill Rizzi <rizzi at softserv dot com> + for pointing this out - MPC doesn't recognize ACE_TMAIN as an entry point, as such, we need - to explicitly set exename in the MPC file. +Wed Feb 11 22:26:26 2009 Steve Huston <shuston@riverace.com> - * apps/JAWS/clients/WebSTONE/src/webclient.c: - * contrib/utility/Example/CommandLine/Foo/foo.cpp: - * performance-tests/Synch-Benchmarks/context.c: - * performance-tests/TTCP/C/new-ttcp.cpp: - * tests/Unload_libACE.cpp: + * ace/LSOCK_CODgram.h: Improved the comments and usage scenario. - Disable fuzz's check_for_improper_main_declaration check on these files. - These files don't use ACE. +Wed Feb 11 16:20:19 UTC 2009 William R. Otte <wotte@dre.vanderbilt.edu> -Sat Mar 1 19:09:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * include/makeinclude/wrapper_macros.GNU: - * bin/auto_run_tests.pl: - Added -r as option to specify an alternate root test directory - instead of the current directory. Combined this with -l we can - then run perl scripts for testing project code. + Removed xerces from this file, as its no longer a feature. + Thanks to Adam Mitz for pointing this out. -Thu Feb 28 16:08:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> +Wed Feb 11 06:59:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> - * bin/generate_compile_stats.sh: - Added --compiler as option so that we can specify a different - compiler then gcc + * ace/config-win32-msvc.h: + Disable msc_ver check in this file -Thu Feb 28 08:32:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> +Wed Feb 11 06:52:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> - * docs/ACE-bug-process.html: - Removed cvs + * include/makeinclude/platform_linux.GNU: + Fixed Red Hat detection -Wed Feb 27 19:28:18 UTC 2008 William Otte <wotte@william-ottes-macbook-pro.local> +Tue Feb 10 20:38:27 UTC 2009 William R. Otte <wotte@dre.vanderbilt.edu> * bin/MakeProjectCreator/config/global.features: - disable mcpp by default. - -Tue Feb 26 15:52:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_openvms.GNU: - Added support for buildbits=64 - -Tue Feb 26 09:18:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_openvms.GNU: - Added some compiler flags to reduce the number of warnings/errors - in the OpenVMS builds - -Mon Feb 25 19:44:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - * bin/PerlACE/Process_Unix.pm: - * bin/PerlACE/Process_Win32.pm: - Added IgnoreHostRoot which can be set from a test script. That way - when doing cross host testing we can make sure we don't get the - executable from the host root directory. This is for example usefull - when we want to spawn perl or another system utility + Made xerces2 and xerces3 disabled by default. - * bin/PerlACE/Run_Test.pm: - Removed commented out line +Tue Feb 10 20:16:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> -Mon Feb 25 14:30:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> - - * include/makeinclude/platform_vxwork6.2.GNU: - * include/makeinclude/platform_vxwork6.3.GNU: - Added LD_PARTIALFLAGS which can be set for footprint builds + * ace/OS_NS_ctype.inl: + * ace/Process_Manager.cpp: + * ace/WFMO_Reactor.cpp: + Updated old msvc ver checks to fix fuzz errors -Mon Feb 25 08:13:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> +Tue Feb 10 18:27:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> - * ace/config-macros.h: - Set ACE_HAS_INTEGRAL_TYPE_THR_FUNC_RETURN when - ACE_THR_FUNC_RETURN is an integral type + * netsvcs/lib/Server_Logging_Handler_T.h: + Doxygen change - * ace/Task.cpp: - Use ACE_HAS_INTEGRAL_TYPE_THR_FUNC_RETURN to determine whether - we can do a reinterpret_cast or static_cast. This is much easier - then checking all compilers +Tue Feb 10 18:26:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> -Sun Feb 24 19:37:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * include/makeinclude/platform_linux.GNU: + Changed how we detect broken GCC versions, not check on the platform + but check on the gcc version (RedHat 4.1.1 or 4.1.2) - * ace/Configuration.cpp: - * ace/Configuration.h: - * ace/Configuration.inl: - Added new inline file +Tue Feb 10 18:25:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> - * ace/Get_Opt.cpp: - Prefix increment + * rpmbuild/ace-tao-ciao.spec: + Updated for the next release - * ace/Event_Handler.h: - Removed commented out code +Tue Feb 10 18:23:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> -Sat Feb 23 06:56:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * docs/bczar/bczar.html: + Extended bczar release instructions - * include/makeinclude/platform_openvms.GNU: - OpenVMS doesn't have rwho + * bin/fuzz.pl: + Extended msvc_ver check -Fri Feb 22 18:55:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * debianbuild/control: + Updated for the next release - * ace/Message_Queue_NT.h: - Fixed wrong include +Tue Feb 10 18:20:28 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> -Fri Feb 22 14:20:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * ace/config-pharlap.h: + Define ACE_HAS_WINSOCK1 to 1 - * ace/Message_Queue.{h,cpp,inl}: - * ace/Message_Queue_NT.{h,cpp,inl}: - * tests/Message_Queue_Test.cpp: - * ace/ace.mpc: - * ace/Makefile.am: - Moved ACE_Message_Queue_NT to its own file + * ace/config-vxworks.h: + Added support for VxWorks 6.7 -Fri Feb 22 08:54:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * ace/config-win32-borland.h: + Removed support for C++Builder 2007 - * bin/global.features: - Default optimize_collocated_invocations to 1 + * ace/os_include/sys/os_types.h: + * ace/OS_NS_arpa_inet.cpp: + * ace/OS_NS_unistd.inl: + Fixes for VxWorks 6.7 -Fri Feb 22 00:34:17 UTC 2008 Steve Huston <shuston@riverace.com> +Tue Feb 10 05:39:28 UTC 2009 Phil Mesnier <mesnier_p@ociweb.com> - * bin/tao_orb_tests.lst: Added !LabVIEW_RT to all tests that haven't - been adapted to the non-local filesystem mechanism I invented to run - tests for LabVIEW RT targets (and can also be used for other target - types). Now I can enable TAO tests for the LabVIEW RT scoreboard - build. + * NEWS: + revision bump. -Thu Feb 21 15:25:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> +Tue Feb 10 05:08:24 UTC 2009 Phil Mesnier <mesnier_p@ociweb.com> * docs/Download.html: - Updated download links to point to x.6.3 - * etc/index.html: - Updated for x.6.3 + * bin/diff-builds-and-group-fixed-tests-only.sh + Update latest micro version links and date. + + * ChangeLogs/ChangeLog-09a: + Added this file. -Thu Feb 21 02:34:37 CST 2008 Johnny Willemsen <jwillemsen@remedy.nl> +Mon Feb 09 12:01:28 CST 2009 Phil Mesnier <mesnier_p@ociweb.com> - * ACE version 5.6.3 released. + * ACE version 5.6.8 released. Local Variables: mode: change-log diff --git a/ACE/ChangeLogs/ChangeLog-09a b/ACE/ChangeLogs/ChangeLog-09a new file mode 100644 index 00000000000..f02039d5f51 --- /dev/null +++ b/ACE/ChangeLogs/ChangeLog-09a @@ -0,0 +1,10453 @@ +Mon Feb 09 12:01:28 CST 2009 Phil Mesnier <mesnier_p@ociweb.com> + + * ACE version 5.6.8 released. + +Mon Feb 9 17:35:05 UTC 2009 Phil Mesnier <phil@phil.ociweb.com> + + * NEWS: + Updated news file. + + * docs/bczar/bczar.html: + Changed text to refer to SVN rather than CVS for freeze procedure. + +Mon Feb 9 09:19:17 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/generate_rel_manpages: + We are now using doxygen 1.5.8 + +Fri Feb 6 15:37:15 UTC 2009 Steven Stallion <stallions@ociweb.com> + + * tests/Log_Thread_Inheritance_Test.cpp: + + Fixed missing extern "C" in pthread start routine. + +Fri Feb 6 10:55:17 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * html/Stats/index.shtml: + Updated download link and added xampler link + +Fri Feb 6 10:33:17 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * examples/APG/Containers/Map_Manager_Specialization.cpp: + Fixed compile error in versioned namespace build + +Thu Feb 5 23:50:27 UTC 2009 Jeff Parsons <j.parsons@vanderbilt.edu> + + * THANKS: + + Added Ron van Hoof <rvhoof27 at gmail dot com>. + +Thu Feb 5 23:17:59 UTC 2009 Phil Mesnier <mesnier_p@ociweb.com> + + * THANKS: + + Added Steve Stallion + +Thu Feb 5 22:27:34 UTC 2009 Steven Stallion <stallions@ociweb.com> + + * ace/Base_Thread_Adapter.cpp: + + Backed out uneccessary change introduced in r84339. + +Thu Feb 5 21:14:15 UTC 2009 Steven Stallion <stallions@ociweb.com> + + * ace/Base_Thread_Adapter.cpp: + * tests/Log_Thread_Inheritance_Test.cpp: + + Fixed a SEGV caused by ACE_Log_Msg where ACE threads inheriting + from non-ACE threads copied un-initialized ACE_OS_Log_Msg_Attributes + members. Fixes Bugzilla #3480. + +Thu Feb 5 15:11:13 UTC 2009 Adam Mitz <mitza@ociweb.com> + + * include/makeinclude/rules.local.GNU: + + For the installed binary executable target, added a dependency on + the local binary executable so the installed version is refereshed + when the local one is rebuilt (only an issue when actual copies are + used and not symlinks). Thanks to Hubert Talbot + <Hubert dot Talbot at criq dot qc dot ca> for reporting the issue. + + * tests/run_test.lst: + + Added !QNX to MEM_Stream_Test. This test doesn't work on QNX. + +Wed Feb 4 22:23:26 UTC 2009 Steve Huston <shuston@riverace.com> + + * ace/SOCK_SEQPACK_Acceptor.h: + * ace/Multihomed_INET_Addr.h: Formatting fixes. + + * tests/SOCK_SEQPACK_SCTP_Test.cpp: Removed asserts, fixed IPv6 + operation, resync log after fork(), corrected negative association + test case. + +Tue Feb 3 23:28:50 UTC 2009 Steve Huston <shuston@riverace.com> + + * ace/OS_NS_Thread.cpp (mutex_init, event_init): + * ace/OS_NS_Thread.inl (event_init, sema_init): Make sure errno gets + set to ERROR_ALREADY_EXISTS when creating an object that exists. This + is in Windows code only. Fixes Bugzilla #3541. Thanks to Bill Rizzi + for identifying the bug and supplying the test case and fix. + +Tue Feb 3 19:45:17 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Acceptor.h: + * ace/Active_Map_Manager_T.h: + * ace/CDR_Stream.h: + * ace/Configuration.h: + * ace/Connector.h: + * ace/Dev_Poll_Reactor.h: + * ace/Dirent.h: + * ace/Map_T.h: + * ace/Message_Block.h: + * ace/Message_Queue_Vx.h: + * ace/Name_Request_Reply.h: + * ace/Reactor.h: + * ace/Reactor_Impl.h: + * ace/Select_Reactor_Base.h: + * ace/Select_Reactor_T.h: + * ace/Strategies_T.h: + * ace/WFMO_Reactor.h: + Doxygen changes + + * ace/Unbounded_Queue.h: + * ace/Unbounded_Queue.inl: + Use bool + +Tue Feb 3 15:57:41 UTC 2009 Adam Mitz <mitza@ociweb.com> + + * tests/Logging_Strategy_Test.cpp: + + Use unsigned char instead of char to index arrays, to silence + warnings from GCC 4.3. + +Mon Feb 2 19:07:39 UTC 2009 William R. Otte <wotte@dre.vanderbilt.edu> + + * bin/MakeProjectCreator/config/global.features: + + Added tao_idl_fe_gen feature to be automatically disabled. + +Mon Feb 2 07:40:17 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * netsvcs/lib/Client_Logging_Handler.cpp: + * netsvcs/lib/Server_Logging_Handler_T.cpp: + Check return values of stream operators + + * netsvcs/lib/Client_Logging_Handler.h: + Doxygen changes + +Fri Jan 30 20:42:45 UTC 2009 Steve Huston <shuston@riverace.com> + + * ace/DLL_Manager.cpp (ACE_DLL_Handle::open): Correct ACE_TEXT usage + in AIX case. + + * ace/config-aix-5.x.h: Wrap ACE_DLL_SUFFIX and ACE_LD_SEARCH_PATH + with ACE_TEXT(). + +Fri Jan 30 15:02:08 UTC 2009 Marcel Smit <msmit@remedy.nl> + + * ace/Barrier.cpp: + * ace/Dynamic_Service_Base.cpp: + * ace/Hash_Map_Manager_T.cpp: + * ace/Malloc.cpp: + * ace/Malloc_T.cpp: + * ace/Mutex.cpp: + * ace/Pipe.cpp: + * ace/Semaphore.cpp: + * ace/TSS_T.cpp: + Removed some unnecessary ACE_DEBUG statements. + +Fri Jan 30 12:55:52 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/run_test.lst: + * tests/tests.mpc: + * tests/Bug_3532_Regression.cpp: + Added a new test for bugzilla 3532. This bug is not fixed, just + integrating the regression test. Thanks to Martin Gaus <Gaus at gmx dot de> + for creating this test + +Fri Jan 30 12:38:52 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ACE.cpp: + * ace/Log_Msg.cpp: + Fixed unicode logging problems on non windows platforms + +Fri Jan 30 11:54:52 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Intrusive_List.cpp: + Just have one exit point in the methods + + * ace/Singleton.cpp: + * ace/Singleton.h: + Added a static close() which can be used to explicitly close + an ACE_Singleton. It will then deregister from the object manager + from cleanup. This way an application developer could close his + singletons explicitly, but keep the safety that ACE will do that + also when the application does a shutdown + + * tests/run_test.lst: + * tests/tests.mpc: + * tests/Singleton_Test.cpp: + Added a new test for the close + +Thu Jan 29 18:48:52 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Bug_3541_Regression_Test.cpp: + Fix compile error with WinCE < 6 + + * ace/config-win32-common.h: + Fixed incorrect comment + +Thu Jan 29 12:59:52 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/mpc-mode.el: + Added patch from Stefan Naewe <stefan.naewe@googlemail.com> + +Thu Jan 29 10:33:52 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ATM_Acceptor.cpp: + * ace/ATM_QoS.cpp: + * ace/ATM_Stream.cpp: + * ace/ATM_Stream.inl: + * ace/OS_NS_Thread.inl: + * ace/OS_NS_unistd.inl: + * ace/OS_NS_wchar.cpp: + Don't use () when returning 0 or -1 + +Wed Jan 28 20:22:45 UTC 2009 Adam Mitz <mitza@ociweb.com> + + * bin/ciao_tests.lst: + * bin/tao_orb_tests.lst: + * bin/tao_other_tests.lst: + + Removed these files. They have moved to the TAO and CIAO bin + directories. This resolves bug 2748. + + * bin/auto_run_tests.pl: + * bin/fuzz.pl: + + Updated due to the new locations of the lst files. + +Wed Jan 28 15:02:11 UTC 2009 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Message_Queue_T.cpp: + + Fixed typo in ACE_NEW_RETURN argument list. + +Wed Jan 28 10:24:46 UTC 2009 Marcel Smit <msmit@remedy.nl> + + * bin/tao_orb_tests.lst: + Added new test for bug 3559. + +Wed Jan 28 09:45:53 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Bug_3541_Regression.cpp: + Fixed last compile error + + * tests/Multicast_Test.cpp: + Unicode fix + + * tests/Thread_Pool_Reactor_Resume_Test.cpp: + Unicode fix + +Wed Jan 28 09:09:53 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_arpa_inet.inl: + Use new ACE_HAS_NONCONST_INET_ADDR + + * ace/config-cray.h: + * ace/config-lynxos.h: + * ace/config-tandem.h: + * ace/config-vxworks5.x.h: + * ace/config-vxworks6.2.h: + * ace/config-vxworks6.3.h: + * ace/config-vxworks6.4.h: + Added ACE_HAS_NONCONST_INET_ADDR + + * ace/config-vxworks6.7.h: + Undef ACE_HAS_NONCONST_INET_ADDR, WindRiver fixed their api + +Tue Jan 27 23:28:53 UTC 2009 Steve Huston <shuston@riverace.com> + + * ace/Message_Queue_T.cpp: Don't nest the ACE_HAS_WIN32_OVERLAPPED_IO + ifdef in the ACE_VXWORKS section; it'll never get used. Thanks to + Jesus Martinez <jmcruz at lcc dot uma dot es> for this fix. + + * THANKS: Added Jesus Martinez. + +Mon Jan 26 17:26:41 UTC 2009 Phil Mesnier <mesnier_p@ociweb.com> + + * bin/tao_orb_tests.lst: + Added new test for fix of bug 3557. + +Mon Jan 26 15:44:22 UTC 2009 Marcel Smit <msmit@remedy.nl> + + * tests/Bug_3541_Regression_Test.cpp: + Fixed compiler errors on WinCE target. + +Mon Jan 26 15:39:36 UTC 2009 Marcel Smit <msmit@remedy.nl> + + * bin/tao_orb_tests.lst: + Removed "!LabVIEW_RT", "!WinCE" and "!FUZZ" from: + TAO/tests/DII_AMI_Forward/run_test.pl + TAO/tests/DSI_AMH/run_test.pl + TAO/tests/DSI_AMI_Gateway/run_exception_test.pl + TAO/tests/DSI_AMI_Gateway/run_test.pl + TAO/tests/DSI_Gateway/run_exception_test.pl + TAO/tests/DSI_Gateway/run_test.pl + +Fri Jan 23 08:04:58 UTC 2009 Marcel Smit <msmit@remedy.nl> + + * bin/tao_orb_tests.lst: + Removed "!LabVIEW_RT", "!WinCE" and "!FUZZ" from: + TAO/tests/POA/EndpointPolicy/run_test_dh.pl + TAO/tests/POA/EndpointPolicy/run_test_lh.pl + TAO/tests/POA/Explicit_Activation/run_test.pl + TAO/tests/POA/Loader/run_test.pl + TAO/tests/POA/On_Demand_Activation/run_test.pl + TAO/tests/POA/On_Demand_Loading/run_test.pl + TAO/tests/POA/Reference_Counted_Servant/run_test.pl + +Thu Jan 22 19:20:06 UTC 2009 Adam Mitz <mitza@ociweb.com> + + Minor changes to resolve: + + * ace/Monitor_Control/Windows_Multi_Instance_Monitor.cpp: + * ace/Object_Manager.cpp: + + Win32 build errors with ACE_USES_WCHAR defined. + + * apps/gperf/src/Key_List.cpp: + * tests/ARGV_Test.cpp: + + GCC 4.3 warnings. + +Thu Jan 22 18:34:01 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_sys_sendfile.{h,cpp,inl}: + Previously ACE_HAS_SENDFILE should be defined or not, changed this + that it has be define to 1 or 0, makes it clearer to disable from + config.h + + * ace/config-all.h: + Set ACE_HAS_SENDFILE to 0 when it is not defined yet + +Thu Jan 22 16:51:01 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_sys_socket.inl (sendv): + Introduced a new ACE_DONT_USE_WSASEND, when this is set ACE doesn't + use WSAsend but just a loop of send calls + +Thu Jan 22 15:44:01 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Log_Msg.h: + Only define the ACE_DEBUG/ACE_ERROR* when they are not defined + yet when ACE_NLOGGING is defined. This makes it possible for + users to globally disable logging but then just enable ACE_ERROR + + * ace/Message_Block.cpp: + Code layout changes + + * ace/SOCK_IO.cpp: + * ace/SOCK_Dgram.cpp: + * ace/Select_Reactor_T.cpp: + Just define select_width twice and directly assign it + + * ace/OS_NS_sys_socket.inl: + Move local variables into the loop + + * ace/config-sunos5.9.h: + * ace/config-linux-common.h: + Define ACE_HAS_SENDFILE to 1 + +Thu Jan 22 13:51:01 UTC 2009 Marcel Smit <msmit@remedy.nl> + + * tests/Bug_3500_Regression_Test.cpp: + * tests/Bug_3541_Regression_Test.cpp: + Fixed compiler errors on WinCE target. + +Thu Jan 22 13:38:20 UTC 2009 Vladimir Zykov <vz@prismtech.com> + + * bin/tao_orb_tests.lst: + + Disabled the test for bug#3524 on corba_e_micro builds since it + uses valuetypes. + +Thu Jan 22 07:46:01 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Removed Bug 3543 Regression, the bug is not fixed yet and this test + put a high load on the test systems + +Wed Jan 21 16:05:24 UTC 2009 Adam Mitz <mitza@ociweb.com> + + * include/makeinclude/platform_vxworks6.2.GNU: + * include/makeinclude/platform_vxworks6.3.GNU: + + Fixed a bug in the linker arguments for RTP shared libraries. + +Wed Jan 21 10:19:01 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ace.mpc: + * ace/ace_for_tao.mpc: + Use ace_output as base project instead of setting libout directly in this + mpc file + +Wed Jan 21 02:39:42 UTC 2009 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/CDR_Stream.inl (current_alignment): Removed an + unnecessary/incorrect "return 0;" statement. Thanks to Pan Kai + Luna <pan dot kai dot luna at gmail dot com> for reporting this. + +Tue Jan 20 22:42:08 UTC 2009 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ACE-INSTALL.html (make): Updated the Cygwin documentation. + Thanks to Florent Vial <florent dot vial at gmail dot com> for + contributing this. + +Tue Jan 20 11:04:11 UTC 2009 Marcel Smit <msmit@remedy.nl> + + * tests/Bug_3500_Regression_Test.cpp: + * tests/Bug_3541_Regression_Test.cpp: + Eliminated some warning on Linux build + +Tue Jan 20 06:25:01 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Cleanup.cpp: + Copy the name when it gets passed. It could be that the + string is a static string in a dll and then we can't print + it when things are crashing because the dll is then already + unloaded + +Mon Jan 19 20:53:01 UTC 2009 Steve Huston <shuston@riverace.com> + + * tests/SSL/SSL_Asynch_Stream_Test.cpp: More basic fixes. + +Mon Jan 19 19:34:24 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + + Scheduled the test for bug#3548 + +Mon Jan 19 16:36:33 UTC 2009 Vladimir Zykov <vz@prismtech.com> + + * bin/tao_orb_tests.lst: + + Scheduled the test for bug#3524. + +Mon Jan 19 14:55:19 UTC 2009 Marcel Smit <msmit@remedy.nl> + + * tests/Bug_3500_Regression_Test.cpp: + * tests/Bug_3541_Regression_Test.cpp: + Solved fuzz errors + +Mon Jan 19 12:51:12 UTC 2009 Marcel Smit <msmit@remedy.nl> + + * THANKS + Added Bill Rizzi <rizi at softserv.com> for his contribution to the following automated tests: + Bug_3500_Regression_Test + Bug_3541_Regression_Test + +Mon Jan 19 12:28:12 UTC 2009 Marcel Smit <msmit@remedy.nl> + + * tests/Bug_3500_Regression_Test.cpp: + Added in order to run automated tests for Bugzilla #3500 + + * tests/Bug_3541_Regression_Test.cpp: + Added in order to run automated tests for Bugzilla #3541 + + * tests/tests.mpc: + Added Bug_3500_Regression_Test and Bug_3541_Regression_Test + + * tests/run_test.lst: + Added Bug_3500_Regression_Test and Bug_3541_Regression_Test + +Mon Jan 19 09:14:12 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_Log_Msg_Attributes.inl: + Initialize all members with default values + + * ace/Log_Msg.cpp: + Just delete the casted ACE_Log_Msg pointer, no need todo + another cast + +Mon Jan 19 07:49:12 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/INET_Addr.cpp: + * ace/Log_Record.inl: + Use ACE_HTONL macro + + * ace/INET_Addr.inl: + Use ACE_NTOHS macro + +Fri Jan 16 22:32:38 UTC 2009 Steve Huston <shuston@riverace.com> + + * ace/SSL/SSL_Asynch_Stream.{h cpp}: Remove the handle_ member; use + the handle_ inherited from ACE_Asynch_Operation. + + * tests/SSL/SSL_Asynch_Stream_Test.cpp: Register the acceptor with the + reactor so we hear about incoming connects. Other minor mods to + help see what's going on in the log. Hopefully will resolve + Bugzilla #3164. + +Fri Jan 16 07:26:32 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Token_Invariants.cpp: + * ace/Token_Manager.cpp: + Added missing include + +Thu Jan 15 13:52:32 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_stdlib.h: + Doxygen changes + +Thu Jan 15 13:50:32 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_stdlib.h: + The added name argument should have a default value of 0 + +Thu Jan 15 13:30:32 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Logging_Strategy.h: + * ace/Service_Object.h: + Doxygen change + + * ace/Service_Repository.{h,cpp,inl}: + Removed the restriction that the service repository can't + grow bigger then the size it got passed at construction. The + plain array has been replaced with an ACE_Array_Map which + will grow when needed. The behaviour that removing elements + means gap in the array hasn't been changed. This fixes bugzilla + 3542 + + * ace/Service_Config_Test.cpp: + Extended this test to also test the Service Repository size + and the behaviour that we get gaps when removing services, + adding services after a remove will keep the gaps and just + grows the service repository + +Thu Jan 15 11:13:32 UTC 2009 Marcel Smit <msmit@remedy.nl> + + * bin/tao_orb_tests.lst: + Removed "!LabVIEW_RT", "!WinCE" and "!FUZZ" from: + TAO/tests/POA/DSI/run_test.pl + TAO/tests/POA/Default_Servant2/run_test.pl + +Thu Jan 15 07:56:18 UTC 2009 Marcel Smit <msmit@remedy.nl> + + * bin/tao_orb_tests.lst: + Removed "!LabVIEW_RT", "!WinCE" and "!FUZZ" from: + TAO/tests/POA/Forwarding/run_test.pl + TAO/tests/POA/Persistent_ID/run_test.pl + TAO/tests/POA/Default_Servant/run_test.pl + TAO/tests/POA/Bug_1592_Regression/run_test.pl + TAO/tests/POA/Bug_2511_Regression/run_test.pl + TAO/tests/POA/Deactivate_Object/run_test.pl + TAO/tests/POA/Reference_Counting/run_test.pl + TAO/tests/POA/Current/run_test.pl + TAO/tests/POA/EndpointPolicy/run_test.pl + +Thu Jan 15 07:56:02 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Cleanup.{h,cpp}: + Added a const char* name member to ACE_Cleanup_Info_Node, this + can be passed in when registering an at_exit hook. This string can + then be used during debugging to detect problems at shutdown. It + can happen that the cleanup hook is from a dll that already is + unloaded and then we get a crash with no information, the string + at least can tell us which hook we are calling. This fixes bugzilla + 3544. + + * ace/Log_Msg.cpp: + * ace/Object_Manager.{h,cpp,inl}: + * ace/Object_Manager_Base.{h,cpp}: + * ace/OS_NS_stdlib.{h,inl}: + * ace/Process_Manager.cpp: + * ace/Singleton.cpp: + * ace/Token_Invariants.cpp: + * ace/Token_Manager.cpp: + Pass in the typeid of the object when registering an at_exit hook + + * ace/Thread.cpp: + Moved local variable inside the loop + +Wed Jan 14 20:27:02 UTC 2009 Steve Huston <shuston@riverace.com> + + * tests/Process_Test.cpp: Don't attempt to run this on anything other + than Linux. The code to verify inherited handles uses Linux-specific + mechanisms (particularly, that the entries in /proc/self/fd are + links to the file names opened). It's possible to write code on + other platforms to do the checks but it's non-trivial and will + probably be different for each platform. + +Wed Jan 14 13:13:46 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/os_include/os_typeinfo.h: + New file to wrap typeinfo + + * ace/Makefile.am: + Added new file + + * ace/Naming_Context.{h,cpp,inl}: + Changed debug/verbosity to a bool + +Mon Jan 12 18:59:46 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/ciao_tests.lst: + Disabled DevGuideExample test when there is no xerces + +Mon Jan 12 18:36:46 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Added Bug 3543 Regression + +Mon Jan 12 11:00:46 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Array_Base.h: + * ace/Array_Map.h: + * ace/Vector_T.h: + Doxygen changes + +Mon Jan 12 09:26:46 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * docs/svn/config: + * docs/svn/svn-prefs.reg: + Added ns files used for emulab + +Mon Jan 12 08:45:46 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Default_Constants.h: + Added ACE_DEFAULT_SERVICE_GESTALT_SIZE which defaults to 1024 + + * ace/Service_Gestalt.cpp: + Doxygen changes + + * ace/Service_Gestalt.h: + Use ACE_DEFAULT_SERVICE_GESTALT_SIZE instead of the hardcoded + default of 1024. Also made some doxygen changes + +Mon Jan 12 08:16:46 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Added Bug_3542 + + * bin/ciao_tests.lst: + Disabled DevGuideExample test in some configurations + +Fri Jan 9 15:08:23 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Service_Gestalt.cpp: + Layout changes + + * ace/Service_Repository.{h,cpp}: + Doxygen changes + + * ace/Framework_Component.cpp: + Use prefix increment + + * ace/config-win32-common.h: + Introduced ACE_HAS_WINSOCK1 that is default set to 0 + +Fri Jan 9 15:01:48 UTC 2009 Olli Savia <ops@iki.fi> + + * ace/config-openvms.h: + There's no need to undef clearerr. + +Fri Jan 9 09:46:23 UTC 2009 Marcel Smit <msmit@remedy.nl> + + * bin/tao_orb_tests.lst: + Removed "!LabVIEW_RT", "!WinCE" and "!FUZZ" from: + TAO/tests/Portable_Interceptors/AdvSlotExt/run_test.pl + TAO/tests/Portable_Interceptors/Redirection/run_test.pl + TAO/tests/Portable_Interceptors/Bug_3079/run_test.pl + TAO/tests/Portable_Interceptors/Bug_3080/run_test.pl + +Thu Jan 8 19:15:23 UTC 2009 Marcel Smit <msmit@remedy.nl> + + * bin/tao_orb_tests.lst: + Removed "!LabVIEW_RT", "!WinCE" and "!FUZZ" from: + TAO/tests/Portable_Interceptors/AMI/run_test.pl + TAO/tests/Portable_Interceptors/PolicyFactory/run_test.pl + TAO/tests/Portable_Interceptors/Request_Interceptor_Flow/run_test.pl + +Wed Jan 8 18:18:37 UTC 2009 Marcel Smit <msmit@remedy.nl> + + * bin/tao_orb_tests.lst: + Removed "!LabVIEW_RT", "!WinCE" and "!FUZZ" from: + TAO/tests/Portable_Interceptors/Collocated/Service_Context_Manipulation/run_test.pl + TAO/tests/Portable_Interceptors/ForwardRequest/run_test.pl + TAO/tests/Portable_Interceptors/Processing_Mode_Policy/Collocated/run_test.pl + TAO/tests/Portable_Interceptors/Processing_Mode_Policy/Remote/run_test.pl + TAO/tests/Portable_Interceptors/Service_Context_Manipulation/run_test.pl + +Wed Jan 8 10:39:39 UTC 2009 Marcel Smit <msmit@remedy.nl> + + * bin/tao_orb_tests.lst: + Removed "!LabVIEW_RT", "!WinCE" and "!FUZZ" from: + TAO/tests/Portable_Interceptors/Bug_1559/run_test.pl + TAO/tests/Portable_Interceptors/Bug_2510_Regression/run_test.pl + TAO/tests/Portable_Interceptors/Processing_Mode_Policy/Collocated/run_test.pl + +Wed Jan 7 21:01:39 UTC 2009 Olli Savia <ops@iki.fi> + + * ace/ACE.inl: + Removed tabs. + +Wed Jan 7 16:31:25 UTC 2009 James H. Hill <hillj@isis.vanderbilt.edu> + + * ace/Hash_Map_Manager_T.h: + * ace/Hash_Map_Manager_T.cpp: + + Overloadded the item () and key () accessor methods for the + ACE_Hash_Map_Entry class so the methods can be used with + read-only versions of the ACE_Hash_Map_Entry object. + +Wed Jan 7 14:47:24 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/split-cpp.pl: + Added missing id tag + +Wed Jan 7 14:22:45 UTC 2009 Marcel Smit <smit@remedy.nl> + + * bin/fuzz.pl: + Corrected wrong perl run_test check + +Wed Jan 7 12:09:45 UTC 2009 Olli Savia <ops@iki.fi> + + * examples/Shared_Memory/test_MM.cpp: + Removed check for ACE_LACKS_MKSTEMP. mkstemp() is now + available on all ACE platforms. + +Wed Jan 7 07:40:41 UTC 2009 Olli Savia <ops@iki.fi> + + * ace/OS_NS_math.inl: + Changed floor() and ceil() to use corresponding native functions + by default. + +Tue Jan 6 19:27:24 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * rpmbuild/ace-tao-ciao.spec: + * rpmbuild/ace-tao-ciao.txt: + * rpmbuild/ace-tao.spec: + * rpmbuild/ace-tao.txt: + Made ace-tao-ciao the main spec file, the ace-tao one is created + by Ken Sedgwick which uses that one for Fedora but which we don't + use because it doesn't work with SuSE/CentOS/Mandriva. Hopefully + on the long term Ken will use the ace-tao-ciao file + +Mon Jan 5 15:33:24 UTC 2009 Adam Mitz <mitza@ociweb.com> + + * include/makeinclude/platform_vxworks6.2.GNU: + * include/makeinclude/platform_vxworks6.3.GNU: + + Removed the vxe file from the GENERATED_DIRTY list, this silences + the GNU make warnings for "circular dependencies" on all executable + projects that run the idl compiler. + +Mon Jan 5 09:37:38 UTC 2009 Olli Savia <ops@iki.fi> + + * ace/OS_NS_math.inl: + Changed floor() and ceil() not to use == to compare floating + point values. This removes compile time warnings if gcc's + -Wfloat-equal option is enabled. + + * tests/OS_Test.cpp: + Added tests for floor() and ceil(). + +Sun Jan 4 10:47:27 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl> + + * debianbuild/*: + Updated for next 1.6.8 micro release + +Sun Jan 4 03:55:27 UTC 2009 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/Service_Gestalt.cpp (process_directives): Ensure that the + number of failed services is returned. Thanks to Milan + Cvetkovic <milan dot cvetkovic at mpathix dot com> for + contributing this. + +Fri Jan 2 15:38:31 UTC 2009 Adam Mitz <mitza@ociweb.com> + + * include/makeinclude/platform_sunos5_g++.GNU: + + Reverted this change for bugzilla #3232: + Thu May 8 10:51:29 UTC 2008 Steve Huston <shuston@riverace.com> + While it does remove the redundant -pipe option it also removes + needed options like -g and -O. + Thanks to <milan dot cvetkovik at mpathix dot com> for bringing it + up on the tao-users mailing list. + +Wed Dec 31 15:38:33 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * ace/Stack_Trace.cpp: + + Fixed an off-by-one error in the string formatting code for Linux. + + * tests/Stack_Trace_Test.cpp: + + Use proper ACE_Log_Msg formatters (stack traces are always narrow). + +Fri Dec 26 16:42:33 UTC 2008 Ciju John <johnc at ociweb dot com> + + * bin/ciao_tests.lst: + Correct test location. + +Fri Dec 26 09:10:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Log_Msg.cpp (ACE_Log_Msg_Manager::close): + Added ACE_GCC_DESTRUCTOR_ATTRIBUTE to this method so that it is called + at unload of the ACE library which fixes some valgrind errors + +Thu Dec 25 18:57:10 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * Merry Christmas and may there be Peace on Earth. + +Wed Dec 24 19:09:53 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/Module.cpp (open, ACE_Module): + * ace/Service_Types.{h cpp} (find): + * examples/ASX/Event_Server/Event_Server/Consumer_Router.cpp (info): + * examples/ASX/Event_Server/Event_Server/Supplier_Router.cpp (info): + * examples/ASX/UPIPE_Event_Server/Consumer_Router.cpp (info): + * examples/ASX/UPIPE_Event_Server/Supplier_Router.cpp (info): + Change mod_name to module_name; + agrees with .h file and works around a macro clash (mod_name) + on AIX 6.1. + +Wed Dec 24 11:07:22 UTC 2008 Vladimir Zykov <vladimir.zykov@prismtech.com> + + * bin/ciao_tests.lst: + + Disabled idl3_to_xmi tests on non-xerces builds. + +Wed Dec 24 10:25:46 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-g++-common.h: + Added ACE_GCC_CONSTRUCTOR_ATTRIBUTE which can be used to mark + a static method as a method that should be called when a shared + library gets loaded. Added ACE_GCC_DESTRUCTOR_ATTRIBUTE which + can be used to mark a static method as a method that should be + called when a shared library gets unloaded. Added ACE_DEPRECATED + which can be used to mark a method as deprecated. If a specific + gcc version doesn't have the attributes, you can set ACE_HAS_GCC_x + to 0. This will be used in TAO to explicitly delete static + objects when the dll gets unloaded, we could use this in more + places to reduce our memory leaks + + * ace/config-macros.h: + If ACE_GCC_CONSTRUCTOR_ATTRIBUTE, ACE_GCC_DESTRUCTOR_ATTRIBUTE, + or ACE_DEPRECATED is not defined, then define them to nothing + +Tue Dec 23 15:28:16 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> + + * bin/ciao_tests.lst: + + Scheduled 3 tests for idl3_to_xmi. + +Mon Dec 22 16:05:46 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_time.inl: + Fixed ACE_OS::gethrtime. Thanks to Jaros?aw Nozderko + <jaroslaw dot nozderko at plus dot pl> for reporting this + +Mon Dec 22 11:36:46 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_sunos5_common.GNU: + Solaris 10/11 ship default with lksctp + +Fri Dec 19 15:30:05 UTC 2008 James H. Hill <hillj@isis.vanderbilt.edu> + + * tests/UUID_Test.cpp: + + Updated test to validate that setting the value of a UUID + to NIL via its string format works correctly based on the + previous ChangeLogEntry. + +Fri Dec 19 01:19:36 UTC 2008 James H. Hill <hillj@isis.vanderbilt.edu> + + * ace/UUID.cpp: + + Bug fix where assigning a NIL UUID resulted in an execution + of an obselete ACE_ASSERT statement. + +Wed Dec 17 08:35:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + 2804 doesn't run yet + +Tue Dec 16 15:40:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-qnx-neutrino.h: + * ace/config-qnx-rtp-62x.h: + * ace/config-qnx-rtp-pre62x.h: + * ace/config-tandem-nsk-mips-v2.h: + * ace/config-tandem-nsk-mips-v3.h: + * ace/Pipe.cpp: + * performance-tests/TCP/tcp_test.cpp: + Reworked ACE_LACKS_SOCKET_BUFSIZ into ACE_LACKS_SO_RCVBUF + and ACE_LACKS_SO_SNDBUF so that each of them could be + independently enabled/disabled. Updated a few config files + for this. + +Tue Dec 16 11:04:00 UTC 2008 Olli Savia <ops@iki.fi> + + * ace/config-linux-common.h: + Added #define ACE_HAS_VASPRINTF. + +Mon Dec 15 18:24:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Enabled 3499 again + +Mon Dec 15 13:38:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Enabled bidir tests for wince/fuzz/labview + +Mon Dec 15 09:15:54 UTC 2008 Olli Savia <ops@iki.fi> + + * ace/ACE.h: + * ace/ACE.inl: + Added wchar_t variant of ACE::isdotdir(). Thanks to Johnny + for pointing this out. + +Sat Dec 13 18:25:15 UTC 2008 Ciju John <johnc at ociweb dot com> + + * bin/tao_other_tests.lst: + Accidently turned on a future test. Reverting the same. + +Fri Dec 12 19:23219 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Disabled ICMG_Any_Bug for CORBA/e + +Fri Dec 12 13:26:19 UTC 2008 Olli Savia <ops@iki.fi> + + * NEWS: + Added a note about ACE::isdotdir(). + +Fri Dec 12 13:17:43 UTC 2008 Olli Savia <ops@iki.fi> + + * tests/Dirent_Test.cpp: + Updated to use new ACE::isdotdir() function. + +Fri Dec 12 13:08:58 UTC 2008 Olli Savia <ops@iki.fi> + + * ace/ACE.h: + * ace/ACE.inl: + Added a new function ACE::isdotdir() which determines if a specified + pathname is "dot dir" (ie. "." or ".."). isdotdir() is significantly + faster than pair of strcmp() calls. + +Thu Dec 11 23:08:07 UTC 2008 Ciju John <johnc at ociweb dot com> + + * bin/tao_other_tests.lst: + Disabled some IFR_Service dependent tests for uses_wchar builds. + +Thu Dec 11 14:34:23 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/ace_func.m4: + + Update ACE_FUNC_SYSINFO feature test to compile small programs + that use the two different Linux and SysV/POSIX sysinfo() APIs + before defining ACE_HAS_SYSV_SYSINFO or ACE_HAS_LINUX_SYSINFO. + This should avoid false matches with HP/UX's undocumented + sysinfo() syscall. + +Wed Dec 10 21:06:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * debianbuild/rules: + Removed old line + +Tue Dec 9 16:32:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/split-cpp: + * bin/split-cpp.pl: + Renamed to have pl extension + + * debianbuild/patches/00list: + Updated + + * debianbuild/patches/03-g++-new-throws.dpatch: + * debianbuild/patches/08-fix-perl-shebang.dpatch: + * debianbuild/patches/90-patch-mpc-basedir.dpatch: + * debianbuild/patches/91-patch-dg-basedir.dpatch: + Not needed anymore, this issues are fixed on svn head + + * examples/IPC_SAP/SOCK_SAP/summarize.pl: + * examples/IPC_SAP/SSL_SAP/summarize.pl: + Added missing shebang + +Tue Dec 9 16:19:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * debianbuild/*: + Added all files currently used by the debian package maintainers. + Updated them for 1.6.7, but a lot of patches are not needed + anymore. The goal is to do a cleanup and then provide + debian/ubuntu packages through opensuse build + +Tue Dec 9 4:42:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/depgen.pl: + Use RealBin to get the real location of the perl script + +Mon Dec 8 02:50:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Added bug 3430 regression + +Sat Dec 6 20:18:38 UTC 2008 James H. Hill <hillj@isis.vanderbilt.edu> + + * ace/UUID.h: + * ace/UUID.inl: + * ace/UUID.cpp: + + Implemented the operator = method for the UUID. This will enable + use of UUIDs in STL-like containers. + + Bug fix where using the copy constructor for the UUID would result + in a memory leak. + + Refactored code to use ACE_Auto_Ptr and ACE_Auto_Array_Ptr objects + to reduce code complexity, and ensure memory deallocation during + expected returns. + + * tests/UUID_Test.cpp: + + Added the assignment operator (i.e., operator =) to the UUIDs + test. + +Fri Dec 5 15:38:23 UTC 2008 James H. Hill <hillj@isis.vanderbilt.edu> + + * ace/UUID.h: + * ace/UUID.cpp: + + Made the to_string () method non-mutable, and the as_string_ + member variable 'mutable'. This allows 'const ACE_Utils::UUID' + objects to use to to_string () method since that method is + not changing the value of the UUID. + +Thu Dec 4 11:07:35 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Some tests now seem to run perfect + +Thu Dec 4 09:45:35 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Basic_Types.h: + Fixed compile problems with Solaris wchar + +Thu Dec 4 08:11:35 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Intrusive_List.h: + * ace/Intrusive_List_Node.h: + Include config-lite instead of config-all to break circular + includes in Object_Manager_Base + + * ace/OS_NS_errno.h: + Doxygen change + +Wed Dec 3 23:35:35 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/Basic_Types.h: Reverted change from: + Mon Dec 1 23:51:32 UTC 2008 Steve Huston <shuston@riverace.com> + It broke cases where the format specifier was used in string + catenation. This reintroduces a build failure on Solaris wide-char. + +Wed Dec 3 20:25:19 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/String_Base.cpp (compare): Fixed logic error when strings are + equal, introduced by + Wed Dec 3 16:31:11 UTC 2008 Steve Huston <shuston@riverace.com> + +Wed Dec 3 18:38:49 UTC 2008 James H. Hill <hillj@isis.vanderbilt.edu> + + * docs/svn/svn-prefs.reg: + + Added auto-prop settings for .xme files, which are exported + GME files and only created on Windows platforms. + +Wed Dec 03 18:14:25 UTC 2008 Trevor Fields <fields_t@ociweb.com> + + * bin/tao_other_tests.lst: + Added orbsvcs/tests/InterfaceRepo/IFR_Self_Recursive_IDL_Test + +Wed Dec 3 16:31:11 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/String_Base.cpp (compare): Compare lengths directly instead of + subtracting; clearer and avoids 32/64-bit signed/unsigned issues. + +Wed Dec 3 10:45:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Basic_Types.h: + Use static_cast again, truncate_cast broke HPUX + +Wed Dec 3 07:55:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Basic_Types.h: + Use truncate_cast instead of static_cast + + * ace/CDR_Stream.cpp: + Layout change + + * ace/Cleanup.cpp: + * ace/Cleanup.h: + * ace/Cleanup.inl: + * ace/Object_Manager.cpp: + * ace/Object_Manager.h: + * ace/Object_Manager.inl: + * ace/Object_Manager_Base.cpp: + * ace/Thread_Manager.cpp: + * ace/Thread_Manager.h: + Reimplemented the at_exit list as intrusive_list and also added + the functionality to remove a registered at_exit hook again. This + can be used by DLL's that register objects in the object + manager, but who get unloaded explicitly before the ACE dll. + + * ace/Active_Map_Manager.h: + Doxygen change + +Wed Dec 3 00:41:52 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + + Add missing call to ACE_FUNC_STRTOULL autoconf macro. + +Tue Dec 2 20:01:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Intrusive_List.h: + * ace/Intrusive_List.inl: + Use bool for empty/is_empty methods + + * ace/Intrusive_List_Node.h: + Layout change + +Tue Dec 2 13:54:35 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/os_include/os_wchar.h: + + Provide declaration for wcstoll() If ACE_LACKS_WCSTOLL is + defined. + + Provide declaration for wcstoull() if ACE_LACKS_WCSTOULL is + defined. + + * ace/os_include/os_stdlib.h: + + Provide declaration for strtoll() If ACE_LACKS_STRTOLL is + defined. + + Provide declaration for strtoull() if ACE_LACKS_STRTOULL is + defined. + + * m4/ace_func.m4: + + Change ACE_FUNC_STRTOLL, ACE_FUNC_STRTOULL, ACE_FUNC_WCSTOLL, + and ACE_FUNC_WCSTOULL autoconf macros to define + ACE_LACKS_STRTOLL_PROTOTYPE, ACE_LACKS_STRTOULL_PROTOTYPE, + ACE_LACKS_WCSTOLL_PROTOTYPE, and ACE_LACKS_WCSTOULL_PROTOTYPE + if cooresponding declarations are not present. + +Tue Dec 2 12:47:06 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/ACE.cpp (handle_timed_complete): Fix compile error resulting from + Mon Dec 1 17:55:00 UTC 2008 Steve Huston <shuston@riverace.com> + +Tue Dec 2 11:49:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/mpc-mode.el: + Updated MPC mode for emacs file. Thanks to Jules Colding + <colding at 42tools dot com> for providing this file + +Tue Dec 2 08:39:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Object_Manager.h: + * ace/Object_Manager_Base.h: + Doxygen changes + +Mon Dec 1 23:51:32 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/Basic_Types.h: When defining ACE_*_FORMAT_SPECIFIER in terms + of ACE_*_FORMAT_SPECIFIER_ASCII, use ACE_TEXT_CHAR_TO_TCHAR else + when used, this ends up combining narrow and wide chars, resulting + in build errors. + +Mon Dec 1 17:55:00 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/ACE.cpp (handle_timed_complete): Correct the situations under + which a non-blocking connect() will complete. Previously VxWorks and + AIX did a secondary check for connect success/fail when the socket + selected writeable. All other non-Windows platforms selected for + both readable and writeable, with readable=fail, writeable=success. + This produced false success since BSD sockets always select + writeable, not readable; a secondary check for status is then + required. This fix corrects behavior on non-AIX BSD systems, + particularly HP-UX and Solaris. + +Tue Nov 18 19:06:27 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * tests/README: Updated the explanation of how to build/run the + one-button regression tests. Thanks to Anand Kumar + <anandkumar95 at gmail dot com> for motivating this. + +Mon Dec 1 15:36:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/mpc-mode.el: + Updated MPC mode for emacs file. Thanks to Jules Colding + <colding at 42tools dot com> for providing this file + +Mon Dec 1 14:07:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/mpc-mode.el: + Updated MPC mode for emacs file. Thanks to Jules Colding + <colding at 42tools dot com> for providing this file + +Mon Dec 1 13:46:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Object_Manager.cpp: + Initialise pointers with 0 + + * ace/RW_Mutex.cpp: + * ace/RW_Mutex.h: + * ace/RW_Mutex.inl: + Make removed_ flag a real bool + + * ace/Singleton.h: + Doxygen change + + * ace/SSL/SSL_Context.cpp: + Manage ourselves the life cycle of the SSL_Context singleton. + Previously the SSL library registered a singleton with the ACE + library. When the SSL library is unloaded expliclity before the + ACE library the cleanup in ACE did crash because the SSL code + wasn't there. Now when we cleanup the SSL library we also close + our singleton + + * ace/Thread_Mutex.inl: + Use operator ! + +Mon Dec 1 11:15:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/mpc-mode.el: + Added MPC mode for emacs file. Thanks to Jules Colding + <colding at 42tools dot com> for providing this file + +Mon Dec 1 11:01:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * rpmbuild/ace-tao-ciao.txt: + Improved OpenSuSE Factory support + +Mon Dec 1 10:44:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_other_tests.lst: + Added 3418 + +Sat Nov 29 15:30:21 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/OS_NS_ctype.inl: + + Fix typo in preprocessor conditional. + + * configure.ac: + * m4/ace_func.m4: + + Move feature tests for strtoll(), strtoull(), wcstoll(), and + wcstoull() to new autoconf macros ACE_FUNC_STRTOLL, + ACE_FUNC_STRTOULL, ACE_FUNC_WCSTOLL, and ACE_FUNC_WCSTOULL. + +Sat Nov 29 07:47:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Sock_Connect.cpp: + * ace/OS_NS_ctype.inl: + Fixed compile errors with windows ce + +Fri Nov 28 19:58:02 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + + Improve feature tests for strtoll(), strtoull(), wcstoll(), and + wcstoull(), adding support for ACE_STRTOLL_EQUIVALENT, + ACE_STRTOULL_EQUIVALENT, ACE_WCSTOLL_EQUIVALENT, and + ACE_WCSTOULL_EQUIVALENT. + +Fri Nov 28 16:43:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/SSL/SSL_Asynch_Stream.cpp: + Unicode fix + +Fri Nov 28 16:36:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/SSL/SSL_Asynch_Stream.cpp: + * ace/SSL/SSL_Asynch_Stream.h: + Added post handshake completed hook. See header file for all + the details. + + This fixes bugzilla 3502, thanks to Paul Daugherty + <paul at nextalk dot com> for providing the patches + +Fri Nov 28 16:32:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/SSL/SSL_Asynch_Stream.cpp: + * ace/SSL/SSL_Asynch_Stream.h: + * ace/SSL/SSL_Asynch_Stream.inl: + Added accessor for SSL structure. + + * ace/SSL/SSL_Context.cpp: + * ace/SSL/SSL_Context.h: + * ace/SSL/SSL_Context.inl: + Added possibility to set verify callback + + * ace/SSL/Makefile.am: + Added new SSL_Asynch_Stream.inl + + This fixes bugzilla 3494, thanks to Paul Daugherty + <paul at nextalk dot com> for providing the patches + +Fri Nov 28 15:25:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Added bug_3506 + +Fri Nov 28 14:38:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * rpmbuild/ace-tao-ciao.txt: + Improvement for OpenSuSE Factory + +Fri Nov 28 12:38:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/fuzz.pl: + Extended tests for run_test.pl files + +Fri Nov 28 11:43:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * docs/bczar/bczar.html: + Added an item to update the NEWS files + +Fri Nov 28 11:33:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/fuzz.pl: + Extended tests for run_test.pl files + + * bin/PerlACE/TestTarget.pm: + Added some new variables that we will use for the iBoot + + * bin/tao_orb_tests.lst: + Enabled several tests for Labview/CE/Fuzz and also added a few + TAO tests that where missing from this file + +Fri Nov 28 11:07:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * protocols/ace/HTBP/HTBP_Session.cpp: + * tests/Basic_Types_Test.cpp: + Layout change + +Fri Nov 28 11:05:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * examples/ASX/Event_Server/Event_Server/Options.cpp + * examples/ASX/UPIPE_Event_Server/Options.cpp + Use new ascii format specifier + +Fri Nov 28 11:04:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * contribs/FaCE/CE_ARGV.H: + Doxygen change + +Fri Nov 28 11:03:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * appsJAWS/clients/Blobby/Blob_Handler.cpp: + Use new ascii format specifier + +Fri Nov 28 11:03:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * rpmbuild/ace-tao-ciao.txt: + Updated for next micro release and corrected links for the + nslist/nsdel/nsadd/catior + + * rpmbuild/ace-tao.spec: + Updated for next micro release + +Fri Nov 28 10:59:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Arg_Shifter.h: + * ace/Argv_Type_Converter.h: + * ace/Event_Handler_T.h: + * ace/OS_Errno.h: + * ace/OS_NS_stropts.h: + * ace/SOCK_Dgram_Mcast.h: + * ace/SSL/SSL_Context.h: + Doxygen fix + + * ace/Basic_Types.h: + * ace/config-linux-common.h: + * ace/config-macosx-leopard.h: + * ace/config-macosx-panther.h: + * ace/config-macosx-tiger.h: + * ace/config-macosx.h: + * ace/config-netbsd.h: + * ace/config-sunos5.10.h: + * ace/config-tandem-nsk-mips-v2.h: + * ace/config-tandem-nsk-mips-v3.h: + * ace/config-win32-borland.h: + * ace/config-win32-ghs.h: + * ace/config-win32-mingw.h: + * ace/config-win32-msvc.h: + Added _ASCII versions of all existing format specifiers. + The existing ones are then defined using these ASCII ones. + When using the format specifiers we can now select if we + want to use the ascii or wchar_t ones and don't have to + convert wchar_t to ascii + + * ace/Cleanup.cpp: + * ace/Cleanup.h: + Extended ACE_Cleanup_Info with a constructor that initializes + all members. At the end of ACE_OS_Exit_Info::call_hooks delete + all the hooks, they are invalid at this moment + + * ace/config-cray.h: + * ace/config-sco-5.0.0.h: + Cleanup + + * ace/config-win32-msvc-10.h: + * ace/config-win32-msvc-9.h: + Update for Windows Mobile 6 + + * ace/DLL_Manager.cpp: + Const change + + * ace/os_include/os_errno.h: + Simplified a check + + * ace/OS_NS_ctype.h: + * ace/OS_NS_ctype.inl: + * ace/OS_NS_wctype.cpp + * ace/OS_NS_wctype.h + * ace/OS_NS_wctype.inl + * ace/ace.mpc: + * ace/ace_for_tao.mpc: + * ace/Makefile.am: + Moved ace_iswctype to OS_NS_wctype.{h,cpp,inl}. According to the + opengroup spec this method has to be in that file + + * ace/OS_NS_unistd.inl: + Small layout change + + * ace/Sample_History.cpp: + Const change + + * ace/Service_Repository.cpp: + Use ACE prefix in all debug statements + + * ace/Sock_Connect.cpp: + Make it possible to build with WinCE without winsock2 + + * ace/SOCK_Connector.cpp: + Layout changes and check the result value of setting the + stream in non blocking mode + +Fri Nov 28 10:25:00 UTC 2008 Simon Massey <sma@prismtech.com> + + * docs/bczar/bczar.html: + Annoying little bits and pieces.... + +Fri Nov 28 09:00:00 UTC 2008 Simon Massey <sma@prismtech.com> + + * docs/Download.html: + * etc/index.html: + * bin/diff-builds-and-group-fixed-tests-only.sh + update latest micro version links and date. + +Thu Nov 27 04:09:39 CST 2008 Simon Massey <sma@prismtech.com> + + * ACE version 5.6.7 released. + +Wed Nov 26 16:15:50 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/SSL/SSL_Context.cpp: + + Remove unintentional ; + +Wed Nov 26 13:55:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * NEWS: + Note about added support for FC10. + +Wed Nov 26 10:43:50 UTC 2008 Simon McQueen <sm@prismtech.com> + + * ace/SSL/SSL_Context.cpp: + * ace/SSL/sslconf.h: + + Remove unconditional platform defaults for SSL cert file and + directory. This fixes bug #3511. + +Tue Nov 25 09:30:00 UTC 2008 Simon Massey <sma at prismtech dot com> + on behalf of Adam Mitz <mitza@ociweb.com> + + * ACE-INSTALL.html: + * NEWS: + Update the installation instructions and NEWs. + + on behalf of Yan Dai <dai_y@ociweb.com> + + * bin/tao_other_tests.lst: + Disabled all ImplRepo tests on WCHAR builds and disabled + DevGuideExample ImplRepo test on CORBA_E_COMPACT builds. + +Mon Nov 24 11:21:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessWinCE.pm: + Delete the copied dll's when ACE_TEST_VERBOSE is not defined + + * bin/PerlACE/TestTarget_VxWorks.pm: + We have to wait on a file that appears on the host file system, + we can't wait on the real target + + * bin/PerlACE/TestTarget_WinCE.pm: + No need to override GetFile + +Mon Nov 24 10:46:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-hpux-11.00.h: + HPUX lacks iswascii + +Mon Nov 24 09:32:00 UTC 2008 Simon Massey <sma at prismtech dot com> + on behalf of J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + * NEWS: + Changed the feature test for a "usable" config to warn on + failure instead of exiting with an error. This change should + make it easier to diagnose failures, as the configure script + will now generate a config.h file even when the test fails. + This ensures that the build errors produced can be seen on + the scoreboard to help diagnose the actual problems. + + on behalf of Ken Sedgwick <ken+5a4@bonsai.com> + + * rpmbuild/ace-tao.spec: + Updated for tao_ prefixed catior, nsadd, nsdel and nslist. + + * rpmbuild/ace-tao-macros.patch: + Updated to add include into path to version.h + +Fri Nov 21 15:58:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/tao_orb_tests.lst: + * bin/tao_other_tests.lst: + Remove some lynxos problem tests. + +Fri Nov 21 11:00:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/OS_Memory.h: + Ensure ACE_bad_alloc is defined as a class for throwing if + new doesn't throw themselves. Internally this isn't used but + some tests try and throw this on a zero pointer. + +Fri Nov 21 09:52:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/tao_orb_tests.lst: + * tests/run_test.lst: + "Process_Test" and "Bug_3499_Regression" Marked !FIXED_BUGS_ONLY. + + * configure.ac: + Add missing "isblank iswblank isctype iswctype" to the list of + ACE_CHECKS_LACKS_FUNCS. This should fix the autoconfigure builds. + +Wed Nov 19 15:58:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-win32-common.h: + Fixed WinCE version number check + +Wed Nov 19 09:10:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * NEWS: + Updated. + +Tue Nov 18 10:30:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-sunos5.10.h + * ace/SOCK_SEQPACK_Association.cpp: + Fix compile problems when sctp is enabled + +Tue Nov 18 07:49:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/MakeProjectCreator/config/acedefaults.mpb: + Enable macro_for_lib_modifier for vc71 + +Tue Nov 18 07:32:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-win32-mingw.h: + Fixed compile problem + +Mon Nov 17 16:09:06 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * bin/MakeProjectCreator/templates/gnu.mpd: + + Set LIB_PREFIX earlier on so that the VxWorks included makefiles + work properly (with VXWORKSLINK). + + * include/makeinclude/rules.lib.GNU: + + Removed reference to old "LIB" macro. + +Mon Nov 17 13:47:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Enabled a test for Labview/WinCE/FUZZ + +Mon Nov 17 13:34:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * docs/run_test.txt: + First step to update this to the new testframework + +Mon Nov 17 12:54:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_other_tests.lst: + Enabled a set of tests for Labview/WinCE/FUZZ + +Mon Nov 17 12:29:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Disabled bug 1636 for corba/e and minimum corba + +Mon Nov 17 12:02:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + * bin/tao_other_tests.lst: + Moved PICurrent_NameService to the other list + +Mon Nov 17 11:56:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Enabled a set of tests for Labview/WinCE/FUZZ + +Mon Nov 17 11:55:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/TestTarget.pm: + Added AddLibPath + + * bin/fuzz.pl: + Mark PerlACE::add_lib_path as error, we shuld use AddLibPath on + the target from now + +Mon Nov 17 11:28:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Enabled a set of tests for Labview/WinCE/FUZZ + +Mon Nov 17 11:13:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/tests.mpc: + Bug_2772_Regression needs threads + +Mon Nov 17 11:07:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-macros.h: + Use ACE_TEXT for ACE_LD_DECORATOR_STR + + * bin/MakeProjectCreator/config/acedefaults.mpb: + Also with bmake use MPC_LIB_MODIFIER + +Mon Nov 17 10:38:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Enabled a set of tests for Labview/WinCE/FUZZ + +Mon Nov 17 10:22:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Get_Opt_Test.cpp: + Renamed empty to empty_string to resolve clash with msvc header + files + +Mon Nov 17 10:11:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_sunos5_common.GNU: + On Solaris 10 we have sctp, enable this by adding the following line + in your platform_macros.GNU file. + sctp = lksctp + Thanks to Milan Cvetkovic <milan dot cvetkovic at mpathix dot com> + for providing this change. This is part of bugzilla 3492 + +Mon Nov 17 10:04:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-win32-msvc-8.h: + * ace/config-win32-msvc-10.h: + If ACE_HAS_EXCEPTIONS is defined, avoid re-defining it. + +Mon Nov 17 09:20:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-win32-mingw.h: + Added missing defines + +Mon Nov 17 09:12:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-win32-common.h: + Updated version check for WinCE + +Mon Nov 17 08:46:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessWinCE.pm: + Removed VxWorks specific commandline code + +Mon Nov 17 08:38:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Added bug_3470 + +Mon Nov 17 08:37:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-macros.h: + If MPC_LIB_MODIFIER is defined then set ACE_LD_DECORATOR_STR to + this value. This way the DLL find routines in ACE do use the MPC + modifier name automatically + + * ace/config-win32-msvc.h: + No need anymore to set ACE_LD_DECORATOR_STR + + * ace/DLL_Manager.cpp: + * ace/Lib_Find.cpp: + * tests/Based_Pointer_Test.cpp: + * tests/DLL_Test.cpp: + When ACE_LD_DECORATOR_STR is set, then use it on any platform + + * ace/Service_Gestalt.h: + Doxygen change + + * ace/Service_Gestalt.inl: + Layout change + + * bin/MakeProjectCreator/config/acedefaults.mpb: + Enable macro_for_lib_modifier for vc7/vc8/vc9/vc10/nmake + + * bin/MakeProjectCreator/templates/vxtest.mpd: + Added libname_prefix and lib_modifier support + + * tests/Bug_2772_Regression_Test.cpp: + Fixed compile problem with Cygwin + +Sun Nov 16 17:30:06 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * include/makeinclude/platform_gnuwin32_common.GNU: + + Set RC_OUTPUT_FLAG for use the with the "windres" tool. + +Sun Nov 16 06:52:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Bug_3505_Regression_Test.cpp: + Fixed conversion warnings + + * tests/Based_Pointer_Test.cpp: + * tests/DLL_Test.cpp: + When ACE_LD_DECORATOR_STR has been defined, just use it on any + platform + +Sun Nov 16 06:30:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Bug_2772_Regression.cpp: + Fixed compile warning with pthread + +Sat Nov 15 20:08:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Disabled the DevGuideExamples for VxWorks because the test scripts + are not converted yet + +Sat Nov 15 19:53:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Time_Value.inl: + Disable conversion warning for WinCE 6 only to get at least a warning + free build + + * ace/OS_NS_time.h: + Doxygen change + +Sat Nov 15 19:14:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX_Win32.pm: + Removed not used line + + * bin/PerlACE/ProcessWinCE.pm: + Fixed a problem that single and double quotes in the + commandline arguments where not escaped + + * bin/fuzz.pl: + Added another run_test check + +Sat Nov 15 19:09:55 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * include/makeinclude/platform_win32_msvc.GNU: + + Added dollar-Id-dollar to make fuzz.pl happy. + +Sat Nov 15 18:55:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Bug_2772_Regression.cpp: + Fixed compile problem with Cygwin + +Fri Nov 14 22:35:43 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * include/makeinclude/platform_win32_msvc.GNU: + + New file for building with GNU make and the Visual C++ + compiler/linker on Win32 platforms. See the header comments + in this file for details. + + * ace/Monitor_Control/Monitor_Control.mpc: + + Add support for linking pdh.lib (from Win32) with -type gnuace. + + * ace/config-win32-msvc-9.h: + + If ACE_HAS_EXCEPTIONS is defined, avoid re-defining it. + + * bin/MakeProjectCreator/config/ace_mc.mpb: + + Add the section for linking pdh.lib (from Monitor_Control.mpc) + so that dependent projects inherit this setting (needed for static). + + * bin/MakeProjectCreator/templates/gnu.mpd: + * include/makeinclude/rules.lib.GNU: + * include/makeinclude/rules.local.GNU: + * include/makeinclude/wrapper_macros.GNU: + + A new macro $(LIB_PREFIX) is used in place of a hardcoded "lib". + The macro $(LIB) has been renamed to $(LIB_CHECKED) to avoid + conflicts. + Other changes to make the command lines and file names a + little more flexible. + +Fri Nov 14 22:25:34 UTC 2008 Steve Huston <shuston@riverace.com> + + * include/makeinclude/wrapper_macros.GNU: + * include/makeinclude/rules.local.GNU: + * include/makeinclude/rules.lib.GNU: + * include/makeinclude/rules.bin.GNU: + * NEWS: + Add a new feature to enable users to build for multiple architectures + out of a single directory. See Bugzilla #3507. + +Fri Nov 14 19:17:35 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * ace/ACE.h: + * ace/ACE.cpp: + + Enhanced the ACE::wild_match() algorithm to support escaped wildcards + and character classes. See the doxygen comment for details. + + * tests/Wild_Match_Test.cpp: + * tests/run_test.lst: + * tests/tests.mpc: + + Added a new test for ACE::wild_match(). + + * tests/Log_Thread_Inheritance_Test.cpp: + + Removed the ; after ACE_RCSID. Apparently it has its own ;. + +Fri Nov 14 19:03:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Parse_Node.cpp: + Only print the debug message when ACE::debug() is enabled. This + prevent a lot of messages on the WinCE console. Fixes bugzilla + 3505 + + * ace/Service_Gestalt.cpp: + Renamed getopt to get_opt so that we can remove all the fuzz + disable/enable lines + +Fri Nov 14 18:54:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Bug_3505_Regression_Test.cpp: + * tests/run_test.lst: + * tests/tests.mpc: + ACE_Service_Gestalt is another one that could enable ACE::debug, + added a test to see if that is the reason why ACE::debug is enabled + on WinCE + +Fri Nov 14 18:39:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ACE.cpp: + * ace/Arg_Shifter.cpp: + Layout change + + * ace/Arg_Shifter.h: + Doxygen change + + * tests/ACE_Test.cpp: + Added test for ACE_DEBUG environment variable + + * tests/Arg_Shifter_Test.cpp: + Added another test, on WinCE we see that ACE::debug() is enabled + when running TAO, one of the reasons could be a problem in the + commandline handling + +Fri Nov 14 13:06:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_Thread.inl: + Compare with ACE_Time_Value::zero + +Fri Nov 14 13:03:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ACE-INSTALL.html: + * docs/CE-status.txt: + * docs/wchar.txt: + Windows CE updates + +Fri Nov 14 12:47:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Disabled several tests for CORBA/e micro + +Fri Nov 14 12:30:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Added missing 3499 + +Fri Nov 14 11:38:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Bug_2772_Regression_Test.cpp: + * tests/run_test.lst: + * tests/tests.mpc: + Added an ACE-ified version of the regression test for bugzilla + 2772. This hangs on my Vista development system. Marked the + bug as not fixed to not pollute the test stats for the bczar. + Let the scoreboard now show whether this works or not. Thanks + to Greg Bothe <ace at netrats dot net> for creating the + original test + +Fri Nov 14 10:59:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Log_Thread_Inheritance_Test.cpp: + + wchar fix. + +Thu Nov 13 09:53:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Malloc_Test.cpp: + Use argv[0] as process name when it is available + + * tests/Process_Strategy_Test.cpp: + Minor improvements and don't use ACE_ASSERT + +Thu Nov 13 09:41:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Acceptor.h: + Fixed some typos in the doxygen documentation + + * ace/ACE.cpp: + * ace/OS_NS_Thread.cpp: + * ace/SOCK_Connector.cpp: + * ace/SOCK_SEQPACK_Connector.cpp: + * ace/TLI_Connector.cpp: + * ace/Token.cpp: + Compare with ACE_Time_Value::zero + + * ace/config-WinCE.h: + Windows CE 6 has GetSystemTimeAsFileTime. Also moved + some typedefs out of this file + + * ace/Event_Handler.cpp: + Removed some commented out defines + + * ace/Filecache.cpp: + Also call difftime on Windows CE, we have an emulation + for this method + + * ace/High_Res_Timer.cpp: + * ace/High_Res_Timer.h: + Enable this for WinCE + + * ace/Metrics_Cache_T.inl: + Layout change + + * ace/os_include/os_signal.h: + * ace/os_include/sys/os_types.h: + Added typedefs for Windows CE + + * ace/OS_NS_stdio.inl: + * ace/OS_NS_unistd.inl: + Updated comment + + * ace/OS_NS_sys_time.inl: + Windows CE 6 has GetSystemTimeAsFileTime + + * ace/OS_NS_sys_wait.h: + Doxygen change + + * ace/OS_NS_unistd.cpp: + Reworked pread/pwrite on Windows so that both methods are + more equal and do check all return values and set errno + + * ace/SString.cpp: + Removed commented out WinCE include + + * ace/Stats.cpp: + Just call strerror on CE + + * ace/UTF16_Encoding_Converter.cpp: + Initialse pointer with 0 + + * ace/WFMO_Reactor.cpp: + The wait method on Windows can work with a relative time. When + just doing a ping check on WinCE, just pass in ACE_Time_Value::zero + instead of first getting the current time, call wait where then + current time is converted back to relative time + +Thu Nov 13 15:26:17 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * ace/Log_Msg.h: + * ace/Log_Msg.cpp: + * ace/OS_Log_Msg_Attributes.h: + + Fix for bug 3480. If the user passes "true" as the 2nd arg of + msg_ostream(), ACE takes ownership of the output stream. Since this + stream can be shared between multiple ACE_Log_Msg instances + (in multiple threads), we will now keep a reference count on the + output stream and only delete it when the last ACE_Log_Msg instance + is destroyed. + + * tests/run_test.lst: + * tests/tests.mpc: + * tests/Log_Thread_Inheritance_Test.cpp: + + Added a test for this change. + +Thu Nov 13 15:25:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Service_Config_Test.cpp: + Just not give arguments a name if you don't need them + + * tests/Logging_Strategy_Test.cpp: + Use ACE_DEFAULT_TEST_DIR to get a full path on Windows CE + +Thu Nov 13 14:56:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Enabled some tests for FUZZ/Labview/WinCE + +Thu Nov 13 14:47:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Added some missing tests and enabled some tests for FUZZ/Labview/ + WinCE + +Thu Nov 13 12:13:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-win32-common.h: + WinCE 5 seems to lack a lot of defines, so updated version check + + * ace/OS_NS_unistd.inl (dup): + Return ACE_INVALID_HANDLE instead of -1 + +Thu Nov 13 11:08:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * configure.ac: + Updated mailing list address + +Thu Nov 13 10:36:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Config_Test.cpp: + Fixed possible corruption of filename + +Thu Nov 13 10:05:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/fuzz.pl: + sln files are allowed at this moment + +Thu Nov 13 09:15:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Process_Test.cpp: + Fixed unicode compile problems + +Thu Nov 13 08:32:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/fuzz.pl: + The lst files below are now parsed and all the perl files that are not + marked with !FUZZ are checked + + * bin/tao_orb_tests.lst: + * bin/tao_other_tests.lst: + * bin/ciao_tests.lst: + Mark a lot of test with !FUZZ, these have to be updated + +Thu Nov 13 08:07:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Cached_Conn_Test.cpp: + Layout change in debug statement + +Thu Nov 13 08:06:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/acetest.mpb: + Explicit list build files + +Thu Nov 13 08:01:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + * bin/PerlACE/TestTarget_VxWorks.pm: + Fixed test scripts when the old test framework is use + +Thu Nov 13 07:05:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_main.cpp: + Fixed bug in CE commandline conversion + +Wed Nov 12 19:25:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-WinCE.h: + WinCE 5 and earlier DuplicateHandle + + * ace/OS_NS_unistd.inl (dup): + Use ACE_LACKS_DUP so that we don't have a special codeblock for + Windows CE + + * ace/Thread_Manager.cpp: + Use ACE_LACKS_DUPLICATEHANDLE whether we can use DupliceHandle or + not + +Wed Nov 12 19:06:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/TestTarget.pm: + Added RandomPort + + * protocols/tests/HTBP/ping/run_test.pl: + * protocols/tests/HTBP/Reactor_Tests/run_test.pl: + * protocols/tests/HTBP/Send_Large_Msg/run_test.pl: + * protocols/tests/HTBP/Send_Recv_Tests/run_test.pl: + Use TestTarget->RandomPort + +Wed Nov 12 19:00:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Dirent_Test.cpp: + Unicode fix + +Wed Nov 12 18:40:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-WinCE.h: + Added ACE_LACKS_REGNOTIFYCHANGEKEYVALUE + + * examples/Reactor/WFMO_Reactor/WFMO_Reactor.mpc: + Build all these examples with Windows CE + + * examples/Reactor/WFMO_Reactor/run_test.pl: + Check if target got created + + * examples/Reactor/WFMO_Reactor/APC.cpp: + * examples/Reactor/WFMO_Reactor/Registry_Changes.cpp: + Made these compiling with Windows CE. It are nothing more then + empty tests at that moment, but that way we don't get false + negatives + +Wed Nov 12 16:04:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * config-WinCE.h: + WinCE versions older then 6 don't have errno + +Wed Nov 12 15:57:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_main.cpp: + Make sure there is a space between the executable name and + the original arguments with WinCE + +Wed Nov 12 15:38:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Cached_Accept_Conn_Test.cpp: + Added %T to the iteration debug message + + * tests/MEM_Stream_Test.cpp: + * tests/Pipe_Test.cpp: + * tests/Process_Manager_Test.cpp: + * tests/Process_Manual_Event_Test.cpp: + * tests/Process_Mutex_Test.cpp: + * tests/RW_Process_Mutex_Test.cpp: + * tests/SOCK_Dgram_Bcast_Test.cpp: + If argc > 0 use argv[0] as program name, else use a hardcoded + string. This way this test runs on any platform including WinCE + (where argv[0] has a full path) and VxWorks (where argc = 0) + +Wed Nov 12 15:21:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/MEM_Stream_Test.cpp: + Use argv[0] + +Wed Nov 12 14:52:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/OS_Test.cpp: + No need to use TEST_DIR, the problem on WinCE was a problem in + ACE_OS::rename + +Wed Nov 12 14:10:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-vxworks6.7.h: + * include/makeinclude/platform_vxworks6.7.GNU: + Initial files for VxWorks 6.7 which we expect soon + +Wed Nov 12 13:24:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Process_Test.cpp: + Wrong macro used. + +Wed Nov 12 10:52:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Enabled a few tests for WinCE/Labview + +Wed Nov 12 09:35:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * protocols/tests/HTBP/ping/run_test.pl: + * protocols/tests/HTBP/Reactor_Tests/run_test.pl: + * protocols/tests/HTBP/Send_Large_Msg/run_test.pl: + * protocols/tests/HTBP/Send_Recv_Tests/run_test.pl: + Use 2 targets + +Wed Nov 12 09:31:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/Process.pm: + If ACE_RUNTEST_DELAY is not set, default the wait delay factor + to 1 + +Wed Nov 12 09:01:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/TestTarget_WinCE.pm: + And more path tweaks + +Wed Nov 12 08:48:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/fuzz.pl: + Fixed fuzz error in the fuzz script itself + +Wed Nov 12 08:47:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/TestTarget.pm: + * bin/PerlACE/TestTarget_WinCE.pm: + Added HOST_ROOT and more WinCE path tweaks + +Wed Nov 12 08:27:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/Process_Win32.pm: + Removed duplicate basename + + * bin/fuzz.pl: + Extended the run_test.pl check and enabled it. Ignore TAO and + CIAO for the moment, we first need to update the existing + scripts to the new test framework + +Wed Nov 12 08:19:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/TestTarget_WinCE.pm: + Extended path handling for WinCE + +Wed Nov 12 07:47:30 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/README: + Updated + +Tue Nov 11 22:22:04 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/OS_NS_sys_mman.inl (mmap): Added a fix for a problem where + ACE_OS::mmap() failed when called with + file_handle=ACE_INVALID_HANDLE and file_mapping=0. Thanks to + Bill Rizzi <rizzi at softserv dot com> for this fix. This fixes + bugid 3500. + +Tue Nov 11 14:24:00 UTC 2008 Simon Massey<sma at prismtech dot com> + + * tests/Process_Test.cpp: + Another wchar issue. + +Tue Nov 11 13:52:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/config-lynxos.h: + Missed removal of ACE_HAS_SYSV_IPC for LynxOS5.0. + +Tue Nov 11 13:34:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Cached_Conn_Test.cpp: + Print a timestamp with each iteration + +Tue Nov 11 13:26:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_Thread.cpp: + Check the return value of thr_setprio + + * ace/Process.cpp: + Always initialize process_name_ + + * ace/Process_Manager.cpp: + Use this-> + + * tests/OS_Test.cpp: + WinCE can't rename when the target already exists + + * tests/Reactor_Dispatch_Order_Test.cpp: + Const change + +Tue Nov 11 10:43:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_stdio.inl: + Fixed rename on WinCE + +Tue Nov 11 10:03:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/TestTarget_VxWorks.pm: + Just use the WaitForFileTimed from the base + + * bin/tao_orb_tests.lst: + Enabled some tests for Labview/WinCE + +Mon Nov 10 23:28:36 UTC 2008 Trevor Fields <fields_t@ociweb.com> + + * bin/tao_other_tests.lst: + + Added regression test for bug 3495. + +Mon Nov 10 20:16:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Enabled several TAO tests for Labview and WinCE, these are converted + to the new test framework + +Mon Nov 10 19:30:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Process_Manager_Test.cpp: + Layout change + + * tests/Process_Manual_Event_Test.cpp: + Use ACE_ERROR_RETURN instead of ACE_ASSERT + +Mon Nov 10 19:23:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/OS_Test.cpp: + Also use TEST_DIR when it is defined + +Mon Nov 10 19:16:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-WinCE.h: + Enabling bsearch results in a linker error + + * ace/OS_NS_Thread.inl: + Use ACE_TEXT_CreateSemaphe + + * tests/Config_Test.cpp: + Use TEST_DIR as directory of the import file when it is defined. + Windows CE doesn't have a current directory but TEST_DIR is set + when building on CE + + * tests/Dirent_Test.cpp: + Use different logging macros when ACE_HAS_TCHAR_DIRENT is defined + + * tests/test_config.h: + Removed not needed semi colon + +Mon Nov 10 18:40:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-win32-common.h: + * ace/config-WinCE.h: + Enable a few more methods for WinCE + +Mon Nov 10 15:29:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Malloc_Test.cpp: + Fixed compile error + +Mon Nov 10 15:28:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-WinCE.h: + Removed a lot of defines that are really not needed + + * ace/OS_NS_stdlib.{h,cpp,inl}: + Removed ACE_HAS_WINCE checks with realpath + + * ace/config-win32-common.h: + Latest wince versions do have missing defines + +Mon Nov 10 14:28:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Process_Test.cpp: + Another wchar issue. + +Mon Nov 10 12:53:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-WinCE.h: + WinCE 5 and newer do have filelocks + + * ace/OS_NS_stdio.inl (flock_unlock): + Use UnlockFileEx because this is also available on WinCE + + * tests/Naming_Test.cpp: + Use ACE::get_temp_dir to get the real temp dir + +Mon Nov 10 11:48:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Malloc_Test.cpp: + Use argv[0] + + * tests/TP_Reactor_Test.cpp: + Use ACE_TEXT + +Mon Nov 10 10:46:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ace_for_tao.mpc + * ace/config-win32-msvc-10.h + * ace/config-win32-msvc.h + * ace/Monitor_Control/Monitor_Control.mpc + * ace/QoS/qos.mpc + * bin/MakeProjectCreator/config/ace_fl.mpb + * bin/MakeProjectCreator/config/ace_gl.mpb + * bin/MakeProjectCreator/config/ace_qt.mpb + * bin/MakeProjectCreator/config/ace_x11.mpb + * bin/MakeProjectCreator/config/crosscompile.mpb + * bin/MakeProjectCreator/config/ipv6.mpb + * bin/MakeProjectCreator/config/vc_warnings.mpb + Added Visual Studio 2010 (vc10) support + +Mon Nov 10 09:50:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-WinCE.h: + Set ACE_DEFAULT_THREAD_KEYS to TLS_MINIMUM_AVAILABLE when it is + not defined yet. This is the minimum number of TLS indexes always + available to a process + +Mon Nov 10 09:35:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/make_release.py: + Added Windows Mobile 6 projects + + * bin/PerlACE/TestTarget.pm: + * bin/PerlACE/README: + Added HostName and added a few variables that are needed for + VxWorks in the near future. This fixes bugzilla 3496 + + * protocols/tests/HTBP/ping/run_test.pl: + * protocols/tests/HTBP/Reactor_Tests/run_test.pl: + * protocols/tests/HTBP/Send_Large_Msg/run_test.pl: + * protocols/tests/HTBP/Send_Recv_Tests/run_test.pl: + * protocols/tests/RMCast/run_test.pl: + Updated to the new test framework + + * protocols/tests/HTBP/README: + Location of the HTBP lib was old + +Sun Nov 9 11:45:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Sched_Params.cpp: + Updated for WinCE priorities + + * ace/OS_main.cpp: + Const change + +Sat Nov 8 07:11:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/MEM_Stream_Test.cpp: + use argv[0] + + * tests/Malloc_Test.cpp: + Removed WinCE code + +Sat Nov 8 07:03:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * examples/Reactor/WFMO_Reactor/run_test.pl: + Convert to use the new test framework + +Fri Nov 7 20:10:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Dirent_Test.cpp: + Use the open method of ACE_Dirent instead of the constructor + so that we can check the return value and also use ACE_DEFAULT_TEST_DIR + when it is defined + +Fri Nov 7 19:53:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_other_tests.lst: + Disabled several DevGuidExamples in the ACE_FOR_TAO configuration + +Fri Nov 7 19:11:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + * bin/PerlACE/ProcessWinCE.pm: + Increased timeout so that we don't kill the ACE tests before + they had the change to finish + +Fri Nov 7 18:05:00 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * bin/tao_orb_tests.lst: + + Added Bug_3481_Regression. + +Fri Nov 7 13:30:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Process_Test.cpp: + Like an idiot I didn't invert the original ACE_ASSERT test when + I converted them to if () go_and_complain; + Also another attempt to correct for wide character ACE_TCHAR + versions. + +Fri Nov 7 12:02:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/run_test.pl: + Removed all specific VxWorks support, we are using the generic test + framework now + +Fri Nov 7 09:47:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_main.cpp: + Use ACE_TEXT_GetModuleFileName to get the executable name + on Windows CE + +Fri Nov 7 09:11:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Makefile.am: + Removed references to CE_fostream + +Thu Nov 6 19:26:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-WinCE.h: + CE doesn't have FILE_SHARE_DELETE like regular windows as default + file permissions + + * tests/CDR_File_Test.cpp: + WinCE does have ostream, so removed CE_fostream and also removed the + code that tries to unlink the file directly after it has been created. + It really depends also on the file system whether this works or not. + + * tests/CE_fostream.cpp: + * tests/CE_fostream.h: + Removed + + * tests/tests.mpc: + Removed CE_fostream + +Thu Nov 6 18:08:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-openvms.h: + Added ACE_LACKS_ISBLANK/ACE_LACKS_ISCTYPE + + * ace/config-qnx-rtp-62x.h: + Added ACE_LACKS_ISCTYPE + + * ace/OS_NS_unistd.h: + Doxygen changes + +Wed Nov 5 15:11:17 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/SOCK_SEQPACK_Association.cpp (get_remote_addrs): Changed + ACE_USES_SOLARIS_SCTP to ACE_HAS_VOID_PTR_SCTP_GETPADDRS. + Thanks to Johnny for this suggestion. + +Thu Nov 6 14:33:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Process_Test.cpp: + Use pid_t, ACE_HANDLE and ACE_INVALID_HANDLE; + +Thu Nov 6 14:10:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Process_Test.cpp: + Don't use ACE_ASSERT(); + +Thu Nov 6 13:19:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-win32-borland.h: + Add a check if people are using a supported compiler + +Thu Nov 6 13:12:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX.pm: + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + * bin/PerlACE/ProcessWinCE.pm: + Poweroff the target at the end of the run. If you want to keep + it on power, set ACE_RUN_VX_NO_SHUTDOWN as environment variable + +Thu Nov 6 13:08:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Buffer_Stream_Test.cpp: + * tests/MEM_Stream_Test.cpp: + * tests/MM_Shared_Memory_Test.cpp + * tests/Priority_Task_Test.cpp + Removed WinCE specific code + + * tests/Bug_3432_Regression_Test.cpp: + This test needs strftime, if is not there, just print a message + and exit + + * tests/Notify_Performance_Test.cpp: + * tests/Reactor_Performance_Test.cpp + WFMO_Reactor is dependent on winsock2 + +Thu Nov 6 12:00:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Process_Test.cpp: + Apply modified patch to correct for problems on scoreboard. + +Thu Nov 6 09:48:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/TestTarget.pm + * bin/PerlACE/README: + Added PROCESS_START_WAIT_INTERVAL and PROCESS_STOP_WAIT_INTERVAL + as environment variables so that we can configure a longer wait + time. + + * bin/PerlACE/TestTarget_WinCE.pm: + Removed ProcessStartWaitInterval method, not needed + +Thu Nov 6 08:22:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Bug_3432_Regression_Test.cpp: + * tests/CDR_File_Test.cpp: + * tests/Message_Queue_Test.cpp: + * tests/OS_Test.cpp: + * tests/Process_Manager_Test.cpp: + * ace/Service_Repository.cpp: + * tests/TP_Reactor_Test.cpp: + Fixed unicode problems + + * tests/run_test.pl: + Add the process startup time to the test time, improves the + test results on slow systems + +Wed Nov 5 19:23:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + * bin/PerlACE/ProcessWinCE.pm: + * bin/PerlACE/TestTarget_VxWorks.pm: + * bin/PerlACE/TestTarget_WinCE.pm: + Store a reference to the target in the process and set the + executable extension correct for windows ce + +Wed Nov 5 15:54:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_ctype.inl: + Don't emulate isblank with isctype(_ISBLANK), isctype only checks + for space, isblank should check space and tab + +Wed Nov 5 13:20:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Process_Test.cpp: + Attempt to correct for wide character ACE_TCHAR versions. + +Wed Nov 5 09:36:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Process_Test.cpp: + Removed Fuzz errors. + +Wed Nov 5 08:49:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-lynxos.h: + LynxOS5 has isblank + + * ace/config-aix-5.x.h: + AIX lacks isctype + +Wed Nov 5 04:04:57 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * May the next president of the USA have the strength and courage + to lead the USA wisely and help it to achieve its promise as a + advocate for freedom and democracy. + +Tue Nov 4 22:45:20 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/SOCK_SEQPACK_Association.cpp: Added #ifdefs for + ACE_USES_SOLARIS_SCTP. Thanks to Steven Xie <steven dot xie at + mpathix dot com> for contributing this. + +Tue Nov 4 15:18:17 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * tests/Process_Test.cpp: Added a new test that exercises the new + handle inheritance mechanisms of ACE_Process. Thanks to + Christian Fromme <kaner at strace dot org> for contributing this + test. + +Tue Nov 4 14:15:07 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * tests/tests.mpc: + * tests/run_test.lst (Process_Test): Added the new test for the + ACE_Process class. + +Tue Nov 4 13:59:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/OS_Test.cpp: + Added isblank test for space + + * ace/OS_NS_ctype.inl: + Fixed bug in isblank for space + +Tue Nov 4 13:39:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Enabled a few tests for labview and add !WinCE to all + !LabVIEW_RT marked tests so that we can start testing + for wince + +Tue Nov 4 08:52:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_ctype.inl: + Added support for ACE_LACKS_ISASCII + + * ace/config-vxworks6.2.h + * ace/config-vxworks6.3.h + * ace/config-vxworks6.4.h + Define for ACE_LACKS_ISASCII for rtp + +Tue Nov 4 07:45:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-sunos5.5.h: + Added ACE_LACKS_ISCTYPE/ACE_LACKS_ISBLANK + + * ace/config-sunos5.10.h: + SunOS 10 has isblank + +Tue Nov 4 07:09:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-cygwin32.h: + Added ACE_LACKS_ISCTYPE + +Tue Nov 4 07:05:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-aix-5.x.h: + Added ACE_HAS_CTYPE_T + +Mon Nov 3 20:05:10 UTC 2008 William R. Otte <wotte@dre.vanderbilt.edu> + + * ace/config-macosx-leopard.h: + Added ACE_ISCTYPE_EQUIVALENT. + +Mon Nov 3 17:15:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-lynxos.h: + Added ACE_LACKS_ISBLANK/ACE_LACKS_ISCTYPE + +Mon Nov 3 14:35:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_other_tests.lst: + Disabled several tests with CORBA/e compact/micro + +Mon Nov 3 13:17:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-vxworks5.x.h: + * ace/config-vxworks6.2.h: + * ace/config-vxworks6.3.h: + * ace/config-vxworks6.4.h: + Added ACE_LACKS_ISBLANK for kernel mode + +Mon Nov 3 13:01:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-vxworks5.x.h: + * ace/config-vxworks6.2.h: + * ace/config-vxworks6.3.h: + * ace/config-vxworks6.4.h: + Added ACE_LACKS_ISCTYPE/ACE_LACKS_ISWCTYPE + +Mon Nov 3 12:35:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-all.h + * ace/OS_NS_ctype.inl + * ace/OS_NS_time.h + Including OS_NS_errno.h in config-all.h gives problems on linux + +Mon Nov 3 10:51:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_Thread.inl: + Use CeGetThreadPriority/CeSetThreadPriority when building + for Windows CE. This fixes bugzilla 3487. Thanks to Danial Lang + <danial dot lang at alphagate dot at> for reporting this. + +Mon Nov 3 10:30:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_other_tests.lst: + Added bug 3486 + +Mon Nov 3 10:27:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * docs/svn/config: + * docs/svn/svn-prefs.reg: + bmak files shouldn't be in the repo so added them to the global + ignore list + +Mon Nov 3 09:32:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_ctype.inl: + Added support for ACE_LACKS_ISWASCII + + * ace/config-linux-common.h: + Added ACE_LACKS_ISWASCII + +Mon Nov 3 09:07:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/TestTarget.pm: + Use PerlACE::Run_Test here, that way it is not needed in the + real scripts and we can use that to check if the script + is converted + + * bin/tao_orb_tests.lst: + Enabled some test for labview, converted them to the new framework + +Mon Nov 3 09:03:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/Run_Test.pm: + * bin/PerlACE/TestTarget.pm: + * bin/PerlACE/TestTarget_LVRT.pm: + * bin/PerlACE/TestTarget_VxWorks.pm: + Convert the filename to a local file in the TestTarget and + not in the main script. Fixes bugzilla 3477 + +Mon Nov 3 09:53:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-all.h: + Include OS_NS_errno.h to get ENOTSUP + + * ace/config-win32-borland.h: + CB lacks isblank/iswblank/icctype/iswctype + + * ace/config-win32-msvc.h: + * ace/config-WinCE.h + Lacks isblank/iswblank + + * ace/os_include/os_ctype.h: + Added typedef for ctype_t + + * ace/OS_NS_ctype.h: + * ace/OS_NS_ctype.inl: + Added isblank/isascii/isctype/iswctype wrappers + + * ace/OS_NS_time.h: + No need to include OS_NS_errno.h here + + * bin/fuzz.pl: + Added isblank/isascii/isctype/iswctype to ACE_OS check + + * tests/OS_Test.cpp: + Extended ctype tests + +Thu Oct 30 13:25:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/OS_Test.cpp: + Added a test for ace_isprint with a tab character. WinCE 6 and + earlier do have a bug that for tab they return true instead of + false + + * ace/OS_NS_sys_utsname.cpp: + Initialise pointer with 0 + + * ace/OS_NS_ctype.inl (ace_isprint): + If we have WinCE 6 or earlier and get called for tab (0x9) then + return 0, WinCE stdlib has a bug that 1 is returned for tab. + This was found when investigating some TAO logs where we do + a hexdump of the received packets + +Thu Oct 30 12:53:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * protocols/tests/HTBP/Send_Recv_Tests/client.cpp + * protocols/tests/HTBP/Send_Recv_Tests/server.cpp + Use %C to log ascii strings instead of using %s with + ACE_TEXT_CHAR_TO_TCHAR + +Thu Oct 30 12:16:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/ARGV_Test.cpp + * tests/Bound_Ptr_Test.cpp + * tests/Enum_Interfaces_Test.cpp + * tests/IOStream_Test.cpp + * tests/Sendfile_Test.cpp + * tests/SOCK_Send_Recv_Test.cpp + * tests/SOCK_Send_Recv_Test_IPV6.cpp + * tests/SOCK_Test.cpp + * tests/SOCK_Test_IPv6.cpp + * tests/Svc_Handler_Test.cpp + Use %C to log ascii strings instead of using %s with + ACE_TEXT_CHAR_TO_TCHAR + +Thu Oct 30 11:31:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ACE.cpp: + Const change + + * tests/test_config.h: + Set ACE_LOG_DIRECTORY_FOR_MKDIR for all platforms. Removed the + WinCE different test filename extension. + + * tests/Test_Output.cpp: + Added ACE_DEFAULT_TEST_DIR which can be set in the config.h to + specify a different default testdir then "". This is useful + for WinCE which lacks the concept of a current working directory + +Thu Oct 30 10:30:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * NEWS + Updated. + +Thu Oct 30 07:10:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Disabled PMB test for VxWorks RTP, it hangs the test environment + +Wed Oct 29 15:15:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/TestTarget_WinCE.pm: + New file for WinCE cross platform testing. This assumes at this + moment some other test framework changes which can't be committed yet. + I am storing this new file in svn so that it doesn't get lost and + can be used to discuss the changes + +Wed Oct 29 10:14:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-WinCE.h: + Corrected WinCE version check + + * ace/OS_NS_time.h: + The WinCE 6 SDK ships with a difftime that has __time32_t as type + of the arguments. ACE uses time_t which can be 64bit, that then + leads to conversion warnings. For WinCE 6 disable this warning + just for this file. + +Tue Oct 28 19:56:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_other_tests.lst: + * bin/tao_orb_tests.lst: + InterfaceRepo example should be in the other file + +Tue Oct 28 19:48:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/MakeProjectCreator/templates/vxtest.mpd: + Don't add a lib prefix and .so postfix, let the test scripts do that. + This way the output is also usable for WinCE testing + + * bin/PerlACE/ProcessVX.pm: + Add lib prefix and .so postfix to the vxtest list + + * bin/PerlACE/ProcessWinCE.pm: + Extended this test for testing + +Tue Oct 28 16:40:10 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> + + * bin/tao_other_tests.lst: + + Disabled test for bug#3444 on LynxOS. + +Tue Oct 28 16:23:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_other_tests.lst: + * bin/tao_orb_tests.lst: + Moved Notify ValueType test to other tests + +Tue Oct 28 10:48:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessWinCE.pm: + New file for Windows CE cross testing. We are using the + VxWorks support and added an environment variable + ACE_TEST_WINCE. When this is set we are using WinCE instead + of VxWorks. This script is not ready yet, a first version + so that we can start resolving some small issues in our + real test environment + + * bin/PerlACE/Run_Test.pm: + Check for ACE_TEST_WINCE + +Mon Oct 27 19:22:25 UTC 2008 Tim Pollock <pollockt@ociweb.com> + + * bin/tao_other_tests.lst + + Added new test for DOC bug 2415. + +Mon Oct 27 13:27:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + Added ACE_RUN_ACE_LD_SEARCH_PATH + +Mon Oct 27 13:27:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + Added ACE_RUN_VX_STARTUP_COMMAND + +Sun Oct 26 20:21:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_stdio.cpp: + * ace/OS_NS_stdio.h: + Removed scanf/fscanf/sscanf wrappers again. Microsoft + doesn't ship them with msvc so these would then be + a noop making them unusable + + * ace/fuzz.pl: + Removed scanf/sscanf/fscanf from the ACE_OS check + + * ace/Multicast_Test.cpp + * ace/Multicast_Test_IPV6.cpp + Use plain sscanf + +Sun Oct 26 18:47:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/INET_Addr.cpp: + Removed not needed wchar conversion + +Sun Oct 26 08:02:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_stdio.{h,cpp}: + Fixed sscanf implementation and added also fscanf wrapper + + * bin/fuzz.pl: + Added fscanf to the ACE_OS tests + +Thu Oct 23 20:06:02 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/Process.cpp: Fixed a typo. + +Thu Oct 23 15:15:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/fuzz.pl: + Changed ACE_OS test to level 6 to temporarily get rid of this + check + +Thu Oct 23 12:52:21 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/Process.cpp: Enhanced the support for enabling/disabling + handle inheritance on Linux. Thanks to Christian Fromme + <christian at ast.dfs dot de> for this fix. + +Thu Oct 23 11:14:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Process.cpp: + Fixed duplicat initialisation + +Thu Oct 23 09:09:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Process.cpp: + Added missing include + +Thu Oct 23 08:19:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * docs/svn/config: + * docs/svn/svn-prefs.reg: + Added conf/pem extensions + +Thu Oct 23 08:06:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_other_tests.lst: + Updated because of move of DevGuide orbsvcs examples + +Thu Oct 23 06:46:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/ciao_tests.lst: + * bin/tao_orb_tests.lst: + * bin/tao_other_tests.lst: + Added the new DevGuide examples + +Thu Oct 23 06:29:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Process.cpp: + Initialise handle_inheritance_ on the right place + + * ace/Process.h: + Doxygen change + + * ace/Process.inl: + Always implement the handle_inheritance method + +Wed Oct 22 15:03:31 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/Process.h (ACE_Process_Options): Fixed the duplicate + handle_inheritance_ member. + +Wed Oct 22 13:30:54 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/Process.{h,cpp}: Added support for enabling/disabling handle + inheritance on Linux. Thanks to Christian Fromme <christian at + ast.dfs dot de> for this fix. + + * ace/Process.{h,cpp}: Fixed the misspelling of + "handle_inheritence" to "handle_inheritance". + +Tue Oct 21 18:31:52 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * apps/gperf/src/Options.cpp: + + Moved the instantiation of the static ACE_CString + members to appear before the global class instantiation, + so that the ACE_CString default constructor can in turn + initialize its ACE_Allocator member, needed in the + Options constructor. + +Tue Oct 21 17:33:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_stdio.{h,cpp}: + Buf argument of sscanf should be const + +Tue Oct 21 14:35:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Bug_2980_Regression_Test.cpp: + + Fixed fuzz errors (lack of ACE_OS::). + +Tue Oct 21 14:21:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Process_Manager_Test.cpp: + * tests/Multicast_Test_IPV6.cpp: + * tests/Bug_2980_Regression_Test.cpp: + + Fixed fuzz errors (lack of ACE_OS::). + +Tue Oct 21 14:15:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Process_Manual_Event_Test.cpp: + * tests/Process_Env_Test.cpp: + * tests/Multicast_Test.cpp: + * tests/Proactor_UDP_Test.cpp: + + Fixed fuzz errors (lack of ACE_OS::). + +Tue Oct 21 13:53:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-netbsd.h: + NetBSD lacks wscanf and swscanf + +Tue Oct 21 12:41:09 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> + + * apps/gperf/src/Options.h: + * apps/gperf/src/Options.cpp: + * ACEXML/common/HttpCharStream.cpp: + + Fixed incorrect use of ACE_TEXT_* conversion macros. + +Tue Oct 21 11:25:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/fuzz.pl: + Changed ACE_OS test to level 5 + +Tue Oct 21 09:30:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-win32-borland.h + * ace/config-win32-common.h + * ace/config-win32-msvc.h + * ace/OS_NS_stdlib.inl + WinCE doesn't have wtof, so reworked the defines. Set ACE_HAS_WTOF + when the platform has wtof, with ACE_WTOF_EQUIVALENT a different + method name could be used (like ::_wtof) + +Tue Oct 21 07:15:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_stdio.{h,cpp}: + Added wrappers for sscanf/scanf + + * bin/fuzz.pl: + Extended ACE_OS check with scanf/sscanf + +Tue Oct 21 00:04:26 UTC 2008 Steve Huston <shuston@riverace.com> + + * tests/Proactor_UDP_Test.cpp: Attempt to avoid lock-ups on non-Windows + targets. HP-UX, AIX, et al., can't cancel an in-progress UDP recv() + so stop the Master from trying more receives when all the expected + sessions are up. + +Mon Oct 20 13:09:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/fuzz.pl: + Extended ACE_OS check with atof/atol/raise + + * apps/JAWS3/bench/rqfiles.cpp: + Use ACE_OS::atof + +Mon Oct 20 12:01:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_stdlib.{h,inl}: + Added atof and atol wrappers + +Mon Oct 20 07:23:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * contrib/FaCE/FaCENOACE.mpc: + Derive from vc_warnings to get rid of deprecated warnings + +Mon Oct 20 03:30:20 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/config-cygwin32.h (ACE_HAS_CUSTOM_EXPORT_MACROS): Changed this + macro definition to + + #define ACE_HAS_CUSTOM_EXPORT_MACROS 1 + + Thanks to E Vahala <erkki.vahala@pp.inet.fi> + +Sun Oct 19 06:57:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Network_Adapters_Test.cpp: + WinCE doesn't have control handler + +Sun Oct 19 06:54:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Service_Config_Test.cpp: + WinCE doesn't have _beginthreadex + +Sun Oct 19 06:53:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Logging_Strategy_Test.cpp: + Removed WinCE specific code which is not needed anymore + +Fri Oct 17 19:33:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/MakeProjectCreator/config/global.features: + Set lzo2 to 0 as default + +Fri Oct 17 19:25:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_sys_stat.inl: + Reapplied a change from yesterday, seems the repo has an issue + +Fri Oct 17 18:57:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/OrdMultiSet_Test.cpp: + Use ACE_TEST_ASSERT instead of ACE_ASSERT + + * tests/Vector_Test.cpp: + Removed BCB6/BCB2006 support + + * tests/SOCK_Connector_Test.cpp: + Const change and initailise pointer with 0 + +Fri Oct 17 12:14:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-linux-common.h: + * ace/config-win32-borland.h: + * ace/Guard_T.h: + * ace/Handle_Set.cpp: + * ace/Monitor_Control_Types.h: + * ace/os_include/os_string.h: + * ace/os_include/os_unistd.h: + * ace/os_include/sys/os_timeb.h: + * ace/OS_NS_stdio.inl: + * ace/Truncate.h: + Removed BCB6/BCB2006 support + +Wed Oct 15 19:57:38 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/SSL/SSL_Context.cpp (report_error): Updated the code to use + ::ERR_error_string_n() rather than ::ERR_error_string() when + it's available. Thanks to Paul Daugherty <paul@nextalk.com> + for this patch. This fixes bugid 3461. + +Thu Oct 16 19:03:02 UTC 2008 Phil Mesnier <mesnier_p@ociweb.com> + + * ace/Service_Config.inl: + * ace/Service_Config.cpp: + + Fix for Bug #3386. The argument parsing for the service + configurator was separated into those that affect individual + gestalts, and some process wide arguments. The process wide + arguments were then placed in a new SC::parse_args_i() method, + but that was never called. Second, it appears that when + parse_args_i() was created it was anticipating calling the + associated gestalt's parse_args_i() but I believe that is not + correct, as the gestalt's open() gets a copy of the arguments + for parsing anyway. The service configurator's open() has a + guard against being evaluated more than once, so there should be + no side effects of calling the SC::parse_args_i() more than + once. + + Thanks to Jack Lavender for reporting this problem. + + * examples/Service_Configurator/Misc/main.cpp: + + Modified this test so that command line arguments passed in to + main() are all added to the list supplied to + service_config::open(). + + * THANKS: + Updating contributors list. + +Thu Oct 16 18:39:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Network_Adapters_Test.cpp: + Use ACE_OS::raise + +Thu Oct 16 18:13:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ACE.{h,cpp}: + Always deliver strenvdup + + * ace/config-win32-common.h: + Added new ACE_HAS_DIRECT_H, ACE_HAS_PROCESS_H, ACE_HAS_IO_H + + * ace/config-WinCE.h: + Added new ACE_HAS_TYPES_H and ACE_LACKS_DEV_T + + * ace/Log_Record.h: + Doxygen changes + + * ace/os_include/os_unistd.h: + Use new ACE_HAS_PROCESS_H and ACE_HAS_IO_H + + * ace/os_include/sys/os_stat.h: + Use new ACE_HAS_DIRECT_H and updated wince stat struct to match + other platforms to get TAO compiling. + + * ace/os_include/sys/os_types.h: + Use ACE_HAS_TYPES_H and ACE_LACKS_DEV_T + + * ace/OS_NS_sys_stat.inl: + Update setting of stat struct on ce and also set the + creation stamp + +Thu Oct 16 11:22:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-openvms.h: + Define ACE_LACKS_WCSTOLL. + +Thu Oct 16 09:51:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * examples/Reactor/Misc/test_demuxing.cpp: + Fixed compile error because SIGTERM is now always defined to 0 + when it is not set by the system (like on CE) + +Thu Oct 16 09:47:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_signal.h: + * ace/OS_NS_signal.inl: + Added wrapper for raise, fixes bugzilla 3462 + + * ace/config-WinCE.h + WinCE lacks raise, so set ACE_LACKS_RAISE + + * ace/Process.h: + Doxygen changes + + * ace/Process.{cpp,inl}: + Moved some accessors to the inline file + + * ace/Cleanup.cpp: + Layout change + +Wed Oct 15 19:40:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/os_include/os_signal.h: + Define SIGTERM to 0 when it is not defined + +Wed Oct 15 19:31:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/os_include/os_signal.h: + Define SIGABRT to 0 when it is not defined + +Wed Oct 15 15:15:42 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> + + * bin/tao_other_tests.lst: + + Since the test for bug 3444 uses TAO_PortableGroup it must + avoid MINIMUM and CORBA_E_COMACT configurations. + +Wed Oct 15 12:27:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_main.{h,cpp}: + Added ACE_DOESNT_DEFINE_MAIN which disabled the redefinition + of main when it is set. This is usefull for projects who have + methods with the name main which they can't change. Be aware + that users then have to call ACE::init()/fini() themselves. + This fixes bugzilla 3361/RT2331. + +Tue Oct 14 16:22:32 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> + + * tests/Cached_Accept_Conn_Test.cpp: + * tests/Cached_Accept_Conn_Test.h: + + Fixed a warning. + + * bin/PerlACE/Process_Win32.pm: + + Changed value of iflags in Win32::Process::Create (this flag + directs a spawned process to inherit handles from calling + process). It doesn't hurt if a new process is neither in + CREATE_NEW_CONSOLE nor in DETACHED_PROCESS state but it does + help if it's needed to hanle input from stdin supplied in + calling process. + + * tests/SSL/Bug_2912_Regression_Test.cpp: + + Fixed a warning on Solaris compilers. + + * bin/tao_orb_tests.lst: + + Adjusted configurations in which test Bug_1459 must run. + + * examples/C++NPv2/AIO_Client_Logging_Daemon.h: + * examples/APG/ThreadManagement/Async_Cancel.cpp: + + Fixed a warning on HP-UX compilers. + +Wed Oct 15 09:45:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/msvc_mpc_auto_compile.pl: + Add the -vc9 option to the usage message + +Tue Oct 14 22:27:30 UTC 2008 Tim Pollock <pollockt@ociweb.com> + + * ace/Ping_Socket.cpp: + + Removed tabs accidentally added in previous modification. + +Tue Oct 14 19:38:45 UTC 2008 Tim Pollock <pollockt@ociweb.com> + + * ace/Ping_Socket.cpp: + + Fixed WinCE 5 build error associated with call to getpid. + +Tue Oct 14 13:09:35 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/config-sunos5.10.h: + + Undefine ACE_LACKS_WCSTOLL. + + * ace/config-sunos5.5.h: + + Define ACE_LACKS_WCSTOLL. + +Tue Oct 14 12:56:42 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/config-win32-msvc.h: + + Define ACE_STRTOLL_EQUIVALENT and ACE_WCSTOLL_EQUIVALENT. + +Tue Oct 14 12:49:11 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/config-vxworks5.x.h: + * ace/config-vxworks6.2.h: + * ace/config-vxworks6.3.h: + * ace/config-vxworks6.4.h: + * ace/config-win32-borland.h: + + Define ACE_LACKS_STRTOLL and ACE_LACKS_WCSTOLL. + +Tue Oct 14 12:49:13 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> + + * bin/tao_other_tests.lst: + + Disabled IPv6 tests for bug#3444 on non-IPv6 builds. And + disabled the same test on static builds since it loads + TAO_Strategies and TAO_PortableGroup dynamically. + +Tue Oct 14 12:44:28 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/config-hpux-11.00.h: + + Define ACE_LACKS_STRTOLL and ACE_LACKS_WCSTOLL. + +Tue Oct 14 09:30:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/OS_NS_stdlib.cpp: + * ace/OS_NS_stdlib.h: + + Un-tabify commit of J.T. Conklin. + +Mon Oct 13 17:21:28 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * bin/fuzz.pl: + + Add strtoll and strtoull to $OS_NS_stdlib_symbols regex in + check_for_lack_ACE_OS fuzz check. Thanks to Abdullah Sowayan + <abdullah dot sowayan at lmco dot com> for pointing this out. + + * ace/OS_NS_stdlib.cpp: + * ace/OS_NS_stdlib.h: + * ace/OS_NS_stdlib.inl: + + Add strtoll() wrapper. Fixes bugzilla issue #3456. + + Add wcstol(), wcstoul(), wcstoll(), and wcstoull() emulations + for systems with wide characters, but without these functions. + Fixes bugzilla issue #3457. + +Mon Oct 13 14:23:06 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> + + * ace/config-linux-common.h: + * bin/tao_other_tests.lst: + + Added 3 defines to reflect a difference of Linux in setting + IP_MULTICAST_TTL and IP(V6)_MULTICAST_LOOP. This is required by + Bug#3444. Added a test for Bug#3444. + +Mon Oct 13 13:21:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * rpmbuild/ace-tao-ciao.txt: + * rpmbuild/ace-tao.spec: + Incremented already version number, release script doesn't do this + yet + + * rpmbuild/ace-tao-ciao.txt: + icmp is now enabled by default on linux + +Mon Oct 13 11:10:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * include/makeinclude/platform_lynxos.GNU: + Problems with Lynxos5.0 due to -mshared being passed to compiler + (inaddition to linker) + +Mon Oct 13 07:21:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Local_Name_Space_T.cpp: + * ace/MEM_Connector.cpp: + * ace/Multihomed_INET_Addr.cpp: + * ace/Sock_Connect.cpp: + ACE_TCHAR fixes + +Fri Oct 10 08:57:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/Stack_Trace.cpp: + Disable MSVC warning 4748 "/GS can not protect parameters + and local variables from local buffer overrun because + optimizations are disabled in function" + +Thu Oct 9 21:52:18 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/config-win32-common.h: Add ACE_HAS_ICMP_SUPPORT if Winsock 2 + is available. + + * tests/Network_Adapters_Test.{h cpp}: Removed extraneous ACE::init. + Compare IP addresses using ACE_INET_Addr::is_ip_equal() instead of + comparing get_ip_address() returns - this allows it to work with + either IPv4 or IPv6. + +Thu Oct 9 17:54:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + Added more WinCE6 support by integrating some changes from OCI. + Mon Aug 11 15:40:37 UTC 2008 Phil Mesnier <mesnier_p@ociweb.com> + * ace/config-win32-msvc-8.h: + * ace/config-WinCE.h: + WinCE 6.0 supports TSS and still does not support sig_atomic_t. + +Wed Oct 8 21:06:42 UTC 2008 Steve Huston <shuston@riverace.com> + + * tests/Network_Adapters_Test.cpp: Extend the errno checks to correctly + sense insufficient privs on AIX (EACCESS). + +Wed Oct 8 20:57:24 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/Ping_Socket.cpp (send_echo_check): Fixed problem introduced in + Tue Oct 7 23:04:50 UTC 2008 Steve Huston <shuston@riverace.com> + while setting the ICMP id. + + * tests/Network_Adapters_Test.cpp: If the test can't run due to + insufficient privs, do ACE_END_TEST and return; don't exit. Want + to avoid triggering a test fail in the scoreboard when the test + can't be run. + +Wed Oct 8 18:29:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * apps/gperf/src/Options.cpp + * apps/gperf/src/Options.h + Fixed ACE_TCHAR problems + + * apps/gperf/src/gperf.mpc + * apps/gperf/tests/gperf_test.mpb + Build and test gperf when uses_wchar is set + +Wed Oct 8 18:11:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Dirent_Test.cpp: + Use the new ACE_HAS_TCHAR_DIRENT. Fixes bugzilla 3130 + +Wed Oct 8 18:08:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/os_include/os_dirent.h: + Set ACE_HAS_TCHAR_DIRENT when the dirent struct has a tchar + filename. This is currently with CodeGear C++ with + uses wchar enabled or with dirent emulation. This fixes bugzilla + 3438 + +Wed Oct 8 09:44:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-borland-common.h: + Moved the contents to config-win32-borland.h and removed + this file + + * ace/config-win32-borland.h: + Added contents of config-borland-common.h + +Tue Oct 7 23:04:50 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/config-aix-5.x.h: Added ACE_HAS_ICMP_SUPPORT + + * ace/Ping_Socket.cpp: When setting or checking the ICMP id field, + it's 16 bits, so restrict values to that range. AIX pids are 32 bits, + and the ID checks failed; this fixes it. + +Tue Oct 7 23:01:44 UTC 2008 Steve Huston <shuston@riverace.com> + + * tests/Network_Adapters_Test.cpp: If the ping/raw socket open fails + because of a lack of privilege, issue a warning that the test can't + run, not an error. + +Mon Oct 6 22:27:54 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/WFMO_Reactor.inl (suspend_handlers): Never suspend the notify + or the wakeup_all_threads handles - these are specially set up by + ACE_WFMO_Reactor::open(), not by users, and are critical to the + proper functioning of the event loop. + Fixes Bugzilla #3267. + + * tests/Reactor_Dispatch_Order_Test.cpp: Added some additional + sanity checks and fixed some logging. + +Fri Oct 3 19:05:39 UTC 2008 Yan Dai <dai_y@ociweb.com> + + * ace/Reactor_Token_T.cpp: + + Made reactor notify with zero timeout and ignore timeout case in + sleep_hook(). This would fix bugzilla 2465 reactor deadlock + problem. + +Thu Oct 2 16:41:57 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/Basic_Types.h: Adjust the byte order decision for Itanium + hardware. Itanium can run either byte order - the OS selects it + at boot. The checks were correct for Windows (and maybe Linux) + but not for HP-UX. Apparantly something in the predefined macros + at aC++ 06.20 changed enough to fool this check. + +Mon Sep 29 18:04:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/CDR_File_Test.cpp: + * tests/Log_Msg_Test.cpp: + VxWorks 6.6 can't unlink in advance on NFS + +Mon Sep 29 13:36:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/MakeProjectCreator/config/acedefaults.mpb: + * tests/unload_libace.mpb: + Use unicode lib modifier + +Sun Sep 28 18:16:53 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Bug_3432_Regression_Test.cpp: + * tests/OS_Test.cpp: + * tests/run_test.lst: + * tests/tests.mpc: + Moved strptime test to its own file because ACE_OS::strptime() seems to + behave differently on HPUX and no time to sort that out at this moment + + * tests/Pipe_Test.cpp: + Renamed a few methods so that we don't have to disable the ACE_OS check + +Sun Sep 28 10:28:53 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/generate_rel_manpages: + We are using doxygen 1.5.6 from now + +Thu Sep 25 18:27:53 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/config_h.m4: + + Remove ACE_LACKS_STRPTIME and ACE_LACKS_SI_ADDR autoheader + templates. We already use the AC_DEFINE macros third argument + for the descriptive text in the cooresponding feature tests. + +Thu Sep 25 17:37:19 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/config_h.m4: + + Add comment explaining why I'm bothering replacing autoheader + templates in this file. + + * m4/acinclude.m4: + * m4/config_h.m4: + + Move ACE_HAS_LLSEEK, ACE_HAS_LSEEK64, + ACE_LACKS_LLSEEK_PROTOTYPE, and ACE_LACKS_LSEEK64_PROTOTYPE + autoheader templates to ACE_CHECK_LSEEK64 feature test macro. + + * configure.ac: + * m4/config_h.m4: + + Replace use of autoheader templates with AC_DEFINE macro's third + argument for ACE_LACKS_CONDATTR_PSHARED, + ACE_LACKS_MUTEXATTR_PSHARED, and ACE_LACKS_RWLOCKATTR_PSHARED + feature tests. + +Thu Sep 25 16:45:16 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + * m4/config_h.m4: + + Remove feature test and autoheader template for + ACE_LACKS_PLACEMENT_OPERATOR_NEW, as it is no longer used. + +Thu Sep 25 16:23:26 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + * m4/config_h.m4: + + Replace ~50 lines of open code with simple call to AC_CHECK_TYPE + with ACE_DEFINE with a third argument for the ACE_LACKS_SEMBUF_T + feature test. + + Move feature test for ACE_HAS_BYTESEX_H so it's adjacent to the + test for ACE_HAS_BYTESWAP_H. + +Thu Sep 25 13:58:48 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/acinclude.m4: + + Remove ACE_CHECK_STRUCT and ACE_TRY_COMPILE_STRUCT autoconf + macros. All use has been replaced by the standard autoconf + AC_CHECK_TYPE macro. + + * configure.ac: + * m4/config_h.m4: + + Replace use of ACE_CHECK_STRUCT with AC_CHECK_TYPE, and the use + of AH_TEMPLATE with AC_DEFINE with a third argument for the + ACE_HAS_PRUSAGE_T, ACE_LACKS_STRRECVFD, ACE_LACKS_SIGACTION, + ACE_LACKS_SIGSET, and ACE_LACKS_UTSNAME_T feature tests. + + Replace use of ACE_TRY_COMPILE_STRUCT with AC_CHECK_TYPE in + internal feature tests (no feature test macros are defined) + for pthread_rwlock_t and pthread_rwlockattr_t. + + Remove duplicate ACE_LACKS_SI_ADDR feature test. + + Replace use of "test xxx == yyy" with "test xxx = yyy", the + former is a GNU extension. + +Thu Sep 25 11:49:45 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/acinclude.m4: + + Remove ACE_CHECK_TYPE autoconf macro. All use of it has been + replaced by the standard autoconf AC_CHECK_TYPE macro. + + * configure.ac: + * m4/config_h.m4: + + Replace use of ACE_CHECK_TYPE with AC_CHECK_TYPE and the use + of AH_TEMPLATE with AC_DEFINE with a third argument for the + ACE_HAS_HI_RES_TIMER feature test. + +Thu Sep 25 00:28:52 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + * m4/config_h.m4: + + Replace use of ACE_CHECK_STRUCT with AC_CHECK_TYPE, and the use + of AH_TEMPLATE with AC_DEFINE with a third argument for the + ACE_LACKS_STRUCT_DIR, ACE_LACKS_FILELOCKS, ACE_LACKS_RWLOCK_T, + and ACE_HAS_STRBUF_T feature tests. + +Wed Sep 24 17:43:22 UTC 2008 Rich Seibel <seibel_r@ociweb.com> + + * bin/tao_other_tests.lst: + + Added test for Bug 3387. + +Wed Sep 24 14:16:50 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * ACE-INSTALL.html: + + Updated info on Visual Studio 2008 / VC9 and 64-bit Windows. + +Tue Sep 23 21:55:28 UTC 2008 Phil Mesnier <mesnier_p@ociweb.com> + + * bin/tao_other_tests.lst: + + Bug 3431 was fixed, so I'm making this test part of the nightly + build. + +Tue Sep 23 19:32:38 2008 Steve Huston <shuston@riverace.com> + + Brought in from ACE 5.6a: + Tue Aug 26 17:11:10 UTC 2008 Steve Huston <shuston@riverace.com> + + * tests/Service_Config_Test.cpp: Add a test for looking up services + from a thread started outside ACE's control. This has code for + Pthreads and Windows; other platforms will require additions if + desired. + +Tue Sep 23 16:49:12 UTC 2008 Steve Huston <shuston@riverace.com> + + * tests/Bug_2980_Regression_Test.cpp: Adjust to shared lib suffix + that differs from ".so". Fixes HP-UX 11iv2 on PA-RISC. Generalizes + (and reverts) the platform tests made in + Mon Sep 22 13:17:19 UTC 2008 Simon McQueen <sm@prismtech.com> + +Tue Sep 23 15:41:43 2008 Steve Huston <shuston@riverace.com> + + * tests/run_test.pl: Don't delete Service_Config_Test.conf from the + target; on local builds, it deletes it from the working dir and + svn needs to restore it. Fixes Bugzilla #3409. Thanks to Johnny + Willemsen for noticing this. + + * ace/os_include/sys/os_types.h: + * ace/OS_NS_sys_stat.inl (umask): Changed mode_t from an int back to + u_short. int conflicts with other packages' defs of mode_t (in + particular, Perl). Of all the places mode_t is used, the only place + int made a real difference was in calling _umask_s() on Windows + VC8+. This change reverts the affected piece of + Fri Mar 9 00:53:43 UTC 2007 Steve Huston <shuston@riverace.com> + +Tue Sep 23 15:32:57 UTC 2008 Phil Mesnier <mesnier_p@ociweb.com> + + * bin/tao_other_tests.lst: + + Added new test for bug #3431. This test will definitely fail + until the underlying problem in the IFR is addressed. There is + no immediate plan to fix bug 3431. + +Tue Sep 23 11:25:58 UTC 2008 Simon McQueen <sm@prismtech.com> + + * ace/Assert.h: + + Add new macro: ACE_TEST_ASSERT. Behaves just like ACE_ASSERT but it + doesn't boil away to nothing on non debug platforms. + +Mon Sep 22 23:18:36 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_unistd.inl: + * ace/OS_NS_time.inl: + Fixed WinCE link error + + * ace/OS_NS_unistd.cpp: + Initialise variable with 0 + + * ace/config-vxworks6.4.h: + Extended the check for lacking log2 + +Mon Sep 22 14:54:36 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/ETCL/ETCL_Constraint.cpp: + + Fix fuzz errors. + +Mon Sep 22 13:17:19 UTC 2008 Simon McQueen <sm@prismtech.com> + + * tests/Bug_2980_Regression_Test.cpp: + + Make this test portable for MacOS and HP-UX. + +Mon Sep 22 11:25:53 UTC 2008 Simon McQueen <sm@prismtech.com> + + * bin/MakeProjectCreator/templates/gnu.mpd: + + Use variable CURDIR instead of PWD where possible to identify the + current working directory. Fixes bug #3393. + +Sat Sep 20 13:13:29 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/config_h.m4: + + Remove ACE_HAS_SYSV_SYSINFO autoheader template. This is now + handled within the ACE_CHECK_FUNC_SYSINFO macro. + + * configure.ac: + + Remove checks for ACE_HAS_SYS_SYSINFO_H, ACE_HAS_SYSTEMINFO_H, + and ACE_HAS_SYSV_SYSINFO, and replace them with a single call + to the new ACE_CHECK_FUNC_SYSINFO macro, which handles all the + details. Fixes bugzilla issue #3325. + + * m4/ace_func.m4: + + New autoconf macro ACE_CHECK_FUNC_SYSINFO, which sets the + ACE_HAS_SYS_SYSINFO_H, ACE_HAS_SYS_SYSTEMINFO_H, + ACE_HAS_SYSV_SYSINFO, and/or ACE_HAS_LINUX_SYSINFO feature + test macros as appropriate for the system. + +Sat Sep 20 12:23:10 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/OS_NS_unistd.inl: + * ace/README: + * ace/config-irix6.x-common.h: + * ace/config-sunos5.4-g++.h: + * ace/config-sunos5.4-sunc++-4.x.h: + * ace/config-sunos5.5.h: + * ace/config-tandem.h: + * ace/config-unixware-7.1.0.h: + * ace/config-unixware-7.1.0.udk.h: + * configure.ac: + * m4/config_h.m4: + + Rename ACE_HAS_SYSINFO feature test macro to ACE_HAS_SYSV_SYSINFO, + to further distinguish it from ACE_HAS_LINUX_SYSINFO. + +Fri Sep 19 19:26:18 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * bin/PerlACE/Process_Win32.pm: + + If the executable contains whitespace, quote it when composing the + command line. + +Fri Sep 19 17:51:12 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/ETCL/ETCL_Constraint.cpp: + + Avoid core dump by returning 0 when evaluating division by zero. + Partial fix for bugzilla issue #3429. + +Fri Sep 19 13:57:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Test_Outpot.cpp: + Use ostream->good() to check if the stream is ok or not. bad() only + checks for a corrupt stream, not if it could be created. This way the + test doesn't run when we can't create the logfile on disk + + * tests/Cached_Accept_Conn_Test.cpp + Removed check for deprecated compiler + +Fri Sep 19 09:41:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Network_Adapters_Test.cpp: + Unicode fix + +Fri Sep 19 09:32:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/unload_libace.mpb: + This project doesn't use acedefaults which then results in some + borland required flags not being set + +Thu Sep 18 21:15:57 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/ace_defines.m4: + * m4/ace_functions.m4: + * m4/ace_headers.m4: + + Update m4 quoting so that macros work with both old and current + versions of autoconf. Tested with both autoconf 2.58 (which is + the earliest version we support) and the recently released 2.63. + Fixes bugzilla issue #3396. + +Thu Sep 18 18:54:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/INET_Addr.{h,cpp}: + Use bool and several doxygen changes + +Thu Sep 18 10:30:00 UTC 2008 Simon Massey <sma@prismtech.com> + + * bin/diff-builds-and-group-fixed-tests-only.sh: + + Provide no test revision grouping results as well. + +Thu Sep 18 06:33:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_Time.{h,cpp,inl} (strptime): + Always clear struct tm to zero + + * tests/OS_Test.cpp: + Updated for change above + + * tests/Cached_Conn_Test.cpp: + Removed check for deprecated compiler + +Wed Sep 17 18:47:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Cached_Connect_Strategy_T.{h,cpp}: + reuse_addr is a bool + +Wed Sep 17 18:11:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/checked_iterator.h: + Reverted change below for the moment, causes a lot of warnings in some + builds. + + Tue Sep 16 12:48:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * ace/checked_iterator.h: + Check for dinkum stl. Thanks to Mark Hebbel + <Mark dot Hebbel at baslerweb dot com> for reporting this. This + fixes bugzilla 3420 + +Wed Sep 17 14:13:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_time.cpp (strptime_emulation): + Don't set struct tm to zero + + * ace/OS_Test.cpp: + Set struct tm to zero before calling strptime + +Wed Sep 17 13:23:56 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/ETCL/ETCL_Constraint.cpp: + + Explicitly initialize base class in ETCL_Literal_Constraint copy + constructor. + +Wed Sep 17 12:24:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Network_Adapters_Test.cpp: + Unicode fix + +Wed Sep 17 12:19:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Thread_Manager.cpp: + Found that the revert for bugzilla 3391 was not perfect. Thanks to + Yauheni Akhotnikau <eao197 at intervale dot ru> for reporting + this. + +Wed Sep 17 09:15:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/tests.mpc: + * tests/run_test.lst: + Network_Adapters_Test shouldn't build/run with ace_for_tao + +Wed Sep 17 08:45:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + Improved error handling when we can't connect with telnet + +Wed Sep 17 06:48:59 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-vxworks5.x.h: + * ace/config-vxworks6.2.h: + * ace/config-vxworks6.3.h: + * ace/config-vxworks6.4.h: + VxWorks doens't have tzset + + * ace/OS_NS_time.inl: + Simplified tzset + +Tue Sep 16 21:58:59 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/ETCL/ETCL_Constraint.cpp: + + Changed ETCL_Literal_Constraint::copy(), so that the string + associated with a constraint object of type ACE_ETCL_STRING is + freed before the constraint is overwritten by the new value. + This avoids a memory leak. + + * ace/ETCL/ETCL_Constraint.cpp: + * ace/ETCL/ETCL_Constraint.inl: + + Implement ETCL_Literal_Constraint::operator!=, operator<=, and + operator>= in terms of operator==, operator>, and operator< and + make them inline. Removes a lot of boilerplate code and reduces + static footprint. + +Tue Sep 16 21:12:21 UTC 2008 Phil Mesnier <mesnier_p@ociweb.com> + + * bin/MakeProjectCreator/config/crosscompile.mpb: + + Add a new flag to support crosscompiliation on Win32 platforms. + This is initially needed to improve support for WinCE targets + built using Visual Studio. See companion changes in the MPC + tree for more details. + +Tue Sep 16 17:54:56 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * include/makeinclude/platform_sunos5_sunc++.GNU: + + Reverted the exceptions=0 part of the previous commit. exceptions=0 + is still supported for ACE, but not for TAO. + +Tue Sep 16 14:53:16 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * include/makeinclude/platform_sunos5_sunc++.GNU: + + When using the Sun std library (not stlport), explicitly link -lCrun + and -lCstd. The linker will not include these when building shared + libraries. Also removed code that was only used for exceptions=0. + +Tue Sep 16 13:10:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * examples/Bounded_Packet_Relay/bpr_thread.cpp: + Removed msvc6 workaround and initialise some pointers with 0 + + * examples/Reactor/Multicast/server.cpp: + Corrected error message + + * examples/Web_Crawler/Web_Crawler.mpc: + Removed borland + +Tue Sep 16 12:59:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_stdio.inl: + Reverted some wince changes which shouldn't have been committed + +Tue Sep 16 12:47:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_unistd.inl: + Reverted some wince changes which shouldn't have been committed + +Tue Sep 16 12:48:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/checked_iterator.h: + Check for dinkum stl. Thanks to Mark Hebbel + <Mark dot Hebbel at baslerweb dot com> for reporting this. This + fixes bugzilla 3420 + +Tue Sep 16 12:19:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * apps/Gateway/Gateway/Event_Channel.h + * apps/gperf/src/Options.cpp + * apps/gperf/src/Options.h + * apps/JAWS2/JAWS/Server.cpp + * apps/JAWS2/JAWS/Server.h + * apps/JAWS3/bench/mkfiles.cpp + * apps/JAWS3/bench/rqfiles.cpp + * apps/JAWS3/http/HTTP_Service_Handler.cpp + * apps/JAWS3/small/SS_Service_Handler.cpp + * apps/JAWS/stress_testing/benchd.cpp + * netsvcs/clients/Tokens/collection/collection.cpp + * netsvcs/clients/Tokens/collection/rw_locks.cpp + * netsvcs/clients/Tokens/deadlock/deadlock_detection_test.cpp + * netsvcs/clients/Tokens/manual/manual.cpp + * netsvcs/clients/Tokens/mutex/test_mutex.cpp + * netsvcs/clients/Tokens/rw_lock/rw_locks.cpp + * performance-tests/Misc/test_guard.cpp + * performance-tests/RPC/client.cpp + ACE_TCHAR changes + +Tue Sep 16 10:52:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/*.bor: + * bin/MakeProjectCreator/templates/bor.mpd + * bin/MakeProjectCreator/templates/bordll.mpt + * bin/MakeProjectCreator/templates/borexe.mpt + * bin/MakeProjectCreator/config/borland.features + * bin/MakeProjectCreator/modules/BorlandProjectCreator.pm + * bin/MakeProjectCreator/modules/BorlandWorkspaceCreator.pm + Removed, use the bmake mpc template from now + + * bin/MakeProjectCreator/config/ipv6.mpb: + * bin/MakeProjectCreator/config/vcl.mpb: + * bin/MakeProjectCreator/README: + Removed borland usage + +Tue Sep 16 09:09:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Acceptor.{h,cpp}: + * ace/ACE.{h,cpp}: + * ace/ATM_Acceptor.{h,inl}: + * ace/Connector.cpp: + * ace/DEV_Connector.{h,inl}: + * ace/FILE_Connector.{h,inl}: + * ace/FlReactor/FlReactor.{h,cpp}: + * ace/FoxReactor/FoxReactor.{h,cpp}: + * ace/LOCK_SOCK_Acceptor.{h,cpp}: + * ace/LSOCK_Acceptor.{h,cpp}: + * ace/MEM_Acceptor.{h,cpp}: + * ace/Priority_Reactor.{h,cpp}: + * ace/QtReactor/QtReactor.{h,cpp}: + * ace/Reactor.{h,inl}: + * ace/Reactor_Impl.h: + * ace/Select_Reactor_Base.h: + * ace/Select_Reactor_T.{h,cpp,inl}: + * ace/Service_Manager.cpp: + * ace/SOCK_Acceptor.cpp + * ace/SOCK_Acceptor.h + * ace/SOCK_Connector.h + * ace/SOCK_Connector.inl + * ace/SOCK_SEQPACK_Acceptor.cpp + * ace/SOCK_SEQPACK_Acceptor.h + * ace/SOCK_SEQPACK_Connector.h + * ace/SOCK_SEQPACK_Connector.inl + * ace/SPIPE_Acceptor.cpp + * ace/SPIPE_Acceptor.h + * ace/SPIPE_Connector.h + * ace/SPIPE_Connector.inl + * ace/SSL/SSL_SOCK_Acceptor.cpp + * ace/SSL/SSL_SOCK_Acceptor.h + * ace/SSL/SSL_SOCK_Connector.h + * ace/Strategies_T.cpp + * ace/Strategies_T.h + * ace/TkReactor/TkReactor.cpp + * ace/TkReactor/TkReactor.h + * ace/TLI_Acceptor.cpp + * ace/TLI_Acceptor.h + * ace/TLI_Connector.h + * ace/TLI_Connector.inl + * ace/TP_Reactor.cpp + * ace/TP_Reactor.h + * ace/UPIPE_Acceptor.cpp + * ace/UPIPE_Acceptor.h + * ace/UPIPE_Connector.h + * ace/UPIPE_Connector.inl + * ace/WFMO_Reactor.cpp + * ace/WFMO_Reactor.h + * ace/WFMO_Reactor.inl + * ace/XtReactor/XtReactor.cpp + * ace/XtReactor/XtReactor.h + Changed restart and reset_new_handles from int to bool + + * ace/ace_for_tao.mpc: + * ace/QoS/qos.mpc: + Zap borland as project type + + * ace/ace_qt3reactor.mpc: + Removed empty line + + * ace/Bound_Ptr.{h,inl}: + Let the null methods return bool + + * ace/config-borland-common.h: + Borland has strptime + + * ace/config-linux-common.h: + Enable icmp support by default on linux + + * ace/config-mvs.h: + * ace/config-qnx-rtp-62x.h: + * ace/config-qnx-rtp-pre62x.h: + * ace/config-tandem-nsk-mips-v2.h: + * ace/config-tandem-nsk-mips-v3.h: + Removed fd_mask as define and added ACE_LACKS_FD_MASK + + * ace/config-rtems.h: + Added ACE_LACKS_TZSTE + + * ace/config-WinCE.h: + Updated some defines + + * ace/Dev_Poll_Reactor.{h,cpp}: + Use more bool + + * ace/File_Lock.h: + * ace/Message_Block.h: + Doxygen changes + + * ace/Guard_T.{h,inl}: + * ace/Service_Object.h: + Bool changes and doxygen changes + + * ace/Handle_Set.h: + Removed QNX workaround + + * ace/Log_Msg.{h,cpp,inl}: + Bool changes, doxygen changes + + * ace/Message_Queue.h: + Removed not needed includes + + * ace/Message_Queue_NT.h: + Doxygen changes + + * ace/Notification_Queue.cpp: + Layout changes + + * ace/os_include/sys/os_select.h: + Added ACE_LACKS_FD_MASK + + * ace/OS_Log_Msg_Attributes.h: + Use bool + + * ace/OS_NS_dirent.cpp: + Const changes + + * ace/OS_NS_netdb.cpp: + Initialise pointers with 0 + + * ace/OS_NS_stdio.inl: + WinCE changes + + * ace/OS_NS_stropts.h: + Doxygen changes + + * ace/OS_NS_time.inl: + Use more defines + + * ace/OS_NS_unistd.{h,inl}: + Always have chdir available as method + +Tue Sep 16 08:47:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/OS_Test.cpp: + Added test for strptime + + * tests/Service_Config_Test.cpp: + Don't use ACE_ASSERT and always update the error_count. Fixes the failing + of this test in release builds + + * tests/Test_Output.cpp: + Initialise pointer with 0 + +Tue Sep 16 08:45:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Added bug 2543 + + * bin/make_release.py: + Generate bmake files + + * bin/fuzz.pl: + bor files shouldn't be in the repo anymore + +Tue Sep 16 08:42:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ACE-INSTALL.html: + Updated Borland/CodeGear support + + * Release: + Package debianbuild, no generatin of ACE-INSTALL, use bmak files + +Tue Sep 16 08:38:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * debianbuild: + New directory to store packaging files for debian + + * docs/Download.html: + Updated for CodeGear + + * include/makeinclude/wrapper_macros.GNU: + No need to add $ACE_ROOT/ace to libpath + +Tue Sep 16 08:32:00 UTC 2008 Simon Massey <sma@prismtech.com> + + * ace/config-lynxos.h: + * ace/os_include/os_signal.h: + * include/makeinclude/platform_lynxos.GNU: + + Updated for LynxOS 5.0. + +Tue Sep 16 08:27:00 UTC 2008 Simon Massey <sma@prismtech.com> + + * ace/Object_Manager.cpp: + + The following fixes stop our automated scoreboard from locking up during + automated window VC8 builds and test runs. The enhance the original + ACE_DISABLE_WIN32_ERROR_WINDOWS builds but only on VC8 and above INTEL + machines. + + Starting with VC8 (VS2005), it is necessary to add the call to + _set_abort_behavior( 0, _CALL_REPORTFAULT); to ensure that calls to + abort() do not bypass any declared unhandled exception handler and directly + call the default debugger or "report this problem to microsoft" dialogue. + This does NOT stop the standard message from being logged to the error stream. + + Also starting with VC8 (VS2005), Microsoft changed the behaviour of the CRT + in some security related and special situations. The are many situations in + which our ACE_UnhandledExceptionFilter will never be called. This is a major + change to the previous versions of the CRT and is not very well documented. + See: + http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=101337 + + Basically the CRT simply uninstalls the registered unhandled exception filter + and then forces a call to the default-debugger. Jochen's solution is to stop + the CRT from calling SetUnhandledExceptionFilter() after we have setup our own + handler. NOTE this fix only works for intel based windows builds. + + This fix was derived from that proposed by Jochen Kalmbach here: + http://blog.kalmbachnet.de/?postid=75 + +Tue Sep 16 08:12:00 UTC 2008 Simon Massey <sma@prismtech.com> + + * bin/diff-builds-and-group-fixed-tests-only.sh: + + Change default date to last release date. + +Mon Sep 15 16:34:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * NEWS: + * docs/Download.html: + * etc/index.html: + + Updated for x.6.6 + +Mon Sep 15 11:08:04 UTC 2008 Simon Massey <sma@prismtech.com> + + * ACE version 5.6.6 released. + +Fri Sep 12 21:13:04 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * bin/MakeProjectCreator/config/MPC.cfg: + + Changed how DDS_ROOT is referenced (for OpenDDS support). + +Fri Sep 12 12:56:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + Reverted change below, brakes VMS support + + Tue Sep 9 18:46:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * bin/mwc.pl: + * bin/mpc.pl: + Use FindBin::RealScript to get the real script name, that also + works when we have a symbolic link with a different name to + one of these scripts. This fixes bugzilla 3407 + +Thu Sep 11 14:55:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/diff-builds.pl + * bin/diff-builds-and-group-fixed-tests-only.sh + + Make revision number appending to new test failures optional. + +Tue Sep 9 18:46:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/mwc.pl: + * bin/mpc.pl: + Use FindBin::RealScript to get the real script name, that also + works when we have a symbolic link with a different name to + one of these scripts. This fixes bugzilla 3407 + +Tue Sep 9 14:05:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/diff-builds-and-group-fixed-tests-only.sh + Change the sort to cater from revision numbers. + +Tue Sep 9 13:39:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/diff-builds.pl + typo vi / non-vi edit + +Tue Sep 9 13:35:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/diff-builds.pl + Adjust for revision numbers. + +Tue Sep 9 11:36:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_time.cpp (strptime_emulation): + Clear the struct tm before filling it. Without we get a random + value back if the user doesn't use a full date. + +Tue Sep 9 11:31:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/MakeProjectCreator/modules/VXTestProjectCreator.pm: + * bin/MakeProjectCreator/templates/vxtest.mpd: + Also generate a vxtest file for libraries + +Thu Sep 4 14:39:33 UTC 2008 Ciju John <johnc at ociweb dot com> + + * bin/diff-builds-and-group-fixed-tests-only.sh: + '-P' isn't a valid option on Ubantu linux (Bug 15051). Replacing + with Perl alternate. + +Wed Sep 3 10:23:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_other_tests.lst: + Don't run OBV Typed events with micro and compact configurations + +Wed Sep 3 07:31:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + Added support for ACE_RUN_VX_TGTSRV_WORKINGDIR. Before starting + the executable we will do a chdir to this directory when it + is specified + +Wed Sep 3 07:10:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Bound_Ptr_Test.cpp: + Don't use ACE_ASSERT, it is disabled in release mode and this test + had some real functionality placed within an ACE_ASSERT. This fixes + bugzilla 3415 + +Tue Sep 2 14:11:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/MakeProjectCreator/config/acedefaults.mpb: + Don't use ACE_LIB_TEXT but ACE_TEXT, the former has been deprecated + a long time ago + +Thu Aug 28 21:18:11 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * bin/tao_orb_tests.lst: + * bin/tao_other_tests.lst: + + Removed "Exceptions" and "NO_EXCEPTIONS" as -Config options. + +Thu Aug 28 18:33:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + Improved prompt matching + +Thu Aug 28 13:04:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/auto_run_tests.pl: + The error when we can't chdir to a directory was confusing + + * bin/PerlACE/ProcessVX.pm: + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + Reduced duplicate code and added support for ACE_RUN_VX_STARTUP_SCRIPT + and ACE_RUN_VX_STARTUP_SCRIPT_ROOT with which we can specify a + startup script that is executed before the real application is started + + * bin/PerlACE/TestTarget_VxWorks.pm: + A VxWorks target has to be rebooted between tests + +Mon Aug 25 11:15:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_other_tests.lst: + Added missing run_test.pl to the OBV/Typed_Events test + +Thu Aug 21 09:38:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * docs/Download.html: + Added OpenSuSE build services as new rpm download location. + Removed ACE-install.sh reference, it is not part of the + archive anymore + +Thu Aug 21 06:54:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/MakeProjectCreator/templates/gnu.mpd: + Also check /usr/lib64 for the libs + + * bin/depgen.pl: + * bin/mpc.pl: + * bin/mwc.pl: + * bin/PerlACE/ConfigList.pm: + * bin/PerlACE/MSProject.pm: + * bin/PerlACE/Process.pm: + * bin/PerlACE/Process_Unix.pm: + * bin/PerlACE/Process_VMS.pm: + * bin/PerlACE/Process_Win32.pm: + * bin/PerlACE/ProcessLVRT.pm: + * bin/PerlACE/ProcessVX.pm: + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + * bin/PerlACE/Run_Test.pm: + * bin/PerlACE/TestTarget.pm: + * bin/PerlACE/TestTarget_LVRT.pm: + * bin/PerlACE/TestTarget_VxWorks.pm: + * bin/Uniqueid.pm: + Added missing shebang lines to fix rpm packaging warnings + +Wed Aug 20 09:38:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/MakeProjectCreator/modules/BorlandProjectCreator.pm: + * bin/MMakeProjectCreator/modules/BorlandWorkspaceCreator.pm: + Fixed bugzilla 3403. Migrated parts of the bmake type to this + generator, fixes issues when we need to go a directory up + in the workspace. As side effect the resulting Makefile.bor + is smaller in size which reduces the full size of the + distribution. In the near future I want to remove the borland + MPC generator and only use bmake. + +Wed Aug 20 09:08:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + Fixed a bug with putenv with rtp mode + +Tue Aug 19 19:06:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + Don't use cmd to send commands through telnet. The disadvantage + of the cmd method is that it only returns when the prompt + appears again. When this doesn't happen we don't get the output + of the last command into our build log or on the telnet client + +Tue Aug 19 14:01:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-win32-borland.h: + * ace/OS_NS_stdlib.inl: + * ace/config-win32-msvc.h: + CodeGear C++ Builder 2009 has wcstoull and strtoull + +Mon Aug 18 11:30:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-win32-borland.h: + CodeGear C++ Builder 2009 doesn't support inline assembly + +Mon Aug 18 10:17:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ACE-INSTALL.html: + Improved BCB instructions + +Sun Aug 17 18:04:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ACE-INSTALL.html: + * include/makeinclude/compiler.bor: + Added BCBVER 10/11/12 + +Sun Aug 17 07:30:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/mwc.pl: + * bin/mpc.pl: + Use RealBin to get the location of this script, that gives the + real location also in case we use a symbolic link to these + scripts. Thanks to Adam Mitz for pointing me to RealBin + +Fri Aug 15 11:07:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * make/makeinclude/platform_aix_ibm.GNU: + Added missing AIX compiler version 0800. + +Wed Aug 13 14:40:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Truncate.h: + Added missing specializations for Borland C++. + +Wed Aug 13 14:18:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * m4/ace_defines.m4: + * m4/ace_functions.m4: + * m4/ace_headers.m4: + Reverted change below, doesn't work on suse 11.1 yet + +Wed Aug 13 13:22:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * m4/ace_defines.m4: + * m4/ace_functions.m4: + * m4/ace_headers.m4: + Updated these files to work with autoconf 2.62. Thanks to + Philipp Thomas <pth at suse dot de> for these patches. These + are needed to use autoconf on OpenSuSE Factory (11.1 beta). + This fixes bugzilla 3396. + +Wed Aug 13 11:55:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Truncate.h: + Added missing specializations for Borland C++. + +Wed Aug 13 11:44:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * rpmbuild/ace-tao-ciao.txt: + Made several improvements to this new spec file. Thanks to + Philipp Thomas <pth at suse dot de> for assisting with this + +Tue Aug 12 19:45:16 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Time_Value.inl: + * examples/OS/Process/process.cpp: + * examples/Misc/test_dump.h: + * examples/ASX/Event_Server/Event_Server/Supplier_Router.cpp: + * examples/ASX/Event_Server/Event_Server/Event_Analyzer.cpp: + * examples/ASX/Event_Server/Event_Server/Consumer_Router.cpp: + * examples/ASX/Message_Queue/buffer_stream.cpp: + * examples/ASX/Message_Queue/bounded_buffer.cpp: + * examples/ASX/Message_Queue/priority_buffer.cpp: + * examples/ASX/UPIPE_Event_Server/Supplier_Router.cpp: + * examples/ASX/UPIPE_Event_Server/Event_Analyzer.cpp: + * examples/ASX/UPIPE_Event_Server/event_server.cpp: + * examples/ASX/UPIPE_Event_Server/Consumer_Router.cpp: + * examples/Web_Crawler/Iterators.cpp: + * examples/Web_Crawler/URL_Visitor.cpp: + * examples/Web_Crawler/Mem_Map_Stream.cpp: + * examples/Shared_Malloc/test_malloc.cpp: + * examples/QOS/Simple/Sender_QoS_Event_Handler.cpp: + * examples/APG/ThreadPools/TP_Reactor.cpp: + * examples/IPC_SAP/FILE_SAP/client.cpp: + * examples/IPC_SAP/SOCK_SAP/CPP-inclient.cpp: + * examples/IPC_SAP/SPIPE_SAP/NPClient.cpp: + * examples/IPC_SAP/SSL_SAP/SSL-server-fancy.cpp: + * examples/IPC_SAP/SSL_SAP/SSL-client-simple.cpp: + * examples/IPC_SAP/SSL_SAP/SSL-client.cpp: + * examples/IPC_SAP/FIFO_SAP/FIFO-client.cpp: + * examples/Logger/client/logging_app.cpp: + * examples/Service_Configurator/IPC-tests/client/remote_stream_client_test.cpp: + * examples/Threads/thread_pool.cpp: + * examples/Threads/thread_specific.cpp: + * examples/Threads/task_four.cpp: + * examples/Reactor/Multicast/Log_Wrapper.cpp: + * examples/Reactor/WFMO_Reactor/Window_Messages.cpp: + * examples/Reactor/Proactor/test_cancel.cpp: + * examples/Reactor/Proactor/test_proactor.cpp: + * examples/Reactor/Misc/notification.cpp: + * examples/Connection/blocking/SPIPE-connector.cpp: + * examples/Mem_Map/file-reverse/file-reverse.cpp: + * examples/C++NPv1/Logging_Handler.cpp: + * examples/C++NPv1/Logging_Client.cpp: + * examples/C++NPv2/AC_Client_Logging_Daemon.cpp: + * examples/C++NPv2/Reactor_Logging_Server_Adapter.cpp: + * examples/C++NPv2/Client_Logging_Daemon.cpp: + * examples/C++NPv2/Service_Reporter.cpp: + * examples/C++NPv2/Logging_Handler.cpp: + + More truncation warning fixes. + +Tue Aug 12 18:15:08 UTC 2008 James H. Hill <hillj@isis.vanderbilt.edu> + + * docs/ace_guidelines.vsmacros: + + Update the macros file to ingore .xsd files. + + * docs/svn/config: + * docs/svn/svn-prefs.reg: + + Added .aspx files to the configuration preferences. + +Tue Aug 12 08:00:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Thread_Manager.cpp: + Revert changes of bugzilla 3391, Thread_Pool_Test does fail + with the change + +Mon Aug 11 18:18:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Log_Msg_Test.cpp: + Fixed unicode compile error + +Mon Aug 11 16:09:20 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * bin/tao_orb_tests.lst: + + Exclude TAO/tests/Bug_3068_Regression from single-threaded builds. + +Mon Aug 11 13:49:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/tests.mpc: + There were still some tests that produce test libraries that were + not updated when acelib was devorced from ace_output project. Such + tests need to either add the dependancy (to place their output in + the standard lib directory) or have "libout = ." to specify the + library to be placed locally in the test directory. + +Mon Aug 11 13:37:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Thread_Manager.{h,cpp,inl}: + Make sure we don't miss any already terminated threads when doing + a join. Also made some code more readable, removed ancient AIX + workarounds. This fixes bugzilla 3391. Thanks to + <giovanni dot mele at nagra dot com> for reporting this + + * ace/Containers_T.{h,cpp}: + Changed dont_remove to a bool + +Mon Aug 11 12:45:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_stdio.cpp: + Simplified some methods + +Mon Aug 11 08:56:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Log_Msg_Test.cpp: + Extending testing of ACE_Log_Msg by enabling the format specifiers + tests and add a test for %T. Also removed the check for vsnprintf + to see that VxWorks 5.5.x still has a problem with buffer overflows. + In that case we have to fix that in ACE_Log_Msg. + + * ace/Log_Msg.cpp: + Fixed some buffer size calculations when ACE_TCHAR != char. Fixed + %T when wchar is used, thanks to Nathalie D'Amours + <nathalie at bearsontheloose dot com> for reporting this. This fixes + bugzilla 3388 + + * ace/ACE.{h,cpp} (timestamp): + Use bool and sizes of buffers should have size_t as type + + * ace/MEM_Stream_Test.cpp: + Removed incorrect comment + +Mon Aug 11 07:36:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Makefile.am: + Added missing header files. Thanks to haibin zhang + <dragzhb at yahoo dot com dot cn> for reporting this + +Sun Aug 10 23:02:15 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * ace/SSL/SSL_SOCK_Stream.inl (set_handle): + + Reverted back to the C-style cast that was there before Jeff's commit + because many compilers didn't like a reinterpret_cast<int> here. + +Sat Aug 9 17:42:10 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * ace/SSL/SSL_SOCK_Acceptor.cpp: + * ace/SSL/SSL_SOCK_Connector.cpp: + * ace/SSL/SSL_SOCK_Stream.inl: + * ace/SSL/SSL_SOCK_Stream.cpp: + * examples/Service_Configurator/IPC-tests/server/Handle_R_Stream.inl: + + Fixed compile errors in inline=0 and Win32-ssl builds. + ACE_Utils::truncate_cast can't cast ACE_HANDLE to int on Win32. + +Fri Aug 8 20:35:37 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * ace/Stack_Trace.cpp: + + Glibc implementation: fixed whitespace + VxWorks (both kernel and RTP): VxWorks can return -1 for the number + of arguments when the actual number is unknown. + +Fri Aug 8 19:33:42 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Message_Queue_T.cpp: + * ace/SSL/SSL_Asynch_BIO.cpp: + * ace/SSL/SSL_SOCK_Acceptor.cpp: + * ace/SSL/SSL_Context.cpp: + * ace/SSL/SSL_Asynch_Stream.cpp: + * ace/SSL/SSL_SOCK_Connector.cpp: + * ace/SSL/SSL_SOCK_Stream.cpp: + * ace/SSL/SSL_SOCK_Stream.inl: + * Kokyu/DSRT_Sched_Queue_T.cpp: + * Kokyu/Default_Dispatcher_Impl.cpp: + * ACEXML/common/Transcode.cpp: + * ACEXML/common/HttpCharStream.cpp: + * ACEXML/common/Mem_Map_Stream.cpp: + * examples/Monitor/MC_Test_Utilities.cpp: + * examples/Service_Configurator/IPC-tests/server/Handle_Timeout.inl: + * examples/Service_Configurator/IPC-tests/server/Handle_Thr_Stream.cpp: + * examples/Service_Configurator/IPC-tests/server/Handle_L_FIFO.inl: + * examples/Service_Configurator/IPC-tests/server/Handle_Broadcast.inl: + * examples/Service_Configurator/IPC-tests/server/Handle_R_Stream.inl: + + Fixes for VC 7.1 warnings, mostly truncation. + +Fri Aug 8 17:58:28 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + + Changed the ACE_NEW_THROWS_EXCEPTION feature test to use + setrlimit() (on systems that have it) to reduce the RLIMIT_DATA + limit so the test, which continuously allocates memory in order + to observe the behavior of out-of-memory conditions, will "fail" + quickly without unnecessarily consuming a lot of system + resources. Fixes bugzilla #3090. + +Fri Aug 8 14:42:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/fuzz.pl: + Also check cpp/inl files for RefCountServantBase + +Fri Aug 8 08:36:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Truncate.h: + Added missing specializations for Borland C++. + +Fri Aug 8 08:17:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Makefile.am: + Added missing Svc_Conf_Token_Table.h which was already in the MPC + file. Thanks to haibin zhang <dragzhb at yahoo dot com dot cn> + for reporting this + +Thu Aug 7 21:59:58 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * bin/tao_orb_tests.lst: + + Added the new test TAO/tests/Bug_3068_Regression. + +Thu Aug 7 20:21:29 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Process_Manager.cpp: + * ace/Asynch_IO.cpp: + * ace/Pagefile_Memory_Pool.cpp: + * ace/MEM_IO.cpp: + * ace/Time_Value.inl: + * ace/SV_Semaphore_Simple.cpp: + * ace/Thread_Manager.cpp: + * ace/MEM_IO.inl: + * ace/ETCL/ETCL_Interpreter.cpp: + * ace/UPIPE_Stream.cpp: + * ace/SOCK_Dgram.cpp: + * ace/FILE_IO.cpp: + * ace/OS_NS_unistd.cpp: + * ace/FIFO_Recv_Msg.inl: + * ace/CDR_Size.cpp: + * ace/ACE.cpp: + * ace/CDR_Stream.cpp: + + Added usage of ACE_Utils::truncate_cast<> + to get rid of conversion warnings, mostly from size_t + to ssize_t. + +Thu Aug 7 18:02:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * NEWS: + ACE/TAO/CIAO now supports CodeGear C++ Builder 2009 + +Thu Aug 7 15:28:13 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Control/Makefile.am: + + Added source file Null_Network_Interface_Monitor.cpp that + was overlooked until now. + +Wed Aug 6 18:45:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ace.mpc: + Added a few missing header files + +Wed Aug 6 18:17:32 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * protocols/ace/HTBP/HTBP_Channel.cpp: + * ace/SSL/SSL_Asynch_Stream.cpp: + * performance-tests/TCP/tcp_test.cpp: + * performance-tests/UDP/udp_test.cpp: + * tests/Upgradable_RW_Test.cpp: + * tests/ARGV_Test.cpp: + * tests/OrdMultiSet_Test.cpp: + * apps/JAWS/server/HTTP_Server.cpp: + * apps/soreduce/Obj_Module.cpp: + * apps/soreduce/Library.cpp: + * apps/soreduce/soreduce.cpp: + * apps/soreduce/SO_Group.cpp: + * websvcs/lib/URL_Addr.cpp: + * examples/OS/Process/imore.cpp: + * examples/Connection/blocking/SPIPE-connector.cpp: + * examples/C++NPv2/AC_Client_Logging_Daemon.cpp: + * examples/C++NPv2/Client_Logging_Daemon.cpp: + + Cosmetic changes to eliminate warnings from + some Linux compilers. + +Wed Aug 6 13:40:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * docs/bczar/bczar.html: + Updated the "Bugzilla" section to match the current version + of bugzilla's interface. + +Wed Aug 6 13:01:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/SOCK_CODgram.cpp: + Fixed gcc 4.3 warnings + +Wed Aug 6 08:49:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * examples/Connection/blocking/SPIPE-connector.cpp: + * examples/OS/Process/imore.cpp: + Fixed gcc 4.3 warnings + +Wed Aug 6 08:45:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * examples/C++NPv2/AC_Client_Logging_Daemon.cpp: + * examples/C++NPv2/Client_Logging_Daemon.cpp: + Fixed gcc 4.3 warnings + +Wed Aug 6 08:12:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * configure.ac: + * m4/ace.m4: + Use more cached values, improved detection of tcl. Add bzip2 + support + +Wed Aug 6 08:01:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ACEXML/common/ZipCharStream.cpp: + Fixed compile error in some builds + + * ACEXML/parser/parser/Parser.cpp: + Check for the dtd file using a / and \ path specifier. This + makes it possible to also use a / on windows to specify + the path. This fixes bugzilla 3352 + + * ACEXML/common/FileCharStream.h: + Doxygen fix + + * ACEXML/common/FileCharStream.cpp: + No need to check for a valid pointer before calling delete + +Tue Aug 5 19:33:26 2008 Steve Huston <shuston@riverace.com> + + * ace/Log_Msg.cpp: Fixed tab characters. + + * ace/config-posix.h: Only set ACE_HAS_POSIX_SEM_TIMEOUT if the + _POSIX_TIMEOUTS feature test is not -1 (disabled). Fixes build + on HP-UX 11iv3. + + * examples/APG/ThreadPools/LF_ThreadPool.cpp (elect_new_leader): Log + the "Resiging and Electing" message at LM_DEBUG severity, not + LM_ERROR. This is on APG page 342. Thanks to Julien Vintrou for + pointing this out. + + * THANKS: Added Julien Vintrou. + +Tue Aug 5 20:19:28 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/config-linux-common.h: Removed ACE_HAS_BROKEN_THREAD_KEYFREE. + Reverts change from + Thu Aug 9 13:39:12 UTC 2007 Johnny Willemsen <jwillemsen@remedy.nl> + which is no longer needed. + +Tue Aug 5 18:51:02 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/MMAP_Memory_Pool.cpp: + * ace/Service_Manager.cpp: + * ace/Stream.cpp: + * Kokyu/Dispatcher_Task.cpp: + * apps/gperf/src/List_Node.cpp: + * apps/gperf/src/Key_List.cpp: + * apps/gperf/src/Gen_Perf.cpp: + * apps/gperf/src/Iterator.cpp: + * apps/gperf/src/Hash_Table.cpp: + * ACEXML/common/ZipCharStream.cpp: + * ACEXML/common/HttpCharStream.cpp: + * ACEXML/parser/parser/Parser.inl: + * ASNMP/asnmp/asn1.cpp: + * ASNMP/asnmp/address.cpp: + + Cosmetic changes to eliminate warnings on + Fedora Rawhide. + +Tue Aug 5 18:37:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * rpmbuild/ace-tao-init-fedora.tar.bz2: + * rpmbuild/ace-tao-init-suse.tar.bz2: + Seperated distribution specific files in two bz2 archives, + the rpm spec file will use one of them + +Tue Aug 5 16:41:03 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/Log_Msg.h: Changed key_created_ from int to bool. + + * ace/Log_Msg.cpp (close): Two changes related to Bugzilla 2980: + - Remove the #if ACE_HAS_BROKEN_THREAD_KEYFREE - the code inside + that block was what should always be done - delete the ACE_Log_Msg + instance and reset the TSS value to 0 so it's not cleaned up again + later when the thread runs down. The whole idea of the + ACE_HAS_BROKEN_THREAD_KEYFREE seems dubious and should probably be + removed, but I haven't gone that far - there's one more use in + OS_NS_Thread which seems pertinent for LynxOS and I can't test + it, so it's still there - but should be reviewed and probably + removed. + - Free the TSS key - if setting key_created_ to 0, what's the point + of leaving the key? Any future attempt to get the per-thread value + would result in a new key being created. Again, freeing the key + has no affect on already-allocated instances. + This should resolve Bugzilla 2980 again. + +Tue Aug 5 14:33:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * rpmbuild/ace-tao-ciao.txt: + Spec file that is work in progress. Didn't use spec as extension + because that gives problems with rpmbuild. + +Tue Aug 5 13:52:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Guard_T.h: + * ace/Guard_T.inl: + * ace/TSS_T.cpp: + Changed block to a bool + + * ace/Guard_T.h: + Initialise owner_ to solve gcc 4.3 warnings + +Tue Aug 05 10:15:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Reactor_Remove_Resume_Test_Dev_Poll.cpp: + + I don't know why removing "TP_Reactor.h" stopped ACE.h from + being included; but is seems it was incidently included in + the previous (non-Dev_Poll) test. + +Tue Aug 5 08:02:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ACEXML/common/HttpCharStream.cpp: + Fixed gcc4.3 warning + +Tue Aug 5 07:53:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Message_Queue_Test.cpp: + * tests/Message_Queue_Test_Ex.cpp: + Fixed gcc4.3 warning + +Tue Aug 5 07:11:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * examples/IPC_SAP/SOCK_SAP/run_test + * examples/IPC_SAP/SOCK_SAP/summarize + * examples/IPC_SAP/SSL_SAP/summarize + * examples/IPC_SAP/SOCK_SAP/run_test.sh + * examples/IPC_SAP/SOCK_SAP/summarize.pl + * examples/IPC_SAP/SSL_SAP/summarize.pl + Renamed files to have an extension that matches the type of file + +Tue Aug 5 06:45:11 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/add_rel_link.sh: + Added missing path + +Mon Aug 4 19:58:20 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/Process.cpp (inherit_environment): Re using Unicode from + Thu Jul 31 15:10:16 UTC 2008 Adam Mitz <mitza@ociweb.com> + only do it for systems that have ACE_HAS_WCHAR. Fixes a LabVIEW + Pharlap ETS build issue. + +Mon Aug 04 13:08:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Reactor_Remove_Resume_Test.cpp: + * tests/Reactor_Remove_Resume_Test_Dev_Poll.cpp: + * tests/run_test.lst: + * tests/tests.mpc: + + Split out the ACE_Dev_Poll_Reactor part of this test since + this is excersing a known problem with ACE_Dev_Poll_Reactor + (see Bugzilla 3178). + +Mon Aug 4 07:20:12 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-g++-common.h: + * ace/config-macros.h: + Moved definition of ACE_UNUSED_ARG for GC back to config-macros.h else + it isn't available when doing an autoconf build + +Fri Aug 1 10:59:55 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * tests/Process_Env_Test.cpp: + + #ifdef-out the helper functions in the cases where the body of + run_main is also #ifdef'ed-out. + +Thu Jul 31 15:10:16 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * ace/Process.cpp (inherit_environment): + + When "use_unicode_environment" is in effect, use the unicode env + block (GetEnvironmentStringsW) when copying the current environment + in order to inherit it (Win32 only). + + * tests/Process_Env_Test.cpp: + + Extended this test to verify that a large environment block is indeed + inherited by the spawned process. + +Thu Jul 31 13:16:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/tao_orb_tests.lst: + + The QUICK test alternatives should have the same configs as + their non-quick alternative tests. This has been playing havok + with !Win32 tests on windows platforms that are using QUICK. + +Thu Jul 31 12:35:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/run_test.lst: + * tests/tests.mpc: + * tests/Refcounted_Event_Handler_Test_DevPoll.cpp: + * tests/Reference_Counted_Event_Handler_Test_Dev_Poll.cpp: + + Test renamed (has to be less than 38 characters). + +Thu Jul 31 10:25:12 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-g++-common.h: + Use a different ACE_UNUSED_ARG macro for GCC 4.2 and newer. Moved + also the definition for gcc to this file instead of config-macros.h. + Thanks to Jules Colding <colding at 42tools dot com>, Jonathan Brannan + <jbrannan at atdesk dot com>, and Ken Sedgwick <ken at bonsai dot com> + for providing the patches. This fixes bugzilla 3270 + + * ace/config-macros.h: + Don't define ACE_UNUSED_ARG for GCC + + * rpmbuild/ace-tao.spec: + Removed unused arg patch + + * rpmbuild/ace-tao-unusedarg.patch: + Removed, not needed anymore + +Thu Jul 31 10:20:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Reactor_Dispatch_Order_Test_Dev_Poll.cpp: + + To avoid warnings on platforms where: + #if defined (ACE_HAS_DEV_POLL) || defined (ACE_HAS_EVENT_POLL) + is false, this test has now been fully guarded and an alternate + main provided. + + * tests/Reference_Counted_Event_Handler_Test_Dev_Poll.cpp: + * tests/run_test.lst: + * tests/tests.mpc: + + Since the collated test scores are actually grouping both runs + of the original test together (they ignore parameters apparently), + a newly named test was needed. + +Thu Jul 31 10:05:12 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-macros.h: + Only define ACE_UNUSED_ARG when it is not defined yet. Makes it + easier to test how to resolve warnings with gcc 4.3 + +Wed Jul 30 14:03:12 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_vxworks6.2.GNU: + * include/makeinclude/platform_vxworks6.3.GNU: + Also convert slashes in HOST_ROOT + +Wed Jul 30 09:55:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/tests.mpc: + + Missed adding the new Reactor_Dispatch_Order_Test_Dev_Poll + entry. + +Tue Jul 29 22:23:08 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/ace.m4: + + Add ACE_PATH_BZIP2 feature test, sets ACE_BZIP2_CPPFLAGS, + ACE_BZIP2_LDFLAGS, and ACE_BZIP2_LIBS as needed when + --with-bzip2 is specified on the command line. + +Tue Jul 29 21:33:14 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * bin/MakeProjectCreator/config/automake.features: + + Add bzip2=1 + +Tue Jul 29 21:29:43 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * bin/MakeProjectCreator/config/ace_bzip2.mpb: + + New file, overrides definitions from MPC's bzip2.mpb for + automake build. + +Tue Jul 29 19:58:22 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * bin/tao_orb_tests.lst: + + Reverted Tue Jul 29 14:21:32 UTC 2008 Adam Mitz <mitza@ociweb.com> + because the bug should now be fixed in TAO. + +Tue Jul 29 18:11:32 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + TAO/tests/Bug_3000_Regression fails because that issue remains + unresolved, added !FIXED_BUGS_ONLY. + +Tue Jul 29 14:21:32 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * bin/tao_orb_tests.lst: + + TAO/tests/Bug_3163_Regression fails because that issue remains + unresolved, added !FIXED_BUGS_ONLY. + +Tue Jul 29 12:45:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/run_test.lst: + * tests/Reference_Counted_Event_Handler_Test.cpp: + + Corrected the disabling of ACE_Dev_Poll_Reactor test and split + the test into two runs once with this reactor test disabled + and once with just this reactor test enabled (marked with + !FIXED_BUGS_ONLY) due to internal problems with + ACE_Dev_Poll_Reactor. + +Tue Jul 29 12:14:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/run_test.lst: + * tests/Reactor_Dispatch_Order_Test.cpp: + * tests/Reactor_Dispatch_Order_Test_Dev_Poll.cpp: + + These tests now actually return a failure if the test failed + instead of always returning 0. I have also split out the + problematic part of this test re-enabled by: + Wed Jul 9 19:07:24 2008 Steve Huston which itself reversed: + Sat Mar 29 08:16:57 UTC 2008 Johnny Willemsen that originally + disabled testing for ACE_Dev_Poll_Reactor due to internal + problems with ACE_Dev_Poll_Reactor. + +Mon Jul 28 13:39:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-macros.h: + * ace/streams.h: + Removed workarounds for ancient Borland C++ versions + +Mon Jul 28 13:32:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Asynch_Acceptor.cpp: + * ace/WIN32_Asynch_IO.cpp: + Removed compiler checks + + * ace/OS_NS_stdio.cpp: + Don't check for Borland C++ but for ACE_HAS_NONCONST_FDOPEN + + * ace/OS_NS_stdio.inl: + Removed workaround for Borland C++ + +Mon Jul 28 13:10:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Global_Macros.h: + Removed obsolete workaround for Borland C++ + +Mon Jul 28 13:03:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ace_wchar.h: + Removed obsolete workaround for Borland C++ + +Mon Jul 28 11:52:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Registry.cpp: + Don't declare a static object within a method because that + could lead to race conditions in a multi threaded program + + * ace/ace_qt4reactor.mpc: + Fixed bug in this file + +Mon Jul 28 11:40:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ETCL/ETCL_Interpreter.h: + Doxygen fixes and made destructor virtual, this is a base class + + * ace/INET_Addr.cpp: + Const change + +Fri Jul 25 14:21:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ace_qtreactor.mpc: + * ace/ace_qt3reactor.mpc: + Renamed qt to qt3, this builds and links the qtreactor + with qt3 + + * ace/ace_qt4reactor.mpc: + New project for qt4 + + You can set qt=1 and qt3=1 together or set qt4=1, but not + both at the same time. Thanks to Kees van Marle + <kvmarle at remedy dot nl> for testing qt4 + +Fri Jul 25 14:13:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/QtReactor/QtReactor.cpp: + * ace/QtReactor/QtReactor.h: + Improved qt4 support + +Fri Jul 25 14:09:13 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/MakeProjectCreator/config/ace_qt3.mpb + * bin/MakeProjectCreator/config/ace_qt4.mpb + * bin/MakeProjectCreator/config/global.features: + Set qt3 and qt4 default to 0. qt4 has different libs + that we need to link with but also the qglobal.h is + located on a different location, so added ACE_HAS_QT4 + which is then used to select which qglobal.h we include. + + * bin/MakeProjectCreator/config/ace_qtreactor.mpb: + This is for qt3 so derive from ace_qt3 + +Thu Jul 24 19:04:13 2008 Steve Huston <shuston@riverace.com> + + * ace/Containers_T.h: Improved documentation for ACE_DLList, noting + especially that T pointers inserted into the list are not deleted + when removed. Thank you to Bob Fiske for this improvement and sample + code to illustrate. + + * THANKS: Added Bob Fiske. + +Thu Jul 24 12:50:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/diff-builds-and-group-fixed-tests-only.sh: + This shell script runs the perl diff-builds.pl script between + the date given as the first parameter and the current utc date. + The output is tidied up and any !FIXED_BUGS_ONLY bugs are + removed before being grouped and the failed tests counted. + +Thu Jul 24 08:10:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/tao_orb_tests.lst: + * bin/tao_other_tests.lst: + Added config item !FIXED_BUGS_ONLY to tests that highlight + problems that have not yet been fixed. Please remove this + config item once the bugs have actually been fixed, and + include this config item with any newly added tests in the + future that fall into this category. + +Wed Jul 23 13:30:28 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/PerlACE/Process_Win32.pm: + Allow named .bat files for windows. + +Wed Jul 23 13:08:28 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/generate_doxygen.pl: + * etc/tao_ziop.doxygen: + * html/index.html: + Added TAO ZIOP to the documentation + +Wed Jul 23 10:51:28 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Select_Reactor_Base.h: + Doxygen change + + * ace/Select_Reactor_T.cpp: + * ace/Select_Reactor_T.h: + * ace/TP_Reactor.cpp: + * ace/TP_Reactor.h: + mask_signals should be a bool like in the base class + +Wed Jul 23 08:11:28 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/SOCK_Dgram_Mcast.cpp: + Use reentrant get_host_addr. This fixes bugzilla 3368. Thanks to + Yongming Wang <wangym at gmail dot com> for reporting this + +Tue Jul 22 15:02:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/group_test_stats.sh: + Reverse and sort numerically so that highest number of + failures are listed first. + +Tue Jul 22 13:09:28 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Added ZIOP test + +Tue Jul 22 11:52:28 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/make_release.py: + Don't convert line ending for pdf files + +Tue Jul 22 09:55:28 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/MakeProjectCreator/config/global.features: + bzip2 is default disabled + +Tue Jul 22 07:36:28 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/CDR_Stream.{h,cpp,inl}: + Added setting for alignment which is needed for ZIOP where we want + to place back the wr_ptr to a previous location. Few const and layout + changes + +Mon Jul 21 13:09:28 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_other_tests.lst: + Run nslist tests under vxworks + +Sat Jul 19 19:58:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-macosx-tiger.h: + Make sure we set the correct ACE_SIZEOF_LONG_DOUBLE value. Thanks + to Frank F�rster <F dot Forster at herts dot ac dot uk> for reporting this + +Thu Jul 17 20:24:11 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/OS_NS_sys_socket.inl (recvfrom): For Pharlap ETS, correct for + a situation where recvfrom() returns a good address but an + unexpectedly short length. + +Tue Jul 15 17:29:22 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * examples/Monitor/Bytes_Sent/bytes_sent.cpp: + * examples/Monitor/Message_Queue_Size/message_queue_size.cpp: + * examples/Monitor/Constraint/constraint.cpp: + * examples/Monitor/CPU_Load/cpu_load.cpp: + * examples/Monitor/Num_Threads/num_threads.cpp: + * examples/Monitor/Group/group.cpp: + * examples/Monitor/Memory_Usage/memory_usage.cpp: + + Changes corresponding to the relocation in + + Tue Jul 15 17:19:14 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + +Tue Jul 15 17:19:14 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Size.cpp: + * ace/Monitor_Control_Types.cpp: + * ace/Monitor_Control_Types.h: + * ace/Monitor_Base.cpp: + * ace/Monitor_Base.h: + * ace/Monitor_Base.inl: + * ace/Monitor_Control/Bytes_Received_Monitor.cpp: + * ace/Monitor_Control/Packets_Received_Monitor.cpp: + * ace/Monitor_Control/CPU_Load_Monitor.cpp: + * ace/Monitor_Control/Monitor_Group.cpp: + * ace/Monitor_Control/Memory_Usage_Monitor.cpp: + * ace/Monitor_Control/Monitor_Query.cpp: + * ace/Monitor_Control/Num_Threads_Monitor.cpp: + * ace/Monitor_Control/Bytes_Sent_Monitor.cpp: + * ace/Monitor_Control/Packets_Sent_Monitor.cpp: + + Relocated the statistics-related values from + Monitor_Base to Monitor_Control_Types. Also + inlined the information type accessor, the + constraint list accessor and the refcounting + methods. + +Tue Jul 15 01:27:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-win32-common.h: + Added pragma comment for iphlpapi.lib. Thanks to Yongming Wang + <wangym at gmail dot com> for reporting this + +Mon Jul 14 12:50:34 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * NEWS: + + Added an entry for my change from Mon Jun 30 12:41:00 UTC 2008. + +Mon Jul 14 12:05:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/Message_Queue_T.cpp: + + Correct void function dump returns from previous commit of: + Fri Jul 11 08:06:40 UTC 2008 James H. Hill + +Sat Jul 12 12:59:19 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-borland-common.h: + Removed BCB4 support + + * ace/ACE.cpp: + Const/layout changes + + * ace/Configuration.h: + Doxygen changes + + * ace/Monitor_Base.cpp (retrieve_and_clear): + Use clear_i to prevent deadlocks + + * ace/SOCK_IO.cpp: + Const changes + + * ace/Strategies_T.cpp: + layout changes + +Fri Jul 11 23:48:19 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/make_release.py: + Don't exclude the mwc files for vc8. Thanks to Michael Guntli + <michael dot guntli at leica-geosystems dot com> for reporting + this. This fixes bugzilla 3364 + +Fri Jul 11 14:41:19 UTC 2008 James H. Hill <hillj@isis.vanderbilt.edu> + + * NEWS: + + Updated the NEW file to reflect previous ChangeLog entry. + +Fri Jul 11 08:06:40 UTC 2008 James H. Hill <hillj@isis.vanderbilt.edu> + + * ace/Message_Queue_T.h: + * ace/Message_Queue_T.cpp: + + Implemented the iterator and reverse iterator for the + ACE_Message_Queue_Ex class. + +Wed Jul 9 21:20:13 UTC 2008 Ken Sedgwick <ken+5a4@bonsai.com> + + * rpmbuild/README: + Added basic rpmbuild instructions. + +Wed Jul 9 19:07:24 2008 Steve Huston <shuston@riverace.com> + + * tests/Reactor_Dispatch_Order_Test.cpp: Reversed this change: + Sat Mar 29 08:16:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + which disabled testing for ACE_Dev_Poll_Reactor. Let's see what the + issues are then address and/or disable as needed. + Also fixed a cut/paste error. + +Wed Jul 9 18:37:57 2008 Steve Huston <shuston@riverace.com> + + * tests/Reference_Counted_Event_Handler_Test.cpp: Enabled test for + Winsock 2 systems; previously only ran the ACE_WFMO_Reactor-based + test for non-Winsock 2 systems, where it is not supported. + +Wed Jul 9 17:45:40 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/config_h.m4: + + Remove autoheader template for ACE_HAS_NON_BLOCKING_CONNECTS. + + * tests/MT_SOCK_Test.cpp: + + Remove use of ACE_HAS_NON_BLOCKING_CONNECTS feature test macro. + It was removed since ACE no longer supports any systems that + required it. + +Wed Jul 9 16:09:30 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/config_h.m4: + * configure.ac: + + Remove feature test and autoheader template for + ACE_LACKS_WILDCARD_BIND. + + * ace/Sock_Connect.cpp: + + Remove use of ACE_LACKS_WILDCARD_BIND feature test macro. + + * ace/README: + + Remove ACE_LACKS_WILDCARD_BIND from the list of feature test + macros. It was removed since ACE no longer supports any systems + that required it. + +Wed Jul 9 16:02:32 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + + Changed ACE_HAS_SIGVAL_SIGVAL_INT and ACE_HAS_SIGVAL_SIGVAL_PTR + feature tests to use "union sigval" instead of "sigval_t". The + former is what ACE uses; while the latter is a common extension, + it is not in the XPG3 specification. Thanks to Olli Savia. + +Wed Jul 9 14:23:00 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/README: + + Remove ACE_HAS_TEMPLATE_SPECIALIZATION from list of feature + test macros. + +Wed Jul 9 14:18:26 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/config_h.m4: + * configure.ac: + + Remove feature test and autoheader template for + ACE_HAS_DLFCN_H_BROKEN_EXTERN_C. + + * ace/os_include/os_dlfcn.h: + + Remove use of ACE_HAS_DLFCN_H_BROKEN_EXTERN_C feature test + macro. + + * ace/README: + + Remove ACE_HAS_DLFCN_H_BROKEN_EXTERN_C from the list of feature + test macros. It was removed since ACE no longer supports any + systems that required it. + +Wed Jul 9 09:20:03 UTC 2008 Olli Savia <ops@iki.fi> + + * ace/TTY_IO.h: + * ace/TTY_IO.cpp: + Removed deprecated 'parityenb' member from ACE_TTY_IO::Serial_Params + structure. + + * NEWS: + Added a note about change above. + +Tue Jul 8 21:53:31 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/Service_Manager.cpp (process_request): Ensure that requests + are processed using the global context, rather than the current + one. Thanks to Michael Doubez <michael dot doubez at gmail dot + com> for suggesting this fix. + +Tue Jul 8 16:44:24 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/config_h.m4: + + Remove autoheader template for ACE_HAS_BROKEN_HPUX_TEMPLATES. + + * netsvcs/lib/Server_Logging_Handler_T.cpp: + * netsvcs/lib/Server_Logging_Handler_T.h: + + Remove use of ACE_HAS_BROKEN_HPUX_TEMPLATES feature test macro. + + * ace/README: + + Remove ACE_HAS_BROKEN_HPUX_TEMPLATES from the list of feature + test macros. It was removed since ACE no longer supports any + systems that required it. + +Tue Jul 8 16:41:26 2008 Steve Huston <shuston@riverace.com> + + * ace/WIN32_Asynch_IO.cpp (ACE_WIN32_Asynch_Write_Stream::write): For + Winsock 2-capable platforms, use WSASend() instead of WriteFile(). + The former performs an order of magnitude faster. Thanks to + Namrata Gandhi for running the Win32 native performance tests. + +Tue Jul 8 16:35:57 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/config_h.m4: + * configure.ac: + + Remove feature test and autoheader template for + ACE_NEEDS_REGEXPR_H. It is no longer used by ACE. + + * ace/config-unixware-7.1.0.h: + * ace/config-unixware-7.1.0.udk.h: + + Remove the ACE_NEEDS_REGEXPR_H feature test macro definition. + It is no longer used by ACE. + +Tue Jul 8 16:06:46 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * NEWS: + + Document new --enable-rcsid option for autoconf build. + + * m4/ace.m4: + * m4/config_h.m4: + * m4/platform.m4: + + Add support of a new --enable-rcsid option for the autoconf + build. Previously, compiling RCS IDs into object files was + tightly coupled with the --enable-debug option and was always + disabled for certain operating systems. A separate option allows + the user to select this behavior independently. + +Tue Jul 8 14:41:08 2008 Steve Huston <shuston@riverace.com> + + * tests/Reference_Counted_Event_Handler_Test.cpp: Fixed test cases + that I accidentally reversed in + Fri Jul 4 20:11:02 UTC 2008 Steve Huston <shuston@riverace.com> + +Tue Jul 08 06:44:09 MST 2008 Trevor Fields <fields_t@ociweb.com> + + * bin/PerlACE/Run_Test.pm: + + Added waitforfileoutput and waitforfileoutput_timed + methods that wait for output to appear in a file. + +Sun Jul 6 19:47:27 UTC 2008 Ken Sedgwick <ken+5a4@bonsai.com> + + * rpmbuild/ace-tao.spec: + Added idl and pidl include files to tao-devel package. + +Sun Jul 6 18:28:58 UTC 2008 Ken Sedgwick <ken+5a4@bonsai.com> + + * rpmbuild/ace-tao.spec: + * rpmbuild/ace-tao-orbsvcs-daemon.patch: + * rpmbuild/ace-tao-config.patch: + Updated for latest DOC Group release (x.6.6). + Tracked libACE_Monitor_Control name change. + Fixed broken patches. + +Fri Jul 4 20:11:02 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/config-macros.h: Don't set ACE_HAS_PROCESS_SPAWN for + ACE_HAS_PHARLAP - there's only one process available. + + * ace/Recursive_Thread_Mutex.cpp (get_nesting_level): Add Pharlap ETS + to those platforms without access to the recursion count on a + recursive mutex. + + * tests/run_test.lst: Disable Sendfile_Test on LABVIEW_RT - it lacks + sendfile support. + + * tests/Reference_Counted_Event_Handler_Test.cpp: Replaced ACE_ASSERT + with ACE_ERROR; surrounded naked strings with ACE_TEXT; added a test + option for using ACE_Dev_Poll_Reactor where available. + + * tests/Service_Config_Test.cpp: Replaced ACE_ASSERT with ACE_ERROR. + + * tests/Thread_Pool_Reactor_Resume_Test.cpp: + * tests/Thread_Pool_Reactor_Test.cpp: Add ACE_HAS_PHARLAP to those + platforms that need to scale back the max number of connections + due to limited capacity. + +Thu Jul 3 21:42:54 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + + Changed the feature test used for the existance of the sigval_t + type not to define ACE_LACKS_SIGVAL_T if it does not exist. + + However, it is still needed to set the ac_cv_type_sigval_t shell + variable, which is used to decide whether to perform the + ACE_HAS_SIGVAL_SIGVAL_INT and ACE_HAS_SIGVAL_SIGVAL_PTR feature + tests. + + This fixes (the newly reopened) bugzilla #2794. Thanks to Olli + Savi for suggesting taking another look. + +Thu Jul 3 16:38:35 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * bin/MakeProjectCreator/templates/gnu.mpd: + + Added the use of 'postclean' to be used during the realclean + target. + +Wed Jul 2 18:30:15 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Base.cpp (clear_i): + + Added resize of string array (if applicable) to 0. + + * ace/Monitor_Control/CPU_Load_Monitor.h: + * ace/Monitor_Control/Bytes_Received_Monitor.cpp: + * ace/Monitor_Control/Packets_Received_Monitor.cpp: + * ace/Monitor_Control/Memory_Usage_Monitor.h: + * ace/Monitor_Control/Num_Threads_Monitor.h: + * ace/Monitor_Control/CPU_Load_Monitor.cpp: + * ace/Monitor_Control/Memory_Usage_Monitor.cpp: + * ace/Monitor_Control/Num_Threads_Monitor.cpp: + * ace/Monitor_Control/Bytes_Sent_Monitor.cpp: + * ace/Monitor_Control/Packets_Sent_Monitor.cpp: + + Finished implementation of clear_i() method for all + platforms. + +Wed Jul 2 12:45:53 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * Updated the COPYING file to make it consistent with what's on the website. + +Wed Jul 02 12:30:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/Monitor_Control/Solaris_Network_Interface_Monitor.cpp: + + ACE_TEXT () and ACE_TEXT_ALWAYS_CHAR () required here. + +Wed Jul 02 12:05:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/Framework_Component.cpp: + + Annoying text constant problem in a build. No need for ACE_TEXT() + here. + +Wed Jul 2 11:51:03 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * tests/Makefile.am: + + Added the Process_Env_Test. + +Wed Jul 02 11:40:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Process_Env_Test.cpp: + + Annoyingly the ACE_RCSID() macro provides it's own ; + This fixes the "Process_Env_Test.cpp:23: error: extra ';'" error. + +Tue Jul 1 22:47:17 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/Process.{h cpp}: Can't define or use the new convert_env_buffer() + method unless ACE_HAS_WCHAR is defined. This extra check is needed + for LabVIEW RT / Pharlap ETS because it purports to be Win32 but + does not have wide-char support. + +Tue Jul 1 14:20:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/PythonACE/fuzz/check_no_tabs.py: + + Attempt to provide tabs check. + +Tue Jul 1 12:29:34 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Control/Bytes_Received_Monitor.cpp: + * ace/Monitor_Control/Packets_Received_Monitor.cpp: + * ace/Monitor_Control/Bytes_Sent_Monitor.cpp: + * ace/Monitor_Control/Packets_Sent_Monitor.cpp: + + Cosmetic changes. + +Mon Jun 30 16:50:05 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * ace/Process.h: + + Fixed a misplaced bit of code. + +Mon Jun 30 12:41:00 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * ace/Process.h: + * ace/Process.cpp: + + Added an option to ACE_Process_Options to use a wchar_t environment + buffer instead of char. This is useful only on Windows with + ACE_USES_WCHAR undefined. The benefit of using a wchar_t + environment buffer is that it is not limited to 32kb as a char + environment buffer is. + + In ACE_Process::spawn(), convert the char environment buffer to a + wchar_t environment buffer if specified to do so in the process + options. + + * tests/Process_Env_Test.cpp: + * tests/run_test.lst: + * tests/tests.mpc: + + Added a test for the above feature. + +Fri Jun 27 18:04:52 UTC 2008 Steve Huston <shuston@riverace.com> + + * include/makeinclude/rules.local.GNU: Removed the first setting of + CLEANUP_OBJS by itself - it was a duplicate of what's done in + CLEANUP_BIN's case, but with possibly an incorrect objext. Prevents + a main executable's object file from being deleted twice and ensures + only valid object file extension is used. Thanks to Howard Finer + for pointing this out. + +Fri Jun 27 16:08:27 UTC 2008 Steve Huston <shuston@riverace.com> + + * include/makeinclude/rules.local.GNU: Add $(VOBJS) to CLEANUP_OBJS to + be sure all objects that go into a binary are cleaned up. + +Fri Jun 27 15:35:58 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * bin/MakeProjectCreator/modules/AutomakeWorkspaceHelper.pm: + + Changed TAO_IDLFLAGS to Rename executable from gperf to + ace_gperf. + +Fri Jun 27 14:58:17 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Control/Solaris_Network_Interface_Monitor.h: + + Changed ACE_CString member to ACE_TString, to accommodate + wchar builds. + +Thu Jun 26 20:41:20 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/Profile_Timer.cpp: + + Explictly #include "ace/OS_NS_fcntl.h" and "ace/OS_NS_unistd.h" + if ACE_HAS_PRUSAGE_T is defined. These headers are implicitly + #included with inline builds, but are required for builds + where inline has been disabled. + +Thu Jun 26 13:13:16 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Control_Types.h: + * ace/Monitor_Base.cpp: + * ace/Monitor_Base.h: + * ace/Monitor_Control/Monitor_Group.h: + * ace/Monitor_Control/Monitor_Group.cpp: + + Restored support for string data type in + monitor storage, by moving data types, + members and methods from their original + location in an earlier version of the + Notification Service monitor classes, + to the appropriate locations in ACE. + +Thu Jun 26 02:45:21 UTC 2008 Phil Mesnier <mesnier_p@ociweb.com> + + * THANKS: added Ittehad Shaikh + +Wed Jun 25 15:05:29 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * apps/gperf/src/Makefile.am: + + Rename executable from gperf to ace_gperf. + +Wed Jun 25 14:59:13 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * apps/gperf/tests/Makefile.am: + + Re-tabify. + +Wed Jun 25 14:09:52 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * rpmbuild/ace-tao-config.patch + Removed ACE_GPERF + + * rpmbuild/ace-tao.spec: + Document changes + + * rpmbuild/ace-tao-gperf-info.patch: + Removed, not needed anymore + +Wed Jun 25 13:29:13 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/config_h.m4: + * configure.ac: + + Remove feature test and autoheader template for + ACE_HAS_BROKEN_NETBSD_MSYNC. + + * ace/OS_NS_sys_mman.inl: + + Remove the use of the ACE_HAS_BROKEN_NETBSD_MSYNC feature test + macro. It was removed since ACE no longer supports the systems + that required it. + +Wed Jun 25 11:23:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/Monitor_Control/Bytes_Received_Monitor.cpp: + + Tue Jun 24 11:46:41 UTC 2008 Jeff Parsons committed + Miss-cased ACE_TEXT. + +Wed Jun 25 10:00:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/fuzz.pl: + + Enhance ACE_TMAIN and ORB_init checks for /* .. */ comments. + +Wed Jun 25 06:58:52 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * apps/gperf/gperf.1: + * apps/gperf/gperf.info: + * apps/gperf/gperf.mpc: + * apps/gperf/gperf.texi: + * apps/gperf/ace_gperf.1: + * apps/gperf/ace_gperf.info: + * apps/gperf/ace_gperf.mpc: + * apps/gperf/ace_gperf.texi: + * apps/gperf/gperf/src/gperf.mpc: + * apps/gperf/gperf/tests/gperf_test.mpb: + * apps/gperf/gperf/tests/Makefile.am: + Renamed gperf to ace_gperf to make sure we always get the gperf + from ace, fedora also has a regular gperf package + + * include/makeinclude/platform_vxworks5.5.x.GNU: + * include/makeinclude/platform_vxworks6.2.GNU: + * include/makeinclude/platform_vxworks6.3.GNU: + Updated for gperf rename + + * rpmbuild/ace-tao.spec: + Removed gperf rename which only was done in the rpm package. + This fixes bugzilla 3342 + +Wed Jun 25 05:59:52 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * include/makeinclude/platform_netbsd.GNU: + + Conditionally set no_hidden_visibility to 1. + +Tue Jun 24 13:52:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Bug_2980_Regression_Test.cpp: + * tests/tests.mpc: + + Remove ACE_TMAIN from this test and stop it building on + wide systems (as per original test). The test can not use + ace directly. + +Tue Jun 24 13:30:31 2008 Steve Huston <shuston@riverace.com> + + * ace/CDR_Stream.h: For ACE_OutputCDR, note that attempting to set a + specific byte order requires ACE_ENABLE_SWAP_ON_WRITE to have any + affect. Thanks to Howard Finer for pointing this out. + +Tue Jun 24 11:46:41 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Control/Bytes_Received_Monitor.cpp: + * ace/Monitor_Control/Packets_Received_Monitor.cpp: + * ace/Monitor_Control/Bytes_Sent_Monitor.cpp: + * ace/Monitor_Control/Packets_Sent_Monitor.cpp: + + For Solaris and *BSD WChar builds, ACE_TEXT-ified the argument + in the call to the platform-specific base class + constructor. + +Tue Jun 24 11:02:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/Svc_Conf_Token_Table.h: + + commit generated 3rd file. + Fix the dependancies for FC6_Compact_NoInline build. + +Tue Jun 24 09:45:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Bug_2980_Regression_Test.cpp: + * tests/tests.mpc: + + Manually add the ACE_TMAIN code to this test. + +Tue Jun 24 00:03:27 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/Monitor_Control/BSD_Network_Interface_Monitor.cpp: + * ace/Monitor_Control/BSD_Network_Interface_Monitor.h: + + Changed to fetch current value in constructor, and subtract + that from subsequent values in each update() call. + +Mon Jun 23 15:28:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/Svc_Conf_y.cpp: + + Fix fuzz errors incorrect ACE_TMAIN/main use; commit generated 2nd. + +Mon Jun 23 15:27:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/Svc_Conf.y: + + Fix fuzz errors incorrect ACE_TMAIN/main use; commit source 1st. + +Mon Jun 23 13:51:23 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Control/Windows_Monitor.h: + + Changed class member type from ACE_CString to ACE_TString + to accomondate Unicode builds. + + * ace/Monitor_Control/Windows_Monitor.cpp: + + Removed incorrect use of ACE_TEXT wrapper on a non-literal. + +Mon Jun 23 12:34:35 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * bin/tao_other_tests.lst: + + Added the new Notify Timeout test. + +Mon Jun 23 12:09:26 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * examples/C++NPv2/display_logfile.cpp: Divided an ACE_TCHAR + string by sizeof (ACE_TCHAR) to get the appropriate size. + Thanks to J.T. <jtc at acorntoolworks dot com> for reporting + this. + +Mon Jun 23 11:12:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/Svc_Conf_y.cpp: + * bin/LabVIEW_RT/labview_test_controller/test.cpp: + * ASNMP/examples/trap/trap.cpp: + * ASNMP/examples/get/get.cpp: + * ASNMP/examples/get/get_async.cpp: + * ASNMP/examples/set/set.cpp: + * ASNMP/examples/next/next.cpp: + * ASNMP/examples/walk/walk.cpp: + * netsvcs/clients/Tokens/mutex/test_mutex.cpp: + * performance-tests/RPC/client.cpp: + * tests/Bug_2980_Regression_Test.cpp: + + Fix fuzz errors incorrect ACE_TMAIN/main use. + +Sun Jun 22 17:23:08 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Control/CPU_Load_Monitor.cpp: + * ace/Monitor_Control/Memory_Usage_Monitor.cpp: + * ace/Monitor_Control/Num_Threads_Monitor.cpp: + + Fix to clear_i() implementation for these monitors that + compiled only on Windows. + +Fri Jun 20 20:40:50 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Size.cpp: + * ace/Monitor_Base.cpp: + * ace/Monitor_Base.h: + + Moved stats features from the Notification Service monitor + class to the ACE base class. + + * ace/Monitor_Control/Windows_Multi_Instance_Monitor.cpp: + * ace/Monitor_Control/Linux_Network_Interface_Monitor.cpp: + * ace/Monitor_Control/CPU_Load_Monitor.h: + * ace/Monitor_Control/Bytes_Received_Monitor.cpp: + * ace/Monitor_Control/Windows_Monitor.h: + * ace/Monitor_Control/Packets_Received_Monitor.cpp: + * ace/Monitor_Control/Memory_Usage_Monitor.h: + * ace/Monitor_Control/Monitor_Group.h: + * ace/Monitor_Control/Null_Network_Interface_Monitor.cpp: + * ace/Monitor_Control/BSD_Network_Interface_Monitor.h: + * ace/Monitor_Control/Solaris_Network_Interface_Monitor.h: + * ace/Monitor_Control/Num_Threads_Monitor.h: + * ace/Monitor_Control/Bytes_Sent_Monitor.h: + * ace/Monitor_Control/CPU_Load_Monitor.cpp: + * ace/Monitor_Control/Packets_Sent_Monitor.h: + * ace/Monitor_Control/Windows_Monitor.cpp: + * ace/Monitor_Control/Monitor_Group.cpp: + * ace/Monitor_Control/Memory_Usage_Monitor.cpp: + * ace/Monitor_Control/Linux_Network_Interface_Monitor.h: + * ace/Monitor_Control/Windows_Multi_Instance_Monitor.h: + * ace/Monitor_Control/BSD_Network_Interface_Monitor.cpp: + * ace/Monitor_Control/Bytes_Received_Monitor.h: + * ace/Monitor_Control/Solaris_Network_Interface_Monitor.cpp: + * ace/Monitor_Control/Packets_Received_Monitor.h: + * ace/Monitor_Control/Null_Network_Interface_Monitor.h: + * ace/Monitor_Control/Num_Threads_Monitor.cpp: + * ace/Monitor_Control/Bytes_Sent_Monitor.cpp: + * ace/Monitor_Control/Packets_Sent_Monitor.cpp: + + Implemented overrides of clear_i() for all the OS + monitors. + +Fri Jun 20 20:25:12 UTC 2008 Steve Huston <shuston@riverace.com> + + * bin/PerlACE/README: Edited to reflect the change in process for + referring to test components. Components are now referred to with + numbers instead of names. + + * bin/PerlACE/TestTarget.pm: In create_target(), warn if the component + is not a number. + + * bin/PerlACE/ProcessLVRT.pm: Don't try to close an undefined Telnet. + + * bin/tao_orb_tests.lst: Removed the LabVIEW_RT disabling on + Bug_2702_Regression, Oneway_Send_Timeouts, and Abstract_Interface. + + * tests/run_test.pl: Changed the target component from "ace" to 1 per + new component referring convention. + +Fri Jun 20 18:40:10 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * bin/PerlACE/Run_Test.pm: + + Removed references to HostProcess and TargetProcess. + + * bin/PerlACE/TestTarget.pm: + * bin/PerlACE/TestTarget_VxWorks.pm: + + Added a new test target for VxWorks. It currently has no reboot + related functionality. + + * bin/PerlACE/TestTarget_LVRT.pm: + + Added the ability to accept multiple files for the DeleteFile + method as unlink does. + + * bin/PerlACE/HostProcess.pm: + * bin/PerlACE/TargetProcess.pm: + + Removed these files. + +Fri Jun 20 15:15:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/fuzz.pl: + + Small bug in white space compaction. + +Fri Jun 20 14:15:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/fuzz.pl: + + Enhance ACE_TMAIN check for multi-line detection and remove + detection level for this check. + +Fri Jun 20 12:09:53 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * examples/IPC_SAP/SSL_SAP/SSL-client-simple.cpp: + * examples/IPC_SAP/SSL_SAP/SSL-client.cpp: + + Added static_cast's to avoid warnings from vc8. + +Thu Jun 19 16:21:07 2008 Steve Huston <shuston@riverace.com> + + * ace/CDR_Base.h: + * ace/CDR_Stream.h: Added a enum to ACE_CDR with the values for + byte ordering specifier. Moved the setting of ACE_CDR_BYTE_ORDER + from CDR_Stream.h to CDR_Base.h so it can be used in the enum. + These make it easier for users to figure out what to do when they + want to force a specific byte ordering. + Also did a little more doxygen cleanup. + +Thu Jun 19 15:11:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/fuzz.pl: + + Enable ORB_init() 3rd parameter null string check. + +Thu Jun 19 14:11:04 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/Monitor_Control/BSD_Network_Interface_Monitor.cpp: + + Explicitly #include <sys/ioctl.h> and <net/if.h> for non-inline + builds. + +Wed Jun 18 17:36:34 UTC 2008 Yan Dai <dai_y@ociweb.com> + + * ace/Stack_Trace.cpp: + + Moved pragma disable warning directives from inside of function to + outside to take effect. + +Wed Jun 18 17:27:51 2008 Steve Huston <shuston@riverace.com> + + * ace/CDR_Stream.h: Some doxygen improvements. + +Wed Jun 18 15:36:11 UTC 2008 Phil Mesnier <mesnier_p@ociweb.com> + + * bin/tao_orb_tests.lst: + + Added new run_test scripts for the special variants of the TAO + POA EndpointPolicy test. + +Wed Jun 18 13:20:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/fuzz.pl: + + Redo check for wide character incompatabilty ORB_init() miss-use. + Caters for multi-line ORB_init. + +Wed Jun 18 12:16:48 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * bin/PerlACE/Run_Test.pm: + + Increase the process start wait time for QNX. + +Wed Jun 18 10:43:20 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_linux_icc.GNU: + Don't use deprecated options + +Wed Jun 18 09:50:20 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * README: + * ACE-INSTALL.html: + Updated + +Tue Jun 17 22:43:20 2008 Steve Huston <shuston@riverace.com> + + * ace/Reactor.h: Clarify that calling remove_handler() for a signal + handler does not invoke the handler's handle_close() callback. Also + note that this behavior is under debate in Bugzilla #2368. Thanks to + Bill Kendall <wkendall at sgi dot com> for calling this to attention. + + * THANKS: Added Bill Kendall. + +Tue Jun 17 15:36:49 UTC 2008 Yan Dai <dai_y@ociweb.com> + + * ace/Stack_Trace.cpp: + + Disabled warning C4706 in load_dbghelp_library_if_needed() + and enabled afterwards on windows. + +Tue Jun 17 13:55:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/fuzz.pl: + + Add check for wide character incompatabilty ORB_init() miss-use. + +Tue Jun 17 12:40:03 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/Monitor_Control/BSD_Network_Interface_Monitor.cpp: + + Explicitly #include <sys/sockio.h> for non-inline builds. + +Tue Jun 17 09:30:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * apps/JAWS/clients/WebSTONE/src/bench.c: + * apps/JAWS/clients/WebSTONE/src/errexit.c: + * apps/JAWS/clients/WebSTONE/src/genrand.c: + * apps/JAWS/clients/WebSTONE/src/timefunc.c: + * apps/JAWS/clients/WebSTONE/src/webclient.c: + * apps/JAWS/clients/WebSTONE/src/webmaster.c: + + Fuzz errors, Untabify. + +Tue Jun 17 08:13:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * include/make_include/platform_sunos5_common.GNU: + + Changed default "kstat ?= 1" at Johnny Willemsens request. + +Tue Jun 17 06:42:51 UTC 2008 Yan Dai <dai_y@ociweb.com> + + * ace/Stack_Trace.cpp: + + Fixed declared method (determine_starting_frame) never referenced + warning on HP aCC build. + +Mon Jun 16 21:26:05 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> + + * bin/fuzz.pl: + + Enable check_for_tab for all files in the repository. + +Mon Jun 16 21:22:03 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> + + * apps/JAWS/clients/Caching/Local_Locator.cpp: + * apps/JAWS/clients/WebSTONE/src/bench.c: + * apps/JAWS/clients/WebSTONE/src/errexit.c: + * apps/JAWS/clients/WebSTONE/src/genrand.c: + * apps/JAWS/clients/WebSTONE/src/get.c: + * apps/JAWS/clients/WebSTONE/src/gettimeofday.c: + * apps/JAWS/clients/WebSTONE/src/parse_file_list.c: + * apps/JAWS/clients/WebSTONE/src/rexec.c: + * apps/JAWS/clients/WebSTONE/src/statistics.c: + * apps/JAWS/clients/WebSTONE/src/sysdep.c: + * apps/JAWS/clients/WebSTONE/src/timefunc.c: + * apps/drwho/Hash_Table.cpp: + + Untabify. + +Mon Jun 16 20:24:45 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> + + * apps/Gateway/Gateway/Connection_Handler.cpp: + * apps/Gateway/Gateway/Event_Forwarding_Discriminator.cpp: + * apps/Gateway/Peer/Options.cpp: + * apps/JAWS/clients/Blobby/Options.cpp: + * apps/JAWS/clients/Blobby/blobby.cpp: + * apps/JAWS/clients/Caching/ID_Generator.cpp: + * apps/JAWS/clients/Caching/Local_Locator.cpp: + * apps/JAWS/clients/Caching/Locator_Request_Reply.cpp: + * apps/JAWS/clients/Caching/URL_Properties.inl: + * apps/JAWS/clients/WebSTONE/src/bench.c: + * apps/JAWS/clients/WebSTONE/src/cgi-send.c: + * apps/JAWS/clients/WebSTONE/src/get.c: + * apps/JAWS/clients/WebSTONE/src/getopt.c: + * apps/JAWS/clients/WebSTONE/src/nsapi-send.c: + * apps/JAWS/server/HTTP_Config.cpp: + * apps/JAWS/server/HTTP_Handler.cpp: + * apps/JAWS/server/HTTP_Helpers.cpp: + * apps/JAWS/server/HTTP_Response.cpp: + * apps/JAWS/server/HTTP_Server.h: + * apps/JAWS/server/HTTP_Server.cpp: + * apps/JAWS/stress_testing/benchd.cpp: + * apps/JAWS/stress_testing/connection.cpp: + * apps/JAWS/stress_testing/http_tester.cpp: + * apps/JAWS2/JAWS/Cache_Hash_T.h: + * apps/JAWS2/JAWS/Hash_Bucket_T.h: + * apps/drwho/File_Manager.cpp: + * apps/drwho/Hash_Table.cpp: + * apps/drwho/PMC_All.cpp: + * apps/drwho/PMC_Flo.cpp: + * apps/drwho/PMC_Ruser.cpp: + * apps/drwho/PMC_Usr.cpp: + * apps/drwho/PMS_Ruser.cpp: + * apps/drwho/PM_Client.cpp: + * apps/drwho/Rwho_DB_Manager.cpp: + * apps/gperf/src/Gen_Perf.cpp: + + Untabify. + +Mon Jun 16 19:06:38 UTC 2008 William R. Otte <wotte@dre.vanderbilt.edu> + + * ace/config-borland-common.h: + * ace/config-hpux-11.00.h: + * ace/config-mvs.h: + * ace/config-win32-dmc.h: + * ace/config-win32-ghs.h: + * ace/config-win32-msvc.h: + + Fixes for MCPP preprocessing on Windows. + +Mon Jun 16 19:06:44 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * ace/Acceptor.cpp: + * ace/Connector.cpp: + * ace/Strategies_T.cpp: + + Use the NORMAL_CLOSE_OPERATION enum value when closing the service + handler during activation. + +Mon Jun 16 18:33:34 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> + + * examples/ASX/UPIPE_Event_Server/Peer_Router.cpp: + * examples/OS/Process/imore.cpp: + * examples/Reactor/Proactor/test_proactor3.cpp: + * examples/Service_Configurator/IPC-tests/server/Handle_R_Stream.cpp: + + Untabify. + +Mon Jun 16 18:00:26 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> + + * ASNMP/examples/get/get.cpp: + * ASNMP/examples/get/get_async.cpp: + * ASNMP/examples/next/next.cpp: + * ASNMP/examples/set/set.cpp: + + Untabify. + +Mon Jun 16 17:53:00 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> + + * examples/IPC_SAP/SPIPE_SAP/consumer_msg.cpp: + * examples/IPC_SAP/SPIPE_SAP/consumer_read.cpp: + * examples/IPC_SAP/TLI_SAP/db-client.cpp: + * examples/Log_Msg/Log_Msg_MFC/Log_Msg_MFC.h: + * examples/Log_Msg/Log_Msg_MFC/Log_Msg_MFCDlg.h: + * examples/Log_Msg/Log_Msg_MFC/StdAfx.h: + * examples/Log_Msg/Log_Msg_MFC/StdAfx.cpp: + * examples/Service_Configurator/IPC-tests/server/Handle_L_Dgram.inl: + + Untabify. + +Mon Jun 16 17:27:36 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * bin/PerlACE/TargetProcess.pm: + + Remove the "use" of PerlACE::ProcessVX. It is already used in + PerlACE::Process and using it in this module causes things to be + evaluated incorrectly with respect to @ARGV. + +Mon Jun 16 17:01:19 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> + + * bin/fuzz.pl: + + Enable check_for_tab check for ACE_ROOT/examples + +Mon Jun 16 16:54:25 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> + + * examples/APG/Logging/Callback-2.h: + * examples/APG/Logging/Callback-3.h: + * examples/APG/Logging/Use_Logger.cpp: + * examples/APG/Threads/Message_Queue.cpp: + * examples/APG/Timers/CB.h: + * examples/APG/Timers/PCB.cpp: + * examples/ASX/CCM_App/SC_Server.cpp: + * examples/ASX/Event_Server/Event_Server/Consumer_Router.cpp: + * examples/ASX/Event_Server/Event_Server/Event_Analyzer.cpp: + * examples/ASX/Event_Server/Event_Server/Peer_Router.cpp: + * examples/ASX/Event_Server/Event_Server/Supplier_Router.cpp: + * examples/ASX/Message_Queue/bounded_buffer.cpp: + * examples/ASX/Message_Queue/priority_buffer.cpp: + * examples/ASX/UPIPE_Event_Server/Peer_Router.cpp: + * examples/Bounded_Packet_Relay/BPR_Drivers.cpp: + * examples/Bounded_Packet_Relay/Thread_Bounded_Packet_Relay.cpp: + * examples/Bounded_Packet_Relay/bpr_thread.cpp: + * examples/C++NPv2/display_logfile.cpp: + * examples/Connection/misc/Connection_Handler.h: + * examples/IPC_SAP/ATM_SAP/CPP-client.cpp: + * examples/IPC_SAP/ATM_SAP/CPP-server.cpp: + * examples/IPC_SAP/DEV_SAP/writer/writer.cpp: + * examples/IPC_SAP/FIFO_SAP/FIFO-Msg-server.cpp: + * examples/IPC_SAP/FIFO_SAP/FIFO-client.cpp: + * examples/IPC_SAP/FIFO_SAP/FIFO-test.cpp: + * examples/IPC_SAP/FILE_SAP/client.cpp: + * examples/IPC_SAP/SOCK_SAP/C-inclient.cpp: + * examples/IPC_SAP/SOCK_SAP/CPP-unclient.cpp: + * examples/IPC_SAP/SPIPE_SAP/NPServer.cpp: + * examples/IPC_SAP/SPIPE_SAP/producer_msg.cpp: + * examples/IPC_SAP/TLI_SAP/CPP-ATM-client.cpp: + * examples/IPC_SAP/TLI_SAP/CPP-ATM-server.cpp: + * examples/IPC_SAP/TLI_SAP/CPP-client.cpp: + * examples/IPC_SAP/TLI_SAP/CPP-server.cpp: + * examples/IPC_SAP/TLI_SAP/db-client.cpp: + * examples/IPC_SAP/TLI_SAP/ftp-client.cpp: + * examples/Log_Msg/Log_Msg_MFC/Log_Msg_MFC.h: + * examples/Log_Msg/Log_Msg_MFC/Log_Msg_MFC.cpp: + * examples/Log_Msg/Log_Msg_MFC/Log_Msg_MFCDlg.h: + * examples/Log_Msg/Log_Msg_MFC/Log_Msg_MFCDlg.cpp: + * examples/Logger/Acceptor-server/server_loggerd.h: + * examples/Logger/Acceptor-server/server_loggerd.cpp: + * examples/Logger/simple-server/Logging_Handler.cpp: + * examples/Logger/simple-server/server_loggerd.cpp: + * examples/Mem_Map/IO-tests/test_io.cpp: + * examples/Misc/test_get_opt.cpp: + * examples/Misc/test_profile_timer.cpp: + * examples/OS/Process/imore.cpp: + * examples/QOS/Change_Receiver_FlowSpec/Receiver_QoS_Event_Handler.cpp: + * examples/Reactor/FIFO/client.cpp: + * examples/Reactor/FIFO/server.cpp: + * examples/Reactor/Misc/notification.cpp: + * examples/Reactor/Misc/test_signals_1.cpp: + * examples/Reactor/Misc/test_signals_2.cpp: + * examples/Reactor/Ntalker/ntalker.cpp: + * examples/Reactor/Proactor/test_cancel.h: + * examples/Reactor/Proactor/test_cancel.cpp: + * examples/Reactor/Proactor/test_multiple_loops.cpp: + * examples/Reactor/Proactor/test_proactor3.cpp: + * examples/Reactor/Proactor/test_timeout.cpp: + * examples/Reactor/Proactor/test_timeout_st.cpp: + * examples/Registry/test_registry_update.cpp: + * examples/Service_Configurator/IPC-tests/client/broadcast_client_test.cpp: + * examples/Service_Configurator/IPC-tests/client/local_dgram_client_test.cpp: + * examples/Service_Configurator/IPC-tests/client/local_pipe_client_test.cpp: + * examples/Service_Configurator/IPC-tests/client/local_stream_client_test.cpp: + * examples/Service_Configurator/IPC-tests/server/Handle_L_CODgram.inl: + * examples/Service_Configurator/IPC-tests/server/Handle_L_Dgram.inl: + * examples/Service_Configurator/IPC-tests/server/Handle_L_FIFO.inl: + * examples/Service_Configurator/IPC-tests/server/Handle_L_Pipe.inl: + * examples/Service_Configurator/IPC-tests/server/Handle_L_SPIPE.inl: + * examples/Service_Configurator/IPC-tests/server/Handle_L_Stream.inl: + * examples/Service_Configurator/IPC-tests/server/Handle_R_Dgram.inl: + * examples/Service_Configurator/IPC-tests/server/Handle_Thr_Stream.cpp: + * examples/Service_Configurator/Misc/Timer_Service.cpp: + * examples/Shared_Memory/test_SV.cpp: + * examples/System_V_IPC/SV_Message_Queues/TMQ_Client.cpp: + * examples/Threads/recursive_mutex.cpp: + * examples/Threads/task_one.cpp: + * examples/Threads/thread_manager.cpp: + * examples/Threads/token.cpp: + + Untabify. + +Mon Jun 16 16:04:40 2008 Steve Huston <shuston@riverace.com> + + * bin/PerlACE/TestTarget.pm: When getting the exe subdir for a + target, pick up the command line setting if the "default" target + is in use. This should fix the broken exesubdir TAO builds. + +Mon Jun 16 15:45:45 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Control/Null_Network_Interface_Monitor.cpp: + * ace/Monitor_Control/Null_Network_Interface_Monitor.h: + + New files, defining a base class for tne network interface OS + monitors when the monitor framework itself is enabled but no + platform-specific OS monitor flags are defined, whether because + the platform itself does not support native system-level + monitoring, or because the Linux, Windows or Solaris OS + monitor flags has been turned off for some reason. + + * ace/Monitor_Control/Monitor_Control.mpc: + * ace/Monitor_Control/Bytes_Sent_Monitor.h: + * ace/Monitor_Control/Packets_Sent_Monitor.h: + * ace/Monitor_Control/Linux_Network_Interface_Monitor.h: + * ace/Monitor_Control/Bytes_Received_Monitor.h: + * ace/Monitor_Control/Packets_Received_Monitor.h: + + Incorporated the new no-op network interface monitor base class + into the existing network interface monitor classes. If this + new base class is used, the monitor's value will always be 0, + and its update() method will be a no-op. + +Mon Jun 16 12:12:16 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/config-sunos5.5.h: + + Reverted addition of ACE_HAS_KSTAT flag in + + Fri Jun 13 14:00:00 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + Thanks to Johnny Willemsen <jwillemsen@remedy.nl>, we now + know that the correct way to do this is to set kstat=1 + in platform_macros.GNU. + +Mon Jun 16 11:28:11 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> + + * bin/fuzz.pl: + + Enable check_for_tab check for TAO/tests/examples and TAO/performance-tests + +Mon Jun 16 10:30:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Max_Default_Port_Test.cpp: + + Un-tabify. + +Mon Jun 16 10:20:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/Monitor_Control/BSD_Network_Interface_Moinitor.cpp: + + Correct Fuzz errors (removed NULL). + +Mon Jun 16 01:01:27 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> + + * bin/fuzz.pl: + + Enable check_for_tab check for TAO/tests + +Sun Jun 15 16:03:29 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> + + * bin/fuzz.pl: + + Enable check_for_tab check for TAO/orbsvcs + +Sun Jun 15 13:23:13 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-linux-common.h: + Added ACE_LACKS_STRRECVFD when no streams are available (like fc9) + + * rpmbuild/ace-tao-strrecvfd.patch: + Deleted + + * rpmbuild/ace-tao.spec: + Patch 6 is not needed anymore + + * ace/Strategies_T.h: + Doxygen change + +Sun Jun 15 03:08:53 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/Monitor_Control/Monitor_Control.mpc: + + Add BSD_Network_Interface_Monitor.cpp to Source_Files section. + +Fri Jun 13 14:50:28 UTC 2008 Simon Massey <sma at prismtech dot com> + + Add BSD_Network_Interface_Monitor.cpp and + + untab-ified to remove fuzz errors. + +Fri Jun 13 14:45:28 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Control/Windows_Multi_Instance_Monitor.cpp: + + Removed unused local variable. + +Fri Jun 13 14:31:35 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * ace/Stack_Trace.cpp (Solaris section): + + Yesterday's addition of support for 64-bit SPARC broke on x86. + +Fri Jun 13 14:00:00 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/config-sunos5.5.h: + + Added #define of ACE_HAS_KSTAT, used by the OS monitors in + ace/Monitor_Control on Solaris platforms to guard the + visibility of Solaris-specific code and base classes. + +Fri Jun 13 13:40:39 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/Monitor_Control/Makefile.am: + + Add BSD_Network_Interface_Monitor.cpp and + Solaris_Network_Interface_Monitor.cpp to Headers_File section. + + * ace/Monitor_Control/Bytes_Received_Monitor.cpp: + * ace/Monitor_Control/Bytes_Received_Monitor.h: + * ace/Monitor_Control/Bytes_Sent_Monitor.cpp: + * ace/Monitor_Control/Bytes_Sent_Monitor.h: + * ace/Monitor_Control/Packets_Received_Monitor.cpp: + * ace/Monitor_Control/Packets_Received_Monitor.h: + * ace/Monitor_Control/Packets_Sent_Monitor.cpp: + * ace/Monitor_Control/Packets_Sent_Monitor.h: + + Inherit from BSD_Network_Interface_Monitor on FreeBSD, + NetBSD, and OpenBSD systems. + + * ace/Monitor_Control/BSD_Network_Interface_Monitor.cpp: + * ace/Monitor_Control/BSD_Network_Interface_Monitor.h: + + New files, network interface monitor for systems with 4.4BSD + derived network stack. + +Fri Jun 13 13:24:11 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Control/Linux_Network_Interface_Monitor.cpp: + * ace/Monitor_Control/Bytes_Received_Monitor.cpp: + * ace/Monitor_Control/Packets_Received_Monitor.cpp: + * ace/Monitor_Control/Bytes_Sent_Monitor.h: + * ace/Monitor_Control/Packets_Sent_Monitor.h: + * ace/Monitor_Control/Linux_Network_Interface_Monitor.h: + * ace/Monitor_Control/Bytes_Received_Monitor.h: + * ace/Monitor_Control/Packets_Received_Monitor.h: + * ace/Monitor_Control/Bytes_Sent_Monitor.cpp: + * ace/Monitor_Control/Packets_Sent_Monitor.cpp: + + Added '|| defined (AIX)' to every occurrence of + '#if defined (linux)' to eliminate build errors on the + latter platform. + +Thu Jun 12 21:57:33 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/config_h.m4: + * configure.ac: + + Remove feature test for ACE_HAS_TEMPLATE_SPECIALIZATION. + + * ace/config-borland-common.h: + * ace/config-cray.h: + * ace/config-cxx-common.h: + * ace/config-g++-common.h: + * ace/config-hpux-11.00.h: + * ace/config-icc-common.h: + * ace/config-integritySCA.h: + * ace/config-irix6.x-sgic++.h: + * ace/config-mvs.h: + * ace/config-openvms.h: + * ace/config-suncc-common.h: + * ace/config-sunos5.4-sunc++-4.x.h: + * ace/config-sunos5.5.h: + * ace/config-sunos5.6.h: + * ace/config-tandem-nsk-mips-v2.h: + * ace/config-tandem-nsk-mips-v3.h: + * ace/config-tru64.h: + * ace/config-unixware-7.1.0.udk.h: + * ace/config-win32-dmc.h: + * ace/config-win32-ghs.h: + * ace/config-win32-msvc-8.h: + * ace/config-win32-msvc-9.h: + * ace/config-win32-msvc-7.h: + + Remove unused #define of ACE_HAS_TEMPLATE_SPECIALIZATION. This + feature test macro is no longer used. + +Thu Jun 12 18:47:54 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Control/Solaris_Network_Interface_Monitor.h: + * ace/Monitor_Control/Solaris_Network_Interface_Monitor.cpp: + + New files, containing a base class used with + Bytes_Received_Monitor, Bytes_Sent_Monitor, + Packets_Received_Monitor and Packets_Sent_Monitor + when they are compiled on Solaris platforms. + + * ace/Monitor_Control/Windows_Multi_Instance_Monitor.cpp: + * ace/Monitor_Control/Linux_Network_Interface_Monitor.cpp: + * ace/Monitor_Control/CPU_Load_Monitor.h: + * ace/Monitor_Control/Bytes_Received_Monitor.cpp: + * ace/Monitor_Control/Windows_Monitor.h: + * ace/Monitor_Control/Packets_Received_Monitor.cpp: + * ace/Monitor_Control/Memory_Usage_Monitor.h: + * ace/Monitor_Control/Monitor_Control.mpc: + * ace/Monitor_Control/Num_Threads_Monitor.h: + * ace/Monitor_Control/Bytes_Sent_Monitor.h: + * ace/Monitor_Control/CPU_Load_Monitor.cpp: + * ace/Monitor_Control/Packets_Sent_Monitor.h: + * ace/Monitor_Control/Windows_Monitor.cpp: + * ace/Monitor_Control/Memory_Usage_Monitor.cpp: + * ace/Monitor_Control/Linux_Network_Interface_Monitor.h: + * ace/Monitor_Control/Windows_Multi_Instance_Monitor.h: + * ace/Monitor_Control/Bytes_Received_Monitor.h: + * ace/Monitor_Control/Packets_Received_Monitor.h: + * ace/Monitor_Control/Num_Threads_Monitor.cpp: + * ace/Monitor_Control/Bytes_Sent_Monitor.cpp: + * ace/Monitor_Control/Packets_Sent_Monitor.cpp: + + - Changed required to complete the support of + network interface monitors on Solaris. + + - Changed guards for Windows-specific header file + inclusion to use the recently added ACE_HAS_PDH_H, + which in turn guards the definition of the + ACE_HAS_WIN32_PDH flag used in source code. + + - Changed the names of the platform-specific monitor + update methods to update_i(), from the distinct + names they had before. This changed allowed the + elimination of many #ifdef guards in source code. + +Thu Jun 12 17:42:47 UTC 2008 Steve Huston <shuston@riverace.com> + + * bin/PerlACE/Process.pm: + * bin/PerlACE/Process_Win32.pm: Moved the Target sub from Process_Win32 + to Process so everybody can see it. Thanks to Chad Elliott for + finding and suggesting the correction for it. + +Thu Jun 12 16:04:33 UTC 2008 Steve Huston <shuston@riverace.com> + + * bin/tao_orb_tests.lst: Disabled newly added tests on LabVIEW_RT. + + * bin/PerlACE/README: Describes how the ACE+TAO test procedures work. + Includes a description of how to drive the generalized ability to + redirect execution of tests off of the build host. + + * bin/PerlACE/TestTarget.pm: + * bin/PerlACE/TestTarget_LVRT.pm: + * bin/PerlACE/ProcessLVRT.pm: + * bin/PerlACE/Process_Win32.pm: Add the ability to configure various + aspects of ACE+TAO (+CIAO I guess, but haven't tried that) to run + on machines other than the build host and with alternate roots + (ACE_ROOT, TAO_ROOT). This is an effort to generalize the ability + to run off of the build host without adding more switches and options + and convoluted settings and platform-specific code in the main + scripts. The README file explains how to set up modules to extend + testing to other platforms. LabVIEW_RT is the only one there now; + VxWorks is an obvious addition and would allow a bunch of special-case + code to be removed from the main scripts. The test-driving script + does require some change to take advantage of this capability. ACE + tests in ACE_wrappers/tests have the change. A few TAO tests do + (see TAO ChangeLog). Without the changes to the test-driving script + everything behaves as it always did. + + * tests/run_test.pl: Uses the new TestTarget capability, naming the + test target "ace". Thus, to redirect these tests to another machine, + set the DOC_TEST_ACE environment variable with a configuration name + and set configuration variables accordingly. + +Thu Jun 12 14:38:19 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * ace/Stack_Trace.h: + * ace/Stack_Trace.cpp: + + Added support for SPARCv9 (64-bit). + Reverted the Win32 assembly back to the simplest form, we had tried + to make it compatible with Borland but it still didn't work. As of + now ACE compiled by Borland will not generate stack traces. + +Thu Jun 12 12:17:52 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * ace/Stack_Trace.cpp: + + Corrected Win32 assembler compilation error. + +Wed Jun 11 16:24:00 UTC 2008 Phil Mesnier <mesnier_p@ociweb.com> + + * bin/tao_orb_tests.lst: + + Added new test case. + +Wed Jun 11 13:55:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/Time_Value.inl: + * ace/Time_Value.h: + + Add extra inline void msec(int) that calls void msec(long) + to avoid amiguity between void msec(long) and void msec(_int64 &) + when natual sized integers are given (which seems to be + quite often). + +Wed Jun 11 13:02:22 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * bin/PerlACE/Run_Test.pm: + + Replaced the "use PerlACE::Process". It is necessary to be loaded + inside this module to ensure that all of the command line options + can be processed. + +Wed Jun 11 04:17:42 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/platform.m4: + + Remove ACE_HAS_AIX_BROKEN_SOCKET_HEADER definitions. + +Wed Jun 11 03:51:32 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + * m4/config_h.m4: + + Remove feature test and autoheader template for + ACE_HAS_CHARPTR_SPRINTF. This feature test macro is no longer + used. + +Wed Jun 11 03:39:48 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + * m4/config_h.m4: + + Remove feature test and autoheader template for + ACE_LACKS_FLOATING_POINT. This feature test macro is no longer + used. + +Wed Jun 11 03:33:31 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + * m4/config_h.m4: + + Remove feature test and autoheader template for + ACE_HAS_TYPENAME_KEYWORD. This feature test macro is no longer + used. + +Wed Jun 11 03:31:02 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + * m4/config_h.m4: + + Remove feature test and autoheader template for + ACE_HAS_SPARCWORKS_401_SIGNALS. This feature test macro is no + longer used. + +Wed Jun 11 02:57:12 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/config_h.m4: + + Remove autoheader template for ACE_HAS_AIX_BROKEN_SOCKET_HEADER. + This feature test macro is no longer used. + +Wed Jun 11 02:52:16 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + * m4/config_h.m4: + + Remove feature test and autoheader template for + ACE_SELECT_USES_INT. This feature test macro is no longer used. + +Wed Jun 11 02:48:07 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/config_h.m4: + + Remove autoheader template for HAVE_RESTARTABLE_SYSCALLS. + This feature test macro is no longer used. + +Wed Jun 11 00:17:01 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + * m4/config_h.m4: + + Remove feature test and autoheader template for + ACE_HAS_IRIX_53_SIGNALS. This feature test macro is no longer + used. + +Tue Jun 10 23:57:53 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + * m4/config_h.m4: + + Remove feature tests and autoheader templates for + ACE_HAS_STD_TEMPLATE_SPECIALIZATION and + ACE_HAS_STD_TEMPLATE_CLASS_MEMBER_SPECIALIZATION. + These feature test macros are no longer used. + +Tue Jun 10 23:52:19 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + * m4/config_h.m4: + + Remove feature test and autoheader template for + ACE_HAS_BROKEN_SAP_ANY. This feature test macro is no longer + used. + +Tue Jun 10 23:49:46 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/config_h.m4: + + Remove autoheader template for ACE_HAS_BROKEN_NESTED_TEMPLATES. + This feature test macro is no longer used. + +Tue Jun 10 23:47:46 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/config_h.m4: + + Remove autoheader template for ACE_HAS_SUNOS4_SIGNAL_T. + This feature test macro is no longer used. + +Tue Jun 10 23:45:34 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + * m4/config_h.m4: + + Remove feature test and autoheader template for + ACE_HAS_BROKEN_CONDITIONAL_STRING_CAST. This feature test macro + is no longer used. + +Tue Jun 10 23:43:19 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + * m4/config_h.m4: + + Remove feature test and autoheader template for + ACE_HAS_BROKEN_CONVERSIONS. This feature test macro is no + longer used. + +Tue Jun 10 23:41:11 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + * m4/config_h.m4: + + Remove feature test and autoheader template for + ACE_HAS_BROKEN_NAMESPACES. This feature test macro is no longer + used. + +Tue Jun 10 23:39:09 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/config_h.m4: + + Remove autoheader template for ACE_HAS_SYSCALL_GETRUSAGE. This + feature test macro is no longer used. + +Tue Jun 10 23:16:31 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + * m4/config_h.m4: + + Remove feature test and autoheader template for + ACE_HAS_BROKEN_TIMESPEC_MEMBERS. This feature test macro is no + longer used. + +Tue Jun 10 21:28:23 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/platform.m4: + + Add ACE_CHECK_GETNAME_RETURNS_RANDOM_SIN_ZERO feature check, + which sets the ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO feature test + macro on Linux systems running kernels older than 2.5.47. This + is a compile time check, like was done in config-linux-common.h, + based on the value of LINUX_VERSION_CODE from <linux/version.h>. + This means ACE compiled on a newer Linux system but deployed on + an older one could result in run-time failures. + + Fixes Bugzilla #3132. + +Tue Jun 10 21:33:25 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/CDR_Stream.h: + * ace/CDR_Stream.cpp: + + Replaced a Monitor class forward declaration with the full file + include, moved from the source file to the header file. This + move enables ACE monitor points to compile when inlining is + turned on. + +Tue Jun 10 18:46:24 UTC 2008 Yan Dai <dai_y@ociweb.com> + + * ace/Stack_Trace.h: + + Updated comments to not exclude Borland from supported platforms. + + * ace/Stack_Trace.cpp: + + - Moved the label "x" from inside of asm to be outside. Some compiler + does not like it. + - Enabled LynxOS support and excluded support for gcc old versions before 3.3. + +Tue Jun 10 13:56:17 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * ace/Stack_Trace.cpp: + + One more fix for Win32 wchar. + +Tue Jun 10 13:32:57 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * tests/Bug_2980_Regression_Test.cpp: + + Avoid pointer-to-function and pointer-to-object warnings from g++. + +Tue Jun 10 12:53:05 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * tests/SSL/SSL_Asynch_Stream_Test.cpp: + + Modified to avoid virtual method hiding. + +Tue Jun 10 11:37:09 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * tests/Time_Value_Test.cpp: + + Added a static cast to avoid warnings on QNX. + +Tue Jun 10 10:57:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/ACE.cpp: + + Correct presidence bug highlighted by FC9_GCC_430 build: + ACE.cpp:1429: warning: suggest parentheses around && within || + ACE.cpp:1665: warning: suggest parentheses around && within || + ACE.cpp:1853: warning: suggest parentheses around && within || + The default precidence is && before ||, but the way the || + statements were grouped, it was clear that was not the intended + resolution. + + Correct empty if statement bug highlighted by FC9_GCC_430 build: + ACE.cpp:2773: warning: suggest braces around empty body in an 'if' statement + + Also removed warnings by using empty braces: + ACE.cpp:3389: warning: suggest a space before ';' or explicit braces around empty body in 'while' statement + ACE.cpp:3414: warning: suggest a space before ';' or explicit braces around empty body in 'while' statement + + +Mon Jun 9 21:38:04 UTC 2008 Yan Dai <dai_y@ociweb.com> + + * ace/Stack_Trace.cpp: + + Passed string literals instead of ACE_TEXT string to GetProcAddress as it + accepts LPCSTR which is defined as char*. This should fix wchar (Win32) + build errors. + +Mon Jun 9 20:52:52 2008 Steve Huston <shuston@riverace.com> + + * ace/Asynch_IO.h: Doxygen improvements. + +Mon Jun 9 19:40:56 UTC 2008 Yan Dai <dai_y@ociweb.com> + + * ace/Stack_Trace.h: + * ace/Stack_Trace.cpp: + + Excluded LynxOS, MinGW and Borland builds from stack trace supported + platforms. + +Mon Jun 09 14:46:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/Stack_Trace.cpp: + * ace/Stack_Trace.h: + + Remove TEXT() and TCHAR Fuzz errors. + +Mon Jun 9 11:26:36 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * ace/ace_for_tao.mpc: + + Added Stack_Trace.cpp since Log_Msg.cpp needs it. + +Mon Jun 09 10:42:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/NT_Service.cpp: + + unambiguated call to time_value msec(long) at line 437 + caused by new uint64 non-const setter provided by: + Thu Jun 5 14:52:43 UTC 2008 Steve Huston + +Sun Jun 8 18:09:22 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/platform.m4: + + Add ACE_CHECK_HAS_DLSYM_SEGFAULT_ON_INVALID_HANDLE feature + check, which sets the ACE_HAS_DLSYM_SEGFAULT_ON_INVALID_HANDLE + feature test macro on Linux and OpenBSD systems (as is done in + the canned config-*.h files). Fixes Bugzilla #3141. + +Sat Jun 7 13:56:56 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * ace/Log_Msg.cpp: + + Use ACE_TEXT instead of ACE_LIB_TEXT. + +Sat Jun 7 03:28:01 UTC 2008 Yan Dai <dai_y@ociweb.com> + + Merged in stack_trace_branch that added stack trace support. + + * NEWS: + + Add an entry for stack trace support. + + * ace/Log_Msg.h: + + Added comments for "%?". + + * ace/Log_Msg.cpp: + + Added new conversion character, the question mark, which gets + replaced by a stack trace on supported platforms. + + * ace/Stack_Trace.h: + * ace/Stack_Trace.cpp: + + Added new class that, on supported platforms, will take a + snapshot of the current stack when instantiated. + + * ace/ace.mpc: + + Added Stack_Trace in as source. + + * ace/config-macosx-leopard.h: + + Added ACE_HAS_EXECINFO_H define. + + * ace/Makefile.am: + + Added Stack_Trace.h and Stack_Trace.cpp. + + * configure.ac: + + Added checks for execinfo.h header. + + * tests/Stack_Trace_Test.cpp: + + New test. + + * tests/run_test.lst: + * tests/tests.mpc: + + Added Stack_Trace_Test in. + +Fri Jun 6 19:05:14 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + + Put an eval around the require of Net::Telnet so that these + modules can always be "used", but not necessarily employed. + + * bin/PerlACE/Run_Test.pm: + + Use PerlACE::TargetProcess and PerlACE::HostProcess so that all + test scripts may use them. + + * bin/PerlACE/TargetProcess.pm: + * bin/PerlACE/HostProcess.pm: + + Added modules to simplify the writing of test scripts so that + VxWorks testing can be transparent to the script itself. Having + two packages allows for role reversal (using the -reverse_roles + option to run_test.pl). For example, if you have a test that + consists of a server and a client, the script will look like this: + + $SV = new PerlACE::TargetProcess("server", "-o $iorfile"); + $CL = new PerlACE::HostProcess("client", "-k file://$iorfile"); + + If testing for VxWorks, the server process will be run on the + target and the client process will be run on the host. If the + -reverse_roles option is provided to run_test.pl, the server + process will run on the host and the client process will run on + the target. + +Fri Jun 06 13:00:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/ACE.cpp: + + untabified. + +Fri Jun 06 11:10:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/ACE.cpp: + + Added #include ace/OS_NS_fcntl.h to previous commit of + Thu Jun 5 23:46:14 UTC 2008 J.T. Conklin. + +Fri Jun 6 08:31:06 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> + + * ace/config-hpux-11.00.h: + According to Steve Huston HP-UX does provide strtoull and + wcstoull but they can be used not as straight forward as + in other compilers. I have no access to HP-UX so I added + corresponding TODO comment about ACE_LACKS_STRTOULL and + ACE_LACKS_WCSTOULL that I added previously. + + * ace/config-vxworks6.2.h: + * ace/config-vxworks6.4.h: + * ace/config-vxworks5.x.h: + * ace/config-vxworks6.3.h: + VxWorks doesn't provide wcstoull as well. + Added ACE_LACKS_WCSTOULL. + +Thu Jun 5 23:46:14 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/ACE.cpp: + + Changed daemonize() to open /dev/null and duplicate the file + descriptor as descriptors 0, 1, and 2 if it is invoked with the + closed_all_handles flag set. This avoids problems with I/O + to/from stdin, stdout, and stderr; cin, cout, and cerr; + etc. being written to/read from whatever files/sockets/devices + associated with descriptors 0, 1, and 2 when they are reopened. + This fixes Bugzilla #3338. + +Thu Jun 5 16:30:58 2008 Steve Huston <shuston@riverace.com> + + * NEWS: Added note concerning ACE_Time_Value changes from + Thu Jun 5 14:52:43 UTC 2008 Steve Huston <shuston@riverace.com> + +Tue Jun 3 13:09:27 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/OS_main.h (wmain): Added + + ACE_BEGIN_VERSIONED_NAMESPACE_DECL + ACE_END_VERSIONED_NAMESPACE_DECL + + to the ace_wmain_i macro. Thanks to June Fang <june dot fang at + gmail dot com> for reporting this. + +Thu Jun 5 14:52:43 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/Time_Value.{h inl}: Added a non-const variant of + void msec(ACE_UINT64&) - this allows the msec(ACE_UINT64&) accessor + to be called on both const and non-const objects without error. + Fixes Bugzilla #3336. Thanks to Simon Massey for this idea. + + * tests/Time_Value_Test.cpp: Added a const-checking msec() call and + corrected the test case. + +Thu Jun 05 13:45:00 UTC 2008 Simon Massey <sma@prismtech.com> + + * ace/Get_Opt.cpp: + * ace/Get_Opt.h: + * ace/Get_Opt.inl: + + As a conveniance in wide character builds allow the + options string to be specified as a standard narrow + string (that is converted internally). This type of + use is littered throughout the TAO code. + + * ace/OS_NS_stdio.cpp: + * ace/OS_NS_stdio.h: + * ace/OS_NS_stdio.inl: + + As a conveniance in wide character builds allow the + fopen() call to have parameters of mixed wide/narrow + type. This type of use is littered throughout the TAO + code. + + * ace/OS_NS_stdlib.inl: + + Correct the mkstemp facades, they were not returning + the modified template string under wide character builds, + this caused the tao_idl compiler to be unable to find + the pre-processed files to rename that it had just created. + + * examples/Log_Msg/Log_Msg_MFC/Log_Msg_MFC.mpc: + * examples/Log_Msg/Log_Msg_MFC/Log_Msg_Unicode_MFC.mpc: + + Deleted the Unicode specific version, normal one suffices + after all. + + * bin/tao_orb_tests.lst: + + Disabled problematic LynxOS test. + +Wed Jun 4 22:45:20 2008 Steve Huston <shuston@riverace.com> + + * ace/config-pharlap.h: Added ACE_LACKS_FILELLOCKS. My changes from + Mon Apr 28 21:53:23 UTC 2008 Steve Huston <shuston@riverace.com> + exposed a call to LockFileEx, which is not present on Pharlap + (and, therefore, not present in LabVIEW RT). The alternate API, + LockFile, is present on Pharlap but documented as unsupported. + Since the OS doesn't do multiple processes, there are more effective + ways to synchronize that file locks anyway. + +Wed Jun 4 20:59:16 UTC 2008 Ciju John <johnc at ociweb dot com> + + * ace/SSL/SSL_Context.cpp: + Fix for Bug 3337. ::SSL_add_dir_cert_subjects_to_stack() isn't + ready for Windows. + +Wed Jun 4 17:12:10 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/ACE.cpp (timestamp): + + Make sure to divide sizeof timebuf by sizeof (ACE_TCHAR) to + avoid buffer overflow. This is another instance of the same + problem fixed in: + + Mon Jun 2 15:26:57 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + +Wed Jun 4 16:05:54 UTC 2008 Steve Huston <shuston@riverace.com> + + * tests/Time_Value_Test.cpp: Added a test case for Bugzilla #3336 + as reported by Aaron Scamehorn. + +Wed Jun 4 14:36:55 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Point_Registry.cpp: + * ace/Monitor_Base.cpp: + + Disabled warning messages reporting an unsuccessful unbind + of a monitor from the monitor point registry. In some + cases, it appears that the default process reactor singleton + is destroyed before the monitor point registry. The reactor + has an associated ACE_Message_Queue, which in turn has an + associated monitor. Somehow in the destruction of the + singleton, the normal chain of destructor calls, which + would remove the monitor from the registry, is bypassed, + leaving the removal to happen when the registry's + destructor is called and the entry in question is no longer + valid. In any case, this happens only at process shutdown, + and there is no memory leak. Ways to make this happen in + a more friendly fashion are being looked into. + +Tue Jun 3 16:14:39 UTC 2008 Ken Sedgwick <ken+5a4@bonsai.com> + + * rpmbuild/ace-tao.spec: + * rpmbuild/ace-tao-unusedarg.patch: + * rpmbuild/ace-tao-strrecvfd.patch: + + Added ace-tao-strrecvfd.patch (related to bug #3291). + Changed make loop construct to abort when subcomponent fails. + Removed PSS from TAO build list. + Added ace-tao-unusedarg.patch (related to bug #3270). + Made qt3 BuildRequires conditional on Fedora version. + +Mon Jun 2 15:26:57 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/Log_Record.cpp (format_msg): Make sure to divide sizeof ctp + by sizeof (ACE_TCHAR) to avoid buffer overflow. Thanks to June + Fang <june dot fang at gmail dot com> for reporting this. + +Sun Jun 1 02:01:38 UTC 2008 Ken Sedgwick <ken+5a4@bonsai.com> + + * rpmbuild/ace-tao.spec: + * rpmbuild/ace-tao-etc.tar.gz: + * rpmbuild/ace-tao-orbsvcs-daemon.patch: + + Added ace-tao-orbsvcs-daemon.patch to workaround + daemonization problems in rpm installed services. + Fixed tao-cosconcurrency command line arguments. + +Fri May 30 13:57:06 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> + + * ace/config-vxworks6.2.h: + * ace/config-vxworks6.4.h: + * ace/config-vxworks5.x.h: + * ace/config-vxworks6.3.h: + VxWorks doesn't provide strtoull(). + +Fri May 30 13:48:48 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> + + * ace/config-openvms.h: + OpenVMS doesn't provide wcstoull() function. + +Fri May 30 13:37:13 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> + + * ace/OS_NS_stdlib.inl: + Fixed MinGW builds. + + * ace/config-cygwin32.h: + Disabled wcstoull() on cygwin since it doesn't provide + such function. + +Fri May 30 13:17:55 UTC 2008 Simon Massey <sma@prismtech.com> + + * test/INET_Addr_Test_IPV6.cpp: + Resolve Conflict #define INTERFACE with MFC under VC8. + +Fri May 30 10:07:55 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> + + * ace/config-win32-borland.h: + Borland compilers doesn't provide strtoull() and wcstoull(). + + * ace/config-sunos5.5.h: + * ace/config-sunos5.10.h: + wcstoull() didn't exist on Solaris until version 10. + + * ace/config-hpux-11.00.h: + HP-UX doesn't provide strtoull() and wcstoull(). + +Thu May 29 16:08:01 UTC 2008 Vladimir Zykov <vzykov@prismtech.com> + + * ace/OS_NS_stdlib.cpp: + * ace/OS_NS_stdlib.inl: + * ace/OS_NS_stdlib.h: + + Added strtoull() function to ACE_OS. + + * configure.ac: + + Added a check for presence of strtoull() and wcstoull() + in the build environment. + +Thu May 29 15:15:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/INET_Addr.cpp: + + Remove tabs to avoid fuzz warning. + +Thu May 29 10:15:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Bug_3332_Regression_Test.cpp: + + Remove signed/unsigned comparison warnings. + +Wed May 28 18:13:15 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/INET_Addr.cpp: + * ace/INET_Addr.h: + + Changed ACE_INET_Addr::get_host_addr(char *, int) to be thread + safe by calling ACE_OS::inet_ntop() instead of + ACE_OS::inet_ntoa(). + + Changed ACE_INET_Addr::get_host_addr(void) to call + INET_Addr::get_host_addr(char *, size) with a static buffer. + + Removed the special cases for VxWorks in both of the above + methods which called inet_ntoa_b() which, according to comments, + was for efficency and thread safety. These are are now as + efficent and thread safe (or not, in the case of ACE_INET_Addr:: + get_host_addr(void)) as any other target platform, but no longer + need a string buffer member in every ACE_INET_Addr instance. + +Wed May 28 13:46:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/Malloc.h: + Eliminate a warning from some fanicaly builds. + +Wed May 28 08:10:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * tests/Bug_3332_Regression_Test.cpp: + * tests/Bug_3332_Regression_Test.txt: + * tests/run_test.lst: + * tests/tests.mpc: + + Regression test for the change of: + Fri May 23 12:45:00 UTC 2008 * ace/RB_Tree.cpp. + +Tue May 27 23:10:33 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/Makefile.am: + + Adding missing template and header files. + +Tue May 27 12:11:07 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * ace/ace.mpc: + + Added missing template and header files. + +Mon May 26 13:54:38 UTC 2008 Olli Savia <ops@iki.fi> + + * ace/config-lynxos.h: + Defined ACE_LACKS_POLL_H. + +Mon May 26 07:28:23 UTC 2008 Ken Sedgwick <ken+5a4@bonsai.com> + + * rpmbuild/ace-tao.spec: + Clarified the tao-cosevent and tao-rtevent "Summary" tags. + +Mon May 26 00:31:51 UTC 2008 Ken Sedgwick <ken+5a4@bonsai.com> + + * rpmbuild/ace-tao.spec: + Fixed rpm build error: bad tar extraction command. + +Sun May 25 17:18:20 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * ace/ace.mwc: + + s/MonitorControl/Monitor_Control/ + +Sun May 25 04:11:37 UTC 2008 Ken Sedgwick <ken+5a4@bonsai.com> + + * rpmbuild/ace-tao.spec: + * rpmbuild/ace-tao-rnq.patch: + * rpmbuild/ace-tao-config-tmplvis.patch: + * rpmbuild/ace-tao-hasicmp.patch: + * rpmbuild/ace-tao-obstack.patch: + * rpmbuild/ace-tao-config-ipv6.patch: + Removed ace-tao-obstack.patch, no longer needed. + Converted ace-tao-config-ipv6.patch into conditional rpm script. + Converted ace-tao-rnq.patch into conditional rpm script. + Converted ace-tao-config-tmplvis.patch and ace-tao-hasicmp.patch + into rpm script. + +Sat May 24 19:50:46 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * bin/MakeProjectCreator/modules/AutomakeWorkspaceHelper.pm: + + Adjust libpaths now that ACE_MonitorControl library has been + renamed to just ACE_Monitor_Control. + +Fri May 23 14:20:48 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * m4/platform.m4: + + Added *mingw64* case in ACE_SET_PLATFORM_MACROS and + ACE_CHECK_FORMAT_SPECIFIERS feature test macros. + +Fri May 23 12:45:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * ace/RB_Tree.cpp: + + Enhancement to stop external pointers to retained items being + invalidated upon key deletion. + +Fri May 23 12:14:54 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Control/Auto_Update_Starter.h: + + Updated filename (which was recently changed) in a comment. + Thanks to Simon Massey <simon.massey@prismtech.com> for + reporting the fuzz warning. + +Fri May 23 08:14:38 UTC 2008 Olli Savia <ops@iki.fi> + + * tests/run_test.lst: + + Run Bug_2980_Regression_Test on LynxOS. + +Fri May 23 00:18:24 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/Makefile.am: + + Rename MonitorControl subdirectory to Monitor_Control, to + adapt to this change: + + Wed May 21 19:01:10 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + +Thu May 22 23:04:38 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + + Rename MonitorControl subdirectory to Monitor_Control, to + adapt to this change: + + Wed May 21 19:01:10 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + +Thu May 22 19:29:35 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Base.h (clear): + + Made the method virtual, since it's overridden in the + TAO Notification Service monitors and we are now using + the ACE monitor registry which stores everyhing as the + ACE base class monitor. + +Thu May 22 14:56:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + Added support for ACE_RUN_VX_EXE_SUBDIR which can be used when + the vxworks executables are build in a subdirectory + +Thu May 22 09:47:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * rpmbuild/ace-tao-codeset.patch: + * ace/Codeset_Registry_db.cpp: + Merged patch into the regular registry + + * ace/OS_NS_sys_uio.cpp: + Const change + + * ace/Service_Config.cpp: + Layout change + + * rpmbuild/ace-tao.spec: + Removed codeset patch + +Thu May 22 09:37:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * rpmbuild/* + New directory with files needed to create rpm's for ACE/TAO. + These files will be improved and we will check whether the + rpm patches can be integrated into the real config files. + Thanks to Ken Sedgwick <ksedgwick at bonsai dot com> for + delivering these files. + +Wed May 21 19:01:10 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/MonitorControl/*: + + Changed directory name to Monitor_Control and renamed all + contained files, classes, libs, MPC projects, ifdef guards, + and macros similarly, to better conform to the ACE style. + + * ace/Monitor_Point_Registry.cpp: + * ace/Monitor_Admin.h: + * ace/Monitor_Admin.cpp: + * bin/MakeProjectCreator/config/ace_mc.mpb: + * examples/Monitor/Bytes_Sent/bytes_sent.cpp: + * examples/Monitor/Bytes_Sent/Makefile.am: + * examples/Monitor/Message_Queue_Size/message_queue_size.cpp: + * examples/Monitor/Message_Queue_Size/Makefile.am: + * examples/Monitor/Constraint/constraint.cpp: + * examples/Monitor/Constraint/Makefile.am: + * examples/Monitor/CPU_Load/cpu_load.cpp: + * examples/Monitor/CPU_Load/Makefile.am: + * examples/Monitor/Num_Threads/Makefile.am: + * examples/Monitor/Num_Threads/num_threads.cpp: + * examples/Monitor/Group/Makefile.am: + * examples/Monitor/Group/group.cpp: + * examples/Monitor/Memory_Usage/Makefile.am: + * examples/Monitor/Memory_Usage/memory_usage.cpp: + + Changes corresponding to the renaming above. + +Wed May 21 14:06:13 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Monitor_Base.h: + * ace/Monitor_Base.cpp: + + Made the update() method non pure virtual. + +Tue May 20 19:33:29 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/Message_Queue_T.cpp: + + Added the stringified process id to the construction of + the message queue size monitor's name, since some tests + were showing that message queues were being created with + the same hex address in different processes. + +Tue May 20 17:55:39 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * ace/Svc_Handler.h: + + Added an enum to be used as flags parameter for close(). + + * ace/Acceptor.cpp: + * ace/Connector.cpp: + * ace/Strategies_T.cpp: + + Use the new enum during the call to close() on the service handler + to indicate the circumstances behind the closure. + + This is part of a set of commits for Bug 2935. + +Tue May 20 09:45:21 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Ping_Socket.{h,cpp}: + Use bool + +Mon May 19 19:26:21 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Log_Msg_Test.cpp: + On VxWorks/LynxOS we didn't test the buffer overflow, but we + shouldn't test this when ACE_LACKS_VSNPRINTF is defined + because it will then fail + +Mon May 19 19:13:21 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Hash_Map_Manager_T.h: + Doxygen change + + * ace/Hash_Map_Manager_T.cpp (shared_find) + Set errno to ENOENT when the size is zero + +Mon May 19 19:08:21 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Added 2085 and 2243 + +Mon May 19 14:19:21 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * docs/bczar/bczar.html: + Updated mailing lists + + * docs/Download.html: + * etc/index.html: + Updated for x.6.5 + + * ace/config-openvms.h: + Removed sock max of 64kb + +Mon May 19 02:53:21 CDT 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ACE version 5.6.5 released. + +Fri May 16 10:13:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + Reverted change below, causes problems in the builds + * include/makeinclude/platform_linux.GNU: + Only set DLD and LD when they are not set yet + +Fri May 16 07:50:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Based_Pointer_Test.cpp: + Also define a public destructor to silence the gnu warning that + we only have private + +Fri May 16 07:49:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * examples/Monitor/Num_Threads/num_threads.cpp: + Fixed compile errors when monitoring framework is disabled + +Fri May 16 07:41:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * examples/APG/Streams/Answerer.cpp: + * examples/APG/Streams/EndTask.h: + Replaced EndTask with TheEndTask to resolve a name conflict + when using MinGW + +Fri May 16 07:18:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_linux.GNU: + * include/makeinclude/platform_linux_common.GNU: + Support lib64 paths to detect certain features. Thanks to Ken + Sedgwick <ksedgwick at bonsai dot com> for reporting this + + * include/makeinclude/platform_linux.GNU: + Only set DLD and LD when they are not set yet + +Thu May 15 14:00:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Based_Pointer_T.{h,inl}: + * tests/Based_Pointer_Test.cpp: + Fixed bugzilla 3285, make it possible to use + ACE_Based_Pointer<void>. Thanks to Thomas Brownridge + <thomas dot brownridge at lmco dot com> for reporting this. + +Thu May 15 12:36:42 UTC 2008 Phil Mesnier <mesnier_p@ociweb.com> + + * ace/MMAP_Memory_Pool.cpp: + When using a default base address of 0x0 and otherwise wanting + a fixed address, a special flag was used to imply that after the + first address is selected the system in a call to ::mmap() + subsequent calls to ::mmap() reuse the selected base address + as a fixed address. This may cause problems with reloading + persistent data if the stored data contains pointers and the + system selected base address changes from run to run. + + * ace/config-linux-common.h: + The default base address for the x86-64 platform cannot be 0x0. + Doing so causes the system to choose an address which for some + unknown reason causes SEGV errors in Malloc_T. The linux-specific + mmap flag, MAP_32BIT, resolves those segv errors, but on x86-64 + using 0x0 as the default base address on subsequent runs cause + a different assigned base address to be selected. If the data + in the mapped memory contains pointers to mapped memory, those + are then wrong and cause SEGV crashs. By experimentation, it + seems the default base address for powerpc is appropriate for + x86-64. + +Thu May 15 10:19:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/rules.lib.GNU: + Fixed OpenVMS specific part + +Thu May 15 10:17:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Unbounded_Set_Ex.cpp: + Fixed bug in the insert method + + * ace/Unbounded_Set_Test.cpp: + Extended this test to reproduce the bug above and replaced all + ACE_ASSERTS with if checks + +Thu May 15 10:05:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/msvc_mpc_auto_compile.pl: + Split orbsvcs out from ciao build. + +Thu May 15 07:09:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ace.mpc: + Added config-win32-msvc9.h, thanks to <tim at burmair dot com> for + reporting this + +Wed May 14 20:41:17 2008 Steve Huston <shuston@riverace.com> + + * ace/Thread_Manager.h: Expanded the documentation, particularly for + spawn[_n]. + +Wed May 14 18:30:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-irix6.x-common.h: + * ace/config-linux-common.h: + * ace/config-sunos5.4-g++.h: + * ace/config-sunos5.4-sunc++-4.x.h: + * ace/config-sunos5.5.h: + * ace/config-tandem.h: + * ace/config-unixware-7.1.0.h: + * ace/config-unixware-7.1.0.udk.h: + * ace/MonitorControl/MemoryUsageMonitor.cpp: + * ace/MonitorControl/MemoryUsageMonitor.h: + * ace/OS.inl: + * ace/os_include/os_unistd.h: + * ace/os_include/sys/os_resource.h: + * ace/POSIX_Proactor.cpp: + * ace/configure.ac: + Seems we already had a ACE_HAS_SYSINFO but this is a different + method but with the same name as we use in the monitoring code. + Added ACE_HAS_SYS_SYSTEMINFO_H as new define, renamed the + linux define to ACE_HAS_LINUX_SYSINFO + +Wed May 14 18:14:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ACE.cpp: + Layout changes + + * ace/config-vxworks5.x.h: + * ace/OS_NS_unistd.inl: + * ace/Sock_Connect.cpp: + Extended for VxWorks Medusa + + * ace/Logging_Strategy.cpp: + Initialise pointer with 0 + +Wed May 14 14:26:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_vxworks5.5.x.GNU: + Detect medusa pid/pcd/pne + +Wed May 14 12:34:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/os_include/os_pdhmsg.h: + New file + + * ace/config-win32-common.h: + Added ACE_HAS_PDHMSG_H + + * ace/config-win32-mingw.h: + * ace/config-WinCE.h: + Added ACE_LACKS_PDHMSG_H + + * ace/Makefile.am: + Added new file + + * ace/MonitorControl/WindowsMultiInstanceMonitor.cpp: + Use new os_pdhmsg.h + +Wed May 14 12:24:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/os_include/os_kstat.h: + * ace/os_include/sys/os_sysinfo.h: + New header files + + * ace/os_include/os_glob.h: + * ace/os_include/sys/os_statvfs.h: + Removed not needed includes + + * configure.ac: + Added check for sysinfo.h + + * ace/config-linux-common.h: + Added ACE_HAS_SYSINFO and ACE_HAS_SYSINFO_H + + * ace/Makefile.am: + Added new files + + * ace/MonitorControl/CPULoadMonitor.h: + * ace/MonitorControl/MemoryUsageMonitor.cpp: + * ace/MonitorControl/MemoryUsageMonitor.h: + Use the new defines and header files + +Wed May 14 10:41:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/*: + * examples/Monitor/*: + Renamed MonitorControl namespace to Monitor_Control to comply + to ACE coding guidelines + +Wed May 14 09:48:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/run_test.lst: + Enabled some more tests on vxworks + +Tue May 13 19:20:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/diff-builds.pl: + Updated for move of test stats + +Mon May 12 12:19:15 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * examples/Monitor/MC_Test_Utilities.h: + * examples/Monitor/Bytes_Sent/bytes_sent.cpp: + * examples/Monitor/Message_Queue_Size/message_queue_size.cpp: + * examples/Monitor/Constraint/constraint.cpp: + * examples/Monitor/CPU_Load/cpu_load.cpp: + * examples/Monitor/MC_Test_Utilities.cpp: + * examples/Monitor/Group/group.cpp: + * examples/Monitor/Memory_Usage/memory_usage.cpp: + + Added appropriate preprocessor guards to ensure a + successful build when ACE_HAS_MONITOR_FRAMEWORK is + defined as 0. + + * examples/Monitor/Message_Queue_Size/Message_Queue_Size.mpc: + + Removed outdated macro additions from project. + +Fri May 9 18:58:52 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * ace/Service_Config.h: + * ace/Service_Config.inl: + * ace/Service_Config.cpp: + * ace/Service_Gestalt.cpp: + + Calling ACE_Service_Config::open() does not correctly initialize + the SC global state (process name, in particular but others + too). Fixing bug#3319. + +Fri May 9 17:58:21 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * bin/MakeProjectCreator/modules/AutomakeWorkspaceHelper.pm: + + Revert changes of: + Thu May 8 22:13:24 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + Now that ETCL Parser library has been renamed back to + ACE_ETCL_Parser. + +Fri May 9 17:55:39 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * examples/Monitor/Bytes_Sent/Makefile.am: + * examples/Monitor/Message_Queue_Size/Makefile.am: + * examples/Monitor/Constraint/Makefile.am: + * examples/Monitor/CPU_Load/Makefile.am: + * examples/Monitor/Num_Threads/Makefile.am: + * examples/Monitor/Group/Makefile.am: + * examples/Monitor/Memory_Usage/Makefile.am: + * ace/ETCL/Makefile.am: + * ace/MonitorControl/Makefile.am: + + Regenerated. + +Fri May 9 14:17:11 UTC 2008 William R. Otte <wotte@william-r-ottes-macbook-pro.local> + + * include/makeinclude/platform_macosx_icc.GNU: + + Support for ICC on Intel Macs. + +Fri May 9 12:04:15 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-all.h: + Added ACE_HAS_MONITOR_POINTS which currently is set to 0. We will + enable this in a few builds to test them in detail. This way the + user can decide to enable the monitor framework but not get the + ACE builtin monitor points + + * ace/CDR_Stream.cpp: + * ace/CDR_Stream.h: + * ace/CDR_Stream.inl: + * ace/Message_Queue_T.cpp: + * ace/Message_Queue_T.h: + Added monitor points + + * ace/Codeset_IBM1047.cpp: + Removed code to silence the hp compiler, this is not needed in other + files + +Fri May 9 11:44:59 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * bin/MakeProjectCreator/config/ace_etcl_parser.mpb: + + Changed the filename etcl_parser.mpb to the one + above, for consistency in the names of ACE-related + files. Also changed the corresponding library name + to ACE_ETCL_Parser. + + * ace/ETCL/ACE_ETCL_Parser.pc.in: + + Changed the name of ETCL_Parser.pc.in likewise. + Also changed the contents of this file accordingly. + + * ace/ETCL/ETCL.mpc: + * ace/MonitorControl/MonitorControl.mpc: + * bin/MakeProjectCreator/config/ace_mc.mpb: + + Changes corresponding to the name changes above. + +Thu May 8 23:03:15 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * bin/MakeProjectCreator/config/ace_zlib.mpb: + + ACE-specific zlib base project that overrides library settings + in MPC's own zlib base project for the automake build. + +Thu May 8 22:13:24 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * bin/MakeProjectCreator/modules/AutomakeWorkspaceHelper.pm: + + Adjust libpaths now that ACE_ETCL_Parser library has been + renamed to just ETCL_Parser. + +Thu May 8 22:07:40 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/ETCL/Makefile.am: + + Regenerated. + + * ace/ETCL/ACE_ETCL.pc.in: + * ace/ETCL/ETCL_Parser.pc.in: + + New pkg-config template files. + + * ace/ETCL/ETCL.mpc: + + Add Pkgconfig_Files sections for ACE_ETCL and ETCL_Parser + projects. + +Thu May 8 21:06:29 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/ETCL/ETCL_Constraint_Visitor.h: + * ace/ETCL/ETCL_Constraint_Visitor.cpp: + + Removed a no-op method mean to be overridden + in derived visitors, but then abandoned. + +Fri May 2 17:45:13 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * docs/ACE-guidelines.html: Updated the style guide to discuss the + use of '_' vs intercaps. + +Thu May 8 10:51:29 UTC 2008 Steve Huston <shuston@riverace.com> + + * include/makeinclude/platform_sunos5_g++.GNU: Ensure -pipe is not + inserted into CCFLAGS twice. Similar to earlier change from + Wed Jan 23 17:23:31 UTC 2008 Steve Huston <shuston@riverace.com> + Fixes Bugzilla #3232. + +Thu May 8 08:06:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ETCL/ETCL_l.cpp: + * ace/ETCL/ETCL_y.cpp: + Fixed casing of include + +Wed May 7 19:28:35 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/Unbounded_Set.{h inl}: Replaced typedef BASE with base_type. + Avoids a BASE macro on AIX. + +Wed May 7 19:02:51 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/ETCL/ETCL_include: + + Removed this directory. + + * ace/ETCL/etcl_parser_export.h: + + Relocated here from ace/ETCL/ETCL_include. + + * bin/MakeProjectCreator/config/etcl_parser.mpb: + + Renamed this file from ace_etcl_parser.mpb. + + * ace/ETCL/ETCL_l.cpp: + * ace/ETCL/ETCL.yy + * ace/ETCL/ETCL_Interpreter.cpp: + * ace/ETCL/ETCL.ll: + * ace/ETCL/ETCL_y.cpp: + * ace/ETCL/ETCL_Interpreter.h: + * ace/ETCL/ETCL.mpc: + * ace/MonitorControl/MonitorControl.mpc: + * bin/MakeProjectCreator/config/ace_mc.mpb: + + All changes in this checkin are to remove + unnecessary things as a result of making the + ETCL parser the only one used. The corresponding + parser in TAO is eliminated. + +Wed May 7 17:11:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_linux_icc.GNU: + Added ICC 11.0 + +Wed May 7 14:28:54 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * bin/ChangeLogEditor/FileLocatorFactory.pm: + + Changed to detect Subversion before CVS. + +Wed May 7 14:12:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Bug_3319_Regression_Test.cpp: + * tests/run_test.lst: + * tests/tests.mpc: + Added regression for bugzilla 3319 + +Wed May 7 10:52:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Hash_Map_Manager_T.cpp: + Fixed GCC warning about maybe unitialised use and also + use prefix decrement and no need for some intermediate variables + +Wed May 7 08:42:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-vxworks5.x.h: + Added ACE_HAS_4_4BSD_SENDMSG_RECVMSG + +Wed May 7 07:03:29 UTC 2008 William R. Otte <wotte@dre.vanderbilt.edu> + + * ace/Unbounded_Set.h + + Fuzz fix. + +Wed May 7 06:33:30 UTC 2008 William R. Otte <wotte@dre.vanderbilt.edu> + + * ace/Unbounded_Set.inl + + Fix unused argument warning. + +Tue May 6 17:03:17 UTC 2008 William R. Otte <wotte@dre.vanderbilt.edu> + + * ace/Hash_Map_Manager_T.cpp: + Fixed segfault if shared_find is called on a map of size zero. + + * ace/Log_Msg.h: + + Comments for trace_active were swapped. + + * ace/Node.h: + * ace/Node.cpp: + * ace/Unbounded_Set.h: + * ace/Unbounded_Set.inl: + * ace/Unbounded_Set.cpp: + * ace/Unbounded_Set_Ex.h: + * ace/Unbounded_Set_Ex.inl: + * ace/Unbounded_Set_Ex.cpp: + + Extended the Unbounded_Set to include a comparator template parameter, + which must implement operator (), which returns true if the items are + equivalent. This class has been renamed Unbounded_Set_Ex. + + Unbounded_Set is now implemented in terms of Unbounded_Set_Ex with a + comparator that uses operator== to compare the items. + + * ace/Service_Gestalt.h: + * tests/Unbounded_Set_Test.cpp: + + Slight updates to conform with new implementation. + + * NEWS + + Added description for above. + +Tue May 6 12:37:43 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/ETCL/ETCL_Constraint.h: + * ace/ETCL/ETCL_Constraint_Visitor.cpp: + * ace/ETCL/ETCL_Constraint_Visitor.h: + * ace/ETCL/ETCL_Constraint.inl: + * ace/ETCL/ETCL_Constraint.cpp: + + Moved code from the TAO ETCL classes to base classes + here. + +Tue May 6 08:27:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + Added support for ACE_RUN_VX_TGT_TELNET_HOST and + ACE_RUN_VX_TGT_TELNET_PORT so that an explicit telnet server + can be configured. If not specified we use ACE_RUN_VX_TGTHOST + which also specifies the ip address that is used as endpoint + for the corba servers + +Mon May 5 17:09:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/build_dll.bor: + * include/makeinclude/build_exe.bor: + * include/makeinclude/build_lib.bor: + Handle files with cxx extension just as we could handle cpp files + +Mon May 5 07:53:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/os_include/os_pdh.h: + New os_include file for pdh.h + + * ace/configure.ac: + Added check for pdh.h + + * ace/Makefile.am: + Added new file + + * ace/config-win32-common.h: + * ace/config-win32-mingw.h: + * ace/config-WinCE.h: + Windows has pdh.h, but not MinGW and not WinCE + + * ace/MonitorControl/BytesReceivedMonitor.cpp: + * ace/MonitorControl/BytesReceivedMonitor.h: + * ace/MonitorControl/BytesSentMonitor.cpp: + * ace/MonitorControl/BytesSentMonitor.h: + * ace/MonitorControl/CPULoadMonitor.cpp: + * ace/MonitorControl/CPULoadMonitor.h: + * ace/MonitorControl/MemoryUsageMonitor.cpp: + * ace/MonitorControl/MemoryUsageMonitor.h: + * ace/MonitorControl/NumThreadsMonitor.cpp: + * ace/MonitorControl/NumThreadsMonitor.h: + * ace/MonitorControl/PacketsReceivedMonitor.cpp: + * ace/MonitorControl/PacketsReceivedMonitor.h: + * ace/MonitorControl/PacketsSentMonitor.cpp: + * ace/MonitorControl/PacketsSentMonitor.h: + * ace/MonitorControl/WindowsMonitor.cpp: + * ace/MonitorControl/WindowsMonitor.h: + * ace/MonitorControl/WindowsMultiInstanceMonitor.cpp: + * ace/MonitorControl/WindowsMultiInstanceMonitor.h: + Use ACE_HAS_WIN32_PDH instead of ACE_WIN32 because with WinCE and + MinGW we don't have pdh on windows + +Mon May 5 07:37:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * examples/Monitor/CPU_Load/cpu_load.cpp: + * examples/Monitor/Group/group.cpp: + Fixed C90 warnings + +Mon May 5 07:30:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * examples/Monitor/MC_Test_Utilities.mpc: + Don't build with ace_for_tao enabled + +Sat May 3 17:00:07 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * bin/MakeProjectCreator/modules/AutomakeWorkspaceHelper.pm: + + Add relative libdirs for new ACE_ETCL, ACE_ETCL_Parser, and + ACE_MonitorControl libraries. + +Sat May 3 13:47:21 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * examples/Makefile.am: + + Regenerated. + +Fri May 2 23:58:38 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + + Build new example directories. + + * examples/Monitor/Bytes_Sent/Makefile.am: + * examples/Monitor/Message_Queue_Size/Makefile.am: + * examples/Monitor/Constraint/Makefile.am: + * examples/Monitor/CPU_Load/Makefile.am: + * examples/Monitor/Num_Threads/Makefile.am: + * examples/Monitor/Group/Makefile.am: + * examples/Monitor/Memory_Usage/Makefile.am: + * examples/Monitor/Makefile.am: + * examples/Semaphores/Makefile.am: + + New Makefile.am's. + +Fri May 2 23:29:06 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/ETCL/Makefile.am: + + Regenerated. + + * ace/ETCL/ETCL.mpc: + + Add automake specific rule for includes. + +Fri May 2 22:53:46 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + + Build ace/ETCL and ace/MonitorControl. + +Fri May 2 21:54:40 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/ETCL/Makefile.am: + * ace/MonitorControl/Makefile.am: + + New Makefile.am's. + + * ace/Makefile.am: + + Regenerated. + +Fri May 2 18:36:41 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/ETCL/ETCL_Interpreter.h: + + Fix for build problems with versioned namespaces turned on. + +Fri May 2 17:50:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-vxworks6.2.h: + * ace/config-vxworks6.3.h: + * ace/config-vxworks6.4.h: + Only define _C99 when it is not defined yet + +Fri May 2 17:20:37 UTC 2008 Steve Huston <shuston@riverace.com> + + * tests/Message_Queue_Test.cpp: Removed the delay sleep between loop + iterations - it causes the test to time out too often. Increased + the message count back to multiples of 100,000. + +Fri May 2 15:34:55 UTC 2008 Steve Huston <shuston@riverace.com> + + * tests/RW_Process_Mutex_Test.cpp: Fixed compile warning about + redundant variable. + +Fri May 2 11:07:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/MMAP_Memory_Pool.{h,cpp}: + Doxygen improvements and moved the documentation about the + handle_signal method from the cpp to the header file so that + it appears in the doxygen documentation + +Fri May 2 09:36:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Added Bug_3315_Regression + +Fri May 2 08:25:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/msvc_static_order.lst: + Added new libs + +Fri May 2 08:15:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ace_for_tao.mpc: + Added new monitor files + +Fri May 2 08:04:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Monitor_Admin.cpp + * ace/Monitor_Admin.h + * ace/MonitorControl/AutoUpdateStarter.cpp + * ace/MonitorControl/AutoUpdateStarter.h + * ace/MonitorControl/MonitorControl_utils.h + Updated for naming conventions + +Fri May 2 07:47:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * examples/Monitor/Bytes_Sent/bytes_sent.cpp + * examples/Monitor/Constraint/constraint.cpp + * examples/Monitor/CPU_Load/cpu_load.cpp + * examples/Monitor/Group/group.cpp + * examples/Monitor/Memory_Usage/memory_usage.cpp + * examples/Monitor/Message_Queue_Size/message_queue_size.cpp + * examples/Monitor/Num_Threads/num_threads.cpp + Updated include + + * examples/Monitor/Bytes_Sent/Bytes_Sent.mpc + * examples/Monitor/Constraint/Constraint.mpc + * examples/Monitor/Num_Threads/Num_Threads.mpc + * examples/Monitor/Group/Group.mpc + * examples/Monitor/CPU_Load/CPU_Load.mpc + * examples/Monitor/Message_Queue_Size/Message_Queue_Size.mpc + Don't build with ace_for_tao + +Thu May 1 22:35:17 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/MonitorControl/MonitorControl.mpc: + * bin/MakeProjectCreator/config/ace_mc.mpb: + Avoid wince - it lacks the needed PDH capability. + +Thu May 1 18:27:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/MonitorControl/MonitorControl.mpc: + * bin/MakeProjectCreator/config/ace_mc.mpb: + Use ACE_MonitorControl as shared library name + +Thu May 1 17:31:01 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * ace/Service_Config.cpp: Removed an assert guarding the case when + the current thread has no associated configuration context. Added + code that would initialize the thread's configuration context with + the global, instead. This addresses bug# 3315. + +Thu May 1 17:11:48 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/ace.mwc: + + Added MonitorControl directory to the workspace. + +Thu May 1 17:05:37 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ace/MonitorControl/PacketsSentMonitor.h: + * ace/MonitorControl/WindowsMultiInstanceMonitor.cpp: + * ace/MonitorControl/WindowsMonitor.cpp: + * ace/MonitorControl/PacketsReceivedMonitor.cpp: + * ace/MonitorControl/MonitorGroup.h: + * ace/MonitorControl/MonitorQuery.h: + * ace/MonitorControl/NumThreadsMonitor.cpp: + * ace/MonitorControl/PacketsSentMonitor.cpp: + * ace/MonitorControl/MonitorGroup.cpp: + * ace/MonitorControl/WindowsMultiInstanceMonitor.h: + * ace/MonitorControl/WindowsMonitor.h: + * ace/MonitorControl/MonitorControl_utils.h: + * ace/MonitorControl/MonitorQuery.cpp: + * ace/MonitorControl/PacketsReceivedMonitor.h: + * ace/MonitorControl/NumThreadsMonitor.h: + + Changed header includes to be consistently relative + to $ACE_ROOT. + +Thu May 1 16:11:12 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * MonitorControl/*: + + Moved this directory to $ACE_ROOT/ace. + +Thu May 1 15:56:58 UTC 2008 Steve Huston <shuston@riverace.com> + + * tests/run_test.lst: Change Bug_2980_Regression_Test's !MSVC to + !Win32. The test won't run on Windows per its comments, but no + XML configs set MSVC - they set Win32. + +Thu May 1 15:27:25 UTC 2008 Steve Huston <shuston@riverace.com> + + * tests/Message_Queue_Test.cpp: In the counting test, run multiples + of 50,000 instead of 100,000, blocks. The test is timing out on a + number of platforms. + + * tests/RW_Process_Mutex_Test.cpp: Fix signed/unsigned warnings and + wchar build error. Changed the default lock name to something other + than the program's name. Using the program name produces "text + file busy" when attempting a file lock on it... doh... + +Thu May 1 14:47:33 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * MonitorControl/examples/*: + + Removed this directory and moved its contents to + $ACE_ROOT/examples/Monitor. + + * bin/MakeProjectCreator/config/acelib.mpb: + + Cosmetic changes. + +Thu May 1 14:37:03 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * bin/MakeProjectCreator/modules/VXTestProjectCreator.pm: + + Override the warn_useless_project() method so that we are no + longer warned about "no useful targets" for this project type. + +Wed Apr 30 22:01:10 UTC 2008 Steve Huston <shuston@riverace.com> + + * tests/RW_Process_Mutex_Test.cpp: New test for proper functioning + of ACE_RW_Process_Mutex. + + * tests/tests.mpc: + * tests/run_test.lst: Add RW_Process_Mutex_Test. + +Wed Apr 30 21:14:45 UTC 2008 James H. Hill <hillj@isis.vanderbilt.edu> + + * ace/Hash_Map_Manager_T.h: + + Two of the backwards compatible iterators for + ACE_Hash_Map_Manager incorrectly defined the iterator_category + trait based on the container_type, which does not have an + iterator_category. Now the trait is defined in terms of its + base class. This resolved Bugzilla Bug #3314. + +Wed Apr 30 16:49:27 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * MonitorControl/PacketsSentMonitor.h: + * MonitorControl/BytesReceivedMonitor.h: + * MonitorControl/PacketsReceivedMonitor.h: + * MonitorControl/BytesSentMonitor.h: + + Added include of export header file, since it's not + pulled in indirectly on Solaris builds. + + * MonitorControl/WindowsMultiInstanceMonitor.cpp: + + Fixed signed/unsigned comparison warnings on wchar builds. + +Wed Apr 30 16:24:41 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * MonitorControl/CPULoadMonitor.cpp: + * MonitorControl/WindowsMonitor.cpp: + * MonitorControl/WindowsMultiInstanceMonitor.cpp: + * MonitorControl/MemoryUsageMonitor.cpp: + * MonitorControl/NumThreadsMonitor.cpp: + * MonitorControl/LinuxNetworkInterfaceMonitor.cpp: + + Fixed wchar build errors. + +Wed Apr 30 13:49:52 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/UUID.cpp (get_timestamp_and_clocksequence): Case clock sequence + value using ACE_UINT16 instead of u_char to prevent duplicates + when many UUIDs are generated quickly. Thanks to Wim van den Boogaard + for this fix. Resolves Bugzilla #3313. + +Tue Apr 29 19:52:48 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/Proactor.cpp: Simplify the timer_handler_ task spawn and + shutdown. Also, if close() sees an error from the implementation's + close, don't stop closing. Things are most likely already ripped + apart too far to recover from, and it's likely to cause a hang to + just try to stop closing now. + + * ace/POSIX_Asynch_IO.cpp: Correctly handle the ACE_Message_Block + pointers passed to operations and later updating when complete. + Thanks to Fernando C. Jeronymo <fernando dot fcavalcanti at + gmail.com> for diagnosing this problem. + + * THANKS: Added Fernando C. Jeronymo to the Hall of Fame. + + * tests/Proactor_UDP_Test.cpp: Fix to close down correctly in + half-duplex mode. + +Tue Apr 29 19:12:53 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * bin/MakeProjectCreator/config/ace_etcl_parser.mpb: + + Changed the path of the 'includes' line to match + the new location of ETCL. + + * MonitorControl/Constraint_Interpreter.cpp: + * MonitorControl/Constraint_Visitor.h: + * MonitorControl/Constraint_Visitor.cpp: + * MonitorControl/Constraint_Interpreter.h: + + Updated #includes to match the new location of ETCL. + + * MonitorControl/AutoUpdateStarter.h: + + Moved location of enabled monitors check, it was + previous to any place it could see the #define in + an included file. + + * MonitorControl/examples/Constraint/constraint.cpp: + * MonitorControl/examples/CPU_Load/cpu_load.cpp: + * MonitorControl/examples/Group/group.cpp: + + Some compile warnings fixed. + +Tue Apr 29 18:37:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * MonitorControl/AutoUpdateStarter.h: + * MonitorControl/Constraint_Interpreter.h: + * MonitorControl/Constraint_Visitor.h: + * MonitorControl/LinuxNetworkInterfaceMonitor.h: + * MonitorControl/MonitorControl.h: + * MonitorControl/MonitorQuery.h: + * MonitorControl/WindowsMonitor.h: + * MonitorControl/WindowsMultiInstanceMonitor.h: + Make sure we have at least one include before pragma once + +Tue Apr 29 18:27:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * docs/bczar/bczar.html: + * etc/index.html: + Updated Beta to Micro + +Tue Apr 29 18:02:22 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * ETCL/*: + + Moved this directory and all its contents to $ACE_ROOT/ace. + Also changed #includes to be relative to $ACE_ROOT. + + * ace/ace.mwc: + + Added ETCL directory. + + * docs/svn/svn-prefs.reg: + + Added *.diff to list. + +Tue Apr 29 17:45:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * MonitorControl/examples/Bytes_Sent/bytes_sent.cpp: + * MonitorControl/examples/Constraint/constraint.cpp: + * MonitorControl/examples/CPU_Load/cpu_load.cpp: + * MonitorControl/examples/Group/group.cpp: + * MonitorControl/examples/Memory_Usage/memory_usage.cpp: + * MonitorControl/examples/Message_Queue_Size/message_queue_size.cpp: + * MonitorControl/examples/Num_Threads/num_threads.cpp: + Updated main for unicode + +Tue Apr 29 13:14:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Test_Output.cpp: + Check for ACE_VXWORKS + +Tue Apr 29 13:12:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * MonitorControl/AutoUpdateStarter.cpp: + * MonitorControl/Constraint_Interpreter.cpp: + * MonitorControl/Constraint_Interpreter.h: + * MonitorControl/Constraint_Visitor.cpp: + * MonitorControl/Constraint_Visitor.h: + * MonitorControl/CPULoadMonitor.cpp: + * MonitorControl/LinuxNetworkInterfaceMonitor.cpp: + * MonitorControl/NumThreadsMonitor.cpp: + * MonitorControl/WindowsMonitor.cpp: + * MonitorControl/WindowsMultiInstanceMonitor.cpp: + Updated includes to fix errors and improve compile speed when + this lib is disabled + +Tue Apr 29 08:16:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/MakeProjectCreator/templates/vxtest.mpd: + Zap empty line + + * bin/PerlACE/ProcessVX.pm: + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + Improved handling of vxtest file + +Tue Apr 29 07:23:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/MEM_Connector.cpp: + * ace/Service_Manager.cpp: + * ace/SOCK_Dgram_Mcast.cpp: + Reverted accidental commits from Doug + +Tue Apr 29 06:32:10 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/MakeProjectCreator/modules/VXTestProjectCreator.pm: + Generate exename.vxtest instead of project name + + * bin/MakeProjectCreator/templates/vxtest.mpd: + Don't generate ld < + +Mon Apr 28 22:34:10 UTC 2008 Steve Huston <shuston@riverace.com> + + * tests/Proactor_UDP_Test.cpp: Fix compile errors on non-Windows. + +Mon Apr 28 21:53:23 UTC 2008 Steve Huston <shuston@riverace.com> + + * docs/ACE-development-process.html: Fix a few remaining nits. + + * ace/OS_NS_stdio.inl: Removed all the pre-ACE_HAS_WINNT4 code in the + file locks methods. This was the only place left in ACE that + referred to ACE_HAS_WINNT4; all pre-NT4 support was removed last + year from the rest of ACE. This also corrects behavior of file + locks as well as ACE_RW_Process_Mutex. + + * ace/RW_Process_Mutex.h: Doxygen improvements. + + * ace/SOCK_CODgram.h: Doxygen improvements. + + * ace/SOCK_CODgram.cpp (open): If either of the local or remote + addresses is specified, use its address family rather than the + value of protocol_family. If both are specified, they must match. + + * tests/Message_Queue_Test.cpp: Added a counting test to validate the + queue's message counting. + + * tests/Proactor_UDP_Test.cpp: New test for UDP with ACE_Proactor. + + * tests/tests.mpc: + * tests/run_test.lst: Add Proactor_UDP_Test. + +Mon Apr 28 19:21:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX.pm: + * bin/PerlACE/ProcessVX_Unix.pm: + * bin/PerlACE/ProcessVX_Win32.pm: + Use the vxtest file when testing shared non rtp + +Mon Apr 28 19:06:10 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * MonitorControl/MonitorControl.h: + + Added ACE_HAS_MONITOR_FRAMEWORK guard to this file. + +Mon Apr 28 18:24:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ace_wchar.h: + Added defines needed to build MonitorControl unicode + + * MonitorControl/WindowsMonitor.cpp: + * MonitorControl/WindowsMultiInstanceMonitor.cpp: + Make a correct difference between unicode and non unicode builds + + * ace/Strategies_T.{h,inl}: + Refcount from base is now a long + +Mon Apr 28 18:23:55 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * bin/PerlACE/ProcessVX_Unix.pm: + + Fixed a bug in my previous commit of this file, + $cmdnr was not updated when the unload commands were added. + +Mon Apr 28 17:59:43 UTC 2008 Jeff Parsons <j.parsons@vanderbilt.edu> + + * Constraint_Interpreter.cpp: + * Constraint_Visitor.h: + * MonitorGroup.h: + * MonitorQuery.h: + * AutoUpdateStarter.h: + * Constraint_Visitor.cpp: + * MonitorGroup.cpp: + * Constraint_Interpreter.h: + * MonitorQuery.cpp: + * AutoUpdateStarter.cpp: + * MonitorControl_utils.h: + + Added ACE_HAS_MONITOR_FRAMEWORK guards + similarly to the other files in the library. + +Mon Apr 28 17:54:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * MonitorControl/BytesReceivedMonitor.cpp: + * MonitorControl/BytesSentMonitor.cpp: + * MonitorControl/CPULoadMonitor.cpp: + * MonitorControl/MemoryUsageMonitor.cpp: + * MonitorControl/NumThreadsMonitor.cpp: + * MonitorControl/PacketsReceivedMonitor.cpp: + * MonitorControl/PacketsSentMonitor.cpp: + * MonitorControl/WindowsMonitor.cpp: + * MonitorControl/WindowsMonitor.h: + * MonitorControl/WindowsMultiInstanceMonitor.cpp: + * MonitorControl/WindowsMultiInstanceMonitor.h: + Fixed unicode compile problems on windows + +Mon Apr 28 13:25:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * examples/APG/Streams/streams.mpc: + * examples/C++NPv2/C++NPv2.mpc: + Use base projects + +Mon Apr 28 13:20:40 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/Vector_T.inl (ACE_Vector): Take another shot at fixing the + max_size() problem. + +Mon Apr 28 12:45:18 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * bin/tao_orb_tests.lst: + + Added the new TAO HandleExhaustion test for all but Windows. + +Mon Apr 28 12:21:55 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/Vector_T.inl (ACE_Vector): Zapped the "this->" in "this->max_size()". + Thanks to Karl-Heinz <wind at itq dot de> for reporting this. + +Mon Apr 28 12:13:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_sunos5_common.GNU: + Added kstat support needed for monitoring lib on solaris + +Mon Apr 28 12:05:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * MonitorControl/*: + Merge from MonitorControl branch. + +Mon Apr 28 11:37:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-all.h: + * ace/Global_Macros.h: + Moved set of define to config-all + + * ace/Truncate.h: + * ace/Condition_T.h: + Doxygen fix + +Mon Apr 28 11:36:46 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * ace/Acceptor.h: + * ace/Acceptor.cpp: + + Added a virtual method to facilitate the configurable handling of + accept() errors. + +Mon Apr 28 11:30:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ETCL/*: + New ETCL library for ACE + + * bin/MakeProjectCreator/config/ace_etcl.mpb: + * bin/MakeProjectCreator/config/ace_etcl_parser.mpb: + * bin/MakeProjectCreator/config/ace_mc.mpb: + New base projects + + * bin/MakeProjectCreator/config/acenosubsets.mpb: + Layout changes + +Mon Apr 28 10:31:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Monitor_Admin.cpp: + * ace/Monitor_Admin.h: + * ace/Monitor_Admin_Manager.cpp: + * ace/Monitor_Admin_Manager.h: + * ace/Monitor_Base.cpp: + * ace/Monitor_Base.h: + * ace/Monitor_Base.inl: + * ace/Monitor_Control_Action.cpp: + * ace/Monitor_Control_Action.h: + * ace/Monitor_Control_Types.cpp: + * ace/Monitor_Control_Types.h: + * ace/Monitor_Point_Registry.cpp: + * ace/Monitor_Point_Registry.h: + * ace/ace.mpc: + * ace/Global_Macros.h: + First commit coming from the Monitor branch. This will add a + monitoring framework to ACE with which size of queues, cpu load + and other resources can be monitored. + +Sun Apr 27 05:55:54 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Service_Object.cpp: + Fixed big introduced by some cleanup I did + +Fri Apr 25 21:47:54 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * bin/MakeProjectCreator/templates/vxtest.mpd: + * bin/PerlACE/ProcessVX_Unix.pm: + + Began integration of the foo.vxtest files into the actual testing + process. This needs to get enhanced in ProcessVX_Win32.pm too. + +Fri Apr 25 21:21:56 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * ace/Object_Manager.cpp: + + Removed a comment that no longer applies. + + * bin/PerlACE/Process_Win32.pm: + + Changed the check for failure to spawn a process, in order to avoid + a race condition (the spawned process exits normally before we even + check its status). + + * bin/auto_run_tests.pl: + + With -s, account for different parameter formatting requirements in + the win32 and posix sandbox programs. + +Fri Apr 25 14:25:00 UTC 2008 Simon Massey <sma at pristmech dot com> + + * tests/Unload_libACE.cpp: + I've backed out this change due to lack of time to chase up + the lack of macro definitions. This will need to be revisited. + +Fri Apr 25 10:40:00 UTC 2008 Simon Massey <sma at pristmech dot com> + + * tests/Unload_libACE.cpp: + This test wasn't using ACE_TMAIN. + +Fri Apr 25 09:10:00 UTC 2008 Simon Massey <sma at pristmech dot com> + + * bin/MakeProjectCreator/config/global.features: + * examples/Log_Mgs/Log_Msg_MFC/Log_Mgs_MFC.mpc: + Feature name "uses_wchar" already used within ACE/TAO. Replaces + the "unicode" feature name. Template / project names within MPC + still named unicode. + +Thu Apr 24 18:45:32 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-linux-common.h: + When ACE_LACKS_STROPTS_H not is defined we assume we have + strbut so we set ACE_HAS_STRBUF_T + +Thu Apr 24 16:47:16 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * bin/tao_orb_tests.lst: + + The DLL_ORB test requires threads. Disable it when the ST config + is used. + +Thu Apr 24 15:05:50 UTC 2008 Simon McQueen <sm@prismtech.com> + + * bin/tao_orb_tests.lst: + + Scheduled new regression test for bug #3299. + +Thu Apr 24 09:55:00 UTC 2008 Simon Massey <sma at pristmech dot com> + + * bin/MakeProjectCreator/config/ace_unicode.mpb: + * bin/MakeProjectCreator/config/global.features: + Default unicode=0 feature. Unicode does not depend upon MFC, + may be used together as necessary. + + * examples/Log_Mgs/Log_Msg_MFC/Log_Mgs_MFC.mpc: + * examples/Log_Mgs/Log_Msg_MFC/Log_Mgs_Unicode_MFC.mpc: + Split out the unicode requirements. + +Thu Apr 24 05:58:32 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Refcountable_T.{cpp,inl}: + Use ACE_INLINE + +Thu Apr 24 05:47:32 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-posix.h: + Reverted change below, already made a similar change which is less risky + + Thu Apr 17 19:27:23 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + * ace/config-posix.h: Added a check for + + #if defined _XOPEN_STREAMS && _XOPEN_STREAMS == -1 + # define ACE_LACKS_STROPTS_H + #endif + + so that ACE will compile properly on Fedora 8. Thanks to + Jules Colding <colding at 42tools dot com> for this fix. + +Thu Apr 17 19:27:23 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/config-posix.h: Added a check for + + #if defined _XOPEN_STREAMS && _XOPEN_STREAMS == -1 + # define ACE_LACKS_STROPTS_H + #endif + + so that ACE will compile properly on Fedora 8. Thanks to + Jules Colding <colding at 42tools dot com> for this fix. + +Wed Apr 23 18:29:32 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Refcountable.{h,cpp,inl}: + * ace/Refcountable_T.{h,cpp,inl}: + Changed ACE_Refcountable to ACE_Refcountable_T which has a + trait for the type of lock. ACE_Refcountable is now a typedef + of ACE_Refcountable_T<ACE_Null_Mutex>. Also the refcount + type is now a long so that we can make use of the Atomic_Op + optimizations on some platforms + + * ace/ace.mpc: + * ace/Makefile.am: + Updated for the change above + +Wed Apr 23 14:49:32 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-linux-common.h: + When _XOPEN_STREAMS is defined to -1 we don't have stropts.h, + this fixes bugzilla 3291. Thanks to Jules Colding + <colding at 42tools dot com> for reporting this + +Wed Apr 23 14:10:32 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * docs/ACE-development-process.html: + We are using svn as repository + +Wed Apr 23 14:01:32 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/generate_rel_manpages: + Corrected doxygen path + + * bin/group_test_stats.sh: + Helper script to analyze test stat diffs + + * ace/Sig_Handler.{h,cpp}: + Doxygen changes and changed third_party_sig_handler flag to a + bool + + * ace/Service_Repository.{h,cpp}: + Changed ignore_suspended to a bool + + * ace/Intrusive_Auto_Ptr.h: + Fixed typo in comment + + * ace/config-vxworks6.2.h: + * ace/config-vxworks6.3.h: + * ace/config-vxworks6.4.h: + Removed workaround that is only needed with VxWorks 5.5.1 + + * ace/Codeset_Registry_db.cpp: + Added UCS2 and correct short names. This fixes bugzilla 3295 + + * ace/Codeset_IBM1047.h: + Doxygen changes + + * ace/Cleanup_Strategies_T.h: + Layout changes + + * ace/Service_Gestalt.{h,inl}: + No need for virtual methods, use bool and doxygen changes + + * ace/Service_Manager.h: + Explicitly mark destructor as virtual + + * ace/Service_Object.{h,cpp,inl}: + Use bool + +Wed Apr 23 01:53:32 CDT 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ACE version 5.6.4 released. + +Wed Apr 16 13:06:05 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * ace/ARGV.cpp: + Don't quote quotes already quoted. + +Mon Apr 14 12:10:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/run_test.pl: + Don't run 2980 when WCHAR is set + +Mon Apr 14 11:08:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Threading_Helper_T.cpp: + Removed + + * ace/Makefile.am: + Removed file above + + * ace/Service_Config.{h,cpp,inl}: + Changed the template instantiations like we have for Atomic_Op. + +Mon Apr 14 09:54:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/tests.mpc: + Don't build 2980 with wchar enabled and added empty resource + file section + +Mon Apr 14 08:59:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Threading_Helper_T.cpp: + Added new file with the threading helper template code. This resolves + the strange link problems with BCB. This file is included in the + Service_Config.h file + + * ace/Makefile.am: + Added new files + + * ace/Service_Config.{h,cpp,inl}: + Include the new Threading_Helper_T.cpp and removed the implementation + from these files + + * tests/tests.mpc: + Added missing include for bug 2980 + + * ace/Codeset_Registry.h: + Fixed typo in comment + + * ace/Shared_Object.h: + Doxygen changes + +Mon Apr 14 01:56:06 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * ace/Service_Config.h: + * ace/Service_Config.inl: + * ace/Service_Config.cpp: + + Moved ACE_Threading_Helper ctor and dtor implementaion + inline. This makes them available to code that indirectly + references the threadkey_ member (like, in examples/). This + should resolve link-time problems with borland compilers. + + * tests/Bug_2980_Regression_Test.cpp (unloadDll): + + Fixing warnings about missing extern "C" qualifier in call to + pthread_create. + +Sun Apr 13 07:27:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_Thread.cpp (_vx_call_entry): + Set the sc::current before calling main. This resolves the + sc asserts with vxworks kernel mode. Thanks to Iliyan + for suggesting this addition + +Fri Apr 11 17:36:34 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * docs/Download.html: + * docs/ACE-development-process.html: + * docs/ACE-bug-process.html: Updated these files to use the major, + minor, and micro release terminology. + +Fri Apr 11 15:26:08 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * tests/Bug_2980_Regression_Test.cpp: + * tests/run_test.lst: + + Including config-lite.h: the driver is non-ACE but it still + needs to know platform-specific stuff, like threads usage, + etc. + +Fri Apr 11 01:51:13 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * ace/Svc_Conf_Tokens.h: + * ace/svcconf.mpb: + + Fixing a fuzz build warning of a missing $Id. Also, not all + make(1)'s have $(MV), so changing mpb to use just "mv" + +Thu Apr 10 22:32:58 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * ace/Service_Config.h: + * ace/Service_Config.cpp: + + Fixing compile problems with single-thread-only builds - using + the compiler's abilities (partial specialization) to generate + appropriate code. + + * ace/Svc_Conf.h: + * ace/Svc_Conf_Token_Table.h: + * ace/Svc_Conf_Tokens.h: + * ace/Svc_Conf_y.cpp: + * ace/svcconf.mpb: + + Changes to fix compile problems related to versioned namespace + use. Eliminated custom token file post-processing - replaced + with a wrapper header file (yacc(1) is now producing + Token_Table.h, which gets included in Tokens.h) + +Thu Apr 10 14:42:04 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * ace/Svc_Conf.h: + + Adding YYSTYPE_IS_DECLARED to prevent yacc(1) from trying to use a + trivial definition of YYSTYPE. + + * ace/Svc_Conf.y: + + Fixing an unused variable warning. Adding an YYSTYPE guard. + + * ace/Svc_Conf_Tokens.h: + * ace/Svc_Conf_y.cpp: + * ace/svcconf.mpb: + + Undefining YYSTYPE_IS_DECLARED at the bottom of Svc_Conf_Tokens.h + prevents it from leaking and poluting the global namespace. This + allows other yacc(1) based parsers to be used in ACE + apps. Cleaning up and recording generated files. + +Thu Apr 10 13:27:13 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * tests/Bug_2980_Regression_Test.cpp: + + Fixed compilation issues and reversed the CAN_RUN_TEST check to + get it to run on non-win32 and non-vxworks operating systems. + +Thu Apr 10 10:11:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Dynamic_Service.inl: + Corrected method signatures + +Thu Apr 10 10:03:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Bug_2980_Regression_Test.cpp: + Fixed BCB compile error + +Thu Apr 10 07:13:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_linux_pgi.GNU: + Removed deprecated linker flags + + * ace/Dev_Poll_Reactor.cpp: + * ace/Notification_Queue.cpp: + * ace/Service_Config.cpp: + * ace/Service_Object.cpp: + * ace/Sock_Connect.cpp: + Added missing includes + + * ace/Notification_Queue.cpp: + * ace/Notification_Queue.inl: + Added missing versioned namespace macros + +Thu Apr 10 06:41:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Service_Gestalt.h: + Added include of Guard_T.h + + * include/makeinclude/platform_linux_pgi.GNU: + Updated for latest pgCC version + +Thu Apr 10 00:50:53 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * tests/Bug_2980_Regression_Test.cpp: + * tests/tests.mpc: + + Fixing a compile problem with no-threads builds. + +Wed Apr 9 22:05:30 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * ace/Svc_Conf.h: + * ace/Svc_Conf.y: + * ace/Svc_Conf_Lexer.h: + * ace/Svc_Conf_Lexer.cpp: + * ace/Svc_Conf_Param.h: + * ace/Svc_Conf_Tokens.h: + * ace/Svc_Conf_y.cpp: + * ace/svcconf.mpb: + + Simplified the build sequence reducing the number of additional + transformations needed for Bison's parser output. That includes + the elimination of the ACE_YY prefix, which was necessary only + because of these transformations. Added ACE_TEXT around naked + string literals. Fixed build warnings with unicode builds. + +Wed Apr 9 20:22:46 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * ace/Service_Repository.cpp: + Fixing relocate_i to both account for empty slots _and_ provide + useful logging. + +Wed Apr 9 18:24:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Don't run 3171 with CORBA/e micro + +Wed Apr 9 11:50:27 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * bin/MakeProjectCreator/modules/VXTestProjectCreator.pm: + + Added a need_to_write_project override method to only allow the + project file to be written if it is an executable project. + + * bin/MakeProjectCreator/modules/VXTestWorkspaceCreator.pm: + + Fixed a bug where an invalid base module was used in the @ISA. + +Wed Apr 9 11:41:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Bug_2980_Regression_Test.cpp: + Check for ACE_VXWORKS + +Wed Apr 9 11:11:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Svc_Conf_y.cpp: + Fixed unicode build problems + +Wed Apr 9 08:06:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Svc_Conf.y: + * ace/Svc_Conf_y.cpp: + Fixed unicode build problems + +Wed Apr 9 07:18:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Service_Config.h: + Export ACE_Threading_Helper, it is used as protected class + member + + * ace/Service_Gestalt.cpp: + Don't use ACE_LIB_TEXT + + * ace/High_Res_Timer.h: + * ace/Based_Pointer_T.h: + Doxygen changes + + * ace/Naming_Context.cpp: + Fixed gcc 4.3 warning + + * ace/OS_NS_errno.h (last_error): + Give the argument a name so that doxygen can do its work + + * ace/Select_Reactor_T.cpp: + Use scoping + + * ace/MMAP_Memory_Pool.{h,cpp}: + Add a bool flag to indicate whether the signal handler has to + be installed or not. Made some other flags bool and win32 there + is no need have a signal handler as member. This fixes bugzilla + 3290 + +Wed Apr 9 02:43:37 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * ace/Dynamic_Service.inl (instance): + Adjusting interface to take a smart pointer. + + * ace/OS_NS_unistd.cpp (argv_to_string): + Adding interpretation for tabs and new line characters as + characters to trigger quoting. + + * ace/Service_Config.h: + * ace/Service_Config.cpp: + * ace/Service_Gestalt.h: + * ace/Service_Gestalt.inl: + * ace/Service_Gestalt.cpp: + * ace/Service_Repository.cpp: + Reformatting, updating comments and logging. + +Wed Apr 9 01:21:42 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/Condition_T.cpp (wait): Fixed a bug where the mutex + parameter wasn't being used properly if abstime was 0. Thanks + to Andriy Gapon <avg at icyb dot net dot ua> for reporting this. + +Mon Apr 7 18:49:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/MakeProjectCreator/docs/templates/gnu.txt: + Document linkflags + +Mon Apr 7 15:21:38 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + This the second part of the SC refatoring. It builds on top of + the intrusive refcounting mechanism introduced earlier to improve + design and eliminate memory issues (leaks, SEGV on shutdown) + + * ace/Service_Config.cpp (open_i,ACE_Service_Config): + + Moved the implicit configuration file handling from open_i to + the SG instance. Eliminated close_svcs() by incorporating its + functionality in close(). + + * ace/Service_Config.inl: + * ace/Service_Config.h (ACE_Service_Config_Guard,ACE_Service_Config): + + Removing the inheritance relationship between Service Config and + Service Gestalt. To simplify the memory management, SC becomes an + interface to the actual configuration data managed by SG. Coupled + with the reference counting of SG instances, this ensures correct + memory management in multi-threaded environments where both the + TSS and the user code may trigger SG finalization. + + Introducing ACE_Threading_Helper to simplify TSS management + (RAII idiom). Changed ACE_Service_Config_Guard to use the new + smart pointer for SG. Doxygen comments cleanup. + + * ace/Svc_Conf.y: + * ace/Svc_Conf_y.cpp: + + Fixing unused function definition + + * tests/Bug_2980_Regression_Test.cpp: + + Updating the test to prevent it from breaking vxWorks builds + which appear to lack a declaration for dlopen() + +Sun Apr 6 01:53:13 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * ace/Service_Gestalt.cpp: + + Fixing unused variable warning. + + * ace/Svc_Conf_y.cpp: + * ace/svcconf.mpb: + + Ensuring there are no TAB characters present in the generated + file. + + * tests/run_test.lst: + + Excluding Bug_2980_Regression as it is not runnable on vxWorks. + +Sat Apr 5 16:21:50 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * ace/Service_Config.inl: + * ace/Service_Config.cpp: + * ace/Service_Gestalt.cpp: + * ace/Service_Gestalt.h: + + Making SG intrusively refcountable by introducing + intrusive_{add,remove}_ref methods and a refcounter. Adding + skip_default_svc_conf_file parameter in process_directives. + + * ace/svcconf.mpb: + * tests/Object_Manager_Flipping_Test.cpp: + + Reformatting and cleanup. + +Sat Apr 5 13:42:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Bug_2980_Regression_Test.cpp: + Fixed argument not used warnings + +Sat Apr 5 13:36:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Parse_Node.cpp: + Moved include out of versioned namespace block + +Sat Apr 5 11:50:40 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * ace/Parse_Node.cpp: + * ace/Svc_Conf.y: + * ace/Svc_Conf_Tokens.h: + * ace/Svc_Conf_y.cpp: + + Replacing ACE_LIB_TEXT with ACE_TEXT + +Fri Apr 4 21:43:35 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * THANKS: + + Adding Michael Carter <mcarter at swri dot org> for reporting + and debugging bug 3007. + + * ace/Base_Thread_Adapter.h: + * ace/Base_Thread_Adapter.cpp: + + Storing a pointer to SG that was current in the parent thread, + which enables correct "inheritance" of the SG in the child thread. + + * ace/Parse_Node.h: + * ace/Parse_Node.cpp: + + Fixing ACE_Stream_Node::{apply,link} to ensure the modules are linked + together and initialized correctly - see bug# 2916. Moving the + initialization code out of the yacc parser, here. + + * ace/Service_Object.cpp: + * ace/Service_Types.cpp: + + Improving the log output in fini(). + + * ace/Service_Repository.h: + + Eliminating an unused parameter static_only from relocate_i() + + * ace/Service_Repository.cpp: + + Simplified relocate_i() and fixed an error that was causing it to + choose incorrect ranges of service indexes to relocate. + Eliminated the boolean static_only parameter as it was always + being set to true. Changed remove() to eliminate the "packing" + code and updated the few other methods, which assumed there are no + "gaps" in the service storage. + + * ace/Svc_Conf.h: + * ace/Svc_Conf.y: + * ace/Svc_Conf_Tokens.h: + * ace/Svc_Conf_y.cpp: + + Adding an overloaded yyerror that takes just a string to comply + with the changed bison template. Moving the module initialization + code out of the parser. See ACE_Stream_Node class and bug# 2916. + + * ace/Thread_Adapter.cpp: + + The invoke() method, which runs in the new thread, initializes the + thread-specific configuration context. This scheme ensures any + newly spawned thread would inherit the spawning thread's service + configuration context. + + * ace/ace.mpc: + + Adding Intrusive_Auto_Ptr to the list. + + * ace/svcconf.mpb: + + Updated for the grammar updates, see bug# 2916. + + * examples/ASX/CCM_App/ASX_CCM_App.mpc: + * examples/ASX/CCM_App/CCM_App.cpp: + + The DLL names are case-sensitive on *nix. Minor layout changes. + + * tests/Object_Manager_Flipping_Test.cpp: + + Updated to use the Intrusive_Auto_Ptr + + * tests/run_test.lst: + * tests/tests.mpc: + + Adding Bug_2980_Regression_Test + +Fri Apr 4 18:27:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * configure.ac: + Fixed iostream detection. This fixes bugzilla 3288 + This to Thomas Girard <thomas dot g dot girard at free dot fr> + for reporting this. + +Thu Apr 3 14:13:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_vxworks5.5.x.GNU: + * include/makeinclude/platform_vxworks6.2.GNU: + * include/makeinclude/platform_vxworks6.3.GNU: + Changed the make variable from which we zap the -ansi and also support + this with the diab compiler + +Thu Apr 3 09:40:00 UTC 2008 Simon Massey <simon dot massey at prismtech dot com> + + * apps/JAWS/stress_testing/benchd.cpp: + + Using "interface" as the descriptive name of a parameter seems to + cause VC8 (when building with MFC) to assume you mean a struct type + and it raises an incorrect systax error. + +Thu Apr 3 07:05:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/MakeProjectCreator/templates/gnu.mpd: + Generate link_groups also when staticflags are not set + +Wed Apr 2 21:40:00 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + + Fix typo in ACE_HAS_BSWAP_{16,32,64} feature tests. + This to Thomas Girard <thomas dot g dot girard at free dot fr> + for reporting this. + +Wed Apr 2 20:22:50 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * ace/Intrusive_Auto_Ptr.h: + * ace/Intrusive_Auto_Ptr.inl: + + Correcting a problem with VC71 + +Wed Apr 2 11:06:30 UTC 2008 Vladimir Zykov <vladimir.zykov@prismtech.com> + + * bin/tao_orb_tests.lst: + + Enabled a TAO/tests/Collocated_Forwarding on vxworks and + vxworks_rtp. + +Wed Apr 2 09:05:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_vxworks5.5.x.GNU: + * include/makeinclude/platform_vxworks6.2.GNU: + * include/makeinclude/platform_vxworks6.3.GNU: + Add no_cflags_ansi and no_ccflags_ansi which if set do remove the + -ansi compiler flag + +Wed Apr 2 08:14:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-linux-common.h: + Replaced ACE_HAS_VOIDPTR_GETTIMEOFDAY with + ACE_HAS_TIMEZONE_GETTIMEOFDAY, this fixes bugzilla 3145 + This to Thomas Girard <thomas dot g dot girard at free dot fr> + for reporting this + +Wed Apr 2 07:51:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/run_test.lst: + Enabled a few tests on VxWorks again, in the past rebooting a + crashed target was problematic but that is not an issue anymore + +Tue Apr 1 14:20:34 UTC 2008 Vladimir Zykov <vladimir.zykov@prismtech.com> + + * bin/tao_orb_tests.lst: + Added a new test for collocated forwarding case. + +Tue Apr 1 12:58:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_other_tests.lst: + Added OBV typed event test + +Tue Apr 1 12:52:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Add the DSI Gateway exception test, they should run, the scoreboard + will show if they run + +Tue Apr 1 08:33:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_openvms.GNU: + Set ACE_OPENVMS_IA64 on Itanium + + * include/makeinclude/rules.lib.GNU: + Only use a special AR rule on OpenVMS IA64 + +Tue Apr 1 07:38:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Intrusive_Auto_Ptr_Test.cpp: + Fixed argument not used warning + +Tue Apr 1 07:34:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_other_tests.lst: + Enabled a few tests for vxworks + +Tue Apr 1 07:12:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Reactor_Dispatch_Order_Test.cpp: + Only run the reactor once, this will lead to the failing of this test + when using the WFMO Reactor which seems to be a old issue that needs + to get addressed + +Tue Apr 1 06:54:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_other_tests.lst: + Disabled most tests for vxworks and vxworks_rtp, we first need to + convert a lot of scripts to support vxworks + +Mon Mar 31 21:48:58 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + + Changed to avoid feature test for pthread_getaffinity_np() and + pthread_setaffinity_np() if system does not have cpu_set_t. In + that case, the pthread functions are amost certainly not + compatible. + + * ace/Makefile.am: + + Add Intrusive_Auto_Ptr.cpp, Intrusive_Auto_Ptr.h, and + Intrusive_Auto_ptr.inl to nobase_include_HEADERS. + +Mon Mar 31 18:56:40 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * ace/Refcounted_Auto_Ptr.h: + * ace/Refcounted_Auto_Ptr.inl: + * ace/Refcounted_Auto_Ptr.cpp: + + Reverting the changes because a) they are not really necessary + for the refactoring of the service config, and; b) the AIX + compiler appears to not deal well with implicit conversion + definitions, to template member types. + +Mon Mar 31 16:15:17 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * tests/tests.mpc: + + Adding Intrusive_Auto_Ptr_Test to the list + +Mon Mar 31 14:52:58 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * ace/Intrusive_Auto_Ptr.h: + * ace/Intrusive_Auto_Ptr.cpp: + * ace/Refcounted_Auto_Ptr.h: + * ace/Refcounted_Auto_Ptr.inl: + * ace/Refcounted_Auto_Ptr.cpp: + + Added preprocessor guards for proper inlining. Qualified + the type name in the implementation of opretator + unspecified_bool_type () to appease GCC 3.x + +Mon Mar 31 13:50:45 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + * tests/run_test.lst: + + Adding Intrusive_Auto_Ptr_Test to the list + +Mon Mar 31 12:09:20 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * bin/MakeProjectCreator/modules/AutomakeWorkspaceHelper.pm: + + Always reference Kokyu libraries from $(ACE_BUILDDIR) instead of + $(top_builddir) so that it will work from both ACE and TAO. + +Mon Mar 31 11:00:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Bug_2980_Regression_Dll.cpp: + * tests/Bug_2980_Regression_Test.cpp: + Fixed fuzz errors + +Mon Mar 31 08:59:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/OS_Test.cpp: + Added test for ACE_OS::last_error() + +Sun Mar 30 19:54:23 UTC 2008 Iliyan Jeliazkov <iliyan@ociweb.com> + + This is the first step of merging the changes from the gestalt + refactoring branch. It includes only changes that are merely + peripheral, without impacting the actual configuration mechanism + - yet. + + * ace/ARGV.h: + * ace/ARGV.cpp: + + Introducing a ctor that takes the number of parameters in argv, + thus eliminating the requirement to have argv 0-terminated. This + requirement can be a hard to satisfy in cases where the argv has + been "manualy constructed", i.e. not provided by the OS + environment. + + * ace/Intrusive_Auto_Ptr.h: + * ace/Intrusive_Auto_Ptr.inl: + * ace/Intrusive_Auto_Ptr.cpp: + + Added an intrusive auto pointer implementation. It is a reference + counted auto pointer that can be used for types with explicit + reference management implementations. + + * ace/OS_NS_unistd.h: + * ace/OS_NS_unistd.cpp: + + Introducing new argv_to_string which takes an explicit argc + argument and relaxes the requirement on argv (to be 0-terminated). + + * ace/Refcounted_Auto_Ptr.h: + * ace/Refcounted_Auto_Ptr.inl: + + Adding a mechanism that provides a correct conversion to boolean + for smart pointers, which preserves the smantics of "if (ap) ..." + without the unwanted side effects. Credit goes to Andrei + Alexandrescu's Modern C++ Design book. + + * ace/Service_Types.cpp: + + Cosmetics: adding this-> to member references. + + * examples/ASX/CCM_App/ASX_CCM_App.mpc: + * examples/ASX/CCM_App/CCM_App.cpp: + + Fixing a problem that precludes the test from running correctly + on *nix - the DLL names are not case-insensitive. Minor layout + changes. + + * tests/Intrusive_Auto_Ptr_Test.cpp: + + A test for the new auto ptr. + + * tests/Bug_2980_Regression_Dll.cpp: + * tests/Bug_2980_Regression_Test.cpp: + * tests/run_test.lst: + * tests/tests.mpc: + + Addded a test for bug 2980. Thanks to Lothar Werzinger <lothar + at tradescape biz> for contributing the code. + +Sun Mar 30 18:54:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX_Win32.pm: + Handle single quotes in the executable arguments + +Sat Mar 29 08:16:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Reactor_Dispatch_Order_Test.cpp: + Dev_Poll reactor displays other bugs, so disable this part of + the test + + * ace/Select_Reactor_Base.cpp: + Position the iterator on the first element that is none zero, fixes + crashing of the reactor_dispatch_order_test on non windows platforms + +Fri Mar 28 17:18:50 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/CDR_Stream.cpp (write_long_placeholder, write_short_placeholder): + Be careful to adjust and grow the stream's block before taking + the pointer that's returned to the user. Thanks to Alain Kocelniak + <alain@corys.fr> for this fix. + + * ace/CDR_Stream.h: Note that the placeholder methods return 0 if + the method fails due to insufficient memory. + + * THANKS: Added Alain Kocelniak to the Hall of Fame. + +Fri Mar 28 15:40:03 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * tests/unload_libace.mpb: + + Inhert from vc_warnings instead of duplicating part of it's + functionality. + +Fri Mar 28 09:24:25 UTC 2008 Vladimir Zykov <vladimir.zykov@prismtech.com> + + * bin/tao_orb_tests.lst: + + Enabled a test to Bug_3276_Regression. + +Fri Mar 28 09:17:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Reactor_Dispatch_Order_Test.cpp: + Extended this test to also test suspend/resume_handlers and the + dev_poll reactor. Thanks to Russell Morra for extending this test + + * ace/ACE.cpp: + * ace/High_Res_Timer.inl: + Layout changes + + * ace/Hash_Map_Manager_T.cpp: + Use prefix increment instead of postfix + + * ace/High_Res_Timer.h: + * ace/Reactor.h: + * ace/Select_Reactor_Base.h: + Doxygen changes + + * ace/Select_Reactor_Base.inl: + Fixed done implementation. This fixes bugzilla 3267 + + * ace/String_Base.cpp: + Initialise pointer with 0 + + * ace/WFMO_Reactor.{h,cpp,inl}: + Bool changes, fixed implementation of suspend_handlers/resume_handlers, + the to_be_added set modifications where not done correctly + +Thu Mar 27 19:09:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + * bin/tao_other_tests.lst: + Diabled 3251/3252 in a static build + +Thu Mar 27 16:27:44 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * ace/Object_Manager.cpp: + + In Win32 debug builds with ACE_DISABLE_WIN32_ERROR_WINDOWS, also + redirect assert messages to stderr instead of GUI message boxes. + +Thu Mar 27 16:17:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * docs/ACE-bug-process.html: + * docs/ACE-development-process.html: + * docs/ACE-guidelines.html: + * docs/usage-bugzilla.html: + Updated bugzilla location + +Thu Mar 27 15:52:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/MakeProjectCreator/modules/VXTestProjectCreator.pm: + * bin/MakeProjectCreator/modules/VXTestWorkspaceCreator.pm: + * bin/MakeProjectCreator/templates/vxtest.mpd: + New MPC generator called vxtest. This will generate the loading + of the downloadable kernel modules for an application. + +Thu Mar 27 14:07:27 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * configure.ac: + + #include <byteswap.h> in ACE_HAS_BSWAP_{16,32,64} feature tests. + Resolves bugzilla issue #3134. + +Thu Mar 27 12:54:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_vxworks6.3.GNU: + Small change to get the VxWorks shared library build further + +Thu Mar 27 12:46:48 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * tests/SSL/Thread_Pool_Reactor_SSL_Test.cpp: + + Changed ACE_TMAIN to run_main for the non-threaded portion of the + #ifdef. ACE_TMAIN is defined in Main.cpp. + +Thu Mar 27 12:37:18 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * ASNMP/asnmp/snmperrs.h: + + Added an unknown error code message to the pErrs array to avoid + getting a garbage pointer from Snmp::error_string() in the event + that the error code is outside the valid range. + +Thu Mar 27 11:11:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Free_List.cpp: + Fixed ambiguous else with GCC 4.3. Thanks to Jules Colding + <colding at 42tools dot com> for reporting this + +Thu Mar 27 10:36:18 UTC 2008 Simon McQueen <sm@prismtech.com> + + * include/makeinclude/wrapper_macros.GNU: + + Make it possible to specify an alternate name / location for + platform_macros.GNU. This fixes bug #3269. + +Wed Mar 26 15:32:01 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * bin/MakeProjectCreator/templates/gnu.mpd: + + Corrected my change from yesterday so that it works properly for + executable projects that pull in source files from other directories. + +Tue Mar 25 18:02:52 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * ASNMP/asnmp/wpdu.cpp: + + Added an intermediate integer to avoid type-punned pointer + dereferencing. + +Tue Mar 25 14:19:31 UTC 2008 Adam Mitz <mitza@ociweb.com> + + * bin/MakeProjectCreator/templates/gnu.mpd: + + When generating the linker command line for executable linked against + static libs, exclude the "libFoo.a" form of the libraries. They are + already accounted for by "-lFoo" arguments. This resolved Bugzilla + Bug #3266. + +Tue Mar 25 10:43:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * netsvcs/lib/Server_Logging_Handler.cpp: + Corrected static template member instantiation to resolve compile + error on OpenVMS Alpha + +Tue Mar 25 10:12:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_openvms.GNU: + Disable warnings on IA64 without using GNV, that doesn't work + in all cases + +Tue Mar 25 09:08:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/INET_Addr.cpp: + Detect sockets that are bigger then ACE_MAX_DEFAULT_PORT. + Thanks to Patrick Rabau <pr2345 at gmail dot com> for + reporting this. This fixes bugzilla 3264 + + * tests/INET_Addr_Test.cpp: + Added a test for an overflow of the port number + + * ace/Hash_Map_Manager_T.{h,inl}: + Changed head argument of the iterators to a bool + + * ace/Reactor.h: + * ace/Reactor_Impl.h: + Doxygen changes + +Tue Mar 25 00:38:33 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> + + * ace/Makefile.am: + + Add Configuration.inl to nobase_include_HEADERS. + +Mon Mar 24 16:21:30 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/OS_NS_Thread.cpp (event_timedwait): Fixed this code so that + it will treat 0 using "wait indefinitely" semantics for Windows + and all other OS platforms. Thanks to Paul Carter <pcarter at + scires dot com> for contributing this. + +Mon Mar 24 16:13:51 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * tests/Manual_Event_Test.cpp (worker): Added a test to ensure + that a null pointer works properly for the + ACE_Manual_Event::wait() method. Thanks to Paul Carter <pcarter + at scires dot com> for contributing this. + +Mon Mar 24 15:43:28 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> + + * bin/MakeProjectCreator/config/MPC.cfg: + + MPC can now be configured to recognize ACE_TMAIN as an executable + entry point. We no longer need to explicitly state that a project will + be an executable in the MPC file, MPC will automatically deduce that + the project is an executable given the presence of ACE_TMAIN. + + This change above relates to the following change in MPC: + Mon Mar 24 15:18:28 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + +Mon Mar 24 02:25:58 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * COPYING: Updated the license a bit based on feedback from Tom + Callaway" <tcallawa at redhat dot com>. These changes will + enable ACE+TAO to be shipped with Fedora. + +Fri Mar 21 16:12:53 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/OS_NS_unistd.cpp (num_processors_online): Count the online + processors for Windows, not just the number present. + + * tests/OS_Test.cpp: Sanity-check the num_processors_online() value. + +Fri Mar 21 15:10:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/FoxReactor/FoxReactor.cpp: + Fix 64bit issues, this fixes bugzilla 3248 + This to Thomas Girard <thomas dot g dot girard at free dot fr> + for reporting this + +Fri Mar 21 10:46:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * m4/ace.m4: + Changed gperf check + + * apps/Makefile.aml: + Updated gperf check. This fixes bugzilla 3249. + This to Thomas Girard <thomas dot g dot girard at free dot fr> + for reporting this + +Fri Mar 21 10:06:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-vxworks.h: + If ACE_VXWORKS is not defined try to figure out which vxworks + version we are using based on some vxworks version defines + + * ace/Select_Reactor_Base.h: + Doxygen changes and made the constructor of + ACE_Select_Reactor_Handler_Repository_Iterator explicit + + * ace/Process.{h,cpp}: + Layout change + +Thu Mar 20 15:34:18 UTC 2008 Chad Elliott <elliott_c@ociweb.com> + + * bin/MakeProjectCreator/config/acedefaults.mpb: + + Changed the ACE_LD_DECORATOR_STR macro to use $(LIBMODIFIER) + instead of $(ILIBMODIFIER) for the bmake project type. + +Thu Mar 20 12:42:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Addr.h: + Layout change + + * ace/High_Res_Timer.cpp: + Changed supported flag to a bool + + * ace/INET_Addr.h: + Doxygen change + + * ace/Svc_Conf.h: + Moved regular include before pragma once + +Wed Mar 19 13:45:00 UTC 2008 Simon Massey <simon.massey@prismtech.com> + + * ace/tao_orb_tests.lst: + Remove TAO/tests/Bug_1482_Regression from LynxOS. + +Wed Mar 19 11:41:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Process_Manager.h: + * ace/Semaphore.h: + * ace/SOCK.h: + * ace/SOCK_IO.h: + Doxygen changes + + * ace/Service_Gestalt.h: + Removed not needed forward declaration + + * ace/OS_NS_Thread.h: + Layout change + +Tue Mar 18 20:17:55 UTC 2008 Steve Huston <shuston@riverace.com> + + * bin/PerlACE/ProcessLVRT.pm: + * bin/PerlACE/TestTarget_LVRT.pm: Handle timeouts to the target better + and smarten up the way it gets log files from a failed target. + + * bin/PerlACE/TestTarget.pm: + * bin/PerlACE/TestTarget_LVRT.pm: Add a GetFile() method to get a file + from the target to the local machine. By default, it does nothing. + It's meant for use by targets that don't necessarily have locally + accessible file systems, such as LabVIEW RT. + + * bin/Run_Test.pm: + * bin/PerlACE/Process_Win32.pm: Add support for running tests on + LabVIEW RT similarly to the way they're done on VxWorks; TAO tests + run the server on the target and the client on the host. + + * bin/LabVIEW_RT/labview_test_controller/labview_test_controller.cpp: + Catch exceptions and try to report it to stderr before the machine + locks up, dies, etc. + +Tue Mar 18 07:33:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_openvms.GNU: + Removed -Wc/DISTINGUISH_NESTED_ENUMS, only needed for one test + +Mon Mar 14 09:17:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_other_tests.lst: + Added 3252 + +Mon Mar 14 09:07:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Added 3251 + +Fri Mar 14 19:57:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_aix_g++.GNU: + Improved support for buildbits=64 + +Fri Mar 14 19:09:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/INET_Addr.cpp: + Fixe warning with GCC 4.2 on AIX + +Fri Mar 14 19:07:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_aix_g++.GNU: + Disable visibility by default. With GCC 4.2 on AIX we get warnings + that visibility is not supported in that configuration + +Fri Mar 14 15:02:33 UTC 2008 Ciju John <johnc at ociweb dot com> + + * bin/tao_other_tests.lst: + Turn on the Notify Persistent_POA test. + +Fri Mar 14 09:30:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_aix_g++.GNU: + Don't use -mcpu=common, that is an ancient default of AIX 5.1 + +Thu Mar 13 12:41:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_aix_g++.GNU: + Fixed support for buildbits=32/64 + +Wed Mar 12 19:49:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + Reverted the gperf change below, breaks all autoconf builds + + Wed Mar 12 06:55:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + * m4/ace.m4: + Added enable-aio, enable-ipo and fixed gperf handling. + This to Thomas Girard <thomas dot g dot girard at free dot fr> + for reporting this + +Wed Mar 12 15:08:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/ProcessVX.pm: + Fix retry mechanism for the iBoot bar + +Wed Mar 12 12:59:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * m4/ace.m4: + Added support for fox, thanks to Thomas Girard + <thomas dot g dot girard at free dot fr> for reporting this. + This fixes bugzilla 3147 + +Wed Mar 12 11:59:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/FoxReactor/FoxReactor.{h,cpp}: + Removed check for ACE_HAS_FOX + + * include/makeinclude/wrapper_macros.GNU: + Changed fox handling, matches the other reactors. Thanks to + Thomas Girard <thomas dot g dot girard at free dot fr> for + reporting this. This resolves bugzilla 3248 + + * include/makeinclude/platform_aix_ibm.GNU: + Added support for Visual Age 9 + +Wed Mar 12 11:53:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/FoxReactor/FoxReactor.h: + Added missing include, thanks to Thomas Girard + <thomas dot g dot girard at free dot fr> for reporting this + +Wed Mar 12 07:07:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/FoxReactor/FoxReactor.cpp: + Fixed compile errors, thanks to Thomas Girard + <thomas dot g dot girard at free dot fr> for reporting this + +Wed Mar 12 06:59:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/ace.mwc: + * bin/MakeProjectCreator/config/global.features: + Added fox reactor, thanks to Thomas Girard + <thomas dot g dot girard at free dot fr> for reporting this + +Wed Mar 12 06:55:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * m4/ace.m4: + Added enable-aio, enable-ipo and fixed gperf handling. + This to Thomas Girard <thomas dot g dot girard at free dot fr> + for reporting this + +Tue Mar 11 12:24:43 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/Svc_Conf.h: Add #include "ace/config.h" so a setting for + ACE_LACKS_PRAGMA_ONCE can be seen. Fixes compile warnings. + +Tue Mar 11 12:20:02 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/Log_Msg.cpp (log): Fixed compile error. No need to use + ACE_TEXT_ALWAYS_CHAR for a char* literal. + +Mon Mar 10 22:27:09 UTC 2008 Nanbor Wang <nanbor@wakefield.txcorp.com> + + * ace/Svc_Conf.h: Removed redundant inclusion of Obstack.h. It is + included later in Svc_Conf_Param.h. Removing this extra + inclusion allows us to build on MacOS Leopard with optimization + enabled. + +Mon Mar 10 15:35:02 UTC 2008 Steve Huston <shuston@riverace.com> + + * ace/Log_Msg.{h cpp} (log): For %C, clearly note that it always prints + a narrow-char string, and adjust the va_arg to match. Thanks to + Russell Morra for reporting this issue. + +Mon Mar 10 13:20:57 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * tests/Multicast_Test.cpp: + When sending fails, print the ip address we are using in the error + message. + +Sat Mar 8 16:23:57 UTC 2008 Douglas C. Schmidt <schmidt@dre.vanderbilt.edu> + + * ace/WIN32_Asynch_IO.cpp (send): Enhanced the code to allow sends + of 0-sized datagrams. Thanks to Andi Heusser <aheusser at gmail + dot com> for this fix. + +Thu Mar 6 16:49:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/rules.lib.GNU: + Rearranged some rules to make sure c/C files are compiled with the + C compiler on OpenVMS + +Thu Mar 6 13:10:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_openvms.GNU: + Improved this file + +Thu Mar 6 10:33:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_openvms.GNU: + Removed restriction that only a shared or static build can be done + +Wed Mar 5 07:54:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/tao_orb_tests.lst: + Don't run the parallel connect strategy test on VxWorks 5.5, the + command length of the shell is not long enough. + +Tue Mar 4 09:27:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/ProcessVX.pm: + Added a retry to the iPass protocol code, in a full test run + we sometimes see that the reboot has failed. With this retry + we hopefully get rid of those false test failures + +Tue Mar 4 05:54:22 UTC 2008 William Otte <wotte@dre.vanderbilt.edu> + + * bin/svn_props.py: + Automatically set default properties when svn complains. + +Mon Mar 3 11:22:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/MakeProjectCreator/templates/bor.mpd: + Just single line comments + + * bin/MakeProjectCreator/templates/gnu.mpd: + Check VXWORKSLINK for 1 + +Mon Mar 3 11:10:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_vxworks5.5.x.GNU: + * include/makeinclude/platform_vxworks6.2.GNU: + * include/makeinclude/platform_vxworks6.3.GNU: + * include/makeinclude/rules.bin.GNU: + * include/makeinclude/rules.lib.GNU: + Use 1 for VXWORKSLINK instead of true. Added footprint=1 + as flag to specify that you are doing a footprint build + +Mon Mar 3 10:49:28 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> + + * apps/JAWS/clients/WebSTONE/src/cgi-send.c: + * apps/JAWS/clients/WebSTONE/src/genrand.c: + * apps/JAWS/clients/WebSTONE/src/webmaster.c: + * contrib/utility/Example/CommandLine/Foo/command.cpp: + * contrib/utility/Example/ExH/BadCast/bad_cast.cpp: + * contrib/utility/Example/ExH/Compound/compound.cpp: + * contrib/utility/Example/ExH/HelloWorld/hello_world.cpp: + * contrib/utility/Example/ExH/LogicToSystem/logic_to_system.cpp: + * contrib/utility/Example/Hetero/Container/container.cpp: + * contrib/utility/Example/Introspection/InheritanceTree/inheritance_tree.cpp: + * contrib/utility/Example/Introspection/Traversal/driver.cpp: + * contrib/utility/Test/ExH/Converter/converter.cpp: + * contrib/utility/Test/ExH/Inline/inline.cpp: + * contrib/utility/Test/ExH/Logic/DescriptiveException/descriptive_exception.cpp: + * contrib/utility/Test/ExH/System/DescriptiveException/descriptive_exception.cpp: + * contrib/utility/Test/Introspection/Inline/inline.cpp: + * contrib/utility/Test/Synch/Inline/inline.cpp: + * etc/xlc_dummy.cpp: + * examples/Reactor/Proactor/test_aiocb.cpp: + * examples/Reactor/Proactor/test_aiosig.cpp: + + Disable fuzz's check_for_improper_main_declaration check on these files. + These files don't use ACE. + + * examples/Reactor/WFMO_Reactor/Multithreading.cpp: + * examples/Reactor/WFMO_Reactor/Registration.cpp: + * examples/Reactor/WFMO_Reactor/Registry_Changes.cpp: + * examples/Threads/task_three.cpp: + + Use the proper form of ACE_TMAIN. Namely, the argv parameter + should be "ACE_TCHAR *argv[]" instead of "ACE_TCHAR **argv" + or "ACE_TCHAR *[]" instead of "ACE_TCHAR **" + + * apps/JAWS3/bench/average.cpp: + * netsvcs/clients/Tokens/invariant/invariant.cpp: + + Use ACE_TMAIN instead of main as the program entry point to comply + with ACE/TAO/CIAO coding standards. + +Mon Mar 3 08:58:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_openvms.GNU: + Improved this file + +Mon Mar 3 07:30:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_openvms.GNU: + Don't set INSLIB + +Mon Mar 3 07:00:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/rules.local.GNU: + Rearranged some rules so that C files are compiled with the + C compiler on OpenVMS + +Mon Mar 3 06:57:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/ProcessVX.pm: + Added support to specify a custom password for the iBoot + +Sun Mar 2 20:04:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/ProcessVX.pm: + Integrated some OCI changes for the iBoot + +Sun Mar 2 19:32:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/auto_run_tests.pl: + Use ACE_ROOT as defailt root test directory instead of the current + directory + +Sun Mar 2 18:53:12 UTC 2008 Abdullah Sowayan <abdullah.sowayan@lmco.com> + + * ASNMP/agent/main.cpp: + * ace/Svc_Conf_y.cpp: + * apps/JAWS3/jaws3/main.cpp: + * examples/Mem_Map/IO-tests/test_io.cpp: + * examples/Reactor/Multicast/client.cpp: + * examples/Reactor/Multicast/server.cpp: + * examples/Reactor/Proactor/test_aiocb_ace.cpp: + * examples/System_V_IPC/SV_Shared_Memory/SV_Shared_Memory_Test.cpp: + * netsvcs/clients/Naming/Dump_Restore/createfile.cpp: + * netsvcs/clients/Tokens/collection/collection.cpp: + * netsvcs/clients/Tokens/collection/rw_locks.cpp: + * netsvcs/clients/Tokens/deadlock/deadlock_detection_test.cpp: + * netsvcs/clients/Tokens/invariant/invariant.cpp: + * netsvcs/clients/Tokens/manual/manual.cpp: + * netsvcs/clients/Tokens/mutex/test_mutex.cpp: + * netsvcs/clients/Tokens/rw_lock/rw_locks.cpp: + * performance-tests/Misc/context_switch_time.cpp: + * performance-tests/Misc/test_guard.cpp: + * performance-tests/Server_Concurrency/Leader_Follower/RT_CORBA_Leader_Follower.cpp: + * performance-tests/Server_Concurrency/Queue_Based_Workers/RT_CORBA_Workers.cpp: + * performance-tests/TTCP/ACE-C++/wrapper-new-ttcp.cpp: + + Use ACE_TMAIN instead of main as the program entry point to comply + with ACE/TAO/CIAO coding standards. + + * examples/Mem_Map/IO-tests/Mem_Map_IO_Tests.mpc: + + MPC doesn't recognize ACE_TMAIN as an entry point, as such, we need + to explicitly set exename in the MPC file. + + * apps/JAWS/clients/WebSTONE/src/webclient.c: + * contrib/utility/Example/CommandLine/Foo/foo.cpp: + * performance-tests/Synch-Benchmarks/context.c: + * performance-tests/TTCP/C/new-ttcp.cpp: + * tests/Unload_libACE.cpp: + + Disable fuzz's check_for_improper_main_declaration check on these files. + These files don't use ACE. + +Sat Mar 1 19:09:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/auto_run_tests.pl: + Added -r as option to specify an alternate root test directory + instead of the current directory. Combined this with -l we can + then run perl scripts for testing project code. + +Thu Feb 28 16:08:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/generate_compile_stats.sh: + Added --compiler as option so that we can specify a different + compiler then gcc + +Thu Feb 28 08:32:18 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * docs/ACE-bug-process.html: + Removed cvs + +Wed Feb 27 19:28:18 UTC 2008 William Otte <wotte@william-ottes-macbook-pro.local> + + * bin/MakeProjectCreator/config/global.features: + disable mcpp by default. + +Tue Feb 26 15:52:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_openvms.GNU: + Added support for buildbits=64 + +Tue Feb 26 09:18:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_openvms.GNU: + Added some compiler flags to reduce the number of warnings/errors + in the OpenVMS builds + +Mon Feb 25 19:44:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/PerlACE/Process_Unix.pm: + * bin/PerlACE/Process_Win32.pm: + Added IgnoreHostRoot which can be set from a test script. That way + when doing cross host testing we can make sure we don't get the + executable from the host root directory. This is for example usefull + when we want to spawn perl or another system utility + + * bin/PerlACE/Run_Test.pm: + Removed commented out line + +Mon Feb 25 14:30:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_vxwork6.2.GNU: + * include/makeinclude/platform_vxwork6.3.GNU: + Added LD_PARTIALFLAGS which can be set for footprint builds + +Mon Feb 25 08:13:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/config-macros.h: + Set ACE_HAS_INTEGRAL_TYPE_THR_FUNC_RETURN when + ACE_THR_FUNC_RETURN is an integral type + + * ace/Task.cpp: + Use ACE_HAS_INTEGRAL_TYPE_THR_FUNC_RETURN to determine whether + we can do a reinterpret_cast or static_cast. This is much easier + then checking all compilers + +Sun Feb 24 19:37:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Configuration.cpp: + * ace/Configuration.h: + * ace/Configuration.inl: + Added new inline file + + * ace/Get_Opt.cpp: + Prefix increment + + * ace/Event_Handler.h: + Removed commented out code + +Sat Feb 23 06:56:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * include/makeinclude/platform_openvms.GNU: + OpenVMS doesn't have rwho + +Fri Feb 22 18:55:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Message_Queue_NT.h: + Fixed wrong include + +Fri Feb 22 14:20:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Message_Queue.{h,cpp,inl}: + * ace/Message_Queue_NT.{h,cpp,inl}: + * tests/Message_Queue_Test.cpp: + * ace/ace.mpc: + * ace/Makefile.am: + Moved ACE_Message_Queue_NT to its own file + +Fri Feb 22 08:54:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * bin/global.features: + Default optimize_collocated_invocations to 1 + +Fri Feb 22 00:34:17 UTC 2008 Steve Huston <shuston@riverace.com> + + * bin/tao_orb_tests.lst: Added !LabVIEW_RT to all tests that haven't + been adapted to the non-local filesystem mechanism I invented to run + tests for LabVIEW RT targets (and can also be used for other target + types). Now I can enable TAO tests for the LabVIEW RT scoreboard + build. + +Thu Feb 21 15:25:37 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * docs/Download.html: + Updated download links to point to x.6.3 + + * etc/index.html: + Updated for x.6.3 + +Thu Feb 21 02:34:37 CST 2008 Johnny Willemsen <jwillemsen@remedy.nl> + + * ACE version 5.6.3 released. + +Local Variables: +mode: change-log +add-log-time-format: (lambda () (progn (setq tz (getenv "TZ")) (set-time-zone-rule "UTC") (setq time (format-time-string "%a %b %e %H:%M:%S %Z %Y" (current-time))) (set-time-zone-rule tz) time)) +indent-tabs-mode: nil +End: diff --git a/ACE/Kokyu/DSRT_CV_Dispatcher_Impl_T.cpp b/ACE/Kokyu/DSRT_CV_Dispatcher_Impl_T.cpp index a5d28115fac..d9a2eebab59 100644 --- a/ACE/Kokyu/DSRT_CV_Dispatcher_Impl_T.cpp +++ b/ACE/Kokyu/DSRT_CV_Dispatcher_Impl_T.cpp @@ -13,7 +13,7 @@ ACE_RCSID(Kokyu, DSRT_CV_Dispatcher_Impl_T, "$Id$") namespace Kokyu { - + /* //@@VS: This is somehow not being recognized by MSVC, which results //in a link error. For now, the definition has been moved to the .h @@ -41,7 +41,7 @@ operator ()(const DSRT_Dispatch_Item_var<DSRT_Scheduler_Traits>& item1, template <class DSRT_Scheduler_Traits> DSRT_CV_Dispatcher_Impl<DSRT_Scheduler_Traits>:: -DSRT_CV_Dispatcher_Impl (ACE_Sched_Params::Policy sched_policy, +DSRT_CV_Dispatcher_Impl (ACE_Sched_Params::Policy sched_policy, int sched_scope) :DSRT_Dispatcher_Impl<DSRT_Scheduler_Traits> (sched_policy, sched_scope), run_cond_ (run_cond_lock_) @@ -61,16 +61,16 @@ schedule_i (Guid_t id, const DSRT_QoSDescriptor& qos) { #ifdef KOKYU_DSRT_LOGGING - ACE_DEBUG ((LM_DEBUG, - "(%t|%T):schedule_i enter\n")); + ACE_DEBUG ((LM_DEBUG, + "(%t|%T):schedule_i enter\n")); #endif DSRT_Dispatch_Item<DSRT_Scheduler_Traits>* item; ACE_hthread_t thr_handle; ACE_Thread::self (thr_handle); - if (ACE_OS::thr_setprio (thr_handle, - this->blocked_prio_, + if (ACE_OS::thr_setprio (thr_handle, + this->blocked_prio_, this->sched_policy_) == -1) { ACE_ERROR_RETURN ((LM_ERROR, @@ -90,10 +90,10 @@ schedule_i (Guid_t id, const DSRT_QoSDescriptor& qos) #ifdef KOKYU_DSRT_LOGGING this->ready_queue_.dump (); - ACE_DEBUG ((LM_DEBUG, - "(%t|%T):schedule_i after ready_q.insert\n")); + ACE_DEBUG ((LM_DEBUG, + "(%t|%T):schedule_i after ready_q.insert\n")); #endif - + DSRT_Dispatch_Item_var<DSRT_Scheduler_Traits> item_var; ACE_GUARD_RETURN (ACE_SYNCH_MUTEX, cond_guard, run_cond_lock_, -1); @@ -104,25 +104,25 @@ schedule_i (Guid_t id, const DSRT_QoSDescriptor& qos) ACE_hthread_t most_eligible_thr_handle = item_var->thread_handle (); #ifdef KOKYU_DSRT_LOGGING - ACE_DEBUG ((LM_DEBUG, - "(%t|%T):curr thr handle = %d\n", - thr_handle)); - ACE_DEBUG ((LM_DEBUG, - "(%t|%T):curr scheduled thr handle = %d\n", - this->curr_scheduled_thr_handle_)); - ACE_DEBUG ((LM_DEBUG, - "(%t|%T):most eligible thr handle = %d \n", - most_eligible_thr_handle)); + ACE_DEBUG ((LM_DEBUG, + "(%t|%T):curr thr handle = %d\n", + thr_handle)); + ACE_DEBUG ((LM_DEBUG, + "(%t|%T):curr scheduled thr handle = %d\n", + this->curr_scheduled_thr_handle_)); + ACE_DEBUG ((LM_DEBUG, + "(%t|%T):most eligible thr handle = %d\n", + most_eligible_thr_handle)); #endif if (this->curr_scheduled_thr_handle_ == thr_handle && most_eligible_thr_handle != thr_handle) { #ifdef KOKYU_DSRT_LOGGING - ACE_DEBUG ((LM_DEBUG, + ACE_DEBUG ((LM_DEBUG, "(%t|%T):curr sched thr handle = thr_handle & " "most eligible thr handle != curr thr handle. " - "about to do a broadcast on CV to wake up most eligible\n")); + "about to do a broadcast on CV to wake up most eligible\n")); #endif this->curr_scheduled_thr_handle_ = most_eligible_thr_handle; //wake up the most eligible thread @@ -133,20 +133,20 @@ schedule_i (Guid_t id, const DSRT_QoSDescriptor& qos) //if the current thread is most eligible, but some thread is //scheduled currently, then wait. while (most_eligible_thr_handle != thr_handle || - (most_eligible_thr_handle == thr_handle && + (most_eligible_thr_handle == thr_handle && this->curr_scheduled_thr_handle_ != thr_handle && this->curr_scheduled_thr_handle_ != 0)) { ACE_Time_Value tv (60,0); tv += ACE_OS::gettimeofday (); - //wait a maximum of 1 min. This is an escape latch against lockups. + //wait a maximum of 1 min. This is an escape latch against lockups. #ifdef KOKYU_DSRT_LOGGING - ACE_DEBUG ((LM_DEBUG, + ACE_DEBUG ((LM_DEBUG, "(%t|%T): About to block on cv\n")); #endif - if (this->run_cond_.wait (&tv) == -1) + if (this->run_cond_.wait (&tv) == -1) { - ACE_ERROR ((LM_ERROR, + ACE_ERROR ((LM_ERROR, "(%t|%T): run_cond.wait timed out -- Possible Lockup\n")); } this->ready_queue_.most_eligible (item_var); @@ -156,23 +156,23 @@ schedule_i (Guid_t id, const DSRT_QoSDescriptor& qos) this->curr_scheduled_thr_handle_ = most_eligible_thr_handle; #ifdef KOKYU_DSRT_LOGGING - ACE_DEBUG ((LM_DEBUG, + ACE_DEBUG ((LM_DEBUG, "(%t|%T): %d is currently running\n", thr_handle)); #endif - if (ACE_OS::thr_setprio (thr_handle, - this->active_prio_, + if (ACE_OS::thr_setprio (thr_handle, + this->active_prio_, this->sched_policy_) == -1) { ACE_ERROR ((LM_ERROR, ACE_TEXT ("%p\n"), ACE_TEXT ("thr_setprio failed"))); } - + #ifdef KOKYU_DSRT_LOGGING - ACE_DEBUG ((LM_DEBUG, - "(%t|%T):schedule_i exit\n")); + ACE_DEBUG ((LM_DEBUG, + "(%t|%T):schedule_i exit\n")); #endif return 0; @@ -181,7 +181,7 @@ schedule_i (Guid_t id, const DSRT_QoSDescriptor& qos) template <class DSRT_Scheduler_Traits> int DSRT_CV_Dispatcher_Impl<DSRT_Scheduler_Traits>:: update_schedule_i (Guid_t guid, const DSRT_QoSDescriptor& qos) -{ +{ return this->schedule_i (guid, qos); } @@ -205,8 +205,8 @@ update_schedule_i (Guid_t guid, Block_Flag_t flag) if (found == 0) ACE_DEBUG ((LM_DEBUG, "(%t|%T): %d found in ready queue\n", thr_handle)); else - ACE_DEBUG ((LM_DEBUG, "(%t|%T): %d not found in ready queue\n", - thr_handle)); + ACE_DEBUG ((LM_DEBUG, "(%t|%T): %d not found in ready queue\n", + thr_handle)); #endif if (found == 0 && flag == BLOCK) @@ -217,8 +217,8 @@ update_schedule_i (Guid_t guid, Block_Flag_t flag) ACE_DEBUG ((LM_DEBUG, "(%t|%T): update schedule: %d found\n", thr_handle)); #endif - if (ACE_OS::thr_setprio (thr_handle, - this->blocked_prio_, + if (ACE_OS::thr_setprio (thr_handle, + this->blocked_prio_, this->sched_policy_) == -1) { ACE_ERROR ((LM_ERROR, diff --git a/ACE/Kokyu/DSRT_Direct_Dispatcher_Impl_T.cpp b/ACE/Kokyu/DSRT_Direct_Dispatcher_Impl_T.cpp index ebbea987c50..5339fe8a3b8 100644 --- a/ACE/Kokyu/DSRT_Direct_Dispatcher_Impl_T.cpp +++ b/ACE/Kokyu/DSRT_Direct_Dispatcher_Impl_T.cpp @@ -149,7 +149,7 @@ DSRT_Direct_Dispatcher_Impl<DSRT_Scheduler_Traits>::svc (void) "(%t|%T):curr scheduled thr handle = %d\n", this->curr_scheduled_thr_handle_)); ACE_DEBUG ((LM_DEBUG, - "(%t|%T):most eligible thr handle = %d \n", + "(%t|%T):most eligible thr handle = %d\n", most_eligible_thr_handle)); #endif diff --git a/ACE/Kokyu/tests/DSRT_MIF/MIF.cpp b/ACE/Kokyu/tests/DSRT_MIF/MIF.cpp index 4c943533ad6..e5fd6f5cdff 100644 --- a/ACE/Kokyu/tests/DSRT_MIF/MIF.cpp +++ b/ACE/Kokyu/tests/DSRT_MIF/MIF.cpp @@ -108,7 +108,7 @@ int MyTask::svc (void) seconds_tracker.set (0,0); ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) Currently running guid=%d") - ACE_TEXT (", qos_.importance=%d \n"), + ACE_TEXT (", qos_.importance=%d\n"), guid_, qos_.importance_)); } timer.reset (); @@ -3,14 +3,72 @@ PLANNED MAJOR CHANGES "SOMETIME IN THE FUTURE" (i.e., exact beta not known) . RPM packaging as part of the release process by the doc_group (Remedy and user community) -. Remove BCB6, BCB2006 support after the release of x.6.6 +USER VISIBLE CHANGES BETWEEN ACE-5.6.8 and ACE-5.6.9 +==================================================== + +. Removed Borland/CodeGear C++ Builder 2007 support + +USER VISIBLE CHANGES BETWEEN ACE-5.6.7 and ACE-5.6.8 +==================================================== + +. Added a new function ACE::isdotdir() which determines if a specified + pathname is "dot dir" (ie. "." or ".."). ACE::isdotdir() is significantly + faster than pair of strcmp() calls. + +. Last micro release that is maintained for Borland/CodeGear C++ + Builder 2007 and Intel C++ on Windows. + +. Fixed crash when ACE thread tries to inherit the logging attributes + from non ACE threads. + +. Fixed many small compile and test errors that occur on some platforms. + +. Fixed log output formatting on some platforms. + +. Bugs fixed: 2748, 3164, 3480, 3494, 3502, 3541, 3542, 3544, 3557. USER VISIBLE CHANGES BETWEEN ACE-5.6.6 and ACE-5.6.7 ==================================================== +. Changed the automake build's feature test for a "usable" config + to warn on failure instead of exiting with an error. This should + make it easier to diagnose configure failures, as the script will + now generate a config.h file even when the test fails. + . Removed borland MPC template, use the bmake template from now -. Added Windows Mobile 6 support +. Added Windows Mobile 6 support and improved the WinCE port + +. Removed BCB6 and BCB2006 support + +. Added BCB2009 MPC template + +. Updated stat struct on Windows CE to match the stat struct on other + platforms so that application code can be written portable + +. Added new ACE_OS wrappers: raise, atof, atol, isblank, isascii, + isctype, and iswctype + +. Added ACE_OS wrapper for narrow-char version of strtoll. + +. ACE_OS wrappers for wide-char versions of strtol, strtoul, + strtoll, and strtoll. + +. Added Visual Studio 2010 (vc10) support + +. Added a new feature for the "Traditional Make" build facility to allow + building for multiple architectures out of a single source directory. + To use this facility, set the ARCH make variable. The ARCH value will be + used to add a subdirectory layer below the source directory where the + traditional .shobj, .obj, etc. directories will be placed. + +. Added support for HP-UX 11iv3 on Integrity using aC++ + +. ACE (and TAO) can now be built using GNU make and the Microsoft Visual C++ + compiler and linker. See include/makeinclude/platform_win32_msvc.GNU for + more details. + +. Added support for FC10 USER VISIBLE CHANGES BETWEEN ACE-5.6.5 and ACE-5.6.6 ==================================================== diff --git a/ACE/PROBLEM-REPORT-FORM b/ACE/PROBLEM-REPORT-FORM index 5382135f458..0fc99cde267 100644 --- a/ACE/PROBLEM-REPORT-FORM +++ b/ACE/PROBLEM-REPORT-FORM @@ -43,7 +43,7 @@ To: ace-bugs@cs.wustl.edu Subject: [area]: [synopsis] - ACE VERSION: 5.6.6 + ACE VERSION: 5.6.8 HOST MACHINE and OPERATING SYSTEM: If on Windows based OS's, which version of WINSOCK do you diff --git a/ACE/THANKS b/ACE/THANKS index d9ea09bfcf1..e4ae477f8bb 100644 --- a/ACE/THANKS +++ b/ACE/THANKS @@ -1,4 +1,4 @@ -ACKNOWLEDGEMENTS +ACKNOWLEDGEMENTSACKNOWLEDGEMENTS ACE and TAO have been deeply influenced and improved by the following members of my research group at Washington University in St. Louis, the @@ -2121,7 +2121,6 @@ Popeye Cai <popeye dot cai at utstar dot com> David Highley <dhighley at highley-recommended dot com> Sonicfly Zhou <zhoucn at txsec dot com> Phil Billingham <phil_billingham at ml dot com> -David Giovannini <giovannd at ociweb dot com> Paul Daugherty <Paul at nextalk dot com> Robert Schwebel <robert at schwebel dot de> William Cote <William dot Cote at hp dot com> @@ -2261,6 +2260,24 @@ Nathalie D'Amours <nathalie at bearsontheloose dot com> Mele Giovanni <giovanni dot mele at nagra dot com> Philipp Thomas <pth at suse dot de> Mark Hebbel <Mark dot Hebbel at baslerweb dot com> +Tim Pollock <pollockt at ociweb dot com> +Jack Lavender <jack dot lavender at seconcepts dot com> +Alexandre Skrzyniarz <alexandre dot skrzyniarz at fr dot thalesgroup dot com> +E Vahala <erkki dot vahala at pp dot inet dot fi> +Christian Fromme <kaner dot strace dot org> +Daniel Lang <danial dot lang at alphagate dot at> +Greg Bothe <ace at netrats dot net> +Anand Kumar <anandkumar95 at gmail dot com> +Joe Pallas <pallas at cs dot stanford dot edu> +Marcel Smit <msmit at remedy dot nl> +Florent Vial <florent dot vial at gmail dot com> +Pan Kai Luna <pan dot kai dot luna at gmail dot com> +Jesus Martinez <jmcruz at lcc dot uma dot es> +Martin Gaus <Gaus at gmx dot de> +Steve Stallion <stallions at ociweb dot com> +Ron van Hoof <rvhoof27 at gmail dot com> +Joe Lihn <joelihn at hotmail dot com> +Jani Hakala <jahakala at iki dot fi> I would particularly like to thank Paul Stephenson, who worked with me at Ericsson in the early 1990's. Paul devised the recursive Makefile diff --git a/ACE/VERSION b/ACE/VERSION index 0c1423ad06d..b0442babdb5 100644 --- a/ACE/VERSION +++ b/ACE/VERSION @@ -1,4 +1,4 @@ -This is ACE version 5.6.6, released Mon Sep 15 06:08:04 CDT 2008 +This is ACE version 5.6.8, released Mon Feb 09 12:01:28 CST 2009 If you have any problems with or questions about ACE, please send email to the ACE mailing list (ace-users@cs.wustl.edu), using the form diff --git a/ACE/ace/ACE.cpp b/ACE/ace/ACE.cpp index 4171ca893d4..12a55194c3d 100644 --- a/ACE/ace/ACE.cpp +++ b/ACE/ace/ACE.cpp @@ -167,7 +167,7 @@ bool ACE::debug (void) { static const char* debug = ACE_OS::getenv ("ACE_DEBUG"); - return (ACE::debug_ != 0) ? ACE::debug_ : (debug != 0 ? (*debug != '0'): false); + return (ACE::debug_ != 0) ? ACE::debug_ : (debug != 0 ? (*debug != '0') : false); } void @@ -373,7 +373,6 @@ ACE::hash_pjw (const wchar_t *str) } #endif /* ACE_HAS_WCHAR */ -#if !defined (ACE_HAS_WINCE) ACE_TCHAR * ACE::strenvdup (const ACE_TCHAR *str) { @@ -381,7 +380,6 @@ ACE::strenvdup (const ACE_TCHAR *str) return ACE_OS::strenvdup (str); } -#endif /* ACE_HAS_WINCE */ /* @@ -2330,7 +2328,7 @@ ACE::format_hexdump (const char *buffer, size_t i; - size_t lines = size / 16; + size_t const lines = size / 16; for (i = 0; i < lines; i++) { size_t j; @@ -2354,7 +2352,11 @@ ACE::format_hexdump (const char *buffer, textver[j] = 0; ACE_OS::sprintf (obuf, +#if !defined (ACE_WIN32) && defined (ACE_USES_WCHAR) + ACE_TEXT (" %ls\n"), +#else ACE_TEXT (" %s\n"), +#endif textver); while (*obuf != '\0') @@ -2395,7 +2397,11 @@ ACE::format_hexdump (const char *buffer, textver[i] = 0; ACE_OS::sprintf (obuf, +#if !defined (ACE_WIN32) && defined (ACE_USES_WCHAR) + ACE_TEXT (" %ls\n"), +#else ACE_TEXT (" %s\n"), +#endif textver); } return size; @@ -2538,14 +2544,14 @@ ACE::handle_timed_complete (ACE_HANDLE h, #else ACE_Handle_Set rd_handles; ACE_Handle_Set wr_handles; - rd_handles.set_bit (h); wr_handles.set_bit (h); #endif /* !ACE_WIN32 && ACE_HAS_POLL && ACE_HAS_LIMITED_SELECT */ #if defined (ACE_WIN32) // Winsock is different - it sets the exception bit for failed connect, - // unlike other platforms, where the read bit is set. + // unlike other platforms, where the write bit is set for both success + // and fail. ACE_Handle_Set ex_handles; ex_handles.set_bit (h); #endif /* ACE_WIN32 */ @@ -2565,11 +2571,19 @@ ACE::handle_timed_complete (ACE_HANDLE h, int n = ACE_OS::poll (&fds, 1, timeout); # else - int n = ACE_OS::select (int (h) + 1, - rd_handles, - wr_handles, - 0, - timeout); + int n = 0; + if (is_tli) + n = ACE_OS::select (int (h) + 1, + rd_handles, + wr_handles, + 0, + timeout); + else + n = ACE_OS::select (int (h) + 1, + 0, + wr_handles, + 0, + timeout); # endif /* ACE_HAS_POLL && ACE_HAS_LIMITED_SELECT */ #endif /* ACE_WIN32 */ @@ -2583,11 +2597,14 @@ ACE::handle_timed_complete (ACE_HANDLE h, return ACE_INVALID_HANDLE; } - // Usually, a ready-for-write handle is successfully connected, and - // ready-for-read (exception on Win32) is a failure. On fails, we - // need to grab the error code via getsockopt. On possible success for - // any platform where we can't tell just from select() (e.g. AIX), - // we also need to check for success/fail. + // On Windows, a ready-for-write handle is successfully connected, and + // ready-for-exception is a failure. On fails, we need to grab the error + // code via getsockopt. + // On BSD sockets using select(), the handle becomes writable on + // completion either success or fail, so if the select() does not time + // out, we need to check for success/fail. + // It is believed that TLI sockets use the readable=fail, writeable=success + // but that hasn't been as well tested. #if defined (ACE_WIN32) ACE_UNUSED_ARG (is_tli); @@ -2599,34 +2616,20 @@ ACE::handle_timed_complete (ACE_HANDLE h, need_to_check = true; known_failure = true; } -#elif defined (ACE_VXWORKS) - ACE_UNUSED_ARG (is_tli); - - // Force the check on VxWorks. The read handle for "h" is not set, - // so "need_to_check" is false at this point. The write handle is - // set, for what it's worth. - need_to_check = true; #else if (is_tli) - # if defined (ACE_HAS_POLL) && defined (ACE_HAS_LIMITED_SELECT) need_to_check = (fds.revents & POLLIN) && !(fds.revents & POLLOUT); # else - need_to_check = rd_handles.is_set (h) && !wr_handles.is_set (h); + need_to_check = rd_handles.is_set (h) && !wr_handles.is_set (h); # endif /* ACE_HAS_POLL && ACE_HAS_LIMITED_SELECT */ else -#if defined(AIX) - // AIX is broken... both success and failed connect will set the - // write handle only, so always check. - need_to_check = true; -#else # if defined (ACE_HAS_POLL) && defined (ACE_HAS_LIMITED_SELECT) - need_to_check = (fds.revents & POLLIN); + need_to_check = (fds.revents & POLLIN); # else - need_to_check = rd_handles.is_set (h); + need_to_check = true; # endif /* ACE_HAS_POLL && ACE_HAS_LIMITED_SELECT */ -#endif /* AIX */ #endif /* ACE_WIN32 */ if (need_to_check) @@ -2733,9 +2736,7 @@ ACE::handle_timed_accept (ACE_HANDLE listener, return -1; /* NOTREACHED */ case 0: - if (timeout != 0 - && timeout->sec () == 0 - && timeout->usec () == 0) + if (timeout != 0 && *timeout == ACE_Time_Value::zero) errno = EWOULDBLOCK; else errno = ETIMEDOUT; @@ -3386,27 +3387,82 @@ ACE::strnew (const wchar_t *s) } #endif /* ACE_HAS_WCHAR */ -inline static bool equal_char(char a, char b, bool case_sensitive) -{ - if (case_sensitive) - return a == b; - return ACE_OS::ace_tolower(a) == ACE_OS::ace_tolower(b); +// helper functions for ACE::wild_match() +namespace +{ + + inline bool equal_char (char a, char b, bool case_sensitive) + { + if (case_sensitive) + return a == b; + return ACE_OS::ace_tolower (a) == ACE_OS::ace_tolower (b); + } + + // precond: *p == '[' start of char class + // postcond: *p == ']' end of the char class + inline bool equal_class (char s, const char *&p, bool case_sensitive) + { + ++p; + bool negate = false; + if (*p == '!') + { + negate = true; + ++p; + } + // ] and - are regular in 1st position + for (bool first = true; *p && (first || *p != ']'); ++p) + { + if (!first && *p == '-' && p[1] != ']') + { + if (!p[1] || p[1] <= p[-1]) // invalid range + { + continue; + } + // Since we are in the POSIX locale, only the basic ASCII + // characters are allowed as the range endpoints. These characters + // are the same values in both signed and unsigned chars so we + // don't have to account for any "pathological cases." + for (char range = p[-1] + 1; range <= p[1]; ++range) + { + if (equal_char (s, range, case_sensitive)) + { + while (*++p != ']') {} + return !negate; + } + } + ++p; // consume the character 1 past the - + } + else if (equal_char (s, *p, case_sensitive)) + { + while (*++p != ']') {} + return !negate; + } + first = false; + } + return negate; + } } bool -ACE::wild_match(const char* str, const char* pat, bool case_sensitive) +ACE::wild_match(const char *str, const char *pat, bool case_sensitive, + bool character_classes) { if (str == pat) return true; if (pat == 0 || str == 0) return false; - bool star = false; - const char* s = str; - const char* p = pat; + bool star = false, escape = false; + const char *s = str; + const char *p = pat; while (*s != '\0') { - if (*p == '*') + if (!escape && *p == '\\') + { + ++p; + escape = true; + } + else if (!escape && *p == '*') { star = true; pat = p; @@ -3416,22 +3472,38 @@ ACE::wild_match(const char* str, const char* pat, bool case_sensitive) return true; p = pat; } - else if (*p == '?') + else if (!escape && *p == '?') { ++s; ++p; } - else if (! equal_char(*s, *p, case_sensitive)) + else if (!escape && character_classes && *p == '[') + { + if (equal_class (*s, p, case_sensitive)) + { + ++p; + } + else + { + if (!star) + return false; + p = pat; + } + ++s; + } + else if (!equal_char (*s, *p, case_sensitive)) { if (!star) return false; - s = ++str; + ++s; p = pat; + escape = false; } else { ++s; ++p; + escape = false; } } if (*p == '*') diff --git a/ACE/ace/ACE.h b/ACE/ace/ACE.h index 1708cb6a9e1..38f4233c8eb 100644 --- a/ACE/ace/ACE.h +++ b/ACE/ace/ACE.h @@ -90,7 +90,13 @@ namespace ACE /// Simple wildcard matching function supporting '*' and '?' /// return true if string s matches pattern. - extern ACE_Export bool wild_match(const char* s, const char* pattern, bool case_sensitive = true); + /// If character_classes is true, '[' is treated as a wildcard character + /// as described in the fnmatch() POSIX API. The following POSIX "bracket + /// expression" features are not implemented: collating symbols, equivalence + /// class expressions, and character class expressions. The POSIX locale is + /// assumed. + extern ACE_Export bool wild_match(const char* s, const char* pattern, + bool case_sensitive = true, bool character_classes = false); /** * @name I/O operations @@ -384,7 +390,6 @@ namespace ACE extern ACE_Export int max_handles (void); // = String functions -#if !defined (ACE_HAS_WINCE) /** * Return a dynamically allocated duplicate of @a str, substituting * the environment variable if @c str[0] @c == @c '$'. Note that @@ -392,7 +397,6 @@ namespace ACE * by @c ACE_OS::free. */ extern ACE_Export ACE_TCHAR *strenvdup (const ACE_TCHAR *str); -#endif /* ACE_HAS_WINCE */ /// Returns a pointer to the "end" of the string, i.e., the character /// past the '\0'. @@ -414,6 +418,9 @@ namespace ACE /// @c ACE_OS::malloc to allocate the new string. extern ACE_Export char *strnnew (const char *str, size_t n); + /// Determine if a specified pathname is "dot dir" (ie. "." or ".."). + ACE_NAMESPACE_INLINE_FUNCTION bool isdotdir (const char *s); + #if defined (ACE_HAS_WCHAR) extern ACE_Export const wchar_t *strend (const wchar_t *s); @@ -425,6 +432,8 @@ namespace ACE extern ACE_Export wchar_t *strnnew (const wchar_t *str, size_t n); + ACE_NAMESPACE_INLINE_FUNCTION bool isdotdir (const wchar_t *s); + #endif /* ACE_HAS_WCHAR */ /** diff --git a/ACE/ace/ACE.inl b/ACE/ace/ACE.inl index 573cae93357..ff48803b2a9 100644 --- a/ACE/ace/ACE.inl +++ b/ACE/ace/ACE.inl @@ -284,6 +284,22 @@ ACE::strdelete (wchar_t *s) } #endif /* ACE_HAS_WCHAR */ +ACE_INLINE bool +ACE::isdotdir (const char *s) +{ + return (s[0] == '.' && + ((s[1] == 0) || (s[1] == '.' && s[2] == 0))); +} + +#if defined (ACE_HAS_WCHAR) +ACE_INLINE bool +ACE::isdotdir (const wchar_t *s) +{ + return (s[0] == ACE_TEXT ('.') && + ((s[1] == 0) || (s[1] == ACE_TEXT ('.') && s[2] == 0))); +} +#endif /* ACE_HAS_WCHAR */ + ACE_INLINE void ACE::unique_name (const void *object, ACE_TCHAR *name, diff --git a/ACE/ace/ATM_Acceptor.cpp b/ACE/ace/ATM_Acceptor.cpp index 41112db9de5..6c725566315 100644 --- a/ACE/ace/ATM_Acceptor.cpp +++ b/ACE/ace/ATM_Acceptor.cpp @@ -81,7 +81,7 @@ ACE_ATM_Acceptor::get_local_addr (ACE_ATM_Addr &local_addr) return -1; } - return (0); + return 0; #else ACE_UNUSED_ARG (local_addr); @@ -298,7 +298,7 @@ ACE_ATM_Acceptor::accept (ACE_ATM_Stream &new_sap, ACE_UNUSED_ARG (reset_new_handle); ACE_UNUSED_ARG (params); ACE_UNUSED_ARG (qos); - return (0); + return 0; #endif /* ACE_HAS_FORE_ATM_XTI */ } diff --git a/ACE/ace/ATM_Addr.cpp b/ACE/ace/ATM_Addr.cpp index 19088cef5b1..58f1e95263d 100644 --- a/ACE/ace/ATM_Addr.cpp +++ b/ACE/ace/ATM_Addr.cpp @@ -338,7 +338,7 @@ ACE_ATM_Addr::string_to_addr (const ACE_TCHAR sap[]) } if (WSALookupServiceEnd (hLookup) == SOCKET_ERROR) { - ACE_OS::printf ("Error : WSALookupServiceEnd failed! %d \n", + ACE_OS::printf ("Error : WSALookupServiceEnd failed! %d\n", ::WSAGetLastError ()); errno = EINVAL; return -1; diff --git a/ACE/ace/ATM_Connector.inl b/ACE/ace/ATM_Connector.inl index ef0773b8930..dcf4b80284a 100644 --- a/ACE/ace/ATM_Connector.inl +++ b/ACE/ace/ATM_Connector.inl @@ -96,7 +96,7 @@ ACE_ATM_Connector::add_leaf (ACE_ATM_Stream ¤t_stream, return (result != ACE_INVALID_HANDLE); #elif defined (ACE_HAS_LINUX_ATM) - ACE_OS::printf("ATM_Connector(add_leaf): not yet implemented in Linux \n"); + ACE_OS::printf("ATM_Connector(add_leaf): not yet implemented in Linux\n"); ACE_UNUSED_ARG(current_stream); ACE_UNUSED_ARG(remote_sap); diff --git a/ACE/ace/ATM_QoS.cpp b/ACE/ace/ATM_QoS.cpp index 6a7e6d4f463..b30bc406626 100644 --- a/ACE/ace/ATM_QoS.cpp +++ b/ACE/ace/ATM_QoS.cpp @@ -451,7 +451,7 @@ ACE_ATM_QoS::construct_options (ACE_HANDLE fd, ACE_UNUSED_ARG (rate); ACE_UNUSED_ARG (flags); ACE_UNUSED_ARG (len); - return (0); + return 0; #elif defined (ACE_HAS_FORE_ATM_XTI) struct t_opthdr *popt; char *buf; @@ -621,7 +621,7 @@ ACE_ATM_QoS::construct_options (ACE_HANDLE fd, ACE_UNUSED_ARG (rate); ACE_UNUSED_ARG (flag); ACE_UNUSED_ARG (len); - return (0); + return 0; #endif /* ACE_HAS_FORE_ATM_WS2 */ } diff --git a/ACE/ace/ATM_Stream.cpp b/ACE/ace/ATM_Stream.cpp index 21035b97f52..62e79af1b23 100644 --- a/ACE/ace/ATM_Stream.cpp +++ b/ACE/ace/ATM_Stream.cpp @@ -216,7 +216,7 @@ ACE_ATM_Stream::get_vpi_vci (ACE_UINT16 &vpi, vpi = conn_prop.vpi; vci = conn_prop.vci; - return (0); + return 0; #elif defined (ACE_HAS_FORE_ATM_WS2) ATM_CONNECTION_ID connID; DWORD bytes = 0; @@ -278,10 +278,10 @@ ACE_ATM_Stream::get_vpi_vci (ACE_UINT16 &vpi, ACE_UNUSED_ARG (vci); ACE_UNUSED_ARG (vpi); - return (-1); + return -1; #endif /* SO_ATMPVC || SO_VCID */ #else - return (-1); + return -1; #endif /* ACE_HAS_FORE_ATM_XTI || ACE_HAS_FORE_ATM_WS2 || ACE_HAS_LINUX_ATM */ } diff --git a/ACE/ace/ATM_Stream.inl b/ACE/ace/ATM_Stream.inl index b796af474e7..1c0420e8db5 100644 --- a/ACE/ace/ATM_Stream.inl +++ b/ACE/ace/ATM_Stream.inl @@ -103,7 +103,7 @@ ACE_ATM_Stream::recv (void *buf, ACE_UNUSED_ARG(buf); ACE_UNUSED_ARG(n); ACE_UNUSED_ARG(flags); - return (0); + return 0; #endif /* ACE_HAS_FORE_ATM_XTI */ } @@ -126,7 +126,7 @@ ACE_ATM_Stream::send_n (const void *buf, ACE_UNUSED_ARG(buf); ACE_UNUSED_ARG(n); ACE_UNUSED_ARG(flags); - return (0); + return 0; #endif /* ACE_HAS_FORE_ATM_XTI */ } diff --git a/ACE/ace/Acceptor.h b/ACE/ace/Acceptor.h index 6a024bca6ff..499bfc38277 100644 --- a/ACE/ace/Acceptor.h +++ b/ACE/ace/Acceptor.h @@ -89,7 +89,7 @@ public: * @param use_select Affects behavior when called back by the reactor * when a connection can be accepted. If non-zero, * this object will accept all pending connections, - * intead of just the one that triggered the reactor + * instead of just the one that triggered the reactor * callback. Uses ACE_OS::select() internally to * detect any remaining acceptable connections. * The default is 1. @@ -128,7 +128,7 @@ public: * @param use_select Affects behavior when called back by the reactor * when a connection can be accepted. If non-zero, * this object will accept all pending connections, - * intead of just the one that triggered the reactor + * instead of just the one that triggered the reactor * callback. Uses ACE_OS::select() internally to * detect any remaining acceptable connections. * The default is 1. @@ -187,7 +187,7 @@ protected: /** * Bridge method for accepting the new connection into the - * <svc_handler>. The default behavior delegates to the + * @a svc_handler. The default behavior delegates to the * PEER_ACCEPTOR::accept. */ virtual int accept_svc_handler (SVC_HANDLER *svc_handler); @@ -293,8 +293,6 @@ public: typedef ACE_Concurrency_Strategy<SVC_HANDLER> CONCURRENCY_STRATEGY; typedef ACE_Scheduling_Strategy<SVC_HANDLER> SCHEDULING_STRATEGY; - - /// Default constructor. ACE_Strategy_Acceptor (const ACE_TCHAR service_name[] = 0, const ACE_TCHAR service_description[] = 0, @@ -341,7 +339,7 @@ public: * @param use_select Affects behavior when called back by the reactor * when a connection can be accepted. If non-zero, * this object will accept all pending connections, - * intead of just the one that triggered the reactor + * instead of just the one that triggered the reactor * callback. Uses ACE_OS::select() internally to * detect any remaining acceptable connections. * The default is 1. diff --git a/ACE/ace/Activation_Queue.cpp b/ACE/ace/Activation_Queue.cpp index aef17d05e7a..324a26bcce3 100644 --- a/ACE/ace/Activation_Queue.cpp +++ b/ACE/ace/Activation_Queue.cpp @@ -23,7 +23,7 @@ ACE_Activation_Queue::dump (void) const ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("delete_queue_ = %d\n"), this->delete_queue_)); - ACE_DEBUG ((LM_INFO, ACE_TEXT ("queue_: \n"))); + ACE_DEBUG ((LM_INFO, ACE_TEXT ("queue_:\n"))); if (this->queue_) this->queue_->dump(); else diff --git a/ACE/ace/Active_Map_Manager.h b/ACE/ace/Active_Map_Manager.h index 1281302fdf8..c9cc0349958 100644 --- a/ACE/ace/Active_Map_Manager.h +++ b/ACE/ace/Active_Map_Manager.h @@ -78,7 +78,7 @@ public: // = This really should be protected but because of template // friends, they are not. - /// Increment the <slot_generation> number. + /// Increment the slot_generation number. void increment_slot_generation_count (void); private: diff --git a/ACE/ace/Active_Map_Manager_T.h b/ACE/ace/Active_Map_Manager_T.h index 34b5a475652..2ab3d35e1e6 100644 --- a/ACE/ace/Active_Map_Manager_T.h +++ b/ACE/ace/Active_Map_Manager_T.h @@ -53,22 +53,22 @@ public: typedef REVERSE_ITERATOR reverse_iterator; // = Initialization and termination methods. - /// Initialize a <Active_Map_Manager> with the ACE_DEFAULT_MAP_SIZE. + /// Initialize a Active_Map_Manager with the ACE_DEFAULT_MAP_SIZE. ACE_Active_Map_Manager (ACE_Allocator *alloc = 0); - /// Initialize a <Active_Map_Manager> with @a size entries. + /// Initialize a Active_Map_Manager with @a size entries. ACE_Active_Map_Manager (size_t size, ACE_Allocator *alloc = 0); - /// Close down a <Active_Map_Manager> and release dynamically + /// Close down a Active_Map_Manager and release dynamically /// allocated resources. ~ACE_Active_Map_Manager (void); - /// Initialize a <Active_Map_Manager> with size @a length. + /// Initialize a Active_Map_Manager with size @a length. int open (size_t length = ACE_DEFAULT_MAP_SIZE, ACE_Allocator *alloc = 0); - /// Close down a <Active_Map_Manager> and release dynamically + /// Close down a Active_Map_Manager and release dynamically /// allocated resources. int close (void); @@ -84,8 +84,8 @@ public: /** * Reserves a slot in the internal structure and returns the key and * a pointer to the value. User should place their @a value into - * <*internal_value>. This method is useful in reducing the number - * of copies required in some cases. Note that <internal_value> is + * @a internal_value. This method is useful in reducing the number + * of copies required in some cases. Note that @a internal_value is * only a temporary pointer and will change when the map resizes. * Therefore, the user should use the pointer immediately and not * hold on to it. @@ -126,8 +126,8 @@ public: /** * Locate @a value associated with @a key. The value is returned via - * <internal_value> and hence a copy is saved. Note that - * <internal_value> is only a temporary pointer and will change when + * @a internal_value and hence a copy is saved. Note that + * @a internal_value is only a temporary pointer and will change when * the map resizes. Therefore, the user should use the pointer * immediately and not hold on to it. */ @@ -148,8 +148,8 @@ public: /** * Locate @a value associated with @a key. The value is returned via - * <internal_value> and hence a copy is saved. Note that - * <internal_value> is only a temporary pointer and will change when + * @a internal_value and hence a copy is saved. Note that + * @a internal_value is only a temporary pointer and will change when * the map resizes or when this slot is reused. Therefore, the user * should use the pointer immediately and not hold on to it. */ diff --git a/ACE/ace/Arg_Shifter.cpp b/ACE/ace/Arg_Shifter.cpp index 36c265c6d5a..8c98daf2946 100644 --- a/ACE/ace/Arg_Shifter.cpp +++ b/ACE/ace/Arg_Shifter.cpp @@ -133,8 +133,7 @@ ACE_Arg_Shifter_T<CHAR_TYPE>::cur_arg_strncasecmp (const CHAR_TYPE *flag) flag, flag_length) == 0) { - if (ACE_OS::strlen(temp_[current_index_]) == - flag_length) + if (ACE_OS::strlen(temp_[current_index_]) == flag_length) { // match and lengths are equal return 0; diff --git a/ACE/ace/Arg_Shifter.h b/ACE/ace/Arg_Shifter.h index 409ffa03a88..8439e92ef51 100644 --- a/ACE/ace/Arg_Shifter.h +++ b/ACE/ace/Arg_Shifter.h @@ -106,7 +106,7 @@ public: * If the current argument does not match flag * If there is no parameter found after a 'matched' flag * - * If the flag is matched and the flag and paramter DO NOT RUN + * If the flag is matched and the flag and parameter DO NOT RUN * together, the flag is consumed, the parameter is returned, * and the new current argument is the parameter value. * ie '-foobarflag VALUE' leaves the new cur arg == "VALUE" @@ -118,7 +118,7 @@ public: const CHAR_TYPE *get_the_parameter (const CHAR_TYPE* flag); /** - * Check if the current argument matches (case insensitive) <flag> + * Check if the current argument matches (case insensitive) @a flag * * ------------------------------------------------------------ * diff --git a/ACE/ace/Argv_Type_Converter.h b/ACE/ace/Argv_Type_Converter.h index 205fa10c983..6d01c05faee 100644 --- a/ACE/ace/Argv_Type_Converter.h +++ b/ACE/ace/Argv_Type_Converter.h @@ -29,7 +29,7 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL * * @brief To convert 'char' input/command line parameter to 'wchar_t'. * - * This class is to convert 'char' type command line paramter to + * This class is to convert 'char' type command line parameter to * wide-character (wchar_t) format and stores the copy of it. * This is useful for all classes that use 'char**' argv but cannot * be converted into 'ACE_TCHAR**' version. @@ -54,7 +54,7 @@ public: /// Returns the pointer of ASCII (char) command line. char** get_ASCII_argv (void); - /// Returns the number of sub paramters (argc). + /// Returns the number of sub parameters (argc). int& get_argc (void); private: @@ -83,7 +83,7 @@ private: #endif // ACE_USES_WCHAR private: - /// Original number of input paramter, same as 'argc'. + /// Original number of input parameter, same as 'argc'. int &saved_argc_; /// Data member pointer that contains converted argv in ACE_ANTI_TCHAR. diff --git a/ACE/ace/Array_Base.h b/ACE/ace/Array_Base.h index 210bab6d46d..0110a5224a9 100644 --- a/ACE/ace/Array_Base.h +++ b/ACE/ace/Array_Base.h @@ -118,7 +118,7 @@ public: size_type size (void) const; /** - * Changes the size of the array to match <new_size>. + * Changes the size of the array to match @a new_size. * It copies the old contents into the new array. * Return -1 on failure. */ @@ -128,7 +128,7 @@ public: size_type max_size (void) const; /** - * Changes the size of the array to match <new_size>. + * Changes the size of the array to match @a new_size. * It copies the old contents into the new array. * Return -1 on failure. * It does not affect new_size @@ -166,11 +166,11 @@ public: protected: /// Returns 1 if @a slot is within range, i.e., 0 >= @a slot < - /// <cur_size_>, else returns 0. + /// @c cur_size_, else returns 0. bool in_range (size_type slot) const; - /// Maximum size of the array, i.e., the total number of <T> elements - /// in <array_>. + /// Maximum size of the array, i.e., the total number of @c T elements + /// in @c array_. size_type max_size_; /** @@ -212,7 +212,7 @@ public: // = Iteration methods. - /// Pass back the <next_item> that hasn't been seen in the Array. + /// Pass back the @a next_item that hasn't been seen in the Array. /// Returns 0 when all items have been seen, else 1. int next (T *&next_item); diff --git a/ACE/ace/Array_Map.h b/ACE/ace/Array_Map.h index cd0ae3efea6..02027f843a1 100644 --- a/ACE/ace/Array_Map.h +++ b/ACE/ace/Array_Map.h @@ -41,7 +41,7 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL * (i.e. O(n)) search times. * * Map implementation that focuses on small footprint and fast - * iteration. Search times are, however, linear (O(n)) meaning that + * iteration. Search times are, however, linear (O(n)) meaning that * this map isn't suitable for large data sets that will be searched * in performance critical areas of code. Iteration over large data * sets, however, is faster than linked list-based maps, for example, @@ -159,7 +159,7 @@ public: /// Return @c true if the map is empty, else @c false. bool is_empty (void) const; // ACE style - /** + /** * Return @c true if the map is empty, else @c false. We recommend * using @c is_empty() instead since it's more consistent with the * ACE container naming conventions. diff --git a/ACE/ace/Barrier.cpp b/ACE/ace/Barrier.cpp index 2cb82dba5b6..eac2da3179b 100644 --- a/ACE/ace/Barrier.cpp +++ b/ACE/ace/Barrier.cpp @@ -31,8 +31,7 @@ ACE_Sub_Barrier::dump (void) const ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this)); this->barrier_finished_.dump (); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("running_threads_ = %d"), this->running_threads_)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("running_threads_ = %d\n"), this->running_threads_)); ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP)); #endif /* ACE_HAS_DUMP */ } diff --git a/ACE/ace/Basic_Types.h b/ACE/ace/Basic_Types.h index b30d68a56be..0643cac467e 100644 --- a/ACE/ace/Basic_Types.h +++ b/ACE/ace/Basic_Types.h @@ -707,94 +707,166 @@ ACE_END_VERSIONED_NAMESPACE_DECL # define ACE_INT64_LITERAL(n) n ## ll # endif /* ! ACE_WIN32 && ! ACE_LACKS_LONGLONG_T */ +#if !defined (ACE_INT8_FORMAT_SPECIFIER_ASCII) +# if defined (PRId8) +# define ACE_INT8_FORMAT_SPECIFIER_ASCII "%" PRId8 +# else +# define ACE_INT8_FORMAT_SPECIFIER_ASCII "%d" +# endif /* defined (PRId8) */ +#endif /* ACE_INT8_FORMAT_SPECIFIER_ASCII */ + #if !defined (ACE_INT8_FORMAT_SPECIFIER) # if defined (PRId8) # define ACE_INT8_FORMAT_SPECIFIER ACE_TEXT ("%") ACE_TEXT (PRId8) # else -# define ACE_INT8_FORMAT_SPECIFIER ACE_TEXT ("%d") +# define ACE_INT8_FORMAT_SPECIFIER ACE_TEXT (ACE_INT8_FORMAT_SPECIFIER) # endif /* defined (PRId8) */ #endif /* ACE_INT8_FORMAT_SPECIFIER */ +#if !defined (ACE_UINT8_FORMAT_SPECIFIER_ASCII) +# if defined (PRIu8) +# define ACE_UINT8_FORMAT_SPECIFIER_ASCII "%" PRIu8 +# else +# define ACE_UINT8_FORMAT_SPECIFIER_ASCII "%u" +# endif /* defined (PRIu8) */ +#endif /* ACE_UINT8_FORMAT_SPECIFIER */ + #if !defined (ACE_UINT8_FORMAT_SPECIFIER) # if defined (PRIu8) # define ACE_UINT8_FORMAT_SPECIFIER ACE_TEXT ("%") ACE_TEXT (PRIu8) # else -# define ACE_UINT8_FORMAT_SPECIFIER ACE_TEXT ("%u") +# define ACE_UINT8_FORMAT_SPECIFIER ACE_TEXT (ACE_UINT8_FORMAT_SPECIFIER_ASCII) # endif /* defined (PRIu8) */ #endif /* ACE_UINT8_FORMAT_SPECIFIER */ +#if !defined (ACE_INT16_FORMAT_SPECIFIER_ASCII) +# if defined (PRId16) +# define ACE_INT16_FORMAT_SPECIFIER_ASCII "%" PRId16 +# else +# define ACE_INT16_FORMAT_SPECIFIER_ASCII "%d" +# endif /* defined (PRId16) */ +#endif /* ACE_INT16_FORMAT_SPECIFIER */ + #if !defined (ACE_INT16_FORMAT_SPECIFIER) # if defined (PRId16) # define ACE_INT16_FORMAT_SPECIFIER ACE_TEXT ("%") ACE_TEXT (PRId16) # else -# define ACE_INT16_FORMAT_SPECIFIER ACE_TEXT ("%d") +# define ACE_INT16_FORMAT_SPECIFIER ACE_TEXT (ACE_INT16_FORMAT_SPECIFIER_ASCII) # endif /* defined (PRId16) */ #endif /* ACE_INT16_FORMAT_SPECIFIER */ +#if !defined (ACE_UINT16_FORMAT_SPECIFIER_ASCII) +# if defined (PRIu16) +# define ACE_UINT16_FORMAT_SPECIFIER_ASCII "%" PRIu16 +# else +# define ACE_UINT16_FORMAT_SPECIFIER_ASCII "%u" +# endif /* defined (PRIu16) */ +#endif /* ACE_UINT16_FORMAT_SPECIFIER */ + #if !defined (ACE_UINT16_FORMAT_SPECIFIER) # if defined (PRIu16) # define ACE_UINT16_FORMAT_SPECIFIER ACE_TEXT ("%") ACE_TEXT (PRIu16) # else -# define ACE_UINT16_FORMAT_SPECIFIER ACE_TEXT ("%u") +# define ACE_UINT16_FORMAT_SPECIFIER ACE_TEXT (ACE_UINT16_FORMAT_SPECIFIER_ASCII) # endif /* defined (PRIu16) */ #endif /* ACE_UINT16_FORMAT_SPECIFIER */ +#if !defined (ACE_INT32_FORMAT_SPECIFIER_ASCII) +# if defined (PRId32) +# define ACE_INT32_FORMAT_SPECIFIER_ASCII "%" PRId32 +# elif ACE_SIZEOF_INT == 4 +# define ACE_INT32_FORMAT_SPECIFIER_ASCII "%d" +# else +# define ACE_INT32_FORMAT_SPECIFIER_ASCII "%ld" +# endif /* defined (PRId32) */ +#endif /* ACE_INT32_FORMAT_SPECIFIER */ + #if !defined (ACE_INT32_FORMAT_SPECIFIER) # if defined (PRId32) # define ACE_INT32_FORMAT_SPECIFIER ACE_TEXT ("%") ACE_TEXT (PRId32) -# elif ACE_SIZEOF_INT == 4 -# define ACE_INT32_FORMAT_SPECIFIER ACE_TEXT ("%d") # else -# define ACE_INT32_FORMAT_SPECIFIER ACE_TEXT ("%ld") +# define ACE_INT32_FORMAT_SPECIFIER ACE_TEXT (ACE_INT32_FORMAT_SPECIFIER_ASCII) # endif /* defined (PRId32) */ #endif /* ACE_INT32_FORMAT_SPECIFIER */ +#if !defined (ACE_UINT32_FORMAT_SPECIFIER_ASCII) +# if defined (PRIu32) +# define ACE_UINT32_FORMAT_SPECIFIER_ASCII "%" PRIu32 +# elif ACE_SIZEOF_INT == 4 +# define ACE_UINT32_FORMAT_SPECIFIER_ASCII "%u" +# else +# define ACE_UINT32_FORMAT_SPECIFIER_ASCII "%lu" +# endif /* defined (PRIu32) */ +#endif /* ACE_UINT32_FORMAT_SPECIFIER */ + #if !defined (ACE_UINT32_FORMAT_SPECIFIER) # if defined (PRIu32) # define ACE_UINT32_FORMAT_SPECIFIER ACE_TEXT ("%") ACE_TEXT (PRIu32) -# elif ACE_SIZEOF_INT == 4 -# define ACE_UINT32_FORMAT_SPECIFIER ACE_TEXT ("%u") # else -# define ACE_UINT32_FORMAT_SPECIFIER ACE_TEXT ("%lu") +# define ACE_UINT32_FORMAT_SPECIFIER ACE_TEXT (ACE_UINT32_FORMAT_SPECIFIER_ASCII) # endif /* defined (PRIu32) */ #endif /* ACE_UINT32_FORMAT_SPECIFIER */ +#if !defined (ACE_INT64_FORMAT_SPECIFIER_ASCII) +# if defined (PRId64) +# define ACE_INT64_FORMAT_SPECIFIER_ASCII "%" PRId64 +# elif ACE_SIZEOF_LONG == 8 +# define ACE_INT64_FORMAT_SPECIFIER_ASCII "%ld" +# else +# define ACE_INT64_FORMAT_SPECIFIER_ASCII "%lld" +# endif /* defined (PRId64) */ +#endif /* ACE_INT64_FORMAT_SPECIFIER */ + #if !defined (ACE_INT64_FORMAT_SPECIFIER) # if defined (PRId64) # define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%") ACE_TEXT (PRId64) -# elif ACE_SIZEOF_LONG == 8 -# define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%ld") # else -# define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%lld") +# define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT (ACE_INT64_FORMAT_SPECIFIER_ASCII) # endif /* defined (PRId64) */ #endif /* ACE_INT64_FORMAT_SPECIFIER */ +#if !defined (ACE_UINT64_FORMAT_SPECIFIER_ASCII) +# if defined (PRIu64) +# define ACE_UINT64_FORMAT_SPECIFIER_ASCII "%" PRIu64 +# elif ACE_SIZEOF_LONG == 8 +# define ACE_UINT64_FORMAT_SPECIFIER_ASCII "%lu" +# else +# define ACE_UINT64_FORMAT_SPECIFIER_ASCII "%llu" +# endif /* defined (PRIu64) */ +#endif /* ACE_UINT64_FORMAT_SPECIFIER_ASCII */ + #if !defined (ACE_UINT64_FORMAT_SPECIFIER) # if defined (PRIu64) # define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%") ACE_TEXT (PRIu64) -# elif ACE_SIZEOF_LONG == 8 -# define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%lu") # else -# define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%llu") +# define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT (ACE_UINT64_FORMAT_SPECIFIER_ASCII) # endif /* defined (PRIu64) */ #endif /* ACE_UINT64_FORMAT_SPECIFIER */ -#if !defined (ACE_SSIZE_T_FORMAT_SPECIFIER) +#if !defined (ACE_SSIZE_T_FORMAT_SPECIFIER_ASCII) # if defined (ACE_WIN64) -# define ACE_SSIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%I64d") +# define ACE_SSIZE_T_FORMAT_SPECIFIER_ASCII "%I64d" # else -# define ACE_SSIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%d") +# define ACE_SSIZE_T_FORMAT_SPECIFIER_ASCII "%d" # endif /* ACE_WIN64 */ #endif /* ACE_SSIZE_T_FORMAT_SPECIFIER */ -#if !defined (ACE_SIZE_T_FORMAT_SPECIFIER) +#if !defined (ACE_SSIZE_T_FORMAT_SPECIFIER) +#define ACE_SSIZE_T_FORMAT_SPECIFIER ACE_TEXT (ACE_SSIZE_T_FORMAT_SPECIFIER_ASCII) +#endif /* ACE_SSIZE_T_FORMAT_SPECIFIER */ + +#if !defined (ACE_SIZE_T_FORMAT_SPECIFIER_ASCII) # if defined (ACE_WIN64) -# define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%I64u") +# define ACE_SIZE_T_FORMAT_SPECIFIER_ASCII "%I64u" # else -# define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%u") +# define ACE_SIZE_T_FORMAT_SPECIFIER_ASCII "%u" # endif /* ACE_WIN64 */ #endif /* ACE_SIZE_T_FORMAT_SPECIFIER */ +#if !defined (ACE_SIZE_T_FORMAT_SPECIFIER) +#define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT (ACE_SIZE_T_FORMAT_SPECIFIER_ASCII) +#endif /* ACE_SIZE_T_FORMAT_SPECIFIER */ + // Cast from UINT64 to a double requires an intermediate cast to INT64 // on some platforms. # if defined (ACE_LACKS_LONGLONG_T) diff --git a/ACE/ace/CDR_Stream.cpp b/ACE/ace/CDR_Stream.cpp index d88168724a8..f00a4c0c5b3 100644 --- a/ACE/ace/CDR_Stream.cpp +++ b/ACE/ace/CDR_Stream.cpp @@ -379,7 +379,7 @@ ACE_OutputCDR::write_wstring (ACE_CDR::ULong len, this->write_ulong ( ACE_Utils::truncate_cast<ACE_CDR::ULong> ( ACE_OutputCDR::wchar_maxbytes_ * len)); - + if (good_ulong) { return this->write_wchar_array (x, len); @@ -703,7 +703,6 @@ ACE_OutputCDR::write_boolean_array (const ACE_CDR::Boolean* x, return this->good_bit (); } - char * ACE_OutputCDR::write_long_placeholder (void) { @@ -715,7 +714,6 @@ ACE_OutputCDR::write_long_placeholder (void) return buf; } - char * ACE_OutputCDR::write_short_placeholder (void) { @@ -727,7 +725,6 @@ ACE_OutputCDR::write_short_placeholder (void) return buf; } - ACE_CDR::Boolean ACE_OutputCDR::replace (ACE_CDR::Long x, char* loc) { @@ -1371,7 +1368,7 @@ ACE_InputCDR::read_wstring (ACE_CDR::WChar*& x) } ACE_CDR::ULong len = 0; - + if (!this->read_ulong (len)) { return false; @@ -1897,8 +1894,7 @@ ACE_InputCDR::clone_from (ACE_InputCDR &cdr) ACE_CDR::mb_align (&this->start_); - ACE_Data_Block *db = - this->start_.data_block (); + ACE_Data_Block *db = this->start_.data_block (); // If the size of the data that needs to be copied are higher than // what is available, then do a reallocation. @@ -1906,8 +1902,7 @@ ACE_InputCDR::clone_from (ACE_InputCDR &cdr) { // @@NOTE: We need to probably add another method to the message // block interface to simplify this - db = - cdr.start_.data_block ()->clone_nocopy (); + db = cdr.start_.data_block ()->clone_nocopy (); if (db == 0 || db->size ((wr_bytes) + ACE_CDR::MAX_ALIGNMENT) == -1) diff --git a/ACE/ace/CDR_Stream.h b/ACE/ace/CDR_Stream.h index e4d666caafd..fbd87ddbda6 100644 --- a/ACE/ace/CDR_Stream.h +++ b/ACE/ace/CDR_Stream.h @@ -120,8 +120,8 @@ public: ACE_CDR::Octet minor_version = ACE_CDR_GIOP_MINOR_VERSION); /// Build a CDR stream with an initial buffer, it will *not* remove - /// <data>, since it did not allocated it. It's important to be careful - /// with the alignment of <data>. + /// @a data, since it did not allocated it. It's important to be careful + /// with the alignment of @a data. /** * Create an output stream from an arbitrary buffer, care must be * exercised with alignment, because this contructor will align if @@ -254,8 +254,8 @@ public: const ACE_CDR::WChar *x); //@} - /// @note the portion written starts at <x> and ends - /// at <x + length>. + /// @note the portion written starts at @a x and ends + /// at @a x + @a length. /// The length is *NOT* stored into the CDR stream. //@{ @name Array write operations ACE_CDR::Boolean write_boolean_array (const ACE_CDR::Boolean *x, @@ -663,7 +663,7 @@ public: ACE_Lock* lock = 0); /// Create an input stream from an ACE_Data_Block. The <flag> - /// indicates whether the <data> can be deleted by the CDR stream + /// indicates whether the @a data can be deleted by the CDR stream /// or not ACE_InputCDR (ACE_Data_Block *data, ACE_Message_Block::Message_Flags flag = 0, @@ -919,7 +919,7 @@ public: */ void exchange_data_blocks (ACE_InputCDR &cdr); - /// Copy the data portion from the @c cdr to this cdr and return the + /// Copy the data portion from the @a cdr to this cdr and return the /// data content (ie. the ACE_Data_Block) from this CDR to the /// caller. /** diff --git a/ACE/ace/CDR_Stream.inl b/ACE/ace/CDR_Stream.inl index 5d814aed006..833dcda46ae 100644 --- a/ACE/ace/CDR_Stream.inl +++ b/ACE/ace/CDR_Stream.inl @@ -572,7 +572,6 @@ ACE_OutputCDR::current_alignment (size_t current_alignment) this->current_alignment_ = current_alignment; #else ACE_UNUSED_ARG (current_alignment); - return 0; #endif /* ACE_LACKS_CDR_ALIGNMENT */ } diff --git a/ACE/ace/Cleanup.cpp b/ACE/ace/Cleanup.cpp index a6fc5de6a78..665c4ba5674 100644 --- a/ACE/ace/Cleanup.cpp +++ b/ACE/ace/Cleanup.cpp @@ -11,6 +11,8 @@ ACE_RCSID (ace, #endif /* ACE_HAS_INLINED_OSCALLS */ #include "ace/OS_Memory.h" +#include "ace/OS_NS_string.h" +#include "ace/os_include/os_typeinfo.h" ACE_BEGIN_VERSIONED_NAMESPACE_DECL @@ -20,7 +22,6 @@ ACE_Cleanup::cleanup (void *) delete this; } - ACE_Cleanup::~ACE_Cleanup (void) { } @@ -35,157 +36,145 @@ ACE_CLEANUP_DESTROYER_NAME (ACE_Cleanup *object, void *param) /*****************************************************************************/ -ACE_Cleanup_Info::ACE_Cleanup_Info (void) +ACE_Cleanup_Info_Node::ACE_Cleanup_Info_Node (void) : object_ (0), cleanup_hook_ (0), - param_ (0) + param_ (0), + name_ (0) { } -bool -ACE_Cleanup_Info::operator== (const ACE_Cleanup_Info &o) const +ACE_Cleanup_Info_Node::ACE_Cleanup_Info_Node (void *object, + ACE_CLEANUP_FUNC cleanup_hook, + void *param, + const char *name) + : object_ (object), + cleanup_hook_ (cleanup_hook), + param_ (param), + name_ (name ? ACE_OS::strdup (name) : 0) { - return o.object_ == this->object_ - && o.cleanup_hook_ == this->cleanup_hook_ - && o.param_ == this->param_; } -bool -ACE_Cleanup_Info::operator!= (const ACE_Cleanup_Info &o) const -{ - return !(*this == o); -} - -/*****************************************************************************/ - -/** - * @class ACE_Cleanup_Info_Node - * - * @brief For maintaining a list of ACE_Cleanup_Info items. - * - * For internal use by ACE_Object_Manager. - */ -class ACE_Cleanup_Info_Node -{ -public: - ACE_Cleanup_Info_Node (void); - ACE_Cleanup_Info_Node (const ACE_Cleanup_Info &new_info, - ACE_Cleanup_Info_Node *next); - ~ACE_Cleanup_Info_Node (void); - ACE_Cleanup_Info_Node *insert (const ACE_Cleanup_Info &); -private: - ACE_Cleanup_Info cleanup_info_; - ACE_Cleanup_Info_Node *next_; - - friend class ACE_OS_Exit_Info; -}; - -ACE_Cleanup_Info_Node::ACE_Cleanup_Info_Node (void) - : cleanup_info_ (), - next_ (0) +ACE_Cleanup_Info_Node::~ACE_Cleanup_Info_Node (void) { + if (this->name_) + ACE_OS::free ((void *) name_); } -ACE_Cleanup_Info_Node::ACE_Cleanup_Info_Node (const ACE_Cleanup_Info &new_info, - ACE_Cleanup_Info_Node *next) - : cleanup_info_ (new_info), - next_ (next) +bool +ACE_Cleanup_Info_Node::operator== (const ACE_Cleanup_Info_Node &o) const { + return o.object_ == this->object_ + && o.cleanup_hook_ == this->cleanup_hook_ + && o.param_ == this->param_; } -ACE_Cleanup_Info_Node::~ACE_Cleanup_Info_Node (void) +bool +ACE_Cleanup_Info_Node::operator!= (const ACE_Cleanup_Info_Node &o) const { - delete next_; + return !(*this == o); } -ACE_Cleanup_Info_Node * -ACE_Cleanup_Info_Node::insert (const ACE_Cleanup_Info &new_info) -{ - ACE_Cleanup_Info_Node *new_node = 0; - - ACE_NEW_RETURN (new_node, - ACE_Cleanup_Info_Node (new_info, this), - 0); - - return new_node; -} /*****************************************************************************/ ACE_OS_Exit_Info::ACE_OS_Exit_Info (void) { - ACE_NEW (registered_objects_, ACE_Cleanup_Info_Node); } ACE_OS_Exit_Info::~ACE_OS_Exit_Info (void) { - delete registered_objects_; - registered_objects_ = 0; } int ACE_OS_Exit_Info::at_exit_i (void *object, ACE_CLEANUP_FUNC cleanup_hook, - void *param) + void *param, + const char* name) { - ACE_Cleanup_Info new_info; - new_info.object_ = object; - new_info.cleanup_hook_ = cleanup_hook; - new_info.param_ = param; - // Return -1 and sets errno if unable to allocate storage. Enqueue // at the head and dequeue from the head to get LIFO ordering. - ACE_Cleanup_Info_Node *new_node = 0; - if ((new_node = registered_objects_->insert (new_info)) == 0) - return -1; - else - { - registered_objects_ = new_node; - return 0; - } + ACE_NEW_RETURN (new_node, + ACE_Cleanup_Info_Node (object, cleanup_hook, param, name), + -1); + + registered_objects_.push_front (new_node); + + return 0; } -int +bool ACE_OS_Exit_Info::find (void *object) { - // Check for already in queue, and return 1 if so. - for (ACE_Cleanup_Info_Node *iter = registered_objects_; - iter && iter->next_ != 0; - iter = iter->next_) + for (ACE_Cleanup_Info_Node *iter = registered_objects_.head (); + iter != 0; + iter = iter->next ()) { - if (iter->cleanup_info_.object_ == object) + if (iter->object () == object) { // The object has already been registered. - return 1; + return true; } } - return 0; + return false; +} + +bool +ACE_OS_Exit_Info::remove (void *object) +{ + ACE_Cleanup_Info_Node *node = 0; + for (ACE_Cleanup_Info_Node *iter = registered_objects_.head (); + iter != 0; + iter = iter->next ()) + { + if (iter->object () == object) + { + node = iter; + break; + } + } + + if (node) + { + registered_objects_.remove (node); + delete node; + return true; + } + + return false; } + void ACE_OS_Exit_Info::call_hooks (void) { // Call all registered cleanup hooks, in reverse order of // registration. - for (ACE_Cleanup_Info_Node *iter = registered_objects_; - iter && iter->next_ != 0; - iter = iter->next_) + for (ACE_Cleanup_Info_Node *iter = registered_objects_.pop_front (); + iter != 0; + iter = registered_objects_.pop_front ()) { - ACE_Cleanup_Info &info = iter->cleanup_info_; - if (info.cleanup_hook_ == reinterpret_cast<ACE_CLEANUP_FUNC> ( + if (iter->cleanup_hook () == reinterpret_cast<ACE_CLEANUP_FUNC> ( ACE_CLEANUP_DESTROYER_NAME)) - // The object is an ACE_Cleanup. - ACE_CLEANUP_DESTROYER_NAME ( - reinterpret_cast<ACE_Cleanup *> (info.object_), - info.param_); - else if (info.object_ == &ace_exit_hook_marker) - // The hook is an ACE_EXIT_HOOK. - (* reinterpret_cast<ACE_EXIT_HOOK> (info.cleanup_hook_)) (); + { + // The object is an ACE_Cleanup. + ACE_CLEANUP_DESTROYER_NAME ( + reinterpret_cast<ACE_Cleanup *> (iter->object ()), + iter->param ()); + } + else if (iter->object () == &ace_exit_hook_marker) + { + // The hook is an ACE_EXIT_HOOK. + (* reinterpret_cast<ACE_EXIT_HOOK> (iter->cleanup_hook ())) (); + } else - (*info.cleanup_hook_) (info.object_, info.param_); + { + (*iter->cleanup_hook ()) (iter->object (), iter->param ()); + } + delete iter; } } diff --git a/ACE/ace/Cleanup.h b/ACE/ace/Cleanup.h index 7acff23ab79..642f33f2d5d 100644 --- a/ACE/ace/Cleanup.h +++ b/ACE/ace/Cleanup.h @@ -27,6 +27,9 @@ #include /**/ "ace/ACE_export.h" +# include "ace/Intrusive_List.h" +# include "ace/Intrusive_List_Node.h" + #if (defined (ACE_HAS_VERSIONED_NAMESPACE) && ACE_HAS_VERSIONED_NAMESPACE == 1) # include "ace/Global_Macros.h" # define ACE_CLEANUP_DESTROYER_NAME ACE_PREPROC_CONCATENATE(ACE_VERSIONED_NAMESPACE_NAME, _ace_cleanup_destroyer) @@ -54,27 +57,39 @@ public: virtual void cleanup (void *param = 0); }; -// Adapter for cleanup, used by ACE_Object_Manager. +/// Adapter for cleanup, used by ACE_Object_Manager. extern "C" ACE_Export void ACE_CLEANUP_DESTROYER_NAME (ACE_Cleanup *, void *param = 0); /** - * @class ACE_Cleanup_Info + * @class ACE_Cleanup_Info_Node + * + * @brief For maintaining a list of ACE_Cleanup_Info items. * - * @brief Hold cleanup information for thread/process + * For internal use by ACE_Object_Manager. */ -class ACE_Export ACE_Cleanup_Info +class ACE_Cleanup_Info_Node : public ACE_Intrusive_List_Node<ACE_Cleanup_Info_Node> { public: - /// Default constructor. - ACE_Cleanup_Info (void); + ACE_Cleanup_Info_Node (void); + ACE_Cleanup_Info_Node (void *object, + ACE_CLEANUP_FUNC cleanup_hook, + void *param, + const char *name); + ~ACE_Cleanup_Info_Node (void); /// Equality operator. - bool operator== (const ACE_Cleanup_Info &o) const; + bool operator== (const ACE_Cleanup_Info_Node &o) const; /// Inequality operator. - bool operator!= (const ACE_Cleanup_Info &o) const; + bool operator!= (const ACE_Cleanup_Info_Node &o) const; + + void* object(void); + + ACE_CLEANUP_FUNC cleanup_hook (void); + void *param (void); +private: /// Point to object that gets passed into the <cleanup_hook_>. void *object_; @@ -83,15 +98,20 @@ public: /// Parameter passed to the <cleanup_hook_>. void *param_; + + /// Name of the cleanup object + const char *name_; }; -class ACE_Cleanup_Info_Node; +typedef ACE_Intrusive_List<ACE_Cleanup_Info_Node> ACE_Cleanup_Info_Node_List; /** * @class ACE_OS_Exit_Info * * @brief Hold Object Manager cleanup (exit) information. * + * @internal + * * For internal use by the ACE library, only. */ class ACE_Export ACE_OS_Exit_Info @@ -104,11 +124,15 @@ public: ~ACE_OS_Exit_Info (void); /// Use to register a cleanup hook. - int at_exit_i (void *object, ACE_CLEANUP_FUNC cleanup_hook, void *param); + int at_exit_i (void *object, ACE_CLEANUP_FUNC cleanup_hook, void *param, const char* name = 0); - /// Look for a registered cleanup hook object. Returns 1 if already - /// registered, 0 if not. - int find (void *object); + /// Look for a registered cleanup hook object. Returns true if already + /// registered, false if not. + bool find (void *object); + + /// Remove a registered cleanup hook object. Returns true if removed + /// false if not. + bool remove (void *object); /// Call all registered cleanup hooks, in reverse order of /// registration. @@ -116,13 +140,12 @@ public: private: /** - * Keeps track of all registered objects. The last node is only - * used to terminate the list (it doesn't contain a valid - * ACE_Cleanup_Info). + * Keeps track of all registered objects. */ - ACE_Cleanup_Info_Node *registered_objects_; + ACE_Cleanup_Info_Node_List registered_objects_; }; + ACE_END_VERSIONED_NAMESPACE_DECL # if defined (ACE_HAS_INLINED_OSCALLS) diff --git a/ACE/ace/Cleanup.inl b/ACE/ace/Cleanup.inl index 02d3c223f8d..2f3410a1ebb 100644 --- a/ACE/ace/Cleanup.inl +++ b/ACE/ace/Cleanup.inl @@ -9,4 +9,22 @@ ACE_Cleanup::ACE_Cleanup (void) { } +ACE_INLINE void* +ACE_Cleanup_Info_Node::object(void) +{ + return this->object_; +} + +ACE_INLINE ACE_CLEANUP_FUNC +ACE_Cleanup_Info_Node::cleanup_hook (void) +{ + return this->cleanup_hook_; +} + +ACE_INLINE void * +ACE_Cleanup_Info_Node::param (void) +{ + return this->param_; +} + ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ACE/ace/Configuration.h b/ACE/ace/Configuration.h index 500eb3c1df2..5126aeed622 100644 --- a/ACE/ace/Configuration.h +++ b/ACE/ace/Configuration.h @@ -598,7 +598,7 @@ public: /// allocator name_ was created in void free (ACE_Allocator *alloc); - /// <hash> function is required in order for this class to be usable by + /// hash function is required in order for this class to be usable by /// ACE_Hash_Map_Manager. u_long hash (void) const; diff --git a/ACE/ace/Configuration_Import_Export.cpp b/ACE/ace/Configuration_Import_Export.cpp index ce4cbac84c1..fe26cc9bbe9 100644 --- a/ACE/ace/Configuration_Import_Export.cpp +++ b/ACE/ace/Configuration_Import_Export.cpp @@ -254,7 +254,7 @@ ACE_Registry_ImpExp::export_section (const ACE_Configuration_Section_Key& sectio ACE_TString header = ACE_TEXT ("["); header += path; header += ACE_TEXT ("]"); - header += ACE_TEXT (" \n"); + header += ACE_TEXT ("\n"); if (ACE_OS::fputs (header.fast_rep (), out) < 0) return -1; // Write out each value diff --git a/ACE/ace/Connector.h b/ACE/ace/Connector.h index 0b92d55efcd..4ba8c7ce3dd 100644 --- a/ACE/ace/Connector.h +++ b/ACE/ace/Connector.h @@ -190,7 +190,7 @@ public: * 1). @a flags and @a perms can be used to pass any flags that are * needed to perform specific operations such as opening a file * within connect with certain permissions. If the connection fails - * the <close> hook on the <svc_handler> will be called + * the <close> hook on the @a svc_handler will be called * automatically to prevent resource leaks. */ virtual int connect (SVC_HANDLER *&svc_handler, @@ -209,7 +209,7 @@ public: * context of the internal cache its use is thread-safe. But the * actual svc_handler for the current connection is returned in the * second parameter @a svc_handler. If the connection fails the - * <close> hook on the <svc_handler> will be called automatically to + * <close> hook on the @a svc_handler will be called automatically to * prevent resource leaks. */ virtual int connect (SVC_HANDLER *&svc_handler_hint, diff --git a/ACE/ace/DLL_Manager.cpp b/ACE/ace/DLL_Manager.cpp index 83c07cd125d..e161e2fd791 100644 --- a/ACE/ace/DLL_Manager.cpp +++ b/ACE/ace/DLL_Manager.cpp @@ -177,9 +177,9 @@ ACE_DLL_Handle::open (const ACE_TCHAR *dll_name, ACE_TEXT ("(\"%s\", 0x%x) -> %s: %s\n"), aix_pathname, open_mode, - ACE_TEXT ((this->handle_ != ACE_SHLIB_INVALID_HANDLE) - ? "succeeded" - : "failed"), + (this->handle_ != ACE_SHLIB_INVALID_HANDLE + ? ACE_TEXT ("succeeded") + : ACE_TEXT ("failed")), this->error()->c_str())); } @@ -437,7 +437,7 @@ ACE_DLL_Handle::get_dll_names (const ACE_TCHAR *dll_name, try_names.size (0); if ((try_names.max_size () - try_names.size ()) < 5) try_names.max_size (try_names.max_size () + 5); -#if defined (ACE_WIN32) && defined (ACE_LD_DECORATOR_STR) && !defined (ACE_DISABLE_DEBUG_DLL_CHECK) +#if defined (ACE_LD_DECORATOR_STR) && !defined (ACE_DISABLE_DEBUG_DLL_CHECK) ACE_TString decorator (ACE_LD_DECORATOR_STR); #endif ACE_TString suffix (ACE_DLL_SUFFIX); @@ -446,7 +446,7 @@ ACE_DLL_Handle::get_dll_names (const ACE_TCHAR *dll_name, for (size_t i = 0; i < 5 && try_names.size () < try_names.max_size (); ++i) { ACE_TString try_this; - size_t j = try_names.size (); + size_t const j = try_names.size (); switch (i) { case 0: // Name + decorator + suffix @@ -455,7 +455,7 @@ ACE_DLL_Handle::get_dll_names (const ACE_TCHAR *dll_name, case 3: // Prefix + name + suffix if ( base_suffix.length () > 0 -#if !(defined(ACE_WIN32) && defined (ACE_LD_DECORATOR_STR) && !defined (ACE_DISABLE_DEBUG_DLL_CHECK)) +#if !(defined (ACE_LD_DECORATOR_STR) && !defined (ACE_DISABLE_DEBUG_DLL_CHECK)) || (i == 1 || i == 3) // No decorator desired; skip #endif ) @@ -468,7 +468,7 @@ ACE_DLL_Handle::get_dll_names (const ACE_TCHAR *dll_name, try_this += base_suffix; else { -#if defined (ACE_WIN32) && defined (ACE_LD_DECORATOR_STR) && !defined (ACE_DISABLE_DEBUG_DLL_CHECK) +#if defined (ACE_LD_DECORATOR_STR) && !defined (ACE_DISABLE_DEBUG_DLL_CHECK) try_this += decorator; #endif try_this += suffix; diff --git a/ACE/ace/Default_Constants.h b/ACE/ace/Default_Constants.h index ce435121681..95da65760e3 100644 --- a/ACE/ace/Default_Constants.h +++ b/ACE/ace/Default_Constants.h @@ -62,6 +62,10 @@ #define ACE_DEFAULT_SERVICE_REPOSITORY_SIZE 1024 #endif /* ACE_DEFAULT_SERVICE_REPOSITORY_SIZE */ +#if !defined (ACE_DEFAULT_SERVICE_GESTALT_SIZE) +#define ACE_DEFAULT_SERVICE_GESTALT_SIZE 1024 +#endif /* ACE_DEFAULT_SERVICE_GESTALT_SIZE */ + #if !defined (ACE_REACTOR_NOTIFICATION_ARRAY_SIZE) #define ACE_REACTOR_NOTIFICATION_ARRAY_SIZE 1024 #endif /* ACE_REACTOR_NOTIFICATION_ARRAY_SIZE */ @@ -196,7 +200,7 @@ # define ACE_DEFAULT_TIME_SERVER_STR "ACE_TS_TIME" # endif /* ACE_DEFAULT_TIME_SERVER_STR */ -// Used by the FIFO tests and the Client_Logging_Handler netsvc. +// Used by the FIFO tests # if !defined (ACE_DEFAULT_RENDEZVOUS) # if defined (ACE_HAS_STREAM_PIPES) # define ACE_DEFAULT_RENDEZVOUS ACE_TEXT("/tmp/fifo.ace") @@ -210,13 +214,20 @@ # define ACE_DEFAULT_SYSLOG_FACILITY LOG_USER # endif /* ACE_DEFAULT_SYSLOG_FACILITY */ -# if !defined (ACE_DEFAULT_LOGGER_KEY) +# if !defined (ACE_HAS_STREAM_LOG_MSG_IPC) +# if defined (ACE_HAS_STREAM_PIPES) +# define ACE_HAS_STREAM_LOG_MSG_IPC 1 +# else +# define ACE_HAS_STREAM_LOG_MSG_IPC 0 +# endif /* ACE_HAS_STREAM_PIPES */ +# endif /* !ACE_HAS_STREAM_LOG_MSG_IPC */ -# if defined (ACE_HAS_STREAM_PIPES) -# define ACE_DEFAULT_LOGGER_KEY ACE_TEXT ("/tmp/server_daemon") -# else -# define ACE_DEFAULT_LOGGER_KEY ACE_TEXT ("localhost:20012") -# endif /* ACE_HAS_STREAM_PIPES */ +# if !defined (ACE_DEFAULT_LOGGER_KEY) +# if (ACE_HAS_STREAM_LOG_MSG_IPC == 1) +# define ACE_DEFAULT_LOGGER_KEY ACE_TEXT ("/tmp/server_daemon") +# else +# define ACE_DEFAULT_LOGGER_KEY ACE_TEXT ("localhost:20012") +# endif /* ACE_HAS_STREAM_LOG_MSG_IPC==1 */ # endif /* ACE_DEFAULT_LOGGER_KEY */ // The way to specify the local host for loopback IP. This is usually diff --git a/ACE/ace/Dev_Poll_Reactor.cpp b/ACE/ace/Dev_Poll_Reactor.cpp index 98dfbace9c5..7697bc48383 100644 --- a/ACE/ace/Dev_Poll_Reactor.cpp +++ b/ACE/ace/Dev_Poll_Reactor.cpp @@ -1051,7 +1051,7 @@ ACE_Dev_Poll_Reactor::handle_events_i (ACE_Time_Value *max_wait_time, { result = this->work_pending_i (max_wait_time); if (result == -1) - ACE_ERROR ((LM_ERROR, "%t: %p\n", "work_pending_i")); + ACE_ERROR ((LM_ERROR, ACE_TEXT("%t: %p\n"), ACE_TEXT("work_pending_i"))); } while (result == -1 && this->restart_ != 0 && errno == EINTR); @@ -1415,7 +1415,7 @@ ACE_Dev_Poll_Reactor::register_handler_i (ACE_HANDLE handle, if (::epoll_ctl (this->poll_fd_, op, handle, &epev) == -1) { - ACE_ERROR ((LM_ERROR, "%p\n", "epoll_ctl")); + ACE_ERROR ((LM_ERROR, ACE_TEXT("%p\n"), ACE_TEXT("epoll_ctl"))); (void) this->handler_rep_.unbind (handle); return -1; } @@ -1428,7 +1428,7 @@ ACE_Dev_Poll_Reactor::register_handler_i (ACE_HANDLE handle, // again, possibly for different event. Add new mask to the // current one. if (this->mask_ops_i (handle, mask, ACE_Reactor::ADD_MASK) == -1) - ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "mask_ops_i"), -1); + ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT("%p\n"), ACE_TEXT("mask_ops_i")), -1); } #ifndef ACE_HAS_EVENT_POLL @@ -2465,7 +2465,7 @@ ACE_Dev_Poll_Reactor::Token_Guard::acquire_quietly (ACE_Time_Value *max_wait) return 0; else { - ACE_ERROR ((LM_ERROR, "%t: %p\n", "token acquire_read")); + ACE_ERROR ((LM_ERROR, ACE_TEXT("%t: %p\n"), ACE_TEXT("token acquire_read"))); return -1; } } diff --git a/ACE/ace/Dev_Poll_Reactor.h b/ACE/ace/Dev_Poll_Reactor.h index dd9a16d6cee..f991111642d 100644 --- a/ACE/ace/Dev_Poll_Reactor.h +++ b/ACE/ace/Dev_Poll_Reactor.h @@ -622,8 +622,8 @@ public: ACE_Event_Handler **old_sh = 0, ACE_Sig_Action *old_disp = 0); - /// Registers <new_sh> to handle a set of signals <sigset> using the - /// <new_disp>. + /// Registers @a new_sh to handle a set of signals @a sigset using the + /// @a new_disp. virtual int register_handler (const ACE_Sig_Set &sigset, ACE_Event_Handler *new_sh, ACE_Sig_Action *new_disp = 0); @@ -647,7 +647,7 @@ public: ACE_Reactor_Mask mask); /** - * Removes all handles in <handle_set>. If @a mask == + * Removes all handles in @a handle_set. If @a mask == * ACE_Event_Handler::DONT_CALL then the <handle_close> method of * the associated <event_handler>s is not invoked. */ @@ -665,7 +665,7 @@ public: ACE_Sig_Action *old_disp = 0, int sigkey = -1); - /// Calls <remove_handler> for every signal in <sigset>. + /// Calls <remove_handler> for every signal in @a sigset. virtual int remove_handler (const ACE_Sig_Set &sigset); // = Suspend and resume Handlers. @@ -793,7 +793,7 @@ public: /** * Set the maximum number of times that ACE_Reactor_Impl will - * iterate and dispatch the <ACE_Event_Handlers> that are passed in + * iterate and dispatch the ACE_Event_Handlers that are passed in * via the notify queue before breaking out of its * <ACE_Message_Queue::dequeue> loop. By default, this is set to * -1, which means "iterate until the queue is empty." Setting this @@ -805,7 +805,7 @@ public: /** * Get the maximum number of times that the ACE_Reactor_Impl will - * iterate and dispatch the <ACE_Event_Handlers> that are passed in + * iterate and dispatch the ACE_Event_Handlers that are passed in * via the notify queue before breaking out of its * <ACE_Message_Queue::dequeue> loop. */ diff --git a/ACE/ace/Dirent.h b/ACE/ace/Dirent.h index 823b28d747c..17557f46fc5 100644 --- a/ACE/ace/Dirent.h +++ b/ACE/ace/Dirent.h @@ -39,17 +39,17 @@ public: /// Default constructor. ACE_Dirent (void); - /// Constructor calls <opendir> + /// Constructor calls @c opendir() explicit ACE_Dirent (const ACE_TCHAR *dirname); /// Opens the directory named by filename and associates a directory /// stream with it. int open (const ACE_TCHAR *filename); - /// Destructor calls <closedir>. + /// Destructor calls @c closedir(). ~ACE_Dirent (void); - /// Closes the directory stream and frees the <ACE_DIR> structure. + /// Closes the directory stream and frees the ACE_DIR structure. void close (void); // = Iterator methods. diff --git a/ACE/ace/Dynamic_Message_Strategy.cpp b/ACE/ace/Dynamic_Message_Strategy.cpp index 060aef6f5b5..201052c2acd 100644 --- a/ACE/ace/Dynamic_Message_Strategy.cpp +++ b/ACE/ace/Dynamic_Message_Strategy.cpp @@ -149,7 +149,7 @@ ACE_Deadline_Message_Strategy::dump (void) const ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("ACE_Dynamic_Message_Strategy base class: \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("ACE_Dynamic_Message_Strategy base class:\n"))); this->ACE_Dynamic_Message_Strategy::dump (); ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nderived class: ACE_Deadline_Message_Strategy\n"))); @@ -192,7 +192,7 @@ ACE_Laxity_Message_Strategy::dump (void) const ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("ACE_Dynamic_Message_Strategy base class: \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("ACE_Dynamic_Message_Strategy base class:\n"))); this->ACE_Dynamic_Message_Strategy::dump (); ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nderived class: ACE_Laxity_Message_Strategy\n"))); diff --git a/ACE/ace/Dynamic_Service_Base.cpp b/ACE/ace/Dynamic_Service_Base.cpp index e93dde6e905..6f3d3225e95 100644 --- a/ACE/ace/Dynamic_Service_Base.cpp +++ b/ACE/ace/Dynamic_Service_Base.cpp @@ -82,17 +82,22 @@ ACE_Dynamic_Service_Base::instance (const ACE_Service_Gestalt* repo, { ACE_Guard <ACE_Log_Msg> log_guard (*ACE_Log_Msg::instance ()); - ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("ACE (%P|%t) DSB::instance, repo=%@, name=%s") - ACE_TEXT (" type=%@ => %@"), - repo->repo_, name, type, obj)); - if (repo->repo_ != repo_found->repo_) - ACE_DEBUG ((LM_DEBUG, + { + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("ACE (%P|%t) DSB::instance, repo=%@, name=%s") + ACE_TEXT (" type=%@ => %@") ACE_TEXT (" [in repo=%@]\n"), + repo->repo_, name, type, obj, repo_found->repo_)); + } else - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n"))); + { + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("ACE (%P|%t) DSB::instance, repo=%@, name=%s") + ACE_TEXT (" type=%@ => %@\n"), + repo->repo_, name, type, obj)); + } } return obj; diff --git a/ACE/ace/Event_Handler.cpp b/ACE/ace/Event_Handler.cpp index d4542b61349..42c8b36cd8e 100644 --- a/ACE/ace/Event_Handler.cpp +++ b/ACE/ace/Event_Handler.cpp @@ -244,8 +244,6 @@ ACE_Event_Handler::reference_counting_policy (void) return this->reference_counting_policy_; } -//#if !defined (ACE_HAS_WINCE) - ACE_THR_FUNC_RETURN ACE_Event_Handler::read_adapter (void *args) { @@ -299,8 +297,6 @@ ACE_Event_Handler::remove_stdin_handler (ACE_Reactor *reactor, #endif /* ACE_WIN32 */ } -//#endif /* ACE_HAS_WINCE */ - // --------------------------------------------------------------------- ACE_Event_Handler_var::ACE_Event_Handler_var (void) diff --git a/ACE/ace/Event_Handler_T.h b/ACE/ace/Event_Handler_T.h index 71c97bcf4a8..ff91cd4480d 100644 --- a/ACE/ace/Event_Handler_T.h +++ b/ACE/ace/Event_Handler_T.h @@ -37,7 +37,7 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL * inheritance hierarchy but also would like to integrate with * the ACE_Reactor. Rather than adopt a "mixin" approach, it is * often cleaner to define a template as a subclass of - * ACE_Event_Handler and paramterize it with an operation + * ACE_Event_Handler and parameterize it with an operation * dispatcher type. * When constructing an instantiation of the ACE_Event_Handler_T * object, a set of pointers to member functions must be diff --git a/ACE/ace/FIFO_Recv_Msg.h b/ACE/ace/FIFO_Recv_Msg.h index b1c7afe3eb3..56e83d4f1a3 100644 --- a/ACE/ace/FIFO_Recv_Msg.h +++ b/ACE/ace/FIFO_Recv_Msg.h @@ -109,12 +109,12 @@ public: ssize_t recv (void *buf, size_t len); #if defined (ACE_HAS_STREAM_PIPES) - /// Recv <data> and <cntl> message via Stream pipes. + /// Recv @a data and @a cntl message via Stream pipes. ssize_t recv (ACE_Str_Buf *data, ACE_Str_Buf *cntl, int *flags); - /// Recv <data> and <cntl> message via Stream pipes in "band" mode. + /// Recv @a data and @a cntl message via Stream pipes in "band" mode. ssize_t recv (int *band, ACE_Str_Buf *data, ACE_Str_Buf *cntl, diff --git a/ACE/ace/FIFO_Send_Msg.h b/ACE/ace/FIFO_Send_Msg.h index a2e0affce8a..9b1a5e17abb 100644 --- a/ACE/ace/FIFO_Send_Msg.h +++ b/ACE/ace/FIFO_Send_Msg.h @@ -62,12 +62,12 @@ public: ssize_t send (const void *buf, size_t len); #if defined (ACE_HAS_STREAM_PIPES) - /// Send <data> and <cntl> message via Stream pipes. + /// Send @a data and @a cntl message via Stream pipes. ssize_t send (const ACE_Str_Buf *data, const ACE_Str_Buf *cntl = 0, int flags = 0); - /// Send <data> and <cntl> message via Stream pipes in "band" mode. + /// Send @a data and @a cntl message via Stream pipes in "band" mode. ssize_t send (int band, const ACE_Str_Buf *data, const ACE_Str_Buf *cntl = 0, diff --git a/ACE/ace/Filecache.cpp b/ACE/ace/Filecache.cpp index 5122cb6fdc8..72601d8d1d3 100644 --- a/ACE/ace/Filecache.cpp +++ b/ACE/ace/Filecache.cpp @@ -738,15 +738,7 @@ ACE_Filecache_Object::update (void) const if (ACE_OS::stat (this->filename_, &statbuf) == -1) result = 1; else - // non-portable code may follow -#if defined (ACE_HAS_WINCE) - // Yup, non-portable... there's probably a way to safely implement - // difftime() on WinCE, but for now, this will have to do. It flags - // every file as having changed since cached. - result = 1; -#else result = ACE_OS::difftime (this->stat_.st_mtime, statbuf.st_mtime) < 0; -#endif /* ACE_HAS_WINCE */ return result; } diff --git a/ACE/ace/Framework_Component.cpp b/ACE/ace/Framework_Component.cpp index 23bebc240f8..7c23fd70407 100644 --- a/ACE/ace/Framework_Component.cpp +++ b/ACE/ace/Framework_Component.cpp @@ -144,7 +144,7 @@ ACE_Framework_Repository::register_component (ACE_Framework_Component *fc) if (i < this->total_size_) { this->component_vector_[i] = fc; - this->current_size_++; + ++this->current_size_; return 0; } diff --git a/ACE/ace/Future.cpp b/ACE/ace/Future.cpp index 97358b7f834..9945827c09c 100644 --- a/ACE/ace/Future.cpp +++ b/ACE/ace/Future.cpp @@ -54,7 +54,7 @@ ACE_Future_Rep<T>::dump (void) const ACE_DEBUG ((LM_DEBUG, "ref_count_ = %d\n", (int) this->ref_count_)); - ACE_DEBUG ((LM_INFO,"value_: \n")); + ACE_DEBUG ((LM_INFO,"value_:\n")); if (this->value_) ACE_DEBUG ((LM_DEBUG, ACE_TEXT (" (NON-NULL)\n"))); else @@ -62,9 +62,9 @@ ACE_Future_Rep<T>::dump (void) const ACE_DEBUG ((LM_DEBUG, ACE_TEXT (" (NULL)\n"))); //FUZZ: enable check_for_NULL - ACE_DEBUG ((LM_INFO,"value_ready_: \n")); + ACE_DEBUG ((LM_INFO,"value_ready_:\n")); this->value_ready_.dump (); - ACE_DEBUG ((LM_INFO,"value_ready_mutex_: \n")); + ACE_DEBUG ((LM_INFO,"value_ready_mutex_:\n")); this->value_ready_mutex_.dump (); ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP)); #endif /* ACE_HAS_DUMP */ diff --git a/ACE/ace/Guard_T.h b/ACE/ace/Guard_T.h index 3c0870e1562..1780f8fd1bf 100644 --- a/ACE/ace/Guard_T.h +++ b/ACE/ace/Guard_T.h @@ -32,7 +32,7 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL * * @brief This data structure is meant to be used within a method or * function... It performs automatic aquisition and release of - * a parameterized synchronization object <ACE_LOCK>. + * a parameterized synchronization object ACE_LOCK. * * The <ACE_LOCK> class given as an actual parameter must provide at * the very least the <acquire>, <tryacquire>, <release>, and diff --git a/ACE/ace/Handle_Set.cpp b/ACE/ace/Handle_Set.cpp index 05a85cb338a..6bf09c355ee 100644 --- a/ACE/ace/Handle_Set.cpp +++ b/ACE/ace/Handle_Set.cpp @@ -24,11 +24,6 @@ ACE_ALLOC_HOOK_DEFINE(ACE_Handle_Set) # define ACE_MSB_MASK (~((fd_mask) 1 << (NFDBITS - 1))) #endif /* ! ACE_WIN32 */ -#if defined (__BORLANDC__) && !defined (ACE_WIN32) -// The Borland C++ compiler on Linux also doesn't have fds_bits, but has __fds_bits. -#define fds_bits __fds_bits -#endif - #if defined (linux) && __GLIBC__ > 1 && __GLIBC_MINOR__ >= 1 && !defined (_XOPEN_SOURCE) // XPG4.2 requires the fds_bits member name, so it is not enabled by // default on Linux/glibc-2.1.x systems. Instead use "__fds_bits." diff --git a/ACE/ace/Hash_Map_Manager_T.cpp b/ACE/ace/Hash_Map_Manager_T.cpp index 527741f92fb..c503e603ccd 100644 --- a/ACE/ace/Hash_Map_Manager_T.cpp +++ b/ACE/ace/Hash_Map_Manager_T.cpp @@ -58,12 +58,24 @@ ACE_Hash_Map_Entry<EXT_ID, INT_ID>::key () return ext_id_; } +template <class EXT_ID, class INT_ID> const EXT_ID & +ACE_Hash_Map_Entry<EXT_ID, INT_ID>::key () const +{ + return ext_id_; +} + template <class EXT_ID, class INT_ID> INT_ID & ACE_Hash_Map_Entry<EXT_ID, INT_ID>::item () { return int_id_; } +template <class EXT_ID, class INT_ID> const INT_ID & +ACE_Hash_Map_Entry<EXT_ID, INT_ID>::item () const +{ + return int_id_; +} + template <class EXT_ID, class INT_ID> void ACE_Hash_Map_Entry<EXT_ID, INT_ID>::dump (void) const { @@ -80,8 +92,8 @@ ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::dump { #if defined (ACE_HAS_DUMP) ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("total_size_ = %d"), this->total_size_)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\ncur_size_ = %d"), this->cur_size_)); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("total_size_ = %d\n"), this->total_size_)); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("cur_size_ = %d\n"), this->cur_size_)); this->table_allocator_->dump (); this->entry_allocator_->dump (); this->lock_.dump (); @@ -227,7 +239,7 @@ ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::bind_ &this->table_[loc]); this->table_[loc].next_ = entry; entry->next_->prev_ = entry; - this->cur_size_++; + ++this->cur_size_; return 0; } else @@ -254,7 +266,7 @@ ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::trybi &this->table_[loc]); this->table_[loc].next_ = entry; entry->next_->prev_ = entry; - this->cur_size_++; + ++this->cur_size_; return 0; } else diff --git a/ACE/ace/Hash_Map_Manager_T.h b/ACE/ace/Hash_Map_Manager_T.h index 8c9c427ddd2..aaf0bcdf7c7 100644 --- a/ACE/ace/Hash_Map_Manager_T.h +++ b/ACE/ace/Hash_Map_Manager_T.h @@ -53,9 +53,15 @@ public: /// Key accessor. EXT_ID& key (void); + /// Read-only key accessor. + const EXT_ID& key (void) const; + /// Item accessor. INT_ID& item (void); + /// Read-only item accessor. + const INT_ID& item (void) const; + /// Key used to look up an entry. /// @deprecated Use key() EXT_ID ext_id_; @@ -553,9 +559,6 @@ protected: /// Accessor of the underlying table ACE_Hash_Map_Entry<EXT_ID, INT_ID> *table (void); - /// Accessor of the current size attribute - size_t cur_size (void) const; - private: /** * Array of ACE_Hash_Map_Entry *s, each of which points to an diff --git a/ACE/ace/Hash_Map_Manager_T.inl b/ACE/ace/Hash_Map_Manager_T.inl index b1ffacb8898..491a598730e 100644 --- a/ACE/ace/Hash_Map_Manager_T.inl +++ b/ACE/ace/Hash_Map_Manager_T.inl @@ -436,13 +436,6 @@ ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::table return this->table_; } -template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE -size_t -ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::cur_size (void) const -{ - return this->cur_size_; -} - template <class EXT_ID, class INT_ID, class HASH_KEY, diff --git a/ACE/ace/High_Res_Timer.cpp b/ACE/ace/High_Res_Timer.cpp index 838120bb7b7..accab008d36 100644 --- a/ACE/ace/High_Res_Timer.cpp +++ b/ACE/ace/High_Res_Timer.cpp @@ -193,7 +193,7 @@ ACE_High_Res_Timer::global_scale_factor (void) #if (defined (ACE_WIN32) || defined (ACE_HAS_POWERPC_TIMER) || \ defined (ACE_HAS_PENTIUM) || defined (ACE_HAS_ALPHA_TIMER)) && \ !defined (ACE_HAS_HI_RES_TIMER) && \ - ((defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)) || \ + (defined (ACE_WIN32) || \ defined (ghs) || defined (__GNUG__) || \ defined (__INTEL_COMPILER)) // Check if the global scale factor needs to be set, and do if so. @@ -422,7 +422,6 @@ ACE_High_Res_Timer::elapsed_time_incr (ACE_hrtime_t &nanoseconds) const nanoseconds = nanoseconds >> 10; } -#if !defined (ACE_HAS_WINCE) void ACE_High_Res_Timer::print_ave (const ACE_TCHAR *str, const int count, @@ -507,12 +506,10 @@ ACE_High_Res_Timer::print_total (const ACE_TCHAR *str, buf, ACE_OS::strlen (buf)); } -#endif /* !ACE_HAS_WINCE */ int ACE_High_Res_Timer::get_env_global_scale_factor (const ACE_TCHAR *env) { -#if !defined (ACE_HAS_WINCE) if (env != 0) { const char *env_value = ACE_OS::getenv (ACE_TEXT_ALWAYS_CHAR (env)); @@ -526,9 +523,7 @@ ACE_High_Res_Timer::get_env_global_scale_factor (const ACE_TCHAR *env) } } } -#else - ACE_UNUSED_ARG (env); -#endif /* !ACE_HAS_WINCE */ + return -1; } diff --git a/ACE/ace/High_Res_Timer.h b/ACE/ace/High_Res_Timer.h index 642ffc796c5..2bb9730280a 100644 --- a/ACE/ace/High_Res_Timer.h +++ b/ACE/ace/High_Res_Timer.h @@ -204,12 +204,8 @@ public: /// to start_incr and stop_incr. void elapsed_time_incr (ACE_hrtime_t &nanoseconds) const; -#if !defined (ACE_HAS_WINCE) - // @@ WINCE These two functions are currently not supported on Windows CE. - // However, we should probably use the handle and ACE_Log_Msg to - // print out the result. /// Print total time. - /// @note only use <print_total> if incremental timings had been used! + /// @note only use @c print_total if incremental timings had been used! void print_total (const ACE_TCHAR *message, const int iterations = 1, ACE_HANDLE handle = ACE_STDOUT) const; @@ -218,7 +214,6 @@ public: void print_ave (const ACE_TCHAR *message, const int iterations = 1, ACE_HANDLE handle = ACE_STDOUT) const; -#endif /* !ACE_HAS_WINCE */ /// Dump the state of an object. void dump (void) const; diff --git a/ACE/ace/INET_Addr.cpp b/ACE/ace/INET_Addr.cpp index 44cd5a57c8a..229dcaebf6e 100644 --- a/ACE/ace/INET_Addr.cpp +++ b/ACE/ace/INET_Addr.cpp @@ -36,7 +36,7 @@ ACE_INET_Addr::addr_to_string (ACE_TCHAR s[], ACE_TRACE ("ACE_INET_Addr::addr_to_string"); // XXX Can we (should we) include the scope id for IPv6 addresses? - char hoststr[MAXHOSTNAMELEN+1]; + char hoststr[MAXHOSTNAMELEN+1]; bool result = false; if (ipaddr_format == 0) @@ -489,7 +489,7 @@ ACE_INET_Addr::set (const char port_name[], int address_family = PF_UNSPEC; # if defined (ACE_HAS_IPV6) - if (ACE_OS::strcmp (ACE_TEXT_CHAR_TO_TCHAR(protocol), ACE_TEXT ("tcp6")) == 0) + if (ACE_OS::strcmp (protocol, "tcp6") == 0) address_family = AF_INET6; # endif /* ACE_HAS_IPV6 */ @@ -702,18 +702,12 @@ ACE_INET_Addr::ACE_INET_Addr (const char port_name[], : ACE_Addr (determine_type (), sizeof (inet_addr_)) { ACE_TRACE ("ACE_INET_Addr::ACE_INET_Addr"); -#if !defined (ACE_LACKS_HTONL) this->reset (); if (this->set (port_name, - htonl (inet_address), + ACE_HTONL (inet_address), protocol) == -1) ACE_ERROR ((LM_ERROR, ACE_TEXT ("ACE_INET_Addr::ACE_INET_Addr"))); -#else - ACE_UNUSED_ARG (port_name); - ACE_UNUSED_ARG (inet_address); - ACE_UNUSED_ARG (protocol); -#endif } #if defined (ACE_HAS_WCHAR) @@ -723,18 +717,12 @@ ACE_INET_Addr::ACE_INET_Addr (const wchar_t port_name[], : ACE_Addr (determine_type (), sizeof (inet_addr_)) { ACE_TRACE ("ACE_INET_Addr::ACE_INET_Addr"); -#if !defined (ACE_LACKS_HTONL) this->reset (); if (this->set (port_name, - htonl (inet_address), + ACE_HTONL (inet_address), protocol) == -1) ACE_ERROR ((LM_ERROR, ACE_TEXT ("ACE_INET_Addr::ACE_INET_Addr"))); -#else - ACE_UNUSED_ARG (port_name); - ACE_UNUSED_ARG (inet_address); - ACE_UNUSED_ARG (protocol); -#endif } #endif /* ACE_HAS_WCHAR */ diff --git a/ACE/ace/INET_Addr.inl b/ACE/ace/INET_Addr.inl index a05a80db7fb..21d053b7bc5 100644 --- a/ACE/ace/INET_Addr.inl +++ b/ACE/ace/INET_Addr.inl @@ -88,15 +88,13 @@ ACE_INLINE u_short ACE_INET_Addr::get_port_number (void) const { ACE_TRACE ("ACE_INET_Addr::get_port_number"); -#if defined (ACE_LACKS_NTOHS) - ACE_NOTSUP_RETURN (0); -#elif defined (ACE_HAS_IPV6) +#if defined (ACE_HAS_IPV6) if (this->get_type () == PF_INET) - return ntohs (this->inet_addr_.in4_.sin_port); + return ACE_NTOHS (this->inet_addr_.in4_.sin_port); else - return ntohs (this->inet_addr_.in6_.sin6_port); + return ACE_NTOHS (this->inet_addr_.in6_.sin6_port); #else - return ntohs (this->inet_addr_.in4_.sin_port); + return ACE_NTOHS (this->inet_addr_.in4_.sin_port); #endif /* ACE_HAS_IPV6 */ } diff --git a/ACE/ace/Intrusive_List.cpp b/ACE/ace/Intrusive_List.cpp index c0006792ce4..346bfa07562 100644 --- a/ACE/ace/Intrusive_List.cpp +++ b/ACE/ace/Intrusive_List.cpp @@ -36,13 +36,14 @@ ACE_Intrusive_List<T>::push_back (T *node) this->head_ = node; node->next (0); node->prev (0); - return; } - - this->tail_->next (node); - node->prev (this->tail_); - node->next (0); - this->tail_ = node; + else + { + this->tail_->next (node); + node->prev (this->tail_); + node->next (0); + this->tail_ = node; + } } template<class T> void @@ -54,22 +55,24 @@ ACE_Intrusive_List<T>::push_front (T *node) this->head_ = node; node->next (0); node->prev (0); - return; } - - this->head_->prev (node); - node->next (this->head_); - node->prev (0); - this->head_ = node; + else + { + this->head_->prev (node); + node->next (this->head_); + node->prev (0); + this->head_ = node; + } } template<class T> T * ACE_Intrusive_List<T>::pop_front (void) { T *node = this->head_; - if (node == 0) - return 0; - this->unsafe_remove (node); + if (node != 0) + { + this->unsafe_remove (node); + } return node; } @@ -77,9 +80,10 @@ template<class T> T * ACE_Intrusive_List<T>::pop_back (void) { T *node = this->tail_; - if (node == 0) - return 0; - this->unsafe_remove (node); + if (node != 0) + { + this->unsafe_remove (node); + } return node; } diff --git a/ACE/ace/Intrusive_List.h b/ACE/ace/Intrusive_List.h index 59d0c9054a8..a7952e367dc 100644 --- a/ACE/ace/Intrusive_List.h +++ b/ACE/ace/Intrusive_List.h @@ -14,7 +14,7 @@ #define ACE_INTRUSIVE_LIST_H #include /**/ "ace/pre.h" -#include /**/ "ace/config-all.h" +#include /**/ "ace/config-lite.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once @@ -68,12 +68,12 @@ public: // = Check boundary conditions. - /// Returns 1 if the container is empty, otherwise returns 0. - int is_empty (void) const; + /// Returns true if the container is empty, otherwise returns false. + bool is_empty (void) const; - /// Returns 1 if the container is empty, otherwise returns 0. + /// Returns true if the container is empty, otherwise returns false. /// @deprecated Use is_empty() instead. - int empty (void) const; + bool empty (void) const; /// Insert an element at the beginning of the list void push_front (T *node); diff --git a/ACE/ace/Intrusive_List.inl b/ACE/ace/Intrusive_List.inl index f76370917e9..23d0095a948 100644 --- a/ACE/ace/Intrusive_List.inl +++ b/ACE/ace/Intrusive_List.inl @@ -6,13 +6,13 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL -template<class T> ACE_INLINE int +template<class T> ACE_INLINE bool ACE_Intrusive_List<T>::is_empty (void) const { return this->head_ == 0; } -template<class T> ACE_INLINE int +template<class T> ACE_INLINE bool ACE_Intrusive_List<T>::empty (void) const { return this->is_empty (); diff --git a/ACE/ace/Intrusive_List_Node.h b/ACE/ace/Intrusive_List_Node.h index b62d681a047..f39a2833d14 100644 --- a/ACE/ace/Intrusive_List_Node.h +++ b/ACE/ace/Intrusive_List_Node.h @@ -14,7 +14,7 @@ #define ACE_INTRUSIVE_LIST_NODE_H #include /**/ "ace/pre.h" -#include /**/ "ace/config-all.h" +#include /**/ "ace/config-lite.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once @@ -37,7 +37,6 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL * confused using such templates, the class is provided as a helper * for our lucky users that only need portability to modern C++ * compilers. - * */ template <class T> class ACE_Intrusive_List_Node diff --git a/ACE/ace/LSOCK_CODgram.h b/ACE/ace/LSOCK_CODgram.h index 667fa210f0d..029bfeab964 100644 --- a/ACE/ace/LSOCK_CODgram.h +++ b/ACE/ace/LSOCK_CODgram.h @@ -32,27 +32,58 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL /** * @class ACE_LSOCK_CODgram * - * @brief Defines the member functions for the <ACE_LSOCK> connected + * @brief Defines a fully specified (sometimes called "connected") UNIX-domain * datagram abstraction. + * + * ACE_LSOCK_CODgram provides a way to use a UNIX-domain datagram socket in + * a situation where the local and peer addresses are fully known in advance. + * The "connection-oriented" part of "CODgram" is a misnomer. There is no + * connection used on this type of socket. It merely specifies that both + * endpoint addresses are known in advance of use. Furthermore, this class + * is more suited for use cases where a local endpoint wishes to communicate + * with a single, known peer and may or may not have a specified local address. + * + * If your use case requires receiving datagrams from multiple peers without + * previously known addresses, consider using ACE_LSOCK_Dgram instead. */ class ACE_Export ACE_LSOCK_CODgram : public ACE_SOCK_CODgram, public ACE_LSOCK { public: - // = Initialization methods. - /// Default constructor. + /// Default constructor; requires a call to open() prior to communication. ACE_LSOCK_CODgram (void); - /// Initiate a connected-datagram. + /** + * @name Initialization methods + */ + //@{ + /** + * Initialize a fully-specified datagram socket. + * + * @param remote_sap Remote/peer address. This should be an ACE_UNIX_Addr + * object. It specifies where all sent datagrams will + * be sent to. + * @param local_sap Local address. The local address to receive datagrams + * at. If not specified, an unused address is selected. + * If specified, should be an ACE_UNIX_Addr object. + * + * @sa ACE_UNIX_Addr + */ ACE_LSOCK_CODgram (const ACE_Addr &remote_sap, const ACE_Addr &local_sap = ACE_Addr::sap_any, int protocol_family = PF_UNIX, int protocol = 0); - /// Initiate a connected-datagram. + /** + * Initialize a fully-specified datagram socket. + * + * @retval 0 if no error. + * @retval -1 on error; check errno for an error reason. + */ int open (const ACE_Addr &remote_sap, const ACE_Addr &local_sap = ACE_Addr::sap_any, int protocol_family = PF_UNIX, int protocol = 0); + //@} /// Get underlying handle. ACE_HANDLE get_handle (void) const; diff --git a/ACE/ace/Lib_Find.cpp b/ACE/ace/Lib_Find.cpp index 6db6d78973b..3caa58bf19e 100644 --- a/ACE/ace/Lib_Find.cpp +++ b/ACE/ace/Lib_Find.cpp @@ -26,29 +26,30 @@ extern "C" int LIB$FIND_IMAGE_SYMBOL(...); +/** + * @internal + * + * Implements a class to register symbols and addresses for use with DLL + * symbol retrieval. + * + * OpenVMS restricts symbol length to 31 characters encoding any symbols + * longer than that. In these cases dlsym() only works with the encoded + * names. + * This creates serious problems for the service configurator framework + * where the factory method names often exceed 31 chars and where loading + * is based on retrieval of method pointers using the *full* name. + * For OpenVMS we therefor added this singleton class and the + * ACE_Dynamic_Svc_Registrar class which registers full names and function + * pointers with this singleton at the time the static ACE_Dynamic_Svc_Registrar + * object is created in a (service) DLL. + * By forcing the DLL to load using a common symbol ("NULL") we trigger static + * object creation *before* the full names are referenced. + * Symbol references will be resolved as follows on OpenVMS: + * - first try directly from DLL using the RTL dlsym() function and if that fails; + * - try to find symbol in singleton registry. + */ class ACE_LD_Symbol_Registry { - // @internal - // = TITLE - // Implements a class to register symbols and addresses for use with DLL - // symbol retrieval. - // - // = DESCRIPTION - // OpenVMS restricts symbol length to 31 characters encoding any symbols - // longer than that. In these cases dlsym() only works with the encoded - // names. - // This creates serious problems for the service configurator framework - // where the factory method names often exceed 31 chars and where loading - // is based on retrieval of method pointers using the *full* name. - // For OpenVMS we therefor added this singleton class and the - // ACE_Dynamic_Svc_Registrar class which registers full names and function - // pointers with this singleton at the time the static ACE_Dynamic_Svc_Registrar - // object is created in a (service) DLL. - // By forcing the DLL to load using a common symbol ("NULL") we trigger static - // object creation *before* the full names are referenced. - // Symbol references will be resolved as follows on OpenVMS: - // - first try directly from DLL using the RTL dlsym() function and if that fails; - // - try to find symbol in singleton registry. public: typedef ACE_RB_Tree<const ACE_TCHAR*, @@ -202,12 +203,12 @@ ACE::ldfind (const ACE_TCHAR* filename, ACE_TCHAR tempcopy[MAXPATHLEN + 1]; ACE_TCHAR searchpathname[MAXPATHLEN + 1]; -#if defined (ACE_WIN32) && defined (ACE_LD_DECORATOR_STR) && !defined (ACE_DISABLE_DEBUG_DLL_CHECK) +#if defined (ACE_LD_DECORATOR_STR) && !defined (ACE_DISABLE_DEBUG_DLL_CHECK) ACE_TCHAR decorator[] = ACE_LD_DECORATOR_STR; ACE_TCHAR searchfilename[MAXPATHLEN + sizeof(decorator) / sizeof (ACE_TCHAR)]; #else ACE_TCHAR searchfilename[MAXPATHLEN + 1]; -#endif /* ACE_WIN32 && ACE_LD_DECORATOR_STR && !ACE_DISABLE_DEBUG_DLL_CHECK */ +#endif /* ACE_LD_DECORATOR_STR && !ACE_DISABLE_DEBUG_DLL_CHECK */ // Create a copy of filename to work with. if (ACE_OS::strlen (filename) + 1 @@ -284,18 +285,17 @@ ACE::ldfind (const ACE_TCHAR* filename, return -1; } -#if defined (ACE_WIN32) && defined (ACE_LD_DECORATOR_STR) && !defined (ACE_DISABLE_DEBUG_DLL_CHECK) - size_t len_searchfilename = ACE_OS::strlen (searchfilename); - if (! has_suffix) - ACE_OS::strcpy (searchfilename + len_searchfilename, - decorator); +#if defined (ACE_LD_DECORATOR_STR) && !defined (ACE_DISABLE_DEBUG_DLL_CHECK) + size_t const len_searchfilename = ACE_OS::strlen (searchfilename); + if (!has_suffix) + ACE_OS::strcpy (searchfilename + len_searchfilename, decorator); for (int tag = 1; tag >= 0; tag --) { if (tag == 0) searchfilename [len_searchfilename] = 0; -#endif /* ACE_WIN32 && ACE_LD_DECORATOR_STR && !ACE_DISABLE_DEBUG_DLL_CHECK */ +#endif /* ACE_LD_DECORATOR_STR && !ACE_DISABLE_DEBUG_DLL_CHECK */ // Use absolute pathname if there is one. if (ACE_OS::strlen (searchpathname) > 0) { @@ -498,17 +498,16 @@ ACE::ldfind (const ACE_TCHAR* filename, ACE_OS::free (ld_path_temp); #endif /* ACE_HAS_WINCE */ ACE_OS::free ((void *) ld_path); -#if defined (ACE_HAS_WINCE) && defined (ACE_LD_DECORATOR_STR) && \ - !defined (ACE_DISABLE_DEBUG_DLL_CHECK) +#if defined (ACE_LD_DECORATOR_STR) && !defined (ACE_DISABLE_DEBUG_DLL_CHECK) if (result == 0 || tag == 0) -#endif /* ACE_HAS_WINCE && ACE_LD_DECORATOR_STR && !ACE_DISABLE_DEBUG_DLL_CHECK */ +#endif /* ACE_LD_DECORATOR_STR && !ACE_DISABLE_DEBUG_DLL_CHECK */ return result; } #endif /* ACE_WIN32 && !ACE_HAS_WINCE */ } -#if defined (ACE_WIN32) && defined (ACE_LD_DECORATOR_STR) && !defined (ACE_DISABLE_DEBUG_DLL_CHECK) +#if defined (ACE_LD_DECORATOR_STR) && !defined (ACE_DISABLE_DEBUG_DLL_CHECK) } -#endif /* ACE_WIN32 && ACE_LD_DECORATOR_STR && !ACE_DISABLE_DEBUG_DLL_CHECK */ +#endif /* ACE_LD_DECORATOR_STR && !ACE_DISABLE_DEBUG_DLL_CHECK */ errno = ENOENT; return -1; diff --git a/ACE/ace/Local_Tokens.h b/ACE/ace/Local_Tokens.h index cea51db5894..4f46f43fdab 100644 --- a/ACE/ace/Local_Tokens.h +++ b/ACE/ace/Local_Tokens.h @@ -223,7 +223,7 @@ public: /// Allows us to pass args to the construction of the TSS object. virtual ACE_TPQ_Entry *make_TSS_TYPE (void) const; - /// Operator overloading and inheritence don't mix. + /// Operator overloading and inheritance don't mix. operator ACE_TPQ_Entry *(void); /// Dump the state of the class. @@ -270,7 +270,7 @@ public: /// Destructor. ~ACE_TPQ_Iterator (void); - /// Pass back the <next_item>. + /// Pass back the @a next_item. int next (ACE_TPQ_Entry *&next_item); /// Returns 1 when all items have been seen, else 0. diff --git a/ACE/ace/Lock_Adapter_T.h b/ACE/ace/Lock_Adapter_T.h index 117684a1a2a..866616d1bb1 100644 --- a/ACE/ace/Lock_Adapter_T.h +++ b/ACE/ace/Lock_Adapter_T.h @@ -43,7 +43,7 @@ public: // = Initialization/Finalization methods. - /// Constructor. All locking requests will be forwarded to <lock>. + /// Constructor. All locking requests will be forwarded to @a lock. ACE_Lock_Adapter (ACE_LOCKING_MECHANISM &lock); /// Constructor. Since no lock is provided by the user, one will be diff --git a/ACE/ace/Log_Msg.cpp b/ACE/ace/Log_Msg.cpp index 99ebb619cc9..ce445120de9 100644 --- a/ACE/ace/Log_Msg.cpp +++ b/ACE/ace/Log_Msg.cpp @@ -17,6 +17,7 @@ #include "ace/OS_NS_sys_time.h" #include "ace/OS_NS_wchar.h" #include "ace/OS_NS_signal.h" +#include "ace/os_include/os_typeinfo.h" #if !defined (ACE_MT_SAFE) || (ACE_MT_SAFE != 0) # include "ace/Object_Manager_Base.h" @@ -137,7 +138,7 @@ public: #if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0) //FUZZ: disable check_for_lack_ACE_OS - static void close (void); + static void close (void) ACE_GCC_DESTRUCTOR_ATTRIBUTE; //FUZZ: enable check_for_lack_ACE_OS static ACE_Recursive_Thread_Mutex *get_lock (void); @@ -263,7 +264,7 @@ ACE_TSS_CLEANUP_NAME (void *ptr) if (log_msg->thr_desc()!=0) log_msg->thr_desc()->log_msg_cleanup(log_msg); else - delete (ACE_Log_Msg *) ptr; + delete log_msg; } # endif /* ACE_HAS_THREAD_SPECIFIC_STORAGE || ACE_HAS_TSS_EMULATION */ #endif /* ! ACE_MT_SAFE */ @@ -398,7 +399,9 @@ ACE_Log_Msg::instance (void) { ACE_NEW_RETURN (log_msg_cleanup, ACE_Msg_Log_Cleanup, 0); // Register the instance for destruction at program termination. - ACE_Object_Manager::at_exit (log_msg_cleanup); + ACE_Object_Manager::at_exit (log_msg_cleanup, + 0, + typeid (*log_msg_cleanup).name ()); } return &log_msg_cleanup->object (); @@ -650,11 +653,11 @@ ACE_Log_Msg::ACE_Log_Msg (void) msg_ (0), restart_ (1), // Restart by default... ostream_ (0), + ostream_refcount_ (0), msg_callback_ (0), trace_depth_ (0), trace_active_ (false), tracing_enabled_ (true), // On by default? - delete_ostream_(false), thr_desc_ (0), priority_mask_ (default_priority_mask_), timestamp_ (0) @@ -743,22 +746,28 @@ ACE_Log_Msg::~ACE_Log_Msg (void) } } - // - // do we need to close and clean up? - // - if (this->delete_ostream_) -#if defined (ACE_LACKS_IOSTREAM_TOTALLY) + this->cleanup_ostream (); + + delete[] this->msg_; +} + +void +ACE_Log_Msg::cleanup_ostream () +{ + if (this->ostream_refcount_) { - ACE_OS::fclose (this->ostream_); - } + if (--*this->ostream_refcount_ == 0) + { + delete this->ostream_refcount_; +#if defined (ACE_LACKS_IOSTREAM_TOTALLY) + ACE_OS::fclose (this->ostream_); #else - { - delete ostream_; - ostream_ = 0; - } + delete this->ostream_; + this->ostream_ = 0; #endif - - delete[] this->msg_; + } + this->ostream_refcount_ = 0; + } } // Open the sender-side of the message queue. @@ -1262,16 +1271,20 @@ ACE_Log_Msg::log (const ACE_TCHAR *format_str, #if !defined (ACE_WIN32) && defined (ACE_USES_WCHAR) ACE_OS::strcpy (fp, ACE_TEXT ("ls: %ls")); + wchar_t *str = va_arg (argp, wchar_t *); #else ACE_OS::strcpy (fp, ACE_TEXT ("s: %s")); + ACE_TCHAR *str = va_arg (argp, ACE_TCHAR *); #endif if (can_check) this_len = ACE_OS::snprintf - (bp, bspace, format, va_arg (argp, ACE_TCHAR *), + (bp, bspace, format, + str ? str : ACE_TEXT ("(null)"), ACE_TEXT_CHAR_TO_TCHAR (msg)); else this_len = ACE_OS::sprintf - (bp, format, va_arg (argp, ACE_TCHAR *), + (bp, format, + str ? str : ACE_TEXT ("(null)"), ACE_TEXT_CHAR_TO_TCHAR (msg)); #if defined (ACE_WIN32) } @@ -1302,6 +1315,7 @@ ACE_Log_Msg::log (const ACE_TCHAR *format_str, // it into a string. If this doesn't work it // returns "unknown error" which is fine for // our purposes. + ACE_TCHAR *str = va_arg (argp, ACE_TCHAR *); if (lpMsgBuf == 0) { const ACE_TCHAR *message = @@ -1310,12 +1324,12 @@ ACE_Log_Msg::log (const ACE_TCHAR *format_str, if (can_check) this_len = ACE_OS::snprintf (bp, bspace, format, - va_arg (argp, const ACE_TCHAR *), + str ? str : ACE_TEXT ("(null)"), message); else this_len = ACE_OS::sprintf (bp, format, - va_arg (argp, const ACE_TCHAR *), + str ? str : ACE_TEXT ("(null)"), message); } else @@ -1324,12 +1338,12 @@ ACE_Log_Msg::log (const ACE_TCHAR *format_str, if (can_check) this_len = ACE_OS::snprintf (bp, bspace, format, - va_arg (argp, ACE_TCHAR *), + str ? str : ACE_TEXT ("(null)"), lpMsgBuf); else this_len = ACE_OS::sprintf (bp, format, - va_arg (argp, ACE_TCHAR *), + str ? str : ACE_TEXT ("(null)"), lpMsgBuf); // Free the buffer. ::LocalFree (lpMsgBuf); @@ -1360,8 +1374,7 @@ ACE_Log_Msg::log (const ACE_TCHAR *format_str, case 'm': // Format the string assocated with the errno value. { errno = 0; - char *msg = 0; - msg = ACE_OS::strerror (ACE::map_errno (this->errnum ())); + char *msg = ACE_OS::strerror (ACE::map_errno (this->errnum ())); // Windows can try to translate the errnum using // system calls if strerror() doesn't get anything useful. #if defined (ACE_WIN32) @@ -2190,7 +2203,6 @@ ACE_Log_Msg::log (ACE_Log_Record &log_record, ACE_Log_Msg_Manager::custom_backend_->log (log_record); } - // This must come last, after the other two print operations // (see the <ACE_Log_Record::print> method for details). if (ACE_BIT_ENABLED (ACE_Log_Msg::flags_, @@ -2226,7 +2238,7 @@ ACE_Log_Msg::log_hexdump (ACE_Log_Priority log_priority, return 0; ACE_TCHAR* buf = 0; - const size_t buf_sz = + size_t const buf_sz = ACE_Log_Record::MAXLOGMSGLEN - ACE_Log_Record::VERBOSE_LEN - 58; ACE_NEW_RETURN (buf, ACE_TCHAR[buf_sz], -1); @@ -2245,7 +2257,11 @@ ACE_Log_Msg::log_hexdump (ACE_Log_Priority log_priority, if (text) sz = ACE_OS::sprintf (msg_buf, +#if !defined (ACE_WIN32) && defined (ACE_USES_WCHAR) + ACE_TEXT ("%ls - "), +#else ACE_TEXT ("%s - "), +#endif text); sz += ACE_OS::sprintf (msg_buf + sz, @@ -2412,18 +2428,32 @@ void ACE_Log_Msg::msg_ostream (ACE_OSTREAM_TYPE *m, bool delete_ostream) { if (this->ostream_ == m) - return; + { + // Same stream, allow user to change the delete_ostream "flag" + if (delete_ostream && !this->ostream_refcount_) + { + ACE_NEW (this->ostream_refcount_, Atomic_ULong (1)); + } + else if (!delete_ostream && this->ostream_refcount_) + { + if (--*this->ostream_refcount_ == 0) + { + delete this->ostream_refcount_; + } + this->ostream_refcount_ = 0; + } + // The other two cases are no-ops, the user has requested the same + // state that's already present. + return; + } + + this->cleanup_ostream (); - if (this->delete_ostream_) + if (delete_ostream) { -#if defined (ACE_LACKS_IOSTREAM_TOTALLY) - ACE_OS::fclose (this->ostream_); -#else - delete this->ostream_; -#endif + ACE_NEW (this->ostream_refcount_, Atomic_ULong (1)); } - this->delete_ostream_ = delete_ostream; this->ostream_ = m; } @@ -2477,6 +2507,15 @@ ACE_Log_Msg::init_hook (ACE_OS_Log_Msg_Attributes &attributes { ACE_Log_Msg *inherit_log = ACE_LOG_MSG; attributes.ostream_ = inherit_log->msg_ostream (); + if (attributes.ostream_ && inherit_log->ostream_refcount_) + { + ++*inherit_log->ostream_refcount_; + attributes.ostream_refcount_ = inherit_log->ostream_refcount_; + } + else + { + attributes.ostream_refcount_ = 0; + } attributes.priority_mask_ = inherit_log->priority_mask (); attributes.tracing_enabled_ = inherit_log->tracing_enabled (); attributes.restart_ = inherit_log->restart (); @@ -2501,7 +2540,10 @@ ACE_Log_Msg::inherit_hook (ACE_OS_Thread_Descriptor *thr_desc, if (attributes.ostream_) { - new_log->msg_ostream (attributes.ostream_); + new_log->ostream_ = attributes.ostream_; + new_log->ostream_refcount_ = + static_cast<Atomic_ULong *> (attributes.ostream_refcount_); + new_log->priority_mask (attributes.priority_mask_); if (attributes.tracing_enabled_) diff --git a/ACE/ace/Log_Msg.h b/ACE/ace/Log_Msg.h index 1c28ee30815..a59e34390f1 100644 --- a/ACE/ace/Log_Msg.h +++ b/ACE/ace/Log_Msg.h @@ -24,19 +24,35 @@ #include "ace/Default_Constants.h" #include "ace/Log_Priority.h" #include "ace/os_include/os_limits.h" +#include "ace/Atomic_Op.h" +#include "ace/Synch_Traits.h" // The ACE_ASSERT macro used to be defined here, include ace/Assert.h // for backwards compatibility. #include "ace/Assert.h" #if defined (ACE_NLOGGING) -#define ACE_HEX_DUMP(X) do {} while (0) -#define ACE_RETURN(Y) do { return (Y); } while (0) -#define ACE_ERROR_RETURN(X, Y) return (Y) -#define ACE_ERROR_BREAK(X) { break; } -#define ACE_ERROR(X) do {} while (0) -#define ACE_DEBUG(X) do {} while (0) -#define ACE_ERROR_INIT(VALUE, FLAGS) +#if !defined (ACE_HEX_DUMP) +# define ACE_HEX_DUMP(X) do {} while (0) +#endif +#if !defined (ACE_RETURN) +# define ACE_RETURN(Y) do { return (Y); } while (0) +#endif +#if !defined (ACE_ERROR_RETURN) +# define ACE_ERROR_RETURN(X, Y) return (Y) +#endif +#if !defined (ACE_ERROR_BREAK) +# define ACE_ERROR_BREAK(X) { break; } +#endif +#if !defined (ACE_ERROR) +# define ACE_ERROR(X) do {} while (0) +#endif +#if !defined (ACE_DEBUG) +# define ACE_DEBUG(X) do {} while (0) +#endif +#if !defined (ACE_ERROR_INIT) +# define ACE_ERROR_INIT(VALUE, FLAGS) +#endif #else #if !defined (ACE_HEX_DUMP) #define ACE_HEX_DUMP(X) \ @@ -583,6 +599,8 @@ public: ACE_ALLOC_HOOK_DECLARE; private: + void cleanup_ostream (); + /// Status of operation (-1 means failure, >= 0 means success). int status_; @@ -607,6 +625,15 @@ private: /// The ostream where logging messages can be written. ACE_OSTREAM_TYPE *ostream_; + /// This pointer is 0 if we are not reference counting (the user has not + /// passed "true" for the delete_ostream argument to msg_ostream). + /// If we are reference counting, this points to a shared count that will + /// be deleted when it reaches zero. Since we want optional but shared + /// ownership neither std::auto_ptr nor ACE_Strong_Bound_Ptr have the right + /// semantics. *Bound_Ptr also doesn't take advantage of Atomic_Op. + typedef ACE_Atomic_Op<ACE_SYNCH_MUTEX, unsigned long> Atomic_ULong; + Atomic_ULong *ostream_refcount_; + /// The callback object. ACE_Log_Msg_Callback *msg_callback_; @@ -619,9 +646,6 @@ private: /// Are we allowing tracing in this thread? bool tracing_enabled_; - /// Are we deleting this ostream? - bool delete_ostream_; - /** * If we're running in the context of an ACE_Thread_Manager this * will point to the thread descriptor adapter which holds the diff --git a/ACE/ace/Log_Msg_IPC.cpp b/ACE/ace/Log_Msg_IPC.cpp index 82411a3cf92..f78a56564b6 100644 --- a/ACE/ace/Log_Msg_IPC.cpp +++ b/ACE/ace/Log_Msg_IPC.cpp @@ -64,21 +64,24 @@ ACE_Log_Msg_IPC::log (ACE_Log_Record &log_record) // Insert contents of <log_record> into payload stream. ACE_OutputCDR payload (max_payload_size); - payload << log_record; + if (!(payload << log_record)) + return -1; // Get the number of bytes used by the CDR stream. If it becomes desireable // to support payloads more than 4GB, this field will need to be changed // to a 64-bit value. - ACE_CDR::ULong length = + ACE_CDR::ULong const length = ACE_Utils::truncate_cast<ACE_CDR::ULong> (payload.total_length ()); // Send a header so the receiver can determine the byte order and // size of the incoming CDR stream. ACE_OutputCDR header (ACE_CDR::MAX_ALIGNMENT + 8); - header << ACE_OutputCDR::from_boolean (ACE_CDR_BYTE_ORDER); + if (!(header << ACE_OutputCDR::from_boolean (ACE_CDR_BYTE_ORDER))) + return -1; // Store the size of the payload that follows - header << ACE_CDR::ULong (length); + if (!(header << ACE_CDR::ULong (length))) + return -1; // Use an iovec to send both buffer and payload simultaneously. iovec iov[2]; @@ -87,7 +90,7 @@ ACE_Log_Msg_IPC::log (ACE_Log_Record &log_record) iov[1].iov_base = payload.begin ()->rd_ptr (); iov[1].iov_len = length; -#if defined (ACE_HAS_STREAM_PIPES) +#if (ACE_HAS_STREAM_LOG_MSG_IPC == 1) // Use the <putpmsg> API if supported to ensure correct message // queueing according to priority. @@ -105,7 +108,7 @@ ACE_Log_Msg_IPC::log (ACE_Log_Record &log_record) // We're running over sockets, so send header and payload // efficiently using "gather-write". return this->message_queue_.sendv_n (iov, 2); -#endif /* ACE_HAS_STREAM_PIPES */ +#endif /* ACE_HAS_STREAM_LOG_MSG_IPC */ } ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ACE/ace/Log_Msg_IPC.h b/ACE/ace/Log_Msg_IPC.h index 8b39b9ec551..76b70b583a9 100644 --- a/ACE/ace/Log_Msg_IPC.h +++ b/ACE/ace/Log_Msg_IPC.h @@ -20,10 +20,12 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ +#include "ace/Default_Constants.h" + // IPC conduit between sender and client daemon. This should be // included in the ACE_Log_Msg class, but due to "order of include" // problems it can't be... -#if defined (ACE_HAS_STREAM_PIPES) +#if (ACE_HAS_STREAM_LOG_MSG_IPC == 1) # include "ace/SPIPE_Connector.h" ACE_BEGIN_VERSIONED_NAMESPACE_DECL typedef ACE_SPIPE_Stream ACE_LOG_MSG_IPC_STREAM; diff --git a/ACE/ace/Log_Record.h b/ACE/ace/Log_Record.h index d03faeb8680..a48b9a322bf 100644 --- a/ACE/ace/Log_Record.h +++ b/ACE/ace/Log_Record.h @@ -72,7 +72,7 @@ public: /// Write the contents of the logging record to the appropriate - /// <FILE> iff the corresponding type is enabled. + /// <FILE> if the corresponding type is enabled. int print (const ACE_TCHAR host_name[], u_long verbose_flag, #if !defined (ACE_HAS_WINCE) @@ -83,7 +83,7 @@ public: #if !defined (ACE_LACKS_IOSTREAM_TOTALLY) /// Write the contents of the logging record to the appropriate - /// <ostream> iff the corresponding type is enabled. + /// <ostream> if the corresponding type is enabled. int print (const ACE_TCHAR host_name[], u_long verbose_flag, ACE_OSTREAM_TYPE &stream); @@ -95,23 +95,23 @@ public: /** * Returns a character array with the string form of the - * <ACE_Log_Priority> parameter. This is used for the verbose + * ACE_Log_Priority parameter. This is used for the verbose * printing format. */ static const ACE_TCHAR *priority_name (ACE_Log_Priority p); - // IMPORTANT: @a name must be a statically allocated const ACE_TCHAR* + /// IMPORTANT: @a name must be a statically allocated const ACE_TCHAR* static void priority_name (ACE_Log_Priority p, const ACE_TCHAR *name); // = Marshall/demarshall - /// Encode the <Log_Record> for transmission on the network. + /// Encode the @c Log_Record for transmission on the network. /// @deprecated The encode() and decode() metods are deprecated; please use /// the CDR insertion and extraction operators to properly encode and decode /// ACE_Log_Record objects. void encode (void); - /// Decode the <Log_Record> received from the network. + /// Decode the @c Log_Record received from the network. /// @deprecated The encode() and decode() metods are deprecated; please use /// the CDR insertion and extraction operators to properly encode and decode /// ACE_Log_Record objects. @@ -198,7 +198,9 @@ private: /// Logging record data ACE_TCHAR *msg_data_; // Heap-allocated text message area - size_t msg_data_size_; // Allocated size of msg_data_ in ACE_TCHARs + + /// Allocated size of msg_data_ in ACE_TCHARs + size_t msg_data_size_; /// disallow copying... ACE_Log_Record (const ACE_Log_Record& rhs); diff --git a/ACE/ace/Log_Record.inl b/ACE/ace/Log_Record.inl index aba217d93ef..1973a949746 100644 --- a/ACE/ace/Log_Record.inl +++ b/ACE/ace/Log_Record.inl @@ -20,17 +20,15 @@ ACE_INLINE void ACE_Log_Record::encode (void) { ACE_TRACE ("ACE_Log_Record::encode"); -#if !defined (ACE_LACKS_HTONL) - this->length_ = htonl (this->length_); - this->type_ = htonl (this->type_); + this->length_ = ACE_HTONL (this->length_); + this->type_ = ACE_HTONL (this->type_); // Make sure we don't enclose the sec() and usec() fields until // they've been normalized. // secs_ is commented out because it can be 64 bits. This method is // deprecated; use the CDR operations instead. - // this->secs_ = htonl (this->secs_); - this->usecs_ = htonl (this->usecs_); - this->pid_ = htonl (this->pid_); -#endif /* ACE_LACKS_HTONL */ + // this->secs_ = ACE_HTONL (this->secs_); + this->usecs_ = ACE_HTONL (this->usecs_); + this->pid_ = ACE_HTONL (this->pid_); } ACE_INLINE void diff --git a/ACE/ace/Logging_Strategy.h b/ACE/ace/Logging_Strategy.h index 443e88915ec..6abe92cf7ea 100644 --- a/ACE/ace/Logging_Strategy.h +++ b/ACE/ace/Logging_Strategy.h @@ -171,7 +171,7 @@ protected: int count_; /// Tells us what is the maximum log file to write. We will write - /// <max_file_number_> + 1 files (includes the current log file). + /// @c max_file_number_ + 1 files (includes the current log file). /// Default value is 1, i.e., 2 files by default. int max_file_number_; @@ -181,7 +181,7 @@ protected: u_long interval_; /// Maximum logfile size (in KB). Default value is - /// <ACE_DEFAULT_MAX_LOGFILE_SIZE>. + /// ACE_DEFAULT_MAX_LOGFILE_SIZE. u_long max_size_; /// ACE_Log_Msg instance to work with diff --git a/ACE/ace/MEM_Acceptor.cpp b/ACE/ace/MEM_Acceptor.cpp index f8c6f0cd850..a6b000a29fc 100644 --- a/ACE/ace/MEM_Acceptor.cpp +++ b/ACE/ace/MEM_Acceptor.cpp @@ -192,7 +192,8 @@ ACE_MEM_Acceptor::accept (ACE_MEM_Stream &new_stream, if (ACE::recv (new_handle, &client_signaling, sizeof (ACE_INT16)) == -1) ACE_ERROR_RETURN ((LM_DEBUG, - ACE_TEXT ("ACE_MEM_Acceptor::%p error receiving strategy\n"), ACE_TEXT ("accept")), + ACE_TEXT ("ACE_MEM_Acceptor::%p error receiving strategy\n"), + ACE_TEXT ("accept")), -1); // Ensure minimum buffer size diff --git a/ACE/ace/MMAP_Memory_Pool.cpp b/ACE/ace/MMAP_Memory_Pool.cpp index 02e82dcf4cf..a4109687b04 100644 --- a/ACE/ace/MMAP_Memory_Pool.cpp +++ b/ACE/ace/MMAP_Memory_Pool.cpp @@ -198,7 +198,7 @@ ACE_MMAP_Memory_Pool::ACE_MMAP_Memory_Pool ( { if (this->signal_handler_.register_handler (SIGSEGV, this) == -1) ACE_ERROR ((LM_ERROR, - "%p\n", this->backing_store_name_)); + ACE_TEXT("%p\n"), this->backing_store_name_)); } #endif /* ACE_WIN32 */ } @@ -311,12 +311,12 @@ ACE_MMAP_Memory_Pool::map_file (size_t map_size) { #if (ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1) this->base_addr_ = this->mmap_.addr (); - + if (obase_addr && this->base_addr_ != obase_addr) { ACE_BASED_POINTER_REPOSITORY::instance ()->unbind (obase_addr); } - + ACE_BASED_POINTER_REPOSITORY::instance ()->bind (this->base_addr_, map_size); #endif /* ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1 */ diff --git a/ACE/ace/Makefile.am b/ACE/ace/Makefile.am index 8a18401b84e..762942fbcae 100644 --- a/ACE/ace/Makefile.am +++ b/ACE/ace/Makefile.am @@ -213,6 +213,7 @@ libACE_la_SOURCES = \ OS_NS_time.cpp \ OS_NS_unistd.cpp \ OS_NS_wchar.cpp \ + OS_NS_wctype.cpp \ OS_QoS.cpp \ OS_TLI.cpp \ OS_Thread_Adapter.cpp \ @@ -808,6 +809,8 @@ nobase_include_HEADERS += \ OS_NS_unistd.h \ OS_NS_unistd.inl \ OS_NS_wchar.h \ + OS_NS_wctype.h \ + OS_NS_wctype.inl \ OS_NS_wchar.inl \ OS_QoS.h \ OS_String.h \ @@ -1211,6 +1214,7 @@ nobase_include_HEADERS += \ os_include/os_tgmath.h \ os_include/os_time.h \ os_include/os_trace.h \ + os_include/os_typeinfo.h \ os_include/os_ucontext.h \ os_include/os_ulimit.h \ os_include/os_unistd.h \ diff --git a/ACE/ace/Malloc.cpp b/ACE/ace/Malloc.cpp index 9c6da58fb0a..ce6a235b820 100644 --- a/ACE/ace/Malloc.cpp +++ b/ACE/ace/Malloc.cpp @@ -145,10 +145,9 @@ ACE_Control_Block::ACE_Name_Node::dump (void) const ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("pointer = %@"), (const char *) this->pointer_)); ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nnext_ = %@"), (ACE_Name_Node *) this->next_)); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("\nname_ = (%@, %s)"), + ACE_TEXT ("\nname_ = (%@, %C)\n"), (const char *) this->name_, (const char *) this->name_)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n"))); ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP)); #endif /* ACE_HAS_DUMP */ } diff --git a/ACE/ace/Malloc_T.cpp b/ACE/ace/Malloc_T.cpp index 7e5b222d6f7..d0918128180 100644 --- a/ACE/ace/Malloc_T.cpp +++ b/ACE/ace/Malloc_T.cpp @@ -1055,8 +1055,7 @@ ACE_Malloc_LIFO_Iterator_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>::dump (void) const ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this)); this->curr_->dump (); this->guard_.dump (); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("name_ = %s"), this->name_)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("name_ = %C\n"), this->name_)); ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP)); #endif /* ACE_HAS_DUMP */ } @@ -1150,8 +1149,7 @@ ACE_Malloc_FIFO_Iterator_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>::dump (void) const ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this)); this->curr_->dump (); this->guard_.dump (); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("name_ = %s"), this->name_)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("name_ = %s\n"), this->name_)); ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP)); #endif /* ACE_HAS_DUMP */ } diff --git a/ACE/ace/Map_T.h b/ACE/ace/Map_T.h index 142d07803ce..a552e0f6d48 100644 --- a/ACE/ace/Map_T.h +++ b/ACE/ace/Map_T.h @@ -1145,11 +1145,11 @@ public: /// Close down and release dynamically allocated resources. virtual ~ACE_Hash_Map_Manager_Ex_Adapter (void); - /// Initialize a <Map> with size @a length. + /// Initialize a Map with size @a length. virtual int open (size_t length = ACE_DEFAULT_MAP_SIZE, ACE_Allocator *alloc = 0); - /// Close down a <Map> and release dynamically allocated resources. + /// Close down a Map and release dynamically allocated resources. virtual int close (void); /** @@ -1204,7 +1204,7 @@ public: virtual int bind_create_key (const VALUE &value); /// Recovers the original key potentially modified by the map during - /// <bind_modify_key>. + /// bind_modify_key(). virtual int recover_key (const KEY &modified_key, KEY &original_key); diff --git a/ACE/ace/Message_Block.cpp b/ACE/ace/Message_Block.cpp index 8a73512f3c2..cac8a6f9a79 100644 --- a/ACE/ace/Message_Block.cpp +++ b/ACE/ace/Message_Block.cpp @@ -154,7 +154,7 @@ ACE_Data_Block::dump (void) const ACE_TEXT ("cur_size_ = %u\n") ACE_TEXT ("max_size_ = %u\n") ACE_TEXT ("flags_ = %u\n") - ACE_TEXT ("base_ = %u\n") + ACE_TEXT ("base_ = %@\n") ACE_TEXT ("locking_strategy_ = %u\n") ACE_TEXT ("reference_count_ = %u\n") ACE_TEXT ("---------------------------\n"), @@ -179,11 +179,11 @@ ACE_Message_Block::dump (void) const ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("-----( Message Block )-----\n") ACE_TEXT ("priority_ = %d\n") - ACE_TEXT ("next_ = %u\n") - ACE_TEXT ("prev_ = %u\n") - ACE_TEXT ("cont_ = %u\n") - ACE_TEXT ("rd_ptr_ = %u\n") - ACE_TEXT ("wr_ptr_ = %u\n") + ACE_TEXT ("next_ = %@\n") + ACE_TEXT ("prev_ = %@\n") + ACE_TEXT ("cont_ = %@\n") + ACE_TEXT ("rd_ptr_ = %@\n") + ACE_TEXT ("wr_ptr_ = %@\n") ACE_TEXT ("---------------------------\n"), this->priority_, this->next_, @@ -815,8 +815,10 @@ ACE_Data_Block::release_no_delete (ACE_Lock *lock) } // This is the case when no lock was passed in else - // Lock to be used is our lock - lock_to_be_used = this->locking_strategy_; + { + // Lock to be used is our lock + lock_to_be_used = this->locking_strategy_; + } // If there's a locking strategy then we need to acquire the lock // before decrementing the count. @@ -827,7 +829,9 @@ ACE_Data_Block::release_no_delete (ACE_Lock *lock) result = this->release_i (); } else - result = this->release_i (); + { + result = this->release_i (); + } return result; } @@ -878,7 +882,7 @@ ACE_Message_Block::release (void) // One guard for all ACE_GUARD_RETURN (ACE_Lock, ace_mon, *lock, 0); - // Call non-guarded release with <lock> + // Call non-guarded release with @a lock destroy_dblock = this->release_i (lock); } // This is the case when we have a valid data block but no lock @@ -980,6 +984,7 @@ ACE_Message_Block::~ACE_Message_Block (void) this->prev_ = 0; this->next_ = 0; + this->cont_ = 0; } ACE_Data_Block * diff --git a/ACE/ace/Message_Block.h b/ACE/ace/Message_Block.h index 00d7dfe5b2c..443f6552d3a 100644 --- a/ACE/ace/Message_Block.h +++ b/ACE/ace/Message_Block.h @@ -214,14 +214,14 @@ public: /** * Create an initialized message of type @a type containing @a size * bytes. The @a cont argument initializes the continuation field in - * the <Message_Block>. If @a data == 0 then we create and own the + * the Message_Block. If @a data == 0 then we create and own the * @a data, using @a allocator_strategy to get the data if it's non-0. If * @a data != 0 we assume that we have ownership of the @a data till * this object ceases to exist (and don't delete it during * destruction). If @a locking_strategy is non-0 then this is used * to protect regions of code that access shared state (e.g., * reference counting) from race conditions. Note that the @a size - * of the <Message_Block> will be @a size, but the @a length will be 0 + * of the Message_Block will be @a size, but the @a length will be 0 * until <wr_ptr> is set. The @a data_block_allocator is use to * allocate the data blocks while the @a allocator_strategy is used * to allocate the buffers contained by those. @@ -393,7 +393,7 @@ public: */ int copy (const char *buf); - /// Normalizes data in the top-level <Message_Block> to align with the base, + /// Normalizes data in the top-level Message_Block to align with the base, /// i.e., it "shifts" the data pointed to by <rd_ptr> down to the <base> and /// then readjusts <rd_ptr> to point to <base> and <wr_ptr> to point /// to <base> + the length of the moved data. Returns -1 and does @@ -405,7 +405,7 @@ public: void reset (void); /// Access all the allocators in the message block. - /// @@todo: Not sure whether we would need finer control while + /// @todo Not sure whether we would need finer control while /// trying to access allocators ie. a method for every allocator. /** * This method returns the allocators only from the first message @@ -486,40 +486,40 @@ public: /// Set the length of the message void length (size_t n); - /// Get the length of the <Message_Block>s, including chained - /// <Message_Block>s. + /// Get the length of the Message_Blocks, including chained + /// Message_Blocks. size_t total_length (void) const; - /// Get the total number of bytes in all <Message_Block>s, including - /// chained <Message_Block>s. + /// Get the total number of bytes in all Message_Blocks, including + /// chained Message_Blocks. size_t total_size (void) const; /// Get the total number of bytes and total length in all - /// <Message_Block>s, including chained <Message_Block>s. + /// Message_Blocks, including chained Message_Blocks. void total_size_and_length (size_t &mb_size, size_t &mb_length) const; - /// Get the number of bytes in the top-level <Message_Block> (i.e., - /// does not consider the bytes in chained <Message_Block>s). + /// Get the number of bytes in the top-level Message_Block (i.e., + /// does not consider the bytes in chained Message_Blocks). size_t size (void) const; /** - * Set the number of bytes in the top-level <Message_Block>, + * Set the number of bytes in the top-level Message_Block, * reallocating space if necessary. However, the <rd_ptr_> and * <wr_ptr_> remain at the original offsets into the buffer, even if * it is reallocated. Returns 0 if successful, else -1. */ int size (size_t length); - /// Get the number of allocated bytes in all <Message_Block>, including - /// chained <Message_Block>s. + /// Get the number of allocated bytes in all Message_Block, including + /// chained Message_Blocks. size_t total_capacity (void) const; - /// Get the number of allocated bytes in the top-level <Message_Block>. + /// Get the number of allocated bytes in the top-level Message_Block. size_t capacity (void) const; /// Get the number of bytes available after the <wr_ptr_> in the - /// top-level <Message_Block>. + /// top-level Message_Block. size_t space (void) const; //@} @@ -552,14 +552,14 @@ public: /// Set the continuation field. void cont (ACE_Message_Block *); - // = Pointer to the <Message_Block> directly ahead in the ACE_Message_Queue. + // = Pointer to the Message_Block directly ahead in the ACE_Message_Queue. /// Get link to next message. ACE_Message_Block *next (void) const; /// Set link to next message. void next (ACE_Message_Block *); - // = Pointer to the <Message_Block> directly behind in the ACE_Message_Queue. + // = Pointer to the Message_Block directly behind in the ACE_Message_Queue. /// Get link to prev message. ACE_Message_Block *prev (void) const; @@ -802,7 +802,7 @@ protected: /** * Decrease the reference count, but don't delete the object. * Returns 0 if the object should be removed. - * If <lock> is equal to the locking strategy then we assume that + * If @a lock is equal to the locking strategy then we assume that * the lock is beign held by the current thread; this is used to * release all the data blocks in a chain while holding a single * lock. diff --git a/ACE/ace/Message_Block.inl b/ACE/ace/Message_Block.inl index 71537e9fc16..89d615582a4 100644 --- a/ACE/ace/Message_Block.inl +++ b/ACE/ace/Message_Block.inl @@ -397,7 +397,7 @@ ACE_Message_Block::replace_data_block (ACE_Data_Block *db) if (db != 0) { // Set the read and write pointers in the <Message_Block> to point - // to the buffer in the <ACE_Data_Block>. + // to the buffer in the ACE_Data_Block. this->rd_ptr (this->data_block ()->base ()); this->wr_ptr (this->data_block ()->base ()); } diff --git a/ACE/ace/Message_Queue_T.cpp b/ACE/ace/Message_Queue_T.cpp index fe88e47f661..bd07c300c97 100644 --- a/ACE/ace/Message_Queue_T.cpp +++ b/ACE/ace/Message_Queue_T.cpp @@ -981,9 +981,9 @@ ACE_Message_Queue<ACE_SYNCH_USE>::dump (void) const this->cur_count_, this->head_, this->tail_)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("not_full_cond: \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("not_full_cond:\n"))); not_full_cond_.dump (); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("not_empty_cond: \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("not_empty_cond:\n"))); not_empty_cond_.dump (); ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP)); #endif /* ACE_HAS_DUMP */ @@ -1028,12 +1028,12 @@ ACE_Message_Queue<ACE_SYNCH_USE>::ACE_Message_Queue (size_t hwm, char pid_buf[sizeof (int) + 1]; ACE_OS::sprintf (pid_buf, "%d", ACE_OS::getpid ()); pid_buf[sizeof (int)] = '\0'; - + const int addr_nibbles = 2 * sizeof (ptrdiff_t); char addr_buf[addr_nibbles + 1]; ACE_OS::sprintf (addr_buf, "%p", this); addr_buf[addr_nibbles] = '\0'; - + ACE_CString name_str ("Message_Queue_"); name_str += pid_buf; name_str += '_'; @@ -2212,7 +2212,7 @@ ACE_Dynamic_Message_Queue<ACE_SYNCH_USE>::dump (void) const ACE_TRACE ("ACE_Dynamic_Message_Queue<ACE_SYNCH_USE>::dump"); ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("ACE_Message_Queue<ACE_SYNCH_USE> (base class): \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("ACE_Message_Queue<ACE_SYNCH_USE> (base class):\n"))); this->ACE_Message_Queue<ACE_SYNCH_USE>::dump (); ACE_DEBUG ((LM_DEBUG, @@ -2229,7 +2229,7 @@ ACE_Dynamic_Message_Queue<ACE_SYNCH_USE>::dump (void) const this->beyond_late_head_, this->beyond_late_tail_)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("message_strategy_ : \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("message_strategy_ :\n"))); message_strategy_.dump (); ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP)); @@ -2255,7 +2255,7 @@ ACE_Dynamic_Message_Queue<ACE_SYNCH_USE>::enqueue_i (ACE_Message_Block *new_item // Refresh priority status boundaries in the queue. result = this->refresh_queue (current_time); - + if (result < 0) { return result; @@ -2928,6 +2928,7 @@ ACE_Message_Queue_Factory<ACE_SYNCH_USE>::create_laxity_message_queue (size_t hw // <ACE_Dynamic_Message_Queue>. #if defined (ACE_VXWORKS) + // factory method for a wrapped VxWorks message queue template <ACE_SYNCH_DECL> ACE_Message_Queue_Vx * @@ -2942,7 +2943,7 @@ ACE_Message_Queue_Factory<ACE_SYNCH_USE>::create_Vx_message_queue (size_t max_me 0); return tmp; } - // factory method for a wrapped VxWorks message queue +#endif /* defined (ACE_VXWORKS) */ #if defined (ACE_HAS_WIN32_OVERLAPPED_IO) @@ -2953,13 +2954,12 @@ ACE_Message_Queue_Factory<ACE_SYNCH_USE>::create_NT_message_queue (size_t max_th ACE_Message_Queue_NT *tmp = 0; ACE_NEW_RETURN (tmp, - ACE_Message_Queue_NT (max_threads); + ACE_Message_Queue_NT (max_threads), 0); return tmp; } #endif /* ACE_HAS_WIN32_OVERLAPPED_IO */ -#endif /* defined (ACE_VXWORKS) */ ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ACE/ace/Message_Queue_Vx.h b/ACE/ace/Message_Queue_Vx.h index 421ebce99ea..418e8cce183 100644 --- a/ACE/ace/Message_Queue_Vx.h +++ b/ACE/ace/Message_Queue_Vx.h @@ -58,7 +58,7 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL * * <peek_dequeue_head>. * * <ACE_Message_Queue_Iterators>. * * The ability to change low and high water marks after creation. - * * <Message_Block> chains. The continuation field of ACE_Message_Block + * * Message_Block chains. The continuation field of ACE_Message_Block * * is ignored; only the first block of a fragment chain is * * recognized. */ diff --git a/ACE/ace/Metrics_Cache_T.inl b/ACE/ace/Metrics_Cache_T.inl index e0f542ab366..778132f8b13 100644 --- a/ACE/ace/Metrics_Cache_T.inl +++ b/ACE/ace/Metrics_Cache_T.inl @@ -27,7 +27,7 @@ ACE_Metrics_Cache<ACE_LOCK, ALLOCATOR>::report_enqueue_start (u_long i) this->interval_initialized_ = 1; ACE_hrtime_t hrtime_now = ACE_OS::gethrtime (); ACE_High_Res_Timer::hrtime_to_tv (this->interval_start_, - hrtime_now); + hrtime_now); this->interval_end_.set (this->interval_start_.sec(), this->interval_start_.usec()); } diff --git a/ACE/ace/Module.cpp b/ACE/ace/Module.cpp index 78723cf674b..cded99621cf 100644 --- a/ACE/ace/Module.cpp +++ b/ACE/ace/Module.cpp @@ -83,14 +83,14 @@ ACE_Module<ACE_SYNCH_USE>::link (ACE_Module<ACE_SYNCH_USE> *m) } template <ACE_SYNCH_DECL> int -ACE_Module<ACE_SYNCH_USE>::open (const ACE_TCHAR *mod_name, +ACE_Module<ACE_SYNCH_USE>::open (const ACE_TCHAR *module_name, ACE_Task<ACE_SYNCH_USE> *writer_q, ACE_Task<ACE_SYNCH_USE> *reader_q, void *arg, int flags /* = M_DELETE */) { ACE_TRACE ("ACE_Module<ACE_SYNCH_USE>::open"); - this->name (mod_name); + this->name (module_name); this->arg_ = arg; // We may already have readers and/or writers. @@ -178,7 +178,7 @@ ACE_Module<ACE_SYNCH_USE>::~ACE_Module (void) } template <ACE_SYNCH_DECL> -ACE_Module<ACE_SYNCH_USE>::ACE_Module (const ACE_TCHAR *mod_name, +ACE_Module<ACE_SYNCH_USE>::ACE_Module (const ACE_TCHAR *module_name, ACE_Task<ACE_SYNCH_USE> *writer_q, ACE_Task<ACE_SYNCH_USE> *reader_q, void *args, @@ -190,7 +190,7 @@ ACE_Module<ACE_SYNCH_USE>::ACE_Module (const ACE_TCHAR *mod_name, this->q_pair_[0] = 0; this->q_pair_[1] = 0; - if (this->open (mod_name, writer_q, reader_q, args, flags) == -1) + if (this->open (module_name, writer_q, reader_q, args, flags) == -1) ACE_ERROR ((LM_ERROR, ACE_TEXT ("%p\n"), ACE_TEXT ("ACE_Module"))); diff --git a/ACE/ace/Monitor_Control/Monitor_Control.mpc b/ACE/ace/Monitor_Control/Monitor_Control.mpc index 9bbafab4e0b..3efb0bae9a6 100644 --- a/ACE/ace/Monitor_Control/Monitor_Control.mpc +++ b/ACE/ace/Monitor_Control/Monitor_Control.mpc @@ -33,7 +33,12 @@ project(Monitor_Control) : acelib, ace_etcl_parser, ace_output, install { Monitor_Control_utils.h } - specific (vc6, vc7, vc71, vc8, vc9, nmake) { + specific (vc6, vc7, vc71, vc8, vc9, vc10, nmake) { lit_libs += pdh } + verbatim (gnuace, local) { + "ifeq (1,$(winnt))" + " ACE_SHLIBS += pdh.lib" + "endif" + } } diff --git a/ACE/ace/Monitor_Control/Windows_Multi_Instance_Monitor.cpp b/ACE/ace/Monitor_Control/Windows_Multi_Instance_Monitor.cpp index 4aecbca7490..f674078b69a 100644 --- a/ACE/ace/Monitor_Control/Windows_Multi_Instance_Monitor.cpp +++ b/ACE/ace/Monitor_Control/Windows_Multi_Instance_Monitor.cpp @@ -56,7 +56,7 @@ namespace ACE { Windows_Monitor *instance = new Windows_Monitor (path); this->instances_.enqueue_tail (instance); - path += lstrlen (path) + 1; + path += ACE_OS::strlen (path) + 1; } GlobalFree (paths); diff --git a/ACE/ace/Monitor_Control_Types.h b/ACE/ace/Monitor_Control_Types.h index b304363fcb2..792db456e5e 100644 --- a/ACE/ace/Monitor_Control_Types.h +++ b/ACE/ace/Monitor_Control_Types.h @@ -88,13 +88,6 @@ namespace ACE Control_Action* control_action; }; -#if defined (__BORLANDC__) && (__BORLANDC__ <= 0x570) - // Borland C++ Builder 6 and earlier don't handle the second template - // argument correctly. We have to pass it explicitly - typedef ACE_Vector<Data, ACE_VECTOR_DEFAULT_SIZE> DataList; - typedef ACE_Vector<ACE_CString, ACE_VECTOR_DEFAULT_SIZE> NameList; - typedef ACE_Array_Map<long, Constraint, std::equal_to<long> > ConstraintList; -#else /** * @brief Used by the admin class as a container for the data from * a group of monitor points. @@ -110,7 +103,6 @@ namespace ACE * @brief Holder for a monitor point's constraints. */ typedef ACE_Array_Map<long, Constraint> ConstraintList; -#endif }; } } diff --git a/ACE/ace/Multihomed_INET_Addr.h b/ACE/ace/Multihomed_INET_Addr.h index 34b99d2c49e..2a46e1b6aaf 100644 --- a/ACE/ace/Multihomed_INET_Addr.h +++ b/ACE/ace/Multihomed_INET_Addr.h @@ -61,11 +61,11 @@ public: * AF_INET6. To specify IPv4, use AF_INET. */ ACE_Multihomed_INET_Addr(u_short port_number, - const char primary_host_name[], - int encode = 1, - int address_family = AF_UNSPEC, - const char *(secondary_host_names[]) = 0, - size_t size = 0); + const char primary_host_name[], + int encode = 1, + int address_family = AF_UNSPEC, + const char *(secondary_host_names[]) = 0, + size_t size = 0); /** * Constructs an ACE_Multihomed_INET_Addr from a @a port_number, @@ -91,6 +91,7 @@ public: int address_family = AF_UNSPEC, const wchar_t *(secondary_host_names[]) = 0, size_t size = 0); + int set (u_short port_number, const wchar_t primary_host_name[], int encode = 1, diff --git a/ACE/ace/Mutex.cpp b/ACE/ace/Mutex.cpp index 406c1b3ed1c..2595aaba65e 100644 --- a/ACE/ace/Mutex.cpp +++ b/ACE/ace/Mutex.cpp @@ -22,6 +22,7 @@ ACE_ALLOC_HOOK_DEFINE(ACE_Mutex) void ACE_Mutex::dump (void) const { +#if defined (ACE_HAS_DUMP) // ACE_TRACE ("ACE_Mutex::dump"); ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this)); @@ -31,6 +32,7 @@ ACE_Mutex::dump (void) const #endif /* ACE_HAS_PTHREADS || ACE_HAS_STHREADS */ ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n"))); ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP)); +#endif /* ACE_HAS_DUMP */ } ACE_Mutex::ACE_Mutex (int type, const ACE_TCHAR *name, diff --git a/ACE/ace/Name_Request_Reply.h b/ACE/ace/Name_Request_Reply.h index 3a927e9f9e3..a3b70309944 100644 --- a/ACE/ace/Name_Request_Reply.h +++ b/ACE/ace/Name_Request_Reply.h @@ -205,7 +205,7 @@ public: /// Default constructor. ACE_Name_Reply (void); - /// Create a <ACE_Name_Reply> message. + /// Create a ACE_Name_Reply message. ACE_Name_Reply (ACE_UINT32 type, ACE_UINT32 err); // Type of reply. /// Initialize length_ in order to ensure correct byte ordering diff --git a/ACE/ace/Naming_Context.cpp b/ACE/ace/Naming_Context.cpp index b50af0285f8..334f5e1b368 100644 --- a/ACE/ace/Naming_Context.cpp +++ b/ACE/ace/Naming_Context.cpp @@ -415,8 +415,8 @@ ACE_Naming_Context::fini (void) } ACE_Name_Options::ACE_Name_Options (void) - : debugging_ (0), - verbosity_ (0), + : debugging_ (false), + verbosity_ (false), use_registry_ (false), nameserver_port_ (ACE_DEFAULT_SERVER_PORT), nameserver_host_ (ACE_OS::strdup (ACE_DEFAULT_SERVER_HOST)), @@ -580,7 +580,7 @@ ACE_Name_Options::parse_args (int argc, ACE_TCHAR *argv[]) } break; case 'd': - this->debugging_ = 1; + this->debugging_ = true; break; case 'r': this->use_registry_ = true; @@ -613,7 +613,7 @@ ACE_Name_Options::parse_args (int argc, ACE_TCHAR *argv[]) #endif /* ACE_HAS_TRACE */ break; case 'v': - this->verbosity_ = 1; + this->verbosity_ = true; break; default: ACE_OS::fprintf (stderr, "%s\n" @@ -624,8 +624,8 @@ ACE_Name_Options::parse_args (int argc, ACE_TCHAR *argv[]) "\t[-p nameserver port]\n" "\t[-s database name]\n" "\t[-b base address]\n" - "\t[-v] (verbose) \n" - "\t[-r] (use Win32 Registry) \n", + "\t[-v] (verbose)\n" + "\t[-r] (use Win32 Registry)\n", argv[0]); /* NOTREACHED */ break; diff --git a/ACE/ace/Naming_Context.h b/ACE/ace/Naming_Context.h index 6cd91e3e212..a4b1dde2b32 100644 --- a/ACE/ace/Naming_Context.h +++ b/ACE/ace/Naming_Context.h @@ -337,17 +337,17 @@ public: void use_registry (bool x); /// Return debug status - int debug (void); + bool debug (void); /// Return verbose status - int verbose (void); + bool verbose (void); private: /// Extra debugging info - int debugging_; + bool debugging_; /// Extra verbose messages - int verbosity_; + bool verbosity_; /// Use Win32 Registry bool use_registry_; diff --git a/ACE/ace/Naming_Context.inl b/ACE/ace/Naming_Context.inl index 4c90343c1ee..88fedf0c3f2 100644 --- a/ACE/ace/Naming_Context.inl +++ b/ACE/ace/Naming_Context.inl @@ -14,7 +14,7 @@ ACE_Name_Options::use_registry (bool x) this->use_registry_ = x; } -ACE_INLINE int +ACE_INLINE bool ACE_Name_Options::verbose (void) { ACE_TRACE ("ACE_Name_Options::verbose"); @@ -35,7 +35,7 @@ ACE_Name_Options::namespace_dir (void) return this->namespace_dir_; } -ACE_INLINE int +ACE_INLINE bool ACE_Name_Options::debug (void) { ACE_TRACE ("ACE_Name_Options::debug"); diff --git a/ACE/ace/OS_Errno.h b/ACE/ace/OS_Errno.h index 2827a162b93..03feaa24f59 100644 --- a/ACE/ace/OS_Errno.h +++ b/ACE/ace/OS_Errno.h @@ -46,20 +46,19 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL class ACE_Export ACE_Errno_Guard { public: - /// Stash the value of <error> into <error_> and initialize the - /// <errno_ptr_> to the address of <errno_ref>. + /// Stash the value of @a error into @c error_ and initialize the + /// @c errno_ptr_ to the address of @a errno_ref. ACE_Errno_Guard (ACE_ERRNO_TYPE &errno_ref, int error); - /// Stash the value of @c errno into <error_> and initialize the - /// <errno_ptr_> to the address of <errno_ref>. + /// Initialize the @c errno_ptr_ to the address of @a errno_ref. ACE_Errno_Guard (ACE_ERRNO_TYPE &errno_ref); /// Reset the value of @c errno to <error>. ~ACE_Errno_Guard (void); #if defined (ACE_HAS_WINCE_BROKEN_ERRNO) - /// Assign <errno_ref> to <error_>. + /// Assign @a errno_ref to <error_>. int operator= (const ACE_ERRNO_TYPE &errno_ref); #endif /* ACE_HAS_WINCE_BROKEN_ERRNO */ diff --git a/ACE/ace/OS_Log_Msg_Attributes.h b/ACE/ace/OS_Log_Msg_Attributes.h index 107280f5ffd..0360ee4ec56 100644 --- a/ACE/ace/OS_Log_Msg_Attributes.h +++ b/ACE/ace/OS_Log_Msg_Attributes.h @@ -50,6 +50,7 @@ protected: /// Ostream where the new TSS Log_Msg will use. ACE_OSTREAM_TYPE *ostream_; + void *ostream_refcount_; /// Priority_mask to be used in new TSS Log_Msg. unsigned long priority_mask_; diff --git a/ACE/ace/OS_Log_Msg_Attributes.inl b/ACE/ace/OS_Log_Msg_Attributes.inl index 29725ef4d7c..e44d1b08a27 100644 --- a/ACE/ace/OS_Log_Msg_Attributes.inl +++ b/ACE/ace/OS_Log_Msg_Attributes.inl @@ -5,7 +5,17 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE -ACE_OS_Log_Msg_Attributes::ACE_OS_Log_Msg_Attributes (void) +ACE_OS_Log_Msg_Attributes::ACE_OS_Log_Msg_Attributes (void) : + ostream_ (0), + ostream_refcount_ (0), + priority_mask_ (0), + tracing_enabled_ (0), + restart_ (true), + trace_depth_ (0) +# if defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS) + , seh_except_selector_ (0), + seh_except_handler_ (0) +# endif /* ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS */ { } diff --git a/ACE/ace/OS_Memory.h b/ACE/ace/OS_Memory.h index 0fda7fbb376..365c1d2446f 100644 --- a/ACE/ace/OS_Memory.h +++ b/ACE/ace/OS_Memory.h @@ -231,9 +231,15 @@ ACE_END_VERSIONED_NAMESPACE_DECL if (POINTER == 0) { errno = ENOMEM; } \ } while (0) -# define ACE_throw_bad_alloc \ - void* gcc_will_complain_if_literal_0_is_returned = 0; \ - return gcc_will_complain_if_literal_0_is_returned +# if !defined (ACE_bad_alloc) + class ACE_bad_alloc_class {}; +# define ACE_bad_alloc ACE_bad_alloc_class +# endif +# if defined (ACE_HAS_MFC) && (ACE_HAS_MFC == 1) +# define ACE_throw_bad_alloc AfxThrowMemoryException () +# else +# define ACE_throw_bad_alloc throw ACE_bad_alloc () +# endif #endif /* ACE_NEW_THROWS_EXCEPTIONS */ diff --git a/ACE/ace/OS_NS_Thread.cpp b/ACE/ace/OS_NS_Thread.cpp index f550c5fd7e6..ef04ad2edad 100644 --- a/ACE/ace/OS_NS_Thread.cpp +++ b/ACE/ace/OS_NS_Thread.cpp @@ -1446,7 +1446,7 @@ ACE_OS::cond_timedwait (ACE_cond_t *cv, ACE_Errno_Guard error (errno, 0); int msec_timeout; - if (timeout->sec () == 0 && timeout->usec () == 0) + if (*timeout == ACE_Time_Value::zero) msec_timeout = 0; // Do a "poll." else { @@ -1609,7 +1609,7 @@ ACE_OS::cond_timedwait (ACE_cond_t *cv, int error = 0; int msec_timeout; - if (timeout->sec () == 0 && timeout->usec () == 0) + if (*timeout == ACE_Time_Value::zero) msec_timeout = 0; // Do a "poll." else { @@ -1897,7 +1897,7 @@ ACE_OS::mutex_init (ACE_mutex_t *m, ACE_FAIL_RETURN (-1); else { - // Make sure to set errno to ERROR_ALREADY_EXISTS if necessary. + // Make sure to set errno to ERROR_ALREADY_EXISTS if necessary. ACE_OS::set_errno_to_last_error (); return 0; } @@ -1990,7 +1990,11 @@ ACE_OS::mutex_init (ACE_mutex_t *m, if (m->proc_mutex_ == 0) ACE_FAIL_RETURN (-1); else - return 0; + { + // Make sure to set errno to ERROR_ALREADY_EXISTS if necessary. + ACE_OS::set_errno_to_last_error (); + return 0; + } case USYNC_THREAD: return ACE_OS::thread_mutex_init (&m->thr_mutex_, lock_type, @@ -2503,7 +2507,11 @@ ACE_OS::event_init (ACE_event_t *event, if (*event == 0) ACE_FAIL_RETURN (-1); else - return 0; + { + // Make sure to set errno to ERROR_ALREADY_EXISTS if necessary. + ACE_OS::set_errno_to_last_error (); + return 0; + } #elif defined (ACE_HAS_THREADS) ACE_UNUSED_ARG (sa); event->eventdata_ = 0; @@ -2968,7 +2976,7 @@ ACE_OS::event_timedwait (ACE_event_t *event, #if defined (ACE_WIN32) DWORD result; - if (timeout->sec () == 0 && timeout->usec () == 0) + if (*timeout == ACE_Time_Value::zero) // Do a "poll". result = ::WaitForSingleObject (*event, 0); else @@ -4318,10 +4326,15 @@ ACE_OS::thr_create (ACE_THR_FUNC func, // Set the priority of the new thread and then let it // continue, but only if the user didn't start it suspended // in the first place! - ACE_OS::thr_setprio (*thr_handle, priority); + if (ACE_OS::thr_setprio (*thr_handle, priority) != 0) + { + return -1; + } if (start_suspended == 0) - ACE_OS::thr_continue (*thr_handle); + { + ACE_OS::thr_continue (*thr_handle); + } } } # if 0 diff --git a/ACE/ace/OS_NS_Thread.inl b/ACE/ace/OS_NS_Thread.inl index d4bba743c56..aaaa51f6a37 100644 --- a/ACE/ace/OS_NS_Thread.inl +++ b/ACE/ace/OS_NS_Thread.inl @@ -418,6 +418,8 @@ ACE_OS::event_init (ACE_event_t *event, if (*event == 0) ACE_FAIL_RETURN (-1); + // Make sure to set errno to ERROR_ALREADY_EXISTS if necessary. + ACE_OS::set_errno_to_last_error (); return 0; #else /* ACE_WIN32 */ return ACE_OS::event_init (event, @@ -1572,15 +1574,15 @@ ACE_OS::sema_init (ACE_sema_t *s, if ((s->fd_[0] = ACE_OS::open (name, O_RDONLY | O_NONBLOCK)) == ACE_INVALID_HANDLE || (s->fd_[1] = ACE_OS::open (name, O_WRONLY | O_NONBLOCK)) == ACE_INVALID_HANDLE) - return (-1); + return -1; /* turn off nonblocking for fd_[0] */ if ((flags = ACE_OS::fcntl (s->fd_[0], F_GETFL, 0)) < 0) - return (-1); + return -1; flags &= ~O_NONBLOCK; if (ACE_OS::fcntl (s->fd_[0], F_SETFL, flags) < 0) - return (-1); + return -1; //if (s->name_ && count) if (creator && count) @@ -1588,7 +1590,7 @@ ACE_OS::sema_init (ACE_sema_t *s, char c = 1; for (u_int i=0; i<count ;++i) if (ACE_OS::write (s->fd_[1], &c, sizeof (char)) != 1) - return (-1); + return -1; } // In the case of process scope semaphores we can already unlink the FIFO now that @@ -1602,7 +1604,7 @@ ACE_OS::sema_init (ACE_sema_t *s, ACE_OS::unlink (name); } - return (0); + return 0; #elif defined (ACE_HAS_THREADS) # if defined (ACE_HAS_STHREADS) ACE_UNUSED_ARG (name); @@ -1642,17 +1644,21 @@ ACE_OS::sema_init (ACE_sema_t *s, // its maximum value initialized to <max>. SECURITY_ATTRIBUTES sa_buffer; SECURITY_DESCRIPTOR sd_buffer; - *s = ::CreateSemaphoreA + *s = ACE_TEXT_CreateSemaphore (ACE_OS::default_win32_security_attributes_r (sa, &sa_buffer, &sd_buffer), count, max, - name); + ACE_TEXT_CHAR_TO_TCHAR (name)); if (*s == 0) ACE_FAIL_RETURN (-1); /* NOTREACHED */ else - return 0; + { + // Make sure to set errno to ERROR_ALREADY_EXISTS if necessary. + ACE_OS::set_errno_to_last_error (); + return 0; + } # else /* ACE_USES_WINCE_SEMA_SIMULATION */ int result = -1; @@ -1736,7 +1742,11 @@ ACE_OS::sema_init (ACE_sema_t *s, ACE_FAIL_RETURN (-1); /* NOTREACHED */ else - return 0; + { + // Make sure to set errno to ERROR_ALREADY_EXISTS if necessary. + ACE_OS::set_errno_to_last_error (); + return 0; + } # else /* ACE_USES_WINCE_SEMA_SIMULATION */ int result = -1; @@ -1800,8 +1810,8 @@ ACE_OS::sema_post (ACE_sema_t *s) # elif defined (ACE_USES_FIFO_SEM) char c = 1; if (ACE_OS::write (s->fd_[1], &c, sizeof (char)) == sizeof (char)) - return (0); - return (-1); + return 0; + return -1; # elif defined (ACE_HAS_THREADS) # if defined (ACE_HAS_STHREADS) int result; @@ -1890,10 +1900,10 @@ ACE_OS::sema_trywait (ACE_sema_t *s) /* turn on nonblocking for s->fd_[0] */ if ((flags = ACE_OS::fcntl (s->fd_[0], F_GETFL, 0)) < 0) - return (-1); + return -1; flags |= O_NONBLOCK; if (ACE_OS::fcntl (s->fd_[0], F_SETFL, flags) < 0) - return (-1); + return -1; // read sets errno to EAGAIN if no input rc = ACE_OS::read (s->fd_[0], &c, sizeof (char)); @@ -2010,8 +2020,8 @@ ACE_OS::sema_wait (ACE_sema_t *s) # elif defined (ACE_USES_FIFO_SEM) char c; if (ACE_OS::read (s->fd_[0], &c, sizeof (char)) == 1) - return (0); - return (-1); + return 0; + return -1; # elif defined (ACE_HAS_THREADS) # if defined (ACE_HAS_STHREADS) int result; @@ -2193,13 +2203,13 @@ ACE_OS::sema_wait (ACE_sema_t *s, ACE_Time_Value &tv) { if (rc == 0) errno = ETIME; - return (-1); + return -1; } } // try to read the signal *but* do *not* block if (rc == 1 && ACE_OS::sema_trywait (s) == 0) - return (0); + return 0; // we were woken for input but someone beat us to it // so we wait again if there is still time @@ -2209,7 +2219,7 @@ ACE_OS::sema_wait (ACE_sema_t *s, ACE_Time_Value &tv) // make sure errno is set right errno = ETIME; - return (-1); + return -1; # elif defined (ACE_HAS_THREADS) # if defined (ACE_HAS_STHREADS) ACE_UNUSED_ARG (s); @@ -2259,7 +2269,7 @@ ACE_OS::sema_wait (ACE_sema_t *s, ACE_Time_Value &tv) # if !defined (ACE_USES_WINCE_SEMA_SIMULATION) int msec_timeout; - if (tv.sec () == 0 && tv.usec () == 0) + if (tv == ACE_Time_Value::zero) msec_timeout = 0; // Do a "poll." else { @@ -2674,10 +2684,13 @@ ACE_OS::thr_getprio (ACE_hthread_t ht_id, int &priority, int &policy) # elif defined (ACE_HAS_STHREADS) int result; ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::thr_getprio (ht_id, &priority), result), int, -1); -# elif defined (ACE_HAS_WTHREADS) && !defined (ACE_HAS_WINCE) +# elif defined (ACE_HAS_WTHREADS) ACE_Errno_Guard error (errno); - +# if !defined (ACE_HAS_WINCE) priority = ::GetThreadPriority (ht_id); +# else + priority = ::CeGetThreadPriority (ht_id); +# endif # if defined (ACE_HAS_PHARLAP) # if defined (ACE_PHARLAP_LABVIEW_RT) @@ -2686,7 +2699,7 @@ ACE_OS::thr_getprio (ACE_hthread_t ht_id, int &priority, int &policy) DWORD timeslice = ::EtsGetTimeSlice (); policy = timeslice == 0 ? ACE_SCHED_OTHER : ACE_SCHED_FIFO; # endif /* ACE_PHARLAP_LABVIEW_RT */ -# else +# elif !defined (ACE_HAS_WINCE) DWORD priority_class = ::GetPriorityClass (::GetCurrentProcess ()); if (priority_class == 0 && (error = ::GetLastError ()) != NO_ERROR) ACE_FAIL_RETURN (-1); @@ -3104,9 +3117,15 @@ ACE_OS::thr_setprio (ACE_hthread_t ht_id, int priority, int policy) result), int, -1); # elif defined (ACE_HAS_WTHREADS) +# if !defined (ACE_HAS_WINCE) ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::SetThreadPriority (ht_id, priority), ace_result_), int, -1); +# else + ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::CeSetThreadPriority (ht_id, priority), + ace_result_), + int, -1); +# endif /* ACE_HAS_WINCE */ # elif defined (ACE_HAS_VXTHREADS) ACE_OSCALL_RETURN (::taskPrioritySet (ht_id, priority), int, -1); # else diff --git a/ACE/ace/OS_NS_arpa_inet.cpp b/ACE/ace/OS_NS_arpa_inet.cpp index 0ebf8a3dcc6..6dd3d2a75c5 100644 --- a/ACE/ace/OS_NS_arpa_inet.cpp +++ b/ACE/ace/OS_NS_arpa_inet.cpp @@ -36,7 +36,7 @@ ACE_OS::inet_aton (const char *host_name, struct in_addr *addr) addr->s_addr = ip_addr; // Network byte ordered return 1; } -#elif defined (ACE_VXWORKS) && (ACE_VXWORKS <= 0x660) +#elif defined (ACE_VXWORKS) && (ACE_VXWORKS <= 0x670) // inet_aton() returns OK (0) on success and ERROR (-1) on failure. // Must reset errno first. Refer to WindRiver SPR# 34949, SPR# 36026 ::errnoSet(0); diff --git a/ACE/ace/OS_NS_arpa_inet.inl b/ACE/ace/OS_NS_arpa_inet.inl index 3f0b768adff..e90493dbda2 100644 --- a/ACE/ace/OS_NS_arpa_inet.inl +++ b/ACE/ace/OS_NS_arpa_inet.inl @@ -14,11 +14,11 @@ ACE_OS::inet_addr (const char *name) #if defined (ACE_LACKS_INET_ADDR) ACE_UNUSED_ARG (name); ACE_NOTSUP_RETURN (0); -#elif defined (ACE_HAS_NONCONST_GETBY) +#elif defined (ACE_HAS_NONCONST_INET_ADDR) return ::inet_addr (const_cast <char*> (name)); #else return ::inet_addr (name); -#endif /* ACE_HAS_NONCONST_GETBY */ +#endif /* ACE_HAS_NONCONST_INET_ADDR */ } ACE_INLINE char * diff --git a/ACE/ace/OS_NS_ctype.h b/ACE/ace/OS_NS_ctype.h index 98f69623ba2..dc36987038c 100644 --- a/ACE/ace/OS_NS_ctype.h +++ b/ACE/ace/OS_NS_ctype.h @@ -32,6 +32,11 @@ #endif #define ACE_EXPORT_MACRO ACE_Export +#include "ace/os_include/os_ctype.h" +#if defined ACE_HAS_WCHAR +# include "ace/os_include/os_wctype.h" +#endif /* ACE_HAS_WCHAR */ + ACE_BEGIN_VERSIONED_NAMESPACE_DECL namespace ACE_OS { @@ -58,6 +63,14 @@ namespace ACE_OS { /// Returns true if the character is a control character. ACE_NAMESPACE_INLINE_FUNCTION + int ace_isblank (ACE_TCHAR c); + + /// Returns true if the character is a control character. + ACE_NAMESPACE_INLINE_FUNCTION + int ace_isascii (ACE_TCHAR c); + + /// Returns true if the character is a control character. + ACE_NAMESPACE_INLINE_FUNCTION int ace_iscntrl (ACE_TCHAR c); /// Returns true if the character is a decimal-digit character. @@ -112,6 +125,9 @@ namespace ACE_OS { wint_t ace_towupper (wint_t c); #endif /* ACE_HAS_WCHAR && !ACE_LACKS_TOWUPPER */ + /// Tests @a c for the property specified by the @a desc argument + ACE_NAMESPACE_INLINE_FUNCTION + int ace_isctype (int c, ctype_t desc); //@} } /* namespace ACE_OS */ diff --git a/ACE/ace/OS_NS_ctype.inl b/ACE/ace/OS_NS_ctype.inl index 5d2177d102a..dce7425a0a6 100644 --- a/ACE/ace/OS_NS_ctype.inl +++ b/ACE/ace/OS_NS_ctype.inl @@ -2,10 +2,13 @@ // // $Id$ -#include "ace/os_include/os_ctype.h" -#if defined ACE_HAS_WCHAR -# include "ace/os_include/os_wctype.h" -#endif /* ACE_HAS_WCHAR */ +#if defined (ACE_LACKS_ISCTYPE) +#include "ace/OS_NS_errno.h" +#endif + +#if defined (ACE_USES_WCHAR) && defined (ACE_LACKS_ISWBLANK) && !defined (ACE_LACKS_ISWCTYPE) +#include "ace/OS_NS_wctype.h" +#endif ACE_BEGIN_VERSIONED_NAMESPACE_DECL @@ -13,19 +16,60 @@ ACE_INLINE int ACE_OS::ace_isalnum (ACE_TCHAR c) { #if defined (ACE_USES_WCHAR) -# if defined (_MSC_VER) && (_MSC_VER >= 1300) +# if defined (_MSC_VER) // For MSVC 7.x, we need to prevent "illegal" character getting into // isalnum, otherwise, it will crash the program. - return c > 0 && c < 256 && iswalnum (c); + return c > 0 && c < 0xFF && iswalnum (c); # else return iswalnum (c); -# endif /* _MSC_VER && _MSC_VER >= 1300 */ +# endif /* _MSC_VER */ #else /* ACE_USES_WCHAR */ return isalnum ((unsigned char) c); #endif /* ACE_USES_WCHAR */ } ACE_INLINE int +ACE_OS::ace_isascii (ACE_TCHAR c) +{ +#if defined (ACE_USES_WCHAR) +# if defined (ACE_LACKS_ISWASCII) + if (c < 256) + return isascii (static_cast<int> (c)); + else + return c; +# else + return iswascii (c); +# endif +#else /* ACE_USES_WCHAR */ +# if defined (ACE_LACKS_ISASCII) + return (static_cast<unsigned char>(c) <= 0x7F); +#else + return isascii ((unsigned char) c); +#endif /* ACE_LACKS_ISASCII */ +#endif /* ACE_USES_WCHAR */ +} + +ACE_INLINE int +ACE_OS::ace_isblank (ACE_TCHAR c) +{ +#if defined (ACE_USES_WCHAR) +# if defined (ACE_LACKS_ISWBLANK) +# if !defined (ACE_LACKS_ISWCTYPE) + return ace_iswctype (c, _BLANK); +# else + return (c == 0x9) || (c == 0x20); +# endif /* !ACE_LACKS_ISWCTYPE */ +# else + return iswblank (c); +# endif /* ACE_LACKS_ISWBLANK */ +#elif defined (ACE_LACKS_ISBLANK) + return (c == 0x9) || (c == 0x20); +#else /* ACE_USES_WCHAR */ + return isblank ((unsigned char) c); +#endif /* ACE_USES_WCHAR */ +} + +ACE_INLINE int ACE_OS::ace_isalpha (ACE_TCHAR c) { #if defined (ACE_USES_WCHAR) @@ -79,6 +123,15 @@ ACE_INLINE int ACE_OS::ace_isprint (ACE_TCHAR c) { #if defined (ACE_USES_WCHAR) +# if defined (_WIN32_WCE) && (_WIN32_WCE <= 0x600) + /* WinCE 6 and earlier have the bug that for tab (\t) the + * iswprint returns true instead of false + */ + if (c == 0x9) + { + return 0; + } +# endif return iswprint (c); #else /* ACE_USES_WCHAR */ return isprint ((unsigned char) c); @@ -160,4 +213,18 @@ ACE_OS::ace_towupper (wint_t c) } #endif /* ACE_HAS_WCHAR && !ACE_LACKS_TOWUPPER */ +ACE_INLINE int +ACE_OS::ace_isctype(int c, ctype_t desc) +{ +#if defined (ACE_ISCTYPE_EQUIVALENT) + return ACE_ISCTYPE_EQUIVALENT (c, desc); +#elif !defined (ACE_LACKS_ISCTYPE) + return isctype (c, desc); +#else + ACE_UNUSED_ARG (c); + ACE_UNUSED_ARG (desc); + ACE_NOTSUP_RETURN (-1); +#endif +} + ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ACE/ace/OS_NS_errno.h b/ACE/ace/OS_NS_errno.h index 5dcb0f3aa59..c4ea9d57a8f 100644 --- a/ACE/ace/OS_NS_errno.h +++ b/ACE/ace/OS_NS_errno.h @@ -58,7 +58,7 @@ namespace ACE_OS { * Some versions of CE don't support @c errno and some versions' * implementations are busted. So we implement our own. * Our implementation takes up one Tls key, however, it does not - * allocate memory fromt the heap so there's no problem with cleanin + * allocate memory from the heap so there's no problem with cleaning * up the errno when a thread exit. */ class ACE_Export ACE_CE_Errno diff --git a/ACE/ace/OS_NS_math.inl b/ACE/ace/OS_NS_math.inl index 3cc3e37a5b5..ff368b53c0d 100644 --- a/ACE/ace/OS_NS_math.inl +++ b/ACE/ace/OS_NS_math.inl @@ -9,25 +9,33 @@ namespace ACE_OS { ACE_INLINE double floor (double x) { +#if defined (ACE_LACKS_FLOOR) // This method computes the largest integral value not greater than x. if(x > 0) return static_cast<long> (x); - else if (static_cast<long> (x) == x) - return x; - else + else if ((static_cast<long> (x) < x) || (static_cast<long> (x) > x) ) return static_cast<long>(x) - 1; + else + return x; +#else + return ::floor (x); +#endif } ACE_INLINE double ceil (double x) { +#if defined (ACE_LACKS_CEIL) // This method computes the smallest integral value not less than x. if (x < 0) return static_cast<long> (x); - else if (static_cast<long> (x) == x) - return x; - else + else if ((static_cast<long> (x) < x) || (static_cast<long> (x) > x)) return static_cast<long> (x) + 1; + else + return x; +#else + return ::ceil (x); +#endif } ACE_INLINE double diff --git a/ACE/ace/OS_NS_signal.h b/ACE/ace/OS_NS_signal.h index bb5b03b1c0d..40c0e47a88c 100644 --- a/ACE/ace/OS_NS_signal.h +++ b/ACE/ace/OS_NS_signal.h @@ -135,6 +135,8 @@ namespace ACE_OS { ACE_NAMESPACE_INLINE_FUNCTION int sigsuspend (const sigset_t *set); + ACE_NAMESPACE_INLINE_FUNCTION + int raise (const int signum); //@} } /* namespace ACE_OS */ diff --git a/ACE/ace/OS_NS_signal.inl b/ACE/ace/OS_NS_signal.inl index 98f02459494..03a6bb18a56 100644 --- a/ACE/ace/OS_NS_signal.inl +++ b/ACE/ace/OS_NS_signal.inl @@ -227,6 +227,17 @@ sigsuspend (const sigset_t *sigset) #endif /* ACE_HAS_SIGSUSPEND */ } +ACE_INLINE int +raise (const int signum) +{ +#if defined (ACE_LACKS_RAISE) + ACE_UNUSED_ARG (signum); + ACE_NOTSUP_RETURN (-1); +#else + ACE_OSCALL_RETURN (::raise (signum), int, -1); +#endif /* ACE_LACKS_RAISE */ +} + } /* end namespace ACE_OS */ ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ACE/ace/OS_NS_stdio.h b/ACE/ace/OS_NS_stdio.h index b4699bbb634..3133628d5dc 100644 --- a/ACE/ace/OS_NS_stdio.h +++ b/ACE/ace/OS_NS_stdio.h @@ -516,7 +516,7 @@ namespace ACE_OS { #if !defined (ACE_HAS_VASPRINTF) extern ACE_Export - int vasprintf_emulation (char **bufp, const char *format, va_list argptr); + int vasprintf_emulation (char **bufp, const char *format, va_list argptr); #endif /* !ACE_HAS_VASPRINTF */ #if defined (ACE_HAS_WCHAR) diff --git a/ACE/ace/OS_NS_stdio.inl b/ACE/ace/OS_NS_stdio.inl index 87d74dcb543..3c610552f88 100644 --- a/ACE/ace/OS_NS_stdio.inl +++ b/ACE/ace/OS_NS_stdio.inl @@ -135,11 +135,11 @@ ACE_OS::flock_unlock (ACE_OS::ace_flock_t *lock, DWORD low_len = ACE_LOW_PART (len); DWORD high_len = ACE_HIGH_PART (len); ACE_WIN32CALL_RETURN ( - ACE_ADAPT_RETVAL (::UnlockFile (lock->handle_, - lock->overlapped_.Offset, - lock->overlapped_.OffsetHigh, - low_len, - high_len), + ACE_ADAPT_RETVAL (::UnlockFileEx (lock->handle_, + 0, + low_len, + high_len, + &lock->overlapped_), ace_result_), int, -1); #else lock->lock_.l_whence = whence; @@ -511,15 +511,11 @@ ACE_OS::fdopen (ACE_HANDLE handle, const ACE_TCHAR *mode) if (crt_handle != -1) { -# if defined(ACE_HAS_NONCONST_FDOPEN) && !defined (ACE_USES_WCHAR) - file = ::_fdopen (crt_handle, const_cast<ACE_TCHAR *> (mode)); -# elif defined (ACE_HAS_NONCONST_FDOPEN) && defined (ACE_USES_WCHAR) - file = ::_wfdopen (crt_handle, const_cast<ACE_TCHAR *> (mode)); -# elif defined (ACE_USES_WCHAR) +# if defined (ACE_USES_WCHAR) file = ::_wfdopen (crt_handle, mode); # else file = ::_fdopen (crt_handle, mode); -# endif /* ACE_HAS_NONCONST_FDOPEN */ +# endif /* ACE_USES_WCHAR */ if (!file) { @@ -772,7 +768,7 @@ ACE_OS::perror (const wchar_t *s) #else ACE_Wide_To_Ascii n_s (s); ::perror (n_s.char_rep ()); -#endif /* ACE_HAS_WINCE */ +#endif /* ACE_LACKS_PERROR */ } #endif /* ACE_HAS_WCHAR */ @@ -811,8 +807,8 @@ ACE_OS::rename (const char *old_name, # elif defined (ACE_HAS_WINCE) // Win CE is always wide-char. ACE_UNUSED_ARG (flags); - if (0 != MoveFile (ACE_TEXT_CHAR_TO_TCHAR (old_name), - ACE_TEXT_CHAR_TO_TCHAR (new_name))) + if (0 == ::MoveFile (ACE_TEXT_CHAR_TO_TCHAR (old_name), + ACE_TEXT_CHAR_TO_TCHAR (new_name))) ACE_FAIL_RETURN (-1); return 0; # elif defined (ACE_WIN32) && !defined (ACE_LACKS_WIN32_MOVEFILEEX) @@ -844,7 +840,7 @@ ACE_OS::rename (const wchar_t *old_name, ACE_NOTSUP_RETURN (-1); # elif defined (ACE_HAS_WINCE) ACE_UNUSED_ARG (flags); - if (MoveFileW (old_name, new_name) != 0) + if (::MoveFileW (old_name, new_name) == 0) ACE_FAIL_RETURN (-1); return 0; # elif defined (ACE_WIN32) && !defined (ACE_LACKS_WIN32_MOVEFILEEX) @@ -910,7 +906,7 @@ ACE_OS::tempnam (const wchar_t *dir, const wchar_t *pfx) ACE_OSCALL_RETURN (::_wtempnam (const_cast <wchar_t*> (dir), const_cast <wchar_t*> (pfx)), wchar_t *, 0); # else ACE_OSCALL_RETURN (::_wtempnam (dir, pfx), wchar_t *, 0); -# endif /* __BORLANDC__ */ +# endif /* ACE_HAS_NONCONST_TEMPNAM */ #else /* ACE_LACKS_TEMPNAM */ // No native wide-char support; convert to narrow and call the char* variant. char *ndir = ACE_Wide_To_Ascii (dir).char_rep (); diff --git a/ACE/ace/OS_NS_stdlib.cpp b/ACE/ace/OS_NS_stdlib.cpp index a9f2dfcc6b5..66ebde8c3d1 100644 --- a/ACE/ace/OS_NS_stdlib.cpp +++ b/ACE/ace/OS_NS_stdlib.cpp @@ -343,7 +343,7 @@ ACE_OS::realloc (void *ptr, size_t nbytes) return ACE_REALLOC_FUNC (ACE_MALLOC_T (ptr), nbytes); } -#if defined (ACE_LACKS_REALPATH) && !defined (ACE_HAS_WINCE) +#if defined (ACE_LACKS_REALPATH) char * ACE_OS::realpath (const char *file_name, char *resolved_name) @@ -514,7 +514,7 @@ ACE_OS::realpath (const char *file_name, return rpath; } -#endif /* ACE_LACKS_REALPATH && !ACE_HAS_WINCE */ +#endif /* ACE_LACKS_REALPATH */ #if defined (ACE_LACKS_STRTOL) long diff --git a/ACE/ace/OS_NS_stdlib.h b/ACE/ace/OS_NS_stdlib.h index 86df316bb97..11ba2002a32 100644 --- a/ACE/ace/OS_NS_stdlib.h +++ b/ACE/ace/OS_NS_stdlib.h @@ -62,34 +62,76 @@ namespace ACE_OS { * */ //@{ - - ACE_NAMESPACE_INLINE_FUNCTION void _exit (int status = 0); ACE_NAMESPACE_INLINE_FUNCTION void abort (void); + /** + * Register an at exit hook. The @a name can be used to analyze shutdown + * problems + */ ACE_NAMESPACE_INLINE_FUNCTION - int atexit (ACE_EXIT_HOOK func); + int atexit (ACE_EXIT_HOOK func, const char* name = 0); + /* + * Convert string to integer + */ ACE_NAMESPACE_INLINE_FUNCTION int atoi (const char *s); # if defined (ACE_HAS_WCHAR) + /* + * Convert string to integer + */ ACE_NAMESPACE_INLINE_FUNCTION int atoi (const wchar_t *s); # endif /* ACE_HAS_WCHAR */ + /* + * Convert string to long + */ + ACE_NAMESPACE_INLINE_FUNCTION + long atol (const char *s); + + /* + * Convert string to long + */ +# if defined (ACE_HAS_WCHAR) + ACE_NAMESPACE_INLINE_FUNCTION + long atol (const wchar_t *s); +# endif /* ACE_HAS_WCHAR */ + + /* + * Convert string to double + */ + ACE_NAMESPACE_INLINE_FUNCTION + double atof (const char *s); + + /* + * Convert string to double + */ +# if defined (ACE_HAS_WCHAR) + ACE_NAMESPACE_INLINE_FUNCTION + double atof (const wchar_t *s); +# endif /* ACE_HAS_WCHAR */ + // atop not in spec # if defined (atop) # undef atop # endif /* atop */ + /* + * Convert string to pointer + */ ACE_NAMESPACE_INLINE_FUNCTION void *atop (const char *s); # if defined (ACE_HAS_WCHAR) + /* + * Convert string to pointer + */ ACE_NAMESPACE_INLINE_FUNCTION void *atop (const wchar_t *s); # endif /* ACE_HAS_WCHAR */ @@ -201,7 +243,6 @@ namespace ACE_OS { extern ACE_Export void *realloc (void *, size_t); -#if !defined (ACE_HAS_WINCE) # if !defined (ACE_LACKS_REALPATH) ACE_NAMESPACE_INLINE_FUNCTION # else @@ -213,7 +254,6 @@ namespace ACE_OS { ACE_NAMESPACE_INLINE_FUNCTION wchar_t *realpath (const wchar_t *file_name, wchar_t *resolved_name); # endif /* ACE_HAS_WCHAR */ -#endif /* ACE_HAS_WINCE */ // exit_hook and set_exit_hook not in spec /// Function that is called by <ACE_OS::exit>, if non-null. @@ -255,7 +295,7 @@ namespace ACE_OS { /// Converts a string to a long value (wchar_t version). ACE_NAMESPACE_INLINE_FUNCTION long strtol (const wchar_t *s, wchar_t **ptr, int base); - + #if defined (ACE_LACKS_WCSTOL) extern ACE_Export long wcstol_emulation (const wchar_t *nptr, wchar_t **endptr, int base); @@ -278,7 +318,7 @@ namespace ACE_OS { /// Converts a string to an unsigned long value (wchar_t version). ACE_NAMESPACE_INLINE_FUNCTION unsigned long strtoul (const wchar_t *s, wchar_t **ptr, int base); - + #if defined (ACE_LACKS_WCSTOUL) extern ACE_Export unsigned long wcstoul_emulation (const wchar_t *nptr, @@ -303,7 +343,7 @@ namespace ACE_OS { /// Converts a string to a signed 64 bit int value (wchar_t version). ACE_NAMESPACE_INLINE_FUNCTION ACE_INT64 strtoll (const wchar_t *s, wchar_t **ptr, int base); - + #if defined (ACE_LACKS_WCSTOLL) extern ACE_Export ACE_INT64 wcstoll_emulation (const wchar_t *nptr, @@ -328,7 +368,7 @@ namespace ACE_OS { /// Converts a string to a unsigned 64 bit int value (wchar_t version). ACE_NAMESPACE_INLINE_FUNCTION ACE_UINT64 strtoull (const wchar_t *s, wchar_t **ptr, int base); - + #if defined (ACE_LACKS_WCSTOULL) extern ACE_Export ACE_UINT64 wcstoull_emulation (const wchar_t *nptr, diff --git a/ACE/ace/OS_NS_stdlib.inl b/ACE/ace/OS_NS_stdlib.inl index 7dfeb7e41f7..c54b5c82dde 100644 --- a/ACE/ace/OS_NS_stdlib.inl +++ b/ACE/ace/OS_NS_stdlib.inl @@ -44,9 +44,9 @@ ACE_OS::abort (void) } ACE_INLINE int -ACE_OS::atexit (ACE_EXIT_HOOK func) +ACE_OS::atexit (ACE_EXIT_HOOK func, const char* name) { - return ACE_OS_Object_Manager::instance ()->at_exit (func); + return ACE_OS_Object_Manager::instance ()->at_exit (func, name); } ACE_INLINE int @@ -67,6 +67,44 @@ ACE_OS::atoi (const wchar_t *s) } #endif /* ACE_HAS_WCHAR */ +ACE_INLINE long +ACE_OS::atol (const char *s) +{ + ACE_OSCALL_RETURN (::atol (s), long, -1); +} + +#if defined (ACE_HAS_WCHAR) +ACE_INLINE long +ACE_OS::atol (const wchar_t *s) +{ +#if defined (ACE_WIN32) + ACE_OSCALL_RETURN (::_wtol (s), long, -1); +#else /* ACE_WIN32 */ + return ACE_OS::atol (ACE_Wide_To_Ascii (s).char_rep ()); +#endif /* ACE_WIN32 */ +} +#endif /* ACE_HAS_WCHAR */ + +ACE_INLINE double +ACE_OS::atof (const char *s) +{ + ACE_OSCALL_RETURN (::atof (s), double, -1); +} + +#if defined (ACE_HAS_WCHAR) +ACE_INLINE double +ACE_OS::atof (const wchar_t *s) +{ +#if !defined (ACE_HAS_WTOF) + return ACE_OS::atof (ACE_Wide_To_Ascii (s).char_rep ()); +#elif defined (ACE_WTOF_EQUIVALENT) + ACE_OSCALL_RETURN (ACE_WTOF_EQUIVALENT (s), double, -1); +#else /* ACE_HAS__WTOF */ + ACE_OSCALL_RETURN (::wtof (s), double, -1); +#endif /* ACE_HAS_WTOF */ +} +#endif /* ACE_HAS_WCHAR */ + #if defined (atop) # undef atop #endif /* atop */ @@ -390,7 +428,6 @@ ACE_OS::rand_r (ACE_RANDR_TYPE& seed) #endif /* !ACE_WIN32 */ -#if !defined (ACE_HAS_WINCE) # if !defined (ACE_LACKS_REALPATH) ACE_INLINE char * ACE_OS::realpath (const char *file_name, @@ -402,7 +439,6 @@ ACE_OS::realpath (const char *file_name, return ::realpath (file_name, resolved_name); # endif /* ! ACE_WIN32 */ } -# endif /* !ACE_LACKS_REALPATH */ # if defined (ACE_HAS_WCHAR) ACE_INLINE wchar_t * @@ -489,7 +525,7 @@ ACE_OS::strtoul (const char *s, char **ptr, int base) #endif /* ACE_LACKS_STRTOUL */ } -#if defined (ACE_HAS_WCHAR) +#if defined (ACE_HAS_WCHAR) ACE_INLINE unsigned long ACE_OS::strtoul (const wchar_t *s, wchar_t **ptr, int base) { @@ -513,7 +549,7 @@ ACE_OS::strtoll (const char *s, char **ptr, int base) #endif /* ACE_LACKS_STRTOLL */ } -#if defined (ACE_HAS_WCHAR) +#if defined (ACE_HAS_WCHAR) ACE_INLINE ACE_INT64 ACE_OS::strtoll (const wchar_t *s, wchar_t **ptr, int base) { diff --git a/ACE/ace/OS_NS_stropts.h b/ACE/ace/OS_NS_stropts.h index 5edbab0f5f5..762d0c1fbc2 100644 --- a/ACE/ace/OS_NS_stropts.h +++ b/ACE/ace/OS_NS_stropts.h @@ -108,13 +108,13 @@ namespace ACE_OS { ACE_NAMESPACE_INLINE_FUNCTION int fdetach (const char *file); - /// UNIX-style <ioctl>. + /// UNIX-style @c ioctl ACE_NAMESPACE_INLINE_FUNCTION int ioctl (ACE_HANDLE handle, ACE_IOCTL_TYPE_ARG2 cmd, void * = 0); - /// QoS-enabled <ioctl>. + /// QoS-enabled @c ioctl extern ACE_Export int ioctl (ACE_HANDLE socket, unsigned long io_control_code, diff --git a/ACE/ace/OS_NS_sys_mman.inl b/ACE/ace/OS_NS_sys_mman.inl index 528ae7040f9..03306ad018a 100644 --- a/ACE/ace/OS_NS_sys_mman.inl +++ b/ACE/ace/OS_NS_sys_mman.inl @@ -102,7 +102,7 @@ ACE_OS::mmap (void *addr, attr, prot, 0, - 0, + (file_handle == ACE_INVALID_HANDLE) ? len : 0, file_mapping_name); } diff --git a/ACE/ace/OS_NS_sys_sendfile.cpp b/ACE/ace/OS_NS_sys_sendfile.cpp index 9bd3537e54d..ce6cf66e3e9 100644 --- a/ACE/ace/OS_NS_sys_sendfile.cpp +++ b/ACE/ace/OS_NS_sys_sendfile.cpp @@ -15,7 +15,7 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL -#ifndef ACE_HAS_SENDFILE +#if defined ACE_HAS_SENDFILE && ACE_HAS_SENDFILE == 0 ssize_t ACE_OS::sendfile_emulation (ACE_HANDLE out_fd, ACE_HANDLE in_fd, @@ -48,6 +48,6 @@ ACE_OS::sendfile_emulation (ACE_HANDLE out_fd, return r; } -#endif /* !ACE_HAS_SENDFILE */ +#endif /* ACE_HAS_SENDFILE==0 */ ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ACE/ace/OS_NS_sys_sendfile.h b/ACE/ace/OS_NS_sys_sendfile.h index a7983dadec9..03112b058e5 100644 --- a/ACE/ace/OS_NS_sys_sendfile.h +++ b/ACE/ace/OS_NS_sys_sendfile.h @@ -22,6 +22,7 @@ #endif /* ACE_LACKS_PRAGMA_ONCE */ #include "ace/Basic_Types.h" /* For ssize_t and off_t. */ +#include "ace/config-all.h" #if defined (ACE_EXPORT_MACRO) # undef ACE_EXPORT_MACRO @@ -40,13 +41,13 @@ namespace ACE_OS off_t * offset, size_t count); -#ifndef ACE_HAS_SENDFILE +#if defined ACE_HAS_SENDFILE && ACE_HAS_SENDFILE == 0 extern ACE_Export ssize_t sendfile_emulation (ACE_HANDLE out_fd, ACE_HANDLE in_fd, off_t * offset, size_t count); -#endif /* !ACE_HAS_SENDFILE */ +#endif /* ACE_HAS_SENDFILE==0 */ } diff --git a/ACE/ace/OS_NS_sys_sendfile.inl b/ACE/ace/OS_NS_sys_sendfile.inl index 1c468354b3e..d79186017be 100644 --- a/ACE/ace/OS_NS_sys_sendfile.inl +++ b/ACE/ace/OS_NS_sys_sendfile.inl @@ -2,9 +2,9 @@ // // $Id$ -#ifdef ACE_HAS_SENDFILE +#if defined ACE_HAS_SENDFILE && ACE_HAS_SENDFILE == 1 # include <sys/sendfile.h> -#endif /* ACE_HAS_SENDFILE */ +#endif /* ACE_HAS_SENDFILE==1 */ ACE_BEGIN_VERSIONED_NAMESPACE_DECL @@ -14,11 +14,11 @@ ACE_OS::sendfile (ACE_HANDLE out_fd, off_t * offset, size_t count) { -#ifdef ACE_HAS_SENDFILE +#if defined ACE_HAS_SENDFILE && ACE_HAS_SENDFILE == 1 return ::sendfile (out_fd, in_fd, offset, count); #else return ACE_OS::sendfile_emulation (out_fd, in_fd, offset, count); -#endif /* ACE_HAS_SENDFILE */ +#endif /* ACE_HAS_SENDFILE==1 */ } ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ACE/ace/OS_NS_sys_socket.inl b/ACE/ace/OS_NS_sys_socket.inl index 041f9a2da23..5fd3fb10447 100644 --- a/ACE/ace/OS_NS_sys_socket.inl +++ b/ACE/ace/OS_NS_sys_socket.inl @@ -520,15 +520,12 @@ ACE_OS::recvv (ACE_HANDLE handle, 0, 0); # else - int i, chunklen; - char *chunkp = 0; - // Step through the buffers requested by caller; for each one, cycle // through reads until it's filled or an error occurs. - for (i = 0; i < n && result > 0; ++i) + for (int i = 0; i < n && result > 0; ++i) { - chunkp = buffers[i].iov_base; // Point to part of chunk being read - chunklen = buffers[i].iov_len; // Track how much to read to chunk + char *chunkp = buffers[i].iov_base; // Point to part of chunk being read + int chunklen = buffers[i].iov_len; // Track how much to read to chunk while (chunklen > 0 && result > 0) { result = ::recv ((SOCKET) handle, chunkp, chunklen, 0); @@ -753,7 +750,7 @@ ACE_OS::sendv (ACE_HANDLE handle, // Winsock 2 has WSASend and can do this directly, but Winsock 1 // needs to do the sends one-by-one. -# if (ACE_HAS_WINSOCK2 != 0) +# if (ACE_HAS_WINSOCK2 != 0) && !defined (ACE_DONT_USE_WSASEND) result = ::WSASend ((SOCKET) handle, (WSABUF *) buffers, n, diff --git a/ACE/ace/OS_NS_sys_stat.inl b/ACE/ace/OS_NS_sys_stat.inl index aaf27b4301d..b34d5bdeda0 100644 --- a/ACE/ace/OS_NS_sys_stat.inl +++ b/ACE/ace/OS_NS_sys_stat.inl @@ -214,10 +214,11 @@ namespace ACE_OS } else { - stp->st_mode = static_cast<unsigned short>(fdata.dwFileAttributes); + stp->st_mode = static_cast<mode_t>(fdata.dwFileAttributes); stp->st_size = fdata.nFileSizeLow; - stp->st_atime = ACE_Time_Value (fdata.ftLastAccessTime); - stp->st_mtime = ACE_Time_Value (fdata.ftLastWriteTime); + stp->st_atime = ACE_Time_Value (fdata.ftLastAccessTime).sec (); + stp->st_mtime = ACE_Time_Value (fdata.ftLastWriteTime).sec (); + stp->st_ctime = ACE_Time_Value (fdata.ftCreationTime).sec (); } return 0; #elif defined (ACE_HAS_X86_STAT_MACROS) @@ -252,14 +253,15 @@ namespace ACE_OS } else { - stp->st_mode = static_cast<unsigned short>(fdata.dwFileAttributes); + stp->st_mode = static_cast<mode_t>(fdata.dwFileAttributes); stp->st_size = fdata.nFileSizeLow; - stp->st_atime = ACE_Time_Value (fdata.ftLastAccessTime); - stp->st_mtime = ACE_Time_Value (fdata.ftLastWriteTime); + stp->st_atime = ACE_Time_Value (fdata.ftLastAccessTime).sec (); + stp->st_mtime = ACE_Time_Value (fdata.ftLastWriteTime).sec (); + stp->st_ctime = ACE_Time_Value (fdata.ftCreationTime).sec (); } return 0; #elif defined (__BORLANDC__) \ - || (defined (_MSC_VER) && _MSC_VER >= 1300) \ + || defined (_MSC_VER) \ || defined (__MINGW32__) ACE_OSCALL_RETURN (ACE_WSTAT_FUNC_NAME (file, stp), int, -1); #else /* ACE_HAS_WINCE */ diff --git a/ACE/ace/OS_NS_sys_time.inl b/ACE/ace/OS_NS_sys_time.inl index 9300e4ac011..604df97926d 100644 --- a/ACE/ace/OS_NS_sys_time.inl +++ b/ACE/ace/OS_NS_sys_time.inl @@ -26,10 +26,10 @@ ACE_OS::gettimeofday (void) { // ACE_OS_TRACE ("ACE_OS::gettimeofday"); -#if !defined (ACE_HAS_WINCE)&& !defined (ACE_WIN32) +#if !defined (ACE_WIN32) timeval tv; int result = 0; -#endif // !defined (ACE_HAS_WINCE)&& !defined (ACE_WIN32) +#endif // !defined (ACE_WIN32) #if (0) struct timespec ts; @@ -38,7 +38,7 @@ ACE_OS::gettimeofday (void) tv.tv_sec = ts.tv_sec; tv.tv_usec = ts.tv_nsec / 1000L; // timespec has nsec, but timeval has usec -#elif defined (ACE_HAS_WINCE) +#elif defined (ACE_WIN32) && defined (ACE_LACKS_GETSYSTEMTIMEASFILETIME) SYSTEMTIME tsys; FILETIME tfile; ::GetSystemTime (&tsys); @@ -81,12 +81,12 @@ ACE_OS::gettimeofday (void) ACE_OSCALL (::gettimeofday (&tv), int, -1, result); # endif /* ACE_HAS_SVR4_GETTIMEOFDAY */ #endif /* 0 */ -#if !defined (ACE_HAS_WINCE)&& !defined (ACE_WIN32) +#if !defined (ACE_WIN32) if (result == -1) return ACE_Time_Value ((time_t)-1); else return ACE_Time_Value (tv); -#endif // !defined (ACE_HAS_WINCE)&& !defined (ACE_WIN32) +#endif // !defined (ACE_WIN32) } #if defined (ACE_WIN32) && defined (_WIN32_WCE) diff --git a/ACE/ace/OS_NS_sys_utsname.cpp b/ACE/ace/OS_NS_sys_utsname.cpp index f8ec8043fc3..77fbf50faf8 100644 --- a/ACE/ace/OS_NS_sys_utsname.cpp +++ b/ACE/ace/OS_NS_sys_utsname.cpp @@ -58,7 +58,7 @@ ACE_OS::uname (ACE_utsname *name) ) { // Get information from the two structures - const char *os; + const char *os = 0; if (vinfo.dwPlatformId == VER_PLATFORM_WIN32_NT) os = "Windows NT %d.%d"; else @@ -77,7 +77,7 @@ ACE_OS::uname (ACE_utsname *name) // half the space to the processor and half the space to // subtype. The -1 is necessary for because of the space // between processor and subtype in the machine name. - const int bufsize = (sizeof (name->machine) / 2) - 1; + int const bufsize = (sizeof (name->machine) / 2) - 1; char processor[bufsize] = "Unknown"; char subtype[bufsize] = "Unknown"; diff --git a/ACE/ace/OS_NS_sys_wait.h b/ACE/ace/OS_NS_sys_wait.h index 59628474ad6..0b172763efa 100644 --- a/ACE/ace/OS_NS_sys_wait.h +++ b/ACE/ace/OS_NS_sys_wait.h @@ -59,7 +59,7 @@ namespace ACE_OS ACE_HANDLE handle = 0); /** - * Calls @c ::waitpid on UNIX/POSIX platforms Does not work on Vxworks 5.5.x. + * Calls @c ::waitpid on UNIX/POSIX platforms Does not work on VxWorks 5.5.x. * On Win32, @a pid is ignored if the @a handle is not equal to 0. * Passing the process @a handle is prefer on Win32 because using * @a pid to wait on the project doesn't always work correctly diff --git a/ACE/ace/OS_NS_time.h b/ACE/ace/OS_NS_time.h index c72c8b8fc86..5e927229c38 100644 --- a/ACE/ace/OS_NS_time.h +++ b/ACE/ace/OS_NS_time.h @@ -25,9 +25,10 @@ # pragma once # endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "ace/OS_NS_errno.h" #include "ace/Basic_Types.h" #include "ace/os_include/os_time.h" +#include "ace/OS_NS_errno.h" + #include /**/ "ace/ACE_export.h" #if defined (ACE_EXPORT_MACRO) @@ -98,6 +99,15 @@ inline long ace_timezone() #if !defined (ACE_LACKS_DIFFTIME) +# if defined (_WIN32_WCE) && (_WIN32_WCE == 0x600) && !defined (_USE_32BIT_TIME_T) + // The WinCE 6.0 SDK ships with a diff_time that uses __time32_t as type + // not time_t. This resolves in compilation warnings because time_t + // can be 64bit. Disable at this momemt the warning for just this method + // else we get two compile warnings on each source file that includes + // this file. +# pragma warning (push) +# pragma warning (disable: 4244) +# endif /// Helper for the ACE_OS::difftime() function /** * We moved the difftime code that used to be in ACE_OS::difftime() @@ -111,6 +121,9 @@ inline double ace_difftime(time_t t1, time_t t0) { return difftime (t1, t0); } +# if defined (_WIN32_WCE) && (_WIN32_WCE == 0x600) && !defined (_USE_32BIT_TIME_T) +# pragma warning (pop) +# endif #endif /* !ACE_LACKS_DIFFTIME */ # if defined (ACE_WIN32) diff --git a/ACE/ace/OS_NS_time.inl b/ACE/ace/OS_NS_time.inl index cf4a1b105ff..9c7def18b5d 100644 --- a/ACE/ace/OS_NS_time.inl +++ b/ACE/ace/OS_NS_time.inl @@ -334,8 +334,9 @@ ACE_OS::gethrtime (const ACE_HRTimer_Op op) ACE_OS::clock_gettime ( #if defined (ACE_HAS_CLOCK_GETTIME_MONOTONIC) CLOCK_MONOTONIC, -#endif /* !ACE_HAS_CLOCK_GETTIME_MONOTONIC */ +#else CLOCK_REALTIME, +#endif /* !ACE_HAS_CLOCK_GETTIME_MONOTONIC */ &ts); // Carefully create the return value to avoid arithmetic overflow diff --git a/ACE/ace/OS_NS_unistd.cpp b/ACE/ace/OS_NS_unistd.cpp index 115c7987bec..059d2799dea 100644 --- a/ACE/ace/OS_NS_unistd.cpp +++ b/ACE/ace/OS_NS_unistd.cpp @@ -486,7 +486,10 @@ ACE_OS::pread (ACE_HANDLE handle, if (original_low_position == INVALID_SET_FILE_POINTER && GetLastError () != NO_ERROR) - return -1; + { + ACE_OS::set_errno_to_last_error (); + return -1; + } // Go to the correct position LONG low_offset = ACE_LOW_PART (offset); @@ -497,7 +500,10 @@ ACE_OS::pread (ACE_HANDLE handle, FILE_BEGIN); if (altered_position == INVALID_SET_FILE_POINTER && GetLastError () != NO_ERROR) - return -1; + { + ACE_OS::set_errno_to_last_error (); + return -1; + } DWORD bytes_read; @@ -550,7 +556,10 @@ ACE_OS::pread (ACE_HANDLE handle, &original_high_position, FILE_BEGIN) == INVALID_SET_FILE_POINTER && GetLastError () != NO_ERROR) - return -1; + { + ACE_OS::set_errno_to_last_error (); + return -1; + } return (ssize_t) bytes_read; @@ -605,27 +614,30 @@ ACE_OS::pwrite (ACE_HANDLE handle, ACE_OS_GUARD // Remember the original file pointer position - LARGE_INTEGER orig_position; - orig_position.QuadPart = 0; - orig_position.LowPart = ::SetFilePointer (handle, - 0, - &orig_position.HighPart, - FILE_CURRENT); - if (orig_position.LowPart == INVALID_SET_FILE_POINTER + LONG original_high_position = 0; + DWORD original_low_position = ::SetFilePointer (handle, + 0, + &original_high_position, + FILE_CURRENT); + + if (original_low_position == INVALID_SET_FILE_POINTER && GetLastError () != NO_ERROR) - return -1; + { + ACE_OS::set_errno_to_last_error (); + return -1; + } DWORD bytes_written; - LARGE_INTEGER loffset; - loffset.QuadPart = offset; + LONG low_offset = ACE_LOW_PART (offset); + LONG high_offset = ACE_HIGH_PART (offset); # if defined (ACE_HAS_WIN32_OVERLAPPED_IO) OVERLAPPED overlapped; overlapped.Internal = 0; overlapped.InternalHigh = 0; - overlapped.Offset = loffset.LowPart; - overlapped.OffsetHigh = loffset.HighPart; + overlapped.Offset = low_offset; + overlapped.OffsetHigh = high_offset; overlapped.hEvent = 0; BOOL result = ::WriteFile (handle, @@ -637,35 +649,27 @@ ACE_OS::pwrite (ACE_HANDLE handle, if (result == FALSE) { if (::GetLastError () != ERROR_IO_PENDING) - return -1; - - result = ::GetOverlappedResult (handle, - &overlapped, - &bytes_written, - TRUE); - if (result == FALSE) - return -1; + { + return -1; + } + else + { + result = ::GetOverlappedResult (handle, + &overlapped, + &bytes_written, + TRUE); + if (result == FALSE) + return -1; + } } # else /* ACE_HAS_WIN32_OVERLAPPED_IO */ - // Go to the correct position; if this is a Windows variant without - // overlapped I/O, it probably doesn't have SetFilePointerEx either, - // so manage this with SetFilePointer, changing calls based on the use - // of 64 bit offsets. - DWORD newpos; -# if defined (_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS == 64 - newpos = ::SetFilePointer (handle, - loffset.LowPart, - &loffset.HighPart, - FILE_BEGIN); -# else - newpos = ::SetFilePointer (handle, - loffset.LowPart, - 0, - FILE_BEGIN); -# endif /* 64-bit file offsets */ - if (newpos == 0xFFFFFFFF && ::GetLastError () != NO_ERROR) + if (::SetFilePointer (handle, + low_offset, + &high_offset, + FILE_BEGIN) == INVALID_SET_FILE_POINTER + && ::GetLastError () != NO_ERROR) { ACE_OS::set_errno_to_last_error (); return -1; @@ -683,11 +687,14 @@ ACE_OS::pwrite (ACE_HANDLE handle, // Reset the original file pointer position if (::SetFilePointer (handle, - orig_position.LowPart, - &orig_position.HighPart, + original_low_position, + &original_high_position, FILE_BEGIN) == INVALID_SET_FILE_POINTER && GetLastError () != NO_ERROR) - return -1; + { + ACE_OS::set_errno_to_last_error (); + return -1; + } return (ssize_t) bytes_written; @@ -851,7 +858,7 @@ ACE_OS::string_to_argv (ACE_TCHAR *buf, { delete [] argp; } - + errno = ENOMEM; return -1; } diff --git a/ACE/ace/OS_NS_unistd.h b/ACE/ace/OS_NS_unistd.h index ff9ba5a1cc5..b44188cb45a 100644 --- a/ACE/ace/OS_NS_unistd.h +++ b/ACE/ace/OS_NS_unistd.h @@ -62,7 +62,7 @@ namespace ACE_OS ACE_NAMESPACE_INLINE_FUNCTION long allocation_granularity (void); - // used by ARGV::argv_to_string() and ACE_OS::fork_exec() + /// used by ARGV::argv_to_string() and ACE_OS::fork_exec() extern ACE_Export int argv_to_string (int argc, ACE_TCHAR **argv, @@ -139,7 +139,6 @@ namespace ACE_OS extern ACE_Export pid_t fork_exec (ACE_TCHAR *argv[]); - //@} ACE_NAMESPACE_INLINE_FUNCTION @@ -255,7 +254,7 @@ namespace ACE_OS * <ACE_OS::read> call, which uses the <read> system call on UNIX * and the <ReadFile> call on Win32). If errors occur, -1 is * returned. If EOF occurs, 0 is returned. Whatever data has been - * read will be returned to the caller through<bytes_transferred>. + * read will be returned to the caller through @a bytes_transferred. * */ extern ACE_Export @@ -356,7 +355,7 @@ namespace ACE_OS * calls, which is uses the <write> system call on UNIX and the * <WriteFile> call on Win32). If errors occur, -1 is returned. If * EOF occurs, 0 is returned. Whatever data has been transmitted - * will be returned to the caller through <bytes_transferred>. + * will be returned to the caller through @a bytes_transferred. */ extern ACE_Export ssize_t write_n (ACE_HANDLE handle, diff --git a/ACE/ace/OS_NS_unistd.inl b/ACE/ace/OS_NS_unistd.inl index 7abf873fd84..6605948c4fa 100644 --- a/ACE/ace/OS_NS_unistd.inl +++ b/ACE/ace/OS_NS_unistd.inl @@ -23,7 +23,7 @@ # include "ace/os_include/os_unistd.h" #endif /* ACE_HAS_ACCESS_EMULATION */ -#if defined (ACE_VXWORKS) && (((ACE_VXWORKS >= 0x620) && (ACE_VXWORKS <= 0x660)) || defined (ACE_HAS_VXWORKS551_MEDUSA)) +#if defined (ACE_VXWORKS) && (((ACE_VXWORKS >= 0x620) && (ACE_VXWORKS <= 0x670)) || defined (ACE_HAS_VXWORKS551_MEDUSA)) # if defined (__RTP__) # include "ace/os_include/os_strings.h" # else @@ -49,7 +49,7 @@ ACE_OS::access (const char *path, int amode) ACE_OS::fclose (handle); return 0; } - return (-1); + return -1; # else ACE_UNUSED_ARG (path); ACE_UNUSED_ARG (amode); @@ -195,7 +195,10 @@ ACE_INLINE ACE_HANDLE ACE_OS::dup (ACE_HANDLE handle) { ACE_OS_TRACE ("ACE_OS::dup"); -#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE) +#if defined (ACE_LACKS_DUP) + ACE_UNUSED_ARG (handle); + ACE_NOTSUP_RETURN (ACE_INVALID_HANDLE); +#elif defined (ACE_WIN32) ACE_HANDLE new_fd; if (::DuplicateHandle(::GetCurrentProcess (), handle, @@ -208,15 +211,9 @@ ACE_OS::dup (ACE_HANDLE handle) else ACE_FAIL_RETURN (ACE_INVALID_HANDLE); /* NOTREACHED */ -#elif defined (ACE_HAS_WINCE) - ACE_UNUSED_ARG (handle); - ACE_NOTSUP_RETURN (0); -#elif defined (ACE_LACKS_DUP) - ACE_UNUSED_ARG (handle); - ACE_NOTSUP_RETURN (-1); #else ACE_OSCALL_RETURN (::dup (handle), ACE_HANDLE, ACE_INVALID_HANDLE); -#endif /* ACE_WIN32 && !ACE_HAS_WINCE */ +#endif /* ACE_LACKS_DUP */ } ACE_INLINE int @@ -558,11 +555,10 @@ ACE_OS::hostname (wchar_t name[], size_t maxnamelen) #else /* ACE_WIN32 && !ACE_HAS_WINCE */ // Emulate using the char version char *char_name = 0; - int result = 0; ACE_NEW_RETURN (char_name, char[maxnamelen], -1); - result = ACE_OS::hostname(char_name, maxnamelen); + int result = ACE_OS::hostname(char_name, maxnamelen); ACE_OS::strcpy (name, ACE_Ascii_To_Wide (char_name).wchar_rep ()); delete [] char_name; diff --git a/ACE/ace/OS_NS_wchar.cpp b/ACE/ace/OS_NS_wchar.cpp index 194e4a9a1da..2e02c87c05d 100644 --- a/ACE/ace/OS_NS_wchar.cpp +++ b/ACE/ace/OS_NS_wchar.cpp @@ -84,7 +84,7 @@ ACE_OS::wcscmp_emulation (const ACE_WCHAR_T *string1, { while (*string1 == *string2++) if (*string1++ == 0) - return (0); + return 0; return (*string1 - *--string2); } #endif /* !ACE_HAS_WCHAR || ACE_LACKS_WCSCMP */ diff --git a/ACE/ace/OS_NS_wctype.cpp b/ACE/ace/OS_NS_wctype.cpp new file mode 100644 index 00000000000..4a25bfd79e3 --- /dev/null +++ b/ACE/ace/OS_NS_wctype.cpp @@ -0,0 +1,11 @@ +// -*- C++ -*- +// $Id$ + +#include "ace/OS_NS_wctype.h" + +ACE_RCSID(ace, OS_NS_wctype, "$Id$") + +#if !defined (ACE_HAS_INLINED_OSCALLS) +# include "ace/OS_NS_wctype.inl" +#endif /* ACE_HAS_INLINED_OSCALLS */ + diff --git a/ACE/ace/OS_NS_wctype.h b/ACE/ace/OS_NS_wctype.h new file mode 100644 index 00000000000..58b740001a4 --- /dev/null +++ b/ACE/ace/OS_NS_wctype.h @@ -0,0 +1,71 @@ +// -*- C++ -*- + +//============================================================================= +/** + * @file OS_NS_wctype.h + * + * $Id$ + * + * @author Johnny Willemsen <jwillemsen@remedy.nl> + */ +//============================================================================= + +#ifndef ACE_OS_NS_WCTYPE_H +# define ACE_OS_NS_WCTYPE_H + +# include /**/ "ace/pre.h" + +# include "ace/config-all.h" + +# if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +# endif /* ACE_LACKS_PRAGMA_ONCE */ + +#include /**/ "ace/ACE_export.h" + +#if defined (ACE_EXPORT_MACRO) +# undef ACE_EXPORT_MACRO +#endif +#define ACE_EXPORT_MACRO ACE_Export + +#include "ace/os_include/os_ctype.h" +#if defined ACE_HAS_WCHAR +# include "ace/os_include/os_wctype.h" +#endif /* ACE_HAS_WCHAR */ + +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + +namespace ACE_OS { + + // these are non-standard names... + + /** @name Functions from <cctype> + * + * Included are the functions defined in <cctype> and their <cwctype> + * equivalents. + * + * Since they are often implemented as macros, we don't use the same name + * here. Instead, we change by prepending "ace_". + */ + //@{ +#if defined (ACE_HAS_WCHAR) + /// Tests @a c for the property specified by the @a desc argument + ACE_NAMESPACE_INLINE_FUNCTION + int ace_iswctype(wint_t c, wctype_t desc); +#endif /* ACE_HAS_WCHAR */ + //@} + +} /* namespace ACE_OS */ + +ACE_END_VERSIONED_NAMESPACE_DECL + +# if defined (ACE_HAS_INLINED_OSCALLS) +# if defined (ACE_INLINE) +# undef ACE_INLINE +# endif /* ACE_INLINE */ +# define ACE_INLINE inline +# include "ace/OS_NS_wctype.inl" +# endif /* ACE_HAS_INLINED_OSCALLS */ + +# include /**/ "ace/post.h" +#endif /* ACE_OS_NS_WCTYPE_H */ diff --git a/ACE/ace/OS_NS_wctype.inl b/ACE/ace/OS_NS_wctype.inl new file mode 100644 index 00000000000..9fc6321e64a --- /dev/null +++ b/ACE/ace/OS_NS_wctype.inl @@ -0,0 +1,25 @@ +// -*- C++ -*- +// +// $Id$ + +#if defined (ACE_LACKS_ISWCTYPE) +#include "ace/OS_NS_errno.h" +#endif + +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + +#if defined (ACE_HAS_WCHAR) +ACE_INLINE int +ACE_OS::ace_iswctype(wint_t c, wctype_t desc) +{ +#if !defined (ACE_LACKS_ISWCTYPE) + return iswctype (c, desc); +#else + ACE_UNUSED_ARG (c); + ACE_UNUSED_ARG (desc); + ACE_NOTSUP_RETURN (-1); +#endif +} +#endif /* ACE_HAS_WCHAR */ + +ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ACE/ace/OS_main.cpp b/ACE/ace/OS_main.cpp index 6d931fbd4b6..47c6992339a 100644 --- a/ACE/ace/OS_main.cpp +++ b/ACE/ace/OS_main.cpp @@ -4,6 +4,8 @@ ACE_RCSID(ace, OS_main, "$Id$") +#if !defined (ACE_DOESNT_DEFINE_MAIN) + #if defined (ACE_HAS_NONSTATIC_OBJECT_MANAGER) && !defined (ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER) #include "ace/Init_ACE.h" @@ -111,12 +113,21 @@ int ACE_Main_Base::run (HINSTANCE, int) { ACE_TCHAR cmdline[1024]; - ACE_OS::strcpy (cmdline, ACE_TEXT ("program ")); + ACE_TCHAR msg_file [MAXPATHLEN]; + if (ACE_TEXT_GetModuleFileName (0, msg_file, MAXPATHLEN)) + { + ACE_OS::strcpy (cmdline, msg_file); + ACE_OS::strcat (cmdline, ACE_TEXT (" ")); + } + else + { + ACE_OS::strcpy (cmdline, ACE_TEXT ("program ")); + } ACE_OS::strcat (cmdline, ACE_TEXT_WCHAR_TO_TCHAR (lpCmdLine)); ACE_ARGV ce_argv (cmdline); ACE::init (); ACE_MAIN_OBJECT_MANAGER - int i = this->run_i (ce_argv.argc (), ce_argv.argv ()); + int const i = this->run_i (ce_argv.argc (), ce_argv.argv ()); ACE::fini (); return i; } @@ -124,4 +135,7 @@ ACE_END_VERSIONED_NAMESPACE_DECL # endif /* !ACE_HAS_WINCE */ -# endif /* ACE_HAS_NONSTATIC_OBJECT_MANAGER && !ACE_HAS_WINCE && !ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER */ +#endif /* ACE_HAS_NONSTATIC_OBJECT_MANAGER && !ACE_HAS_WINCE && !ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER */ + +#endif /* ACE_DOESNT_DEFINE_MAIN */ + diff --git a/ACE/ace/OS_main.h b/ACE/ace/OS_main.h index aa9cb9916c6..ec7a43945dd 100644 --- a/ACE/ace/OS_main.h +++ b/ACE/ace/OS_main.h @@ -25,6 +25,8 @@ # pragma once # endif /* ACE_LACKS_PRAGMA_ONCE */ +# if !defined (ACE_DOESNT_DEFINE_MAIN) + # if defined (ACE_HAS_RTEMS) extern char* rtems_progname; # endif /* ACE_HAS_RTEMS */ @@ -300,6 +302,8 @@ int ace_main_i # endif /* ACE_PSOSIM */ # endif /* ACE_HAS_NONSTATIC_OBJECT_MANAGER && !ACE_HAS_WINCE && !ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER */ +#endif /* ACE_DOESNT_DEFINE_MAIN */ + # include /**/ "ace/post.h" #endif /* ACE_OS_MAIN_H */ diff --git a/ACE/ace/Object_Manager.cpp b/ACE/ace/Object_Manager.cpp index 43b74703120..525b426f265 100644 --- a/ACE/ace/Object_Manager.cpp +++ b/ACE/ace/Object_Manager.cpp @@ -294,7 +294,7 @@ ACE_Object_Manager::init (void) // NOTE this only works for intel based windows builds. # ifdef _M_IX86 - HMODULE hKernel32 = LoadLibrary (ACE_TEXT ("kernel32.dll")); + HMODULE hKernel32 = ACE_TEXT_LoadLibrary (ACE_TEXT ("kernel32.dll")); if (hKernel32) { void *pOrgEntry = @@ -444,7 +444,8 @@ ACE_Object_Manager::instance (void) int ACE_Object_Manager::at_exit_i (void *object, ACE_CLEANUP_FUNC cleanup_hook, - void *param) + void *param, + const char* name) { ACE_MT (ACE_GUARD_RETURN (ACE_Recursive_Thread_Mutex, ace_mon, *instance_->internal_lock_, -1)); @@ -462,7 +463,22 @@ ACE_Object_Manager::at_exit_i (void *object, return -1; } - return exit_info_.at_exit_i (object, cleanup_hook, param); + return exit_info_.at_exit_i (object, cleanup_hook, param, name); +} + +int +ACE_Object_Manager::remove_at_exit_i (void *object) +{ + ACE_MT (ACE_GUARD_RETURN (ACE_Recursive_Thread_Mutex, ace_mon, + *instance_->internal_lock_, -1)); + + if (shutting_down_i ()) + { + errno = EAGAIN; + return -1; + } + + return exit_info_.remove (object); } #if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0) @@ -531,7 +547,7 @@ ACE_Object_Manager::get_singleton_lock (ACE_Thread_Mutex *&lock) if (lock == 0) { - ACE_Cleanup_Adapter<ACE_Thread_Mutex> *lock_adapter; + ACE_Cleanup_Adapter<ACE_Thread_Mutex> *lock_adapter = 0; ACE_NEW_RETURN (lock_adapter, ACE_Cleanup_Adapter<ACE_Thread_Mutex>, -1); @@ -541,7 +557,9 @@ ACE_Object_Manager::get_singleton_lock (ACE_Thread_Mutex *&lock) // termination. This call will cause us to grab the // ACE_Object_Manager::instance ()->internal_lock_ // again; that's why it is a recursive lock. - ACE_Object_Manager::at_exit (lock_adapter); + ACE_Object_Manager::at_exit (lock_adapter, + 0, + typeid (*lock_adapter).name ()); } } } @@ -579,7 +597,7 @@ ACE_Object_Manager::get_singleton_lock (ACE_Mutex *&lock) if (lock == 0) { - ACE_Cleanup_Adapter<ACE_Mutex> *lock_adapter; + ACE_Cleanup_Adapter<ACE_Mutex> *lock_adapter = 0; ACE_NEW_RETURN (lock_adapter, ACE_Cleanup_Adapter<ACE_Mutex>, -1); @@ -663,7 +681,7 @@ ACE_Object_Manager::get_singleton_lock (ACE_RW_Thread_Mutex *&lock) if (lock == 0) { - ACE_Cleanup_Adapter<ACE_RW_Thread_Mutex> *lock_adapter; + ACE_Cleanup_Adapter<ACE_RW_Thread_Mutex> *lock_adapter = 0; ACE_NEW_RETURN (lock_adapter, ACE_Cleanup_Adapter<ACE_RW_Thread_Mutex>, -1); diff --git a/ACE/ace/Object_Manager.h b/ACE/ace/Object_Manager.h index 8481aa15e99..1e7a5845b74 100644 --- a/ACE/ace/Object_Manager.h +++ b/ACE/ace/Object_Manager.h @@ -237,13 +237,13 @@ public: * Register an ACE_Cleanup object for cleanup at process * termination. The object is deleted via the * <ace_cleanup_destroyer>. If you need more flexiblity, see the - * <other at_exit> method below. For OS's that do not have + * @c other at_exit method below. For OS's that do not have * processes, cleanup takes place at the end of <main>. Returns 0 * on success. On failure, returns -1 and sets errno to: EAGAIN if * shutting down, ENOMEM if insufficient virtual memory, or EEXIST * if the object (or array) had already been registered. */ - static int at_exit (ACE_Cleanup *object, void *param = 0); + static int at_exit (ACE_Cleanup *object, void *param = 0, const char* name = 0); #if defined (ACE_HAS_TSS_EMULATION) static int init_tss (void); @@ -256,8 +256,8 @@ public: * that is called for the object or array when it to be destroyed. * It may perform any necessary cleanup specific for that object or * its class. "param" is passed as the second parameter to the - * "cleanup_hook" function; the first parameter is the object (or - * array) to be destroyed. "cleanup_hook", for example, may delete + * @a cleanup_hook function; the first parameter is the object (or + * array) to be destroyed. @a cleanup_hook, for example, may delete * the object (or array). For OS's that do not have processes, this * function is the same as <at_thread_exit>. Returns 0 on success. * On failure, returns -1 and sets errno to: EAGAIN if shutting @@ -266,14 +266,18 @@ public: */ static int at_exit (void *object, ACE_CLEANUP_FUNC cleanup_hook, - void *param); + void *param, + const char* name = 0); + + static int remove_at_exit (void *object); #if 0 /* not implemented yet */ /// Similar to <at_exit>, except that the cleanup_hook is called /// when the current thread exits instead of when the program terminates. static int at_thread_exit (void *object, ACE_CLEANUP_FUNC cleanup_hook, - void *param); + void *param, + const char* name); #endif /* 0 */ /// Unique identifiers for preallocated objects. Please see @@ -343,7 +347,11 @@ private: /// Register an object or array for deletion at program termination. /// See description of static version above for return values. - int at_exit_i (void *object, ACE_CLEANUP_FUNC cleanup_hook, void *param); + int at_exit_i (void *object, ACE_CLEANUP_FUNC cleanup_hook, void *param, const char* name); + + /// Remove an object for deletion at program termination. + /// See description of static version above for return values. + int remove_at_exit_i (void *object); #if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0) public: diff --git a/ACE/ace/Object_Manager.inl b/ACE/ace/Object_Manager.inl index bb95a485fdc..bcff772f605 100644 --- a/ACE/ace/Object_Manager.inl +++ b/ACE/ace/Object_Manager.inl @@ -7,24 +7,35 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE int ACE_Object_Manager::at_exit (ACE_Cleanup *object, - void *param) + void *param, + const char* name) { return ACE_Object_Manager::instance ()->at_exit_i ( object, (ACE_CLEANUP_FUNC) ACE_CLEANUP_DESTROYER_NAME, - param); + param, + name); } ACE_INLINE int ACE_Object_Manager::at_exit (void *object, ACE_CLEANUP_FUNC cleanup_hook, - void *param) + void *param, + const char* name) { return ACE_Object_Manager::instance ()->at_exit_i ( object, cleanup_hook, - param); + param, + name); +} + +ACE_INLINE +int +ACE_Object_Manager::remove_at_exit (void *object) +{ + return ACE_Object_Manager::instance ()->remove_at_exit_i (object); } ACE_INLINE diff --git a/ACE/ace/Object_Manager_Base.cpp b/ACE/ace/Object_Manager_Base.cpp index 866f999871b..8740359e1b4 100644 --- a/ACE/ace/Object_Manager_Base.cpp +++ b/ACE/ace/Object_Manager_Base.cpp @@ -83,8 +83,8 @@ void *ACE_OS_Object_Manager::preallocated_object[ ACE_OS_Object_Manager::ACE_OS_PREALLOCATED_OBJECTS] = { 0 }; ACE_OS_Object_Manager::ACE_OS_Object_Manager (void) - // default_mask_ isn't initialized, because it's defined by <init>. - : thread_hook_ (0) + : default_mask_ (0) + , thread_hook_ (0) , exit_info_ () #if defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS) , seh_except_selector_ (ACE_SEH_Default_Exception_Selector) @@ -394,11 +394,12 @@ ACE_OS_Object_Manager::fini (void) int ace_exit_hook_marker = 0; int -ACE_OS_Object_Manager::at_exit (ACE_EXIT_HOOK func) +ACE_OS_Object_Manager::at_exit (ACE_EXIT_HOOK func, const char* name) { return exit_info_.at_exit_i (&ace_exit_hook_marker, reinterpret_cast <ACE_CLEANUP_FUNC> (func), - 0); + 0, + name); } void diff --git a/ACE/ace/Object_Manager_Base.h b/ACE/ace/Object_Manager_Base.h index a67c5ceeec8..6a685f41d06 100644 --- a/ACE/ace/Object_Manager_Base.h +++ b/ACE/ace/Object_Manager_Base.h @@ -104,7 +104,7 @@ protected: /** * Flag indicating whether the ACE_Object_Manager was dynamically - * allocated by ACE. (If is was dynamically allocated by the + * allocated by ACE. (If is was dynamically allocated by the * application, then the application is responsible for destroying * it.) */ @@ -205,7 +205,7 @@ public: static ACE_OS_Object_Manager *instance (void); /// For <ACE_OS::atexit> support. - int at_exit (ACE_EXIT_HOOK func); + int at_exit (ACE_EXIT_HOOK func, const char* name = 0); //private: /// Singleton instance pointer. diff --git a/ACE/ace/POSIX_Asynch_IO.cpp b/ACE/ace/POSIX_Asynch_IO.cpp index 2bb9155fcf8..5d354093d69 100644 --- a/ACE/ace/POSIX_Asynch_IO.cpp +++ b/ACE/ace/POSIX_Asynch_IO.cpp @@ -815,7 +815,7 @@ ACE_POSIX_Asynch_Accept::open (const ACE_Handler::Proxy_Ptr &handler_proxy, if (this->flg_open_) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT("%N:%l:ACE_POSIX_Asynch_Accept::open:") - ACE_TEXT("acceptor already open \n")), + ACE_TEXT("acceptor already open\n")), -1); if (-1 == ACE_POSIX_Asynch_Operation::open (handler_proxy, @@ -2075,8 +2075,8 @@ ACE_POSIX_Asynch_Transmit_File::transmit_file (ACE_HANDLE file, if (file_size == -1) ACE_ERROR_RETURN ((LM_ERROR, - "Error:%N:%l:%p\n", - "POSIX_Asynch_Transmit_File:filesize failed"), + ACE_TEXT("Error:%N:%l:%p\n"), + ACE_TEXT("POSIX_Asynch_Transmit_File:filesize failed")), -1); if (bytes_to_write == 0) @@ -2084,8 +2084,8 @@ ACE_POSIX_Asynch_Transmit_File::transmit_file (ACE_HANDLE file, if (offset > (size_t) file_size) ACE_ERROR_RETURN ((LM_ERROR, - "Error:%p\n", - "Asynch_Transmit_File:File size is less than offset"), + ACE_TEXT("Error:%p\n"), + ACE_TEXT("Asynch_Transmit_File:File size is less than offset")), -1); if (offset != 0) diff --git a/ACE/ace/POSIX_CB_Proactor.cpp b/ACE/ace/POSIX_CB_Proactor.cpp index 3ce4218090a..62c624bdb8f 100644 --- a/ACE/ace/POSIX_CB_Proactor.cpp +++ b/ACE/ace/POSIX_CB_Proactor.cpp @@ -135,9 +135,9 @@ ACE_POSIX_CB_Proactor::handle_events_i (u_long milli_seconds) if (lerror != ETIME && // timeout lerror != EINTR ) // interrupted system call ACE_ERROR ((LM_ERROR, - "%N:%l:(%P | %t)::%p\n", - "ACE_POSIX_CB_Proactor::handle_events:" - "semaphore acquire failed" + ACE_TEXT("%N:%l:(%P | %t)::%p\n"), + ACE_TEXT("ACE_POSIX_CB_Proactor::handle_events:") + ACE_TEXT("semaphore acquire failed") )); } diff --git a/ACE/ace/POSIX_Proactor.cpp b/ACE/ace/POSIX_Proactor.cpp index 67443daab77..b2a821b4fb5 100644 --- a/ACE/ace/POSIX_Proactor.cpp +++ b/ACE/ace/POSIX_Proactor.cpp @@ -685,9 +685,9 @@ ACE_AIOCB_Notify_Pipe_Manager::ACE_AIOCB_Notify_Pipe_Manager (ACE_POSIX_AIOCB_Pr 0) // Proactor == -1) ACE_ERROR ((LM_ERROR, - "%N:%l:%p\n", - "ACE_AIOCB_Notify_Pipe_Manager::ACE_AIOCB_Notify_Pipe_Manager:" - "Open on Read Stream failed")); + ACE_TEXT("%N:%l:%p\n"), + ACE_TEXT("ACE_AIOCB_Notify_Pipe_Manager::ACE_AIOCB_Notify_Pipe_Manager:") + ACE_TEXT("Open on Read Stream failed"))); // Issue an asynch_read on the read_stream of the notify pipe. if (this->read_stream_.read (this->message_block_, @@ -696,9 +696,9 @@ ACE_AIOCB_Notify_Pipe_Manager::ACE_AIOCB_Notify_Pipe_Manager (ACE_POSIX_AIOCB_Pr 0) // Priority == -1) ACE_ERROR ((LM_ERROR, - "%N:%l:%p\n", - "ACE_AIOCB_Notify_Pipe_Manager::ACE_AIOCB_Notify_Pipe_Manager:" - "Read from pipe failed")); + ACE_TEXT("%N:%l:%p\n"), + ACE_TEXT("ACE_AIOCB_Notify_Pipe_Manager::ACE_AIOCB_Notify_Pipe_Manager:") + ACE_TEXT("Read from pipe failed"))); } ACE_AIOCB_Notify_Pipe_Manager::~ACE_AIOCB_Notify_Pipe_Manager (void) @@ -1126,8 +1126,8 @@ ACE_POSIX_Asynch_Result * ACE_POSIX_AIOCB_Proactor::getq_result (void) // don't waste time if queue is empty - it is normal // or check queue size before dequeue_head // ACE_ERROR_RETURN ((LM_ERROR, -// "%N:%l:(%P | %t):%p\n", -// "ACE_POSIX_AIOCB_Proactor::getq_result failed"), +// ACE_TEXT("%N:%l:(%P | %t):%p\n"), +// ACE_TEXT("ACE_POSIX_AIOCB_Proactor::getq_result failed")), // 0); return result; @@ -1656,8 +1656,8 @@ ACE_POSIX_SIG_Proactor::ACE_POSIX_SIG_Proactor (const sigset_t signal_set, // Empty the signal set first. if (sigemptyset (&this->RT_completion_signals_) == -1) ACE_ERROR ((LM_ERROR, - "Error:(%P | %t):%p\n", - "sigemptyset failed")); + ACE_TEXT("Error:(%P | %t):%p\n"), + ACE_TEXT("sigemptyset failed"))); // For each signal number present in the <signal_set>, add it to // the signal set we use, and also set up its process signal action @@ -1669,9 +1669,9 @@ ACE_POSIX_SIG_Proactor::ACE_POSIX_SIG_Proactor (const sigset_t signal_set, si); if (member == -1) ACE_ERROR ((LM_ERROR, - "%N:%l:(%P | %t)::%p\n", - "ACE_POSIX_SIG_Proactor::ACE_POSIX_SIG_Proactor:" - "sigismember failed")); + ACE_TEXT("%N:%l:(%P | %t)::%p\n"), + ACE_TEXT("ACE_POSIX_SIG_Proactor::ACE_POSIX_SIG_Proactor:") + ACE_TEXT("sigismember failed"))); else if (member == 1) { sigaddset (&this->RT_completion_signals_, si); @@ -1724,8 +1724,8 @@ ACE_POSIX_SIG_Proactor::notify_completion (int sig_num) pid_t const pid = ACE_OS::getpid (); if (pid == (pid_t) -1) ACE_ERROR_RETURN ((LM_ERROR, - "Error:%N:%l(%P | %t):%p", - "<getpid> failed"), + ACE_TEXT("Error:%N:%l(%P | %t):%p"), + ACE_TEXT("<getpid> failed")), -1); // Set the signal information. @@ -1742,8 +1742,8 @@ ACE_POSIX_SIG_Proactor::notify_completion (int sig_num) if (errno != EAGAIN) ACE_ERROR_RETURN ((LM_ERROR, - "Error:%N:%l:(%P | %t):%p\n", - "<sigqueue> failed"), + ACE_TEXT("Error:%N:%l:(%P | %t):%p\n"), + ACE_TEXT("<sigqueue> failed")), -1); return -1; } @@ -1834,8 +1834,8 @@ ACE_POSIX_SIG_Proactor::setup_signal_handler (int signal_number) const 0); if (sigaction_return == -1) ACE_ERROR_RETURN ((LM_ERROR, - "Error:%p\n", - "Proactor couldnt do sigaction for the RT SIGNAL"), + ACE_TEXT("Error:%p\n"), + ACE_TEXT("Proactor couldnt do sigaction for the RT SIGNAL")), -1); #else ACE_UNUSED_ARG(signal_number); diff --git a/ACE/ace/Parse_Node.cpp b/ACE/ace/Parse_Node.cpp index fab2580bcc7..bcd9cb7229e 100644 --- a/ACE/ace/Parse_Node.cpp +++ b/ACE/ace/Parse_Node.cpp @@ -15,15 +15,14 @@ ACE_RCSID (ace, Parse_Node, "$Id$") - - ACE_BEGIN_VERSIONED_NAMESPACE_DECL +ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_ALLOC_HOOK_DEFINE (ACE_Stream_Node) // Provide the class hierarchy that defines the parse tree of Service // Nodes. - void +void ACE_Stream_Node::dump (void) const { #if defined (ACE_HAS_DUMP) @@ -58,9 +57,12 @@ ACE_Stream_Node::apply (ACE_Service_Gestalt *config, int &yyerrno) if (yyerrno != 0) { - ACE_ERROR ((LM_ERROR, - ACE_TEXT ("dynamic initialization failed for Module %s\n"), - module->name ())); + if (ACE::debug ()) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("dynamic initialization failed for Module %s\n"), + module->name ())); + } ++yyerrno; } @@ -71,9 +73,12 @@ ACE_Stream_Node::apply (ACE_Service_Gestalt *config, int &yyerrno) if (st->push (mt) == -1) { - ACE_ERROR ((LM_ERROR, - ACE_TEXT ("dynamic initialization failed for Stream %s\n"), - this->node_->name ())); + if (ACE::debug ()) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("dynamic initialization failed for Stream %s\n"), + this->node_->name ())); + } ++yyerrno; } @@ -465,11 +470,14 @@ ACE_Location_Node::open_dll (int & yyerrno) ++yyerrno; #ifndef ACE_NLOGGING - ACE_TCHAR *errmsg = this->dll_.error (); - ACE_ERROR ((LM_ERROR, - ACE_TEXT ("ACE (%P|%t) LN::open_dll - Failed to open %s: %s\n"), - this->pathname (), - errmsg ? errmsg : ACE_TEXT ("no error reported"))); + if (ACE::debug ()) + { + ACE_TCHAR *errmsg = this->dll_.error (); + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("ACE (%P|%t) LN::open_dll - Failed to open %s: %s\n"), + this->pathname (), + errmsg ? errmsg : ACE_TEXT ("no error reported"))); + } #endif /* ACE_NLOGGING */ return -1; @@ -521,12 +529,15 @@ ACE_Object_Node::symbol (ACE_Service_Gestalt *, ++yyerrno; #ifndef ACE_NLOGGING - ACE_TCHAR *errmsg = this->dll_.error (); - ACE_ERROR ((LM_ERROR, - ACE_TEXT ("ACE (%P|%t) DLL::symbol -") - ACE_TEXT (" Failed for object %s: %s\n"), - object_name, - errmsg ? errmsg : ACE_TEXT ("no error reported"))); + if (ACE::debug ()) + { + ACE_TCHAR *errmsg = this->dll_.error (); + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("ACE (%P|%t) DLL::symbol -") + ACE_TEXT (" Failed for object %s: %s\n"), + object_name, + errmsg ? errmsg : ACE_TEXT ("no error reported"))); + } #endif /* ACE_NLOGGING */ return 0; @@ -647,12 +658,15 @@ ACE_Function_Node::symbol (ACE_Service_Gestalt *, ++yyerrno; #ifndef ACE_NLOGGING - ACE_TCHAR * const errmsg = this->dll_.error (); - ACE_ERROR ((LM_ERROR, - ACE_TEXT ("DLL::symbol failed for function %s: ") - ACE_TEXT ("%s\n"), - function_name, - errmsg ? errmsg : ACE_TEXT ("no error reported"))); + if (ACE::debug ()) + { + ACE_TCHAR * const errmsg = this->dll_.error (); + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("DLL::symbol failed for function %s: ") + ACE_TEXT ("%s\n"), + function_name, + errmsg ? errmsg : ACE_TEXT ("no error reported"))); + } #endif /* ACE_NLOGGING */ return 0; @@ -673,10 +687,13 @@ ACE_Function_Node::symbol (ACE_Service_Gestalt *, if (this->symbol_ == 0) { ++yyerrno; - ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("%p\n"), - this->function_name_), - 0); + if (ACE::debug ()) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("%p\n"), + this->function_name_)); + } + return 0; } } return this->symbol_; @@ -766,11 +783,14 @@ ACE_Static_Function_Node::symbol (ACE_Service_Gestalt *config, if (config->find_static_svc_descriptor (this->function_name_, &ssd) == -1) { ++yyerrno; - ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("(%P|%t) No static service ") - ACE_TEXT ("registered for function %s\n"), - this->function_name_), - 0); + if (ACE::debug ()) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("(%P|%t) No static service ") + ACE_TEXT ("registered for function %s\n"), + this->function_name_)); + } + return 0; } if (ssd->alloc_ == 0) @@ -781,11 +801,14 @@ ACE_Static_Function_Node::symbol (ACE_Service_Gestalt *config, { ++yyerrno; - ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("(%P|%t) No static service factory ") - ACE_TEXT ("function registered for function %s\n"), - this->function_name_), - 0); + if (ACE::debug ()) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("(%P|%t) No static service factory ") + ACE_TEXT ("function registered for function %s\n"), + this->function_name_)); + } + return 0; } } @@ -795,10 +818,13 @@ ACE_Static_Function_Node::symbol (ACE_Service_Gestalt *config, if (this->symbol_ == 0) { ++yyerrno; - ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("%p\n"), - this->function_name_), - 0); + if (ACE::debug ()) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("%p\n"), + this->function_name_)); + } + return 0; } return this->symbol_; @@ -834,7 +860,7 @@ ACE_Service_Type_Factory::make_service_type (ACE_Service_Gestalt *cfg) const { ACE_TRACE ("ACE_Service_Type_Factory::make_service_type"); - u_int flags = ACE_Service_Type::DELETE_THIS + u_int const flags = ACE_Service_Type::DELETE_THIS | (this->location_->dispose () == 0 ? 0 : ACE_Service_Type::DELETE_OBJ); int yyerrno = 0; @@ -864,10 +890,13 @@ ACE_Service_Type_Factory::make_service_type (ACE_Service_Gestalt *cfg) const } #ifndef ACE_NLOGGING - ACE_ERROR ((LM_ERROR, - ACE_TEXT ("ACE (%P|%t) Unable to create ") - ACE_TEXT ("service object for %s\n"), - this->name ())); + if (ACE::debug ()) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("ACE (%P|%t) Unable to create ") + ACE_TEXT ("service object for %s\n"), + this->name ())); + } #endif ++yyerrno; return 0; diff --git a/ACE/ace/Pipe.cpp b/ACE/ace/Pipe.cpp index aa87ab740eb..7e187f285a0 100644 --- a/ACE/ace/Pipe.cpp +++ b/ACE/ace/Pipe.cpp @@ -29,8 +29,7 @@ ACE_Pipe::dump (void) const ACE_TRACE ("ACE_Pipe::dump"); ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this)); ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("handles_[0] = %d"), this->handles_[0])); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nhandles_[1] = %d"), this->handles_[1])); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nhandles_[1] = %d\n"), this->handles_[1])); ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP)); #endif /* ACE_HAS_DUMP */ } @@ -97,9 +96,10 @@ ACE_Pipe::open (int buffer_size) } # endif /* ! ACE_LACKS_TCP_NODELAY */ -# if defined (ACE_LACKS_SOCKET_BUFSIZ) +# if defined (ACE_LACKS_SO_RCVBUF) && defined (ACE_LACKS_SO_SNDBUF) ACE_UNUSED_ARG (buffer_size); -# else /* ! ACE_LACKS_SOCKET_BUFSIZ */ +# endif +# if !defined (ACE_LACKS_SO_RCVBUF) if (reader.set_option (SOL_SOCKET, SO_RCVBUF, reinterpret_cast <void *> (&buffer_size), @@ -109,16 +109,18 @@ ACE_Pipe::open (int buffer_size) this->close (); return -1; } - else if (writer.set_option (SOL_SOCKET, - SO_SNDBUF, - reinterpret_cast <void *> (&buffer_size), - sizeof (buffer_size)) == -1 +# endif /* !ACE_LACKS_SO_RCVBUF */ +# if !defined (ACE_LACKS_SO_SNDBUF) + if (writer.set_option (SOL_SOCKET, + SO_SNDBUF, + reinterpret_cast <void *> (&buffer_size), + sizeof (buffer_size)) == -1 && errno != ENOTSUP) { this->close (); return -1; } -# endif /* ! ACE_LACKS_SOCKET_BUFSIZ */ +# endif /* !ACE_LACKS_SO_SNDBUF */ #elif defined (ACE_HAS_STREAM_PIPES) || defined (__QNX__) ACE_UNUSED_ARG (buffer_size); @@ -156,9 +158,10 @@ ACE_Pipe::open (int buffer_size) ACE_TEXT ("%p\n"), ACE_TEXT ("socketpair")), -1); -# if defined (ACE_LACKS_SOCKET_BUFSIZ) +# if defined (ACE_LACKS_SO_SNDBUF) && defined (ACE_LACKS_SO_RCVBUF) ACE_UNUSED_ARG (buffer_size); -# else /* ! ACE_LACKS_SOCKET_BUFSIZ */ +# endif +# if !defined (ACE_LACKS_SO_RCVBUF) if (ACE_OS::setsockopt (this->handles_[0], SOL_SOCKET, SO_RCVBUF, @@ -169,6 +172,8 @@ ACE_Pipe::open (int buffer_size) this->close (); return -1; } +# endif +# if !defined (ACE_LACKS_SO_SNDBUF) if (ACE_OS::setsockopt (this->handles_[1], SOL_SOCKET, SO_SNDBUF, @@ -179,7 +184,7 @@ ACE_Pipe::open (int buffer_size) this->close (); return -1; } -# endif /* ! ACE_LACKS_SOCKET_BUFSIZ */ +# endif /* ! ACE_LACKS_SO_SNDBUF */ # if defined (ACE_OPENVMS) && !defined (ACE_LACKS_TCP_NODELAY) int one = 1; // OpenVMS implements socketpair(AF_UNIX...) by returning AF_INET sockets. diff --git a/ACE/ace/Process.cpp b/ACE/ace/Process.cpp index 0640892ee4f..acd4b7c9ab5 100644 --- a/ACE/ace/Process.cpp +++ b/ACE/ace/Process.cpp @@ -17,6 +17,7 @@ #include "ace/OS_NS_errno.h" #include "ace/OS_NS_string.h" #include "ace/OS_NS_unistd.h" +#include "ace/OS_NS_fcntl.h" #include "ace/OS_Memory.h" #include "ace/Countdown_Time.h" #include "ace/Truncate.h" @@ -143,7 +144,7 @@ ACE_Process::spawn (ACE_Process_Options &options) options.command_line_buf(), options.get_process_attributes(), // must be NULL in CE options.get_thread_attributes(), // must be NULL in CE - options.handle_inheritence(), // must be false in CE + options.handle_inheritance(), // must be false in CE options.creation_flags(), // must be NULL in CE options.env_buf(), // environment variables, must be NULL in CE options.working_directory(), // must be NULL in CE @@ -175,7 +176,7 @@ ACE_Process::spawn (ACE_Process_Options &options) options.command_line_buf (), options.get_process_attributes (), options.get_thread_attributes (), - options.handle_inheritence (), + options.handle_inheritance (), flags, env_buf, // environment variables options.working_directory (), @@ -454,6 +455,16 @@ ACE_Process::spawn (ACE_Process_Options &options) ACE_OS::close (options.get_stdin ()); ACE_OS::close (options.get_stdout ()); ACE_OS::close (options.get_stderr ()); + if (!options.handle_inheritance ()) + { + // Set close-on-exec for all FDs except standard handles + for (int i = ACE::max_handles () - 1; i >= 0; i--) + { + if (i == ACE_STDIN || i == ACE_STDOUT || i == ACE_STDERR) + continue; + ACE_OS::fcntl (i, F_SETFD, FD_CLOEXEC); + } + } // If we must, set the working directory for the child // process. @@ -795,7 +806,6 @@ ACE_Process_Options::ACE_Process_Options (bool inherit_environment, #if !defined (ACE_HAS_WINCE) #if defined (ACE_WIN32) environment_inherited_ (0), - handle_inheritence_ (TRUE), process_attributes_ (0), thread_attributes_ (0), #else /* ACE_WIN32 */ @@ -807,6 +817,7 @@ ACE_Process_Options::ACE_Process_Options (bool inherit_environment, rgid_ ((uid_t) -1), egid_ ((uid_t) -1), #endif /* ACE_WIN32 */ + handle_inheritance_ (true), set_handles_called_ (0), environment_buf_index_ (0), environment_argv_index_ (0), @@ -825,6 +836,7 @@ ACE_Process_Options::ACE_Process_Options (bool inherit_environment, ACE_NEW (command_line_buf_, ACE_TCHAR[command_line_buf_len]); command_line_buf_[0] = '\0'; + process_name_[0] = '\0'; #if !defined (ACE_HAS_WINCE) working_directory_[0] = '\0'; @@ -834,7 +846,6 @@ ACE_Process_Options::ACE_Process_Options (bool inherit_environment, ACE_TCHAR *[max_env_args]); environment_buf_[0] = '\0'; environment_argv_[0] = 0; - process_name_[0] = '\0'; #if defined (ACE_WIN32) ACE_OS::memset ((void *) &this->startup_info_, 0, @@ -915,24 +926,6 @@ ACE_Process_Options::env_argv (void) #endif /* ACE_WIN32 */ -void -ACE_Process_Options::enable_unicode_environment (void) -{ - this->use_unicode_environment_ = true; -} - -void -ACE_Process_Options::disable_unicode_environment (void) -{ - this->use_unicode_environment_ = false; -} - -bool -ACE_Process_Options::use_unicode_environment (void) const -{ - return this->use_unicode_environment_; -} - int ACE_Process_Options::setenv (ACE_TCHAR *envp[]) { diff --git a/ACE/ace/Process.h b/ACE/ace/Process.h index 241f65839d3..0ab94c2f7a7 100644 --- a/ACE/ace/Process.h +++ b/ACE/ace/Process.h @@ -113,7 +113,7 @@ public: * Set a single environment variable, @a variable_name. Since * different platforms separate each environment variable * differently, you must call this method once for each variable. - * <format> can be any printf format string. So options->setenv + * @a format can be any printf format string. So options->setenv * ("FOO","one + two = %s", "three") will result in "FOO=one + two = * three". */ @@ -220,9 +220,9 @@ public: /// ACE_Process_Manager to manage groups of processes. pid_t setgroup (pid_t pgrp); - /// Allows disabling of handle inheritence, default is TRUE. - int handle_inheritence (void); - void handle_inheritence (int); + /// Allows disabling of handle inheritance, default is TRUE. + int handle_inheritance (void); + void handle_inheritance (int); /// Cause the specified handle to be passed to a child process /// when it runs a new program image. @@ -351,9 +351,6 @@ protected: ACE_TEXT_STARTUPINFO startup_info_; - /// Default TRUE. - BOOL handle_inheritence_; - /// Pointer to security_buf1_. LPSECURITY_ATTRIBUTES process_attributes_; @@ -379,6 +376,9 @@ protected: uid_t egid_; #endif /* ACE_WIN32 */ + /// Default true. + bool handle_inheritance_; + #if !defined (ACE_HAS_WINCE) /// Is 1 if stdhandles was called. int set_handles_called_; @@ -439,7 +439,7 @@ protected: ACE_TCHAR process_name_[MAXPATHLEN + 1]; /// Indicate if a Unicode environment should be used - bool use_unicode_environment_; + bool use_unicode_environment_; }; //class ACE_Process_Manager; diff --git a/ACE/ace/Process.inl b/ACE/ace/Process.inl index 228874778ce..e77db92f5bc 100644 --- a/ACE/ace/Process.inl +++ b/ACE/ace/Process.inl @@ -10,6 +10,24 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL +ACE_INLINE void +ACE_Process_Options::enable_unicode_environment (void) +{ + this->use_unicode_environment_ = true; +} + +ACE_INLINE void +ACE_Process_Options::disable_unicode_environment (void) +{ + this->use_unicode_environment_ = false; +} + +ACE_INLINE bool +ACE_Process_Options::use_unicode_environment (void) const +{ + return this->use_unicode_environment_; +} + #if defined (ACE_WIN32) ACE_INLINE PROCESS_INFORMATION @@ -129,24 +147,15 @@ ACE_Process_Options::setgroup (pid_t pgrp) } ACE_INLINE int -ACE_Process_Options::handle_inheritence (void) +ACE_Process_Options::handle_inheritance (void) { -#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE) - return handle_inheritence_; -#else - ACE_NOTSUP_RETURN (0); // This is a benign error. -#endif /* ACE_WIN32 && ! ACE_HAS_WINCE */ + return handle_inheritance_; } ACE_INLINE void -ACE_Process_Options::handle_inheritence (int hi) +ACE_Process_Options::handle_inheritance (int hi) { -#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE) - handle_inheritence_ = hi; -#else - ACE_UNUSED_ARG (hi); - ACE_NOTSUP; -#endif /* !ACE_HAS_WINCE */ + handle_inheritance_ = hi; } ACE_INLINE int diff --git a/ACE/ace/Process_Manager.cpp b/ACE/ace/Process_Manager.cpp index 369584cf4b4..f7e6b7897b0 100644 --- a/ACE/ace/Process_Manager.cpp +++ b/ACE/ace/Process_Manager.cpp @@ -19,6 +19,7 @@ #include "ace/OS_NS_signal.h" #include "ace/OS_NS_unistd.h" #include "ace/OS_NS_sys_time.h" +#include "ace/os_include/os_typeinfo.h" #include "ace/Truncate.h" ACE_RCSID (ace, @@ -131,11 +132,13 @@ ACE_Process_Manager::instance (void) #if defined ACE_HAS_SIG_C_FUNC ACE_Object_Manager::at_exit (ACE_Process_Manager::instance_, ACE_Process_Manager_cleanup, - 0); + 0, + typeid (*ACE_Process_Manager::instance_).name ()); #else ACE_Object_Manager::at_exit (ACE_Process_Manager::instance_, ACE_Process_Manager::cleanup, - 0); + 0, + typeid (*ACE_Process_Manager::instance_).name ()); #endif /* ACE_HAS_SIG_C_FUNC */ } @@ -162,11 +165,13 @@ ACE_Process_Manager::instance (ACE_Process_Manager *tm) #if defined ACE_HAS_SIG_C_FUNC ACE_Object_Manager::at_exit (ACE_Process_Manager::instance_, ACE_Process_Manager_cleanup, - 0); + 0, + typeid (*ACE_Process_Manager::instance_).name ()); #else ACE_Object_Manager::at_exit (ACE_Process_Manager::instance_, ACE_Process_Manager::cleanup, - 0); + 0, + typeid (*ACE_Process_Manager::instance_).name ()); #endif /* ACE_HAS_SIG_C_FUNC */ ACE_Process_Manager::instance_ = tm; @@ -427,7 +432,7 @@ ACE_Process_Manager::spawn (ACE_Process_Options &options, ACE_Managed_Process, ACE_INVALID_PID); - pid_t const pid = spawn (process, options, event_handler); + pid_t const pid = this->spawn (process, options, event_handler); if (pid == ACE_INVALID_PID || pid == 0) delete process; @@ -686,7 +691,7 @@ ACE_Process_Manager::find_proc (pid_t pid) { ACE_TRACE ("ACE_Process_Manager::find_proc"); - for (size_t i = 0; i < this->current_count_; ++i) + for (size_t i = 0; i < this->current_count_; ++i) { if (pid == this->process_table_[i].process_->getpid ()) { @@ -841,7 +846,7 @@ ACE_Process_Manager::wait (pid_t pid, // WAIT_OBJECT_0 is a pointless comparison because // WAIT_OBJECT_0 is zero and DWORD is unsigned long, so this // test is skipped for Green Hills. Same for mingw. -# if defined (ghs) || defined (__MINGW32__) || (defined (_MSC_VER) && _MSC_VER >= 1300) +# if defined (ghs) || defined (__MINGW32__) || defined (_MSC_VER) ACE_ASSERT (result < WAIT_OBJECT_0 + this->current_count_); # else ACE_ASSERT (result >= WAIT_OBJECT_0 diff --git a/ACE/ace/QoS/QoS_Session_Impl.cpp b/ACE/ace/QoS/QoS_Session_Impl.cpp index e46b6e4422b..d7bd3f2523a 100644 --- a/ACE/ace/QoS/QoS_Session_Impl.cpp +++ b/ACE/ace/QoS/QoS_Session_Impl.cpp @@ -346,7 +346,7 @@ ACE_RAPI_Session::sending_qos (const ACE_QoS &ace_qos) -1); else ACE_DEBUG ((LM_DEBUG, - "rapi_sender () call succeeds with PATH Tear! \n")); + "rapi_sender () call succeeds with PATH Tear!\n")); return 0; } @@ -421,7 +421,7 @@ ACE_RAPI_Session::sending_qos (const ACE_QoS &ace_qos) -1); else ACE_DEBUG ((LM_DEBUG, - "rapi_sender () call succeeds ! \n")); + "rapi_sender () call succeeds !\n")); return 0; } @@ -456,7 +456,7 @@ ACE_RAPI_Session::receiving_qos (const ACE_QoS &ace_qos) -1); else ACE_DEBUG ((LM_DEBUG, - "rapi_reserve () for RESV Tear call succeeds \n")); + "rapi_reserve () for RESV Tear call succeeds\n")); return 0; } @@ -524,7 +524,7 @@ ACE_RAPI_Session::receiving_qos (const ACE_QoS &ace_qos) -1); else ACE_DEBUG ((LM_DEBUG, - "rapi_reserve () call succeeds \n")); + "rapi_reserve () call succeeds\n")); return 0; } @@ -689,7 +689,7 @@ ACE_GQoS_Session::qos (ACE_SOCK *socket, -1); else ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("Setting QoS with ACE_OS::ioctl () succeeds \n"))); + ACE_TEXT ("Setting QoS with ACE_OS::ioctl () succeeds\n"))); return 0; } diff --git a/ACE/ace/QoS/qos.mpc b/ACE/ace/QoS/qos.mpc index f8f19077285..5e9dc059ac8 100644 --- a/ACE/ace/QoS/qos.mpc +++ b/ACE/ace/QoS/qos.mpc @@ -7,7 +7,7 @@ project(QoS) : acelib, ace_output, install { dynamicflags = ACE_QoS_BUILD_DLL macros += ACE_HAS_QOS - specific(bmake, nmake, em3, vc6, vc7, vc71, vc8, vc9) { + specific(bmake, nmake, em3, vc6, vc7, vc71, vc8, vc9, vc10) { macros += ACE_HAS_WINSOCK2_GQOS } diff --git a/ACE/ace/RW_Mutex.cpp b/ACE/ace/RW_Mutex.cpp index bfeac13c30b..319158da641 100644 --- a/ACE/ace/RW_Mutex.cpp +++ b/ACE/ace/RW_Mutex.cpp @@ -35,7 +35,7 @@ ACE_RW_Mutex::dump (void) const } ACE_RW_Mutex::ACE_RW_Mutex (int type, const ACE_TCHAR *name, void *arg) - : removed_ (0) + : removed_ (false) { // ACE_TRACE ("ACE_RW_Mutex::ACE_RW_Mutex"); if (ACE_OS::rwlock_init (&this->lock_, type, name, arg) != 0) diff --git a/ACE/ace/RW_Mutex.h b/ACE/ace/RW_Mutex.h index 1bc6b258d2b..1abed623c5f 100644 --- a/ACE/ace/RW_Mutex.h +++ b/ACE/ace/RW_Mutex.h @@ -120,7 +120,7 @@ protected: /// destructor. This flag isn't protected by a lock, so make sure /// that you don't have multiple threads simultaneously calling /// <remove> on the same object, which is a bad idea anyway... - int removed_; + bool removed_; private: // = Prevent assignment and initialization. diff --git a/ACE/ace/RW_Mutex.inl b/ACE/ace/RW_Mutex.inl index 47b95a3bb94..947bb409744 100644 --- a/ACE/ace/RW_Mutex.inl +++ b/ACE/ace/RW_Mutex.inl @@ -16,9 +16,9 @@ ACE_RW_Mutex::remove (void) { // ACE_TRACE ("ACE_RW_Mutex::remove"); int result = 0; - if (this->removed_ == 0) + if (!this->removed_) { - this->removed_ = 1; + this->removed_ = true; result = ACE_OS::rwlock_destroy (&this->lock_); } return result; diff --git a/ACE/ace/Reactor.h b/ACE/ace/Reactor.h index 423c736bbbb..a791a65227d 100644 --- a/ACE/ace/Reactor.h +++ b/ACE/ace/Reactor.h @@ -380,7 +380,7 @@ public: * Shorthand for calling * register_handler(ACE_HANDLE,ACE_Event_Handler*,ACE_Reactor_Mask), * multiple times for the same @a event_handler and @a masks but - * different <handles>. + * different @a handles. */ int register_handler (const ACE_Handle_Set &handles, ACE_Event_Handler *event_handler, @@ -524,7 +524,7 @@ public: * Resume @a handles. * * Shorthand for calling resume_handler(ACE_HANDLE) with multiple - * <handles>. + * @a handles. */ int resume_handler (const ACE_Handle_Set &handles); diff --git a/ACE/ace/Reactor_Impl.h b/ACE/ace/Reactor_Impl.h index feddde8ad51..18a82034e3a 100644 --- a/ACE/ace/Reactor_Impl.h +++ b/ACE/ace/Reactor_Impl.h @@ -91,7 +91,7 @@ public: ACE_Notification_Buffer &buffer) = 0; /** * Set the maximum number of times that the <handle_input> method - * will iterate and dispatch the <ACE_Event_Handlers> that are + * will iterate and dispatch the ACE_Event_Handlers that are * passed in via the notify queue before breaking out of the event * loop. By default, this is set to -1, which means "iterate until * the queue is empty." Setting this to a value like "1 or 2" will @@ -102,7 +102,7 @@ public: /** * Get the maximum number of times that the <handle_input> method - * will iterate and dispatch the <ACE_Event_Handlers> that are + * will iterate and dispatch the ACE_Event_Handlers that are * passed in via the notify queue before breaking out of its event * loop. */ @@ -263,15 +263,15 @@ public: ACE_Event_Handler *event_handler, ACE_Reactor_Mask mask) = 0; - /// Register @a event_handler with all the <handles> in the <Handle_Set>. + /// Register @a event_handler with all the @a handles in the <Handle_Set>. virtual int register_handler (const ACE_Handle_Set &handles, ACE_Event_Handler *event_handler, ACE_Reactor_Mask mask) = 0; /** - * Register <new_sh> to handle the signal @a signum using the - * <new_disp>. Returns the <old_sh> that was previously registered - * (if any), along with the <old_disp> of the signal handler. + * Register @a new_sh to handle the signal @a signum using the + * @a new_disp. Returns the @a old_sh that was previously registered + * (if any), along with the @a old_disp of the signal handler. */ virtual int register_handler (int signum, ACE_Event_Handler *new_sh, @@ -279,8 +279,8 @@ public: ACE_Event_Handler **old_sh = 0, ACE_Sig_Action *old_disp = 0) = 0; - /// Registers <new_sh> to handle a set of signals <sigset> using the - /// <new_disp>. + /// Registers @a new_sh to handle a set of signals @a sigset using the + /// @a new_disp. virtual int register_handler (const ACE_Sig_Set &sigset, ACE_Event_Handler *new_sh, ACE_Sig_Action *new_disp = 0) = 0; @@ -303,7 +303,7 @@ public: ACE_Reactor_Mask mask) = 0; /** - * Removes all handles in <handle_set>. If @a mask == + * Removes all handles in @a handle_set. If @a mask == * ACE_Event_Handler::DONT_CALL then the <handle_close> method of * the associated <event_handler>s is not invoked. */ @@ -321,7 +321,7 @@ public: ACE_Sig_Action *old_disp = 0, int sigkey = -1) = 0; - /// Calls <remove_handler> for every signal in <sigset>. + /// Calls <remove_handler> for every signal in @a sigset. virtual int remove_handler (const ACE_Sig_Set &sigset) = 0; // = Suspend and resume Handlers. @@ -333,7 +333,7 @@ public: /// Suspend @a handle temporarily. virtual int suspend_handler (ACE_HANDLE handle) = 0; - /// Suspend all <handles> in handle set temporarily. + /// Suspend all @a handles in handle set temporarily. virtual int suspend_handler (const ACE_Handle_Set &handles) = 0; /// Suspend all <handles> temporarily. @@ -346,7 +346,7 @@ public: /// Resume @a handle. virtual int resume_handler (ACE_HANDLE handle) = 0; - /// Resume all <handles> in handle set. + /// Resume all @a handles in handle set. virtual int resume_handler (const ACE_Handle_Set &handles) = 0; /// Resume all <handles>. @@ -427,7 +427,7 @@ public: virtual int schedule_wakeup (ACE_HANDLE handle, ACE_Reactor_Mask masks_to_be_added) = 0; - /// Clear @a masks_to_be_cleared from the <event_handler>'s entry. + /// Clear @a masks_to_be_cleared from the @a event_handler's entry. virtual int cancel_wakeup (ACE_Event_Handler *event_handler, ACE_Reactor_Mask masks_to_be_cleared) = 0; @@ -449,7 +449,7 @@ public: /** * Set the maximum number of times that ACE_Reactor_Impl will - * iterate and dispatch the <ACE_Event_Handlers> that are passed in + * iterate and dispatch the ACE_Event_Handlers that are passed in * via the notify queue before breaking out of its * <ACE_Message_Queue::dequeue> loop. By default, this is set to * -1, which means "iterate until the queue is empty." Setting this @@ -461,7 +461,7 @@ public: /** * Get the maximum number of times that the ACE_Reactor_Impl will - * iterate and dispatch the <ACE_Event_Handlers> that are passed in + * iterate and dispatch the ACE_Event_Handlers that are passed in * via the notify queue before breaking out of its * <ACE_Message_Queue::dequeue> loop. */ @@ -512,7 +512,7 @@ public: /// Wake up all threads in waiting in the event loop virtual void wakeup_all_threads (void) = 0; - /// Transfers ownership of Reactor_Impl to the <new_owner>. + /// Transfers ownership of Reactor_Impl to the @a new_owner. virtual int owner (ACE_thread_t new_owner, ACE_thread_t *old_owner = 0) = 0; /// Return the ID of the "owner" thread. diff --git a/ACE/ace/Registry_Name_Space.cpp b/ACE/ace/Registry_Name_Space.cpp index c2dd3618887..bca6bd1ed39 100644 --- a/ACE/ace/Registry_Name_Space.cpp +++ b/ACE/ace/Registry_Name_Space.cpp @@ -254,7 +254,10 @@ ACE_Registry_Name_Space::list_name_entries (ACE_BINDING_SET &set, value, type); if (result != 0) - ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("%p\n"), ACE_TEXT ("ACE_Registry::Naming_Context::resolve")), result); + ACE_ERROR_RETURN ((LM_ERROR, + ACE_TEXT ("%p\n"), + ACE_TEXT ("ACE_Registry::Naming_Context::resolve")), + result); // Complete binding ACE_Name_Binding binding (key, value, type); diff --git a/ACE/ace/Remote_Tokens.cpp b/ACE/ace/Remote_Tokens.cpp index ce60205a77a..6e998f6c1f3 100644 --- a/ACE/ace/Remote_Tokens.cpp +++ b/ACE/ace/Remote_Tokens.cpp @@ -157,12 +157,16 @@ ACE_Remote_Token_Proxy::request_reply (ACE_Token_Request &request, ACE_SOCK_Stream *peer = ACE_Token_Connections::instance ()->get_connection (); if (peer == 0) - ACE_ERROR_RETURN ((LM_ERROR, "(%P|%t) %p\n", "BIG PROBLEMS with get_connection"), -1); + ACE_ERROR_RETURN ((LM_ERROR, + ACE_TEXT("(%P|%t) %p\n"), + ACE_TEXT("BIG PROBLEMS with get_connection")), -1); // Transmit request via a blocking send. if (peer->send_n (buffer, length) != length) - ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("%p\n"), ACE_TEXT ("send_n failed")), -1); + ACE_ERROR_RETURN ((LM_ERROR, + ACE_TEXT ("%p\n"), + ACE_TEXT ("send_n failed")), -1); else { ACE_Token_Reply reply; diff --git a/ACE/ace/Reverse_Lock_T.h b/ACE/ace/Reverse_Lock_T.h index 98b39ef561e..348adbf7686 100644 --- a/ACE/ace/Reverse_Lock_T.h +++ b/ACE/ace/Reverse_Lock_T.h @@ -77,7 +77,7 @@ public: // = Initialization/Finalization methods. - /// Constructor. All locking requests will be forwarded to <lock>. + /// Constructor. All locking requests will be forwarded to @a lock. ACE_Reverse_Lock (ACE_LOCKING_MECHANISM &lock, ACE_Acquire_Method::METHOD_TYPE acquire_method = ACE_Acquire_Method::ACE_REGULAR); diff --git a/ACE/ace/SOCK_Connector.cpp b/ACE/ace/SOCK_Connector.cpp index 2dda434d258..0d737ef7e34 100644 --- a/ACE/ace/SOCK_Connector.cpp +++ b/ACE/ace/SOCK_Connector.cpp @@ -97,8 +97,7 @@ ACE_SOCK_Connector::shared_connect_start (ACE_SOCK_Stream &new_stream, } // Enable non-blocking, if required. - if (timeout != 0 - && new_stream.enable (ACE_NONBLOCK) == -1) + if (timeout != 0 && new_stream.enable (ACE_NONBLOCK) == -1) return -1; else return 0; @@ -119,8 +118,7 @@ ACE_SOCK_Connector::shared_connect_finish (ACE_SOCK_Stream &new_stream, if (error == EINPROGRESS || error == EWOULDBLOCK) { // This expression checks if we were polling. - if (timeout->sec () == 0 - && timeout->usec () == 0) + if (*timeout == ACE_Time_Value::zero) { #if defined(ACE_WIN32) // In order to detect when the socket that has been @@ -164,10 +162,18 @@ ACE_SOCK_Connector::shared_connect_finish (ACE_SOCK_Stream &new_stream, // EISCONN is treated specially since this routine may be used to // check if we are already connected. if (result != -1 || error == EISCONN) - // Start out with non-blocking disabled on the <new_stream>. - new_stream.disable (ACE_NONBLOCK); + { + // Start out with non-blocking disabled on the new_stream. + result = new_stream.disable (ACE_NONBLOCK); + if (result == -1) + { + new_stream.close (); + } + } else if (!(error == EWOULDBLOCK || error == ETIMEDOUT)) - new_stream.close (); + { + new_stream.close (); + } return result; } diff --git a/ACE/ace/SOCK_Dgram.cpp b/ACE/ace/SOCK_Dgram.cpp index 2a76eafd02b..28acd86b0b4 100644 --- a/ACE/ace/SOCK_Dgram.cpp +++ b/ACE/ace/SOCK_Dgram.cpp @@ -60,13 +60,12 @@ ACE_SOCK_Dgram::recv (iovec *io_vec, // Check the status of the current socket to make sure there's data // to recv (or time out). - int select_width; # if defined (ACE_WIN32) // This arg is ignored on Windows and causes pointer truncation // warnings on 64-bit compiles. - select_width = 0; + int select_width = 0; # else - select_width = int (this->get_handle ()) + 1; + int select_width = int (this->get_handle ()) + 1; # endif /* ACE_WIN32 */ switch (ACE_OS::select (select_width, handle_set, @@ -459,13 +458,12 @@ ACE_SOCK_Dgram::recv (void *buf, handle_set.set_bit (this->get_handle ()); // Check the status of the current socket. - int select_width; #if defined (ACE_WIN32) // This arg is ignored on Windows and causes pointer truncation // warnings on 64-bit compiles. - select_width = 0; + int select_width = 0; #else - select_width = int (this->get_handle ()) + 1; + int select_width = int (this->get_handle ()) + 1; #endif /* ACE_WIN32 */ switch (ACE_OS::select (select_width, handle_set, @@ -498,13 +496,12 @@ ACE_SOCK_Dgram::send (const void *buf, handle_set.set_bit (this->get_handle ()); // Check the status of the current socket. - int select_width; #if defined (ACE_WIN32) // This arg is ignored on Windows and causes pointer truncation // warnings on 64-bit compiles. - select_width = 0; + int select_width = 0; #else - select_width = int (this->get_handle ()) + 1; + int select_width = int (this->get_handle ()) + 1; #endif /* ACE_WIN32 */ switch (ACE_OS::select (select_width, 0, diff --git a/ACE/ace/SOCK_Dgram_Bcast.cpp b/ACE/ace/SOCK_Dgram_Bcast.cpp index b2a1f2e9204..d8fac47ec9d 100644 --- a/ACE/ace/SOCK_Dgram_Bcast.cpp +++ b/ACE/ace/SOCK_Dgram_Bcast.cpp @@ -117,8 +117,8 @@ ACE_SOCK_Dgram_Bcast::mk_broadcast (const ACE_TCHAR *host_name) SO_BROADCAST, (char *) &one, sizeof one) == -1) - ACE_ERROR_RETURN ((LM_ERROR, "%p\n", - "ACE_SOCK_Dgram_Bcast::mk_broadcast: setsockopt failed"), + ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT("%p\n"), + ACE_TEXT("ACE_SOCK_Dgram_Bcast::mk_broadcast: setsockopt failed")), -1); #if !defined (ACE_WIN32) && !defined(__INTERIX) @@ -135,8 +135,8 @@ ACE_SOCK_Dgram_Bcast::mk_broadcast (const ACE_TCHAR *host_name) if (ACE_OS::ioctl (s, SIOCGIFCONF, (char *) &ifc) == -1) - ACE_ERROR_RETURN ((LM_ERROR, "%p\n", - "ACE_SOCK_Dgram_Bcast::mk_broadcast: ioctl (get interface configuration)"), + ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT("%p\n"), + ACE_TEXT("ACE_SOCK_Dgram_Bcast::mk_broadcast: ioctl (get interface configuration)")), ACE_INVALID_HANDLE); struct ifreq *ifr = ifc.ifc_req; @@ -213,8 +213,8 @@ ACE_SOCK_Dgram_Bcast::mk_broadcast (const ACE_TCHAR *host_name) if (ifr->ifr_addr.sa_family != 0 || ACE::debug ()) ACE_DEBUG ((LM_DEBUG, - "warning %p: sa_family: %d\n", - "ACE_SOCK_Dgram_Bcast::mk_broadcast: Not AF_INET", + ACE_TEXT("warning %p: sa_family: %d\n"), + ACE_TEXT("ACE_SOCK_Dgram_Bcast::mk_broadcast: Not AF_INET"), ifr->ifr_addr.sa_family)); continue; } @@ -226,17 +226,17 @@ ACE_SOCK_Dgram_Bcast::mk_broadcast (const ACE_TCHAR *host_name) SIOCGIFFLAGS, (char *) &flags) == -1) { - ACE_ERROR ((LM_ERROR, "%p [%s]\n", - "ACE_SOCK_Dgram_Bcast::mk_broadcast: ioctl (get interface flags)", - flags.ifr_name)); + ACE_ERROR ((LM_ERROR, ACE_TEXT("%p [%s]\n"), + ACE_TEXT("ACE_SOCK_Dgram_Bcast::mk_broadcast: ioctl (get interface flags)"), + flags.ifr_name)); continue; } if (ACE_BIT_ENABLED (flags.ifr_flags, IFF_UP) == 0) { - ACE_ERROR ((LM_ERROR, "%p [%s]\n", - "ACE_SOCK_Dgram_Bcast::mk_broadcast: Network interface is not up", + ACE_ERROR ((LM_ERROR, ACE_TEXT("%p [%s]\n"), + ACE_TEXT("ACE_SOCK_Dgram_Bcast::mk_broadcast: Network interface is not up"), flags.ifr_name)); continue; } @@ -251,8 +251,8 @@ ACE_SOCK_Dgram_Bcast::mk_broadcast (const ACE_TCHAR *host_name) if (ACE_OS::ioctl (s, SIOCGIFBRDADDR, (char *) &if_req) == -1) - ACE_ERROR ((LM_ERROR, "%p [%s]\n", - "ACE_SOCK_Dgram_Bcast::mk_broadcast: ioctl (get broadaddr)", + ACE_ERROR ((LM_ERROR, ACE_TEXT("%p [%s]\n"), + ACE_TEXT("ACE_SOCK_Dgram_Bcast::mk_broadcast: ioctl (get broadaddr)"), flags.ifr_name)); else { @@ -268,8 +268,8 @@ ACE_SOCK_Dgram_Bcast::mk_broadcast (const ACE_TCHAR *host_name) else { if (host_name != 0) - ACE_ERROR ((LM_ERROR, "%p [%s]\n", - "ACE_SOCK_Dgram_Bcast::mk_broadcast: Broadcast is not enable for this interface.", + ACE_ERROR ((LM_ERROR, ACE_TEXT("%p [%s]\n"), + ACE_TEXT("ACE_SOCK_Dgram_Bcast::mk_broadcast: Broadcast is not enable for this interface."), flags.ifr_name)); } } diff --git a/ACE/ace/SOCK_Dgram_Mcast.h b/ACE/ace/SOCK_Dgram_Mcast.h index a7e668b4be0..48f1610ad20 100644 --- a/ACE/ace/SOCK_Dgram_Mcast.h +++ b/ACE/ace/SOCK_Dgram_Mcast.h @@ -201,7 +201,7 @@ public: /** * This method is optional; if not explicitly invoked, it is invoked by * the first <subscribe>, using the subscribed address/port# and network - * interface paramters. + * interface parameters. * The <mcast_addr> parameter defines the default send address/port# and * also the port# and, if the OPT_BINDADDR_YES option is used, * the multicast address that is bound to this socket. diff --git a/ACE/ace/SOCK_IO.cpp b/ACE/ace/SOCK_IO.cpp index 18f52ad1efd..36a7d171456 100644 --- a/ACE/ace/SOCK_IO.cpp +++ b/ACE/ace/SOCK_IO.cpp @@ -44,13 +44,12 @@ ACE_SOCK_IO::recvv (iovec *io_vec, io_vec->iov_base = 0; // Check the status of the current socket. - int select_width; # if defined (ACE_WIN32) // This arg is ignored on Windows and causes pointer truncation // warnings on 64-bit compiles. - select_width = 0; + int select_width = 0; # else - select_width = int (this->get_handle ()) + 1; + int select_width = int (this->get_handle ()) + 1; # endif /* ACE_WIN32 */ switch (ACE_OS::select (select_width, handle_set, diff --git a/ACE/ace/SOCK_SEQPACK_Acceptor.h b/ACE/ace/SOCK_SEQPACK_Acceptor.h index 95234c36caa..54bbc223bf9 100644 --- a/ACE/ace/SOCK_SEQPACK_Acceptor.h +++ b/ACE/ace/SOCK_SEQPACK_Acceptor.h @@ -56,30 +56,29 @@ public: * @c SO_REUSEADDR to reuse this address. */ ACE_SOCK_SEQPACK_Acceptor (const ACE_Addr &local_sap, - int reuse_addr = 0, - int protocol_family = PF_UNSPEC, - int backlog = ACE_DEFAULT_BACKLOG, - int protocol = 132); + int reuse_addr = 0, + int protocol_family = PF_UNSPEC, + int backlog = ACE_DEFAULT_BACKLOG, + int protocol = 132); /// Multihomed version of same ACE_SOCK_SEQPACK_Acceptor (const ACE_Multihomed_INET_Addr &local_sap, - int reuse_addr = 0, - int protocol_family = PF_UNSPEC, - int backlog = ACE_DEFAULT_BACKLOG, - int protocol = 132); + int reuse_addr = 0, + int protocol_family = PF_UNSPEC, + int backlog = ACE_DEFAULT_BACKLOG, + int protocol = 132); /// Initialize a passive-mode QoS-enabled acceptor socket. Returns 0 /// on success and -1 on failure. ACE_SOCK_SEQPACK_Acceptor (const ACE_Addr &local_sap, - ACE_Protocol_Info *protocolinfo, - ACE_SOCK_GROUP g, - u_long flags, - int reuse_addr, - int protocol_family = PF_UNSPEC, - int backlog = ACE_DEFAULT_BACKLOG, - int protocol = 132); - + ACE_Protocol_Info *protocolinfo, + ACE_SOCK_GROUP g, + u_long flags, + int reuse_addr, + int protocol_family = PF_UNSPEC, + int backlog = ACE_DEFAULT_BACKLOG, + int protocol = 132); /** * Initialize a passive-mode BSD-style acceptor socket (no QoS). diff --git a/ACE/ace/SOCK_SEQPACK_Association.cpp b/ACE/ace/SOCK_SEQPACK_Association.cpp index 9a17e0ddb33..bce96750f20 100644 --- a/ACE/ace/SOCK_SEQPACK_Association.cpp +++ b/ACE/ace/SOCK_SEQPACK_Association.cpp @@ -96,7 +96,11 @@ ACE_SOCK_SEQPACK_Association::get_local_addrs (ACE_INET_Addr *addrs, size_t &siz int err = 0; size_t len = 0; +#ifndef ACE_HAS_VOID_PTR_SCTP_GETLADDRS err = sctp_getladdrs(this->get_handle(), 0, &laddrs); +#else + err = sctp_getladdrs(this->get_handle(), 0, reinterpret_cast<void**>(&laddrs)); +#endif /* ACE_HAS_VOID_PTR_SCTP_GETPADDRS */ if (err > 0) { len = err; @@ -230,7 +234,12 @@ ACE_SOCK_SEQPACK_Association::get_remote_addrs (ACE_INET_Addr *addrs, size_t &si int err = 0; size_t len = 0; +#ifndef ACE_HAS_VOID_PTR_SCTP_GETPADDRS err = sctp_getpaddrs(this->get_handle(), 0, &paddrs); +#else + err = sctp_getpaddrs(this->get_handle(), 0, reinterpret_cast<void**>(&paddrs)); +#endif /* ACE_HAS_VOID_PTR_SCTP_GETPADDRS */ + if (err > 0) { len = err; diff --git a/ACE/ace/SOCK_SEQPACK_Connector.cpp b/ACE/ace/SOCK_SEQPACK_Connector.cpp index 7027b460fe7..e56253b1b6f 100644 --- a/ACE/ace/SOCK_SEQPACK_Connector.cpp +++ b/ACE/ace/SOCK_SEQPACK_Connector.cpp @@ -243,8 +243,7 @@ ACE_SOCK_SEQPACK_Connector::shared_connect_finish (ACE_SOCK_SEQPACK_Association if (error == EINPROGRESS || error == EWOULDBLOCK) { // This expression checks if we were polling. - if (timeout->sec () == 0 - && timeout->usec () == 0) + if (*timeout == ACE_Time_Value::zero) error = EWOULDBLOCK; // Wait synchronously using timeout. else if (this->complete (new_association, diff --git a/ACE/ace/SPIPE_Stream.h b/ACE/ace/SPIPE_Stream.h index 9293224b7ed..b69c8f23bed 100644 --- a/ACE/ace/SPIPE_Stream.h +++ b/ACE/ace/SPIPE_Stream.h @@ -84,12 +84,12 @@ public: /// Recv bytes via STREAM pipes using "band" mode. ssize_t recv (void *buf, size_t len) const; - /// Send <cntl> and <data> via STREAM pipes. + /// Send @a cntl and @a data via STREAM pipes. ssize_t send (const ACE_Str_Buf *cntl, const ACE_Str_Buf *data, int flags = 0) const; - /// Recv <cntl> and <data> via STREAM pipes. + /// Recv @a cntl and @a data via STREAM pipes. ssize_t recv (ACE_Str_Buf *cntl, ACE_Str_Buf *data, int *flags) const; @@ -144,7 +144,7 @@ public: ssize_t sendv_n (const iovec iov[], int len) const; - /// Receive an <iovec> of size @a len to the stream. + /// Receive an <iovec> of size @a len from the stream. ssize_t recvv_n (iovec iov[], int len) const; diff --git a/ACE/ace/SSL/Makefile.am b/ACE/ace/SSL/Makefile.am index 135fa9b937b..3b244c2eab0 100644 --- a/ACE/ace/SSL/Makefile.am +++ b/ACE/ace/SSL/Makefile.am @@ -47,6 +47,7 @@ libACE_SSL_la_LIBADD = \ nobase_include_HEADERS = \ SSL_Asynch_BIO.h \ SSL_Asynch_Stream.h \ + SSL_Asynch_Stream.inl \ SSL_Context.h \ SSL_Context.inl \ SSL_Export.h \ diff --git a/ACE/ace/SSL/SSL_Asynch_Stream.cpp b/ACE/ace/SSL/SSL_Asynch_Stream.cpp index 216f6cfd962..d357c8c4f33 100644 --- a/ACE/ace/SSL/SSL_Asynch_Stream.cpp +++ b/ACE/ace/SSL/SSL_Asynch_Stream.cpp @@ -17,6 +17,10 @@ ACE_RCSID (ACE_SSL, #include "ace/Proactor.h" #include "ace/Truncate.h" +#if !defined(__ACE_INLINE__) +#include "SSL_Asynch_Stream.inl" +#endif /* __ACE_INLINE__ */ + #include <openssl/err.h> ACE_BEGIN_VERSIONED_NAMESPACE_DECL @@ -93,13 +97,13 @@ ACE_SSL_Asynch_Stream::ACE_SSL_Asynch_Stream ( ACE_SSL_Asynch_Stream::Stream_Type s_type, ACE_SSL_Context * context) : type_ (s_type), - handle_ (ACE_INVALID_HANDLE), proactor_ (0), ext_handler_ (0), ext_read_result_ (0), ext_write_result_(0), flags_ (0), ssl_ (0), + handshake_complete_(false), bio_ (0), bio_istream_ (), bio_inp_msg_ (), @@ -260,7 +264,7 @@ ACE_SSL_Asynch_Stream::open (ACE_Handler & handler, // Get a proactor for/from the user. this->proactor_ = this->get_proactor (proactor, handler); this->ext_handler_ = & handler; - this->handle_ = handle; + this->handle (handle); // Open internal input stream if (this->bio_istream_.open (*this, // real callbacks to this @@ -342,7 +346,7 @@ ACE_SSL_Asynch_Stream::read (ACE_Message_Block & message_block, ACE_NEW_RETURN (this->ext_read_result_, ACE_SSL_Asynch_Read_Stream_Result ( *this->ext_handler_, - this->handle_, + this->handle (), message_block, bytes_to_read, act, @@ -385,7 +389,7 @@ ACE_SSL_Asynch_Stream::write (ACE_Message_Block & message_block, ACE_NEW_RETURN (this->ext_write_result_, ACE_SSL_Asynch_Write_Stream_Result ( *this->ext_handler_, - this->handle_, + this->handle (), message_block, bytes_to_write, act, @@ -491,7 +495,18 @@ int ACE_SSL_Asynch_Stream::do_SSL_handshake (void) { if (SSL_is_init_finished (this->ssl_)) - return 1; + { + if (!handshake_complete_) + { + handshake_complete_ = true; + + if (!post_handshake_check ()) + { + return -1; + } + } + return 1; + } if (this->flags_ & SF_REQ_SHUTDOWN) return -1; @@ -541,6 +556,13 @@ ACE_SSL_Asynch_Stream::do_SSL_handshake (void) return 1; } + +bool +ACE_SSL_Asynch_Stream::post_handshake_check (void) +{ + return true; +} + // ************************************************************ // Perform SSL_read call if necessary and notify user // ************************************************************ @@ -768,7 +790,7 @@ ACE_SSL_Asynch_Stream::print_error (int err_ssl, const ACE_TCHAR * pText) { ACE_DEBUG ((LM_DEBUG, - "SSL-error:%d %s\n" , + ACE_TEXT("SSL-error:%d %s\n"), err_ssl, pText)); @@ -781,7 +803,7 @@ ACE_SSL_Asynch_Stream::print_error (int err_ssl, { ERR_error_string_n (lerr, buf, sizeof buf); - ACE_DEBUG ((LM_DEBUG, "%s\n", buf)); + ACE_DEBUG ((LM_DEBUG, "%C\n", buf)); } #endif /* OPENSSL_VERSION_NUMBER */ } diff --git a/ACE/ace/SSL/SSL_Asynch_Stream.h b/ACE/ace/SSL/SSL_Asynch_Stream.h index 671cca46c24..1957c023468 100644 --- a/ACE/ace/SSL/SSL_Asynch_Stream.h +++ b/ACE/ace/SSL/SSL_Asynch_Stream.h @@ -185,6 +185,9 @@ public: int close (void); + /// Return a pointer to the underlying SSL structure. + SSL *ssl (void) const; + /** * Initializes the factory with information which will be used with * each asynchronous call. @@ -295,6 +298,40 @@ protected: virtual void handle_wakeup (void); /** + * This method will be called after a successful SSL handshake indicating + * that the peer's certificate chain (if any) has been verified and the key + * exchange has completed. When a peer certificate is required, this + * method must be used to perform additional checks beyond the verification + * performed by OpenSSL. + * + * Check 1: + * + * SSL clients that require a peer certificate must specify SSL_VERIFY_PEER + * via ACE_SSL_Context::default_verify_mode. If the peer sends an invalid + * certificate, the SSL handshake will fail; however, if the peer does not + * send a certificate, the SSL handshake will complete successfully which + * may not be acceptable. In this case, you must override this method in a + * subclass and return false if the call to SSL_get_peer_certificate returns + * null. + * + * Check 2: + * + * An additional post handshake check that you should perform is to verify + * the certificate's FQDN against the host address you intended to connect + * to. This check will prevent an attacker from using a certificate signed + * by your CA to usurp your session. For further info on this check, see + * the post_connection_check method in Example 5-8 of 'Network Security with + * OpenSSL' by Viega, et. al. + * + * Return: + * + * false - Terminate the connection. Outstanding IO complete with ERR_CANCELED. + * + * true - Proceed with connection. The default implementation returns true. + */ + virtual bool post_handshake_check (void); + + /** * @name SSL State Machine */ //@{ @@ -342,9 +379,6 @@ protected: /// Stream Type ST_CLIENT/ST_SERVER Stream_Type type_; - /// The real file/socket handle - ACE_HANDLE handle_; - /// The proactor ACE_Proactor * proactor_; @@ -377,6 +411,9 @@ protected: /// The SSL session. SSL * ssl_; + /// Flag ensures that post_connection_check() is called at most one time. + bool handshake_complete_; + /// The BIO implementation BIO * bio_; @@ -417,6 +454,10 @@ protected: ACE_END_VERSIONED_NAMESPACE_DECL +#if defined(__ACE_INLINE__) +#include "SSL_Asynch_Stream.inl" +#endif /* __ACE_INLINE__ */ + #endif /* OPENSSL_VERSION_NUMBER > 0x0090581fL && (ACE_WIN32 || ACE_HAS_AIO_CALLS) */ diff --git a/ACE/ace/SSL/SSL_Asynch_Stream.inl b/ACE/ace/SSL/SSL_Asynch_Stream.inl new file mode 100644 index 00000000000..1fe5cc2ae9d --- /dev/null +++ b/ACE/ace/SSL/SSL_Asynch_Stream.inl @@ -0,0 +1,13 @@ +// -*- C++ -*- +// +// $Id$ + +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + +ACE_INLINE SSL * +ACE_SSL_Asynch_Stream::ssl (void) const +{ + return this->ssl_; +} + +ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ACE/ace/SSL/SSL_Context.cpp b/ACE/ace/SSL/SSL_Context.cpp index 42093e90c38..2d71688c3c2 100644 --- a/ACE/ace/SSL/SSL_Context.cpp +++ b/ACE/ace/SSL/SSL_Context.cpp @@ -112,6 +112,7 @@ ACE_SSL_Context::ACE_SSL_Context (void) : context_ (0), mode_ (-1), default_verify_mode_ (SSL_VERIFY_NONE), + default_verify_callback_ (0), have_ca_ (0) { ACE_SSL_Context::ssl_library_init (); @@ -131,7 +132,7 @@ ACE_SSL_Context::~ACE_SSL_Context (void) ACE_SSL_Context * ACE_SSL_Context::instance (void) { - return ACE_Singleton<ACE_SSL_Context, ACE_SYNCH_MUTEX>::instance (); + return ACE_Unmanaged_Singleton<ACE_SSL_Context, ACE_SYNCH_MUTEX>::instance (); } void @@ -181,15 +182,15 @@ ACE_SSL_Context::ssl_library_init (void) (void) this->egd_file (egd_socket_file); #endif /* OPENSSL_VERSION_NUMBER */ - const char *rand_file = - ACE_OS::getenv (ACE_SSL_RAND_FILE_ENV); + const char *rand_file = ACE_OS::getenv (ACE_SSL_RAND_FILE_ENV); if (rand_file != 0) - (void) this->seed_file (rand_file); + { + (void) this->seed_file (rand_file); + } // Initialize the mutexes that will be used by the SSL and // crypto library. - } ++ssl_library_init_count; @@ -205,6 +206,9 @@ ACE_SSL_Context::ssl_library_fini (void) --ssl_library_init_count; if (ssl_library_init_count == 0) { + // Explicitly close the singleton + ACE_Unmanaged_Singleton<ACE_SSL_Context, ACE_SYNCH_MUTEX>::close(); + ::ERR_free_strings (); ::EVP_cleanup (); @@ -305,16 +309,20 @@ ACE_SSL_Context::load_trusted_ca (const char* ca_file, { // Use the default environment settings. ca_file = ACE_OS::getenv (ACE_SSL_CERT_FILE_ENV); +#ifdef ACE_DEFAULT_SSL_CERT_FILE if (ca_file == 0) ca_file = ACE_DEFAULT_SSL_CERT_FILE; +#endif } if (ca_dir == 0 && use_env_defaults) { // Use the default environment settings. ca_dir = ACE_OS::getenv (ACE_SSL_CERT_DIR_ENV); +#ifdef ACE_DEFAULT_SSL_CERT_DIR if (ca_dir == 0) ca_dir = ACE_DEFAULT_SSL_CERT_DIR; +#endif } // NOTE: SSL_CTX_load_verify_locations() returns 0 on error. @@ -566,7 +574,12 @@ ACE_SSL_Context::report_error (unsigned long error_code) char error_string[256]; +// OpenSSL < 0.9.6a doesn't have ERR_error_string_n() function. +#if OPENSSL_VERSION_NUMBER >= 0x0090601fL + (void) ::ERR_error_string_n (error_code, error_string, sizeof error_string); +#else /* OPENSSL_VERSION_NUMBER >= 0x0090601fL */ (void) ::ERR_error_string (error_code, error_string); +#endif /* OPENSSL_VERSION_NUMBER >= 0x0090601fL */ ACE_ERROR ((LM_ERROR, ACE_TEXT ("ACE_SSL (%P|%t) error code: %u - %C\n"), diff --git a/ACE/ace/SSL/SSL_Context.h b/ACE/ace/SSL/SSL_Context.h index 1d7067fa204..575e5ca02bd 100644 --- a/ACE/ace/SSL/SSL_Context.h +++ b/ACE/ace/SSL/SSL_Context.h @@ -264,7 +264,6 @@ public: */ void set_verify_peer (int strict = 0, int once = 1, int depth = 0); - /// TODO: a implementation that will lookup the CTX table for the list /// of files and paths etc. /// Query the location of trusted certification authority @@ -281,6 +280,14 @@ public: int default_verify_mode (void) const; /** + * Set and query the default verify callback for this context, it is + * inherited by all the ACE_SSL objects created using the context. + * It can be overriden on a per-ACE_SSL object. + */ + void default_verify_callback (int (*callback) (int, X509_STORE_CTX *)); + int (*default_verify_callback(void) const) (int,X509_STORE_CTX *); + + /** * @name OpenSSL Random Number Generator Seed Related Methods * * These are methods that can be used to seed OpenSSL's @@ -354,7 +361,7 @@ private: /// Cache the mode so we can answer fast int mode_; - /// The private key, certificate, and Diffie-Hellman paramters files + /// The private key, certificate, and Diffie-Hellman parameters files ACE_SSL_Data_File private_key_; ACE_SSL_Data_File certificate_; ACE_SSL_Data_File dh_params_; @@ -362,6 +369,9 @@ private: /// The default verify mode. int default_verify_mode_; + /// The default verify callback. + int (*default_verify_callback_)(int, X509_STORE_CTX *); + /// count of successful CA load attempts int have_ca_; diff --git a/ACE/ace/SSL/SSL_Context.inl b/ACE/ace/SSL/SSL_Context.inl index 9962ad09bdc..8bb59b58b41 100644 --- a/ACE/ace/SSL/SSL_Context.inl +++ b/ACE/ace/SSL/SSL_Context.inl @@ -40,7 +40,8 @@ ACE_SSL_Context::check_context (void) this->set_mode (); } - ::SSL_CTX_set_verify (this->context_, this->default_verify_mode (), 0); + ::SSL_CTX_set_verify (this->context_, this->default_verify_mode (), + this->default_verify_callback ()); } ACE_INLINE SSL_CTX * @@ -98,6 +99,17 @@ ACE_SSL_Context::default_verify_mode (void) const return this->default_verify_mode_; } +ACE_INLINE void +ACE_SSL_Context::default_verify_callback (int (*callback) (int, X509_STORE_CTX*)) +{ + this->default_verify_callback_ = callback; +} + +ACE_INLINE int (*ACE_SSL_Context::default_verify_callback(void) const)(int,X509_STORE_CTX *) +{ + return this->default_verify_callback_; +} + ACE_INLINE int ACE_SSL_Context::get_mode (void) const { diff --git a/ACE/ace/SSL/sslconf.h b/ACE/ace/SSL/sslconf.h index f456558fce9..ffc545d61ae 100644 --- a/ACE/ace/SSL/sslconf.h +++ b/ACE/ace/SSL/sslconf.h @@ -19,19 +19,21 @@ #include /**/ "ace/config-all.h" #if !defined (ACE_DEFAULT_SSL_CERT_FILE) -# ifdef WIN32 -# define ACE_DEFAULT_SSL_CERT_FILE "cert.pem" -# else -# define ACE_DEFAULT_SSL_CERT_FILE "/etc/ssl/cert.pem" -# endif /* WIN32 */ +// Define a default CA certificate filename here if required e.g.: +// # ifdef WIN32 +// # define ACE_DEFAULT_SSL_CERT_FILE "cert.pem" +// # else +// # define ACE_DEFAULT_SSL_CERT_FILE "/etc/ssl/cert.pem" +// # endif /* WIN32 */ #endif /* ACE_DEFAULT_SSL_CERT_FILE */ #if !defined (ACE_DEFAULT_SSL_CERT_DIR) -# ifdef WIN32 -# define ACE_DEFAULT_SSL_CERT_DIR "certs" -# else -# define ACE_DEFAULT_SSL_CERT_DIR "/etc/ssl/certs" -# endif /* WIN32 */ +// Define a default CA certificate files directory here if required. e.g.: +// # ifdef WIN32 +// # define ACE_DEFAULT_SSL_CERT_DIR "certs" +// # else +// # define ACE_DEFAULT_SSL_CERT_DIR "/etc/ssl/certs" +// # endif /* WIN32 */ #endif /* ACE_DEFAULT_SSL_CERT_DIR */ #if !defined (ACE_SSL_CERT_FILE_ENV) diff --git a/ACE/ace/SString.cpp b/ACE/ace/SString.cpp index 6305bee14f8..5ba108655aa 100644 --- a/ACE/ace/SString.cpp +++ b/ACE/ace/SString.cpp @@ -2,9 +2,6 @@ #include "ace/Malloc_T.h" #include "ace/OS_Memory.h" -#if !defined (ACE_HAS_WINCE) -//# include "ace/Service_Config.h" -#endif /* !ACE_HAS_WINCE */ #include "ace/SString.h" #include "ace/Auto_Ptr.h" #include "ace/OS_NS_string.h" diff --git a/ACE/ace/SUN_Proactor.cpp b/ACE/ace/SUN_Proactor.cpp index 8b280045b97..1fd7ec23b48 100644 --- a/ACE/ace/SUN_Proactor.cpp +++ b/ACE/ace/SUN_Proactor.cpp @@ -112,8 +112,8 @@ ACE_SUN_Proactor::handle_events_i (ACE_Time_Value *delta) default: // EFAULT ACE_ERROR_RETURN ((LM_ERROR, - "%N:%l:(%P | %t)::%p \nNumAIO=%d\n", - "ACE_SUN_Proactor::handle_events: aiowait failed", + ACE_TEXT("%N:%l:(%P | %t)::%p \nNumAIO=%d\n"), + ACE_TEXT("ACE_SUN_Proactor::handle_events: aiowait failed"), num_started_aio_), -1); } @@ -202,9 +202,9 @@ ACE_SUN_Proactor::find_completed_aio (aio_result_t *result, transfer_count) == 0) { // should never be ACE_ERROR ((LM_ERROR, - "%N:%l:(%P | %t)::%p\n", - "ACE_SUN_Proactor::find_completed_aio:" - "should never be !!!\n")); + ACE_TEXT("%N:%l:(%P | %t)::%p\n"), + ACE_TEXT("ACE_SUN_Proactor::find_completed_aio:") + ACE_TEXT("should never be !!!\n"))); return 0; } diff --git a/ACE/ace/Sample_History.cpp b/ACE/ace/Sample_History.cpp index 9bd2ca47852..0cff6a7d624 100644 --- a/ACE/ace/Sample_History.cpp +++ b/ACE/ace/Sample_History.cpp @@ -46,7 +46,7 @@ ACE_Sample_History::dump_samples (const ACE_TCHAR *msg, #ifndef ACE_NLOGGING for (size_t i = 0; i != this->sample_count_; ++i) { - const ACE_UINT64 val = this->samples_[i] / scale_factor; + ACE_UINT64 const val = this->samples_[i] / scale_factor; ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("%s: ") ACE_SIZE_T_FORMAT_SPECIFIER diff --git a/ACE/ace/Sched_Params.cpp b/ACE/ace/Sched_Params.cpp index 9a699c773f9..7241cb14bde 100644 --- a/ACE/ace/Sched_Params.cpp +++ b/ACE/ace/Sched_Params.cpp @@ -115,10 +115,14 @@ ACE_Sched_Params::priority_min (const Policy policy, } } -#elif defined (ACE_HAS_WTHREADS) +#elif defined (ACE_HAS_WTHREADS) && !defined (ACE_HAS_WINCE) ACE_UNUSED_ARG (policy); ACE_UNUSED_ARG (scope); return THREAD_PRIORITY_IDLE; +#elif defined (ACE_HAS_WTHREADS) && defined (ACE_HAS_WINCE) + ACE_UNUSED_ARG (policy); + ACE_UNUSED_ARG (scope); + return 255; #elif defined (ACE_VXWORKS) ACE_UNUSED_ARG (policy); ACE_UNUSED_ARG (scope); @@ -219,10 +223,14 @@ ACE_Sched_Params::priority_max (const Policy policy, } } -#elif defined (ACE_HAS_WTHREADS) +#elif defined (ACE_HAS_WTHREADS) && !defined (ACE_HAS_WINCE) ACE_UNUSED_ARG (policy); ACE_UNUSED_ARG (scope); return THREAD_PRIORITY_TIME_CRITICAL; +#elif defined (ACE_HAS_WTHREADS) && defined (ACE_HAS_WINCE) + ACE_UNUSED_ARG (policy); + ACE_UNUSED_ARG (scope); + return 0; #elif defined (ACE_VXWORKS) ACE_UNUSED_ARG (policy); ACE_UNUSED_ARG (scope); @@ -243,7 +251,7 @@ ACE_Sched_Params::next_priority (const Policy policy, const int priority, const int scope) { -#if defined (ACE_HAS_WTHREADS) +#if defined (ACE_HAS_WTHREADS) && !defined (ACE_HAS_WINCE) ACE_UNUSED_ARG (policy); ACE_UNUSED_ARG (scope); switch (priority) @@ -271,10 +279,9 @@ ACE_Sched_Params::next_priority (const Policy policy, // including STHREADS, and PTHREADS int const max = priority_max (policy, scope); return priority < max ? priority + 1 : max; -#elif defined (ACE_VXWORKS) - return priority > priority_max (policy, scope) - ? priority - 1 - : priority_max (policy, scope); +#elif defined (ACE_VXWORKS) || defined (ACE_HAS_WINCE) + int const max = priority_max (policy, scope); + return priority > max ? priority - 1 : max; #else ACE_UNUSED_ARG (policy); ACE_UNUSED_ARG (scope); @@ -288,7 +295,7 @@ ACE_Sched_Params::previous_priority (const Policy policy, const int priority, const int scope) { -#if defined (ACE_HAS_WTHREADS) +#if defined (ACE_HAS_WTHREADS) && !defined (ACE_HAS_WINCE) ACE_UNUSED_ARG (policy); ACE_UNUSED_ARG (scope); switch (priority) @@ -315,12 +322,10 @@ ACE_Sched_Params::previous_priority (const Policy policy, defined (ACE_HAS_PTHREAD_SCHEDPARAM)) // including STHREADS and PTHREADS int const min = priority_min (policy, scope); - return priority > min ? priority - 1 : min; -#elif defined (ACE_VXWORKS) - return priority < priority_min (policy, scope) - ? priority + 1 - : priority_min (policy, scope); +#elif defined (ACE_VXWORKS) || defined (ACE_HAS_WINCE) + int const min = priority_min (policy, scope); + return priority < min ? priority + 1 : min; #else ACE_UNUSED_ARG (policy); ACE_UNUSED_ARG (scope); diff --git a/ACE/ace/Select_Reactor_Base.h b/ACE/ace/Select_Reactor_Base.h index b8f86fa7d32..eafb19b0b8c 100644 --- a/ACE/ace/Select_Reactor_Base.h +++ b/ACE/ace/Select_Reactor_Base.h @@ -570,7 +570,7 @@ protected: /** * True if state has changed during dispatching of - * <ACE_Event_Handlers>, else false. This is used to determine + * ACE_Event_Handlers, else false. This is used to determine * whether we need to make another trip through the * <Select_Reactor>'s <wait_for_multiple_events> loop. */ diff --git a/ACE/ace/Select_Reactor_T.cpp b/ACE/ace/Select_Reactor_T.cpp index 1eb5a17d79d..57f5f9f36bf 100644 --- a/ACE/ace/Select_Reactor_T.cpp +++ b/ACE/ace/Select_Reactor_T.cpp @@ -1493,13 +1493,12 @@ ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::check_handles (void) // variant since fstat always returns an error on socket FDs. rd_mask.set_bit (h); - int select_width; # if defined (ACE_WIN32) // This arg is ignored on Windows and causes pointer truncation // warnings on 64-bit compiles. - select_width = 0; + int select_width = 0; # else - select_width = int (h) + 1; + int select_width = int (h) + 1; # endif /* ACE_WIN32 */ if (ACE_OS::select (select_width, diff --git a/ACE/ace/Select_Reactor_T.h b/ACE/ace/Select_Reactor_T.h index 458f7ebac73..526db0fd9f6 100644 --- a/ACE/ace/Select_Reactor_T.h +++ b/ACE/ace/Select_Reactor_T.h @@ -279,7 +279,7 @@ public: ACE_Reactor_Mask); /** - * Removes all the @a mask bindings for handles in the <handle_set> + * Removes all the @a mask bindings for handles in the @a handle_set * bind of <Event_Handler>. If there are no more bindings for any * of these handlers then they are removed from the Select_Reactor. */ @@ -298,7 +298,7 @@ public: ACE_Sig_Action *old_disp = 0, int sigkey = -1); - /// Calls <remove_handler> for every signal in <sigset>. + /// Calls <remove_handler> for every signal in @a sigset. virtual int remove_handler (const ACE_Sig_Set &sigset); // = Suspend and resume Handlers. @@ -309,7 +309,7 @@ public: /// Temporarily suspend the <Event_Handler> associated with @a handle. virtual int suspend_handler (ACE_HANDLE handle); - /// Suspend all <handles> in handle set temporarily. + /// Suspend all @a handles in handle set temporarily. virtual int suspend_handler (const ACE_Handle_Set &handles); /// Suspend all the <Event_Handlers> in the Select_Reactor. @@ -323,7 +323,7 @@ public: /// @a handle. virtual int resume_handler (ACE_HANDLE handle); - /// Resume all <handles> in handle set. + /// Resume all @a handles in handle set. virtual int resume_handler (const ACE_Handle_Set &handles); /// Resume all the <Event_Handlers> in the Select_Reactor. @@ -373,8 +373,8 @@ public: /** * Cancel all <event_handlers> that match the address of - * <event_handler>. If @a dont_call_handle_close is 0 then the - * <handle_close> method of <event_handler> will be invoked. + * @a event_handler. If @a dont_call_handle_close is 0 then the + * <handle_close> method of @a event_handler will be invoked. * Returns number of handler's cancelled. */ virtual int cancel_timer (ACE_Event_Handler *event_handler, @@ -431,7 +431,7 @@ public: /** * Set the maximum number of times that the * <ACE_Select_Reactor_Notify::handle_input> method will iterate and - * dispatch the <ACE_Event_Handlers> that are passed in via the + * dispatch the ACE_Event_Handlers that are passed in via the * notify pipe before breaking out of its <recv> loop. By default, * this is set to -1, which means "iterate until the pipe is empty." * Setting this to a value like "1 or 2" will increase "fairness" @@ -443,7 +443,7 @@ public: /** * Get the maximum number of times that the * <ACE_Select_Reactor_Notify::handle_input> method will iterate and - * dispatch the <ACE_Event_Handlers> that are passed in via the + * dispatch the ACE_Event_Handlers that are passed in via the * notify pipe before breaking out of its <recv> loop. */ virtual int max_notify_iterations (void); @@ -556,7 +556,7 @@ protected: ACE_Event_Handler *eh, ACE_Reactor_Mask mask); - /// Register a set of <handles>. + /// Register a set of @a handles. virtual int register_handler_i (const ACE_Handle_Set &handles, ACE_Event_Handler *handler, ACE_Reactor_Mask mask); @@ -566,7 +566,7 @@ protected: virtual int remove_handler_i (ACE_HANDLE handle, ACE_Reactor_Mask); - /// Remove a set of <handles>. + /// Remove a set of @a handles. virtual int remove_handler_i (const ACE_Handle_Set &handles, ACE_Reactor_Mask); diff --git a/ACE/ace/Semaphore.cpp b/ACE/ace/Semaphore.cpp index 06de81756ed..104d2e517f0 100644 --- a/ACE/ace/Semaphore.cpp +++ b/ACE/ace/Semaphore.cpp @@ -20,11 +20,13 @@ ACE_ALLOC_HOOK_DEFINE(ACE_Semaphore) void ACE_Semaphore::dump (void) const { +#if defined (ACE_HAS_DUMP) // ACE_TRACE ("ACE_Semaphore::dump"); ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this)); ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n"))); ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP)); +#endif /* ACE_HAS_DUMP */ } ACE_Semaphore::ACE_Semaphore (unsigned int count, diff --git a/ACE/ace/Service_Config.cpp b/ACE/ace/Service_Config.cpp index dd0cea47ce4..9d6ed34c57d 100644 --- a/ACE/ace/Service_Config.cpp +++ b/ACE/ace/Service_Config.cpp @@ -47,7 +47,7 @@ ACE_Threading_Helper<ACE_Thread_Mutex>::ACE_Threading_Helper () { ACE_ERROR ((LM_ERROR, ACE_TEXT ("(%P|%t) Failed to create thread key: %p\n"), - "")); + ACE_TEXT (""))); } } @@ -56,8 +56,8 @@ ACE_Threading_Helper<ACE_Thread_Mutex>::set (void* p) { if (ACE_Thread::setspecific (key_, p) == -1) ACE_ERROR ((LM_ERROR, - ACE_TEXT ("(%P|%t) Service Config failed to set thread key value: %p\n"), - "")); + ACE_TEXT ("(%P|%t) Service Config failed to set thread key value: %p\n"), + ACE_TEXT(""))); } void* @@ -67,7 +67,7 @@ ACE_Threading_Helper<ACE_Thread_Mutex>::get (void) if (ACE_Thread::getspecific (key_, &temp) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("(%P|%t) Service Config failed to get thread key value: %p\n"), - ""), + ACE_TEXT("")), 0); return temp; } @@ -110,7 +110,7 @@ ACE_Service_Config_Guard::ACE_Service_Config_Guard (ACE_Service_Gestalt * psg) { if (ACE::debug ()) ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("ACE (%P|%t) SCG:<ctor=%@>") + ACE_TEXT ("ACE (%P|%t) - SCG:<ctor=%@>") ACE_TEXT (" - config=%@ repo=%@ superceded by repo=%@\n"), this, this->saved_.get (), @@ -183,11 +183,6 @@ ACE_Service_Config::parse_args_i (int argc, ACE_TCHAR *argv[]) ACE_Get_Opt::RETURN_IN_ORDER); //FUZZ: enable check_for_lack_ACE_OS - // Keep a list of all unknown arguments, begin with the - // executable's name - ACE_ARGV superargv; - superargv.add (argv[0]); - //FUZZ: disable check_for_lack_ACE_OS for (int c; (c = getopt ()) != -1; ) //FUZZ: enable check_for_lack_ACE_OS @@ -216,19 +211,11 @@ ACE_Service_Config::parse_args_i (int argc, ACE_TCHAR *argv[]) #endif /* ACE_LACKS_UNIX_SIGNALS */ break; } - default: - superargv.add (argv[getopt.opt_ind () - 1], true); - } - - // Collect any argumets that were left - for (int c = getopt.opt_ind (); c < argc; ++c) - superargv.add (argv[c-1], true); + default:; // unknown arguments are benign - bool ignore_default_svc_conf_file = false; - return instance_->parse_args_i (superargv.argc (), - superargv.argv (), - ignore_default_svc_conf_file); + } + return 0; } /* parse_args_i () */ diff --git a/ACE/ace/Service_Config.inl b/ACE/ace/Service_Config.inl index b4849764874..5703553bcba 100644 --- a/ACE/ace/Service_Config.inl +++ b/ACE/ace/Service_Config.inl @@ -40,13 +40,17 @@ ACE_Service_Config::open (int argc, bool ignore_debug_flag) { ACE_TRACE ("ACE_Service_Config::open"); + + if (singleton()->parse_args_i(argc, argv) == -1) + return -1; + if (singleton()->open_i (argv[0], logger_key, ignore_static_svcs, ignore_default_svc_conf, ignore_debug_flag) == -1) return -1; - + return current()->open (argc, argv, logger_key, diff --git a/ACE/ace/Service_Gestalt.cpp b/ACE/ace/Service_Gestalt.cpp index cca8d399602..e0d65695311 100644 --- a/ACE/ace/Service_Gestalt.cpp +++ b/ACE/ace/Service_Gestalt.cpp @@ -74,7 +74,6 @@ ACE_Service_Type_Dynamic_Guard::ACE_Service_Type_Dynamic_Guard /// Destructor - ACE_Service_Type_Dynamic_Guard::~ACE_Service_Type_Dynamic_Guard (void) { const ACE_Service_Type *tmp = 0; @@ -290,9 +289,8 @@ ACE_Service_Gestalt::init_i (void) } -// Add the default statically-linked services to the Service -// Repository. - +/// Add the default statically-linked services to the Service +/// Repository. int ACE_Service_Gestalt::load_static_svcs (void) { @@ -318,7 +316,6 @@ ACE_Service_Gestalt::load_static_svcs (void) /// Find a static service descriptor by name - int ACE_Service_Gestalt::find_static_svc_descriptor (const ACE_TCHAR* name, ACE_Static_Svc_Descriptor **ssd) const @@ -346,7 +343,6 @@ ACE_Service_Gestalt::find_static_svc_descriptor (const ACE_TCHAR* name, } /// @brief - const ACE_Static_Svc_Descriptor* ACE_Service_Gestalt::find_processed_static_svc (const ACE_TCHAR* name) { @@ -372,7 +368,6 @@ ACE_Service_Gestalt::find_processed_static_svc (const ACE_TCHAR* name) /// /// This is part of the mechanism ensuring distinct local instances /// for static service objects, loaded in another repository. - void ACE_Service_Gestalt::add_processed_static_svc (const ACE_Static_Svc_Descriptor *assd) @@ -449,10 +444,6 @@ ACE_Service_Gestalt::dump (void) const #endif /* ACE_HAS_DUMP */ } - - -/// - int ACE_Service_Gestalt::initialize (const ACE_TCHAR *svc_name, const ACE_TCHAR *parameters) @@ -602,17 +593,16 @@ ACE_Service_Gestalt::initialize (const ACE_Service_Type_Factory *stf, #endif /* (ACE_USES_CLASSIC_SVC_CONF == 1) */ -// Dynamically link the shared object file and retrieve a pointer to -// the designated shared object in this file. -// @note This is obsolete (and error-prone) in the presense of dynamic -// services with their own static services. This method will allow those -// static services to register *before* the dynamic service that owns them. -// Upon finalization of the static services the process may crash, because -// the dynamic service's DLL may have been already released, together with -// the memory in which the static services reside. -// It may not crash, for instance, when the first static service to register -// is the same as the dynamic service being loaded. You should be so lucky! .. - +/// Dynamically link the shared object file and retrieve a pointer to +/// the designated shared object in this file. +/// @note This is obsolete (and error-prone) in the presense of dynamic +/// services with their own static services. This method will allow those +/// static services to register *before* the dynamic service that owns them. +/// Upon finalization of the static services the process may crash, because +/// the dynamic service's DLL may have been already released, together with +/// the memory in which the static services reside. +/// It may not crash, for instance, when the first static service to register +/// is the same as the dynamic service being loaded. You should be so lucky! .. int ACE_Service_Gestalt::initialize (const ACE_Service_Type *sr, const ACE_TCHAR *parameters) @@ -644,8 +634,8 @@ ACE_Service_Gestalt::initialize (const ACE_Service_Type *sr, } -// Dynamically link the shared object file and retrieve a pointer to -// the designated shared object in this file. +/// Dynamically link the shared object file and retrieve a pointer to +/// the designated shared object in this file. int ACE_Service_Gestalt::initialize_i (const ACE_Service_Type *sr, const ACE_TCHAR *parameters) @@ -703,12 +693,11 @@ ACE_Service_Gestalt::remove (const ACE_TCHAR svc_name[]) return this->repo_->remove (svc_name); } -// Suspend <svc_name>. Note that this will not unlink the service -// from the daemon if it was dynamically linked, it will mark it as -// being suspended in the Service Repository and call the <suspend> -// member function on the appropriate <ACE_Service_Object>. A service -// can be resumed later on by calling the <resume> method... - +/// Suspend @a svc_name. Note that this will not unlink the service +/// from the daemon if it was dynamically linked, it will mark it as +/// being suspended in the Service Repository and call the <suspend> +/// member function on the appropriate <ACE_Service_Object>. A service +/// can be resumed later on by calling the <resume> method... int ACE_Service_Gestalt::suspend (const ACE_TCHAR svc_name[]) { @@ -858,7 +847,7 @@ ACE_Service_Gestalt::get_xml_svc_conf (ACE_DLL &xmldll) if (xmldll.open (ACE_TEXT ("ACEXML_XML_Svc_Conf_Parser")) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("ACE (%P|%t) Failure to open ACEXML_XML_Svc_Conf_Parser: %p\n"), - "ACE_Service_Config::get_xml_svc_conf"), + ACE_TEXT("ACE_Service_Config::get_xml_svc_conf")), 0); void * foo = @@ -942,8 +931,7 @@ ACE_Service_Gestalt::process_file (const ACE_TCHAR file[]) #else ACE_DLL dll; - auto_ptr<ACE_XML_Svc_Conf> - xml_svc_conf (this->get_xml_svc_conf (dll)); + auto_ptr<ACE_XML_Svc_Conf> xml_svc_conf (this->get_xml_svc_conf (dll)); if (xml_svc_conf.get () == 0) return -1; @@ -1147,26 +1135,22 @@ ACE_Service_Gestalt::parse_args_i (int argc, bool &ignore_default_svc_conf_file) { ACE_TRACE ("ACE_Service_Gestalt::parse_args_i"); - //FUZZ: disable check_for_lack_ACE_OS - ACE_Get_Opt getopt (argc, - argv, - ACE_TEXT ("df:k:nyS:"), - 1); // Start at argv[1]. - //FUZZ: enable check_for_lack_ACE_OS + ACE_Get_Opt get_opt (argc, + argv, + ACE_TEXT ("df:k:nyS:"), + 1); // Start at argv[1]. if (this->init_svc_conf_file_queue () == -1) return -1; - //FUZZ: disable check_for_lack_ACE_OS - for (int c; (argc != 0) && ((c = getopt ()) != -1); ) - //FUZZ: enable check_for_lack_ACE_OS + for (int c; (argc != 0) && ((c = get_opt ()) != -1); ) switch (c) { case 'd': ACE::debug (1); break; case 'f': - if (this->svc_conf_file_queue_->enqueue_tail (ACE_TString (getopt.opt_arg ())) == -1) + if (this->svc_conf_file_queue_->enqueue_tail (ACE_TString (get_opt.opt_arg ())) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("%p\n"), ACE_TEXT ("enqueue_tail")), @@ -1178,7 +1162,7 @@ ACE_Service_Gestalt::parse_args_i (int argc, * @TODO: Is this always a static storage? Shouldn't we copy * & gain ownership of the value? */ - this->logger_key_ = getopt.opt_arg (); + this->logger_key_ = get_opt.opt_arg (); break; case 'n': this->no_static_svcs_ = 1; @@ -1194,7 +1178,7 @@ ACE_Service_Gestalt::parse_args_i (int argc, -1); } - if (this->svc_queue_->enqueue_tail (ACE_TString (getopt.opt_arg ())) == -1) + if (this->svc_queue_->enqueue_tail (ACE_TString (get_opt.opt_arg ())) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("%p\n"), ACE_TEXT ("enqueue_tail")), @@ -1226,6 +1210,8 @@ ACE_Service_Gestalt::process_directives (bool ignore_default_svc_conf_file) ACE_TString *sptr = 0; ACE_TString default_svc_conf (ACE_DEFAULT_SVC_CONF); + int failed = 0; + // Iterate through all the svc.conf files. for (ACE_SVC_QUEUE_ITERATOR iter (*this->svc_conf_file_queue_); iter.next (sptr) != 0; @@ -1237,9 +1223,10 @@ ACE_Service_Gestalt::process_directives (bool ignore_default_svc_conf_file) int result = this->process_file (sptr->fast_rep ()); if (result < 0) return result; + failed += result; } - return 0; + return failed; } /* process_directives () */ diff --git a/ACE/ace/Service_Gestalt.h b/ACE/ace/Service_Gestalt.h index a7c81a8c996..569269c614a 100644 --- a/ACE/ace/Service_Gestalt.h +++ b/ACE/ace/Service_Gestalt.h @@ -82,10 +82,15 @@ public: MAX_SERVICES = ACE_DEFAULT_SERVICE_REPOSITORY_SIZE }; + enum + { + DEFAULT_SIZE = ACE_DEFAULT_SERVICE_GESTALT_SIZE + }; + /// Constructor either associates the instance with the process-wide /// singleton instance of ACE_Service_Repository, or creates and /// manages its own instance of the specified size. - ACE_Service_Gestalt (size_t size = 1024, + ACE_Service_Gestalt (size_t size = DEFAULT_SIZE, bool svc_repo_is_owned = true, bool no_static_svcs = true); @@ -102,13 +107,13 @@ public: * is typically either a STREAM pipe or a socket address. If * @a ignore_static_svcs is true then static services are not loaded, * otherwise, they are loaded. If @a ignore_default_svc_conf_file is - * true then the <svc.conf> configuration file will be ignored. + * true then the @c svc.conf configuration file will be ignored. * Returns zero upon success, -1 if the file is not found or cannot * be opened (errno is set accordingly), otherwise returns the * number of errors encountered loading the services in the * specified svc.conf configuration file. If @a ignore_debug_flag is * true then the application is responsible for setting the - * <ACE_Log_Msg::priority_mask> appropriately. + * ACE_Log_Msg::priority_mask appropriately. */ int open (const ACE_TCHAR program_name[], const ACE_TCHAR *logger_key = ACE_DEFAULT_LOGGER_KEY, @@ -217,7 +222,7 @@ public: /** * Handle the command-line options intended for the - * ACE_Service_Gestalt. Note that <argv[0]> is assumed to be the + * ACE_Service_Gestalt. Note that @c argv[0] is assumed to be the * program name. * * The arguments that are valid in a call to this method are @@ -232,7 +237,7 @@ public: * Please observe the difference between options '-f' that looks * for a list of files and here a list of services. */ - int parse_args (int, ACE_TCHAR *argv[]); + int parse_args (int argc, ACE_TCHAR *argv[]); /** * Process (or re-process) service configuration requests that are @@ -242,11 +247,10 @@ public: int process_directives (bool ignore_default_svc_conf_file); /// Tidy up and perform last rites when ACE_Service_Config is shut - /// down. This method calls <close_svcs>. Returns 0. + /// down. This method calls @c close_svcs. Returns 0. int close (void); - - // Registers a service descriptor for a static service object + /// Registers a service descriptor for a static service object int insert (ACE_Static_Svc_Descriptor *stsd); // = Utility methods. @@ -288,9 +292,9 @@ public: /** * Suspend @a svc_name. Note that this will not unlink the service * from the daemon if it was dynamically linked, it will mark it as - * being suspended in the Service Repository and call the <suspend> + * being suspended in the Service Repository and call the @c suspend() * member function on the appropriate ACE_Service_Object. A - * service can be resumed later on by calling the <RESUME> member + * service can be resumed later on by calling the @c resume() member * function... */ int suspend (const ACE_TCHAR svc_name[]); @@ -338,7 +342,7 @@ protected: bool ignore_default_svc_conf_file = false, bool ignore_debug_flag = false); - /// Initialize the <svc_conf_file_queue_> if necessary. + /// Initialize the @c svc_conf_file_queue_ if necessary. int init_svc_conf_file_queue (void); /// Add the default statically-linked services to the @@ -380,12 +384,12 @@ protected: protected: - // Maintain a queue of services to be configured from the - // command-line. + /// Maintain a queue of services to be configured from the + /// command-line. typedef ACE_Unbounded_Queue<ACE_TString> ACE_SVC_QUEUE; typedef ACE_Unbounded_Queue_Iterator<ACE_TString> ACE_SVC_QUEUE_ITERATOR; - // Maintain a set of the statically linked service descriptors. + /// Maintain a set of the statically linked service descriptors. typedef ACE_Unbounded_Set<ACE_Static_Svc_Descriptor *> ACE_STATIC_SVCS; @@ -431,7 +435,8 @@ protected: /// Queue of services specified on the command-line. ACE_SVC_QUEUE* svc_queue_; - /** Queue of svc.conf files specified on the command-line. + /** + * Queue of svc.conf files specified on the command-line. * @@ This should probably be made to handle unicode filenames... */ ACE_SVC_QUEUE* svc_conf_file_queue_; @@ -491,7 +496,6 @@ private: size_t repo_begin_; ACE_TCHAR const * const name_; - # if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0) ACE_Guard< ACE_Recursive_Thread_Mutex > repo_monitor_; #endif diff --git a/ACE/ace/Service_Gestalt.inl b/ACE/ace/Service_Gestalt.inl index 6b93f5e8bd1..7f6b4754154 100644 --- a/ACE/ace/Service_Gestalt.inl +++ b/ACE/ace/Service_Gestalt.inl @@ -11,10 +11,10 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE int ACE_Service_Gestalt::open (const ACE_TCHAR program_name[], - const ACE_TCHAR *logger_key, - bool ignore_static_svcs, - bool ignore_default_svc_conf, - bool ignore_debug_flag) + const ACE_TCHAR *logger_key, + bool ignore_static_svcs, + bool ignore_default_svc_conf, + bool ignore_debug_flag) { ACE_TRACE ("ACE_Service_Gestalt::open"); this->no_static_svcs_ = ignore_static_svcs; diff --git a/ACE/ace/Service_Object.h b/ACE/ace/Service_Object.h index 10f733fe54e..7a61d287e53 100644 --- a/ACE/ace/Service_Object.h +++ b/ACE/ace/Service_Object.h @@ -116,7 +116,7 @@ public: bool active (void) const; void active (bool turnon); - /// Calls <fini> on <type_> + /// Calls @c fini on @c type_ int fini (void); /// Check if the service has been fini'ed. @@ -148,7 +148,7 @@ private: /// true if svc is currently active, otherwise false. bool active_; - /// true if <fini> on <type_> has already been called, otherwise false. + /// true if @c fini on @c type_ has already been called, otherwise false. bool fini_already_called_; }; @@ -157,13 +157,12 @@ private: * * @brief This is a smart pointer that holds onto the associated * ACE_Service_Object * until the current scope is left, at - * which point the object's <fini> hook is called and the + * which point the object's fini() hook is called and the * service_object_ gets deleted. * * This class is similar to the Standard C++ Library class - * <auto_ptr>. It is used in conjunction with statically linked - * ACE_Service_Objects, as shown in the - * ./netsvcs/server/main.cpp example. + * auto_ptr. It is used in conjunction with statically linked + * ACE_Service_Objects, as shown in the ./netsvcs/server/main.cpp example. */ class ACE_Export ACE_Service_Object_Ptr { @@ -172,7 +171,7 @@ public: /// Acquire ownership of the @a so. ACE_Service_Object_Ptr (ACE_Service_Object *so); - /// Release the held ACE_Service_Object by calling its <fini> hook. + /// Release the held ACE_Service_Object by calling its fini() hook. ~ACE_Service_Object_Ptr (void); /// Smart pointer to access the underlying ACE_Service_Object. diff --git a/ACE/ace/Service_Repository.cpp b/ACE/ace/Service_Repository.cpp index e8aae6dd649..60f6b6fe831 100644 --- a/ACE/ace/Service_Repository.cpp +++ b/ACE/ace/Service_Repository.cpp @@ -22,11 +22,11 @@ ACE_RCSID (ace, ACE_ALLOC_HOOK_DEFINE(ACE_Service_Repository) -// Process-wide Service Repository. +/// Process-wide Service Repository. ACE_Service_Repository *ACE_Service_Repository::svc_rep_ = 0; -// Controls whether the Service_Repository is deleted when we shut -// down (we can only delete it safely if we created it)! +/// Controls whether the Service_Repository is deleted when we shut +/// down (we can only delete it safely if we created it)! bool ACE_Service_Repository::delete_svc_rep_ = false; void @@ -37,16 +37,8 @@ ACE_Service_Repository::dump (void) const #endif /* ACE_HAS_DUMP */ } -ACE_Service_Repository::ACE_Service_Repository (void) - : service_vector_ (0), - current_size_ (0), - total_size_ (0) -{ - ACE_TRACE ("ACE_Service_Repository::ACE_Service_Repository"); -} - ACE_Service_Repository * -ACE_Service_Repository::instance (size_t size /* = ACE_Service_Repository::DEFAULT_SIZE */) +ACE_Service_Repository::instance (size_t size) { ACE_TRACE ("ACE_Service_Repository::instance"); @@ -102,77 +94,61 @@ ACE_Service_Repository::close_singleton (void) } } -// Initialize the Repository to a clean slate. - +/// Initialize the Repository to a clean slate. int ACE_Service_Repository::open (size_t size) { ACE_TRACE ("ACE_Service_Repository::open"); - ACE_Service_Type **temp = 0; - - ACE_NEW_RETURN (temp, - ACE_Service_Type *[size], - -1); + // Create a new array and swap it with the local array + array_type local_array (size); + this->service_array_.swap (local_array); - this->service_vector_ = const_cast<const ACE_Service_Type **> (temp); - this->total_size_ = size; return 0; } ACE_Service_Repository::ACE_Service_Repository (size_t size) - : current_size_ (0) + : service_array_ (size) { ACE_TRACE ("ACE_Service_Repository::ACE_Service_Repository"); - - if (this->open (size) == -1) - ACE_ERROR ((LM_ERROR, - ACE_TEXT ("%p\n"), - ACE_TEXT ("ACE_Service_Repository"))); } -// Finalize (call <fini> and possibly delete) all the services. - +/// Finalize (call fini() and possibly delete) all the services. int ACE_Service_Repository::fini (void) { ACE_TRACE ("ACE_Service_Repository::fini"); ACE_MT (ACE_GUARD_RETURN (ACE_Recursive_Thread_Mutex, ace_mon, this->lock_, -1)); - if (this->service_vector_ == 0) - return 0; - int retval = 0; // Do not be tempted to use the prefix decrement operator. Use // postfix decrement operator since the index is unsigned and may // wrap around the 0 - for (size_t i = this->current_size_; i-- != 0; ) + for (size_t i = this->service_array_.size(); i-- != 0; ) { // <fini> the services in reverse order. ACE_Service_Type *s = - const_cast<ACE_Service_Type *> (this->service_vector_[i]); + const_cast<ACE_Service_Type *> (this->service_array_[i]); #ifndef ACE_NLOGGING if (ACE::debug ()) { if (s != 0) ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("ACE (%P|%t) SR::fini, repo=%@ [%d] (%d), ") + ACE_TEXT ("ACE (%P|%t) SR::fini, repo=%@ [%d], ") ACE_TEXT ("name=%s, type=%@, object=%@, active=%d\n"), this, i, - this->total_size_, s->name(), s->type (), (s->type () != 0) ? s->type ()->object () : 0, s->active ())); else ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("ACE (%P|%t) SR::fini, repo=%@ [%d] (%d) -> 0\n"), + ACE_TEXT ("ACE (%P|%t) SR::fini, repo=%@ [%d] -> 0\n"), this, - i, - this->total_size_)); + i)); } #endif @@ -184,57 +160,50 @@ ACE_Service_Repository::fini (void) return (retval == 0) ? 0 : -1; } -// Close down all the services. - +/// Close down all the services. int ACE_Service_Repository::close (void) { ACE_TRACE ("ACE_Service_Repository::close"); ACE_MT (ACE_GUARD_RETURN (ACE_Recursive_Thread_Mutex, ace_mon, this->lock_, -1)); - if (this->service_vector_ == 0) - return 0; - #ifndef ACE_NLOGGING if(ACE::debug ()) ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) SR::close - repo=%@, size=%d\n"), + ACE_TEXT ("ACE (%P|%t) SR::close - repo=%@, size=%d\n"), this, - this->current_size_)); + this->service_array_.size())); #endif // Do not use the prefix decrement operator since the index is // unsigned and may wrap around the 0. - for (size_t i = this->current_size_; i-- != 0; ) + for (size_t i = this->service_array_.size(); i-- != 0; ) { // Delete services in reverse order. ACE_Service_Type *s = - const_cast<ACE_Service_Type *> (this->service_vector_[i]); + const_cast<ACE_Service_Type *> (this->service_array_[i]); #ifndef ACE_NLOGGING if(ACE::debug ()) { if (s == 0) ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) SR::close - repo=%@ [%d] -> 0\n"), + ACE_TEXT ("ACE (%P|%t) SR::close - repo=%@ [%d] -> 0\n"), this, i)); else ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) SR::close - repo=%@ [%d], name=%s, object=%@\n"), + ACE_TEXT ("ACE (%P|%t) SR::close - repo=%@ [%d], name=%s, object=%@\n"), this, i, s->name (), s)); } #endif - --this->current_size_; delete s; } - delete [] this->service_vector_; - this->service_vector_ = 0; - this->current_size_ = 0; + this->service_array_.clear (); return 0; } @@ -244,18 +213,17 @@ ACE_Service_Repository::~ACE_Service_Repository (void) ACE_TRACE ("ACE_Service_Repository::~ACE_Service_Repository"); #ifndef ACE_NLOGGING if(ACE::debug ()) - ACE_DEBUG ((LM_DEBUG, "(%P|%t) SR::<dtor>, this=%@\n", this)); + ACE_DEBUG ((LM_DEBUG, "ACE (%P|%t) SR::<dtor>, this=%@\n", this)); #endif this->close (); } -// Locate an entry with <name> in the table. If <ignore_suspended> is -// set then only consider services marked as resumed. If the caller -// wants the located entry, pass back a pointer to the located entry -// via <srp>. If <name> is not found -1 is returned. If <name> is -// found, but it is suspended and the caller wants to ignore suspended -// services a -2 is returned. Must be called with locks held. - +/// Locate an entry with @a name in the table. If @a ignore_suspended is +/// set then only consider services marked as resumed. If the caller +/// wants the located entry, pass back a pointer to the located entry +/// via @a srp. If @a name is not found -1 is returned. If @a name is +/// found, but it is suspended and the caller wants to ignore suspended +/// services a -2 is returned. Must be called with locks held. int ACE_Service_Repository::find_i (const ACE_TCHAR name[], size_t &slot, @@ -263,20 +231,25 @@ ACE_Service_Repository::find_i (const ACE_TCHAR name[], bool ignore_suspended) const { ACE_TRACE ("ACE_Service_Repository::find_i"); - size_t i; + size_t i = 0; + array_type::const_iterator element = this->service_array_.end (); - for (i = 0; i < this->current_size_; i++) + for (i = 0; i < this->service_array_.size(); i++) { - if (this->service_vector_[i] != 0 // skip any empty slots - && ACE_OS::strcmp (name, - this->service_vector_[i]->name ()) == 0) + array_type::const_iterator iter = this->service_array_.find (i); + if (iter != this->service_array_.end () + && (*iter).second != 0 // skip any empty slots + && ACE_OS::strcmp (name, (*iter).second->name ()) == 0) + { + element = iter; break; + } } - if (i < this->current_size_) + if (element != this->service_array_.end ()) { slot = i; - if (this->service_vector_[i]->fini_called ()) + if ((*element).second->fini_called ()) { if (srp != 0) *srp = 0; @@ -284,10 +257,10 @@ ACE_Service_Repository::find_i (const ACE_TCHAR name[], } if (srp != 0) - *srp = this->service_vector_[i]; + *srp = (*element).second; if (ignore_suspended - && this->service_vector_[i]->active () == 0) + && (*element).second->active () == 0) return -2; return 0; @@ -303,7 +276,6 @@ ACE_Service_Repository::find_i (const ACE_TCHAR name[], /// DLL. No locking, caller makes sure calling it is safe. You can /// forcefully relocate any DLLs in the given range, not only the /// static ones - but that will cause Very Bad Things (tm) to happen. - int ACE_Service_Repository::relocate_i (size_t begin, size_t end, @@ -314,7 +286,7 @@ ACE_Service_Repository::relocate_i (size_t begin, for (size_t i = begin; i < end; i++) { ACE_Service_Type *type = - const_cast<ACE_Service_Type *> (this->service_vector_[i]); + const_cast<ACE_Service_Type *> (this->service_array_[i]); ACE_SHLIB_HANDLE old_handle = (type == 0) ? ACE_SHLIB_INVALID_HANDLE : type->dll ().get_handle (0); @@ -324,18 +296,16 @@ ACE_Service_Repository::relocate_i (size_t begin, { if (type == 0) ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("ACE (%P|%t) SR::relocate_i - repo=%@ [%d] (size=%d)") + ACE_TEXT ("ACE (%P|%t) SR::relocate_i - repo=%@ [%d]") ACE_TEXT (": skipping empty slot\n"), this, - i, - this->total_size_)); + i)); else ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("ACE (%P|%t) SR::relocate_i - repo=%@ [%d] (size=%d)") + ACE_TEXT ("ACE (%P|%t) SR::relocate_i - repo=%@ [%d]") ACE_TEXT (": trying name=%s, handle: %d -> %d\n"), this, i, - this->total_size_, type->name (), old_handle, new_handle)); @@ -349,11 +319,10 @@ ACE_Service_Repository::relocate_i (size_t begin, #ifndef ACE_NLOGGING if (ACE::debug ()) ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("ACE (%P|%t) SR::relocate_i - repo=%@ [%d] (size=%d)") + ACE_TEXT ("ACE (%P|%t) SR::relocate_i - repo=%@ [%d]") ACE_TEXT (": relocating name=%s, handle: %d -> %d\n"), this, i, - this->total_size_, type->name (), old_handle, new_handle)); @@ -376,11 +345,10 @@ ACE_Service_Repository::find (const ACE_TCHAR name[], return this->find_i (name, ignore_location, srp, ignore_suspended); } - -// Insert the ACE_Service_Type SR into the repository. Note that -// services may be inserted either resumed or suspended. Using same -// name as in an existing service causes the delete () to be called -// for the old one, i.e. make sure @code sr is allocated on the heap! +/// Insert the ACE_Service_Type SR into the repository. Note that +/// services may be inserted either resumed or suspended. Using same +/// name as in an existing service causes the delete () to be called +/// for the old one, i.e. make sure @code sr is allocated on the heap! int ACE_Service_Repository::insert (const ACE_Service_Type *sr) { @@ -404,7 +372,7 @@ ACE_Service_Repository::insert (const ACE_Service_Type *sr) // Adding an entry. if (s != 0) { - this->service_vector_[i] = sr; + this->service_array_[i] = sr; } else { @@ -414,37 +382,20 @@ ACE_Service_Repository::insert (const ACE_Service_Type *sr) // current_size_ and the new current_size_ value. See // ACE_Service_Type_Dynamic_Guard ctor and dtor for details. - if (i < this->current_size_) - i = this->current_size_; - - if (i < this->total_size_) - { - this->service_vector_[i] = sr; - this->current_size_++; - return_value = 0; - } - else - { - return_value = -1; // no space left - } - - // Since there may be "holes" left by removed services one - // could consider wrapping current_size_ modulo - // total_size_. This is going to impact - // ACE_Service_Type_Dynamic_Guard, too and is tricky. Perhaps - // a new directive, like "reload" would be better as it can - // combine the removal and insertion in an atomic step and - // avoid creating too many "holes". + if (i < this->service_array_.size ()) + i = this->service_array_.size (); + + this->service_array_[i] = sr; + return_value = 0; } } #ifndef ACE_NLOGGING if (ACE::debug ()) ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("ACE (%P|%t) SR::insert - repo=%@ [%d] (%d),") - ACE_TEXT (" name=%s (%s) (type=%@, object=%@, active=%d)\n"), + ACE_TEXT ("ACE (%P|%t) SR::insert - repo=%@ [%d],") + ACE_TEXT (" name=%s (%C) (type=%@, object=%@, active=%d)\n"), this, i, - this->total_size_, sr->name(), (return_value == 0 ? ((s==0) ? "new" : "replacing") : "failed"), sr->type (), @@ -462,7 +413,7 @@ ACE_Service_Repository::insert (const ACE_Service_Type *sr) return return_value; } -// Resume a service that was previously suspended. +/// Resume a service that was previously suspended. int ACE_Service_Repository::resume (const ACE_TCHAR name[], const ACE_Service_Type **srp) @@ -474,12 +425,11 @@ ACE_Service_Repository::resume (const ACE_TCHAR name[], if (-1 == this->find_i (name, i, srp, 0)) return -1; - return this->service_vector_[i]->resume (); + return this->service_array_[i]->resume (); } -// Suspend a service so that it will not be considered active under -// most circumstances by other portions of the ACE_Service_Repository. - +/// Suspend a service so that it will not be considered active under +/// most circumstances by other portions of the ACE_Service_Repository. int ACE_Service_Repository::suspend (const ACE_TCHAR name[], const ACE_Service_Type **srp) @@ -490,15 +440,13 @@ ACE_Service_Repository::suspend (const ACE_TCHAR name[], if (-1 == this->find_i (name, i, srp, 0)) return -1; - return this->service_vector_[i]->suspend (); + return this->service_array_[i]->suspend (); } - /** - * @brief Completely remove a <name> entry from the Repository and + * @brief Completely remove a @a name entry from the Repository and * dynamically unlink it if it was originally dynamically linked. */ - int ACE_Service_Repository::remove (const ACE_TCHAR name[], ACE_Service_Type **ps) { @@ -520,7 +468,7 @@ ACE_Service_Repository::remove (const ACE_TCHAR name[], ACE_Service_Type **ps) } /** - * @brief Completely remove a <name> entry from the Repository and + * @brief Completely remove a @a name entry from the Repository and * dynamically unlink it if it was originally dynamically linked. * * Return a ptr to the entry in @code ps. There is no locking so make @@ -528,7 +476,7 @@ ACE_Service_Repository::remove (const ACE_TCHAR name[], ACE_Service_Type **ps) * * Since the order of services in the Respository matters, we can't * simply overwrite the entry being deleted with the last and - * decrement the <current_size> by 1. A good example of why the order + * decrement the @c current_size by 1. A good example of why the order * matters is a dynamic service, in whose DLL there is at least one * static service. In order to prevent SEGV during finalization, those * static services must be finalized _before_the dynamic service that @@ -547,22 +495,21 @@ ACE_Service_Repository::remove_i (const ACE_TCHAR name[], ACE_Service_Type **ps) return -1; // Not found // We may need the old ptr - to be delete outside the lock! - *ps = const_cast<ACE_Service_Type *> (this->service_vector_[i]); + *ps = const_cast<ACE_Service_Type *> (this->service_array_[i]); #ifndef ACE_NLOGGING if (ACE::debug ()) ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("ACE (%P|%t) SR::remove_i - repo=%@ [%d] (%d),") + ACE_TEXT ("ACE (%P|%t) SR::remove_i - repo=%@ [%d],") ACE_TEXT (" name=%s (removed) (type=%@, active=%d)\n"), this, i, - this->total_size_, name, *ps, (*ps)->active ())); #endif - this->service_vector_[i] = 0; // simply leave a gap + this->service_array_[i] = 0; // simply leave a gap return 0; } @@ -576,24 +523,21 @@ ACE_Service_Repository_Iterator::dump (void) const #endif /* ACE_HAS_DUMP */ } - -// Initializes the iterator and skips over any suspended entries at -// the beginning of the table, if necessary. Note, you must not -// perform destructive operations on elements during this iteration... - +/// Initializes the iterator and skips over any suspended entries at +/// the beginning of the table, if necessary. Note, you must not +/// perform destructive operations on elements during this iteration... ACE_Service_Repository_Iterator::ACE_Service_Repository_Iterator - (ACE_Service_Repository &sr, int ignr_suspended) + (ACE_Service_Repository &sr, bool ignored_suspended) : svc_rep_ (sr), next_ (0), - ignore_suspended_ (ignr_suspended) + ignore_suspended_ (ignored_suspended) { while (!(done() || valid())) this->next_++; } -// Obtains a pointer to the next valid service in the table. If there -// are no more entries, returns 0, else 1. - +/// Obtains a pointer to the next valid service in the table. If there +/// are no more entries, returns 0, else 1. int ACE_Service_Repository_Iterator::next (const ACE_Service_Type *&sr) { @@ -602,15 +546,14 @@ ACE_Service_Repository_Iterator::next (const ACE_Service_Type *&sr) if (done ()) return 0; - sr = this->svc_rep_.service_vector_[this->next_]; + sr = this->svc_rep_.service_array_[this->next_]; return 1; } -// Advance the iterator by the proper amount. If we are ignoring -// suspended entries and the current entry is suspended, then we must -// skip over this entry. Otherwise, we must advance the NEXT index to -// reference the next valid service entry. - +/// Advance the iterator by the proper amount. If we are ignoring +/// suspended entries and the current entry is suspended, then we must +/// skip over this entry. Otherwise, we must advance the NEXT index to +/// reference the next valid service entry. int ACE_Service_Repository_Iterator::advance (void) { @@ -628,10 +571,10 @@ ACE_Service_Repository_Iterator::valid (void) const { ACE_TRACE ("ACE_Service_Repository_Iterator::valid"); if (!this->ignore_suspended_) - return (this->svc_rep_.service_vector_[this->next_] != 0); // skip over gaps + return (this->svc_rep_.service_array_[this->next_] != 0); // skip over gaps - return (this->svc_rep_.service_vector_[this->next_] != 0 - && this->svc_rep_.service_vector_[this->next_]->active ()); + return (this->svc_rep_.service_array_[this->next_] != 0 + && this->svc_rep_.service_array_[this->next_]->active ()); } ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ACE/ace/Service_Repository.h b/ACE/ace/Service_Repository.h index 9026856fb55..3ce6cd811ba 100644 --- a/ACE/ace/Service_Repository.h +++ b/ACE/ace/Service_Repository.h @@ -23,6 +23,7 @@ #include "ace/Default_Constants.h" #include "ace/Recursive_Thread_Mutex.h" +#include "ace/Array_Map.h" ACE_BEGIN_VERSIONED_NAMESPACE_DECL @@ -36,11 +37,11 @@ class ACE_DLL; * @brief Contains all the services offered by a Service * Configurator-based application. * - * This class contains a vector of <ACE_Service_Types> *'s and + * This class contains a vector of ACE_Service_Types *'s and * allows an administrative entity to centrally manage and * control the behavior of application services. Note that if * services are removed from the middle of the repository the - * order won't necessarily be maintained since the <remove> + * order won't necessarily be maintained since the @a removeß * method performs compaction. However, the common case is not * to remove services, so typically they are deleted in the * reverse order that they were added originally. @@ -57,10 +58,7 @@ public: // = Initialization and termination methods. /// Initialize the repository. - ACE_Service_Repository (void); - - /// Initialize the repository. - ACE_Service_Repository (size_t size); + ACE_Service_Repository (size_t size = DEFAULT_SIZE); /// Initialize the repository. int open (size_t size = DEFAULT_SIZE); @@ -73,7 +71,7 @@ public: /// resources. int close (void); - /// Finalize all the services by calling <fini> and deleting + /// Finalize all the services by calling fini() and deleting /// dynamically allocated services. int fini (void); @@ -92,7 +90,7 @@ public: /// Insert a new service record. Returns -1 when the service repository /// is full and 0 on success. - int insert (const ACE_Service_Type *); + int insert (const ACE_Service_Type *sr); /** * Locate a named entry in the service table, optionally ignoring @@ -119,28 +117,25 @@ public: /// the service's record is removed from the repository, but not deleted; /// *sr receives the service record pointer and the caller is responsible /// for properly disposing of it. - int remove (const ACE_TCHAR[], ACE_Service_Type **sr = 0); + int remove (const ACE_TCHAR name[], ACE_Service_Type **sr = 0); // = Liveness control /// Resume a service record. - int resume (const ACE_TCHAR[], const ACE_Service_Type ** = 0); + int resume (const ACE_TCHAR name[], const ACE_Service_Type **srp = 0); /// Suspend a service record. - int suspend (const ACE_TCHAR[], const ACE_Service_Type ** = 0); + int suspend (const ACE_TCHAR name[], const ACE_Service_Type **srp = 0); /// Return the current size of the repository. size_t current_size (void) const; - /// Return the total size of the repository. - size_t total_size (void) const; - /// Dump the state of an object. void dump (void) const; /// Declare the dynamic allocation hooks. ACE_ALLOC_HOOK_DECLARE; -private: +protected: friend class ACE_Service_Type_Dynamic_Guard; @@ -187,24 +182,20 @@ private: /// DLL. No locking, caller makes sure calling it is safe. You can /// forcefully relocate any DLLs in the given range, not only the /// static ones - but that will cause Very Bad Things (tm) to happen. - int relocate_i (size_t begin, size_t end, const ACE_DLL &adll); - /// Contains all the configured services. - const ACE_Service_Type **service_vector_; - - /// Current number of services. - size_t current_size_; + /// The typedef of the array used to store the services. + typedef ACE_Array_Map <size_t, const ACE_Service_Type*> array_type; - /// Maximum number of services. - size_t total_size_; + /// Contains all the configured services. + array_type service_array_; /// Pointer to a process-wide ACE_Service_Repository. static ACE_Service_Repository *svc_rep_; - /// Must delete the <svc_rep_> if true. + /// Must delete the @c svc_rep_ if true. static bool delete_svc_rep_; #if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0) @@ -227,7 +218,7 @@ public: // = Initialization and termination methods. /// Constructor initializes the iterator. ACE_Service_Repository_Iterator (ACE_Service_Repository &sr, - int ignored_suspended = 1); + bool ignored_suspended = true); /// Destructor. ~ACE_Service_Repository_Iterator (void); @@ -236,7 +227,7 @@ public: public: // = Iteration methods. - /// Pass back the <next_item> that hasn't been seen in the repository. + /// Pass back the @a next_item that hasn't been seen in the repository. /// Returns 0 when all items have been seen, else 1. int next (const ACE_Service_Type *&next_item); @@ -266,7 +257,7 @@ private: size_t next_; /// Are we ignoring suspended services? - bool ignore_suspended_; + bool const ignore_suspended_; }; ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ACE/ace/Service_Repository.inl b/ACE/ace/Service_Repository.inl index a042a0f9a1d..056534a4a55 100644 --- a/ACE/ace/Service_Repository.inl +++ b/ACE/ace/Service_Repository.inl @@ -19,20 +19,7 @@ ACE_Service_Repository::current_size (void) const ACE_MT (ACE_GUARD_RETURN (ACE_Recursive_Thread_Mutex, ace_mon, (ACE_Recursive_Thread_Mutex &) this->lock_, 0)); - return this->current_size_; -} - -// Returns a count of the total number of possible entries in the -// table. - -ACE_INLINE size_t -ACE_Service_Repository::total_size (void) const -{ - ACE_TRACE ("ACE_Service_Repository::total_size"); - ACE_MT (ACE_GUARD_RETURN (ACE_Recursive_Thread_Mutex, - ace_mon, - (ACE_Recursive_Thread_Mutex &) this->lock_, 0)); - return this->total_size_; + return this->service_array_.size (); } ACE_INLINE int @@ -40,7 +27,7 @@ ACE_Service_Repository_Iterator::done (void) const { ACE_TRACE ("ACE_Service_Repository_Iterator::done"); - return this->next_ >= this->svc_rep_.current_size_; + return this->next_ >= this->svc_rep_.current_size (); } ACE_INLINE diff --git a/ACE/ace/Service_Types.cpp b/ACE/ace/Service_Types.cpp index ce5d0bb9a52..4552607640e 100644 --- a/ACE/ace/Service_Types.cpp +++ b/ACE/ace/Service_Types.cpp @@ -435,14 +435,14 @@ ACE_Stream_Type::push (ACE_Module_Type *new_module) } ACE_Module_Type * -ACE_Stream_Type::find (const ACE_TCHAR *mod_name) const +ACE_Stream_Type::find (const ACE_TCHAR *module_name) const { ACE_TRACE ("ACE_Stream_Type::find"); for (ACE_Module_Type *m = this->head_; m != 0; m = m->link ()) - if (ACE_OS::strcmp (m->name (), mod_name) == 0) + if (ACE_OS::strcmp (m->name (), module_name) == 0) return m; return 0; diff --git a/ACE/ace/Service_Types.h b/ACE/ace/Service_Types.h index fccf76b5f02..e741561d965 100644 --- a/ACE/ace/Service_Types.h +++ b/ACE/ace/Service_Types.h @@ -182,7 +182,7 @@ public: int remove (ACE_Module_Type *module); /// Locate the ACE_Module with @a mod_name. - ACE_Module_Type *find (const ACE_TCHAR *mod_name) const; + ACE_Module_Type *find (const ACE_TCHAR *module_name) const; /// Dump the state of an object. void dump (void) const; diff --git a/ACE/ace/Shared_Memory_Pool.cpp b/ACE/ace/Shared_Memory_Pool.cpp index 44c346ea389..baa4acc025a 100644 --- a/ACE/ace/Shared_Memory_Pool.cpp +++ b/ACE/ace/Shared_Memory_Pool.cpp @@ -135,8 +135,8 @@ ACE_Shared_Memory_Pool::commit_backing_store_name (size_t rounded_bytes, if (shmem != address) ACE_ERROR_RETURN ((LM_ERROR, - "(%P|%t) %p, shmem = %u, address = %u\n", - "shmat", + ACE_TEXT("(%P|%t) %p, shmem = %u, address = %u\n"), + ACE_TEXT("shmat"), shmem, address), -1); @@ -211,8 +211,8 @@ ACE_Shared_Memory_Pool::handle_signal (int , siginfo_t *siginfo, ucontext_t *) if (shmem != address) ACE_ERROR_RETURN ((LM_ERROR, - "(%P|%t) %p, shmem = %u, address = %u\n", - "shmat", + ACE_TEXT("(%P|%t) %p, shmem = %u, address = %u\n"), + ACE_TEXT("shmat"), shmem, address), -1); @@ -349,8 +349,8 @@ ACE_Shared_Memory_Pool::init_acquire (size_t nbytes, 0); if (this->base_addr_ == reinterpret_cast<void *> (-1)) ACE_ERROR_RETURN ((LM_ERROR, - "(%P|%t) %p, base_addr = %u\n", - "shmat", + ACE_TEXT("(%P|%t) %p, base_addr = %u\n"), + ACE_TEXT("shmat"), this->base_addr_), 0); } @@ -366,8 +366,8 @@ ACE_Shared_Memory_Pool::init_acquire (size_t nbytes, 0); if (this->base_addr_ == reinterpret_cast<char *> (-1)) ACE_ERROR_RETURN ((LM_ERROR, - "(%P|%t) %p, base_addr = %u\n", - "shmat", + ACE_TEXT("(%P|%t) %p, base_addr = %u\n"), + ACE_TEXT("shmat"), this->base_addr_), 0); SHM_TABLE *st = reinterpret_cast<SHM_TABLE *> (this->base_addr_); diff --git a/ACE/ace/Singleton.cpp b/ACE/ace/Singleton.cpp index b59213eaf1b..154cead4d64 100644 --- a/ACE/ace/Singleton.cpp +++ b/ACE/ace/Singleton.cpp @@ -17,12 +17,12 @@ #include "ace/Log_Msg.h" #include "ace/Framework_Component.h" #include "ace/Guard_T.h" +#include "ace/os_include/os_typeinfo.h" ACE_RCSID (ace, Singleton, "$Id$") - ACE_BEGIN_VERSIONED_NAMESPACE_DECL template <class TYPE, class ACE_LOCK> void @@ -95,7 +95,7 @@ ACE_Singleton<TYPE, ACE_LOCK>::instance (void) ACE_NEW_RETURN (singleton, (ACE_Singleton<TYPE, ACE_LOCK>), 0); // Register for destruction with ACE_Object_Manager. - ACE_Object_Manager::at_exit (singleton); + ACE_Object_Manager::at_exit (singleton, 0, typeid (TYPE).name ()); #if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0) } #endif /* ACE_MT_SAFE */ @@ -108,10 +108,24 @@ ACE_Singleton<TYPE, ACE_LOCK>::instance (void) template <class TYPE, class ACE_LOCK> void ACE_Singleton<TYPE, ACE_LOCK>::cleanup (void *) { + ACE_Object_Manager::remove_at_exit (this); delete this; ACE_Singleton<TYPE, ACE_LOCK>::instance_i () = 0; } +template <class TYPE, class ACE_LOCK> void +ACE_Singleton<TYPE, ACE_LOCK>::close (void) +{ + ACE_Singleton<TYPE, ACE_LOCK> *&singleton = + ACE_Singleton<TYPE, ACE_LOCK>::instance_i (); + + if (singleton) + { + singleton->cleanup (); + ACE_Singleton<TYPE, ACE_LOCK>::instance_i () = 0; + } +} + #if !defined (ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES) // Pointer to the Singleton instance. template <class TYPE, class ACE_LOCK> ACE_Singleton<TYPE, ACE_LOCK> * @@ -282,7 +296,7 @@ ACE_TSS_Singleton<TYPE, ACE_LOCK>::instance (void) 0); // Register for destruction with ACE_Object_Manager. - ACE_Object_Manager::at_exit (singleton); + ACE_Object_Manager::at_exit (singleton, 0, typeid (TYPE).name ()); #if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0) } #endif /* ACE_MT_SAFE */ diff --git a/ACE/ace/Singleton.h b/ACE/ace/Singleton.h index 032f26740f4..28ce78cd017 100644 --- a/ACE/ace/Singleton.h +++ b/ACE/ace/Singleton.h @@ -82,10 +82,13 @@ public: /// Global access point to the Singleton. static TYPE *instance (void); - /// Cleanup method, used by <ace_cleanup_destroyer> to destroy the + /// Cleanup method, used by @c ace_cleanup_destroyer to destroy the /// ACE_Singleton. virtual void cleanup (void *param = 0); + /// Explicitly delete the Singleton instance. + static void close (void); + /// Dump the state of the object. static void dump (void); diff --git a/ACE/ace/Sock_Connect.cpp b/ACE/ace/Sock_Connect.cpp index 2e3682bcb2e..99229c7c3f9 100644 --- a/ACE/ace/Sock_Connect.cpp +++ b/ACE/ace/Sock_Connect.cpp @@ -59,12 +59,14 @@ const struct in6_addr in6addr_linklocal_allrouters = IN6ADDR_LINKLOCAL_ALLROUTER #if defined (ACE_HAS_WINCE) #include /**/ <Iphlpapi.h> +# if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0) // The following code is suggested by microsoft as a workaround to the fact // that on Windows CE, these constants are exported as function addresses // rather than simply values. # include /**/ <ws2tcpip.h> const struct in6_addr in6addr_any = IN6ADDR_ANY_INIT; const struct in6_addr in6addr_loopback = IN6ADDR_LOOPBACK_INIT; +# endif #endif // ACE_HAS_WINCE #if defined (ACE_WIN32) && defined (ACE_HAS_PHARLAP) @@ -491,7 +493,7 @@ static int get_ip_interfaces_win32 (size_t &count, ACE_INET_Addr *&addrs) { -# if defined (ACE_HAS_WINCE) +# if defined (ACE_HAS_WINCE) && defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0) // moved the ACE_HAS_WINCE impl ahaid of ACE_HAS_WINSOCK2 because // WINCE in fact has winsock2, but doesn't properly support the // WSAIoctl for obtaining IPv6 address info. @@ -603,7 +605,7 @@ get_ip_interfaces_win32 (size_t &count, // kernel says there are no more of that type. const size_t ACE_MAX_ETS_DEVICES = 64; // Arbitrary, but should be enough. DEVHANDLE ip_dev[ACE_MAX_ETS_DEVICES]; - EK_TCPIPCFG *devp; + EK_TCPIPCFG *devp = 0; size_t i, j; ACE_TCHAR dev_name[16]; diff --git a/ACE/ace/Stack_Trace.cpp b/ACE/ace/Stack_Trace.cpp index c050aac5583..1fccc75fe8d 100644 --- a/ACE/ace/Stack_Trace.cpp +++ b/ACE/ace/Stack_Trace.cpp @@ -77,13 +77,13 @@ ACE_Stack_Trace::generate_trace (ssize_t starting_frame_offset, size_t num_frame { // this could be more efficient by remembering where we left off in buf_ char *symp = &stack_syms[i][0]; - while (this->buflen_ < SYMBUFSIZ && *symp != '\0') + while (this->buflen_ < SYMBUFSIZ - 2 && *symp != '\0') { this->buf_[this->buflen_++] = *symp++; } this->buf_[this->buflen_++] = '\n'; // put a newline at the end } - this->buf_[this->buflen_+1] = '\0'; // zero terminate the string + this->buf_[this->buflen_] = '\0'; // zero terminate the string ::free (stack_syms); } diff --git a/ACE/ace/Stats.cpp b/ACE/ace/Stats.cpp index 57f20799cc4..9166bee8ca6 100644 --- a/ACE/ace/Stats.cpp +++ b/ACE/ace/Stats.cpp @@ -273,15 +273,10 @@ ACE_Stats::print_summary (const u_int precision, } else { -#if !defined (ACE_HAS_WINCE) ACE_OS::fprintf (file, ACE_TEXT ("ACE_Stats::print_summary: OVERFLOW: %s\n"), ACE_OS::strerror (overflow_)); -#else - // WinCE doesn't have strerror ;( - ACE_OS::fprintf (file, - ACE_TEXT ("ACE_Stats::print_summary: OVERFLOW\n")); -#endif /* ACE_HAS_WINCE */ + return -1; } } diff --git a/ACE/ace/Strategies_T.h b/ACE/ace/Strategies_T.h index 2dd8c2fd543..1318f27fe5d 100644 --- a/ACE/ace/Strategies_T.h +++ b/ACE/ace/Strategies_T.h @@ -107,7 +107,7 @@ public: /** * Create a SVC_HANDLER with the appropriate creation strategy. The * default behavior of this method is to make a new SVC_HANDLER if - * @a sh == 0 (passing in the <Thread_Manager>), else @a sh is + * @a sh == 0 (passing in the Thread_Manager), else @a sh is * unchanged. Returns -1 on failure, else 0. */ virtual int make_svc_handler (SVC_HANDLER *&sh); @@ -262,7 +262,7 @@ public: // = Factory method. /** - * Activate the <svc_handler> with an appropriate concurrency + * Activate the @a svc_handler with an appropriate concurrency * strategy. The default behavior of this method is to activate the * SVC_HANDLER by calling its <open> method (which allows the * SVC_HANDLER to define its own concurrency strategy). @@ -321,7 +321,7 @@ public: virtual ~ACE_Reactive_Strategy (void); // = Factory method. - /// Activate the <svc_handler> by registering it with the <Reactor> + /// Activate the @a svc_handler by registering it with the <Reactor> /// and then calling it's <open> hook. virtual int activate_svc_handler (SVC_HANDLER *svc_handler, void *arg = 0); @@ -875,7 +875,7 @@ public: /// Template method for making a new <svc_handler> virtual int make_svc_handler (SVC_HANDLER *&sh); - /// Template method for activating a new <svc_handler> + /// Template method for activating a new @a svc_handler virtual int activate_svc_handler (SVC_HANDLER *svc_handler); /// Template method for setting the recycler information of the diff --git a/ACE/ace/Stream.h b/ACE/ace/Stream.h index da558b89d4b..2dc24b6da13 100644 --- a/ACE/ace/Stream.h +++ b/ACE/ace/Stream.h @@ -60,20 +60,20 @@ public: // = Initializatation and termination methods. /** - * Create a Stream consisting of <head> and <tail> as the Stream + * Create a Stream consisting of @a head and @a tail as the Stream * head and Stream tail, respectively. If these are 0 then the - * <ACE_Stream_Head> and <ACE_Stream_Tail> are used, respectively. - * <arg> is the value past in to the <open> methods of the tasks. + * ACE_Stream_Head and ACE_Stream_Tail are used, respectively. + * @a arg is the value past in to the <open> methods of the tasks. */ ACE_Stream (void *arg = 0, ACE_Module<ACE_SYNCH_USE> *head = 0, ACE_Module<ACE_SYNCH_USE> *tail = 0); /** - * Create a Stream consisting of <head> and <tail> as the Stream + * Create a Stream consisting of @a head and @a tail as the Stream * head and Stream tail, respectively. If these are 0 then the - * <ACE_Stream_Head> and <ACE_Stream_Tail> are used, respectively. - * <arg> is the value past in to the <open> methods of the tasks. + * ACE_Stream_Head and ACE_Stream_Tail are used, respectively. + * @a arg is the value past in to the @c open() methods of the tasks. */ virtual int open (void *arg, ACE_Module<ACE_SYNCH_USE> *head = 0, @@ -87,12 +87,12 @@ public: // = ACE_Stream plumbing operations - /// Add a new module <mod> right below the Stream head. The + /// Add a new module @a mod right below the Stream head. The /// <open()> hook methods of the <ACE_Tasks> in this ACE_Module /// are invoked to initialize the tasks. virtual int push (ACE_Module<ACE_SYNCH_USE> *mod); - /// Remove the <mod> right below the Stream head and close it down. + /// Remove the @a mod right below the Stream head and close it down. // The <close()> hook methods of the <ACE_Tasks> in this ACE_Module /// are invoked to cleanup the tasks. virtual int pop (int flags = M_DELETE); @@ -101,16 +101,16 @@ public: /// head). virtual int top (ACE_Module<ACE_SYNCH_USE> *&mod); - /// Insert a new module <mod> below the named module <prev_name>. + /// Insert a new module @a mod below the named module <prev_name>. virtual int insert (const ACE_TCHAR *prev_name, ACE_Module<ACE_SYNCH_USE> *mod); - /// Replace the named module <replace_name> with a new module <mod>. + /// Replace the named module @a replace_name with a new module @a mod. virtual int replace (const ACE_TCHAR *replace_name, ACE_Module<ACE_SYNCH_USE> *mod, int flags = M_DELETE); - /// Remove the named module <mod> from the stream. This bypasses the + /// Remove the named module @a mod from the stream. This bypasses the /// strict LIFO ordering of <push> and <pop>. virtual int remove (const ACE_TCHAR *mod, int flags = M_DELETE); @@ -206,7 +206,7 @@ public: // = Iteration methods. - /// Pass back the <next_item> that hasn't been seen in the set. + /// Pass back the @a next_item that hasn't been seen in the set. /// Returns 0 when all items have been seen, else 1. int next (const ACE_Module<ACE_SYNCH_USE> *&next_item); diff --git a/ACE/ace/String_Base.cpp b/ACE/ace/String_Base.cpp index fef051a19ed..7000454972f 100644 --- a/ACE/ace/String_Base.cpp +++ b/ACE/ace/String_Base.cpp @@ -394,8 +394,8 @@ ACE_String_Base<CHAR>::compare (const ACE_String_Base<CHAR> &s) const s.rep_, smaller_length * sizeof (CHAR)); - if (!result) - result = static_cast<int> (this->len_ - s.len_); + if (result == 0 && this->len_ != s.len_) + result = this->len_ > s.len_ ? 1 : -1; return result; } diff --git a/ACE/ace/TLI_Connector.cpp b/ACE/ace/TLI_Connector.cpp index 9a11d2c880b..eb909aadfaf 100644 --- a/ACE/ace/TLI_Connector.cpp +++ b/ACE/ace/TLI_Connector.cpp @@ -159,7 +159,7 @@ ACE_TLI_Connector::connect (ACE_TLI_Stream &new_stream, // non-blocking handle or whether there's really an error. if (t_errno == TNODATA) { - if (timeout->sec () == 0 && timeout->usec () == 0) + if (*timeout == ACE_Time_Value::zero) errno = EWOULDBLOCK; else result = this->complete (new_stream, 0, timeout); diff --git a/ACE/ace/TP_Reactor.cpp b/ACE/ace/TP_Reactor.cpp index f0df1119550..ea1988a4d42 100644 --- a/ACE/ace/TP_Reactor.cpp +++ b/ACE/ace/TP_Reactor.cpp @@ -657,7 +657,7 @@ ACE_TP_Reactor::notify_handle (ACE_HANDLE, { ACE_ERROR ((LM_ERROR, ACE_TEXT ("ACE_TP_Reactor::notify_handle: ") - ACE_TEXT ("Wrong version of notify_handle() got called \n"))); + ACE_TEXT ("Wrong version of notify_handle() got called\n"))); ACE_ASSERT (eh == 0); ACE_UNUSED_ARG (eh); diff --git a/ACE/ace/TSS_T.cpp b/ACE/ace/TSS_T.cpp index d5d4ef4a7e5..50bd097b2dc 100644 --- a/ACE/ace/TSS_T.cpp +++ b/ACE/ace/TSS_T.cpp @@ -72,8 +72,7 @@ ACE_TSS<TYPE>::dump (void) const ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this)); this->keylock_.dump (); ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("key_ = %d\n"), this->key_)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nonce_ = %d"), this->once_)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nonce_ = %d\n"), this->once_)); ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP)); #endif /* defined (ACE_HAS_THREADS) && (defined (ACE_HAS_THREAD_SPECIFIC_STORAGE) || defined (ACE_HAS_TSS_EMULATION)) */ #endif /* ACE_HAS_DUMP */ @@ -357,8 +356,7 @@ ACE_TSS_Guard<ACE_LOCK>::dump (void) const // ACE_TRACE ("ACE_TSS_Guard<ACE_LOCK>::dump"); ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("key_ = %d"), this->key_)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("key_ = %d\n"), this->key_)); ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP)); #endif /* ACE_HAS_DUMP */ } diff --git a/ACE/ace/Thread.cpp b/ACE/ace/Thread.cpp index fab00ea5e6b..c9398465240 100644 --- a/ACE/ace/Thread.cpp +++ b/ACE/ace/Thread.cpp @@ -26,22 +26,24 @@ ACE_Thread::spawn_n (size_t n, const char* thr_name[]) { ACE_TRACE ("ACE_Thread::spawn_n"); - ACE_thread_t t_id; size_t i; for (i = 0; i < n; i++) - // Bail out if error occurs. - if (ACE_OS::thr_create (func, - arg, - flags, - &t_id, - 0, - priority, - stack == 0 ? 0 : stack[i], - stack_size == 0 ? ACE_DEFAULT_THREAD_STACKSIZE : stack_size[i], - thread_adapter, - thr_name == 0 ? 0 : &thr_name[i]) != 0) - break; + { + ACE_thread_t t_id; + // Bail out if error occurs. + if (ACE_OS::thr_create (func, + arg, + flags, + &t_id, + 0, + priority, + stack == 0 ? 0 : stack[i], + stack_size == 0 ? ACE_DEFAULT_THREAD_STACKSIZE : stack_size[i], + thread_adapter, + thr_name == 0 ? 0 : &thr_name[i]) != 0) + break; + } return i; } diff --git a/ACE/ace/Thread_Manager.cpp b/ACE/ace/Thread_Manager.cpp index af93549cdfc..bf6e309f33f 100644 --- a/ACE/ace/Thread_Manager.cpp +++ b/ACE/ace/Thread_Manager.cpp @@ -252,7 +252,6 @@ ACE_Thread_Descriptor::dump (void) const ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nthr_handle_ = %d"), this->thr_handle_)); ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\ngrp_id_ = %d"), this->grp_id_)); ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nthr_state_ = %d"), this->thr_state_)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\ncleanup_info_.cleanup_hook_ = %x"), this->cleanup_info_.cleanup_hook_)); ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nflags_ = %x\n"), this->flags_)); ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP)); @@ -628,9 +627,9 @@ ACE_Thread_Manager::spawn_i (ACE_THR_FUNC func, // @@ How are thread handles implemented on AIX? Do they // also need to be duplicated? if (t_handle != 0) -# if defined (ACE_HAS_WINCE) +# if defined (ACE_LACKS_DUPLICATEHANDLE) *t_handle = thr_handle; -# else /* ! ACE_HAS_WINCE */ +# else /* ! ACE_LACKS_DUP */ (void) ::DuplicateHandle (::GetCurrentProcess (), thr_handle, ::GetCurrentProcess (), @@ -638,7 +637,7 @@ ACE_Thread_Manager::spawn_i (ACE_THR_FUNC func, 0, TRUE, DUPLICATE_SAME_ACCESS); -# endif /* ! ACE_HAS_WINCE */ +# endif /* ! ACE_LACKS_DUP */ #else /* ! ACE_HAS_WTHREADS */ if (t_handle != 0) *t_handle = thr_handle; @@ -898,14 +897,17 @@ ACE_Thread_Manager::run_thread_exit_hooks (int i) // generalized to support an arbitrary number of hooks. ACE_Thread_Descriptor *td = this->thread_desc_self (); - if (td != 0 && td->cleanup_info.cleanup_hook_ != 0) + for (ACE_Cleanup_Info_Node *iter = td->cleanup_info_->pop_front (); + iter != 0; + iter = cleanup_info_->pop_front ()) { - (*td->cleanup_info_.cleanup_hook_) - (td->cleanup_info_.object_, - td->cleanup_info_.param_); - - td->cleanup_info_.cleanup_hook_ = 0; + if (iter->cleanup_hook () != 0) + { + (*iter->cleanup_hook ()) (iter->object (), iter->param ()); + } + delete iter; } + ACE_UNUSED_ARG (i); #else ACE_UNUSED_ARG (i); diff --git a/ACE/ace/Thread_Manager.h b/ACE/ace/Thread_Manager.h index 9f7f65377c0..58fee2581ea 100644 --- a/ACE/ace/Thread_Manager.h +++ b/ACE/ace/Thread_Manager.h @@ -328,11 +328,14 @@ private: /// The AT_Thread_Exit list ACE_At_Thread_Exit *at_exit_list_; +#if 0 +/// Currently not used /** * Stores the cleanup info for a thread. * @note This should be generalized to be a stack of ACE_Cleanup_Info's. */ - ACE_Cleanup_Info cleanup_info_; + ACE_Cleanup_Info_Node_List cleanup_info_; +#endif /// Pointer to an ACE_Thread_Manager or NULL if there's no /// ACE_Thread_Manager> diff --git a/ACE/ace/Thread_Mutex.inl b/ACE/ace/Thread_Mutex.inl index 146521722dd..dbef586fbc3 100644 --- a/ACE/ace/Thread_Mutex.inl +++ b/ACE/ace/Thread_Mutex.inl @@ -86,7 +86,7 @@ ACE_Thread_Mutex::remove (void) { // ACE_TRACE ("ACE_Thread_Mutex::remove"); int result = 0; - if (this->removed_ == false) + if (!this->removed_) { this->removed_ = true; result = ACE_OS::thread_mutex_destroy (&this->lock_); diff --git a/ACE/ace/Time_Value.inl b/ACE/ace/Time_Value.inl index b64f1fbd7bc..49788e3fd98 100644 --- a/ACE/ace/Time_Value.inl +++ b/ACE/ace/Time_Value.inl @@ -69,7 +69,19 @@ ACE_INLINE void ACE_Time_Value::set (time_t sec, suseconds_t usec) { // ACE_OS_TRACE ("ACE_Time_Value::set"); +# if defined (_WIN32_WCE) && (_WIN32_WCE == 0x600) && !defined (_USE_32BIT_TIME_T) + // The WinCE 6.0 SDK ships with a timeval tv_sec member that uses long as type + // not time_t. This resolves in compilation warnings because time_t + // can be 64bit. Disable at this momemt the warning for just this method + // else we get a compile warnings each time this inline file is included + // this file. +# pragma warning (push) +# pragma warning (disable: 4244) +# endif this->tv_.tv_sec = sec; +# if defined (_WIN32_WCE) && (_WIN32_WCE == 0x600) && !defined (_USE_32BIT_TIME_T) +# pragma warning (pop) +# endif this->tv_.tv_usec = usec; #if __GNUC__ if (__builtin_constant_p(sec) && diff --git a/ACE/ace/Timer_Heap_T.cpp b/ACE/ace/Timer_Heap_T.cpp index b31aed4b46a..ab770b27e4c 100644 --- a/ACE/ace/Timer_Heap_T.cpp +++ b/ACE/ace/Timer_Heap_T.cpp @@ -349,7 +349,7 @@ ACE_Timer_Heap_T<TYPE, FUNCTOR, ACE_LOCK>::dump (void) const ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nmin_free_ = %d"), this->timer_ids_min_free_)); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nheap_ = \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nheap_ =\n"))); for (size_t i = 0; i < this->cur_size_; ++i) { @@ -359,7 +359,7 @@ ACE_Timer_Heap_T<TYPE, FUNCTOR, ACE_LOCK>::dump (void) const this->heap_[i]->dump (); } - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\ntimer_ids_ = \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\ntimer_ids_ =\n"))); for (size_t j = 0; j < this->max_size_; ++j) ACE_DEBUG ((LM_DEBUG, diff --git a/ACE/ace/Timer_Queue_T.cpp b/ACE/ace/Timer_Queue_T.cpp index 4643090ecd5..2ac9a29e9aa 100644 --- a/ACE/ace/Timer_Queue_T.cpp +++ b/ACE/ace/Timer_Queue_T.cpp @@ -166,7 +166,7 @@ ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::dump (void) const template <class TYPE, class FUNCTOR, class ACE_LOCK> ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::ACE_Timer_Queue_T (FUNCTOR *upcall_functor, - ACE_Free_List<ACE_Timer_Node_T <TYPE> > *freelist) + ACE_Free_List<ACE_Timer_Node_T <TYPE> > *freelist) : gettimeofday_ (ACE_OS::gettimeofday), delete_upcall_functor_ (upcall_functor == 0), delete_free_list_ (freelist == 0), diff --git a/ACE/ace/Timer_Wheel_T.cpp b/ACE/ace/Timer_Wheel_T.cpp index 2855de8a8a7..b860c1604dd 100644 --- a/ACE/ace/Timer_Wheel_T.cpp +++ b/ACE/ace/Timer_Wheel_T.cpp @@ -699,7 +699,7 @@ ACE_Timer_Wheel_T<TYPE, FUNCTOR, ACE_LOCK>::dump (void) const ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nresolution_ = %d"), 1 << this->res_bits_)); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("\nwheel_ = \n"))); + ACE_TEXT ("\nwheel_ =\n"))); for (u_int i = 0; i < this->spoke_count_; ++i) { diff --git a/ACE/ace/Token.cpp b/ACE/ace/Token.cpp index a209b02183d..5018881ff6f 100644 --- a/ACE/ace/Token.cpp +++ b/ACE/ace/Token.cpp @@ -216,7 +216,7 @@ ACE_Token::shared_acquire (void (*sleep_hook_func)(void *), } // Do a quick check for "polling" behavior. - if (timeout != 0 && timeout->sec () == 0 && timeout->usec () == 0) + if (timeout != 0 && *timeout == ACE_Time_Value::zero) { errno = ETIME; return -1; diff --git a/ACE/ace/Token_Invariants.cpp b/ACE/ace/Token_Invariants.cpp index fe411815dee..5e53f777087 100644 --- a/ACE/ace/Token_Invariants.cpp +++ b/ACE/ace/Token_Invariants.cpp @@ -3,6 +3,7 @@ #if defined (ACE_HAS_TOKENS_LIBRARY) #include "ace/Object_Manager.h" +#include "ace/os_include/os_typeinfo.h" ACE_RCSID (ace, Token_Invariants, @@ -31,7 +32,7 @@ ACE_Token_Invariant_Manager::instance (void) ACE_Token_Invariant_Manager, 0); // Register for destruction with ACE_Object_Manager. - ACE_Object_Manager::at_exit (instance_); + ACE_Object_Manager::at_exit (instance_, 0, typeid (instance_).name ()); } } diff --git a/ACE/ace/Token_Manager.cpp b/ACE/ace/Token_Manager.cpp index 0bc2a276494..f5eb16636ed 100644 --- a/ACE/ace/Token_Manager.cpp +++ b/ACE/ace/Token_Manager.cpp @@ -3,6 +3,7 @@ #if defined (ACE_HAS_TOKENS_LIBRARY) #include "ace/Object_Manager.h" +#include "ace/os_include/os_typeinfo.h" #if !defined (__ACE_INLINE__) #include "ace/Token_Manager.inl" @@ -61,7 +62,7 @@ ACE_Token_Manager::instance (void) ACE_Token_Manager, 0); // Register for destruction with ACE_Object_Manager. - ACE_Object_Manager::at_exit (token_manager_); + ACE_Object_Manager::at_exit (token_manager_, 0, typeid (token_manager_).name ()); } } diff --git a/ACE/ace/Truncate.h b/ACE/ace/Truncate.h index 1935bd6a80d..5e1bb7545da 100644 --- a/ACE/ace/Truncate.h +++ b/ACE/ace/Truncate.h @@ -27,18 +27,14 @@ #include "ace/If_Then_Else.h" #include "ace/Numeric_Limits.h" -#if defined (ACE_LACKS_LONGLONG_T) \ - || defined (__BORLANDC__) && __BORLANDC__ < 0x590 +#if defined (ACE_LACKS_LONGLONG_T) # include "ace/Basic_Types.h" -#endif /* ACE_LACKS_LONGLONG_T || __BORLANDC__ < 0x590 */ +#endif /* ACE_LACKS_LONGLONG_T */ ACE_BEGIN_VERSIONED_NAMESPACE_DECL namespace ACE_Utils { - -#if !defined (__BORLANDC__) || __BORLANDC__ >= 0x590 - template<typename T> struct Sign_Check; // Specialize the unsigned signed cases. @@ -512,540 +508,6 @@ namespace ACE_Utils return truncator() (val); } -#else - - // Borland can't handle the template meta-programming above so - // provide explicit specializations for a few types. More will be - // added if necessary. - - /** - * @deprecated Borland ACE_Utils::Truncator<> specializations should - * be removed. - */ - - template<typename FROM, typename TO> struct Truncator; - - //---------------------------------------------------------- - // sizeof(FROM) > sizeof(TO) - //---------------------------------------------------------- - - template<> - struct Truncator<ACE_INT32, ACE_INT8> - { - ACE_INT8 operator() (ACE_INT32 val) - { - return - (val > ACE_Numeric_Limits<ACE_INT8>::max () - ? ACE_Numeric_Limits<ACE_INT8>::max () - : static_cast<ACE_INT8> (val)); - } - }; - - template<> - struct Truncator<ACE_UINT32, ACE_UINT8> - { - ACE_UINT8 operator() (ACE_UINT32 val) - { - return - (val > static_cast<ACE_UINT32> (ACE_Numeric_Limits<ACE_UINT8>::max ()) - ? ACE_Numeric_Limits<ACE_UINT8>::max () - : static_cast<ACE_UINT8> (val)); - } - }; - - template<> - struct Truncator<ACE_INT32, ACE_UINT8> - { - ACE_UINT8 operator() (ACE_INT32 val) - { - return - (val > static_cast<ACE_INT32> (ACE_Numeric_Limits<ACE_UINT8>::max ()) - ? ACE_Numeric_Limits<ACE_UINT8>::max () - : static_cast<ACE_UINT8> (val)); - } - }; - - template<> - struct Truncator<ACE_UINT32, ACE_INT8> - { - ACE_INT8 operator() (ACE_UINT32 val) - { - return - (val > static_cast<ACE_UINT32> (ACE_Numeric_Limits<ACE_INT8>::max ()) - ? ACE_Numeric_Limits<ACE_INT8>::max () - : static_cast<ACE_INT8> (val)); - } - }; - -#if defined (ACE_SIZEOF_LONG) && ACE_SIZEOF_LONG < 8 - template<> - struct Truncator<ACE_INT64, signed long> - { - signed long operator() (ACE_INT64 val) - { - return - (val > ACE_Numeric_Limits<signed long>::max () - ? ACE_Numeric_Limits<signed long>::max () - : static_cast<signed long> (val)); - } - }; - - template<> - struct Truncator<ACE_INT64, unsigned long> - { - unsigned long operator() (ACE_INT64 val) - { - return - (val > static_cast<ACE_INT64> (ACE_Numeric_Limits<unsigned long>::max ()) - ? ACE_Numeric_Limits<unsigned long>::max () - : static_cast<unsigned long> (val)); - } - }; - - template<> - struct Truncator<ACE_UINT64, unsigned long> - { - unsigned long operator() (ACE_UINT64 val) - { - return - (val > static_cast<ACE_UINT64> (ACE_Numeric_Limits<unsigned long>::max ()) - ? ACE_Numeric_Limits<unsigned long>::max () - : static_cast<unsigned long> (val)); - } - }; - - template<> - struct Truncator<ACE_UINT64, signed long> - { - signed long operator() (ACE_UINT64 val) - { - return - (val > static_cast<ACE_UINT64> (ACE_Numeric_Limits<signed long>::max ()) - ? ACE_Numeric_Limits<signed long>::max () - : static_cast<signed long> (val)); - } - }; - - template<> - struct Truncator<const ACE_UINT64, signed long> - { - signed long operator() (const ACE_UINT64 val) - { - return - (val > static_cast<ACE_UINT64> (ACE_Numeric_Limits<signed long>::max ()) - ? ACE_Numeric_Limits<signed long>::max () - : static_cast<signed long> (val)); - } - }; - -#endif /* ACE_SIZEOF_LONG < 8 */ - -#if defined (ACE_SIZEOF_INT) && ACE_SIZEOF_INT < 8 - template<> - struct Truncator<ACE_INT64, signed int> - { - ACE_INT32 operator() (ACE_INT64 val) - { - return - (val > ACE_Numeric_Limits<signed int>::max () - ? ACE_Numeric_Limits<signed int>::max () - : static_cast<signed int> (val)); - } - }; - - template<> - struct Truncator<ACE_INT64, unsigned int> - { - ACE_UINT32 operator() (ACE_INT64 val) - { - return - (val > static_cast<ACE_INT64> (ACE_Numeric_Limits<unsigned int>::max ()) - ? ACE_Numeric_Limits<unsigned int>::max () - : static_cast<unsigned int> (val)); - } - }; - - template<> - struct Truncator<ACE_UINT64, unsigned int> - { - ACE_UINT32 operator() (ACE_UINT64 val) - { - return - (val > static_cast<ACE_UINT64> (ACE_Numeric_Limits<unsigned int>::max ()) - ? ACE_Numeric_Limits<unsigned int>::max () - : static_cast<unsigned int> (val)); - } - }; - - template<> - struct Truncator<ACE_UINT64, signed int> - { - signed int operator() (ACE_UINT64 val) - { - return - (val > static_cast<ACE_UINT64> (ACE_Numeric_Limits<signed int>::max ()) - ? ACE_Numeric_Limits<signed int>::max () - : static_cast<signed int> (val)); - } - }; - -#endif /* ACE_SIZEOF_INT < 8 */ - - //---------------------------------------------------------- - // sizeof(FROM) == sizeof(TO) - //---------------------------------------------------------- - - template<> - struct Truncator<unsigned int, char> - { - char operator() (unsigned int val) - { - return static_cast<char> (val); - } - }; - - template<> - struct Truncator<unsigned int, wchar_t> - { - wchar_t operator() (unsigned int val) - { - return static_cast<wchar_t> (val); - } - }; - - template<> - struct Truncator<signed int, unsigned int> - { - unsigned int operator() (signed int val) - { - return static_cast<unsigned int> (val); - } - }; - - template<> - struct Truncator<unsigned int, signed int> - { - signed int operator() (unsigned int val) - { - return - (val > static_cast<unsigned int> (ACE_Numeric_Limits<signed int>::max ()) - ? ACE_Numeric_Limits<signed int>::max () - : static_cast<signed int> (val)); - } - }; - - template<> - struct Truncator<const unsigned int, signed int> - { - signed int operator() (const unsigned int val) - { - return - (val > static_cast<unsigned int> (ACE_Numeric_Limits<signed int>::max ()) - ? ACE_Numeric_Limits<signed int>::max () - : static_cast<signed int> (val)); - } - }; - - template<> - struct Truncator<signed long, unsigned long> - { - unsigned long operator() (signed long val) - { - return static_cast<unsigned long> (val); - } - }; - - template<> - struct Truncator<unsigned long, signed long> - { - signed long operator() (unsigned long val) - { - return - (val > static_cast<unsigned long> (ACE_Numeric_Limits<signed long>::max ()) - ? ACE_Numeric_Limits<signed long>::max () - : static_cast<signed long> (val)); - } - }; - -#if defined (ACE_SIZEOF_INT) && defined (ACE_SIZEOF_LONG) \ - && ACE_SIZEOF_INT == ACE_SIZEOF_LONG - - template<> - struct Truncator<signed int, unsigned long> - { - unsigned long operator() (signed int val) - { - return static_cast<unsigned long> (val); - } - }; - - template<> - struct Truncator<signed int, signed long> - { - signed long operator() (signed int val) - { - return static_cast<signed long> (val); - } - }; - - template<> - struct Truncator<unsigned long, signed int> - { - signed int operator() (unsigned long val) - { - return - (val > static_cast<unsigned long> (ACE_Numeric_Limits<signed int>::max ()) - ? ACE_Numeric_Limits<signed int>::max () - : static_cast<signed int> (val)); - } - }; - - template<> - struct Truncator<signed long, signed int> - { - signed int operator() (signed long val) - { - return static_cast<signed int> (val); -// This code causes asserts and compiler crashes with BCB6 Static and -// BCB2007 Static -// return -// (val > static_cast<signed long> (ACE_Numeric_Limits<signed int>::max ()) -// ? ACE_Numeric_Limits<signed int>::max () -// : static_cast<signed int> (val)); - } - }; - - template<> - struct Truncator<signed long, unsigned int> - { - unsigned int operator() (signed long val) - { - return static_cast<unsigned int> (val); - } - }; - - template<> - struct Truncator<const signed long, unsigned int> - { - unsigned int operator() (const signed long val) - { - return static_cast<unsigned int> (val); - } - }; - - - template<> - struct Truncator<unsigned int, signed long> - { - signed long operator() (unsigned int val) - { - return - (val > static_cast<unsigned int> (ACE_Numeric_Limits<signed long>::max ()) - ? ACE_Numeric_Limits<signed long>::max () - : static_cast<signed long> (val)); - } - }; - -#endif /* ACE_SIZEOF_INT == ACE_SIZEOF_LONG */ - - template<> - struct Truncator<ACE_INT64, ACE_UINT64> - { - ACE_UINT64 operator() (ACE_INT64 val) - { - return static_cast<ACE_UINT64> (val); - } - }; - - template<> - struct Truncator<ACE_UINT64, ACE_INT64> - { - ACE_INT64 operator() (ACE_UINT64 val) - { - return - (val > static_cast<ACE_UINT64> (ACE_Numeric_Limits<ACE_INT64>::max ()) - ? ACE_Numeric_Limits<ACE_INT64>::max () - : static_cast<ACE_INT64> (val)); - } - }; - - //---------------------------------------------------------- - // sizeof(FROM) < sizeof(TO) - //---------------------------------------------------------- - - template<> - struct Truncator<ACE_INT8, ACE_INT32> - { - ACE_INT32 operator() (ACE_INT8 val) - { - return static_cast<ACE_INT32> (val); - } - }; - - template<> - struct Truncator<ACE_UINT8, ACE_UINT32> - { - ACE_UINT32 operator() (ACE_UINT8 val) - { - return static_cast<ACE_UINT32> (val); - } - }; - - template<> - struct Truncator<ACE_UINT8, ACE_INT32> - { - ACE_INT32 operator() (ACE_UINT8 val) - { - return static_cast<ACE_INT32> (val); - } - }; - - template<> - struct Truncator<ACE_INT8, ACE_UINT32> - { - ACE_UINT32 operator() (ACE_INT8 val) - { - return static_cast<ACE_UINT32> (val); - } - }; - -#if defined (ACE_SIZEOF_LONG) && ACE_SIZEOF_LONG < 8 - template<> - struct Truncator<signed long, ACE_INT64> - { - ACE_INT64 operator() (signed long val) - { - return static_cast<ACE_INT64> (val); - } - }; - - template<> - struct Truncator<signed long, ACE_UINT64> - { - ACE_UINT64 operator() (signed long val) - { - return static_cast<ACE_UINT64> (val); - } - }; - - template<> - struct Truncator<const signed long, ACE_UINT64> - { - ACE_UINT64 operator() (const signed long val) - { - return - (val > static_cast<ACE_UINT64> (ACE_Numeric_Limits<signed long>::max ()) - ? ACE_Numeric_Limits<signed long>::max () - : static_cast<signed long> (val)); - } - }; - - template<> - struct Truncator<unsigned long, ACE_UINT64> - { - ACE_UINT64 operator() (unsigned long val) - { - return static_cast<ACE_UINT64> (val); - } - }; - - template<> - struct Truncator<unsigned long, ACE_INT64> - { - ACE_INT64 operator() (unsigned long val) - { - return static_cast<ACE_INT64> (val); - } - }; -#endif /* ACE_SIZEOF_LONG < 8 */ - -#if defined (ACE_SIZEOF_INT) && ACE_SIZEOF_INT < 8 - template<> - struct Truncator<signed int, ACE_INT64> - { - ACE_INT64 operator() (signed int val) - { - return static_cast<ACE_INT64> (val); - } - }; - - template<> - struct Truncator<signed int, ACE_UINT64> - { - ACE_UINT64 operator() (signed int val) - { - return static_cast<ACE_UINT64> (val); - } - }; - - template<> - struct Truncator<unsigned int, ACE_UINT64> - { - ACE_UINT64 operator() (unsigned int val) - { - return static_cast<ACE_UINT64> (val); - } - }; - - template<> - struct Truncator<unsigned int, ACE_INT64> - { - ACE_INT64 operator() (unsigned int val) - { - return static_cast<ACE_INT64> (val); - } - }; -#endif /* ACE_SIZEOF_INT < 8 */ - - template<> - struct Truncator<size_t, unsigned long> - { - unsigned long operator() (size_t val) - { - return - (val > static_cast<unsigned long> (ACE_Numeric_Limits<size_t>::max ()) - ? ACE_Numeric_Limits<size_t>::max () - : static_cast<size_t> (val)); - } - }; - - // Partial specialization for the case where the types are the same. - // No truncation is necessary. - template<typename T> - struct Truncator<T, T> - { - T operator() (T val) - { - return val; - } - }; - - // Partial specialization for the case where the types are the same, - // but the from type is const. No truncation is necessary. - // - // This is only necessary to workaround a problem with the BCB6 - // compiler. - template<typename T> - struct Truncator<T const, T> - { - T operator() (T val) - { - return val; - } - }; - - // ------------------------------------- - - template<typename TO, typename FROM> - inline TO truncate_cast (FROM val) - { - typedef Truncator<FROM, TO> truncator; - - return truncator() (val); - } - -#endif /* !__BORLANDC__ || __BORLANDC__ >= 0x590 */ - } // namespace ACE_Utils ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ACE/ace/UTF16_Encoding_Converter.cpp b/ACE/ace/UTF16_Encoding_Converter.cpp index d57ab9e5154..f287f058712 100644 --- a/ACE/ace/UTF16_Encoding_Converter.cpp +++ b/ACE/ace/UTF16_Encoding_Converter.cpp @@ -305,7 +305,7 @@ ACE_UTF16_Encoding_Converter::encoded (const ACE_Byte* source, static const size_t converted = begin * 4; ACE_Byte target[converted]; - ACE_UTF16_Encoding_Converter* converter; + ACE_UTF16_Encoding_Converter* converter = 0; ACE_NEW_RETURN (converter, ACE_UTF16_Encoding_Converter (false), 0); diff --git a/ACE/ace/UUID.cpp b/ACE/ace/UUID.cpp index cf76579e594..2a4d4fe6e63 100644 --- a/ACE/ace/UUID.cpp +++ b/ACE/ace/UUID.cpp @@ -30,12 +30,24 @@ namespace ACE_Utils node_ID_[i] = 0; } - UUID_Node::Node_ID& + UUID_Node::UUID_Node (const UUID_Node & node) + { + for (int i = 0; i < UUID_Node::NODE_ID_SIZE; ++i) + this->node_ID_[i] = node.node_ID_[i]; + } + + UUID_Node::Node_ID & UUID_Node::node_ID (void) { return node_ID_; } + const UUID_Node::Node_ID & + UUID_Node::node_ID (void) const + { + return node_ID_; + } + void UUID_Node::node_ID (Node_ID& node_ID) { @@ -43,6 +55,20 @@ namespace ACE_Utils node_ID_[i] = node_ID[i]; } + const UUID_Node & + UUID_Node::operator = (const UUID_Node & rhs) + { + // Check for self assignment. + if (this == &rhs) + return *this; + + // Copy the content of the node id. + for (int i = 0; i < UUID_Node::NODE_ID_SIZE; ++i) + this->node_ID_[i] = rhs.node_ID_[i]; + + return *this; + } + UUID UUID::NIL_UUID; /// Construct a nil UUID. Such a UUID has every one of it's data @@ -52,13 +78,9 @@ namespace ACE_Utils time_mid_ (0), time_hi_and_version_ (0), clock_seq_hi_and_reserved_ (0), - clock_seq_low_ (0), - node_ (0), - node_release_ (true), - as_string_ (0) + clock_seq_low_ (0) { - ACE_NEW (node_, - UUID_Node); + } /// Construct a UUID from a string representation of an UUID. @@ -67,14 +89,8 @@ namespace ACE_Utils time_mid_ (0), time_hi_and_version_ (0), clock_seq_hi_and_reserved_ (0), - clock_seq_low_ (0), - node_ (0), - node_release_ (true), - as_string_ (0) + clock_seq_low_ (0) { - ACE_NEW (node_, - UUID_Node); - this->from_string_i (uuid_string); } @@ -84,29 +100,44 @@ namespace ACE_Utils time_hi_and_version_ (right.time_hi_and_version_), clock_seq_hi_and_reserved_ (right.clock_seq_hi_and_reserved_), clock_seq_low_ (right.clock_seq_low_), - as_string_ (0) + node_ (right.node_) { - ACE_NEW (node_, - UUID_Node (*right.node_)); + } UUID::~UUID (void) { - if (node_release_) - delete node_; - if (as_string_ != 0) - delete as_string_; + } + + const UUID & + UUID::operator = (const UUID & rhs) + { + if (this == &rhs) + return *this; + + // Copy the values of the UUID. + this->time_low_ = rhs.time_low_; + this->time_mid_ = rhs.time_mid_; + this->time_hi_and_version_ = rhs.time_hi_and_version_; + this->clock_seq_hi_and_reserved_ = rhs.clock_seq_hi_and_reserved_; + this->clock_seq_low_ = rhs.clock_seq_low_; + this->node_ = rhs.node_; + + // Delete the string version of the UUID. + this->as_string_.reset (0); + return *this; } const ACE_CString* - UUID::to_string (void) + UUID::to_string (void) const { /// Only compute the string representation once. - if (as_string_ == 0) + if (this->as_string_.get () == 0) { // Get a buffer exactly the correct size. Use the nil UUID as a // gauge. Don't forget the trailing nul. + ACE_Auto_Array_Ptr <char> auto_clean; size_t UUID_STRING_LENGTH = 36 + thr_id_.length () + pid_.length (); char *buf = 0; @@ -117,6 +148,9 @@ namespace ACE_Utils char[UUID_STRING_LENGTH + 1], 0); + // Let the auto array pointer manage the buffer. + auto_clean.reset (buf); + ACE_OS::sprintf (buf, "%8.8x-%4.4x-%4.4x-%2.2x%2.2x-%2.2x%2.2x%2.2x%2.2x%2.2x%2.2x-%s-%s", this->time_low_, @@ -124,12 +158,12 @@ namespace ACE_Utils this->time_hi_and_version_, this->clock_seq_hi_and_reserved_, this->clock_seq_low_, - (this->node_->node_ID ()) [0], - (this->node_->node_ID ()) [1], - (this->node_->node_ID ()) [2], - (this->node_->node_ID ()) [3], - (this->node_->node_ID ()) [4], - (this->node_->node_ID ()) [5], + (this->node_.node_ID ()) [0], + (this->node_.node_ID ()) [1], + (this->node_.node_ID ()) [2], + (this->node_.node_ID ()) [3], + (this->node_.node_ID ()) [4], + (this->node_.node_ID ()) [5], thr_id_.c_str (), pid_.c_str () ); @@ -140,6 +174,9 @@ namespace ACE_Utils char[UUID_STRING_LENGTH + 1], 0); + // Let the auto array pointer manage the buffer. + auto_clean.reset (buf); + ACE_OS::sprintf (buf, "%8.8x-%4.4x-%4.4x-%2.2x%2.2x-%2.2x%2.2x%2.2x%2.2x%2.2x%2.2x", this->time_low_, @@ -147,30 +184,26 @@ namespace ACE_Utils this->time_hi_and_version_, this->clock_seq_hi_and_reserved_, this->clock_seq_low_, - (this->node_->node_ID ()) [0], - (this->node_->node_ID ()) [1], - (this->node_->node_ID ()) [2], - (this->node_->node_ID ()) [3], - (this->node_->node_ID ()) [4], - (this->node_->node_ID ()) [5] + (this->node_.node_ID ()) [0], + (this->node_.node_ID ()) [1], + (this->node_.node_ID ()) [2], + (this->node_.node_ID ()) [3], + (this->node_.node_ID ()) [4], + (this->node_.node_ID ()) [5] ); } - // We allocated 'buf' above dynamically, so we shouldn't use - // ACE_NEW_RETURN here to avoid a possible memory leak. - ACE_NEW_NORETURN (this->as_string_, - ACE_CString (buf, UUID_STRING_LENGTH)); + // Save the string. + ACE_CString * as_string = 0; - // we first free the dynamically allocated 'buf'. - delete [] buf; + ACE_NEW_RETURN (as_string, + ACE_CString (buf, UUID_STRING_LENGTH), + 0); - // then we test that ACE_NEW succeded for 'as_string_' - // if not, we return 0 (NULL) to indicate failure. - if (this->as_string_ == 0 ) - return 0; + this->as_string_.reset (as_string); } - return as_string_; + return this->as_string_.get (); } void @@ -187,10 +220,7 @@ namespace ACE_Utils /// Special case for the nil UUID. if (uuid_string == *NIL_UUID.to_string ()) { - bool copy_constructor_not_supported = false; - ACE_ASSERT (copy_constructor_not_supported); - //*this = NIL_UUID; - ACE_UNUSED_ARG (copy_constructor_not_supported); + *this = NIL_UUID; return; } @@ -293,9 +323,9 @@ namespace ACE_Utils UUID_Node::Node_ID node_id; for (int i = 0; i < UUID_Node::NODE_ID_SIZE; ++i) - node_id [i] = static_cast<u_char> (node[i]); + node_id[i] = static_cast<u_char> (node[i]); - this->node_->node_ID (node_id); + this->node_.node_ID (node_id); // Support varient 10- only if ((this->clock_seq_hi_and_reserved_ & 0xc0) != 0x80 && (this->clock_seq_hi_and_reserved_ & 0xc0) != 0xc0) @@ -336,7 +366,7 @@ namespace ACE_Utils "IllegalArgument (Thread and Process Id format incorrect)\n")); this->thr_id_ = thr_pid_str.substr (0, pos); - this->pid_ = thr_pid_str.substr (pos+1, thr_pid_str.length ()-pos-1); + this->pid_ = thr_pid_str.substr (pos+1, thr_pid_str.length ()-pos-1); } } @@ -461,7 +491,7 @@ namespace ACE_Utils // sequence. if (timestamp <= time_last_) { - uuid_state_.clock_sequence = static_cast<ACE_UINT16> + uuid_state_.clock_sequence = static_cast<ACE_UINT16> ((uuid_state_.clock_sequence + 1) & ACE_UUID_CLOCK_SEQ_MASK); } // If the system time ticked since the last UUID was diff --git a/ACE/ace/UUID.h b/ACE/ace/UUID.h index 5be6a4c065a..06f09a95404 100644 --- a/ACE/ace/UUID.h +++ b/ACE/ace/UUID.h @@ -33,14 +33,25 @@ namespace ACE_Utils class ACE_Export UUID_Node { public: + /// Size of the node in bytes. + enum {NODE_ID_SIZE = 6}; - /// Constructor + /// Type definition of the node. + typedef u_char Node_ID[NODE_ID_SIZE]; + + /// Default constructor UUID_Node (void); - enum {NODE_ID_SIZE = 6}; - typedef u_char Node_ID[NODE_ID_SIZE]; + /** + * Copy constructor. + * + * @param[in] node Source node. + */ + UUID_Node (const UUID_Node & node); Node_ID &node_ID (void); + const Node_ID &node_ID (void) const; + void node_ID (Node_ID&); ///// Equality Operations @@ -50,7 +61,11 @@ namespace ACE_Utils ///// Relational Operations //bool operator < (const UUID_Node& right) const; + /// Assign the value of an existing node id to this object. + const UUID_Node & operator = (const UUID_Node & rhs); + private: + /// The value of the node id. Node_ID node_ID_; }; @@ -102,8 +117,10 @@ namespace ACE_Utils u_char clock_seq_low (void) const; void clock_seq_low (u_char); - UUID_Node* node (void) const; - void node (UUID_Node*); + UUID_Node* node (void); + const UUID_Node* node (void) const; + + void node (const UUID_Node*); ACE_CString* thr_id (void); void thr_id (char*); @@ -112,7 +129,7 @@ namespace ACE_Utils void pid (char*); /// Returns a string representation of the UUID - const ACE_CString* to_string (void); + const ACE_CString* to_string (void) const; /// Set the value using a string void from_string (const ACE_CString& uuid_string); @@ -129,25 +146,32 @@ namespace ACE_Utils //bool operator<= (const UUID &right) const; //bool operator>= (const UUID &right) const; + /// Assign an existing UUID to this UUID. + const UUID & operator = (const UUID & rhs); + private: + /** + * Helper method to convert from a string UUID. + * + * @param[in] uuid_string String version of UUID. + */ void from_string_i (const ACE_CString& uuid_string); - UUID& operator= (const UUID&); - /// Data Members for Class Attributes ACE_UINT32 time_low_; ACE_UINT16 time_mid_; ACE_UINT16 time_hi_and_version_; u_char clock_seq_hi_and_reserved_; u_char clock_seq_low_; - UUID_Node* node_; - bool node_release_; + + UUID_Node node_; + ACE_CString thr_id_; ACE_CString pid_; /// The string representation of the UUID. This is created and /// updated only on demand. - ACE_CString *as_string_; + mutable ACE_Auto_Ptr <ACE_CString> as_string_; }; /** @@ -209,7 +233,7 @@ namespace ACE_Utils /// Obtain a UUID timestamp and clock sequence. Compensate for the /// fact that the time obtained from getSystem time has a /// resolution less than 100ns. - void get_timestamp_and_clocksequence (UUID_Time& timestamp, + void get_timestamp_and_clocksequence (UUID_Time& timestamp, ACE_UINT16& clockSequence); /// Obtain the system time in UTC as a count of 100 nanosecond intervals diff --git a/ACE/ace/UUID.inl b/ACE/ace/UUID.inl index 89526473b0a..bbc494197bd 100644 --- a/ACE/ace/UUID.inl +++ b/ACE/ace/UUID.inl @@ -68,20 +68,22 @@ namespace ACE_Utils this->clock_seq_low_ = clock_seq_low; } - ACE_INLINE UUID_Node* + ACE_INLINE const UUID_Node* UUID::node (void) const { - return this->node_; + return &this->node_; } - ACE_INLINE void - UUID::node (UUID_Node* node) + ACE_INLINE UUID_Node* + UUID::node (void) { - if (node_release_) - delete node_; + return &this->node_; + } - this->node_ = node; - node_release_ = false; + ACE_INLINE void + UUID::node (const UUID_Node* node) + { + this->node_ = *node; } ACE_INLINE ACE_CString* @@ -122,7 +124,7 @@ namespace ACE_Utils (this->time_hi_and_version_ != right.time_hi_and_version ()) || (this->clock_seq_hi_and_reserved_ != right.clock_seq_hi_and_reserved ()) || (this->clock_seq_low_ != right.clock_seq_low ()) || - (*this->node_ != *right.node ())) + (this->node_ != *right.node ())) return false; return true; diff --git a/ACE/ace/Unbounded_Queue.h b/ACE/ace/Unbounded_Queue.h index ae70125ffbd..3a750b0302d 100644 --- a/ACE/ace/Unbounded_Queue.h +++ b/ACE/ace/Unbounded_Queue.h @@ -185,17 +185,17 @@ public: // = Check boundary conditions. - /// Returns 1 if the container is empty, otherwise returns 0. + /// Returns true if the container is empty, otherwise returns false. /** * Constant time check to see if the queue is empty. */ - int is_empty (void) const; + bool is_empty (void) const; /// Returns 0. /** * The queue cannot be full, so it always returns 0. */ - int is_full (void) const; + bool is_full (void) const; // = Classic queue operations. diff --git a/ACE/ace/Unbounded_Queue.inl b/ACE/ace/Unbounded_Queue.inl index 35bb7fb9cdf..b7d814e9780 100644 --- a/ACE/ace/Unbounded_Queue.inl +++ b/ACE/ace/Unbounded_Queue.inl @@ -10,18 +10,18 @@ ACE_Unbounded_Queue<T>::size (void) const return this->cur_size_; } -template <class T> ACE_INLINE int +template <class T> ACE_INLINE bool ACE_Unbounded_Queue<T>::is_empty (void) const { // ACE_TRACE ("ACE_Unbounded_Queue<T>::is_empty"); return this->head_ == this->head_->next_; } -template <class T> ACE_INLINE int +template <class T> ACE_INLINE bool ACE_Unbounded_Queue<T>::is_full (void) const { // ACE_TRACE ("ACE_Unbounded_Queue<T>::is_full"); - return 0; // We should implement a "node of last resort for this..." + return false; // We should implement a "node of last resort for this..." } ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ACE/ace/Unbounded_Set_Ex.h b/ACE/ace/Unbounded_Set_Ex.h index 6ecbe314b8b..31f92e3009d 100644 --- a/ACE/ace/Unbounded_Set_Ex.h +++ b/ACE/ace/Unbounded_Set_Ex.h @@ -48,7 +48,7 @@ public: // = Iteration methods. - /// Pass back the <next_item> that hasn't been seen in the Set. + /// Pass back the @a next_item that hasn't been seen in the Set. /// Returns 0 when all items have been seen, else 1. int next (T *&next_item); @@ -163,7 +163,7 @@ private: * allow duplicates, but it maintains FIFO ordering of insertions. * * This implementation may also be parameterized with a comparator - * functor, which must implement bool operator () (const T&, const T&) const, + * functor, which must implement bool operator () (const T&, const T&) const, * returning true if the given items are equivalent. The default comparator * is sufficient for objects reliably compared with operator==. * @@ -205,7 +205,7 @@ public: typedef ACE_Unbounded_Set_Ex_Const_Iterator<T, C> const_iterator; typedef C COMP; typedef ACE_Node<T, C> NODE; - + // = Initialization and termination methods. /// Constructor. Use user specified allocation strategy /// if specified. @@ -324,7 +324,7 @@ private: /// Allocation strategy of the set. ACE_Allocator *allocator_; - + /// Comparator to be used COMP comp_; }; diff --git a/ACE/ace/Vector_T.h b/ACE/ace/Vector_T.h index d6a6b455099..0327c07beff 100644 --- a/ACE/ace/Vector_T.h +++ b/ACE/ace/Vector_T.h @@ -170,14 +170,14 @@ public: // = Compare operators - ///Equality comparison operator. + /// Equality comparison operator. /** * Compare this vector with @arg s for equality. Two vectors are equal * if their sizes are equal and all the elements are equal. */ bool operator== (const ACE_Vector<T, DEFAULT_SIZE> &s) const; - ///Inequality comparison operator. + /// Inequality comparison operator. /** * Compare this vector with @arg s for inequality such that @c *this != * @arg s is always the complement of the boolean return value of @@ -272,7 +272,7 @@ public: // = Iteration methods. - /// Pass back the <next_item> that hasn't been seen in the vector. + /// Pass back the @a next_item that hasn't been seen in the vector. /// Returns 0 when all items have been seen, else 1. int next (T *&next_item); diff --git a/ACE/ace/Version.h b/ACE/ace/Version.h index 07ed2ba9b6e..cf0e71ac6f6 100644 --- a/ACE/ace/Version.h +++ b/ACE/ace/Version.h @@ -5,5 +5,5 @@ #define ACE_MAJOR_VERSION 5 #define ACE_MINOR_VERSION 6 -#define ACE_BETA_VERSION 6 -#define ACE_VERSION "5.6.6" +#define ACE_BETA_VERSION 8 +#define ACE_VERSION "5.6.8" diff --git a/ACE/ace/WFMO_Reactor.cpp b/ACE/ace/WFMO_Reactor.cpp index b2f849ae3ad..d498cc77da8 100644 --- a/ACE/ace/WFMO_Reactor.cpp +++ b/ACE/ace/WFMO_Reactor.cpp @@ -1756,9 +1756,12 @@ ACE_WFMO_Reactor::ok_to_wait (ACE_Time_Value *max_wait_time, // grab the lock and recheck the ok_to_wait_ event. When we can get them // both, or there's an error/timeout, return. #if defined (ACE_HAS_WINCE) - ACE_Time_Value timeout = ACE_OS::gettimeofday (); + ACE_Time_Value timeout; if (max_wait_time != 0) - timeout += *max_wait_time; + { + timeout = ACE_OS::gettimeofday (); + timeout += *max_wait_time; + } while (1) { int status; @@ -1773,14 +1776,15 @@ ACE_WFMO_Reactor::ok_to_wait (ACE_Time_Value *max_wait_time, if (max_wait_time == 0) status = this->lock_.acquire (); else - status = this->lock_.acquire (timeout); + { + status = this->lock_.acquire (timeout); + } if (status == -1) return -1; // Have the lock_, now re-check the event. If it's not signaled, // another thread changed something so go back and wait again. - ACE_Time_Value poll_it = ACE_OS::gettimeofday (); - if (this->ok_to_wait_.wait (&poll_it) == 0) + if (this->ok_to_wait_.wait (&ACE_Time_Value::zero, 0) == 0) break; this->lock_.release (); } @@ -1899,10 +1903,8 @@ ACE_WFMO_Reactor::expire_timers (void) int ACE_WFMO_Reactor::dispatch (DWORD wait_status) { - int handlers_dispatched = 0; - // Expire timers - handlers_dispatched += this->expire_timers (); + int handlers_dispatched = this->expire_timers (); switch (wait_status) { @@ -1937,7 +1939,7 @@ ACE_WFMO_Reactor::dispatch_handles (DWORD wait_status) DWORD dispatch_slot = 0; // Cache this value, this is the absolute value. - DWORD max_handlep1 = this->handler_rep_.max_handlep1 (); + DWORD const max_handlep1 = this->handler_rep_.max_handlep1 (); // nCount starts off at <max_handlep1>, this is a transient count of // handles last waited on. @@ -1951,9 +1953,9 @@ ACE_WFMO_Reactor::dispatch_handles (DWORD wait_status) #if ! defined(__BORLANDC__) \ && !defined (ghs) \ && !defined (__MINGW32__) \ - && !(defined (_MSC_VER) && _MSC_VER >= 1300) + && !defined (_MSC_VER) // wait_status is unsigned in Borland, Green Hills, - // mingw32 and MSVC++ >= 7.1. + // mingw32 and MSVC++ // This >= is always true, with a warning. wait_status >= WAIT_OBJECT_0 && #endif @@ -2215,7 +2217,7 @@ ACE_WFMO_Reactor::upcall (ACE_Event_Handler *event_handler, } } - if (ACE_BIT_ENABLED (actual_events, FD_ACCEPT)) + if (ACE_BIT_ENABLED (actual_events, FD_ACCEPT)) { action = event_handler->handle_input (io_handle); if (action <= 0) diff --git a/ACE/ace/WFMO_Reactor.h b/ACE/ace/WFMO_Reactor.h index a0ad4c95d4b..7731da3c942 100644 --- a/ACE/ace/WFMO_Reactor.h +++ b/ACE/ace/WFMO_Reactor.h @@ -419,8 +419,8 @@ public: /** * Check to see if @a handle is associated with a valid Event_Handler - * bound to @a mask. Return the <event_handler> associated with this - * @a handler if <event_handler> != 0. + * bound to @a mask. Return the @a event_handler associated with this + * @a handler if @a event_handler != 0. */ int handler (ACE_HANDLE handle, ACE_Reactor_Mask mask, @@ -510,7 +510,7 @@ public: /** * Special trick to unblock <WaitForMultipleObjects> when updates - * occur. All we do is enqueue <event_handler> and @a mask onto the + * occur. All we do is enqueue @a event_handler and @a mask onto the * ACE_Message_Queue and wakeup the <WFMO_Reactor> by signaling * its <ACE_Event> handle. The ACE_Time_Value indicates how long * to blocking trying to notify the <WFMO_Reactor>. If @a timeout == @@ -549,7 +549,7 @@ public: /** * Set the maximum number of times that the * <ACE_WFMO_Reactor_Notify::handle_input> method will iterate and - * dispatch the <ACE_Event_Handlers> that are passed in via the + * dispatch the ACE_Event_Handlers that are passed in via the * notify queue before breaking out of its * <ACE_Message_Queue::dequeue> loop. By default, this is set to * -1, which means "iterate until the queue is empty." Setting this @@ -562,7 +562,7 @@ public: /** * Get the maximum number of times that the * <ACE_WFMO_Reactor_Notify::handle_input> method will iterate and - * dispatch the <ACE_Event_Handlers> that are passed in via the + * dispatch the ACE_Event_Handlers that are passed in via the * notify queue before breaking out of its * <ACE_Message_Queue::dequeue> loop. */ @@ -588,7 +588,7 @@ private: /** * Called when the notification event waited on by * <ACE_WFMO_Reactor> is signaled. This dequeues all pending - * <ACE_Event_Handlers> and dispatches them. + * ACE_Event_Handlers and dispatches them. */ virtual int handle_signal (int signum, siginfo_t * = 0, ucontext_t * = 0); @@ -596,7 +596,7 @@ private: /// thread up (e.g., when the <notify> method is called). ACE_Auto_Event wakeup_one_thread_; - /// Message queue that keeps track of pending <ACE_Event_Handlers>. + /// Message queue that keeps track of pending ACE_Event_Handlers. /// This queue must be thread-safe because it can be called by /// multiple threads of control. ACE_Message_Queue<ACE_MT_SYNCH> message_queue_; @@ -604,7 +604,7 @@ private: /** * Keeps track of the maximum number of times that the * <ACE_WFMO_Reactor_Notify::handle_input> method will iterate and - * dispatch the <ACE_Event_Handlers> that are passed in via the + * dispatch the ACE_Event_Handlers that are passed in via the * notify queue before breaking out of its * <ACE_Message_Queue::dequeue> loop. By default, this is set to * -1, which means "iterate until the queue is empty." @@ -788,13 +788,13 @@ public: // = Register and remove Handlers. /** - * Register an ACE_Event_Handler <event_handler>. Since no Event + * Register an ACE_Event_Handler @a event_handler. Since no Event * Mask is passed through this interface, it is assumed that the * @a handle being passed in is an event handle and when the event * becomes signaled, <WFMO_Reactor> will call handle_signal on - * <event_handler>. If @a handle == <ACE_INVALID_HANDLE> the + * @a event_handler. If @a handle == <ACE_INVALID_HANDLE> the * <ACE_WFMO_Reactor> will call the <get_handle> method of - * <event_handler> to extract the underlying event handle. + * @a event_handler to extract the underlying event handle. */ virtual int register_handler (ACE_Event_Handler *event_handler, ACE_HANDLE event_handle = ACE_INVALID_HANDLE); @@ -833,16 +833,16 @@ public: virtual int register_handler (ACE_Event_Handler *event_handler, ACE_Reactor_Mask mask); - /// Register <event_handler> with all the <handles> in the + /// Register @a event_handler with all the @a handles in the /// <Handle_Set>. virtual int register_handler (const ACE_Handle_Set &handles, ACE_Event_Handler *event_handler, ACE_Reactor_Mask mask); /** - * Register <new_sh> to handle the signal @a signum using the - * <new_disp>. Returns the <old_sh> that was previously registered - * (if any), along with the <old_disp> of the signal handler. + * Register @a new_sh to handle the signal @a signum using the + * @a new_disp. Returns the @a old_sh that was previously registered + * (if any), along with the @a old_disp of the signal handler. */ virtual int register_handler (int signum, ACE_Event_Handler *new_sh, @@ -850,18 +850,18 @@ public: ACE_Event_Handler **old_sh = 0, ACE_Sig_Action *old_disp = 0); - /// Registers <new_sh> to handle a set of signals <sigset> using the - /// <new_disp>. + /// Registers @a new_sh to handle a set of signals @a sigset using the + /// @a new_disp. virtual int register_handler (const ACE_Sig_Set &sigset, ACE_Event_Handler *new_sh, ACE_Sig_Action *new_disp = 0); /** - * Removes <event_handler> from the <ACE_WFMO_Reactor>. Note that + * Removes @a event_handler from the <ACE_WFMO_Reactor>. Note that * the <ACE_WFMO_Reactor> will call the <get_handle> method of - * <event_handler> to extract the underlying handle. If @a mask == + * @a event_handler to extract the underlying handle. If @a mask == * ACE_Event_Handler::DONT_CALL then the <handle_close> method of - * the <event_handler> is not invoked. Note that the @a handle can + * the @a event_handler is not invoked. Note that the @a handle can * either be the <event_handle> or the <io_handle> */ virtual int remove_handler (ACE_Event_Handler *event_handler, @@ -884,7 +884,7 @@ public: ACE_Reactor_Mask mask); /** - * Removes all the @a mask bindings for handles in the <handle_set> + * Removes all the @a mask bindings for handles in the @a handle_set * bind of <Event_Handler>. If there are no more bindings for any * of these handles then they are removed from WFMO_Reactor. */ @@ -903,32 +903,32 @@ public: ACE_Sig_Action *old_disp = 0, int sigkey = -1); - /// Calls <remove_handler> for every signal in <sigset>. + /// Calls <remove_handler> for every signal in @a sigset. virtual int remove_handler (const ACE_Sig_Set &sigset); // = Suspend and resume Handlers. - /// Suspend <event_handler> temporarily. Use + /// Suspend @a event_handler temporarily. Use /// <ACE_Event_Handler::get_handle> to get the handle. virtual int suspend_handler (ACE_Event_Handler *event_handler); /// Suspend @a handle temporarily. virtual int suspend_handler (ACE_HANDLE handle); - /// Suspend all <handles> in handle set temporarily. + /// Suspend all @a handles in handle set temporarily. virtual int suspend_handler (const ACE_Handle_Set &handles); /// Suspend all <handles> temporarily. virtual int suspend_handlers (void); - /// Resume <event_handler>. Use <ACE_Event_Handler::get_handle> to + /// Resume @a event_handler. Use <ACE_Event_Handler::get_handle> to /// get the handle. virtual int resume_handler (ACE_Event_Handler *event_handler); /// Resume @a handle. virtual int resume_handler (ACE_HANDLE handle); - /// Resume all <handles> in handle set. + /// Resume all @a handles in handle set. virtual int resume_handler (const ACE_Handle_Set &handles); /// Resume all <handles>. @@ -983,7 +983,7 @@ public: const ACE_Time_Value &interval); /// Cancel all Event_Handlers that match the address of - /// <event_handler>. Returns number of handler's cancelled. + /// @a event_handler. Returns number of handler's cancelled. virtual int cancel_timer (ACE_Event_Handler *event_handler, int dont_call_handle_close = 1); @@ -1003,8 +1003,8 @@ public: // = High-level Event_Handler scheduling operations /** - * Add @a masks_to_be_added to the <event_handler>'s entry in - * WFMO_Reactor. <event_handler> must already have been registered + * Add @a masks_to_be_added to the @a event_handler's entry in + * WFMO_Reactor. @a event_handler must already have been registered * with WFMO_Reactor. */ virtual int schedule_wakeup (ACE_Event_Handler *event_handler, @@ -1051,7 +1051,7 @@ public: /** * Set the maximum number of times that the * <ACE_WFMO_Reactor_Notify::handle_input> method will iterate and - * dispatch the <ACE_Event_Handlers> that are passed in via the + * dispatch the ACE_Event_Handlers that are passed in via the * notify queue before breaking out of its * <ACE_Message_Queue::dequeue> loop. By default, this is set to * -1, which means "iterate until the queue is empty." Setting this @@ -1064,7 +1064,7 @@ public: /** * Get the maximum number of times that the * <ACE_WFMO_Reactor_Notify::handle_input> method will iterate and - * dispatch the <ACE_Event_Handlers> that are passed in via the + * dispatch the ACE_Event_Handlers that are passed in via the * notify queue before breaking out of its * <ACE_Message_Queue::dequeue> loop. */ @@ -1088,8 +1088,8 @@ public: /** * Check to see if <handle> is associated with a valid Event_Handler - * bound to @a mask. Return the <event_handler> associated with this - * @a handler if <event_handler> != 0. + * bound to @a mask. Return the @a event_handler associated with this + * @a handler if @a event_handler != 0. */ virtual int handler (ACE_HANDLE handle, ACE_Reactor_Mask mask, @@ -1119,7 +1119,7 @@ public: virtual void wakeup_all_threads (void); /** - * Transfers ownership of the WFMO_Reactor to the <new_owner>. The + * Transfers ownership of the WFMO_Reactor to the @a new_owner. The * transfer will not complete until all threads are ready (just like * the handle set). */ @@ -1143,8 +1143,8 @@ public: // = Low-level wait_set mask manipulation methods. /** - * Modify @a masks of the <event_handler>'s entry in WFMO_Reactor - * depending upon <operation>. <event_handler> must already have + * Modify @a masks of the @a event_handler's entry in WFMO_Reactor + * depending upon <operation>. @a event_handler must already have * been registered with WFMO_Reactor. */ virtual int mask_ops (ACE_Event_Handler *event_handler, @@ -1308,7 +1308,7 @@ protected: /** * A manual event is used so that we can wake everyone up (e.g., - * when <ACE_Event_Handlers> are bounded and unbound from the + * when ACE_Event_Handlers are bounded and unbound from the * handler repository). */ ACE_Manual_Event wakeup_all_threads_; diff --git a/ACE/ace/WIN32_Asynch_IO.cpp b/ACE/ace/WIN32_Asynch_IO.cpp index b5249884524..21ccc7a85cd 100644 --- a/ACE/ace/WIN32_Asynch_IO.cpp +++ b/ACE/ace/WIN32_Asynch_IO.cpp @@ -2385,7 +2385,7 @@ ACE_WIN32_Asynch_Connect::open (const ACE_Handler::Proxy_Ptr &handler_proxy, if (this->flg_open_) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("%N:%l:ACE_WIN32_Asynch_Connect::open:") - ACE_TEXT ("connector already open \n")), + ACE_TEXT ("connector already open\n")), -1); //int result = diff --git a/ACE/ace/ace.mpc b/ACE/ace/ace.mpc index 40dabf2eb3d..5dfcba00478 100644 --- a/ACE/ace/ace.mpc +++ b/ACE/ace/ace.mpc @@ -1,9 +1,8 @@ // -*- MPC -*- now wouldn't this be cool... // $Id$ -project(ACE) : acedefaults, install, other, codecs, token, svcconf, uuid, filecache, versioned_namespace, pkgconfig, support_ostream { +project(ACE) : ace_output, acedefaults, install, other, codecs, token, svcconf, uuid, filecache, versioned_namespace, pkgconfig, support_ostream { avoids = ace_for_tao - libout = $(ACE_ROOT)/lib sharedname = ACE dynamicflags = ACE_BUILD_DLL @@ -176,6 +175,7 @@ project(ACE) : acedefaults, install, other, codecs, token, svcconf, uuid, fileca OS_NS_time.cpp OS_NS_unistd.cpp OS_NS_wchar.cpp + OS_NS_wctype.cpp OS_QoS.cpp OS_Thread_Adapter.cpp OS_TLI.cpp diff --git a/ACE/ace/ace_for_tao.mpc b/ACE/ace/ace_for_tao.mpc index 1a4d562211f..c4625e51f6a 100644 --- a/ACE/ace/ace_for_tao.mpc +++ b/ACE/ace/ace_for_tao.mpc @@ -11,10 +11,9 @@ // link. This ACE_FOR_TAO subset library must remain as small as // possible. -project(ACE_FOR_TAO) : acedefaults, install, svcconf, uuid, versioned_namespace, pkgconfig { +project(ACE_FOR_TAO) : acedefaults, install, svcconf, uuid, versioned_namespace, pkgconfig, ace_output { macros += ACE_LACKS_ACE_TOKEN requires = ace_for_tao ace_svcconf - libout = $(ACE_ROOT)/lib sharedname = ACE_FOR_TAO dynamicflags = ACE_BUILD_DLL @@ -135,6 +134,7 @@ project(ACE_FOR_TAO) : acedefaults, install, svcconf, uuid, versioned_namespace, OS_NS_time.cpp OS_NS_unistd.cpp OS_NS_wchar.cpp + OS_NS_wctype.cpp OS_QoS.cpp OS_Thread_Adapter.cpp OS_TLI.cpp @@ -195,7 +195,7 @@ project(ACE_FOR_TAO) : acedefaults, install, svcconf, uuid, versioned_namespace, } // ACE_Token implementation uses semaphores on Windows and VxWorks. - conditional(vc6,vc71,vc8,vc9,nmake,bmake) { + conditional(vc6,vc71,vc8,vc9,vc10,nmake,bmake) { NT_Service.cpp // Required by ace_for_tao sponsors Semaphore.cpp Process_Mutex.cpp diff --git a/ACE/ace/config-WinCE.h b/ACE/ace/config-WinCE.h index d6249537727..bbdf5699368 100644 --- a/ACE/ace/config-WinCE.h +++ b/ACE/ace/config-WinCE.h @@ -82,21 +82,38 @@ #define ACE_LACKS_PDHMSG_H #define ACE_LACKS_TIME #define ACE_LACKS_TZSET +#define ACE_LACKS_RAISE +#define ACE_LACKS_BSEARCH #define ACE_HAS_POSITION_INDEPENDENT_POINTERS 1 #define ACE_LACKS_MSG_WFMO #define ACE_LACKS_UMASK +#define ACE_HAS_TYPES_H +#define ACE_LACKS_DEV_T + +#define ACE_ISCTYPE_EQUIVALENT ::_isctype // WinCE only supports the UNICODE API #if !defined (ACE_USES_WCHAR) # define ACE_USES_WCHAR #endif /* ACE_USES_WCHAR */ -#define ACE_USES_WINCE_SEMA_SIMULATION +#if (_WIN32_WCE < 0x600) +# define ACE_USES_WINCE_SEMA_SIMULATION +# define ACE_LACKS_ERRNO_H +# define ACE_LACKS_DUP +# define ACE_LACKS_GETSYSTEMTIMEASFILETIME +#endif + +#define ACE_LACKS_REGNOTIFYCHANGEKEYVALUE #define ACE_HAS_NONSTATIC_OBJECT_MANAGER 1 +#if ! defined(ACE_DEFAULT_THREAD_KEYS) +# define ACE_DEFAULT_THREAD_KEYS TLS_MINIMUM_AVAILABLE +#endif // ! defined(ACE_DEFAULT_THREAD_KEYS) + // FILE stuff isn't always defined in CE #if (_MSC_VER < 1400) && !defined (_FILE_DEFINED) typedef void FILE; @@ -173,39 +190,32 @@ // @@ NSIG value. This is definitely not correct. #define NSIG 23 - // @@ For some reason, WinCE forgot to define this. // Need to find out what it is. (Used in MapViewOfFile ().) #define FILE_MAP_COPY 0 +#if (_WIN32_WCE >= 0x400) +# define ACE_HAS_INTERLOCKED_EXCHANGEADD +#endif -#define ACE_LACKS_STRCASECMP // WinCE doesn't support _stricmp -#define ACE_LACKS_GETSERVBYNAME #define ACE_LACKS_ACCESS #define ACE_LACKS__WACCESS #define ACE_HAS_ACCESS_EMULATION -#define ACE_LACKS_FILELOCKS +#if (_WIN32_WCE < 0x500) +# define ACE_LACKS_FILELOCKS +#endif #define ACE_LACKS_EXEC #define ACE_LACKS_MKTEMP -#define ACE_LACKS_STRRCHR -#define ACE_LACKS_BSEARCH -#define ACE_LACKS_SOCKET_BUFSIZ #define ACE_LACKS_ISATTY #define ACE_LACKS_STRERROR #define ACE_LACKS_SYSTEM -#define ACE_LACKS_SIGACTION #define ACE_LACKS_PIPE -//#define ACE_LACKS_CUSERID #define ACE_LACKS_CHDIR #define ACE_LACKS_ENV -#define ACE_LACKS_HOSTNAME #define ACE_LACKS_REALPATH -#define ACE_LACKS_READLINK #define ACE_LACKS_SWAB #define ACE_LACKS_TEMPNAM -#define ACE_LACKS_GETPROTOBYNUMBER -#define ACE_LACKS_GETPROTOBYNAME #if defined (_WIN32_WCE_EMULATION) // @@ For some reason, qsort isn't defined correctly (_stdcall vs _cdecl) @@ -217,27 +227,31 @@ # define BUFSIZ 1024 #endif -typedef void (__cdecl * __sighandler_t)(int); // keep Signal compilation happy -typedef long off_t; - #define ACE_LACKS_MALLOC_H // We do have malloc.h, but don't use it. #define ACE_HAS_WINCE_BROKEN_ERRNO #define ACE_HAS_STRDUP_EMULATION +#if !defined (MAXSYMLINKS) +#define MAXSYMLINKS 0 +#endif + // WinCE can't do fixed addresses for memory-mapped files. #if defined (ACE_DEFAULT_BASE_ADDR) # undef ACE_DEFAULT_BASE_ADDR #endif #define ACE_DEFAULT_BASE_ADDR 0 -#if (_WIN32_WCE < 600) +#if (_WIN32_WCE < 0x600) #define ACE_HAS_TSS_EMULATION #endif // WinCE version < 6.0 -// This is still true up thru VC8... -#define ACE_LACKS_ERRNO_H +// CE doesn't support FILE_SHARE_DELETE like regular windows +#if !defined (ACE_DEFAULT_FILE_PERMS) +#define ACE_DEFAULT_FILE_PERMS (FILE_SHARE_READ | FILE_SHARE_WRITE) +#endif + #define ACE_LACKS_SIGNAL_H #define ACE_LACKS_SYS_STAT_H diff --git a/ACE/ace/config-aix-5.x.h b/ACE/ace/config-aix-5.x.h index 3c70886c476..8556d5bf9c5 100644 --- a/ACE/ace/config-aix-5.x.h +++ b/ACE/ace/config-aix-5.x.h @@ -142,7 +142,7 @@ #if defined (ACE_DLL_SUFFIX) # undef ACE_DLL_SUFFIX #endif -#define ACE_DLL_SUFFIX ".so" +#define ACE_DLL_SUFFIX ACE_TEXT (".so") #define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000) @@ -247,6 +247,8 @@ #define ACE_HAS_UTIME +#define ACE_HAS_CTYPE_T + // Platform has XPG4 wide character type and functions. However, the size // of wchar_t changes for 32- vs. 64-bit builds (unsigned short vs. unsigned // int, respectively). @@ -260,7 +262,7 @@ #define ACE_LACKS_NETINET_TCP_H // AIX uses LIBPATH to search for libraries -#define ACE_LD_SEARCH_PATH "LIBPATH" +#define ACE_LD_SEARCH_PATH ACE_TEXT ("LIBPATH") // Defines the page size of the system. #define ACE_PAGE_SIZE 4096 @@ -330,5 +332,6 @@ #define ACE_SCANDIR_SEL_LACKS_CONST #define ACE_HAS_SIGSUSPEND #define ACE_HAS_TIMEZONE /* Call tzset() to set timezone */ +#define ACE_LACKS_ISCTYPE #endif /* ACE_CONFIG_AIX_5_X_H */ diff --git a/ACE/ace/config-all.h b/ACE/ace/config-all.h index c87971297ae..fd5903eac0b 100644 --- a/ACE/ace/config-all.h +++ b/ACE/ace/config-all.h @@ -76,6 +76,10 @@ # define ACE_HAS_MONITOR_FRAMEWORK 1 #endif +#if !defined (ACE_HAS_SENDFILE) +# define ACE_HAS_SENDFILE 0 +#endif + #if !defined (ACE_HAS_MONITOR_POINTS) # define ACE_HAS_MONITOR_POINTS 0 #endif diff --git a/ACE/ace/config-cray.h b/ACE/ace/config-cray.h index 4a10f013664..77597e1a736 100644 --- a/ACE/ace/config-cray.h +++ b/ACE/ace/config-cray.h @@ -81,6 +81,7 @@ #define ACE_HAS_CHARPTR_SOCKOPT #define ACE_HAS_NONCONST_GETBY +#define ACE_HAS_NONCONST_INET_ADDR // has man pages, but links with missing symbols and I can't find lib yet /* #define ACE_HAS_REGEX */ @@ -203,7 +204,6 @@ /* #define ACE_HAS_TLI */ /* #define ACE_HAS_TIUSER_H */ /* #define ACE_HAS_TLI_PROTOTYPES */ -/* #define ACE_LACKS_T_ERRNO */ /* #define ACE_LACKS_NAMED_POSIX_SEM */ diff --git a/ACE/ace/config-cygwin32.h b/ACE/ace/config-cygwin32.h index adfb4b1a03c..f1e424319fa 100644 --- a/ACE/ace/config-cygwin32.h +++ b/ACE/ace/config-cygwin32.h @@ -25,7 +25,7 @@ #endif /* ACE_IOV_MAX */ // Define custom export macros for export/import of symbols from/of dll's -#define ACE_HAS_CUSTOM_EXPORT_MACROS +#define ACE_HAS_CUSTOM_EXPORT_MACROS 1 #define ACE_Proper_Export_Flag __declspec (dllexport) #define ACE_Proper_Import_Flag __declspec (dllimport) #define ACE_EXPORT_SINGLETON_DECLARATION(T) template class __declspec (dllexport) T @@ -145,6 +145,7 @@ #define ACE_LACKS_FPUTWS 1 #define ACE_LACKS_WCSTOULL 1 +#define ACE_LACKS_ISCTYPE #define ACE_HAS_AUTOMATIC_INIT_FINI diff --git a/ACE/ace/config-freebsd.h b/ACE/ace/config-freebsd.h index db0cee84bef..02773d5be42 100644 --- a/ACE/ace/config-freebsd.h +++ b/ACE/ace/config-freebsd.h @@ -62,7 +62,6 @@ #define ACE_HAS_ALT_CUSERID #define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS -#define ACE_HAS_SIG_MACROS // Optimize ACE_Handle_Set for select(). #define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT #define ACE_HAS_NONCONST_SELECT_TIMEVAL @@ -146,6 +145,7 @@ extern "C" { char * cuserid (char *s); } #define ACE_LACKS_SIGINFO_H #define ACE_LACKS_LOG2 #define ACE_LACKS_SI_ADDR +#define ACE_LACKS_ISCTYPE // Compiler/platform supports SVR4 signal typedef #define ACE_HAS_SVR4_SIGNAL_T diff --git a/ACE/ace/config-g++-common.h b/ACE/ace/config-g++-common.h index d4e06991558..7236238bb00 100644 --- a/ACE/ace/config-g++-common.h +++ b/ACE/ace/config-g++-common.h @@ -29,6 +29,8 @@ #if (__GNUC__ < 3) # define ACE_LACKS_MEMBER_TEMPLATES +# define ACE_LACKS_NUMERIC_LIMITS +# define ACE_LACKS_ISCTYPE #endif /* __GNUC__ < 3 */ // __EXCEPTIONS is defined with -fexceptions, the egcs default. It @@ -65,6 +67,30 @@ # define ACE_HAS_INTEL_ASSEMBLY #endif +#if !defined (ACE_HAS_GCC_CONSTRUCTOR_ATTRIBUTE) +#define ACE_HAS_GCC_CONSTRUCTOR_ATTRIBUTE 1 +#endif + +#if !defined (ACE_HAS_GCC_DESTRUCTOR_ATTRIBUTE) +#define ACE_HAS_GCC_DESTRUCTOR_ATTRIBUTE 1 +#endif + +#if !defined (ACE_HAS_GCC_DEPRECATED_ATTRIBUTE) +#define ACE_HAS_GCC_DEPRECATED_ATTRIBUTE 1 +#endif + +#if (ACE_HAS_GCC_CONSTRUCTOR_ATTRIBUTE == 1) +# define ACE_GCC_CONSTRUCTOR_ATTRIBUTE __attribute__ ((constructor)) +#endif + +#if (ACE_HAS_GCC_DESTRUCTOR_ATTRIBUTE == 1) +# define ACE_GCC_DESTRUCTOR_ATTRIBUTE __attribute__ ((destructor)) +#endif + +#if (ACE_HAS_GCC_DEPRECATED_ATTRIBUTE == 1) +#define ACE_DEPRECATED __attribute__ ((deprecated)) +#endif + // GNU g++ >= 4.x implements "#pragma once". #if (__GNUC__ < 4) && !defined (ACE_LACKS_PRAGMA_ONCE) // We define it with a -D with make depend. diff --git a/ACE/ace/config-hpux-11.00.h b/ACE/ace/config-hpux-11.00.h index 96a99a673a0..3d5ca503100 100644 --- a/ACE/ace/config-hpux-11.00.h +++ b/ACE/ace/config-hpux-11.00.h @@ -337,13 +337,15 @@ #define ACE_LACKS_SUSECONDS_T #define ACE_LACKS_SYS_SYSCTL_H -// @@ TODO: It looks like HP-UX provides strtoll, strtoull, wcstoll and +// @@ TODO: It looks like HP-UX provides strtoll, strtoull, wcstoll and // wcstoull but some more work is needed to plug them in correctly. #define ACE_LACKS_STRTOLL #define ACE_LACKS_WCSTOLL #define ACE_LACKS_STRTOULL #define ACE_LACKS_WCSTOULL +#define ACE_LACKS_ISWASCII + // Shared library name/path components #if defined (__ia64) # define ACE_DLL_SUFFIX ACE_TEXT (".so") diff --git a/ACE/ace/config-linux-common.h b/ACE/ace/config-linux-common.h index b93118d999d..7122d00a974 100644 --- a/ACE/ace/config-linux-common.h +++ b/ACE/ace/config-linux-common.h @@ -174,12 +174,6 @@ #elif defined (__DECCXX) # define ACE_CONFIG_INCLUDE_CXX_COMMON # include "ace/config-cxx-common.h" -#elif defined (__BORLANDC__) -# undef ACE_HAS_LLSEEK -# undef ACE_HAS_LSEEK64 -# undef ACE_LACKS_LLSEEK_PROTOTYPE -# undef ACE_LACKS_LSEEK64_PROTOTYPE -# include "ace/config-borland-common.h" #elif defined (__SUNCC_PRO) # include "ace/config-suncc-common.h" #elif defined (__PGI) @@ -199,7 +193,7 @@ * (TAO/orbsvcs/orbsvcs/SSLIOP/params_dup.{h,c}) that may indirectly * include this */ -#else /* ! __GNUG__ && !__DECCXX && !__INTEL_COMPILER && !__BORLANDC__ && !__PGI */ +#else /* ! __GNUG__ && !__DECCXX && !__INTEL_COMPILER && && !__PGI */ # ifdef __cplusplus /* Let it slide for C compilers. */ # error unsupported compiler in ace/config-linux-common.h # endif /* __cplusplus */ @@ -239,6 +233,7 @@ #define ACE_LACKS_ITOW #define ACE_LACKS_WCSICMP #define ACE_LACKS_WCSNICMP +#define ACE_LACKS_ISWASCII #if __GLIBC__ >= 2 # define ACE_HAS_3_PARAM_WCSTOK @@ -378,9 +373,9 @@ #if defined (__ia64) || defined(__alpha) || defined (__x86_64__) // On 64 bit platforms, the "long" type is 64-bits. Override the // default 32-bit platform-specific format specifiers appropriately. -# define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%lu") -# define ACE_SSIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%ld") -# define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%lu") +# define ACE_UINT64_FORMAT_SPECIFIER_ASCII "%lu" +# define ACE_SSIZE_T_FORMAT_SPECIFIER_ASCII "%ld" +# define ACE_SIZE_T_FORMAT_SPECIFIER_ASCII "%lu" #endif /* __ia64 */ #define ACE_SIZEOF_WCHAR 4 @@ -392,12 +387,14 @@ #define ACE_HAS_TERMIOS // Linux implements sendfile(). -#define ACE_HAS_SENDFILE +#define ACE_HAS_SENDFILE 1 #define ACE_HAS_VOIDPTR_MMAP #define ACE_HAS_ICMP_SUPPORT 1 +#define ACE_HAS_VASPRINTF + // According to man pages Linux uses different (compared to UNIX systems) types // for setting IP_MULTICAST_TTL and IPV6_MULTICAST_LOOP / IP_MULTICAST_LOOP // in setsockopt/getsockopt. diff --git a/ACE/ace/config-lynxos.h b/ACE/ace/config-lynxos.h index b27c167b594..dbf6d6418c7 100644 --- a/ACE/ace/config-lynxos.h +++ b/ACE/ace/config-lynxos.h @@ -69,7 +69,6 @@ #define ACE_HAS_SSIZE_T #define ACE_HAS_STREAMS #define ACE_HAS_STRERROR -#define ACE_HAS_SYSV_IPC #define ACE_HAS_SYS_SIGLIST #define ACE_HAS_SYS_SOCKIO_H #define ACE_HAS_TERMIOS @@ -99,6 +98,7 @@ #define ACE_PAGE_SIZE 4096 #define ACE_POSIX_SIG_PROACTOR #define ACE_SCANDIR_CMP_USES_CONST_VOIDPTR +#define ACE_LACKS_ISCTYPE // LynxOS has poll.h but it is unusable since implementation is not provided #define ACE_LACKS_POLL_H @@ -116,10 +116,6 @@ # endif #endif /* ACE_MT_SAFE */ -#if __GNUC__ < 3 -# define ACE_LACKS_NUMERIC_LIMITS -#endif /* __GNUC__ < 3 */ - // By default, don't include RCS Id strings in object code. #if !defined (ACE_USE_RCSID) # define ACE_USE_RCSID 0 @@ -142,6 +138,7 @@ # define ACE_LACKS_STRNCASECMP_PROTOTYPE # define ACE_LACKS_SYS_SELECT_H # define ACE_HAS_NONCONST_GETBY +# define ACE_HAS_NONCONST_INET_ADDR #endif #if (ACE_LYNXOS_MAJOR > 4) || (ACE_LYNXOS_MAJOR == 4 && ACE_LYNXOS_MINOR >= 2) @@ -170,6 +167,7 @@ # define ACE_HAS_STRBUF_T # define ACE_HAS_SYSV_IPC # define ACE_LACKS_USECONDS_T +# define ACE_LACKS_ISBLANK #endif #if defined (ACE_HAS_SVR4_DYNAMIC_LINKING) diff --git a/ACE/ace/config-macosx-leopard.h b/ACE/ace/config-macosx-leopard.h index 30f3f6c90ec..a8678fd6490 100644 --- a/ACE/ace/config-macosx-leopard.h +++ b/ACE/ace/config-macosx-leopard.h @@ -24,13 +24,15 @@ # include "ace/config-g++-common.h" #endif /* __GNUG__ */ +#define ACE_ISCTYPE_EQUIVALENT __isctype + #ifndef ACE_HAS_NONCONST_FD_ISSET #define ACE_HAS_NONCONST_FD_ISSET #endif #define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR -#define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%lu") +#define ACE_SIZE_T_FORMAT_SPECIFIER_ASCII "%lu" #if !defined (__i386__) # if defined (ACE_HAS_PENTIUM) @@ -52,7 +54,7 @@ #define ACE_LACKS_STROPTS_H // Platform provides <execinfo.h> header. -#define ACE_HAS_EXECINFO_H +#define ACE_HAS_EXECINFO_H // Wcharness.... #define ACE_HAS_WCHAR diff --git a/ACE/ace/config-macosx-panther.h b/ACE/ace/config-macosx-panther.h index 1c7361fd416..b6bc04449c8 100644 --- a/ACE/ace/config-macosx-panther.h +++ b/ACE/ace/config-macosx-panther.h @@ -15,7 +15,7 @@ #endif /* __GNUG__ */ #define ACE_LACKS_SUSECONDS_T -#define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%lu") +#define ACE_SIZE_T_FORMAT_SPECIFIER_ASCII "%lu" #if defined (ACE_HAS_PENTIUM) # undef ACE_HAS_PENTIUM diff --git a/ACE/ace/config-macosx-tiger.h b/ACE/ace/config-macosx-tiger.h index ffbac895798..60049cb3b79 100644 --- a/ACE/ace/config-macosx-tiger.h +++ b/ACE/ace/config-macosx-tiger.h @@ -26,7 +26,7 @@ #define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR -#define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%lu") +#define ACE_SIZE_T_FORMAT_SPECIFIER_ASCII "%lu" #if !defined (__i386__) # if defined (ACE_HAS_PENTIUM) diff --git a/ACE/ace/config-macosx.h b/ACE/ace/config-macosx.h index c721353ca48..513a2d3d890 100644 --- a/ACE/ace/config-macosx.h +++ b/ACE/ace/config-macosx.h @@ -14,7 +14,7 @@ # include "ace/config-g++-common.h" #endif /* __GNUG__ */ -#define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%lu") +#define ACE_SIZE_T_FORMAT_SPECIFIER_ASCII "%lu" #if defined (ACE_HAS_PENTIUM) # undef ACE_HAS_PENTIUM diff --git a/ACE/ace/config-macros.h b/ACE/ace/config-macros.h index f6bba26fec8..0723d7430ef 100644 --- a/ACE/ace/config-macros.h +++ b/ACE/ace/config-macros.h @@ -629,4 +629,22 @@ extern "C" u_long CLS##_Export _get_dll_unload_policy (void) \ #define ACE_PREPROC_CONCATENATE(A,B) ACE_PREPROC_CONCATENATE_IMPL(A,B) // ------------------------------------------------------------------- +/// If MPC is using a lib modifier this define will be set and this then +/// is used by the service configurator framework +#if defined MPC_LIB_MODIFIER && !defined (ACE_LD_DECORATOR_STR) +#define ACE_LD_DECORATOR_STR ACE_TEXT( MPC_LIB_MODIFIER ) +#endif /* MPC_LIB_MODIFIER */ + +#ifndef ACE_GCC_CONSTRUCTOR_ATTRIBUTE +# define ACE_GCC_CONSTRUCTOR_ATTRIBUTE +#endif + +#ifndef ACE_GCC_DESTRUCTOR_ATTRIBUTE +# define ACE_GCC_DESTRUCTOR_ATTRIBUTE +#endif + +#ifndef ACE_DEPRECATED +# define ACE_DEPRECATED +#endif + #endif /* ACE_CONFIG_MACROS_H */ diff --git a/ACE/ace/config-netbsd.h b/ACE/ace/config-netbsd.h index 7c25423fe4c..999b66ce5e5 100644 --- a/ACE/ace/config-netbsd.h +++ b/ACE/ace/config-netbsd.h @@ -123,6 +123,9 @@ #define ACE_LACKS_WCSICMP 1 #define ACE_LACKS_WCSNICMP 1 #define ACE_SCANDIR_CMP_USES_CONST_VOIDPTR 1 +#define ACE_LACKS_WSCANF +#define ACE_LACKS_SWSCANF +#define ACE_LACKS_ISCTYPE #if defined(__x86_64__) #define ACE_SIZEOF_DOUBLE 8 @@ -138,8 +141,8 @@ typedef unsigned long ACE_UINT64; typedef signed long ACE_INT64; -#define ACE_SSIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%ld") -#define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%lu") +#define ACE_SSIZE_T_FORMAT_SPECIFIER_ASCII "%ld" +#define ACE_SIZE_T_FORMAT_SPECIFIER_ASCII "%lu" #elif defined(__i386__) diff --git a/ACE/ace/config-openbsd.h b/ACE/ace/config-openbsd.h index 2ee50da19c8..1e7128491db 100644 --- a/ACE/ace/config-openbsd.h +++ b/ACE/ace/config-openbsd.h @@ -82,7 +82,8 @@ #define ACE_LACKS_PWD_REENTRANT_FUNCTIONS #define ACE_LACKS_RAND_REENTRANT_FUNCTIONS #define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R - +#define ACE_LACKS_LOG2 +#define ACE_LACKS_ISCTYPE #define ACE_HAS_SOCKLEN_T #define ACE_HAS_POLL diff --git a/ACE/ace/config-openvms.h b/ACE/ace/config-openvms.h index 1f02137f4fa..7161156d010 100644 --- a/ACE/ace/config-openvms.h +++ b/ACE/ace/config-openvms.h @@ -35,7 +35,6 @@ #include <stdarg.h> #include <stdio.h> #include <string.h> -#undef clearerr #undef memset #undef memcpy #undef memmove @@ -129,6 +128,7 @@ #define ACE_LACKS_SETSCHED #define ACE_LACKS_SYSCALL 1 #define ACE_LACKS_WCSTOULL 1 +#define ACE_LACKS_WCSTOLL /* (missing) standard data types */ #define ACE_LACKS_CONST_TIMESPEC_PTR 1 @@ -191,5 +191,7 @@ #define ACE_LACKS_UNIX_DOMAIN_SOCKETS 1 #define ACE_LACKS_UNIX_SYSLOG 1 #define ACE_LACKS_ALPHASORT 1 +#define ACE_LACKS_ISCTYPE +#define ACE_LACKS_ISBLANK #endif diff --git a/ACE/ace/config-pharlap.h b/ACE/ace/config-pharlap.h index 9df14fd9d96..3fd192d4612 100644 --- a/ACE/ace/config-pharlap.h +++ b/ACE/ace/config-pharlap.h @@ -23,6 +23,7 @@ // Fortunately, PharLap ETS offers much of the Win32 API. But it's still on // Winsock 1.1 #define ACE_HAS_WINSOCK2 0 +#define ACE_HAS_WINSOCK1 1 // The TSS implementation doesn't pass muster on the TSS_Test, but it works // well with ACE's TSS emulation. diff --git a/ACE/ace/config-qnx-neutrino.h b/ACE/ace/config-qnx-neutrino.h index ba53271f0b5..530d60ccd73 100644 --- a/ACE/ace/config-qnx-neutrino.h +++ b/ACE/ace/config-qnx-neutrino.h @@ -106,7 +106,8 @@ #define ACE_LACKS_RWLOCK_T #define ACE_LACKS_SBRK #define ACE_LACKS_SEEKDIR -#define ACE_LACKS_SOCKET_BUFSIZ +#define ACE_LACKS_SO_SNDBUF +#define ACE_LACKS_SO_RCVBUF #define ACE_LACKS_SOCKETPAIR #define ACE_LACKS_STROPTS_H #define ACE_LACKS_STREAM_MODULES diff --git a/ACE/ace/config-qnx-rtp-62x.h b/ACE/ace/config-qnx-rtp-62x.h index 2deaa6b78f8..997ab989c84 100644 --- a/ACE/ace/config-qnx-rtp-62x.h +++ b/ACE/ace/config-qnx-rtp-62x.h @@ -86,7 +86,8 @@ #define ACE_LACKS_POLL_H #define ACE_LACKS_PTHREAD_THR_SIGSETMASK #define ACE_LACKS_RWLOCK_T -#define ACE_LACKS_SOCKET_BUFSIZ +#define ACE_LACKS_SO_SNDBUF +#define ACE_LACKS_SO_RCVBUF #define ACE_LACKS_STREAM_MODULES #define ACE_LACKS_STROPTS_H #define ACE_LACKS_STRPTIME @@ -101,6 +102,7 @@ #define ACE_LACKS_ALPHASORT #define ACE_LACKS_FD_MASK #define ACE_LACKS_NFDBITS +#define ACE_LACKS_ISCTYPE #define ACE_LACKS_RLIMIT // QNX rlimit syscalls don't work properly with ACE. diff --git a/ACE/ace/config-qnx-rtp-pre62x.h b/ACE/ace/config-qnx-rtp-pre62x.h index f3696811662..9324096ee2f 100644 --- a/ACE/ace/config-qnx-rtp-pre62x.h +++ b/ACE/ace/config-qnx-rtp-pre62x.h @@ -84,7 +84,8 @@ #define ACE_LACKS_RWLOCK_T #define ACE_LACKS_SBRK #define ACE_LACKS_SEEKDIR -#define ACE_LACKS_SOCKET_BUFSIZ +#define ACE_LACKS_SO_SNDBUF +#define ACE_LACKS_SO_RCVBUF #define ACE_LACKS_SOCKETPAIR // Even if the QNX RTP docs says that socket pair are // available, there is actually no implementation of diff --git a/ACE/ace/config-sco-5.0.0.h b/ACE/ace/config-sco-5.0.0.h index 519b74a2ead..d5fd5783e09 100644 --- a/ACE/ace/config-sco-5.0.0.h +++ b/ACE/ace/config-sco-5.0.0.h @@ -48,9 +48,6 @@ // Compiler/platform has correctly prototyped header files. #define ACE_HAS_CPLUSPLUS_HEADERS -// Header files lack t_errno for ACE_TLI. -//#define ACE_LACKS_T_ERRNO - // Compiler/platform supports poll(). // #define ACE_HAS_POLL diff --git a/ACE/ace/config-sunos5.10.h b/ACE/ace/config-sunos5.10.h index f74c8159bae..ca5b979495b 100644 --- a/ACE/ace/config-sunos5.10.h +++ b/ACE/ace/config-sunos5.10.h @@ -27,21 +27,26 @@ # undef ACE_LACKS_LOG2 #endif +// Solaris 10 offers a useable isblank() unlike previous Solaris versions. +#if defined (ACE_LACKS_ISBLANK) +# undef ACE_LACKS_ISBLANK +#endif + // Solaris 10 delivers pthread_attr_setstack #if defined (ACE_LACKS_PTHREAD_ATTR_SETSTACK) # undef ACE_LACKS_PTHREAD_ATTR_SETSTACK #endif // Solaris 10 introduced printf() modifiers for [s]size_t types. -#if defined (ACE_SSIZE_T_FORMAT_SPECIFIER) -# undef ACE_SSIZE_T_FORMAT_SPECIFIER -# define ACE_SSIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%zd") -#endif /* ACE_SSIZE_T_FORMAT_SPECIFIER */ +#if defined (ACE_SSIZE_T_FORMAT_SPECIFIER_ASCII) +# undef ACE_SSIZE_T_FORMAT_SPECIFIER_ASCII +# define ACE_SSIZE_T_FORMAT_SPECIFIER_ASCII "%zd" +#endif /* ACE_SSIZE_T_FORMAT_SPECIFIER_ASCII */ -#if defined (ACE_SIZE_T_FORMAT_SPECIFIER) -# undef ACE_SIZE_T_FORMAT_SPECIFIER -# define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%zu") -#endif /* ACE_SIZE_T_FORMAT_SPECIFIER */ +#if defined (ACE_SIZE_T_FORMAT_SPECIFIER_ASCII) +# undef ACE_SIZE_T_FORMAT_SPECIFIER_ASCII +# define ACE_SIZE_T_FORMAT_SPECIFIER_ASCII "%zu" +#endif /* ACE_SIZE_T_FORMAT_SPECIFIER_ASCII */ // Solaris 10 offers wcstoll() and wcstoull() #if defined (ACE_LACKS_WCSTOLL) @@ -51,4 +56,9 @@ # undef ACE_LACKS_WCSTOULL #endif /* ACE_LACKS_WCSTOULL */ +#if defined (ACE_HAS_SCTP) && defined (ACE_HAS_LKSCTP) +# define ACE_HAS_VOID_PTR_SCTP_GETLADDRS +# define ACE_HAS_VOID_PTR_SCTP_GETPADDRS +#endif + #endif /* ACE_CONFIG_H */ diff --git a/ACE/ace/config-sunos5.5.h b/ACE/ace/config-sunos5.5.h index 747b7ebf4bd..1fdb78df00f 100644 --- a/ACE/ace/config-sunos5.5.h +++ b/ACE/ace/config-sunos5.5.h @@ -368,6 +368,9 @@ #define ACE_HAS_GPERF #define ACE_HAS_DIRENT +#define ACE_LACKS_ISCTYPE +#define ACE_LACKS_ISBLANK + #if defined (__SUNPRO_CC) # define ACE_CC_NAME ACE_TEXT ("SunPro C++") # define ACE_CC_MAJOR_VERSION (__SUNPRO_CC >> 8) diff --git a/ACE/ace/config-sunos5.9.h b/ACE/ace/config-sunos5.9.h index 42043928fec..c34f54c8e37 100644 --- a/ACE/ace/config-sunos5.9.h +++ b/ACE/ace/config-sunos5.9.h @@ -12,7 +12,7 @@ // #include the SunOS 5.8 config, then add any SunOS 5.9 updates below. #include "ace/config-sunos5.8.h" -#define ACE_HAS_SENDFILE +#define ACE_HAS_SENDFILE 1 #define ACE_LACKS_THR_CONCURRENCY_FUNCS #endif /* ACE_CONFIG_H */ diff --git a/ACE/ace/config-tandem-nsk-mips-v2.h b/ACE/ace/config-tandem-nsk-mips-v2.h index 9c302e3c21a..5e906d82826 100644 --- a/ACE/ace/config-tandem-nsk-mips-v2.h +++ b/ACE/ace/config-tandem-nsk-mips-v2.h @@ -215,11 +215,8 @@ typedef enum CMA_T_SCHED_POLICY { // Platform supports System V IPC #define ACE_HAS_SYSV_IPC -// Platform lacks the socketpair() call -// [Needed due to failure of Pipe_Test. even though nsk platform -// has socketpair(), Pipe.cpp tries to set socket buf size but this -// is not allowed for AF_UNIX protocol on nsk.] -#define ACE_LACKS_SOCKET_BUFSIZ +#define ACE_LACKS_SO_SNDBUF +#define ACE_LACKS_SO_RCVBUF // Platform lacks the socketpair() call #define ACE_LACKS_SOCKETPAIR @@ -231,8 +228,8 @@ typedef enum CMA_T_SCHED_POLICY { #define ACE_HRTIME_T_IS_BASIC_TYPE // printf format specifiers for 64 bit integers -# define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%Ld") -# define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%Ld") +# define ACE_UINT64_FORMAT_SPECIFIER_ASCII "%Ld" +# define ACE_INT64_FORMAT_SPECIFIER_ASCII "%Ld" //========================================================================= // Threads specific parts diff --git a/ACE/ace/config-tandem-nsk-mips-v3.h b/ACE/ace/config-tandem-nsk-mips-v3.h index a70c0016a34..05b0107b7b6 100644 --- a/ACE/ace/config-tandem-nsk-mips-v3.h +++ b/ACE/ace/config-tandem-nsk-mips-v3.h @@ -216,11 +216,8 @@ typedef enum CMA_T_SCHED_POLICY { // Platform supports System V IPC #define ACE_HAS_SYSV_IPC -// Platform lacks the socketpair() call -// [Needed due to failure of Pipe_Test. even though nsk platform -// has socketpair(), Pipe.cpp tries to set socket buf size but this -// is not allowed for AF_UNIX protocol on nsk.] -#define ACE_LACKS_SOCKET_BUFSIZ +#define ACE_LACKS_SO_SNDBUF +#define ACE_LACKS_SO_RCVBUF // Platform lacks the socketpair() call #define ACE_LACKS_SOCKETPAIR @@ -232,8 +229,8 @@ typedef enum CMA_T_SCHED_POLICY { #define ACE_HRTIME_T_IS_BASIC_TYPE // printf format specifiers for 64 bit integers -# define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%Ld") -# define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%Ld") +# define ACE_UINT64_FORMAT_SPECIFIER_ASCII "%Ld" +# define ACE_INT64_FORMAT_SPECIFIER_ASCII "%Ld" // Use larger default buffer size for ease of interoperability #define ACE_DEFAULT_CDR_BUFSIZE 4096 diff --git a/ACE/ace/config-tandem.h b/ACE/ace/config-tandem.h index 9dfd7d98b1f..896405094c9 100644 --- a/ACE/ace/config-tandem.h +++ b/ACE/ace/config-tandem.h @@ -172,6 +172,7 @@ //Platform uses non-const char * in calls to gethostbyaddr, gethostbyname, // getservbyname #define ACE_HAS_NONCONST_GETBY +#define ACE_HAS_NONCONST_INET_ADDR // Platform's select() uses non-const timeval* (only found on Linux right now) #define ACE_HAS_NONCONST_SELECT_TIMEVAL // And on Tandem :-) diff --git a/ACE/ace/config-vxworks.h b/ACE/ace/config-vxworks.h index cd3e65bffb0..e2e0c2e35f7 100644 --- a/ACE/ace/config-vxworks.h +++ b/ACE/ace/config-vxworks.h @@ -29,25 +29,23 @@ # define ACE_VXWORKS 0x650 # elif (_WRS_VXWORKS_MINOR == 6) # define ACE_VXWORKS 0x660 +# elif (_WRS_VXWORKS_MINOR == 7) +# define ACE_VXWORKS 0x670 # endif # endif # endif #endif /* ! ACE_VXWORKS */ -#if (ACE_VXWORKS == 0x551) -# include "ace/config-vxworks5.x.h" -#elif (ACE_VXWORKS == 0x620) -# include "ace/config-vxworks6.2.h" -#elif (ACE_VXWORKS == 0x630) -# include "ace/config-vxworks6.3.h" -#elif (ACE_VXWORKS == 0x640) +#if (ACE_VXWORKS == 0x640) # include "ace/config-vxworks6.4.h" #elif (ACE_VXWORKS == 0x650) # include "ace/config-vxworks6.5.h" #elif (ACE_VXWORKS == 0x660) # include "ace/config-vxworks6.6.h" +#elif (ACE_VXWORKS == 0x670) +# include "ace/config-vxworks6.7.h" #else -#error Unknown VxWorks version +#error Unknown or unsupported VxWorks version #endif #include /**/ "ace/post.h" diff --git a/ACE/ace/config-vxworks5.x.h b/ACE/ace/config-vxworks5.x.h deleted file mode 100644 index 9946eb52876..00000000000 --- a/ACE/ace/config-vxworks5.x.h +++ /dev/null @@ -1,348 +0,0 @@ -/* -*- C++ -*- */ -// $Id$ - -// The following configuration file is designed to work for VxWorks -// 5.5.x platforms using one of these compilers: -// 1) The GNU g++ compiler that is shipped with Tornado 2.2 or newer. -// 2) The Green Hills 1.8.8 and newer 1.8.9 compilers (not tested -// already for a long time) -// 3) The WindRiver Compiler (formerly known as Diab) - -#ifndef ACE_CONFIG_H -#define ACE_CONFIG_H -#include /**/ "ace/pre.h" - -#if ! defined (VXWORKS) -# define VXWORKS -#endif /* ! VXWORKS */ - -#if ! defined (ACE_VXWORKS) -# define ACE_VXWORKS 0x551 -#endif /* ! ACE_VXWORKS */ - -#if ! defined (__ACE_INLINE__) -# define __ACE_INLINE__ -#endif /* ! __ACE_INLINE__ */ - -// Compiler-specific configuration. -#if defined (__GNUG__) -# include "ace/config-g++-common.h" - -# define ACE_LACKS_IOSTREAM_FX - -# if !defined (ACE_MAIN) -# define ACE_MAIN ace_main -# endif /* ! ACE_MAIN */ - -# define ACE_LACKS_LINEBUFFERED_STREAMBUF - -# if (__GNUC__ == 2) -# define ACE_CDR_IMPLEMENT_WITH_NATIVE_DOUBLE 1 -# endif - -# if (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) - // GNU 3.3+ toolchain supports long long types but fails to define this so STL - // skips some definitions -# if !defined (_GLIBCPP_USE_LONG_LONG) -# define _GLIBCPP_USE_LONG_LONG -# endif -# endif /* (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) */ - -#elif defined (ghs) - // Processor type, if necessary. Green Hills defines "ppc". -# if defined (ppc) -# define ACE_HAS_POWERPC_TIMER -# define ACE_LACKS_CLEARERR -# endif /* ppc */ - -# define ACE_CONFIG_INCLUDE_GHS_COMMON -# include "ace/config-ghs-common.h" - -# define ACE_LACKS_UNISTD_H -# define ACE_LACKS_IOSTREAM_TOTALLY - -// Short-circuit the include of <arpa/inet.h> -// Green Hills has a problem with multiply defined functions -// with different parameters. -# define __INCineth - -#elif defined (__DCPLUSPLUS__) || defined (__DCC__) - // Diab 4.2a or later. -# if !defined (ACE_LACKS_PRAGMA_ONCE) - // We define it with a -D with make depend. -# define ACE_LACKS_PRAGMA_ONCE -# endif /* ! ACE_LACKS_PRAGMA_ONCE */ - - // Diab doesn't support VxWorks' iostream libraries. -# define ACE_LACKS_IOSTREAM_TOTALLY -# define ACE_LACKS_ACE_IOSTREAM - -# define ACE_HAS_STANDARD_CPP_LIBRARY 1 -# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 0 - -# define ACE_TEMPLATES_REQUIRE_SOURCE - -#else /* ! __GNUG__ && ! ghs && !__DCC__ */ -# ifdef __cplusplus /* Let it slide for C compilers. */ -# error unsupported compiler on VxWorks -# endif /* __cplusplus */ -#endif /* ! __GNUG__ && ! ghs */ - -// OS-specific configuration -#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG -#define ACE_HAS_SIZET_PTR_ASCTIME_R_AND_CTIME_R -#define ACE_MKDIR_LACKS_MODE -#define ACE_HAS_NONCONST_GETBY -#define ACE_HAS_NONCONST_STAT -#define ACE_HAS_NONCONST_SWAB -#define ACE_HAS_NONCONST_READV -#define ACE_HAS_NONCONST_CHDIR -#define ACE_HAS_NONCONST_UNLINK -#define ACE_HAS_NONCONST_OPENDIR -#define ACE_LACKS_UNIX_SYSLOG -#define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 32768 -#define ACE_DEFAULT_THREAD_KEYS 16 -#define ACE_HAS_BROKEN_ACCEPT_ADDR -#define ACE_HAS_NONCONST_SENDMSG -#define ACE_HAS_NONCONST_WRITEV -#define ACE_HAS_CHARPTR_DL -#define ACE_HAS_CHARPTR_SOCKOPT -#define ACE_HAS_CLOCK_GETTIME -#define ACE_HAS_CLOCK_SETTIME -#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES -#define ACE_HAS_CPLUSPLUS_HEADERS -#define ACE_HAS_DIRENT -#define ACE_HAS_DLL 0 -#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT -#define ACE_HAS_IOCTL_INT_3_PARAM -#define ACE_HAS_MSG -#define ACE_HAS_NONCONST_READV -#define ACE_HAS_NONCONST_SELECT_TIMEVAL -#define ACE_HAS_NONSTATIC_OBJECT_MANAGER -#define ACE_HAS_POSIX_NONBLOCK -#define ACE_HAS_POSIX_TIME -#define ACE_HAS_REENTRANT_FUNCTIONS -#define ACE_HAS_SIGINFO_T -#define ACE_HAS_SIGWAIT -#define ACE_HAS_SIG_ATOMIC_T -#define ACE_HAS_SOCKADDR_IN_SIN_LEN -#define ACE_HAS_SOCKADDR_IN6_SIN6_LEN -#define ACE_HAS_STRDUP_EMULATION -#define ACE_HAS_STRERROR -#define ACE_HAS_THREADS -#define ACE_LACKS_ALPHASORT -#define ACE_LACKS_ACCESS -#define ACE_LACKS_EXEC -#define ACE_LACKS_FCNTL -#define ACE_LACKS_FILELOCKS -#define ACE_LACKS_FORK -#define ACE_LACKS_FSYNC -#define ACE_LACKS_GETHOSTENT -#define ACE_LACKS_GETOPT -#define ACE_LACKS_GETPID -#define ACE_LACKS_GETPPID -#define ACE_LACKS_GETSERVBYNAME -#define ACE_LACKS_KEY_T -#define ACE_LACKS_LSTAT -#define ACE_LACKS_MADVISE -#define ACE_LACKS_MALLOC_H -#define ACE_LACKS_MEMORY_H -#define ACE_LACKS_MKFIFO -#define ACE_LACKS_MKTEMP -#define ACE_LACKS_MKSTEMP -#define ACE_LACKS_MMAP -#define ACE_LACKS_MPROTECT -#define ACE_LACKS_MSYNC -#define ACE_LACKS_NUMERIC_LIMITS -#define ACE_LACKS_GETPROTOBYNAME -#define ACE_LACKS_GETPROTOBYNUMBER -#define ACE_LACKS_GETHOSTBYADDR -#define ACE_LACKS_GETHOSTBYNAME -#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS -#define ACE_LACKS_SYS_PARAM_H -#define ACE_LACKS_PWD_FUNCTIONS -#define ACE_LACKS_RAND_REENTRANT_FUNCTIONS -#define ACE_LACKS_READDIR_R -#define ACE_LACKS_READLINK -#define ACE_LACKS_REALPATH -#define ACE_LACKS_RLIMIT -#define ACE_LACKS_RWLOCK_T -#define ACE_LACKS_SBRK -#define ACE_LACKS_SEEKDIR -#define ACE_LACKS_SEMBUF_T -#define ACE_LACKS_SIGINFO_H -#define ACE_LACKS_SI_ADDR -#define ACE_LACKS_SOCKETPAIR -#define ACE_LACKS_STRCASECMP -#define ACE_LACKS_STRRECVFD -#define ACE_LACKS_SYSCALL -#define ACE_LACKS_SYSCONF -#define ACE_LACKS_SYS_SYSCTL_H -#define ACE_LACKS_SYSV_SHMEM -#define ACE_LACKS_TELLDIR -#define ACE_LACKS_TEMPNAM -#define ACE_LACKS_TIMESPEC_T -#define ACE_LACKS_TRUNCATE -#define ACE_LACKS_TZSET -#define ACE_LACKS_UCONTEXT_H -#define ACE_LACKS_UMASK -#define ACE_LACKS_UTSNAME_T -#define ACE_LACKS_UNAME -#define ACE_LACKS_STRPTIME -#define ACE_LACKS_VSNPRINTF -#define ACE_LACKS_WAIT -#define ACE_LACKS_WAITPID -#define ACE_LACKS_DUP2 -#define ACE_LACKS_DUP -#define ACE_LACKS_SUSECONDS_T -#define ACE_LACKS_USECONDS_T -#define ACE_LACKS_INTPTR_T -#define ACE_PAGE_SIZE 4096 -#define ACE_THR_PRI_FIFO_DEF 101 -#define ACE_THR_PRI_OTHER_DEF ACE_THR_PRI_FIFO_DEF -#define ACE_HAS_SIGTIMEDWAIT -#define ACE_HAS_SIGSUSPEND -#if !defined (ACE_VXWORKS_SPARE) -# define ACE_VXWORKS_SPARE spare4 -#endif /* ! ACE_VXWORKS_SPARE */ - -#define ACE_LACKS_SETEGID -#define ACE_LACKS_SETPGID -#define ACE_LACKS_SETREGID -#define ACE_LACKS_SETREUID -#define ACE_LACKS_SETSID -#define ACE_LACKS_SETUID -#define ACE_LACKS_SETEUID -#define ACE_LACKS_GETEGID -#define ACE_LACKS_GETGID -#define ACE_LACKS_GETEUID -#define ACE_LACKS_GETUID -#define ACE_LACKS_SETGID -#define ACE_LACKS_GETPGID - -#define ACE_LACKS_PIPE -#define ACE_LACKS_STDINT_H -#define ACE_LACKS_INTTYPES_H -#define ACE_LACKS_UNISTD_H -#define ACE_LACKS_SYS_SELECT_H -#define ACE_LACKS_SYS_TIME_H -#define ACE_LACKS_SYS_RESOURCE_H -#define ACE_LACKS_DLFCN_H -#define ACE_LACKS_SYS_UIO_H -#define ACE_LACKS_SYS_IPC_H -#define ACE_LACKS_SYS_SEM_H -#define ACE_LACKS_STROPTS_H -#define ACE_LACKS_SYS_MSG_H -#define ACE_LACKS_WCHAR_H -#define ACE_LACKS_PWD_H -#define ACE_LACKS_SEARCH_H -#define ACE_LACKS_SYS_SHM_H -#define ACE_LACKS_STRINGS_H -#define ACE_LACKS_TERMIOS_H -#define ACE_LACKS_POLL_H -#define ACE_LACKS_WCTYPE_H - -// Not sure if these should always be defined. -#define ACE_LACKS_SYS_UN_H - -// Some string things -#define ACE_LACKS_WCSCAT -#define ACE_LACKS_WCSCHR -#define ACE_LACKS_WCSCMP -#define ACE_LACKS_WCSCPY -#define ACE_LACKS_WCSCSPN -#define ACE_LACKS_WCSLEN -#define ACE_LACKS_WCSNCAT -#define ACE_LACKS_WCSNCMP -#define ACE_LACKS_WCSNCPY -#define ACE_LACKS_WCSPBRK -#define ACE_LACKS_WCSRCHR -#define ACE_LACKS_WCSSPN -#define ACE_LACKS_WCSSTR -#define ACE_LACKS_WCSTOK -#define ACE_LACKS_TOWLOWER -#define ACE_LACKS_TOWUPPER -#define ACE_LACKS_ITOW -#define ACE_LACKS_WCSICMP -#define ACE_LACKS_WCSNICMP -#define ACE_LACKS_WCSTOD -#define ACE_LACKS_WCSTOL -#define ACE_LACKS_WCSTOUL -#define ACE_LACKS_WCSDUP -#define ACE_LACKS_STRTOLL -#define ACE_LACKS_WCSTOLL -#define ACE_LACKS_STRTOULL -#define ACE_LACKS_WCSTOULL - -#define ACE_LACKS_SYMLINKS -#define ACE_LACKS_FGETWC -#define ACE_LACKS_FGETWS -#define ACE_LACKS_FPUTWS - -#if defined (ACE_HAS_VXWORKS551_PID) || (ACE_HAS_VXWORKS551_PCD) || (ACE_HAS_VXWORKS551_PNE) -# define ACE_HAS_VXWORKS551_MEDUSA -#endif - -#if defined (ACE_HAS_VXWORKS551_MEDUSA) -# define ACE_HAS_GETIFADDRS -#endif - -// It is possible to enable pthread support with VxWorks, when the user decides -// to use this, we need some more defines -#if defined ACE_HAS_PTHREADS -# define ACE_LACKS_CONDATTR_PSHARED -# define ACE_LACKS_MUTEXATTR_PSHARED -# define ACE_HAS_THREAD_SPECIFIC_STORAGE -# define ACE_HAS_POSIX_SEM -// Include this file, the sys/stat.h file shipped with VxWorks has old types -// and without this include we get a lot of compile errors. A TSR has been filed -// so that hopefully in the future we can zap this include -#include "types/vxTypesOld.h" -#else -# define ACE_HAS_VXTHREADS -# define ACE_LACKS_PTHREAD_H -# define ACE_LACKS_COND_T -// VxWorks has no recursive mutexes. This was set in the past but it doesn't -// work with the pthread support, so only set it for the time being when pthread -// is disabled -# define ACE_HAS_RECURSIVE_MUTEXES -// VxWorks does not have the pthread_mutex_timedlock operation, but there is -// an emulation for this when not using the pthread mapping -#define ACE_HAS_MUTEX_TIMEOUTS -#define ACE_HAS_TSS_EMULATION -#endif - -#if !defined (ACE_MT_SAFE) -# define ACE_MT_SAFE 1 -#endif - -// Needed include to get all VxWorks CPU types -#include "types/vxCpu.h" -#if (CPU == PENTIUM || CPU == PENTIUM2 || CPU == PENTIUM3 || CPU == PENTIUM4) -// If running an Intel Pentium the -// ACE_OS::gethrtime () can use the RDTSC instruction. -# define ACE_HAS_PENTIUM -#endif - -# if defined (TOOL) && (TOOL == gnu) -# if defined (CPU) && (CPU == PPC85XX || CPU == PPC604 || CPU == PPC603) -// These PPC's do lack log2 -# define ACE_LACKS_LOG2 -# endif -# endif - -#if !defined (ACE_NEEDS_HUGE_THREAD_STACKSIZE) -# define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536 -#endif /* ACE_NEEDS_HUGE_THREAD_STACKSIZE */ - -#if !defined (ACE_NTRACE) -# define ACE_NTRACE 1 -#endif /* ACE_NTRACE */ - -// By default, don't include RCS Id strings in object code. -#if !defined (ACE_USE_RCSID) -#define ACE_USE_RCSID 0 -#endif /* !ACE_USE_RCSID */ - -#include /**/ "ace/post.h" -#endif /* ACE_CONFIG_H */ diff --git a/ACE/ace/config-vxworks6.2.h b/ACE/ace/config-vxworks6.2.h deleted file mode 100644 index 1146249e2d7..00000000000 --- a/ACE/ace/config-vxworks6.2.h +++ /dev/null @@ -1,332 +0,0 @@ -/* -*- C++ -*- */ -// $Id$ - -// The following configuration file is designed to work for VxWorks -// 6.2 platforms using one of these compilers: -// 1) The GNU g++ compiler that is shipped with VxWorks 6.2 - -#ifndef ACE_CONFIG_VXWORKS_6_2_H -#define ACE_CONFIG_VXWORKS_6_2_H -#include /**/ "ace/pre.h" - -#if ! defined (VXWORKS) -# define VXWORKS -#endif /* ! VXWORKS */ - -#if ! defined (ACE_VXWORKS) -# define ACE_VXWORKS 0x620 -#endif /* ! ACE_VXWORKS */ - -#if defined __RTP__ - // Fix wrong typedef in unistd.h (unsigned short) - #define _SUSECONDS_T - typedef long suseconds_t; -#endif -#include <unistd.h> - -// Fix for including right typedef for pid_t in VxTypes.h (int) -#include <vxWorksCommon.h> - -#if ! defined (__ACE_INLINE__) -# define __ACE_INLINE__ -#endif /* ! __ACE_INLINE__ */ - -// Compiler-specific configuration. -#if defined (__GNUG__) -# include "ace/config-g++-common.h" - -# define ACE_LACKS_IOSTREAM_FX -# define ACE_LACKS_LINEBUFFERED_STREAMBUF - -# if defined (__RTP__) && !defined (_HAS_C9X) -// Workaround for the fact that under RTP the log2 method can't be used -// without this define set, see TSR560446 -# if !defined (_C99) -# define _C99 -# endif -# endif - -#elif defined (__DCPLUSPLUS__) || defined (__DCC__) - // Diab 4.2a or later. -# if !defined (ACE_LACKS_PRAGMA_ONCE) - // We define it with a -D with make depend. -# define ACE_LACKS_PRAGMA_ONCE -# endif /* ! ACE_LACKS_PRAGMA_ONCE */ - -# define ACE_HAS_STANDARD_CPP_LIBRARY 1 -# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1 -# define ACE_TEMPLATES_REQUIRE_SOURCE - -#else /* ! __GNUG__ && ! ghs && !__DCC__ */ -# ifdef __cplusplus /* Let it slide for C compilers. */ -# error unsupported compiler on VxWorks -# endif /* __cplusplus */ -#endif /* ! __GNUG__ && ! ghs */ - -#if !defined __RTP__ -# if defined (TOOL) && (TOOL == gnu) -# if defined (CPU) && (CPU == PPC85XX || CPU == PPC604 || CPU == PPC603) -// These PPC's do lack log2 in kernel mode -# define ACE_LACKS_LOG2 -# endif -# endif -#endif - -// OS-specific configuration -#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG -#define ACE_HAS_NONCONST_GETBY -#define ACE_HAS_NONCONST_SWAB -#define ACE_HAS_NONCONST_READV -#define ACE_LACKS_UNIX_SYSLOG -#define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 32768 -#define ACE_DEFAULT_THREAD_KEYS 16 -#define ACE_HAS_BROKEN_ACCEPT_ADDR -#define ACE_HAS_NONCONST_SENDMSG -#define ACE_HAS_NONCONST_WRITEV -#define ACE_HAS_CHARPTR_DL -#define ACE_HAS_CLOCK_GETTIME -#define ACE_HAS_CLOCK_SETTIME -#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES -#define ACE_HAS_CPLUSPLUS_HEADERS -#define ACE_HAS_DIRENT -#define ACE_HAS_DLL 0 -#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT -#define ACE_HAS_IOCTL_INT_3_PARAM -#define ACE_HAS_MSG -#define ACE_HAS_NONCONST_READV -#define ACE_HAS_NONCONST_SELECT_TIMEVAL -#define ACE_HAS_NONSTATIC_OBJECT_MANAGER -#define ACE_HAS_POSIX_NONBLOCK -#define ACE_HAS_POSIX_TIME -#define ACE_HAS_REENTRANT_FUNCTIONS -#define ACE_HAS_SIGACTION_CONSTP2 -#define ACE_HAS_SIGINFO_T -#define ACE_HAS_SIGWAIT -#define ACE_HAS_SIG_ATOMIC_T -#define ACE_HAS_SOCKADDR_IN_SIN_LEN -#define ACE_HAS_SOCKADDR_IN6_SIN6_LEN -#define ACE_HAS_STRERROR -#define ACE_HAS_THREADS -#define ACE_HAS_SYSCTL -#define ACE_LACKS_ALPHASORT -#define ACE_LACKS_EXEC -#define ACE_LACKS_FILELOCKS -#define ACE_LACKS_FORK -#define ACE_LACKS_GETHOSTENT -#define ACE_LACKS_GETSERVBYNAME -#define ACE_LACKS_GETPROTOBYNAME -#define ACE_LACKS_GETPROTOBYNUMBER -#define ACE_LACKS_KEY_T -#define ACE_LACKS_LSTAT -#define ACE_LACKS_MADVISE -#define ACE_LACKS_MALLOC_H -#define ACE_LACKS_MEMORY_H -#define ACE_LACKS_MKFIFO -#define ACE_LACKS_MKTEMP -#define ACE_LACKS_MKSTEMP -#define ACE_LACKS_MMAP -#define ACE_LACKS_MPROTECT -#define ACE_LACKS_MSYNC -#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS -#define ACE_LACKS_SYS_PARAM_H -#define ACE_LACKS_PWD_FUNCTIONS -#define ACE_LACKS_READDIR_R -#define ACE_LACKS_READLINK -#define ACE_LACKS_REALPATH -#define ACE_LACKS_PIPE -#define ACE_LACKS_RLIMIT -#define ACE_LACKS_RWLOCK_T -#define ACE_LACKS_SBRK -#define ACE_LACKS_SEEKDIR -#define ACE_LACKS_SEMBUF_T -#define ACE_LACKS_SIGINFO_H -#define ACE_LACKS_SI_ADDR -#define ACE_LACKS_SOCKETPAIR -#define ACE_LACKS_STRRECVFD -#define ACE_LACKS_SYSV_SHMEM -#define ACE_LACKS_TELLDIR -#define ACE_LACKS_TEMPNAM -#define ACE_LACKS_TIMESPEC_T -#define ACE_LACKS_TRUNCATE -#define ACE_LACKS_UCONTEXT_H -#define ACE_LACKS_USECONDS_T -#define ACE_LACKS_UMASK -#define ACE_LACKS_STRPTIME -#define ACE_PAGE_SIZE 4096 -#define ACE_THR_PRI_FIFO_DEF 101 -#define ACE_THR_PRI_OTHER_DEF ACE_THR_PRI_FIFO_DEF -#define ACE_HAS_SIGTIMEDWAIT -#define ACE_HAS_SIGSUSPEND -#if !defined (ACE_VXWORKS_SPARE) -# define ACE_VXWORKS_SPARE spare4 -#endif /* ! ACE_VXWORKS_SPARE */ -#define ACE_HAS_GETIFADDRS - -#define ACE_LACKS_SETEGID -#define ACE_LACKS_SETPGID -#define ACE_LACKS_SETREGID -#define ACE_LACKS_SETREUID -#define ACE_LACKS_SETSID -#define ACE_LACKS_SETUID -#define ACE_LACKS_SETEUID -#define ACE_LACKS_GETEUID -#define ACE_LACKS_GETUID -#define ACE_LACKS_GETPGID -#define ACE_LACKS_GETEGID -#define ACE_LACKS_GETGID -#define ACE_LACKS_SETGID - -#define ACE_LACKS_SYS_UIO_H -#define ACE_LACKS_SYS_IPC_H -#define ACE_LACKS_SYS_SEM_H -#define ACE_LACKS_STROPTS_H -#define ACE_LACKS_SYS_MSG_H -#define ACE_LACKS_PWD_H -#define ACE_LACKS_SYS_SHM_H -#define ACE_LACKS_TERMIOS_H -#define ACE_LACKS_POLL_H -#define ACE_LACKS_FCNTL - -// Some string things -#define ACE_LACKS_STRCASECMP -#define ACE_LACKS_ITOW -#define ACE_LACKS_WCSDUP -#define ACE_LACKS_WCSICMP -#define ACE_LACKS_WCSNICMP -#define ACE_LACKS_STRTOLL -#define ACE_LACKS_WCSTOLL -#define ACE_LACKS_STRTOULL -#define ACE_LACKS_WCSTOULL - -#define ACE_HAS_CHARPTR_SOCKOPT -#define ACE_LACKS_SYMLINKS - -#if defined __RTP__ - // We are building for RTP mode - #if !defined (ACE_AS_STATIC_LIBS) - # define ACE_HAS_SVR4_DYNAMIC_LINKING - #endif - #define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R - #define ACE_LACKS_REGEX_H - #define ACE_LACKS_PUTENV - #define ACE_HAS_SETENV - #define ACE_HAS_3_PARAM_WCSTOK - #define ACE_HAS_WCHAR - #define ACE_HAS_VFWPRINTF - #define ACE_SIZEOF_WCHAR 2 - #define ACE_HAS_TIMEZONE -#else - // We are building for kernel mode - #define ACE_LACKS_INTPTR_T - #define ACE_LACKS_SUSECONDS_T - #define ACE_LACKS_INTTYPES_H - #define ACE_LACKS_STDINT_H - #define ACE_LACKS_UNAME - #define ACE_LACKS_UTSNAME_T - #define ACE_LACKS_RAND_REENTRANT_FUNCTIONS - #define ACE_LACKS_DLFCN_H - #define ACE_LACKS_WAIT - #define ACE_LACKS_WAITPID - #define ACE_LACKS_SYS_TIME_H - #define ACE_LACKS_SYS_SELECT_H - #define ACE_LACKS_STRINGS_H - #define ACE_MKDIR_LACKS_MODE - #define ACE_HAS_SIZET_PTR_ASCTIME_R_AND_CTIME_R - #define ACE_LACKS_SEARCH_H - #define ACE_LACKS_SYSCONF - #define ACE_LACKS_GETPID - #define ACE_LACKS_GETPPID - #define ACE_LACKS_WCHAR_H - #define ACE_LACKS_WCTYPE_H - #define ACE_LACKS_WCSCAT - #define ACE_LACKS_WCSCHR - #define ACE_LACKS_WCSCMP - #define ACE_LACKS_WCSCPY - #define ACE_LACKS_WCSCSPN - #define ACE_LACKS_WCSLEN - #define ACE_LACKS_WCSNCAT - #define ACE_LACKS_WCSNCMP - #define ACE_LACKS_WCSNCPY - #define ACE_LACKS_WCSPBRK - #define ACE_LACKS_WCSRCHR - #define ACE_LACKS_WCSSPN - #define ACE_LACKS_WCSSTR - #define ACE_LACKS_WCSTOK - #define ACE_LACKS_TOWLOWER - #define ACE_LACKS_TOWUPPER - #define ACE_LACKS_WCSTOD - #define ACE_LACKS_WCSTOL - #define ACE_LACKS_WCSTOUL - #define ACE_LACKS_FGETWC - #define ACE_LACKS_FGETWS - #define ACE_LACKS_FPUTWS - #if !defined (ACE_MAIN) - # define ACE_MAIN ace_main - #endif /* ! ACE_MAIN */ - #define ACE_LACKS_TZSET -#endif - -// It is possible to enable pthread support with VxWorks, when the user decides -// to use this, we need some more defines -#if defined ACE_HAS_PTHREADS -# define ACE_HAS_THREAD_SPECIFIC_STORAGE -# define ACE_HAS_POSIX_SEM -# define ACE_LACKS_MUTEXATTR_PSHARED -# define ACE_LACKS_CONDATTR_PSHARED -// Include this file, the sys/stat.h file shipped with VxWorks has old types -// and without this include we get a lot of compile errors. A TSR has been filed -// so that hopefully in the future we can zap this include -#include "types/vxTypesOld.h" -#else -# define ACE_LACKS_PTHREAD_H -# define ACE_HAS_VXTHREADS -# if !defined __RTP__ -// Only when building for kernel mode we can use TSS emulation, in rtp mode -// we can't use the WIND_TCB struct anymore -# define ACE_HAS_TSS_EMULATION -# endif -// VxWorks has no recursive mutexes. This was set in the past but it doesn't -// work with the pthread support, so only set it for the time being when pthread -// is disabled -# define ACE_HAS_RECURSIVE_MUTEXES -# define ACE_LACKS_COND_T -# define ACE_HAS_MUTEX_TIMEOUTS -#endif - -#if !defined (ACE_MT_SAFE) -# define ACE_MT_SAFE 1 -#endif - -// Needed include to get all VxWorks CPU types -#include "types/vxCpu.h" -#if (CPU == PENTIUM || CPU == PENTIUM2 || CPU == PENTIUM3 || CPU == PENTIUM4) -// If running an Intel Pentium the -// ACE_OS::gethrtime () can use the RDTSC instruction. -# define ACE_HAS_PENTIUM -#endif - -// VxWorks defines the CPU define MAP, undef it to prevent problems with -// application code -#if defined (MAP) -#undef MAP -#endif /* MAP */ - -#if !defined (ACE_NEEDS_HUGE_THREAD_STACKSIZE) -# define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536 -#endif /* ACE_NEEDS_HUGE_THREAD_STACKSIZE */ - -#if !defined (ACE_NTRACE) -# define ACE_NTRACE 1 -#endif /* ACE_NTRACE */ - -// By default, don't include RCS Id strings in object code. -#if !defined (ACE_USE_RCSID) -#define ACE_USE_RCSID 0 -#endif /* !ACE_USE_RCSID */ - -#if defined (ACE_HAS_IP_MULTICAST) -# define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1 -#endif /* ACE_HAS_IP_MULTICAST */ - -#include /**/ "ace/post.h" -#endif /* ACE_CONFIG_VXWORKS_6_2_H */ diff --git a/ACE/ace/config-vxworks6.3.h b/ACE/ace/config-vxworks6.3.h deleted file mode 100644 index 6fff7e6f59c..00000000000 --- a/ACE/ace/config-vxworks6.3.h +++ /dev/null @@ -1,321 +0,0 @@ -/* -*- C++ -*- */ -// $Id$ - -// The following configuration file is designed to work for VxWorks -// 6.3 platforms using one of these compilers: -// 1) The GNU g++ compiler that is shipped with VxWorks 6.3 - -#ifndef ACE_CONFIG_VXWORKS_6_3_H -#define ACE_CONFIG_VXWORKS_6_3_H -#include /**/ "ace/pre.h" - -#if ! defined (VXWORKS) -# define VXWORKS -#endif /* ! VXWORKS */ - -#if ! defined (ACE_VXWORKS) -# define ACE_VXWORKS 0x630 -#endif /* ! ACE_VXWORKS */ - -#if ! defined (__ACE_INLINE__) -# define __ACE_INLINE__ -#endif /* ! __ACE_INLINE__ */ - -// Compiler-specific configuration. -#if defined (__GNUG__) -# include "ace/config-g++-common.h" - -# define ACE_LACKS_IOSTREAM_FX -# define ACE_LACKS_LINEBUFFERED_STREAMBUF - -# if defined (__RTP__) && !defined (_HAS_C9X) -// Workaround for the fact that under RTP the log2 method can't be used -// without this define set, see TSR560446 -# if !defined (_C99) -# define _C99 -# endif -# endif - -#elif defined (__DCC__) -# define ACE_HAS_STANDARD_CPP_LIBRARY 1 -# define ACE_TEMPLATES_REQUIRE_SOURCE -#else /* ! __GNUG__ && ! ghs && !__DCC__ */ -# ifdef __cplusplus /* Let it slide for C compilers. */ -# error unsupported compiler on VxWorks -# endif /* __cplusplus */ -#endif /* ! __GNUG__ && ! ghs */ - -#if !defined __RTP__ -# if defined (TOOL) && (TOOL == gnu) -# if defined (CPU) && (CPU == PPC85XX || CPU == PPC604 || CPU == PPC603) -// These PPC's do lack log2 in kernel mode -# define ACE_LACKS_LOG2 -# endif -# endif -#endif - -// OS-specific configuration -#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG -#define ACE_HAS_NONCONST_GETBY -#define ACE_HAS_NONCONST_SWAB -#define ACE_LACKS_UNIX_SYSLOG -#define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 32768 -#define ACE_DEFAULT_THREAD_KEYS 16 -#define ACE_HAS_BROKEN_ACCEPT_ADDR -#define ACE_HAS_NONCONST_SENDMSG -#define ACE_HAS_NONCONST_WRITEV -#define ACE_HAS_CHARPTR_DL -#define ACE_HAS_CLOCK_GETTIME -#define ACE_HAS_CLOCK_SETTIME -#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES -#define ACE_HAS_CPLUSPLUS_HEADERS -#define ACE_HAS_DIRENT -#define ACE_HAS_DLL 0 -#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT -#define ACE_HAS_MSG -#define ACE_HAS_NONCONST_READV -#define ACE_HAS_NONCONST_SELECT_TIMEVAL -#define ACE_HAS_NONSTATIC_OBJECT_MANAGER -#define ACE_HAS_POSIX_NONBLOCK -#define ACE_HAS_POSIX_TIME -#define ACE_HAS_REENTRANT_FUNCTIONS -#define ACE_HAS_SIGACTION_CONSTP2 -#define ACE_HAS_SIGINFO_T -#define ACE_HAS_SIGWAIT -#define ACE_HAS_SIG_ATOMIC_T -#define ACE_HAS_SOCKADDR_IN_SIN_LEN -#define ACE_HAS_SOCKADDR_IN6_SIN6_LEN -#define ACE_HAS_STRERROR -#define ACE_HAS_THREADS -#define ACE_HAS_SYSCTL -#define ACE_LACKS_ALPHASORT -#define ACE_LACKS_EXEC -#define ACE_LACKS_FILELOCKS -#define ACE_LACKS_FORK -#define ACE_LACKS_GETHOSTENT -#define ACE_LACKS_GETSERVBYNAME -#define ACE_LACKS_GETPROTOBYNAME -#define ACE_LACKS_GETPROTOBYNUMBER -#define ACE_LACKS_GETIPNODEBYADDR -#define ACE_LACKS_GETIPNODEBYNAME_IPV6 -#define ACE_LACKS_LSTAT -#define ACE_LACKS_MADVISE -#define ACE_LACKS_MALLOC_H -#define ACE_LACKS_MEMORY_H -#define ACE_LACKS_MKFIFO -#define ACE_LACKS_MKTEMP -#define ACE_LACKS_MKSTEMP -#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS -#define ACE_LACKS_SYS_PARAM_H -#define ACE_LACKS_PWD_FUNCTIONS -#define ACE_LACKS_READDIR_R -#define ACE_LACKS_READLINK -#define ACE_LACKS_REALPATH -#define ACE_LACKS_PIPE -#define ACE_LACKS_RLIMIT -#define ACE_LACKS_RWLOCK_T -#define ACE_LACKS_SBRK -#define ACE_LACKS_SEEKDIR -#define ACE_LACKS_SEMBUF_T -#define ACE_LACKS_SIGINFO_H -#define ACE_LACKS_SI_ADDR -#define ACE_LACKS_SOCKETPAIR -#define ACE_LACKS_STRRECVFD -#define ACE_LACKS_SYSV_SHMEM -#define ACE_LACKS_TELLDIR -#define ACE_LACKS_TEMPNAM -#define ACE_LACKS_TIMESPEC_T -#define ACE_LACKS_TRUNCATE -#define ACE_LACKS_UCONTEXT_H -#define ACE_LACKS_USECONDS_T -#define ACE_LACKS_UMASK -#define ACE_LACKS_STRPTIME -#define ACE_PAGE_SIZE 4096 -#define ACE_THR_PRI_FIFO_DEF 101 -#define ACE_THR_PRI_OTHER_DEF ACE_THR_PRI_FIFO_DEF -#define ACE_HAS_SIGTIMEDWAIT -#define ACE_HAS_SIGSUSPEND -#define ACE_HAS_GETIFADDRS - -#define ACE_LACKS_SETEGID -#define ACE_LACKS_SETPGID -#define ACE_LACKS_SETREGID -#define ACE_LACKS_SETREUID -#define ACE_LACKS_SETSID -#define ACE_LACKS_SETUID -#define ACE_LACKS_SETEUID -#define ACE_LACKS_GETEUID -#define ACE_LACKS_GETUID -#define ACE_LACKS_GETPGID -#define ACE_LACKS_GETEGID -#define ACE_LACKS_GETGID -#define ACE_LACKS_SETGID - -#define ACE_LACKS_SYS_UIO_H -#define ACE_LACKS_SYS_IPC_H -#define ACE_LACKS_SYS_SEM_H -#define ACE_LACKS_STROPTS_H -#define ACE_LACKS_SYS_MSG_H -#define ACE_LACKS_PWD_H -#define ACE_LACKS_SYS_SHM_H -#define ACE_LACKS_TERMIOS_H -#define ACE_LACKS_POLL_H -#define ACE_LACKS_FCNTL - -// Some string things -#define ACE_LACKS_ITOW -#define ACE_LACKS_WCSDUP -#define ACE_LACKS_WCSICMP -#define ACE_LACKS_WCSNICMP -#define ACE_LACKS_STRTOLL -#define ACE_LACKS_WCSTOLL -#define ACE_LACKS_STRTOULL -#define ACE_LACKS_WCSTOULL - -#define ACE_HAS_CHARPTR_SOCKOPT -#define ACE_LACKS_SYMLINKS - -#if defined __RTP__ - // We are building for RTP mode - #if !defined (ACE_AS_STATIC_LIBS) - # define ACE_HAS_SVR4_DYNAMIC_LINKING - #endif - #define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R - #define ACE_LACKS_REGEX_H - #define ACE_LACKS_PUTENV - #define ACE_HAS_SETENV - #define ACE_HAS_3_PARAM_WCSTOK - #define ACE_HAS_WCHAR - #define ACE_HAS_VFWPRINTF - #define ACE_SIZEOF_WCHAR 2 - #define ACE_HAS_SHM_OPEN - #if defined (ACE_AS_STATIC_LIBS) - # define ACE_HAS_AIO_CALLS - #endif - #define ACE_LACKS_STRCASECMP - // VxWorks seems to either not define this or define as zero up till now - #if !defined (IOV_MAX) || (IOV_MAX == 0) - #define ACE_IOV_MAX 16 - #endif - #define ACE_HAS_TIMEZONE -#else - // We are building for kernel mode - #define ACE_LACKS_SUSECONDS_T - #define ACE_LACKS_INTPTR_T - #define ACE_LACKS_INTTYPES_H - #define ACE_LACKS_STDINT_H - #define ACE_LACKS_UNAME - #define ACE_LACKS_UTSNAME_T - #define ACE_LACKS_RAND_REENTRANT_FUNCTIONS - #define ACE_LACKS_DLFCN_H - #define ACE_LACKS_WAIT - #define ACE_LACKS_WAITPID - #define ACE_LACKS_SYS_TIME_H - #define ACE_LACKS_SYS_SELECT_H - #define ACE_MKDIR_LACKS_MODE - #define ACE_HAS_SIZET_PTR_ASCTIME_R_AND_CTIME_R - #define ACE_LACKS_SEARCH_H - #define ACE_LACKS_SYSCONF - #define ACE_LACKS_GETPID - #define ACE_LACKS_GETPPID - #define ACE_LACKS_WCHAR_H - #define ACE_LACKS_WCTYPE_H - #define ACE_LACKS_WCSCAT - #define ACE_LACKS_WCSCHR - #define ACE_LACKS_WCSCMP - #define ACE_LACKS_WCSCPY - #define ACE_LACKS_WCSCSPN - #define ACE_LACKS_WCSLEN - #define ACE_LACKS_WCSNCAT - #define ACE_LACKS_WCSNCMP - #define ACE_LACKS_WCSNCPY - #define ACE_LACKS_WCSPBRK - #define ACE_LACKS_WCSRCHR - #define ACE_LACKS_WCSSPN - #define ACE_LACKS_WCSSTR - #define ACE_LACKS_WCSTOK - #define ACE_LACKS_TOWLOWER - #define ACE_LACKS_TOWUPPER - #define ACE_LACKS_WCSTOD - #define ACE_LACKS_WCSTOL - #define ACE_LACKS_WCSTOUL - #define ACE_LACKS_FGETWC - #define ACE_LACKS_FGETWS - #define ACE_LACKS_FPUTWS - #define ACE_HAS_IOCTL_INT_3_PARAM - #define ACE_LACKS_MMAP - #define ACE_LACKS_MSYNC - #define ACE_LACKS_MPROTECT - #if !defined (ACE_MAIN) - # define ACE_MAIN ace_main - #endif /* ! ACE_MAIN */ - #define ACE_LACKS_TZSET -#endif - -// It is possible to enable pthread support with VxWorks, when the user decides -// to use this, we need some more defines -#if defined ACE_HAS_PTHREADS -# define ACE_HAS_THREAD_SPECIFIC_STORAGE -# define ACE_HAS_POSIX_SEM -# define ACE_LACKS_MUTEXATTR_PSHARED -# define ACE_LACKS_CONDATTR_PSHARED -// Include this file, the sys/stat.h file shipped with VxWorks has old types -// and without this include we get a lot of compile errors. A TSR has been filed -// so that hopefully in the future we can zap this include -#include "types/vxTypesOld.h" -#else -# define ACE_LACKS_PTHREAD_H -# define ACE_HAS_VXTHREADS -# if !defined __RTP__ -// Only when building for kernel mode we can use TSS emulation, in rtp mode -// we can't use the WIND_TCB struct anymore -# define ACE_HAS_TSS_EMULATION -# if !defined (ACE_VXWORKS_SPARE) -# define ACE_VXWORKS_SPARE spare4 -# endif /* ! ACE_VXWORKS_SPARE */ -# endif -// VxWorks has no recursive mutexes. This was set in the past but it doesn't -// work with the pthread support, so only set it for the time being when pthread -// is disabled -# define ACE_HAS_RECURSIVE_MUTEXES -# define ACE_LACKS_COND_T -# define ACE_HAS_MUTEX_TIMEOUTS -#endif - -#if !defined (ACE_MT_SAFE) -# define ACE_MT_SAFE 1 -#endif - -// Needed include to get all VxWorks CPU types -#include "types/vxCpu.h" -#if defined (CPU) && (CPU == PENTIUM || CPU == PENTIUM2 || CPU == PENTIUM3 || CPU == PENTIUM4) - // If running an Intel Pentium the - // ACE_OS::gethrtime () can use the RDTSC instruction. - # define ACE_HAS_PENTIUM -#endif - -// VxWorks defines the CPU define MAP, undef it to prevent problems with -// application code -#if defined (MAP) -#undef MAP -#endif /* MAP */ - -#if !defined (ACE_NEEDS_HUGE_THREAD_STACKSIZE) -# define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536 -#endif /* ACE_NEEDS_HUGE_THREAD_STACKSIZE */ - -#if !defined (ACE_NTRACE) -# define ACE_NTRACE 1 -#endif /* ACE_NTRACE */ - -// By default, don't include RCS Id strings in object code. -#if !defined (ACE_USE_RCSID) -#define ACE_USE_RCSID 0 -#endif /* !ACE_USE_RCSID */ - -#if defined (ACE_HAS_IP_MULTICAST) -# define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1 -#endif /* ACE_HAS_IP_MULTICAST */ - -#include /**/ "ace/post.h" -#endif /* ACE_CONFIG_VXWORKS_6_3_H */ diff --git a/ACE/ace/config-vxworks6.4.h b/ACE/ace/config-vxworks6.4.h index 11e42accccb..9a40eade1a8 100644 --- a/ACE/ace/config-vxworks6.4.h +++ b/ACE/ace/config-vxworks6.4.h @@ -83,6 +83,7 @@ #define ACE_HAS_4_4BSD_SENDMSG_RECVMSG #define ACE_HAS_3_PARAM_READDIR_R #define ACE_HAS_NONCONST_GETBY +#define ACE_HAS_NONCONST_INET_ADDR #define ACE_HAS_NONCONST_SWAB #define ACE_LACKS_UNIX_SYSLOG #define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 32768 @@ -199,6 +200,7 @@ #define ACE_HAS_CHARPTR_SOCKOPT #define ACE_LACKS_SYMLINKS +#define ACE_LACKS_ISCTYPE #if defined __RTP__ // We are building for RTP mode @@ -225,6 +227,7 @@ #if !defined (IOV_MAX) || (IOV_MAX == 0) #define ACE_IOV_MAX 16 #endif + #define ACE_LACKS_ISASCII #else // We are building for kernel mode #define ACE_LACKS_SUSECONDS_T @@ -276,6 +279,8 @@ # define ACE_MAIN ace_main #endif /* ! ACE_MAIN */ #define ACE_LACKS_TZSET + #define ACE_LACKS_ISWCTYPE + #define ACE_LACKS_ISBLANK #endif // It is possible to enable pthread support with VxWorks, when the user decides diff --git a/ACE/ace/config-vxworks6.7.h b/ACE/ace/config-vxworks6.7.h new file mode 100644 index 00000000000..8083957a61a --- /dev/null +++ b/ACE/ace/config-vxworks6.7.h @@ -0,0 +1,24 @@ +//* -*- C++ -*- */ +// $Id$ + +// The following configuration file is designed to work for VxWorks +// 6.7 platforms using one of these compilers: +// 1) The GNU g++ compiler that is shipped with VxWorks 6.7 +// 2) The Diab compiler that is shipped with VxWorks 6.7 + +#ifndef ACE_CONFIG_VXWORKS_6_7_H +#define ACE_CONFIG_VXWORKS_6_7_H +#include /**/ "ace/pre.h" + +#if !defined (ACE_VXWORKS) +# define ACE_VXWORKS 0x670 +#endif /* ! ACE_VXWORKS */ + +#include "ace/config-vxworks6.6.h" + +#undef ACE_HAS_NONCONST_INET_ADDR +#undef ACE_LACKS_ISASCII + +#include /**/ "ace/post.h" +#endif /* ACE_CONFIG_VXWORKS_6_7_H */ + diff --git a/ACE/ace/config-win32-borland.h b/ACE/ace/config-win32-borland.h index fb7acde04e3..c6eeada4acb 100644 --- a/ACE/ace/config-win32-borland.h +++ b/ACE/ace/config-win32-borland.h @@ -11,6 +11,10 @@ #error Use config-win32.h in config.h instead of this header #endif /* ACE_CONFIG_WIN32_H */ +#if (__BORLANDC__ < 0x610) +#error This version of CodeGear C++ is not supported. +#endif + #define ACE_HAS_CUSTOM_EXPORT_MACROS #define ACE_Proper_Export_Flag __declspec (dllexport) #define ACE_Proper_Import_Flag __declspec (dllimport) @@ -120,8 +124,8 @@ # define ACE_HAS_NEW_NOTHROW # define ACE_TEMPLATES_REQUIRE_SOURCE 1 # define ACE_SIZEOF_LONG_DOUBLE 10 -# define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%Lu") -# define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%Ld") +# define ACE_UINT64_FORMAT_SPECIFIER_ASCII "%Lu" +# define ACE_INT64_FORMAT_SPECIFIER_ASCII "%Ld" # define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1 # define ACE_ENDTHREADEX(STATUS) ::_endthreadex ((DWORD) STATUS) @@ -136,22 +140,11 @@ # endif /* !_MT && !ACE_HAS_WINCE */ #endif /* ACE_MT_SAFE && ACE_MT_SAFE != 0 */ -#if (__BORLANDC__ < 0x580) -# define ACE_LACKS_INTPTR_T -# define ACE_HAS_NONCONST_SWAB -# define ACE_HAS_NONCONST_FDOPEN -#endif - -# if (__BORLANDC__ < 0x590) -# define ACE_LACKS_PLACEMENT_OPERATOR_DELETE 1 -# endif - -#if (__BORLANDC__ < 0x610) -# define ACE_HAS_NONCONST_TEMPNAM -# define ACE_LACKS_STRTOLL -# define ACE_LACKS_WCSTOLL -# define ACE_LACKS_STRTOULL -# define ACE_LACKS_WCSTOULL +#if (__BORLANDC__ <= 0x610) +# define ACE_LACKS_ISBLANK +# define ACE_LACKS_ISWBLANK +# define ACE_LACKS_ISCTYPE +# define ACE_LACKS_ISWCTYPE #endif #if (__BORLANDC__ <= 0x610) @@ -163,9 +156,11 @@ # endif #endif + #define ACE_WCSDUP_EQUIVALENT ::_wcsdup #define ACE_STRCASECMP_EQUIVALENT ::stricmp #define ACE_STRNCASECMP_EQUIVALENT ::strnicmp +#define ACE_WTOF_EQUIVALENT ::_wtof #define ACE_HAS_ITOA 1 #include /**/ "ace/post.h" diff --git a/ACE/ace/config-win32-common.h b/ACE/ace/config-win32-common.h index bc09046e866..ee7acfc73c3 100644 --- a/ACE/ace/config-win32-common.h +++ b/ACE/ace/config-win32-common.h @@ -92,6 +92,17 @@ # define ACE_MT_SAFE 1 #endif +// On winCE these classes do not exist. If they are +// introduced in the future, no changes need to be made +#if defined (ABOVE_NORMAL_PRIORITY_CLASS) && \ + defined (BELOW_NORMAL_PRIORITY_CLASS) && \ + defined (HIGH_PRIORITY_CLASS) && \ + defined (IDLE_PRIORITY_CLASS) && \ + defined (NORMAL_PRIORITY_CLASS) && \ + defined (REALTIME_PRIORITY_CLASS) +#define ACE_HAS_WIN32_PRIORITY_CLASS +#endif + // Build ACE services as DLLs. If you write a library and want it to // use ACE_Svc_Export, this will cause those macros to build dlls. If // you want your ACE service to be a static library, comment out this @@ -191,7 +202,15 @@ #if !defined (ACE_HAS_WINCE) // Platform supports pread() and pwrite() -# define ACE_HAS_P_READ_WRITE +# define ACE_HAS_WTOF +#endif /* ! ACE_HAS_WINCE */ + +#define ACE_HAS_P_READ_WRITE + +#if !defined (ACE_HAS_WINCE) +# define ACE_HAS_DIRECT_H +# define ACE_HAS_PROCESS_H +# define ACE_HAS_IO_H #endif /* ! ACE_HAS_WINCE */ #if !defined (__MINGW32__) @@ -265,6 +284,15 @@ #define ACE_LACKS_WAIT #define ACE_LACKS_IOVEC #define ACE_LACKS_LOG2 +#define ACE_LACKS_CADDR_T +#if !defined(__MINGW32__) && !defined (__BORLANDC__) +# define ACE_LACKS_MODE_T +#endif +#if !defined (__BORLANDC__) +# define ACE_LACKS_NLINK_T +# define ACE_LACKS_UID_T +# define ACE_LACKS_GID_T +#endif #define ACE_HAS_PDH_H #define ACE_HAS_PDHMSG_H @@ -433,6 +461,10 @@ #if !defined(ACE_HAS_WINSOCK2) # define ACE_HAS_WINSOCK2 1 #endif /* !defined(ACE_HAS_WINSOCK2) */ +// Not use WS1 by default +#if !defined(ACE_HAS_WINSOCK1) +# define ACE_HAS_WINSOCK1 0 +#endif /* !defined(ACE_HAS_WINSOCK1) */ #if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0) @@ -442,7 +474,7 @@ # include /**/ <winsock2.h> // WinCE 4 doesn't define the Exxx values without the WSA prefix, so do that // here. This is all lifted from the #if 0'd out part of winsock2.h. -# if defined (UNDER_CE) +# if defined (_WIN32_WCE) && (_WIN32_WCE < 0x600) # define EWOULDBLOCK WSAEWOULDBLOCK # define EINPROGRESS WSAEINPROGRESS # define EALREADY WSAEALREADY @@ -530,8 +562,8 @@ # define ACE_HAS_IP_MULTICAST #endif /* ACE_HAS_WINSOCK2 */ -#if !defined (ACE_HAS_WINCE) || defined (PPC) /* CE only on some CPUs */ -# define ACE_HAS_INTERLOCKED_EXCHANGEADD +#if !defined (ACE_HAS_WINCE) +# define ACE_HAS_INTERLOCKED_EXCHANGEADD #endif #define ACE_HAS_WIN32_TRYLOCK @@ -542,7 +574,7 @@ # define ACE_HAS_CANCEL_IO # define ACE_HAS_WIN32_OVERLAPPED_IO # define ACE_HAS_WIN32_NAMED_PIPES -#endif /* !defined (ACE_USES_WINCE_SEMA_SIMULATION) && !ACE_HAS_PHARLAP */ +#endif /* !defined (ACE_HAS_WINCE) && !ACE_HAS_PHARLAP */ #if !defined (ACE_SEH_DEFAULT_EXCEPTION_HANDLING_ACTION) # define ACE_SEH_DEFAULT_EXCEPTION_HANDLING_ACTION EXCEPTION_CONTINUE_SEARCH diff --git a/ACE/ace/config-win32-ghs.h b/ACE/ace/config-win32-ghs.h index 95bf474852e..2467d4845c4 100644 --- a/ACE/ace/config-win32-ghs.h +++ b/ACE/ace/config-win32-ghs.h @@ -74,9 +74,8 @@ //# define ACE_NEW_THROWS_EXCEPTIONS 1 # define ACE_SIZEOF_LONG_DOUBLE 10 # define ACE_TEMPLATES_REQUIRE_SOURCE 1 -// Changed ACE_TEXT to ACE_TEXT in the following two lines -# define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%I64u") -# define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%I64d") +# define ACE_UINT64_FORMAT_SPECIFIER_ASCII "%I64u" +# define ACE_INT64_FORMAT_SPECIFIER_ASCII "%I64d" # define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1 // Set the following to zero to placate SString.h ACE_WString CTOR # undef ACE_WSTRING_HAS_USHORT_SUPPORT diff --git a/ACE/ace/config-win32-mingw.h b/ACE/ace/config-win32-mingw.h index fd61b5bd517..8a89a62b372 100644 --- a/ACE/ace/config-win32-mingw.h +++ b/ACE/ace/config-win32-mingw.h @@ -51,7 +51,12 @@ # define ACE_LACKS_DIRENT_H #endif +#if (__MINGW32_MAJOR_VERSION > 3) || ((__MINGW32_MAJOR_VERSION == 3) && (__MINGW32_MINOR_VERSION >= 15)) +# undef ACE_LACKS_USECONDS_T +#endif + #undef ACE_LACKS_SIGSET +#undef ACE_HAS_WTOF #define ACE_LACKS_SIGSET_DEFINITIONS #define ACE_LACKS_SYS_SHM_H @@ -84,6 +89,7 @@ #define ACE_LACKS_PDHMSG_H #define ACE_HAS_NONCONST_WCSDUP #define ACE_HAS_WINSOCK2_GQOS +#define ACE_ISCTYPE_EQUIVALENT ::_isctype // We trust the user: He must have used -mpentiumpro or -mpentium // if that is what he wants. @@ -91,8 +97,8 @@ # define ACE_HAS_PENTIUM #endif -#define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%I64d") -#define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%I64u") +#define ACE_INT64_FORMAT_SPECIFIER_ASCII "%I64d" +#define ACE_UINT64_FORMAT_SPECIFIER_ASCII "%I64u" #define ACE_ENDTHREADEX(STATUS) ::_endthreadex ((DWORD) (STATUS)) diff --git a/ACE/ace/config-win32-msvc-10.h b/ACE/ace/config-win32-msvc-10.h new file mode 100644 index 00000000000..b91e241530d --- /dev/null +++ b/ACE/ace/config-win32-msvc-10.h @@ -0,0 +1,142 @@ +/* -*- C++ -*- */ +//============================================================================= +/** + * @file config-win32-msvc-10.h + * + * $Id$ + * + * @brief Microsoft Visual C++ 10.0 configuration file. + * + * This file is the ACE configuration file for Microsoft Visual C++ version 10. + * + * @note Do not include this file directly, include config-win32.h instead. + */ +//============================================================================= + +#ifndef ACE_CONFIG_WIN32_MSVC_10_H +#define ACE_CONFIG_WIN32_MSVC_10_H +#include /**/ "ace/pre.h" + +#ifndef ACE_CONFIG_WIN32_H +#error Use config-win32.h in config.h instead of this header +#endif /* ACE_CONFIG_WIN32_H */ + +#ifndef ACE_WIN32_VC10 +# define ACE_WIN32_VC10 +#endif + +// Visual C++ 9.0 (.NET) deprecated the old iostreams +#if !defined (ACE_HAS_STANDARD_CPP_LIBRARY) +#define ACE_HAS_STANDARD_CPP_LIBRARY 1 +#endif + +#if !defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB) +#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1 +#endif + +// Windows' timeval is non-conformant (defined in terms of long instead of +// time_t) and VC9 (on desktop, not CE) changed time_t to a 64-bit value +// even when compiling a 32-bit application. Therefore, ace/Time_Value +// needs to rearrange a few things for this compiler. See Time_Value.h +// for complete details. +#if !defined (ACE_HAS_WINCE) +# define ACE_HAS_TIME_T_LONG_MISMATCH +#endif + +#define ACE_HAS_ITOA +#define ACE_HAS_HEADER_ALLOCATED_CLASS_STATIC_CONST_INT_STOREAGE +#define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR + +#define ACE_ITOA_EQUIVALENT ::_itoa +#define ACE_STRCASECMP_EQUIVALENT ::_stricmp +#define ACE_STRNCASECMP_EQUIVALENT ::_strnicmp +#define ACE_WCSDUP_EQUIVALENT ::_wcsdup + +#ifndef ACE_HAS_EXCEPTIONS +# define ACE_HAS_EXCEPTIONS +#endif + +// Windows Mobile 6 doesn't do sig_atomic_t, but maybe future versions will. +# if !defined (_WIN32_WCE) || (_WIN32_WCE > 0x601) +# define ACE_HAS_SIG_ATOMIC_T +# endif /* !Win CE 6.0 or less */ + +#define ACE_HAS_STRERROR +#define ACE_LACKS_STRPTIME + +// Evaluate this with a WinCE build; maybe things have improved since VC8. +//#if !defined (ACE_HAS_WINCE) +# define ACE_HAS_INTRIN_H +# define ACE_HAS_INTRINSIC_INTERLOCKED +//#endif + +#if !defined (_WIN32_WCE) || (_WIN32_WCE >= 0x501) +# define ACE_HAS_INTRINSIC_BYTESWAP +#endif + +#define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES +#define ACE_LACKS_STRRECVFD +#define ACE_HAS_CPLUSPLUS_HEADERS + +#define ACE_HAS_TEMPLATE_TYPEDEFS +#define ACE_TEMPLATES_REQUIRE_SOURCE + +// Platform provides ACE_TLI function prototypes. +// For Win32, this is not really true, but saves a lot of hassle! +#define ACE_HAS_TLI_PROTOTYPES + +// Platform support linebuffered streaming is broken +#define ACE_LACKS_LINEBUFFERED_STREAMBUF + +#if defined (ACE_HAS_STANDARD_CPP_LIBRARY) && (ACE_HAS_STANDARD_CPP_LIBRARY != 0) + +// Platform has its Standard C++ library in the namespace std +# if !defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB) +# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1 +# endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */ + +// ace/iostream.h does not work with the standard cpp library (yet). +# if !defined (ACE_USES_OLD_IOSTREAMS) +# define ACE_LACKS_ACE_IOSTREAM +# endif /* ! ACE_USES_OLD_IOSTREAMS */ + +// Starting with MSVC 7.1, std::new throws std::bad_alloc on out-of-memory. +#define ACE_NEW_THROWS_EXCEPTIONS +#define ACE_HAS_NEW_NOTHROW + +#else + +// iostream header lacks ipfx (), isfx (), etc., declarations +# define ACE_LACKS_IOSTREAM_FX + +#endif + +// There are too many instances of this warning to fix it right now. +// Maybe in the future. + +// Disable warning of using Microsoft Extension. +# pragma warning(disable:4231) + +// 'class1' : inherits 'class2::member' via dominance +#pragma warning(disable:4250) + +// CE (at least thru Windows Mobile 5) doesn't have the new, secure CRT. +#if !defined (ACE_HAS_WINCE) && !defined (ACE_HAS_TR24731_2005_CRT) +# define ACE_HAS_TR24731_2005_CRT +#endif + +// On CE w/o MFC config-WinCE.h needs to declare a placement new. This +// triggers a warning that there's no placement delete, which can be ignored. +#if defined (ACE_HAS_WINCE) && !defined (ACE_HAS_MFC) +# pragma warning(disable:4291) +#endif + +// A template can not be exported. Only an instantiation may be exported. +#define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_EXPORT + +// At least for ACE_UNIMPLEMENTED_FUNC in class templates, this is needed to +// explicitly instantiate a template that has ACE_UNIMPLEMENTED_FUNC. +# define ACE_NEEDS_FUNC_DEFINITIONS + +#include /**/ "ace/post.h" +#endif /* ACE_CONFIG_WIN32_MSVC_10_H */ diff --git a/ACE/ace/config-win32-msvc-7.h b/ACE/ace/config-win32-msvc-7.h index fd381591d93..9d1ac7b907b 100644 --- a/ACE/ace/config-win32-msvc-7.h +++ b/ACE/ace/config-win32-msvc-7.h @@ -112,7 +112,7 @@ #pragma warning(disable:4231) // 'function' : unreferenced local function has been removed -# pragma warning(disable:4505) +#pragma warning(disable:4505) // A template can not be exported. Only an instantiation may be exported. #define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_EXPORT diff --git a/ACE/ace/config-win32-msvc-8.h b/ACE/ace/config-win32-msvc-8.h index 61a0858bedb..3ad89528ae8 100644 --- a/ACE/ace/config-win32-msvc-8.h +++ b/ACE/ace/config-win32-msvc-8.h @@ -54,10 +54,12 @@ #define ACE_STRNCASECMP_EQUIVALENT ::_strnicmp #define ACE_WCSDUP_EQUIVALENT ::_wcsdup -#define ACE_HAS_EXCEPTIONS +#ifndef ACE_HAS_EXCEPTIONS +# define ACE_HAS_EXCEPTIONS +#endif // Windows Mobile 6 doesn't do sig_atomic_t, but maybe future versions will. -// This has been true up thrugh the versions. We don't have any indication +// This has been true up thrugh the versions. We don't have any indication // that this might be supported in the future, but it is an easy enough fix // to bump the wince revision number when a new version is released. # if !defined (_WIN32_WCE) || (_WIN32_WCE > 0x601) @@ -117,7 +119,13 @@ // Maybe in the future. // Disable warning of using Microsoft Extension. -# pragma warning(disable:4231) +#pragma warning(disable:4231) + +// 'class1' : inherits 'class2::member' via dominance +#pragma warning(disable:4250) + +// 'this' : used in base member initializer list +#pragma warning(disable:4355) // CE (at least thru Windows Mobile 5) doesn't have the new, secure CRT. #if !defined (ACE_HAS_WINCE) && !defined (ACE_HAS_TR24731_2005_CRT) diff --git a/ACE/ace/config-win32-msvc-9.h b/ACE/ace/config-win32-msvc-9.h index 379de17e5fa..65b817482d6 100644 --- a/ACE/ace/config-win32-msvc-9.h +++ b/ACE/ace/config-win32-msvc-9.h @@ -52,12 +52,14 @@ #define ACE_STRNCASECMP_EQUIVALENT ::_strnicmp #define ACE_WCSDUP_EQUIVALENT ::_wcsdup -#define ACE_HAS_EXCEPTIONS +#ifndef ACE_HAS_EXCEPTIONS +# define ACE_HAS_EXCEPTIONS +#endif -// Windows Mobile 5 doesn't do sig_atomic_t, but maybe future versions will. -# if !defined (_WIN32_WCE) || (_WIN32_WCE > 0x501) +// Windows Mobile 6 doesn't do sig_atomic_t, but maybe future versions will. +# if !defined (_WIN32_WCE) || (_WIN32_WCE > 0x601) # define ACE_HAS_SIG_ATOMIC_T -# endif /* !Win CE 5.0 or less */ +# endif /* !Win CE 6.0 or less */ #define ACE_HAS_STRERROR #define ACE_LACKS_STRPTIME diff --git a/ACE/ace/config-win32-msvc.h b/ACE/ace/config-win32-msvc.h index 21e66d81bb5..8fe6272e977 100644 --- a/ACE/ace/config-win32-msvc.h +++ b/ACE/ace/config-win32-msvc.h @@ -31,12 +31,6 @@ #define ACE_CC_MINOR_VERSION (_MSC_VER % 100) #define ACE_CC_BETA_VERSION (0) -#if !defined (ACE_LD_DECORATOR_STR) -# if defined (_DEBUG) -# define ACE_LD_DECORATOR_STR ACE_TEXT ("d") -# endif /* _DEBUG */ -#endif /* ACE_LD_DECORATOR_STR */ - #if !defined(_NATIVE_WCHAR_T_DEFINED) #define ACE_LACKS_NATIVE_WCHAR_T #endif @@ -48,7 +42,10 @@ # define ACE_ENDTHREADEX(STATUS) ::_endthreadex ((DWORD) STATUS) #endif /* _WIN32_WCE */ -#if (_MSC_VER >= 1500) +//FUZZ: disable check_for_msc_ver +#if (_MSC_VER >= 1600) +# include "ace/config-win32-msvc-10.h" +#elif (_MSC_VER >= 1500) # include "ace/config-win32-msvc-9.h" #elif (_MSC_VER >= 1400) # include "ace/config-win32-msvc-8.h" @@ -57,6 +54,7 @@ #else # error This version of Microsoft Visual C++ is not supported. #endif +//FUZZ: enable check_for_msc_ver // MFC changes the behavior of operator new at all MSVC versions from 6 up // by throwing a static CMemoryException* instead of std::bad_alloc @@ -124,13 +122,18 @@ #define ACE_LACKS_TERMIOS_H #define ACE_LACKS_REGEX_H -#define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%I64d") -#define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%I64u") +#define ACE_INT64_FORMAT_SPECIFIER_ASCII "%I64d" +#define ACE_UINT64_FORMAT_SPECIFIER_ASCII "%I64u" #define ACE_STRTOLL_EQUIVALENT ::_strtoi64 #define ACE_WCSTOLL_EQUIVALENT ::_wcstoi64 #define ACE_STRTOULL_EQUIVALENT ::_strtoui64 #define ACE_WCSTOULL_EQUIVALENT ::_wcstoui64 +#define ACE_WTOF_EQUIVALENT ::_wtof + +#define ACE_LACKS_ISBLANK +#define ACE_LACKS_ISWBLANK +#define ACE_ISCTYPE_EQUIVALENT ::_isctype // Turn off warnings for /W4 // To resume any of these warning: #pragma warning(default: 4xxx) diff --git a/ACE/ace/os_include/os_ctype.h b/ACE/ace/os_include/os_ctype.h index e1f5f1842af..c997d41255e 100644 --- a/ACE/ace/os_include/os_ctype.h +++ b/ACE/ace/os_include/os_ctype.h @@ -36,6 +36,9 @@ extern "C" // @todo move the is* and is* emulation methods in ACE_OS here // and let ACE_OS just call them. +#if !defined (ACE_HAS_CTYPE_T) +typedef int ctype_t; +#endif #ifdef __cplusplus } diff --git a/ACE/ace/os_include/os_errno.h b/ACE/ace/os_include/os_errno.h index 6d2656dba16..eb51405c576 100644 --- a/ACE/ace/os_include/os_errno.h +++ b/ACE/ace/os_include/os_errno.h @@ -92,9 +92,9 @@ extern "C" void herror (const char *str); #endif /* ACE_HAS_H_ERRNO */ -#if !defined (ACE_WIN32) && defined (ACE_LACKS_T_ERRNO) +#if defined (ACE_LACKS_T_ERRNO) extern int t_errno; -#endif /* ACE_WIN32 && ACE_LACKS_T_ERRNO */ +#endif /* ACE_LACKS_T_ERRNO */ #if !defined (ENOSYS) # define ENOSYS EFAULT /* Operation not supported or unknown error. */ diff --git a/ACE/ace/os_include/os_signal.h b/ACE/ace/os_include/os_signal.h index fd30f065f1e..acda29454d7 100644 --- a/ACE/ace/os_include/os_signal.h +++ b/ACE/ace/os_include/os_signal.h @@ -70,14 +70,6 @@ extern "C" # undef sigismember #endif /* ACE_HAS_SIG_MACROS */ -// This must come after signal.h is #included. It's to counteract -// the sigemptyset and sigfillset #defines, which only happen -// when __OPTIMIZE__ is #defined (really!) on Linux. -#if defined (linux) && defined (__OPTIMIZE__) -# undef sigemptyset -# undef sigfillset -#endif /* linux && __OPTIMIZE__ */ - #if !defined (ACE_HAS_SIG_ATOMIC_T) typedef int sig_atomic_t; #endif /* !ACE_HAS_SIG_ATOMIC_T */ @@ -134,6 +126,14 @@ extern "C" # define SIGALRM 0 #endif /* SIGALRM */ +#if !defined (SIGABRT) +# define SIGABRT 0 +#endif /* SIGABRT */ + +#if !defined (SIGTERM) +# define SIGTERM 0 +#endif /* SIGTERM */ + #if !defined (SIG_DFL) # define SIG_DFL ((__sighandler_t) 0) #endif /* SIG_DFL */ @@ -165,6 +165,10 @@ extern "C" # define ACE_NSIG NSIG #endif /* __Lynx__ */ +#if defined (ACE_HAS_WINCE) + typedef void (__cdecl * __sighandler_t)(int); +#endif + #if defined (ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES) || defined (ACE_HAS_LYNXOS50_SIGNALS) // Prototypes for both signal() and struct sigaction are consistent.. typedef void (*ACE_SignalHandler)(int); diff --git a/ACE/ace/os_include/os_stddef.h b/ACE/ace/os_include/os_stddef.h index 1c047ac1983..33fbd350166 100644 --- a/ACE/ace/os_include/os_stddef.h +++ b/ACE/ace/os_include/os_stddef.h @@ -36,28 +36,6 @@ extern "C" { #endif /* __cplusplus */ -//FUZZ: disable check_for_NULL -// NULL pointer constant -#if defined (ACE_LACKS_NULL) -# undef NULL -# if defined(__cplusplus) -# define NULL 0 -# else -# define NULL ((void *)0) -# endif -#endif /* ACE_LACKS_NULL */ -//FUZZ: enable check_for_NULL - -/* - Integer constant expression of type size_t, the value of which is the offset - in bytes to the structure member (member-designator), from the beginning of - its structure (type). -*/ -#if defined (ACE_LACKS_OFFSETOF) -# undef offsetof -# define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER) -#endif /* ACE_LACKS_OFFSETOF */ - // Signed integer type of the result of subtracting two pointers. #if defined (ACE_LACKS_PTRDIFF_T) # if !defined (ACE_PTRDIFF_T_TYPE) diff --git a/ACE/ace/os_include/os_stdlib.h b/ACE/ace/os_include/os_stdlib.h index a75dab5e35a..b6ed807c812 100644 --- a/ACE/ace/os_include/os_stdlib.h +++ b/ACE/ace/os_include/os_stdlib.h @@ -66,9 +66,17 @@ extern "C" #endif /* ACE_LACKS_MKTEMP_PROTOTYPE */ #if defined (ACE_LACKS_MKSTEMP_PROTOTYPE) - int mkstemp(char *); + int mkstemp (char *); #endif /* ACE_LACKS_MKSTEMP_PROTOTYPE */ +#if defined (ACE_LACKS_STRTOLL_PROTOTYPE) + long long strtoll (const char *, char **, int); +#endif /* ACE_LACKS_STRTOLL_PROTOTYPE */ + +#if defined (ACE_LACKS_STRTOULL_PROTOTYPE) + unsigned long long strtoull (const char *, char **, int); +#endif /* ACE_LACKS_STRTOULL_PROTOTYPE */ + #ifdef __cplusplus } #endif /* __cplusplus */ diff --git a/ACE/ace/os_include/os_string.h b/ACE/ace/os_include/os_string.h index c2992a06d0e..7c7f63de930 100644 --- a/ACE/ace/os_include/os_string.h +++ b/ACE/ace/os_include/os_string.h @@ -63,11 +63,6 @@ extern "C" size_t strnlen(const char *s, size_t maxlen); #endif /* ACE_LACKS_STRNLEN_PROTOTYPE */ -#if defined (__BORLANDC__) && (__BORLANDC__ < 0x560) -# define _stricmp stricmp -# define _strnicmp strnicmp -#endif /* __BORLANDC__ */ - #ifdef __cplusplus } #endif /* __cplusplus */ diff --git a/ACE/ace/os_include/os_typeinfo.h b/ACE/ace/os_include/os_typeinfo.h new file mode 100644 index 00000000000..f5c1d56d186 --- /dev/null +++ b/ACE/ace/os_include/os_typeinfo.h @@ -0,0 +1,39 @@ +// -*- C++ -*- + +//============================================================================= +/** + * @file os_typeinfo.h + * + * definitions for the typeinfo file + * + * $Id$ + * + * @author Don Hinton Johnny Willemsen <jwillemsen@remedy.nl> + */ +//============================================================================= + +#ifndef ACE_OS_INCLUDE_OS_TYPEINFO_H +#define ACE_OS_INCLUDE_OS_TYPEINFO_H + +#include /**/ "ace/pre.h" + +#include /**/ "ace/config-all.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + +# include /**/ <typeinfo> + +// Place all additions (especially function declarations) within extern "C" {} +#ifdef __cplusplus +extern "C" +{ +#endif /* __cplusplus */ + +#ifdef __cplusplus +} +#endif /* __cplusplus */ + +#include /**/ "ace/post.h" +#endif /* ACE_OS_INCLUDE_OS_TYPEINFO_H */ diff --git a/ACE/ace/os_include/os_unistd.h b/ACE/ace/os_include/os_unistd.h index 7aa4cdf9846..29c9a39e405 100644 --- a/ACE/ace/os_include/os_unistd.h +++ b/ACE/ace/os_include/os_unistd.h @@ -27,14 +27,13 @@ #include "ace/os_include/sys/os_types.h" #include "ace/os_include/os_inttypes.h" -#if defined (__BORLANDC__) -# include "ace/os_include/os_fcntl.h" -#endif /* __BORLANDC */ - -#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE) +#if defined (ACE_HAS_PROCESS_H) # include /**/ <process.h> +#endif /* ACE_HAS_PROCESS_H */ + +#if defined (ACE_HAS_IO_H) # include /**/ <io.h> -#endif /* ACE_WIN32 && !ACE_HAS_WINCE */ +#endif /* ACE_HAS_IO_H */ #if defined (ACE_HAS_SYS_SYSTEMINFO_H) # include /**/ <sys/systeminfo.h> @@ -164,12 +163,6 @@ extern "C" #endif /* _LARGEFILE64_SOURCE */ #if defined (__BORLANDC__) -# if (__BORLANDC__ <= 0x540) -# define _getcwd getcwd -# define _chdir chdir -# undef _access -# define _access access -# endif # define _isatty isatty #endif /* __BORLANDC__ */ diff --git a/ACE/ace/os_include/os_wchar.h b/ACE/ace/os_include/os_wchar.h index c0d1efa7aba..adc5f91b6bd 100644 --- a/ACE/ace/os_include/os_wchar.h +++ b/ACE/ace/os_include/os_wchar.h @@ -41,6 +41,14 @@ extern "C" { #endif /* __cplusplus */ +#if defined (ACE_LACKS_WCSTOLL_PROTOTYPE) + long long wcstoll (const wchar_t *, wchar_t **, int); +#endif /* ACE_LACKS_WCSTOLL_PROTOTYPE */ + +#if defined (ACE_LACKS_WCSTOULL_PROTOTYPE) + unsigned long long wcstoull (const wchar_t *, wchar_t **, int); +#endif /* ACE_LACKS_WCSTOULL_PROTOTYPE */ + #ifdef __cplusplus } #endif /* __cplusplus */ diff --git a/ACE/ace/os_include/sys/os_stat.h b/ACE/ace/os_include/sys/os_stat.h index a7c69dc36d4..389cb1151a6 100644 --- a/ACE/ace/os_include/sys/os_stat.h +++ b/ACE/ace/os_include/sys/os_stat.h @@ -26,9 +26,9 @@ #include "ace/os_include/sys/os_types.h" -#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE) +#if defined (ACE_HAS_DIRECT_H) # include /**/ <direct.h> -#endif /* ACE_WIN32 && !ACE_HAS_WINCE */ +#endif /* ACE_HAS_DIRECT_H */ #if !defined (ACE_LACKS_SYS_STAT_H) # include /**/ <sys/stat.h> @@ -77,7 +77,6 @@ extern "C" #endif /* S_ISLNK */ #if defined (ACE_HAS_WINCE) -# include "ace/Time_Value.h" // Translate the WinCE bits into names expected by our callers. // The dwFileAttributes parameter doesn't have protection info, so @@ -87,6 +86,10 @@ extern "C" # define S_IFREG FILE_ATTRIBUTE_NORMAL # define S_IFLNK 0 + // Since CE does not have _stat by default as NT/2000 does, the 'stat' + // struct defined here will be used. Also note that CE file system + // struct is only for the CE 3.0 or later. + // Refer to the WCHAR.H from Visual C++ and WIBASE.H from eVC 3.0. struct stat { /// always 0 on Windows platforms @@ -96,19 +99,19 @@ extern "C" dev_t st_rdev; /// file attribute - unsigned short st_mode; + mode_t st_mode; /// number of hard links - short st_nlink; + nlink_t st_nlink; /// time of last access - ACE_Time_Value st_atime; + time_t st_atime; /// time of last data modification - ACE_Time_Value st_mtime; + time_t st_mtime; /// time of creation - ACE_Time_Value st_ctime; + time_t st_ctime; /// file size, in bytes ACE_OFF_T st_size; diff --git a/ACE/ace/os_include/sys/os_timeb.h b/ACE/ace/os_include/sys/os_timeb.h index 2495097d344..b52b232bac8 100644 --- a/ACE/ace/os_include/sys/os_timeb.h +++ b/ACE/ace/os_include/sys/os_timeb.h @@ -36,11 +36,6 @@ extern "C" { #endif /* __cplusplus */ -#if defined (__BORLANDC__) && (__BORLANDC__ <= 0x560) -# define _ftime ftime -# define _timeb timeb -#endif /* __BORLANDC__ */ - #ifdef __cplusplus } #endif /* __cplusplus */ diff --git a/ACE/ace/os_include/sys/os_types.h b/ACE/ace/os_include/sys/os_types.h index 2b5743fb035..0b8e04e390e 100644 --- a/ACE/ace/os_include/sys/os_types.h +++ b/ACE/ace/os_include/sys/os_types.h @@ -30,9 +30,9 @@ # include /**/ <sys/types.h> #endif /* !ACE_LACKS_SYS_TYPES_H */ -#if defined (ACE_HAS_WINCE) +#if defined (ACE_HAS_TYPES_H) # include /**/ <types.h> -#endif /* ACE_HAS_WINCE */ +#endif /* ACE_HAS_TYPES_H */ # if defined (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB) && \ (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB != 0) @@ -55,22 +55,13 @@ typedef double ACE_timer_t; # endif /* CLOCK_REALTIME */ #endif /* ! ACE_HAS_CLOCK_GETTIME && ! _CLOCKID_T_ */ -#if defined (ACE_HAS_WINCE) - -// CE's add-on for c-style fstat/stat functionalities. This struct is -// by no mean complete compared to what you usually find in UNIX -// platforms. Only members that have direct conversion using Win32's -// BY_HANDLE_FILE_INFORMATION are defined so that users can discover -// non-supported members at compile time. Time values are of type -// ACE_Time_Value for easy comparison. - -// Since CE does not have _stat by default as NT/2000 does, the 'stat' -// struct defined here will be used. Also note that CE file system -// struct is only for the CE 3.0 or later. -// Refer to the WCHAR.H from Visual C++ and WIBASE.H from eVC 3.0. - +#if defined (ACE_LACKS_DEV_T) typedef unsigned int dev_t; -#endif /* ACE_HAS_WINCE */ +#endif /* ACE_LACKS_DEV_T */ + +#if defined (ACE_HAS_WINCE) + typedef long off_t; +#endif #if defined(ACE_WIN32) && defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS==64) typedef __int64 ACE_OFF_T; @@ -89,7 +80,7 @@ typedef double ACE_timer_t; typedef offset_t ACE_LOFF_T; #elif defined (WIN32) typedef __int64 ACE_LOFF_T; -#elif (defined (ACE_VXWORKS) && (ACE_VXWORKS <= 0x660)) || \ +#elif (defined (ACE_VXWORKS) && (ACE_VXWORKS <= 0x670)) || \ defined (ACE_LYNXOS_MAJOR) || \ (defined (ACE_OPENVMS) && !defined (_LARGEFILE)) || \ defined (__TANDEM) @@ -98,17 +89,25 @@ typedef double ACE_timer_t; typedef loff_t ACE_LOFF_T; #endif -#if defined (ACE_WIN32) -# if !defined (__BORLANDC__) - typedef DWORD nlink_t; -# if !defined(__MINGW32__) - typedef u_short mode_t; -# endif /* !__MINGW32__ */ - typedef long uid_t; - typedef long gid_t; -# endif /* __BORLANDC__ */ - typedef char *caddr_t; -#endif /* ACE_WIN32 */ +#if defined (ACE_LACKS_UID_T) +typedef long uid_t; +#endif /* ACE_LACKS_UID_T */ + +#if defined (ACE_LACKS_GID_T) +typedef long gid_t; +#endif /* ACE_LACKS_GID_T */ + +#if defined (ACE_LACKS_CADDR_T) +typedef char *caddr_t; +#endif /* ACE_LACKS_CADDR_T */ + +#if defined (ACE_LACKS_MODE_T) +typedef u_short mode_t; +#endif /* ACE_LACKS_MODE_T */ + +#if defined (ACE_LACKS_NLINK_T) +typedef DWORD nlink_t; +#endif /* ACE_LACKS_NLINK_T */ #if defined (ACE_LACKS_KEY_T) # if defined (ACE_WIN32) diff --git a/ACE/apps/JAWS/ChangeLog b/ACE/apps/JAWS/ChangeLog index 8fbcef9842b..79562d051a9 100644 --- a/ACE/apps/JAWS/ChangeLog +++ b/ACE/apps/JAWS/ChangeLog @@ -1,9 +1,15 @@ +Tue Feb 17 16:15:16 UTC 2009 William R. Otte <wotte@dre.vanderbilt.edu> + + * server/HTTP_Server.h: + + Updated to reflect movement of the svc_export.h file. + Fri Dec 7 22:00:18 UTC 2007 Will Otte <wotte@dre.Vanderbilt.Edu> * server/HTTP_Helpers.cpp: Replaced format strings passed sscanf as char arrays to be - string literals instead, to address a gcc warning. - + string literals instead, to address a gcc warning. + Wed Jul 17 14:40:28 UTC 2007 Johnny Willemsen <jwillemsen@remedy.nl> * clients/Caching/http_handler.cpp: diff --git a/ACE/apps/JAWS/clients/Blobby/Blob_Handler.cpp b/ACE/apps/JAWS/clients/Blobby/Blob_Handler.cpp index 8ae5cde6e9b..6f2cd6ee3d4 100644 --- a/ACE/apps/JAWS/clients/Blobby/Blob_Handler.cpp +++ b/ACE/apps/JAWS/clients/Blobby/Blob_Handler.cpp @@ -279,9 +279,7 @@ ACE_Blob_Writer::send_request (void) ACE_NEW_RETURN (mesg, char [mesglen], -1); // Create the header, store the actual length in mesglen. - // NOTE! %lu is really what's wanted. ACE_SIZE_T_FORMAT_SPECIFIER is - // defined in terms of ACE_TEXT which is NOT what we want here. - mesglen = ACE_OS::sprintf (mesg, "%s /%s %s %lu\n\n", + mesglen = ACE_OS::sprintf (mesg, "%s /%s %s " ACE_SIZE_T_FORMAT_SPECIFIER_ASCII "\n\n", request_prefix_, filename_, request_suffix_, (unsigned long)length_); diff --git a/ACE/apps/JAWS/server/HTTP_Handler.cpp b/ACE/apps/JAWS/server/HTTP_Handler.cpp index 340d4773c3f..b87fda02b5c 100644 --- a/ACE/apps/JAWS/server/HTTP_Handler.cpp +++ b/ACE/apps/JAWS/server/HTTP_Handler.cpp @@ -34,7 +34,7 @@ void HTTP_Handler::open (ACE_HANDLE handle, ACE_Message_Block &initial_data) { - ACE_DEBUG ((LM_DEBUG, "(%t) New connection \n")); + ACE_DEBUG ((LM_DEBUG, "(%t) New connection\n")); int sockbufsize = HTTP_Handler::MAX_SOCKBUFSIZE; int result = ACE_OS::setsockopt (handle, diff --git a/ACE/apps/JAWS/server/HTTP_Server.cpp b/ACE/apps/JAWS/server/HTTP_Server.cpp index 292b2ee89b2..77d08f05cc0 100644 --- a/ACE/apps/JAWS/server/HTTP_Server.cpp +++ b/ACE/apps/JAWS/server/HTTP_Server.cpp @@ -159,7 +159,6 @@ HTTP_Server::init (int argc, ACE_TCHAR *argv[]) //you know what you are doing ACE_Auto_Ptr<HTTP_Handler_Factory> factory (f); - // Choose what concurrency strategy to run. switch (this->strategy_) { diff --git a/ACE/apps/JAWS3/bench/rqfiles.cpp b/ACE/apps/JAWS3/bench/rqfiles.cpp index 714754cdec9..02cb88110ed 100644 --- a/ACE/apps/JAWS3/bench/rqfiles.cpp +++ b/ACE/apps/JAWS3/bench/rqfiles.cpp @@ -196,7 +196,7 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[]) filelist_name = options.optarg; break; case 'r': - request_rate = ::atof (options.optarg); + request_rate = ACE_OS::atof (options.optarg); if (request_rate == 0.0) request_rate = 1.0; break; diff --git a/ACE/apps/gperf/src/Key_List.cpp b/ACE/apps/gperf/src/Key_List.cpp index ca4e04d71c9..88f34cf12b4 100644 --- a/ACE/apps/gperf/src/Key_List.cpp +++ b/ACE/apps/gperf/src/Key_List.cpp @@ -366,7 +366,7 @@ Key_List::merge (List_Node *list1, List_Node *list2) { return list1; } - else if (occurrence_sort && list1->occurrence < list2->occurrence + else if ((occurrence_sort && list1->occurrence < list2->occurrence) || (hash_sort && list1->hash_value > list2->hash_value) || (key_sort && ACE_OS::strcmp (list1->key, list2->key) >= 0)) { diff --git a/ACE/apps/gperf/src/Options.cpp b/ACE/apps/gperf/src/Options.cpp index 44c233f7fcc..4e1ff23da1f 100644 --- a/ACE/apps/gperf/src/Options.cpp +++ b/ACE/apps/gperf/src/Options.cpp @@ -35,6 +35,16 @@ ACE_RCSID(src, Options, "$Id$") #include "ace/OS_NS_string.h" #include "ace/OS_NS_stdlib.h" +// These need to appear before the global class instantiation, since +// they are static members with a default constructor that initializes +// an ACE_Allocator needed in the Options class constructor. +ACE_CString Options::function_name_; +ACE_CString Options::fill_default_; +ACE_CString Options::key_name_; +ACE_CString Options::class_name_; +ACE_CString Options::hash_name_; +ACE_CString Options::delimiters_; + // Global option coordinator for the entire program. Options option; @@ -72,12 +82,6 @@ int Options::initial_asso_value_; int Options::argc_; ACE_TCHAR **Options::argv_; int Options::iterations_; -const char *Options::function_name_; -const char *Options::fill_default_; -const char *Options::key_name_; -const char *Options::class_name_; -const char *Options::hash_name_; -const char *Options::delimiters_; char Options::key_positions_[MAX_KEY_POS]; // Prints program usage to standard error stream. @@ -190,14 +194,14 @@ Options::~Options (void) "\nLINEARSEARCH is: %s" "\nBINARYSEARCH is: %s" "\niterations = %d" - "\nlookup function name = %s" - "\nfill default = %s" - "\nhash function name = %s" - "\nkey name = %s" + "\nlookup function name = %C" + "\nfill default = %C" + "\nhash function name = %C" + "\nkey name = %C" "\njump value = %d" "\nmax associcated value = %d" "\ninitial associated value = %d" - "\ndelimiters = %s" + "\ndelimiters = %C" "\nnumber of switch statements = %d" "\n", ACE_BIT_ENABLED (option_word_, DEBUGGING) ? "enabled" : "disabled", @@ -225,21 +229,21 @@ Options::~Options (void) ACE_BIT_ENABLED (option_word_, LINEARSEARCH) ? "enabled" : "disabled", ACE_BIT_ENABLED (option_word_, BINARYSEARCH) ? "enabled" : "disabled", iterations_, - function_name_, - fill_default_, - hash_name_, - key_name_, + function_name_.c_str (), + fill_default_.c_str (), + hash_name_.c_str (), + key_name_.c_str (), jump_, size_ - 1, initial_asso_value_, - delimiters_, + delimiters_.c_str (), total_switches_); if (ACE_BIT_ENABLED (option_word_, ALLCHARS)) ACE_OS::fprintf (stderr, "all characters are used in the hash function\n"); ACE_OS::fprintf (stderr, - "maximum keysig size = %d\nkey positions are: \n", + "maximum keysig size = %d\nkey positions are:\n", total_keysig_size_); for (ptr = key_positions_; *ptr != EOS; ptr++) @@ -436,7 +440,7 @@ Options::parse_args (int argc, ACE_TCHAR *argv[]) "\tof 2 generates 2 tables with 1/2 the elements in each table, etc.\n" "\tThis is useful since many C compilers cannot correctly generate code\n" "\tfor large switch statements.\n" - "-t\tAllows the user to include a structured type declaration for \n" + "-t\tAllows the user to include a structured type declaration for\n" "\tgenerated code. Any text before %%%% is consider part of the type\n" "\tdeclaration. Key words and additional fields may follow this, one\n" "\tgroup of fields per line.\n" @@ -803,7 +807,7 @@ Options::jump (void) const char * Options::function_name (void) { - return function_name_; + return function_name_.c_str (); } // Returns the fill default @@ -811,7 +815,7 @@ Options::function_name (void) const char * Options::fill_default (void) { - return fill_default_; + return fill_default_.c_str (); } // Returns the keyword key name. @@ -819,7 +823,7 @@ Options::fill_default (void) const char * Options::key_name (void) { - return key_name_; + return key_name_.c_str (); } // Returns the hash function name. @@ -827,7 +831,7 @@ Options::key_name (void) const char * Options::hash_name (void) { - return hash_name_; + return hash_name_.c_str (); } // Returns the generated class name. @@ -835,7 +839,7 @@ Options::hash_name (void) const char * Options::class_name (void) { - return class_name_; + return class_name_.c_str (); } // Returns the initial associated character value. @@ -859,7 +863,7 @@ Options::iterations (void) const char * Options::delimiter (void) { - return delimiters_; + return delimiters_.c_str (); } // Gets the total number of switch statements to generate. diff --git a/ACE/apps/gperf/src/Options.h b/ACE/apps/gperf/src/Options.h index ce264e859bc..78dfccafdab 100644 --- a/ACE/apps/gperf/src/Options.h +++ b/ACE/apps/gperf/src/Options.h @@ -25,6 +25,7 @@ #define OPTIONS_H #include "ace/Log_Msg.h" +#include "ace/SString.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once @@ -155,22 +156,22 @@ private: static ACE_TCHAR **argv_; // Stores a pointer to command-line vector. - static const char *function_name_; + static ACE_CString function_name_; // Names used for generated lookup function. - static const char *fill_default_; + static ACE_CString fill_default_; // Expression used to assign default values in keyword table. - static const char *key_name_; + static ACE_CString key_name_; // Name used for keyword key. - static const char *class_name_; + static ACE_CString class_name_; // Name used for generated C++ class. - static const char *hash_name_; + static ACE_CString hash_name_; // Name used for generated hash function. - static const char *delimiters_; + static ACE_CString delimiters_; // Separates keywords from other attributes. static char key_positions_[MAX_KEY_POS]; diff --git a/ACE/apps/mkcsregdb/mkcsregdb.cpp b/ACE/apps/mkcsregdb/mkcsregdb.cpp index 2dc87b85bce..bdb112c14b8 100644 --- a/ACE/apps/mkcsregdb/mkcsregdb.cpp +++ b/ACE/apps/mkcsregdb/mkcsregdb.cpp @@ -236,7 +236,7 @@ csdb_generator::init_output (const char *srcfile) ACE_OS::fprintf (outf_,"/*\n * Codeset registry DB, generated %s * source: %s\n", ACE_OS::asctime (ACE_OS::localtime(&now)), srcfile); - ACE_OS::fprintf (outf_," *\n * To populate the registry_db, construct a codeset registry text file based \n"); + ACE_OS::fprintf (outf_," *\n * To populate the registry_db, construct a codeset registry text file based\n"); ACE_OS::fprintf (outf_," * on the OSF's Character and Code Set Registry. See DCE RFC 40.1 for details\n"); ACE_OS::fprintf (outf_," * on obtaining the full text for the current registry. Once you have composed\n"); ACE_OS::fprintf (outf_," * a text file containing all the desired codeset information, build and run\n"); diff --git a/ACE/bin/MakeProjectCreator/config/ace_fl.mpb b/ACE/bin/MakeProjectCreator/config/ace_fl.mpb index fd7f56695aa..2f42e405db6 100644 --- a/ACE/bin/MakeProjectCreator/config/ace_fl.mpb +++ b/ACE/bin/MakeProjectCreator/config/ace_fl.mpb @@ -12,7 +12,7 @@ project : ace_x11, ace_gl { LDFLAGS += $(PLATFORM_FL_LDFLAGS) $(PLATFORM_GL_LDFLAGS) LDFLAGS += $(PLATFORM_GL_LDFLAGS) } - specific(vc9,vc8,vc71,vc7,vc6) { + specific(vc10,vc9,vc8,vc71) { libs += fltkdll } diff --git a/ACE/bin/MakeProjectCreator/config/ace_gl.mpb b/ACE/bin/MakeProjectCreator/config/ace_gl.mpb index 645fd0104aa..4b18245232a 100644 --- a/ACE/bin/MakeProjectCreator/config/ace_gl.mpb +++ b/ACE/bin/MakeProjectCreator/config/ace_gl.mpb @@ -10,7 +10,7 @@ project : ace_x11 { LIBS += $(PLATFORM_GL_LIBS) $(PLATFORM_X11_LIBS) LDFLAGS += $(PLATFORM_GL_LDFLAGS) $(PLATFORM_GL_LDFLAGS) } - specific(vc6,vc7,vc71,vc8,vc9) { + specific(vc71,vc8,vc9,vc10) { lit_libs += OpenGL32 } } diff --git a/ACE/bin/MakeProjectCreator/config/ace_mc.mpb b/ACE/bin/MakeProjectCreator/config/ace_mc.mpb index 5bb3667fcae..5d7ea882f48 100644 --- a/ACE/bin/MakeProjectCreator/config/ace_mc.mpb +++ b/ACE/bin/MakeProjectCreator/config/ace_mc.mpb @@ -5,4 +5,13 @@ project : ace_etcl_parser { after += Monitor_Control libs += ACE_Monitor_Control avoids += wince + + specific (vc6, vc7, vc71, vc8, vc9, vc10, nmake) { + lit_libs += pdh + } + verbatim (gnuace, local) { + "ifeq (1,$(winnt))" + " ACE_SHLIBS += pdh.lib" + "endif" + } } diff --git a/ACE/bin/MakeProjectCreator/config/ace_qt.mpb b/ACE/bin/MakeProjectCreator/config/ace_qt.mpb index 3c8635caaf2..d5853390400 100644 --- a/ACE/bin/MakeProjectCreator/config/ace_qt.mpb +++ b/ACE/bin/MakeProjectCreator/config/ace_qt.mpb @@ -21,7 +21,7 @@ project: qt { pure_libs += $(ACE_QT_LIBS) } - specific(vc6, vc7, vc71, vc8, vc9, nmake) { + specific(vc71, vc8, vc9, vc10, nmake) { lit_libs -= qt-mt$(QT_VERSION) pure_libs += $(PLATFORM_QT_LIBS) } diff --git a/ACE/bin/MakeProjectCreator/config/ace_x11.mpb b/ACE/bin/MakeProjectCreator/config/ace_x11.mpb index 38164eb093f..ac67115901d 100644 --- a/ACE/bin/MakeProjectCreator/config/ace_x11.mpb +++ b/ACE/bin/MakeProjectCreator/config/ace_x11.mpb @@ -2,7 +2,7 @@ // $Id$ project { - specific(vc6,vc7,vc71,vc8,vc9) { + specific(vc71,vc8,vc9,vc10) { } else { requires += x11 } diff --git a/ACE/bin/MakeProjectCreator/config/acedefaults.mpb b/ACE/bin/MakeProjectCreator/config/acedefaults.mpb index eec80500b08..c6e9a9fb756 100644 --- a/ACE/bin/MakeProjectCreator/config/acedefaults.mpb +++ b/ACE/bin/MakeProjectCreator/config/acedefaults.mpb @@ -9,7 +9,7 @@ project: ipv6, vc_warnings, build_files, test_files { // Support the alternative Borland Make project type specific(bmake) { unicode_flags += -DACE_USES_WCHAR - macros += ACE_LD_DECORATOR_STR=ACE_TEXT(\\"$(LIBMODIFIER)$(ULIBMODIFIER)\\") + macros += MPC_LIB_MODIFIER=\\"$(LIBMODIFIER)$(ULIBMODIFIER)\\" debug_macros += ACE_NO_INLINE=1 } @@ -18,4 +18,8 @@ project: ipv6, vc_warnings, build_files, test_files { includes += $(ACE_BUILDDIR) libpaths -= $(ACE_ROOT)/lib } + + specific(vc7,vc71,vc8,vc9,vc10,nmake) { + macro_for_lib_modifier=1 + } } diff --git a/ACE/bin/MakeProjectCreator/config/crosscompile.mpb b/ACE/bin/MakeProjectCreator/config/crosscompile.mpb index 4f5853cd4a5..2aba9af82ad 100644 --- a/ACE/bin/MakeProjectCreator/config/crosscompile.mpb +++ b/ACE/bin/MakeProjectCreator/config/crosscompile.mpb @@ -2,7 +2,7 @@ // $Id$ project { - specific(vc7, vc71, vc8, vc9) { + specific(vc7, vc71, vc8, vc9, vc10) { nocross = 1 } verbatim(gnuace, circuit) { diff --git a/ACE/bin/MakeProjectCreator/config/global.features b/ACE/bin/MakeProjectCreator/config/global.features index 89b20bf364e..95464b66506 100644 --- a/ACE/bin/MakeProjectCreator/config/global.features +++ b/ACE/bin/MakeProjectCreator/config/global.features @@ -33,6 +33,7 @@ java = 0 zlib = 0 zzip = 0 bzip2 = 0 +lzo2 = 0 ipv6 = 0 mfc = 0 rpc = 0 @@ -50,7 +51,11 @@ vcl = 0 stl = 0 xsc = 0 mcpp = 0 - +tao_idl_fe_gen = 0 +xerces = 0 +xerces2 = 0 +xerces3 = 0 +ofccm = 0 // Features for various GUI libraries // Some of features are switched on because they are also controlled diff --git a/ACE/bin/MakeProjectCreator/config/ipv6.mpb b/ACE/bin/MakeProjectCreator/config/ipv6.mpb index 14d48b8a642..8184e876675 100644 --- a/ACE/bin/MakeProjectCreator/config/ipv6.mpb +++ b/ACE/bin/MakeProjectCreator/config/ipv6.mpb @@ -2,7 +2,7 @@ // $Id$ feature(ipv6) { - specific(vc6, vc7, vc71, vc8, vc9, nmake, bmake, bds4) { + specific(vc6, vc7, vc71, vc8, vc9, vc10, nmake, bmake, bds4) { lit_libs += iphlpapi } diff --git a/ACE/bin/MakeProjectCreator/config/minizip.mpb b/ACE/bin/MakeProjectCreator/config/minizip.mpb new file mode 100644 index 00000000000..907b8eedf11 --- /dev/null +++ b/ACE/bin/MakeProjectCreator/config/minizip.mpb @@ -0,0 +1,8 @@ +// -*- MPC -*- +// $Id$ + +project { + after += minizip + libs += minizip + includes += $(ACE_ROOT)/contrib +} diff --git a/ACE/bin/MakeProjectCreator/config/vc_warnings.mpb b/ACE/bin/MakeProjectCreator/config/vc_warnings.mpb index 32e49922a7b..3e8ae307f7d 100644 --- a/ACE/bin/MakeProjectCreator/config/vc_warnings.mpb +++ b/ACE/bin/MakeProjectCreator/config/vc_warnings.mpb @@ -10,19 +10,19 @@ feature(vc_avoid_crt_secure_warnings) { - specific(vc8, vc9, nmake) { + specific(vc8, vc9, vc10, nmake) { macros += _CRT_SECURE_NO_WARNINGS _CRT_SECURE_NO_DEPRECATE _CRT_NONSTDC_NO_DEPRECATE } } feature(!vc_scl_secure_warnings) { - specific(vc8, vc9, nmake) { + specific(vc8, vc9, vc10, nmake) { macros += _SCL_SECURE_NO_WARNINGS } } feature(vc_avoid_this_in_initializer_warnings) { - specific(vc8, vc9) { + specific(vc8, vc9, vc10) { DisableSpecificWarnings += 4355 } specific(nmake) { diff --git a/ACE/bin/MakeProjectCreator/templates/gnu.mpd b/ACE/bin/MakeProjectCreator/templates/gnu.mpd index 7b546119327..656145b8eba 100644 --- a/ACE/bin/MakeProjectCreator/templates/gnu.mpd +++ b/ACE/bin/MakeProjectCreator/templates/gnu.mpd @@ -16,12 +16,16 @@ DEPENDENCY_FILE = .depend.<%project_name%> <%if(exename)%> BIN_UNCHECKED = <%exename%> <%endif%> +<%if(staticname || sharedname)%> + +LIB_PREFIX ?= lib +<%endif%> <%if(staticname)%> -## LIB may be set to empty later on in this file -LIB_UNCHECKED = lib<%libname_prefix%><%staticname%>.a -LIB = $(LIB_UNCHECKED) -LIB_NAME = lib<%libname_prefix%><%staticname%> +## LIB_CHECKED may be set to empty later on in this file +LIB_UNCHECKED = $(LIB_PREFIX)<%libname_prefix%><%staticname%>.$(LIBEXT) +LIB_CHECKED = $(LIB_UNCHECKED) +LIB_NAME = $(LIB_PREFIX)<%libname_prefix%><%staticname%> <%if(!sharedname)%> static_libs_only = 1 <%endif%> @@ -29,7 +33,7 @@ static_libs_only = 1 <%if(sharedname)%> ## SHLIB may be set to empty later on in this file -SHLIB_UNCHECKED = lib<%libname_prefix%><%sharedname%>.$(SOEXT) +SHLIB_UNCHECKED = $(LIB_PREFIX)<%libname_prefix%><%sharedname%>.$(SOEXT) SHLIB = $(SHLIB_UNCHECKED) <%endif%> <%if(tao || ciao)%> @@ -188,9 +192,10 @@ RESOURCES += \ <%endfor%> <%if(includes)%> +RC_INCLUDE_FLAG ?= --include-dir= RCFLAGS = \ <%foreach(includes)%> - --include-dir=<%include%><%fornotlast(" \\")%> + $(RC_INCLUDE_FLAG)<%include%><%fornotlast(" \\")%> <%endfor%> <%endif%> endif @@ -241,7 +246,7 @@ ifneq ($(<%avoid%>),1) <%endfor%> ifneq ($(LIBCHECK), 1) <%if(staticname)%> - LIB = + LIB_CHECKED = <%endif%> <%if(sharedname)%> SHLIB = @@ -251,7 +256,7 @@ endif <%foreach(avoids)%> else <%if(staticname)%> - LIB = + LIB_CHECKED = <%endif%> <%if(sharedname)%> SHLIB = @@ -262,7 +267,7 @@ endif <%foreach(requires)%> else <%if(staticname)%> - LIB = + LIB_CHECKED = <%endif%> <%if(sharedname)%> SHLIB = @@ -283,7 +288,7 @@ ifneq ($(<%avoid%>),1) <%foreach(avoids)%> else <%if(staticname)%> - LIB = + LIB_CHECKED = <%endif%> <%if(sharedname)%> SHLIB = @@ -294,7 +299,7 @@ endif <%foreach(requires)%> else <%if(staticname)%> - LIB = + LIB_CHECKED = <%endif%> <%if(sharedname)%> SHLIB = @@ -315,20 +320,20 @@ ifneq ($(<%avoid%>),1) <%endfor%> <%foreach(tagchecks)%> else - LIB = + LIB_CHECKED = SHLIB = endif <%endfor%> <%foreach(avoids)%> else - LIB = + LIB_CHECKED = SHLIB = all: avoid_warning endif <%endfor%> <%foreach(requires)%> else - LIB = + LIB_CHECKED = SHLIB = all: require_warning endif @@ -408,13 +413,13 @@ endif <%if(flag_overrides(source_file, buildflags))%> $(VDIR)<%noextension(source_file)%>.$(OBJEXT): <%source_file%> @$(MKDIR) $(VDIR)<%dirname(source_file)%> - <%if(ends_with(source_file, \.c))%>$(COMPILE.c)<%else%>$(COMPILE.cc)<%endif%> <%flag_overrides(source_file, buildflags)%> $(ACE_USE_PCH_OPT) $(CC_OUTPUT_FLAG) $@ $< + <%if(ends_with(source_file, \.c))%>$(COMPILE.c)<%else%>$(COMPILE.cc)<%endif%> <%flag_overrides(source_file, buildflags)%> $(ACE_USE_PCH_OPT) $(CC_OUTPUT_FLAG)$(CC_OUTPUT_FLAG_SEP)$@ $< ${MVCMD} ifneq ($(VSHDIR), $(VDIR)) $(VSHDIR)<%noextension(source_file)%>.$(OBJEXT): <%source_file%> @$(MKDIR) $(VSHDIR)<%dirname(source_file)%> - <%if(ends_with(source_file, \.c))%>$(COMPILE.c)<%else%>$(COMPILE.cc)<%endif%> <%flag_overrides(source_file, buildflags)%> $(ACE_USE_PCH_OPT) $(PIC) $(CC_OUTPUT_FLAG) $@ $< + <%if(ends_with(source_file, \.c))%>$(COMPILE.c)<%else%>$(COMPILE.cc)<%endif%> <%flag_overrides(source_file, buildflags)%> $(ACE_USE_PCH_OPT) $(PIC) $(CC_OUTPUT_FLAG)$(CC_OUTPUT_FLAG_SEP)$@ $< endif <%else%> @@ -422,13 +427,13 @@ endif <%if(starts_with(source_file, \$) || !ends_with(source_file, \.cpp))%> $(VDIR)<%noextension(source_file)%>.$(OBJEXT): <%source_file%> @$(MKDIR) $(VDIR)<%dirname(source_file)%> - <%if(ends_with(source_file, \.c))%>$(COMPILE.c)<%else%>$(COMPILE.cc)<%endif%> <%if(flag_overrides(source_file, buildflags))%><%flag_overrides(source_file, buildflags)%> <%endif%>$(ACE_USE_PCH_OPT) $(CC_OUTPUT_FLAG) $@ $< + <%if(ends_with(source_file, \.c))%>$(COMPILE.c)<%else%>$(COMPILE.cc)<%endif%> <%if(flag_overrides(source_file, buildflags))%><%flag_overrides(source_file, buildflags)%> <%endif%>$(ACE_USE_PCH_OPT) $(CC_OUTPUT_FLAG)$(CC_OUTPUT_FLAG_SEP)$@ $< ${MVCMD} ifneq ($(VSHDIR), $(VDIR)) $(VSHDIR)<%noextension(source_file)%>.$(OBJEXT): <%source_file%> @$(MKDIR) $(VSHDIR)<%dirname(source_file)%> - <%if(ends_with(source_file, \.c))%>$(COMPILE.c)<%else%>$(COMPILE.cc)<%endif%> <%if(flag_overrides(source_file, buildflags))%><%flag_overrides(source_file, buildflags)%> <%endif%>$(ACE_USE_PCH_OPT) $(PIC) $(CC_OUTPUT_FLAG) $@ $< + <%if(ends_with(source_file, \.c))%>$(COMPILE.c)<%else%>$(COMPILE.cc)<%endif%> <%if(flag_overrides(source_file, buildflags))%><%flag_overrides(source_file, buildflags)%> <%endif%>$(ACE_USE_PCH_OPT) $(PIC) $(CC_OUTPUT_FLAG)$(CC_OUTPUT_FLAG_SEP)$@ $< endif <%endif%> @@ -653,7 +658,11 @@ endif <%endif%> $(BIN): $(addprefix $(VDIR), $(OBJS)) $(DEPLIBS) + ifneq (,$(LINK.cc.override)) + $(LINK.cc.override) + else $(LINK.cc) $(LDFLAGS) $(CC_OUTPUT_FLAG) $@ $(filter-out %.a,$^) $(VLDLIBS) $(POSTLINK) + endif endif <%endif%> diff --git a/ACE/bin/MakeProjectCreator/templates/vxtest.mpd b/ACE/bin/MakeProjectCreator/templates/vxtest.mpd index 0d361c30dad..079fe74530c 100644 --- a/ACE/bin/MakeProjectCreator/templates/vxtest.mpd +++ b/ACE/bin/MakeProjectCreator/templates/vxtest.mpd @@ -1,4 +1,4 @@ # VxWorks script for loading libraries used by: <%if(exename)%><%exename%><%endif%><%if(sharedname)%><%sharedname%><%else%><%if(staticname)%><%staticname%><%endif%><%endif%> <%foreach(reverse(libs))%> -lib<%lib%>.so +<%libname_prefix%><%lib%><%if(use_lib_modifier)%><%lib_modifier%><%endif%> <%endfor%> diff --git a/ACE/bin/PerlACE/Process.pm b/ACE/bin/PerlACE/Process.pm index c6162d784f5..f4c9a489bd1 100644 --- a/ACE/bin/PerlACE/Process.pm +++ b/ACE/bin/PerlACE/Process.pm @@ -51,7 +51,7 @@ for(my $i = 0; $i <= $#ARGV; ++$i) { } @ARGV = @new_argv; -$PerlACE::Process::WAIT_DELAY_FACTOR = $ENV{"ACE_RUNTEST_DELAY"}; +$PerlACE::Process::WAIT_DELAY_FACTOR = (defined $ENV{"ACE_RUNTEST_DELAY"}) ? $ENV{"ACE_RUNTEST_DELAY"} : 1; # Set the process's target. If there's none, behavior falls back to pre-target # behavior. diff --git a/ACE/bin/PerlACE/ProcessVX.pm b/ACE/bin/PerlACE/ProcessVX.pm index bc101fd9e1b..6c7e63f7e15 100644 --- a/ACE/bin/PerlACE/ProcessVX.pm +++ b/ACE/bin/PerlACE/ProcessVX.pm @@ -156,6 +156,9 @@ sub delay_factor { sub iboot_cycle_power { my $self = shift; + my $mode = shift; + + # mode 0 is reboot, mode 1 is just shutdown my ($iboot_host, $iboot_outlet, @@ -242,7 +245,12 @@ sub iboot_cycle_power { $iboot_passwd = "PASS"; } - my $ipal_command_series = (defined $iboot_outlet) ? ['E', 'D'] : ['f', 'n']; + my $ipal_command_series; + if (defined $iboot_outlet) { + $ipal_command_series = ($mode == 0 ? ['E', 'D'] : ['E']); + } else { + $ipal_command_series = ($mode == 0 ? ['f', 'n'] : ['f']); + } foreach my $ipal_cmd (@$ipal_command_series) { my $retries = 3; @@ -317,7 +325,7 @@ sub reboot { } else { if (defined $ENV{'ACE_RUN_VX_IBOOT'}) { - $self->iboot_cycle_power(); + $self->iboot_cycle_power(0); } else { if (defined $ENV{'ACE_TEST_VERBOSE'}) { @@ -365,8 +373,8 @@ sub handle_vxtest_file while(<$fh>) { $line1 = $_; chomp $line1; - push @$vx_ref, "ld < $line1"; - unshift @$unld_ref, "unld \"$line1\""; + push @$vx_ref, "ld < lib$line1" . ".so"; + unshift @$unld_ref, "unld \"lib$line1" . ".so\""; } close $fh; } else { @@ -396,11 +404,15 @@ for(my $i = 0; $i <= $#ARGV; ++$i) { $PerlACE::ProcessVX::WAIT_DELAY_FACTOR = $ENV{"ACE_RUNTEST_DELAY"}; +if (defined $ENV{'ACE_TEST_WINCE'}) { + require PerlACE::ProcessWinCE; +} else { if ($OSNAME eq "MSWin32") { require PerlACE::ProcessVX_Win32; } else { require PerlACE::ProcessVX_Unix; } +} 1; diff --git a/ACE/bin/PerlACE/ProcessVX_Unix.pm b/ACE/bin/PerlACE/ProcessVX_Unix.pm index c8778c32895..23e076bade3 100644 --- a/ACE/bin/PerlACE/ProcessVX_Unix.pm +++ b/ACE/bin/PerlACE/ProcessVX_Unix.pm @@ -53,6 +53,7 @@ sub new $self->{PROCESS} = undef; $self->{EXECUTABLE} = shift; $self->{ARGUMENTS} = shift; + $self->{TARGET} = shift; if (!defined $PerlACE::ProcessVX::WAIT_DELAY_FACTOR) { $PerlACE::ProcessVX::WAIT_DELAY_FACTOR = 2; } @@ -72,6 +73,11 @@ sub DESTROY "> still running upon object destruction\n"; $self->Kill (); } + + if (defined $ENV{'ACE_RUN_VX_IBOOT'} && !defined $ENV{'ACE_RUN_VX_NO_SHUTDOWN'}) { + # Shutdown the target to save power + $self->iboot_cycle_power(1); + } } ############################################################################### @@ -132,6 +138,10 @@ sub Spawn () @cmds[$cmdnr++] = '< ' . $ENV{"ACE_RUN_VX_STARTUP_SCRIPT"}; } + if (defined $ENV{"ACE_RUN_VX_STARTUP_COMMAND"}) { + @cmds[$cmdnr++] = $ENV{"ACE_RUN_VX_STARTUP_COMMAND"}; + } + if ($PerlACE::VxWorks_RTP_Test) { @cmds[$cmdnr++] = 'cmd'; if ( defined $ENV{"ACE_RUN_VX_TGTSVR_DEFGW"} && $self->{SET_VX_DEFGW}) { @@ -150,6 +160,10 @@ sub Spawn () @cmds[$cmdnr++] = 'C putenv("TAO_ORB_DEBUG=' . $ENV{"ACE_RUN_TAO_ORB_DEBUG"} . '")'; } + if (defined $ENV{'ACE_RUN_ACE_LD_SEARCH_PATH'}) { + @cmds[$cmdnr++] = 'C putenv("ACE_LD_SEARCH_PATH=' . $ENV{"ACE_RUN_ACE_LD_SEARCH_PATH"} . '")'; + } + if (defined $ENV{'ACE_RUN_VX_CHECK_RESOURCES'}) { @cmds[$cmdnr++] = 'C memShow()'; } @@ -157,7 +171,8 @@ sub Spawn () $cmdline = $program . $PerlACE::ProcessVX::ExeExt . ' ' . $self->{ARGUMENTS}; @cmds[$cmdnr++] = $cmdline; $prompt = '\[vxWorks \*\]\# $'; - } else { + } + if ($PerlACE::VxWorks_Test) { if ( defined $ENV{"ACE_RUN_VX_TGTSVR_DEFGW"} && $PerlACE::ProcessVX::VxDefGw) { @cmds[$cmdnr++] = "mRouteAdd(\"0.0.0.0\", \"" . $ENV{"ACE_RUN_VX_TGTSVR_DEFGW"} . "\", 0,0,0)"; $PerlACE::ProcessVX::VxDefGw = 0; @@ -192,10 +207,15 @@ sub Spawn () @cmds[$cmdnr++] = 'putenv("TAO_ORB_DEBUG=' . $ENV{"ACE_RUN_TAO_ORB_DEBUG"} . '")'; } + if (defined $ENV{'ACE_RUN_ACE_LD_SEARCH_PATH'}) { + @cmds[$cmdnr++] = 'putenv("ACE_LD_SEARCH_PATH=' . $ENV{"ACE_RUN_ACE_LD_SEARCH_PATH"} . '")'; + } + @cmds[$cmdnr++] = 'ld <'. $program . $PerlACE::ProcessVX::ExeExt; $cmdline = $program . $PerlACE::ProcessVX::ExeExt . ' ' . $self->{ARGUMENTS}; if (defined $self->{ARGUMENTS}) { ($arguments = $self->{ARGUMENTS})=~ s/\"/\\\"/g; + ($arguments = $self->{ARGUMENTS})=~ s/\'/\\\'/g; $arguments = ",\"" . $arguments . "\""; } if (defined $ENV{'ACE_RUN_VX_TGTSRV_WORKINGDIR'}) { @@ -230,7 +250,7 @@ sub Spawn () if (!defined $telnet_port) { $telnet_port = 23; } - my $t = new Net::Telnet(Timeout => 10, Errmode => 'return', Host => $telnet_host, Port => $telnet_port); + my $t = new Net::Telnet(Timeout => 600, Errmode => 'return', Host => $telnet_host, Port => $telnet_port); if (!defined $t) { die "ERROR: Telnet failed to <" . $telnet_host . ":". $telnet_port . ">"; } diff --git a/ACE/bin/PerlACE/ProcessVX_Win32.pm b/ACE/bin/PerlACE/ProcessVX_Win32.pm index fb713370645..f1432314e48 100644 --- a/ACE/bin/PerlACE/ProcessVX_Win32.pm +++ b/ACE/bin/PerlACE/ProcessVX_Win32.pm @@ -32,6 +32,7 @@ sub new $self->{PROCESS} = undef; $self->{EXECUTABLE} = shift; $self->{ARGUMENTS} = shift; + $self->{TARGET} = shift; if (!defined $PerlACE::ProcessVX::WAIT_DELAY_FACTOR) { $PerlACE::ProcessVX::WAIT_DELAY_FACTOR = 3; } @@ -55,6 +56,11 @@ sub DESTROY if (!defined $ENV{'ACE_TEST_VERBOSE'}) { unlink "run_vx.pl"; } + + if (defined $ENV{'ACE_RUN_VX_IBOOT'} && !defined $ENV{'ACE_RUN_VX_NO_SHUTDOWN'}) { + # Shutdown the target to save power + $self->iboot_cycle_power(1); + } } ############################################################################### @@ -126,6 +132,10 @@ sub Spawn () @cmds[$cmdnr++] = '< ' . $ENV{"ACE_RUN_VX_STARTUP_SCRIPT"}; } + if (defined $ENV{"ACE_RUN_VX_STARTUP_COMMAND"}) { + @cmds[$cmdnr++] = $ENV{"ACE_RUN_VX_STARTUP_COMMAND"}; + } + if ($PerlACE::VxWorks_RTP_Test) { @cmds[$cmdnr++] = 'cmd'; if ( defined $ENV{"ACE_RUN_VX_TGTSVR_DEFGW"} && $PerlACE::ProcessVX::VxDefGw) { @@ -144,6 +154,10 @@ sub Spawn () @cmds[$cmdnr++] = 'C putenv("TAO_ORB_DEBUG=' . $ENV{"ACE_RUN_TAO_ORB_DEBUG"} . '")'; } + if (defined $ENV{'ACE_RUN_ACE_LD_SEARCH_PATH'}) { + @cmds[$cmdnr++] = 'C putenv("ACE_LD_SEARCH_PATH=' . $ENV{"ACE_RUN_ACE_LD_SEARCH_PATH"} . '")'; + } + if (defined $ENV{'ACE_RUN_VX_CHECK_RESOURCES'}) { @cmds[$cmdnr++] = 'C memShow()'; } @@ -151,7 +165,8 @@ sub Spawn () $cmdline = $program . $PerlACE::ProcessVX::ExeExt . ' ' . $self->{ARGUMENTS}; @cmds[$cmdnr++] = $cmdline; $prompt = '\[vxWorks \*\]\# $'; - } else { + } + if ($PerlACE::VxWorks_Test) { if ( defined $ENV{"ACE_RUN_VX_TGTSVR_DEFGW"} && $PerlACE::ProcessVX::VxDefGw) { @cmds[$cmdnr++] = "mRouteAdd(\"0.0.0.0\", \"" . $ENV{"ACE_RUN_VX_TGTSVR_DEFGW"} . "\", 0,0,0)"; $PerlACE::ProcessVX::VxDefGw = 0; @@ -186,8 +201,11 @@ sub Spawn () @cmds[$cmdnr++] = 'putenv("TAO_ORB_DEBUG=' . $ENV{"ACE_RUN_TAO_ORB_DEBUG"} . '")'; } + if (defined $ENV{'ACE_RUN_ACE_LD_SEARCH_PATH'}) { + @cmds[$cmdnr++] = 'putenv("ACE_LD_SEARCH_PATH=' . $ENV{"ACE_RUN_ACE_LD_SEARCH_PATH"} . '")'; + } + @cmds[$cmdnr++] = 'ld <'. $program . $PerlACE::ProcessVX::ExeExt; - $cmdline = $program . $PerlACE::ProcessVX::ExeExt . ' ' . $self->{ARGUMENTS}; if (defined $self->{ARGUMENTS}) { ($arguments = $self->{ARGUMENTS})=~ s/\"/\\\"/g; ($arguments = $self->{ARGUMENTS})=~ s/\'/\\\'/g; @@ -225,7 +243,7 @@ if (!defined $telnet_host) { if (!defined $telnet_port) { $telnet_port = 23; } -my $t = new Net::Telnet(Timeout => 10, Errmode => 'return', Host => $telnet_host, Port => $telnet_port); +my $t = new Net::Telnet(Timeout => 600, Errmode => 'return', Host => $telnet_host, Port => $telnet_port); if (!defined $t) { die "ERROR: Telnet failed to <" . $telnet_host . ":". $telnet_port . ">"; } diff --git a/ACE/bin/PerlACE/ProcessWinCE.pm b/ACE/bin/PerlACE/ProcessWinCE.pm new file mode 100644 index 00000000000..7556c68bdbb --- /dev/null +++ b/ACE/bin/PerlACE/ProcessWinCE.pm @@ -0,0 +1,358 @@ +#! /usr/bin/perl +# $Id$ + +package PerlACE::ProcessVX; + +use strict; +use Win32::Process; +use File::Basename; +use File::Spec; +use FileHandle; +use Cwd; + +eval { require Net::Telnet; }; + +############################################################################### + +# This is what GetExitCode will return if the process is still running. +my $STILL_ACTIVE = 259; + +############################################################################### + +### Constructor and Destructor + +sub new +{ + my $proto = shift; + my $class = ref ($proto) || $proto; + my $self = {}; + + $self->{RUNNING} = 0; + $self->{IGNOREEXESUBDIR} = 1; + $self->{PROCESS} = undef; + $self->{TARGET} = shift; + $self->{EXECUTABLE} = shift; + $self->{ARGUMENTS} = shift; + if (!defined $PerlACE::ProcessVX::WAIT_DELAY_FACTOR) { + $PerlACE::ProcessVX::WAIT_DELAY_FACTOR = 3; + } + if (!defined $PerlACE::ProcessVX::RebootCmd) { + $PerlACE::ProcessVX::RebootCmd = "reboot"; + } + bless ($self, $class); + return $self; +} + +sub DESTROY +{ + my $self = shift; + + if ($self->{RUNNING} == 1) { + print STDERR "ERROR: <", $self->{EXECUTABLE}, + "> still running upon object destruction\n"; + $self->Kill (); + } + + if (!defined $ENV{'ACE_TEST_VERBOSE'}) { + unlink "run_vx.pl"; + } + + if (defined $ENV{'ACE_RUN_VX_IBOOT'} && !defined $ENV{'ACE_RUN_VX_NO_SHUTDOWN'}) { + # Shutdown the target to save power + $self->iboot_cycle_power(1); + } +} + +############################################################################### + +### Spawning processes + + +# Spawn the process and continue. + +sub Spawn () +{ + my $self = shift; + + if ($self->{RUNNING} == 1) { + print STDERR "ERROR: Cannot Spawn: <", $self->Executable (), + "> already running\n"; + return -1; + } + + if (!defined $self->{EXECUTABLE}) { + print STDERR "ERROR: Cannot Spawn: No executable specified\n"; + return -1; + } + + if ($self->{IGNOREEXESUBDIR} == 0) { + if (!-f $self->Executable ()) { + print STDERR "ERROR: Cannot Spawn: <", $self->Executable (), + "> not found\n"; + return -1; + } + } + + my $status = 0; + + my $cmdline; + + # Reboot the target if necessery + $self->reboot(); + + my $program = $self->Executable (); + my $cwdrel = dirname ($program); + my $prjroot = defined $ENV{"ACE_RUN_VX_PRJ_ROOT"} ? $ENV{"ACE_RUN_VX_PRJ_ROOT"} : $ENV{"ACE_ROOT"}; + if (length ($cwdrel) > 0) { + $cwdrel = File::Spec->abs2rel( cwd(), $prjroot ); + } + else { + $cwdrel = File::Spec->abs2rel( $cwdrel, $prjroot ); + } + $cwdrel =~ s/\\/\//g; + $program = basename($program, $PerlACE::ProcessVX::ExeExt); + + unlink "run_vx.pl"; + my $oh = new FileHandle(); + if (!open($oh, ">run_vx.pl")) { + print STDERR "ERROR: Unable to write to run_vx.pl\n"; + exit -1; + } + + my @cmds; + my $cmdnr = 0; + my $arguments = ""; + my $prompt = ''; + my $exesubdir = defined $ENV{"ACE_RUN_VX_EXE_SUBDIR"} ? $ENV{"ACE_RUN_VX_EXE_SUBDIR"} : ""; + + if (defined $ENV{"ACE_RUN_VX_STARTUP_SCRIPT"}) { + if (defined $ENV{"ACE_RUN_VX_STARTUP_SCRIPT_ROOT"}) { + @cmds[$cmdnr++] = 'cd "' . $ENV{'ACE_RUN_VX_STARTUP_SCRIPT_ROOT'} . '"'; + } + @cmds[$cmdnr++] = '< ' . $ENV{"ACE_RUN_VX_STARTUP_SCRIPT"}; + } + + if (defined $ENV{"ACE_RUN_VX_STARTUP_COMMAND"}) { + @cmds[$cmdnr++] = $ENV{"ACE_RUN_VX_STARTUP_COMMAND"}; + } + + @cmds[$cmdnr++] = 'cd ' . $ENV{"ACE_RUN_VX_TGTSVR_ROOT"} . "/" . $cwdrel . "/" . $exesubdir; + @cmds[$cmdnr++] = 'set TMPDIR=' . $ENV{"ACE_RUN_VX_TGTSVR_ROOT"} . "/" . $cwdrel; + + if (defined $ENV{'ACE_RUN_ACE_DEBUG'}) { + @cmds[$cmdnr++] = 'set ACE_DEBUG=' . $ENV{"ACE_RUN_ACE_DEBUG"}; + } + + if (defined $ENV{'ACE_RUN_TAO_ORB_DEBUG'}) { + @cmds[$cmdnr++] = 'set TAO_ORB_DEBUG=' . $ENV{"ACE_RUN_TAO_ORB_DEBUG"}; + } + + if (defined $ENV{'ACE_RUN_ACE_LD_SEARCH_PATH'}) { + @cmds[$cmdnr++] = 'set ACE_LD_SEARCH_PATH=' . $ENV{"ACE_RUN_ACE_LD_SEARCH_PATH"}; + } + + my(@load_commands); + my(@unload_commands); + my $vxtest_file = $program . '.vxtest'; + if (handle_vxtest_file($vxtest_file, \@load_commands, \@unload_commands)) { + push @cmds, @load_commands; + $cmdnr += scalar @load_commands; + } else { + print STDERR "ERROR: Cannot find <", $vxtest_file, ">\n"; + return -1; + } + + if (defined $self->{ARGUMENTS}) { + ($arguments = $self->{ARGUMENTS})=~ s/\"/\\\"/g; + ($arguments = $self->{ARGUMENTS})=~ s/\'/\\\'/g; + } + $cmdline = $program . ' ' . $arguments; + if (defined $ENV{'ACE_RUN_VX_TGTSRV_WORKINGDIR'}) { + @cmds[$cmdnr++] = 'cd ' . $ENV{'ACE_RUN_VX_TGTSRV_WORKINGDIR'}; + } else { + @cmds[$cmdnr++] = 'cd ' . $ENV{'ACE_RUN_VX_TGTSVR_ROOT'} . "/" . $cwdrel; + } + @cmds[$cmdnr++] = $cmdline; + if (!defined $ENV{'ACE_TEST_VERBOSE'}) { + push @cmds, @unload_commands; + $cmdnr += scalar @unload_commands; + } + $prompt = '\> $'; + + print $oh "require Net::Telnet;\n"; + print $oh "my \@cmds;\n"; + print $oh "my \$prompt = '$prompt';\n"; + my $i = 0; + while($i < $cmdnr) { + print $oh "\@cmds[$i] = '" . @cmds[$i++] . "';\n"; + } + print $oh "my \$cmdnr = $cmdnr;\n\n"; + + print $oh <<'__END__'; + +my $telnet_port = $ENV{'ACE_RUN_VX_TGT_TELNET_PORT'}; +my $telnet_host = $ENV{'ACE_RUN_VX_TGT_TELNET_HOST'}; +if (!defined $telnet_host) { + $telnet_host = $ENV{'ACE_RUN_VX_TGTHOST'}; +} +if (!defined $telnet_port) { + $telnet_port = 23; +} +my $t = new Net::Telnet(Timeout => 600, Errmode => 'return', Host => $telnet_host, Port => $telnet_port); +if (!defined $t) { + die "ERROR: Telnet failed to <" . $telnet_host . ":". $telnet_port . ">"; +} +$t->open(); + +my $ok = false; +while ($blk = $t->get) { + printf $blk; + $buf .= $blk; + if ($buf =~ /$prompt/) { + $ok = true; + last; + } +} +if ($ok) { + my $i = 0; + my @lines; + while($i < $cmdnr) { + if (defined $ENV{'ACE_TEST_VERBOSE'}) { + print @cmds[$i]."\n"; + } + if ($t->print (@cmds[$i++])) { + my $blk; + my $buf; + while ($blk = $t->get) { + printf $blk; + $buf .= $blk; + if ($buf =~ /$prompt/) { + last; + } + } + } else { + print $t->errmsg; + } + } +} +else { + die "ERROR: No prompt appeared\n"; +} +$t->close(); +sleep(2); +exit; +__END__ + + close($oh); + + Win32::Process::Create ($self->{PROCESS}, + "$^X", + "$^X run_vx.pl", + 0, + 0, + '.'); + + Win32::Process::GetExitCode ($self->{PROCESS}, $status); + + if ($status != $STILL_ACTIVE) { + print STDERR "ERROR: Spawn failed for <", "$^X run_vx.pl", ">\n"; + exit $status; + } + + $self->{RUNNING} = 1; + return 0; +} + +# Wait for a process to exit with a timeout + +sub TimedWait ($) +{ + my($self) = shift; + my($timeout) = shift; + return $self->Wait($timeout); +} + + +# Terminate the process and wait for it to finish + +sub TerminateWaitKill ($) +{ + my $self = shift; + my $timeout = shift; + + if ($self->{RUNNING}) { + print STDERR "INFO: $self->{EXECUTABLE} being killed.\n"; + Win32::Process::Kill ($self->{PROCESS}, 0); + $PerlACE::ProcessVX::DoVxInit = 1; # force reboot on next run + } + + return $self->WaitKill ($timeout); +} + +# Wait until a process exits. +# return -1 if the process is still alive. +sub Wait ($) +{ + my $self = shift; + my $timeout = shift; + if (!defined $timeout || $timeout < 0) { + $timeout = INFINITE; + } else { + $timeout = $timeout * 1000 * $PerlACE::ProcessVX::WAIT_DELAY_FACTOR; + } + + my $result = 0; + + if ($self->{RUNNING}) { + $result = Win32::Process::Wait ($self->{PROCESS}, $timeout); + if ($result == 0) { + return -1; + } + } + Win32::Process::GetExitCode ($self->{PROCESS}, $result); + if ($result != 0) { + $PerlACE::ProcessVX::DoVxInit = 1; # force reboot on next run + } + return $result; +} + + + +# Kill the process + +sub Kill () +{ + my $self = shift; + + if ($self->{RUNNING}) { + Win32::Process::Kill ($self->{PROCESS}, -1); + } + + $self->{RUNNING} = 0; +} + +sub handle_vxtest_file +{ + my $vxtestfile = shift; + my $vx_ref = shift; + my $unld_ref = shift; + my $fh = new FileHandle; + if (open ($fh, $vxtestfile)) { + push @$vx_ref, "copy " . $ENV{"ACE_RUN_VX_TGTSVR_ROOT"} . "/lib/MSVCR80D.dll ."; + my $line1 = <$fh>; + chomp $line1; + while(<$fh>) { + $line1 = $_; + chomp $line1; + push @$vx_ref, "copy " . $ENV{"ACE_RUN_VX_TGTSVR_ROOT"} . "/lib/$line1" . "d.dll ."; + unshift @$unld_ref, "del $line1" . "d.dll"; + } + close $fh; + } else { + return 0; + } + return 1; +} + + +1; diff --git a/ACE/bin/PerlACE/Process_Win32.pm b/ACE/bin/PerlACE/Process_Win32.pm index 0b4599c2c17..ace30cb05bd 100644 --- a/ACE/bin/PerlACE/Process_Win32.pm +++ b/ACE/bin/PerlACE/Process_Win32.pm @@ -246,7 +246,6 @@ sub Spawn () "/InUseAtExit ". "/LeaksAtExit "; } - my $basename = basename ($self->{EXECUTABLE}); $cmdline = "purify " . "$PurifyOptions ". @@ -301,7 +300,7 @@ sub Spawn () my $status = Win32::Process::Create ($self->{PROCESS}, $executable, $cmdline, - 0, + ($state == 0 ? 1 : 0), $state, '.'); diff --git a/ACE/bin/PerlACE/README b/ACE/bin/PerlACE/README index d80dafd1c0c..ca7105b5afa 100644 --- a/ACE/bin/PerlACE/README +++ b/ACE/bin/PerlACE/README @@ -43,6 +43,22 @@ To redirect execution of a test's component, you must do three things: <configuration-name>_IPNAME: The machine's IP hostname or address <configuration-name>_ACE_ROOT: ACE_ROOT for the configuration's files <configuration-name>_TAO_ROOT: TAO_ROOT for the configuration's files + <configuration-name>_EXE_SUBDIR: Subdirectory for the executable + <configuration-name>_PROCESS_START_WAIT_INTERVAL: Time waited for the + process to start. Default 15 seconds. + <configuration-name>_PROCESS_STOP_WAIT_INTERVAL: Time waited for the + process to stop. Default 10 seconds. + <configuration-name>_HOSTNAME: Hostname that has to be used + <configuration-name>_IBOOT: iBoot for this target + <configuration-name>_REBOOT_TIME: How long does it take to reboot + this target + <configuration-name>_REBOOT: Do we need to reboot this target + <configuration-name>_STARTUP_COMMAND: Command to be executed after + target has been booted + <configuration-name>_TELNET_HOST: Host name where we have to connect + to with telnet + <configuration-name>_TELNET_PORT: Port number where we have to connect + to with telnet If there is no DOC_TEST_<component-number> environment variable when the component runs, that component is executed on the local machine. This is diff --git a/ACE/bin/PerlACE/Run_Test.pm b/ACE/bin/PerlACE/Run_Test.pm index 2f063a4e233..29217351ac2 100644 --- a/ACE/bin/PerlACE/Run_Test.pm +++ b/ACE/bin/PerlACE/Run_Test.pm @@ -40,6 +40,11 @@ if ($PerlACE::LabVIEW_RT_Test) { require PerlACE::ProcessLVRT; } +$PerlACE::WinCE_Test = $config->check_config("WINCE"); +if ($PerlACE::WinCE_Test) { + require PerlACE::ProcessWinCE; +} + # Figure out the svc.conf extension $svcconf_ext = $ENV{"ACE_RUNTEST_SVCCONF_EXT"}; if (!defined $svcconf_ext) { diff --git a/ACE/bin/PerlACE/TestTarget.pm b/ACE/bin/PerlACE/TestTarget.pm index 98f9b8292e2..b83ac809b76 100644 --- a/ACE/bin/PerlACE/TestTarget.pm +++ b/ACE/bin/PerlACE/TestTarget.pm @@ -10,6 +10,8 @@ use strict; use English; use POSIX qw(:time_h); use File::Copy; +use PerlACE::Run_Test; +use Sys::Hostname; ############################################################################### @@ -53,6 +55,11 @@ sub create_target $target = new PerlACE::TestTarget_VxWorks ($config_name); last SWITCH; } + if ($config_os =~ /WinCE/i) { + require PerlACE::TestTarget_WinCE; + $target = new PerlACE::TestTarget_WinCE ($config_name); + last SWITCH; + } print STDERR "$config_os is an unknown OS type!\n"; } return $target; @@ -122,8 +129,76 @@ sub GetConfigSettings ($) $self->{EXE_SUBDIR} = $PerlACE::Process::ExeSubDir; } } - $self->{PROCESS_START_WAIT_INTERVAL} = 15; - $self->{PROCESS_STOP_WAIT_INTERVAL} = 10; + $env_name = $env_prefix.'PROCESS_START_WAIT_INTERVAL'; + if (exists $ENV{$env_name}) { + $self->{PROCESS_START_WAIT_INTERVAL} = $ENV{$env_name}; + } else { + $self->{PROCESS_START_WAIT_INTERVAL} = 15; + } + $env_name = $env_prefix.'PROCESS_STOP_WAIT_INTERVAL'; + if (exists $ENV{$env_name}) { + $self->{PROCESS_STOP_WAIT_INTERVAL} = $ENV{$env_name}; + } else { + $self->{PROCESS_STOP_WAIT_INTERVAL} = 10; + } + $env_name = $env_prefix.'HOSTNAME'; + if (exists $ENV{$env_name}) { + $self->{HOSTNAME} = $ENV{$env_name}; + } else { + $self->{HOSTNAME} = hostname(); + } + $env_name = $env_prefix.'IBOOT'; + if (exists $ENV{$env_name}) { + $self->{IBOOT} = $ENV{$env_name}; + } + $env_name = $env_prefix.'IBOOT_PASSWD'; + if (exists $ENV{$env_name}) { + $self->{IBOOT_PASSWD} = $ENV{$env_name}; + } + $env_name = $env_prefix.'IBOOT_OUTLET'; + if (exists $ENV{$env_name}) { + $self->{IBOOT_OUTLET} = $ENV{$env_name}; + } + $env_name = $env_prefix.'IBOOT_USER'; + if (exists $ENV{$env_name}) { + $self->{IBOOT_USER} = $ENV{$env_name}; + } + $env_name = $env_prefix.'IBOOT_PASSWD'; + if (exists $ENV{$env_name}) { + $self->{IBOOT_PASSWD} = $ENV{$env_name}; + } + $env_name = $env_prefix.'REBOOT_TIME'; + if (exists $ENV{$env_name}) { + $self->{REBOOT_TIME} = $ENV{$env_name}; + } else { + $self->{REBOOT_TIME} = 0; + } + $env_name = $env_prefix.'REBOOT'; + if (exists $ENV{$env_name}) { + $self->{REBOOT} = $ENV{$env_name}; + } else { + $self->{REBOOT} = 0; + } + $env_name = $env_prefix.'STARTUP_COMMAND'; + if (exists $ENV{$env_name}) { + $self->{STARTUP_COMMAND} = $ENV{$env_name}; + } + $env_name = $env_prefix.'TELNET_HOST'; + if (exists $ENV{$env_name}) { + $self->{TELNET_HOST} = $ENV{$env_name}; + } else { + $self->{TELNET_HOST} = $self->{HOSTNAME}; + } + $env_name = $env_prefix.'TELNET_PORT'; + if (exists $ENV{$env_name}) { + $self->{TELNET_PORT} = $ENV{$env_name}; + } else { + $self->{TELNET_PORT} = 23; + } + $env_name = $env_prefix.'HOST_ROOT'; + if (exists $ENV{$env_name}) { + $self->{HOST_ROOT} = $ENV{$env_name}; + } } ################################################################## @@ -146,6 +221,12 @@ sub CIAO_ROOT ($) return $self->{ciao_root}; } +sub HostName ($) +{ + my $self = shift; + return $self->{HOSTNAME}; +} + sub ExeSubDir ($) { my $self = shift; @@ -156,6 +237,12 @@ sub ExeSubDir ($) return $self->{EXE_SUBDIR}; } +sub RandomPort ($) +{ + my $self = shift; + return (int(rand($$)) % 22766) + 10002; +} + sub ProcessStartWaitInterval ($) { my $self = shift; @@ -181,14 +268,28 @@ sub LocalFile ($) my $self = shift; my $file = shift; my $newfile = PerlACE::LocalFile($file); - print STDERR "LocalFile for $file is $newfile\n"; + if (defined $ENV{'ACE_TEST_VERBOSE'}) { + print STDERR "LocalFile for $file is $newfile\n"; + } return $newfile; } +sub AddLibPath ($) +{ + my $self = shift; + my $dir = shift; + if (defined $ENV{'ACE_TEST_VERBOSE'}) { + print STDERR "Adding libpath $dir\n"; + } + PerlACE::add_lib_path ($dir); +} + sub DeleteFile ($) { my $self = shift; - unlink (@_); + my $file = shift; + my $newfile = PerlACE::LocalFile($file); + unlink ($newfile); } sub GetFile ($) @@ -205,10 +306,11 @@ sub PutFile ($) { my $self = shift; my $src = shift; - my $dest = shift; + my $dest = $self->LocalFile ($src); if ($src != $dest) { copy ($src, $dest); } + return 0; } sub WaitForFileTimed ($) @@ -216,7 +318,8 @@ sub WaitForFileTimed ($) my $self = shift; my $file = shift; my $timeout = shift; - return PerlACE::waitforfile_timed ($file, $timeout); + my $newfile = $self->LocalFile($file); + return PerlACE::waitforfile_timed ($newfile, $timeout); } sub CreateProcess ($) diff --git a/ACE/bin/PerlACE/TestTarget_LVRT.pm b/ACE/bin/PerlACE/TestTarget_LVRT.pm index f12378f920c..3e5df034e44 100644 --- a/ACE/bin/PerlACE/TestTarget_LVRT.pm +++ b/ACE/bin/PerlACE/TestTarget_LVRT.pm @@ -132,7 +132,8 @@ sub DeleteFile ($) my $self = shift; $self->{FTP}->login("",""); foreach my $file (@_) { - $self->{FTP}->delete($file); + my $newfile = $self->LocalFile($file); + $self->{FTP}->delete($newfile); } } @@ -142,8 +143,9 @@ sub GetFile ($) my $self = shift; my $remote_file = shift; my $local_file = shift; + my $newfile = $self->LocalFile($file); $self->{FTP}->ascii(); - if ($self->{FTP}->get($remote_file, $local_file)) { + if ($self->{FTP}->get($newfile, $local_file)) { return 0; } return -1; @@ -154,6 +156,7 @@ sub WaitForFileTimed ($) my $self = shift; my $file = shift; my $timeout = shift; + my $newfile = $self->LocalFile($file); my $targetport = $self->{CTLPORT}; my $target = new Net::Telnet(Errmode => 'return'); if (!$target->open(Host => $self->{IPNAME}, Port => $targetport)) { @@ -161,7 +164,7 @@ sub WaitForFileTimed ($) $target->errmsg(), "\n"; return -1; } - my $cmdline = "waitforfile $file $timeout"; + my $cmdline = "waitforfile $newfile $timeout"; if (defined $ENV{'ACE_TEST_VERBOSE'}) { print "-> $cmdline\n"; } diff --git a/ACE/bin/PerlACE/TestTarget_VxWorks.pm b/ACE/bin/PerlACE/TestTarget_VxWorks.pm index 18c26f6e1d8..bbd99b068dd 100644 --- a/ACE/bin/PerlACE/TestTarget_VxWorks.pm +++ b/ACE/bin/PerlACE/TestTarget_VxWorks.pm @@ -16,6 +16,7 @@ use strict; use PerlACE::TestTarget; use PerlACE::ProcessVX; +use Cwd; our @ISA = qw(PerlACE::TestTarget); @@ -25,13 +26,16 @@ our @ISA = qw(PerlACE::TestTarget); sub LocalFile { my($self, $file) = @_; - print STDERR "LocalFile for $file is $file\n"; + if (defined $ENV{'ACE_TEST_VERBOSE'}) { + print STDERR "LocalFile is $file\n"; + } return $file; } sub CreateProcess { my $self = shift; - return new PerlACE::ProcessVX(@_); + my $process = new PerlACE::ProcessVX (@_, $self, ); + return $process; } # Need a reboot when this target is destroyed. @@ -50,5 +54,21 @@ sub RebootNow ($) reboot (); } +sub WaitForFileTimed ($) +{ + my $self = shift; + my $file = shift; + my $timeout = shift; + my $cwdrel = $file; + my $prjroot = defined $ENV{"ACE_RUN_VX_PRJ_ROOT"} ? $ENV{"ACE_RUN_VX_PRJ_ROOT"} : $ENV{"ACE_ROOT"}; + if (length ($cwdrel) > 0) { + $cwdrel = File::Spec->abs2rel( cwd(), $prjroot ); + } + else { + $cwdrel = File::Spec->abs2rel( $cwdrel, $prjroot ); + } + my $newfile = $self->{HOST_ROOT} . "/" . $cwdrel . "/" . $file; + return PerlACE::waitforfile_timed ($newfile, $timeout); +} 1; diff --git a/ACE/bin/PerlACE/TestTarget_WinCE.pm b/ACE/bin/PerlACE/TestTarget_WinCE.pm new file mode 100644 index 00000000000..b1d650e5c88 --- /dev/null +++ b/ACE/bin/PerlACE/TestTarget_WinCE.pm @@ -0,0 +1,169 @@ +#! /usr/bin/perl +package PerlACE::TestTarget_WinCE; + +# ****************************************************************** +# Description : Creates a PerlACE::WiNCE +# Author : Johnny Willemsen +# Create Date : 29/20/2008 +# $Id$ +# ****************************************************************** + +# ****************************************************************** +# Pragma Section +# ****************************************************************** + +use strict; + +use PerlACE::TestTarget; +use PerlACE::ProcessVX; +use File::Copy; +use Cwd; + +our @ISA = qw(PerlACE::TestTarget); + +sub new +{ + my $proto = shift; + my $config_name = shift; + my $class = ref ($proto) || $proto; + my $self = {}; + bless ($self, $class); + $self->GetConfigSettings($config_name); + my $targethost; + my $env_name = $config_name.'_IPNAME'; + if (exists $ENV{$env_name}) { + $targethost = $ENV{$env_name}; + } + else { + print STDERR "You must define target hostname/IP with $env_name\n"; + undef $self; + return undef; + } + + $env_name = $config_name.'_FS_ROOT'; + my $fsroot = '\network\temp\ACE\wince6'; + if (exists $ENV{$env_name}) { + $fsroot = $ENV{$env_name}; + } + else { + print STDERR "Warning: no $env_name variable; falling back ", + "to $fsroot\n"; + } + $self->{FSROOT} = $fsroot; + + $self->{REBOOT_CMD} = $ENV{"ACE_REBOOT_LVRT_CMD"}; + if (!defined $self->{REBOOT_CMD}) { + $self->{REBOOT_CMD} = 'I_Need_A_Reboot_Command'; + } + $self->{REBOOT_TIME} = $ENV{"ACE_LVRT_REBOOT_TIME"}; + if (!defined $self->{REBOOT_TIME}) { + $self->{REBOOT_TIME} = 200; + } + + $self->{REBOOT_TIME} = $ENV{"ACE_RUN_LVRT_REBOOT_TIME"}; + if (!defined $self->{REBOOT_TIME}) { + $self->{REBOOT_TIME} = 200; + } + $self->{REBOOT_NEEDED} = undef; + + my $telnet_port = $ENV{'ACE_RUN_VX_TGT_TELNET_PORT'}; + my $telnet_host = $ENV{'ACE_RUN_VX_TGT_TELNET_HOST'}; + if (!defined $telnet_host) { + $telnet_host = $ENV{'ACE_RUN_VX_TGTHOST'}; + } + if (!defined $telnet_port) { + $telnet_port = 23; + } + if (!defined $self->{HOST_ROOT}) { + $self->{HOST_ROOT} = $self->{FSROOT}; + } + + $PerlACE::ProcessVX::ExeExt = '.exe'; + + return $self; +} + +# ****************************************************************** +# Subroutine Section +# ****************************************************************** + +sub LocalFile { + my $self = shift; + my $file = shift; + my $cwdrel = $file; + my $prjroot = defined $ENV{"ACE_RUN_VX_PRJ_ROOT"} ? $ENV{"ACE_RUN_VX_PRJ_ROOT"} : $ENV{"ACE_ROOT"}; + if (length ($cwdrel) > 0) { + $cwdrel = File::Spec->abs2rel( cwd(), $prjroot ); + } + else { + $cwdrel = File::Spec->abs2rel( $cwdrel, $prjroot ); + } + my $newfile = $self->{FSROOT} . "/" . $cwdrel . "/" . $file; + if (defined $ENV{'ACE_TEST_VERBOSE'}) { + print STDERR "WinCE LocalFile for $file is $newfile\n"; + } + return $newfile; +} + +sub CreateProcess { + my $self = shift; + my $process = new PerlACE::ProcessVX ($self, @_); + return $process; +} + +# Need a reboot when this target is destroyed. +sub NeedReboot ($) +{ + my $self = shift; + $self->{REBOOT_NEEDED} = 1; +} + +# Reboot target +sub RebootNow ($) +{ + my $self = shift; + $self->{REBOOT_NEEDED} = undef; + print STDERR "Attempting to reboot target...\n"; + reboot (); +} + +sub WaitForFileTimed ($) +{ + my $self = shift; + my $file = shift; + my $timeout = shift; + my $cwdrel = $file; + my $prjroot = defined $ENV{"ACE_RUN_VX_PRJ_ROOT"} ? $ENV{"ACE_RUN_VX_PRJ_ROOT"} : $ENV{"ACE_ROOT"}; + if (length ($cwdrel) > 0) { + $cwdrel = File::Spec->abs2rel( cwd(), $prjroot ); + } + else { + $cwdrel = File::Spec->abs2rel( $cwdrel, $prjroot ); + } + my $newfile = $self->{HOST_ROOT} . "/" . $cwdrel . "/" . $file; + if (defined $ENV{'ACE_TEST_VERBOSE'}) { + print STDERR "WinCE waits for $newfile timeout $timeout\n"; + } + return PerlACE::waitforfile_timed ($newfile, $timeout); +} + +# Put file from a to b +sub PutFile ($) +{ + my $self = shift; + my $src = shift; + return 0; +} + +sub DeleteFile ($) +{ + my $self = shift; + my $file = shift; + my $newfile = $self->LocalFile($file); + if (defined $ENV{'ACE_TEST_VERBOSE'}) { + print STDERR "delete $newfile\n"; + } + unlink ("$newfile"); +} + +1; diff --git a/ACE/bin/auto_run_tests.pl b/ACE/bin/auto_run_tests.pl index 7eeb87a0f13..6f26303157b 100755 --- a/ACE/bin/auto_run_tests.pl +++ b/ACE/bin/auto_run_tests.pl @@ -19,6 +19,13 @@ use Cwd; use Env qw(ACE_ROOT PATH TAO_ROOT CIAO_ROOT); +if (!defined $TAO_ROOT && -d "$ACE_ROOT/TAO") { + $TAO_ROOT = "$ACE_ROOT/TAO"; +} +if (!defined $CIAO_ROOT && -d "$ACE_ROOT/TAO/CIAO") { + $CIAO_ROOT = "$ACE_ROOT/TAO/CIAO"; +} + ################################################################################ if (!getopts ('adl:os:r:tC') || $opt_h) { @@ -41,34 +48,39 @@ if (!getopts ('adl:os:r:tC') || $opt_h) { $ace_config_list = new PerlACE::ConfigList; $ace_config_list->load ($ACE_ROOT."/bin/ace_tests.lst"); print "ACE Test Configs: " . $ace_config_list->list_configs () . "\n"; - $orb_config_list = new PerlACE::ConfigList; - $orb_config_list->load ($ACE_ROOT."/bin/tao_orb_tests.lst"); - print "ORB Test Configs: " . $orb_config_list->list_configs () . "\n"; - $tao_config_list = new PerlACE::ConfigList; - $tao_config_list->load ($ACE_ROOT."/bin/tao_other_tests.lst"); - print "TAO Test Configs: " . $tao_config_list->list_configs () . "\n"; - $ciao_config_list = new PerlACE::ConfigList; - $ciao_config_list->load ($ACE_ROOT."/bin/ciao_tests.lst"); - print "CIAO Test Configs: " . $ciao_config_list->list_configs () . "\n"; + if (defined $TAO_ROOT) { + $orb_config_list = new PerlACE::ConfigList; + $orb_config_list->load ($TAO_ROOT."/bin/tao_orb_tests.lst"); + print "ORB Test Configs: " . $orb_config_list->list_configs () . "\n"; + $tao_config_list = new PerlACE::ConfigList; + $tao_config_list->load ($TAO_ROOT."/bin/tao_other_tests.lst"); + print "TAO Test Configs: " . $tao_config_list->list_configs () . "\n"; + } + if (defined $CIAO_ROOT) { + $ciao_config_list = new PerlACE::ConfigList; + $ciao_config_list->load ($CIAO_ROOT."/bin/ciao_tests.lst"); + print "CIAO Test Configs: " . $ciao_config_list->list_configs () + . "\n"; + } exit (1); } my @file_list; if ($opt_a) { -push (@file_list, "/bin/ace_tests.lst"); +push (@file_list, "bin/ace_tests.lst"); } if ($opt_o) { -push (@file_list, "/bin/tao_orb_tests.lst"); +push (@file_list, "$TAO_ROOT/bin/tao_orb_tests.lst"); } if ($opt_t) { -push (@file_list, "/bin/tao_other_tests.lst"); +push (@file_list, "$TAO_ROOT/bin/tao_other_tests.lst"); } if ($opt_C) { -push (@file_list, "/bin/ciao_tests.lst"); +push (@file_list, "$CIAO_ROOT/bin/ciao_tests.lst"); } if ($opt_r) { @@ -83,13 +95,13 @@ push (@file_list, "$opt_l"); } if (scalar(@file_list) == 0) { - push (@file_list, "/bin/ace_tests.lst"); - if (-d $TAO_ROOT || -d "$ACE_ROOT/TAO") { - push (@file_list, "/bin/tao_orb_tests.lst"); - push (@file_list, "/bin/tao_other_tests.lst"); + push (@file_list, "bin/ace_tests.lst"); + if (-d $TAO_ROOT) { + push (@file_list, "$TAO_ROOT/bin/tao_orb_tests.lst"); + push (@file_list, "$TAO_ROOT/bin/tao_other_tests.lst"); } - if (-d $CIAO_ROOT || -d "$ACE_ROOT/TAO/CIAO") { - push (@file_list, "/bin/ciao_tests.lst"); + if (-d $CIAO_ROOT) { + push (@file_list, "$CIAO_ROOT/bin/ciao_tests.lst"); } } @@ -99,11 +111,11 @@ foreach my $test_lst (@file_list) { if (-r $ACE_ROOT.$test_lst) { $config_list->load ($ACE_ROOT.$test_lst); } - elsif (-r "$startdir/$test_list") { + elsif (-r "$startdir/$test_lst") { $config_list->load ("$startdir/$test_lst"); } else { - $config_list->load ($test_list); + $config_list->load ($test_lst); } # Insures that we search for stuff in the current directory. diff --git a/ACE/bin/ciao_tests.lst b/ACE/bin/ciao_tests.lst deleted file mode 100644 index 7856088794f..00000000000 --- a/ACE/bin/ciao_tests.lst +++ /dev/null @@ -1,16 +0,0 @@ -# $Id$ -# -# This is the list of run_test.pl's that need to be run by -# auto_run_tests.pl. -# Each line has its own test, and a test can be followed by a -# list of configurations it does _not_ run on. -# -# Example: TAO\examples\foo\run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST -# -TAO/CIAO/examples/Hello/descriptors/run_test.pl: !STATIC !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NOXERCES !ACE_FOR_TAO !ST -TAO/CIAO/examples/Hello/descriptors/run_test_without_ns.pl: !STATIC !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NOXERCES !ACE_FOR_TAO !ST -TAO/CIAO/examples/Hello/descriptors_RTCCM/rt_run_test.pl: !STATIC !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NOXERCES !ACE_FOR_TAO RT_CAPABLE !ST -TAO/CIAO/DAnCE/tests/NodeApplicationTest/run_test_simple.pl: !STATIC !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !ST -TAO/CIAO/DAnCE/tests/NodeApplicationTest/run_test.pl: !STATIC !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !ST -TAO/CIAO/DAnCE/tests/NodeApplicationTest/run_test_ex.pl: !STATIC !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !ST -TAO/CIAO/tests/IDL3/Events/Any/run_test.pl: !STATIC !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !ST diff --git a/ACE/bin/depgen.pl b/ACE/bin/depgen.pl index da91fe4bcea..27a774e7d7a 100755 --- a/ACE/bin/depgen.pl +++ b/ACE/bin/depgen.pl @@ -19,7 +19,7 @@ use FindBin; use File::Spec; use File::Basename; -my($basePath) = $FindBin::Bin; +my($basePath) = $FindBin::RealBin; if ($^O eq 'VMS') { $basePath = File::Spec->rel2abs(dirname($0)) if ($basePath eq ''); $basePath = VMS::Filespec::unixify($basePath); diff --git a/ACE/bin/diff-builds-and-group-fixed-tests-only.sh b/ACE/bin/diff-builds-and-group-fixed-tests-only.sh index 3d273d82fd3..8ff47a5832d 100755 --- a/ACE/bin/diff-builds-and-group-fixed-tests-only.sh +++ b/ACE/bin/diff-builds-and-group-fixed-tests-only.sh @@ -1,4 +1,4 @@ -if test -z $1; then olddate=2008_09_15; else olddate=$1; fi +if test -z $1; then olddate=2009_02_09; else olddate=$1; fi if test -z $2; then prefix=`date -u +%Y%m%d%a`; else prefix=$2; fi if test -z $ACE_ROOT; then ACE_ROOT=..; fi # diff --git a/ACE/bin/fuzz.pl b/ACE/bin/fuzz.pl index 824d192cddc..3b326b5dfc5 100755 --- a/ACE/bin/fuzz.pl +++ b/ACE/bin/fuzz.pl @@ -6,10 +6,16 @@ eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}' # Fuzz is a script whose purpose is to check through ACE/TAO/CIAO files for # easy to spot (by a perl script, at least) problems. +use lib "$ENV{ACE_ROOT}/bin"; +if (defined $ENV{srcdir}) { + use lib "$ENV{srcdir}/bin"; +} + use Cwd; use File::Find; use File::Basename; use Getopt::Std; +use PerlACE::Run_Test; ###### TODO # @@ -41,6 +47,8 @@ use Getopt::Std; @files_mpc = (); @files_bor = (); @files_noncvs = (); +@files_sln = (); +@files_vcproj = (); # To keep track of errors and warnings $errors = 0; @@ -114,6 +122,12 @@ sub store_file ($) elsif ($name =~ /\.pl$/i) { push @files_pl, ($name); } + elsif ($name =~ /\.vcproj$/i) { + push @files_vcproj, ($name); + } + elsif ($name =~ /\.sln$/i) { + push @files_sln, ($name); + } elsif ($name =~ /ChangeLog/i && -f $name) { push @files_changelog, ($name); } @@ -242,6 +256,18 @@ sub check_for_msc_ver_string () $found = 1; $mscline = $.; } + if ($disable == 0 and /\_MSC_VER \>= 1300/) { + $found = 1; + $mscline = $.; + } + if ($disable == 0 and /\_MSC_VER \< 1310/) { + $found = 1; + $mscline = $.; + } + if ($disable == 0 and /\_MSC_VER \>= 1310/) { + $found = 1; + $mscline = $.; + } } close (FILE); if ($found == 1) { @@ -287,7 +313,7 @@ sub check_for_noncvs_files () } } -# This test checks for the use of ACE_SYNCH_MUTEX in TAO/CIAO, +# This test checks for the use of ACE_SYNCH_MUTEX in TAO/CIAO, # TAO_SYNCH_MUTEX should used instead. sub check_for_ACE_SYNCH_MUTEX () @@ -313,12 +339,12 @@ sub check_for_ACE_SYNCH_MUTEX () next ITERATION; } - # Disable the check in the ESF directory for the + # Disable the check in the ESF directory for the # time being until we fix the issues there. if(($file =~ /.*TAO\/orbsvcs\/orbsvcs\/ESF.*/)) { next ITERATION; } - + print_error ("$file:$.: found ACE_SYNCH_MUTEX, use TAO_SYNCH_MUTEX instead"); } } @@ -330,7 +356,7 @@ sub check_for_ACE_SYNCH_MUTEX () } } -# This test checks for the use of ACE_Thread_Mutex in TAO/CIAO, +# This test checks for the use of ACE_Thread_Mutex in TAO/CIAO, # TAO_SYNCH_MUTEX should used instead to make the code build # in single-threaded builds. @@ -356,7 +382,7 @@ sub check_for_ACE_Thread_Mutex () if (($file !~ /.*TAO.*/)) { next ITERATION; } - + print_error ("$file:$.: found ACE_Thread_Mutex, use TAO_SYNCH_MUTEX instead to allow the code to work in single-threaded builds"); } } @@ -400,7 +426,7 @@ sub check_for_lack_ACE_OS () { $OS_NS_arpa_inet_symbols = "inet_addr|inet_aton|inet_ntoa|inet_ntop|inet_pton"; - $OS_NS_ctype_symbols = "isalnum|isalpha|iscntrl|isdigit|isgraph|islower|isprint|ispunct|isspace|isupper|isxdigit|tolower|toupper"; + $OS_NS_ctype_symbols = "isalnum|isalpha|iscntrl|isdigit|isgraph|islower|isprint|ispunct|isspace|isupper|isxdigit|tolower|toupper|isblank|isascii|isctype|iswctype"; $OS_NS_dirent_symbols = "closedir|opendir|readdir|readdir_r|rewinddir|scandir|alphasort|seekdir|telldir|opendir_emulation|scandir_emulation|closedir_emulation|readdir_emulation"; @@ -420,11 +446,11 @@ sub check_for_lack_ACE_OS () $OS_NS_regex_symbols = "compile|step"; - $OS_NS_signal_symbols = "kill|pthread_sigmask|sigaction|sigaddset|sigdelset|sigemptyset|sigfillset|sigismember|signal|sigprocmask|sigsuspend"; + $OS_NS_signal_symbols = "kill|pthread_sigmask|sigaction|sigaddset|sigdelset|sigemptyset|sigfillset|sigismember|signal|sigprocmask|sigsuspend|raise"; $OS_NS_stdio_symbols = "checkUnicodeFormat|clearerr|cuserid|fclose|fdopen|fflush|fgetc|getc|fgetpos|fgets|flock_adjust_params|flock_init|flock_destroy|flock_rdlock|flock_tryrdlock|flock_trywrlock|flock_unlock|flock_wrlock|fopen|default_win32_security_attributes|default_win32_security_attributes_r|get_win32_versioninfo|get_win32_resource_module|set_win32_resource_module|fprintf|ungetc|fputc|putc|fputs|fread|freopen|fseek|fsetpos|ftell|fwrite|perror|printf|puts|rename|rewind|snprintf|sprintf|tempnam|vsprintf|vsnprintf|asprintf|aswprintf|vasprintf|vaswprintf"; - $OS_NS_stdlib_symbols = "_exit|abort|atexit|atoi|atop|bsearch|calloc|exit|free|getenv|getenvstrings|itoa|itoa_emulation|itow_emulation|malloc|mkstemp|mkstemp_emulation|mktemp|putenv|qsort|rand|rand_r|realloc|realpath|set_exit_hook|srand|strenvdup|strtod|strtol|strtol_emulation|strtoul|strtoul_emulation|strtoll|strtoll_emulation|strtoull|strtoull_emulation|system|getprogname|setprogname"; + $OS_NS_stdlib_symbols = "_exit|abort|atexit|atof|atol|atoi|atop|bsearch|calloc|exit|free|getenv|getenvstrings|itoa|itoa_emulation|itow_emulation|malloc|mkstemp|mkstemp_emulation|mktemp|putenv|qsort|rand|rand_r|realloc|realpath|set_exit_hook|srand|strenvdup|strtod|strtol|strtol_emulation|strtoul|strtoul_emulation|strtoll|strtoll_emulation|strtoull|strtoull_emulation|system|getprogname|setprogname"; $OS_NS_string_symbols = "memchr|memchr_emulation|memcmp|memcpy|fast_memcpy|memmove|memset|strcat|strchr|strcmp|strcpy|strcspn|strdup|strdup_emulation|strecpy|strerror|strerror_emulation|strlen|strncat|strnchr|strncmp|strncpy|strnlen|strnstr|strpbrk|strrchr|strrchr_emulation|strsncpy|strspn|strstr|strtok|strtok_r|strtok_r_emulation"; @@ -1334,7 +1360,21 @@ sub check_for_mismatched_filename () sub check_for_bad_run_test () { print "Running run_test.pl test\n"; - foreach $file (@files_pl) { + # Add the know ACE files + if (defined $ENV{"TAO_ROOT"}) { + push @files_lst, $ENV{"TAO_ROOT"} . "/bin/tao_orb_tests.lst"; + push @files_lst, $ENV{"TAO_ROOT"} . "/bin/tao_other_tests.lst"; + } + if (defined $ENV{"CIAO_ROOT"}) { + push @files_lst, $ENV{"CIAO_ROOT"} . "/bin/ciao_tests.lst"; + } + $config_list = new PerlACE::ConfigList; + foreach $file (@files_lst) { + $config_list->load ($file); + } + $config_list->add_one_config ("FUZZ"); + @valid_files = $config_list->valid_entries (); + foreach $file (@valid_files) { if (open (FILE, $file)) { my $is_run_test = 0; my $sub = 0; @@ -1342,7 +1382,6 @@ sub check_for_bad_run_test () print "Looking at file $file\n" if $opt_d; while (<FILE>) { - if (m/PerlACE/ || m/ACEutils/) { $is_run_test = 1; } @@ -1364,6 +1403,42 @@ sub check_for_bad_run_test () print_error ("$file:$.: using \$EXE_EXT"); } + if (m/\$PerlACE::wait_interval_for_process_creation/) { + print_error ("$file:$.: using \$PerlACE::wait_interval_for_process_creation"); + } + + if (m/\$PerlACE::waitforfile_timed/) { + print_error ("$file:$.: using \$PerlACE::waitforfile_timed"); + } + + if (m/\$PerlACE::add_lib_path/) { + print_error ("$file:$.: using \$PerlACE::add_lib_path"); + } + + if (m/PerlACE::Run_Test/) { + print_error ("$file:$.: using PerlACE::Run_Test"); + } + + if (m/PerlACE::random_port/) { + print_error ("$file:$.: using PerlACE::random_port"); + } + + if (m/PerlACE::Process/) { + print_error ("$file:$.: using PerlACE::Process"); + } + + if (m/PerlACE::TestConfig/) { + print_error ("$file:$.: using PerlACE::TestConfig"); + } + + if (m/unlink/) { + print_error ("$file:$.: using unlink"); + } + + if (m/PerlACE::LocalFile/) { + print_error ("$file:$.: using PerlACE::LocalFile"); + } + if (m/\$DIR_SEPARATOR/) { print_error ("$file:$.: using \$DIR_SEPARATOR"); } @@ -1379,10 +1454,6 @@ sub check_for_bad_run_test () print_error ("$file:$.: using Process::Create"); } - if ((m/\.ior/ || m/\.conf/) && !m/LocalFile/) { - print_error ("$file:$.: Not using PerlACE::LocalFile"); - } - if (m/^ [^ ]/) { print_warning ("$file:$.: using two-space indentation"); } @@ -1424,9 +1495,6 @@ sub check_for_bad_run_test () } } } - else { - print STDERR "Error: Could not open $file\n"; - } } } @@ -1935,6 +2003,7 @@ if ($opt_t) { print "--------------------Configuration: Fuzz - Level ",$opt_l, "--------------------\n"; +check_for_bad_run_test () if ($opt_l >= 5); check_for_deprecated_macros () if ($opt_l > 1 ); check_for_refcountservantbase () if ($opt_l > 1 ); check_for_msc_ver_string () if ($opt_l >= 3); @@ -1949,7 +2018,7 @@ check_for_newline () if ($opt_l >= 1); check_for_ACE_Thread_Mutex () if ($opt_l >= 1); check_for_ACE_SYNCH_MUTEX () if ($opt_l >= 1); check_for_tab () if ($opt_l >= 1); -check_for_lack_ACE_OS () if ($opt_l >= 10); +check_for_lack_ACE_OS () if ($opt_l >= 6); check_for_exception_spec () if ($opt_l >= 1); check_for_NULL () if ($opt_l >= 1); check_for_inline () if ($opt_l >= 2); @@ -1963,7 +2032,6 @@ check_for_pre_and_post () if ($opt_l >= 4); check_for_push_and_pop () if ($opt_l >= 4); check_for_versioned_namespace_begin_end () if ($opt_l >= 4); check_for_mismatched_filename () if ($opt_l >= 2); -check_for_bad_run_test () if ($opt_l >= 6); check_for_absolute_ace_wrappers () if ($opt_l >= 3); check_for_bad_ace_trace () if ($opt_l >= 4); check_for_changelog_errors () if ($opt_l >= 4); diff --git a/ACE/bin/generate_rel_manpages b/ACE/bin/generate_rel_manpages index 91310625e49..0cd9aad5667 100755 --- a/ACE/bin/generate_rel_manpages +++ b/ACE/bin/generate_rel_manpages @@ -26,7 +26,7 @@ my $status= 0; my $doxy_path = '/usr/local/bin'; -my $doxy_version = '1.5.6'; +my $doxy_version = '1.5.8'; &can_run($doxy_path.'/doxygen --version | grep '.$doxy_version.' >/dev/null') || die "$0: doxygen path or version incorrect, please fix the script\n"; diff --git a/ACE/bin/make_release.py b/ACE/bin/make_release.py index 9d6ee0e9f64..7d46456c030 100755 --- a/ACE/bin/make_release.py +++ b/ACE/bin/make_release.py @@ -707,6 +707,8 @@ def generate_workspaces (stage_dir): ce_option += ' -value_template platforms+=\'"Smartphone 2003 (ARMV4)"\' ' ce_option += ' -value_template platforms+=\'"Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"\' ' ce_option += ' -value_template platforms+=\'"Windows Mobile 5.0 Smartphone SDK (ARMV4I)"\' ' + ce_option += ' -value_template platforms+=\'"Windows Mobile 6 Standard SDK (ARMV4I)"\' ' + ce_option += ' -value_template platforms+=\'"Windows Mobile 6 Professional SDK (ARMV4I)"\' ' redirect_option = str () if not opts.verbose: diff --git a/ACE/bin/mpc-mode.el b/ACE/bin/mpc-mode.el new file mode 100644 index 00000000000..3301f0daa37 --- /dev/null +++ b/ACE/bin/mpc-mode.el @@ -0,0 +1,185 @@ +;;; mpc-mode.el --- Makefile Project Creator mode for Emacs + +;; Author: Jules Colding <colding@42tools.com> +;; Maintainer: Jules Colding +;; Keywords: languages, faces, mpc + +;; Copyright (C) 2008 Jules Colding <colding@42tools.com> +;; +;; This program is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. +;; +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. +;; +;; You should have received a copy of the GNU General Public License +;; along with this program. If not, see <http://www.gnu.org/licenses/>. + +;; A major mode for editing MPC input. Please see: +;; +;; http://downloads.ociweb.com/MPC/MakeProjectCreator.pdf +;; +;; Derived from autoconf-mode.el by Martin Buchholz (martin@xemacs.org) + + +;; Many thanks to the follwing kind people for extensions, bugfixes and +;; other contributions: +;; +;; * William R. Otte <wotte@dre.vanderbilt.edu> +;; Indentation and syntax table. +;; + +;; Put this file somewhere in your emacs load path and add the following +;; to your Emacs configuration file: +;; +;; (require 'mpc-mode) +;; +;; +;; You may also add something like this to the top of your MPC files +;; to force a specific indentation mode: +;; +;; // -*- Mode: MPC; tab-width: 2; indent-tabs-mode: t; -*- + +;;; Code: + +(require 'font-lock) + +(defvar mpc-mode-hook nil) + +(defvar mpc-mode-map + (let ((mpc-mode-map (make-sparse-keymap))) + (define-key mpc-mode-map '[(control c) (control c)] 'comment-region) + (define-key mpc-mode-map '[(control j)] 'newline-and-indent) + mpc-mode-map) + "Keymap for MPC major mode") + +(defvar mpc-font-lock-keywords + `( + ("\\(project\\)" 1 font-lock-warning-face t) + ("\\(workspace\\)" 1 font-lock-warning-face t) + ("(\\([^()]*\\))" 1 font-lock-constant-face t) + ("\\(IDL_Files\\)" 1 font-lock-keyword-face t) + ("\\(Source_Files\\)" 1 font-lock-keyword-face t) + ("\\(Header_Files\\)" 1 font-lock-keyword-face t) + ("\\(Inline_Files\\)" 1 font-lock-keyword-face t) + ("\\(Template_Files\\)" 1 font-lock-keyword-face t) + ("\\(Resource_Files\\)" 1 font-lock-keyword-face t) + ("\\(Pkgconfig_Files\\)" 1 font-lock-keyword-face t) + ("\\(exclude\\)" 1 font-lock-type-face t) + ("\\(custom_only\\)" 1 font-lock-type-face t) + ("\\(cmdline\\)" 1 font-lock-type-face t) + ("\\(avoids\\)" 1 font-lock-type-face t) + ("\\(exename\\)" 1 font-lock-type-face t) + ("\\(install =\\)" 1 font-lock-type-face t) + ("\\(install +=\\)" 1 font-lock-type-face t) + ("\\(install -=\\)" 1 font-lock-type-face t) + ("\\(libs\\)" 1 font-lock-type-face t) + ("\\(lit_libs\\)" 1 font-lock-type-face t) + ("\\(linkflags\\)" 1 font-lock-type-face t) + ("\\(specific\\)" 1 font-lock-type-face t) + ("\\(macros\\)" 1 font-lock-type-face t) + ("\\(after\\)" 1 font-lock-type-face t) + ("\\(libout\\)" 1 font-lock-type-face t) + ("\\(libpaths\\)" 1 font-lock-type-face t) + ("\\(includes\\)" 1 font-lock-type-face t) + ("\\(automatic\\)" 1 font-lock-type-face t) + ("\\(command\\)" 1 font-lock-type-face t) + ("\\(output_option\\)" 1 font-lock-type-face t) + ("\\(header_pre_extension\\)" 1 font-lock-type-face t) + ("\\(header_outputext\\)" 1 font-lock-type-face t) + ("\\(sharedname\\)" 1 font-lock-type-face t) + ("\\(dynamicflags\\)" 1 font-lock-type-face t) + ("\\(idlflags\\)" 1 font-lock-type-face t) + ("\\(:\\)" 1 font-lock-builtin-face t) + ("\\( = \\)" 1 font-lock-builtin-face t) + ("\\(+=\\)" 1 font-lock-builtin-face t) + ("\\(-=\\)" 1 font-lock-builtin-face t) + ("\\(//\\)" 1 font-lock-comment-face t) + ("\\//\\(.*\\)" 1 font-lock-comment-face t) + "default font-lock-keywords") + ) + +;; Indenting logic +(defun mpc-indent-line () + "Indent current line as MPC directives" + (interactive) + (beginning-of-line) + + (if (bobp) + (indent-line-to 0) ; if we are at start of file, zero indent + (let ((not-found-hint t) cur-indent (close-brace nil)) + (save-excursion ; otherwise, we are not looking at a }, so we need to go back to find the + (if (looking-at ".*}") + (setq close-brace t)) + (while not-found-hint ; nearest indentation hint + (forward-line -1) + (if (looking-at ".*{") + (progn + (setq cur-indent (+ (current-indentation) tab-width)) + (setq not-found-hint nil)) + (if (looking-at ".*}") + (progn + (setq cur-indent (current-indentation)) + (if (< cur-indent 0) + (setq cur-indent 0)) + (setq not-found-hint nil)) + (if (bobp) + (setq not-found-hint nil)))))) + (if close-brace + (setq cur-indent (- cur-indent tab-width))) + (if cur-indent + (indent-line-to cur-indent) + (indent-line-to 0)))) + ) + +;; Create a syntax table. Derived from fundamental mode, it will automatically +;; highlight strings, and behave correctly on most words. +(defvar mpc-mode-syntax-table nil + "syntax table used in mpc mode") +(setq mpc-mode-syntax-table (make-syntax-table)) +(modify-syntax-entry ?_ "w" mpc-mode-syntax-table) ; underscore is a valid part of a word +(modify-syntax-entry ?- "w" mpc-mode-syntax-table) ; hyphen is a valid part of a word +(modify-syntax-entry ?/ ". 12b" mpc-mode-syntax-table) ; c++-style comments +(modify-syntax-entry ?\n "> b" mpc-mode-syntax-table) ; c++-style comments + +;;;###autoload +(defun mpc-mode () + "A major-mode to edit MPC files. +\\{mpc-mode-map} +" + (interactive) + (kill-all-local-variables) + (use-local-map mpc-mode-map) + + (make-local-variable 'comment-start) + (setq comment-start "//") + (make-local-variable 'parse-sexp-ignore-comments) + (setq parse-sexp-ignore-comments t) + + (make-local-variable 'tab-width) + (make-local-variable 'font-lock-defaults) + (make-local-variable 'indent-line-function) + + (setq major-mode 'mpc-mode) + (setq mode-name "MPC") + + (setq font-lock-defaults `(mpc-font-lock-keywords nil t)) + (setq indent-line-function 'mpc-indent-line) + + (set-syntax-table mpc-mode-syntax-table) + (run-hooks 'mpc-mode-hook) + ) + +(add-to-list 'auto-mode-alist '("\\.mwb\\'" . mpc-mode)) +(add-to-list 'auto-mode-alist '("\\.mwc\\'" . mpc-mode)) +(add-to-list 'auto-mode-alist '("\\.mpb\\'" . mpc-mode)) +(add-to-list 'auto-mode-alist '("\\.mpc\\'" . mpc-mode)) + + +(provide 'mpc-mode) + +;;; mpc-mode.el ends here diff --git a/ACE/bin/msvc_mpc_auto_compile.pl b/ACE/bin/msvc_mpc_auto_compile.pl index 8299d491fd8..14174e769b9 100755 --- a/ACE/bin/msvc_mpc_auto_compile.pl +++ b/ACE/bin/msvc_mpc_auto_compile.pl @@ -341,6 +341,7 @@ while ( $#ARGV >= 0 && $ARGV[0] =~ /^(-|\/)/ ) print "-u = Tell MSVC to use the environment\n"; print "-vc7 = Use MSVC 7 toolset\n"; print "-vc8 = Use MSVC 8 toolset\n"; + print "-vc9 = Use MSVC 9 toolset\n"; print "\n"; print "-ACE = Build ACE and its tests\n"; print "-TAO = Build ACE+TAO and its tests\n"; diff --git a/ACE/bin/split-cpp b/ACE/bin/split-cpp.pl index 513c52a946c..4ee950e8630 100755 --- a/ACE/bin/split-cpp +++ b/ACE/bin/split-cpp.pl @@ -1,7 +1,10 @@ +#! /usr/bin/perl eval '(exit $?0)' && eval 'exec perl -w -S $0 ${1+"$@"}' & eval 'exec perl -w -S $0 $argv:q' if 0; +# $Id$ +# # Splits C++ source files into one file per function or data item. # # Author: David L. Levine, with much help and encouragment from diff --git a/ACE/bin/tao_orb_tests.lst b/ACE/bin/tao_orb_tests.lst deleted file mode 100644 index ae1b430ec11..00000000000 --- a/ACE/bin/tao_orb_tests.lst +++ /dev/null @@ -1,365 +0,0 @@ -# $Id$ -# -# This is the list of run_test.pl's that need to be run by -# auto_run_tests.pl. -# Each line has its own test, and a test can be followed by a -# list of configurations it does _not_ run on. -# -# Example: TAO\examples\foo\run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST -# -# NOTE: This file contains tests only for TAO's ORB. Please do not -# include things like performance-tests, and examples here. - -TAO/tests/Oneway_Send_Timeouts/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !Win32 -TAO/tests/Oneway_Send_Timeouts/run_test.pl -blocking: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !Win32 -TAO/tests/Oneway_Send_Timeouts/run_test.pl -reactive: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !Win32 -TAO/tests/Abstract_Interface/run_test.pl: !CORBA_E_MICRO -TAO/tests/Bug_2702_Regression/run_test.pl -TAO/tests/ORB_Local_Config/Bunch/run_test.pl: !LabVIEW_RT -TAO/tests/ORB_Local_Config/Bug_1459/run_test.pl: SSL !STATIC !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/ORB_Local_Config/Bug_2612/run_test.pl: !ST !STATIC !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/ORB_Local_Config/Bug_3049/run_test.pl: !ST !STATIC !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/ORB_Local_Config/Separation/run_test.pl: !LabVIEW_RT -TAO/tests/ORB_Local_Config/Service_Dependency/run_test.pl: !ST !STATIC !LabVIEW_RT -TAO/tests/ORB_Local_Config/Shared/run_test.pl: !LabVIEW_RT -TAO/tests/ORB_Local_Config/Simple/run_test.pl: !LabVIEW_RT -TAO/tests/ORB_Local_Config/Two_DLL_ORB/run_test.pl: !ST !STATIC !LabVIEW_RT -TAO/tests/Param_Test/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO -TAO/tests/Param_Test/run_test_dii.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/AMI/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/AMI_Timeouts/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/AMH_Exceptions/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_ToFix_LynxOS_x86 !ACE_FOR_TAO -TAO/tests/AMH_Oneway/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_ToFix_LynxOS_x86 !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/CORBA_e_Implicit_Activation/run_test.pl: CORBA_E_COMPACT !LabVIEW_RT -TAO/tests/Collocation/run_test.pl: !ACE_FOR_TAO -TAO/tests/Collocation_Tests/run_test.pl: !ST !LabVIEW_RT -TAO/tests/Collocation_Opportunities/run_test.pl: !ST !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Collocation_Oneway_Tests/run_test.pl: !ST !NO_MESSAGING !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Collocation_Exception_Test/run_test.pl: !ST !LabVIEW_RT -TAO/tests/CollocationLockup/run_test.pl: !ST !DISABLE_ToFix_LynxOS_x86 !LabVIEW_RT -TAO/tests/OctetSeq/run_test.pl: !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/OctetSeq/run_test1.pl: !STATIC !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/OctetSeq/run_test2.pl: !STATIC !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/BiDirectional/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !GIOP10 !DISABLE_BIDIR !LynxOS !LabVIEW_RT -TAO/tests/BiDirectional/run_test_ipv6.pl: IPV6 !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !GIOP10 !DISABLE_BIDIR !LabVIEW_RT -TAO/tests/BiDirectional_NestedUpcall/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !GIOP10 !DISABLE_BIDIR !DISABLE_ToFix_LynxOS_PPC !LabVIEW_RT -TAO/tests/BiDirectional_DelayedUpcall/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !GIOP10 !DISABLE_BIDIR !DISABLE_ToFix_LynxOS_PPC !LabVIEW_RT -TAO/tests/Leader_Followers/run_test.pl: !ST !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/Leader_Followers/run_test_mt.pl: !ST !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/Multiple_Inheritance/run_test.pl: !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_933_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_1269_Regression/run_test.pl: !Win32 !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !QUICK !LabVIEW_RT -TAO/tests/Bug_1269_Regression/run_test.pl -quick : !Win32 !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO QUICK !LabVIEW_RT -TAO/tests/Bug_1495_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Bug_1535_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_1568_Regression/run_test.pl: !NO_MESSAGING !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_1670_Regression/run_test.pl: !NO_MESSAGING !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_1270_Regression/run_test.pl: !Win32 !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !QUICK !LabVIEW_RT -TAO/tests/Bug_1270_Regression/run_test.pl -quick : !Win32 !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO QUICK !LabVIEW_RT -TAO/tests/Bug_1020_Basic_Regression/run_test.pl: !Win32 !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !VxWorks !QUICK !LabVIEW_RT -TAO/tests/Bug_1020_Basic_Regression/run_test.pl -quick : !Win32 !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !VxWorks QUICK !LabVIEW_RT -TAO/tests/Bug_1020_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !Win32 !QUICK !LabVIEW_RT -TAO/tests/Bug_1020_Regression/run_test.pl -quick : !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !Win32 QUICK !LabVIEW_RT -TAO/tests/Bug_1254_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_1330_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_1361_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !Win32 !IRIX !QUICK !LabVIEW_RT -TAO/tests/Bug_1361_Regression/run_test.pl -quick : !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !Win32 !IRIX QUICK !LabVIEW_RT -TAO/tests/Bug_1476_Test/run_test.pl: !NO_MESSAGING !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_1482_Regression/run_test.pl: !VxWorks !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !VxWorks_RTP !QUICK !LabVIEW_RT !LynxOS -TAO/tests/Bug_1482_Regression/run_test.pl -quick : !VxWorks !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !VxWorks_RTP QUICK !LabVIEW_RT !LynxOS -TAO/tests/Bug_1551_Regression/run_test.pl: !VxWorks !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !IRIX !OpenVMS_IA64Crash !QUICK !LabVIEW_RT -TAO/tests/Bug_1551_Regression/run_test.pl -quick: !VxWorks !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !IRIX !OpenVMS_IA64Crash QUICK !LabVIEW_RT -TAO/tests/Bug_1676_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_2084_Regression/run_test.pl: !ST !LabVIEW_RT -TAO/tests/Bug_2085_Regression/run_test.pl: !LabVIEW_RT !FIXED_BUGS_ONLY -TAO/tests/Bug_2134_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_2174_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_2183_Regression/run_test.pl: !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/Bug_2186_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/Bug_2188_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_2201_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_2234_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Bug_2243_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_2289_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_2319_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT !FIXED_BUGS_ONLY -TAO/tests/Bug_2328_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_2345_Regression/run_test.pl: !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_2349_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_2356_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_2417_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/Bug_2429_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_2494_Regression/run_test.pl: !ST !LabVIEW_RT -TAO/tests/Bug_2503_Regression/run_test.pl: !NO_MESSAGING !ST !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_2542_Regression/run_test.pl: !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_2543_Regression/run_test.pl: !LabVIEW_RT !FIXED_BUGS_ONLY -TAO/tests/Bug_2560_Regression/run_test.pl: !ST !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_2593_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/Bug_2595_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_2654_Regression/run_test.pl: !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_2669_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_2677_Regression/run_test.pl: !STATIC !LabVIEW_RT -TAO/tests/Bug_2683_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_2734_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_2735_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_2768_Regression/run_test.pl: !NO_MESSAGING !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_2791_Regression/run_test.pl: !MINIMUM !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_2792_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_2795_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_2804_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT !FIXED_BUGS_ONLY -TAO/tests/Bug_2805_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_2809_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_2826_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_2869_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_2844_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT !FIXED_BUGS_ONLY -TAO/tests/Bug_2909_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_2935_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_2936_Regression/run_test.pl: !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LynxOS !STATIC !LabVIEW_RT -TAO/tests/Bug_2953_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/Bug_2966_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_3000_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT !FIXED_BUGS_ONLY -TAO/tests/Bug_3042_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_3068_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_BIDIR !LabVIEW_RT !ST !FIXED_BUGS_ONLY -TAO/tests/Bug_3108_Regression/run_test.pl: !ST !LabVIEW_RT -TAO/tests/Bug_3154_Regression/run_test.pl: !NO_IFR !LabVIEW_RT -TAO/tests/Bug_3163_Regression/run_test.pl: !LabVIEW_RT -TAO/tests/Bug_3171_Regression/run_test.pl: !ST !MINIMUM !NO_MESSAGING !LabVIEW_RT !CORBA_E_MICRO -TAO/tests/Bug_3198_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_3251_Regression/run_test.pl: !ST !LabVIEW_RT !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC -TAO/tests/Bug_3276_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_3299_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Bug_3315_Regression/run_test.pl: !ST !LabVIEW_RT -TAO/tests/Bug_3321_Regression/run_test.pl: !ST !LabVIEW_RT -TAO/tests/DIOP/run_test.pl: !ST !NO_DIOP !ACE_FOR_TAO !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/DIOP/run_test_ipv6.pl: IPV6 !ST !NO_DIOP !ACE_FOR_TAO !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/RTCORBA/Activate_Object_Multiple_ORBs/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/RTCORBA/Banded_Connections/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/RTCORBA/Client_Propagated/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/RTCORBA/Client_Protocol/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !IPV6 !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/RTCORBA/Collocation/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/RTCORBA/Destroy_Thread_Pool/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/RTCORBA/Explicit_Binding/run_test.pl: !VxWorks !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !IPV6 !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/RTCORBA/Linear_Priority/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT !LynxOS -TAO/tests/RTCORBA/MT_Client_Protocol_Priority/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !ACE_FOR_TAO !OpenVMS_IA64Crash !LabVIEW_RT -TAO/tests/RTCORBA/ORB_init/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/RTCORBA/Persistent_IOR/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/RTCORBA/Policies/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/RTCORBA/Policy_Combinations/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/RTCORBA/Priority_Inversion_With_Bands/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !ACE_FOR_TAO !OpenVMS_IA64Crash !LabVIEW_RT -TAO/tests/RTCORBA/Private_Connection/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/RTCORBA/Profile_And_Endpoint_Selection/run_test.pl: !VxWorks !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !IPV6 !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/RTCORBA/RTMutex/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/RTCORBA/Server_Declared/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/RTCORBA/Server_Protocol/run_test.pl: !VxWorks !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !IPV6 !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/RTCORBA/Thread_Pool/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/RTScheduling/VoidData/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/RTScheduling/Thread_Cancel/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ST !OpenVMS_IA64Crash !LabVIEW_RT -TAO/tests/RTScheduling/DT_Spawn/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/RTScheduling/Current/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ST !LabVIEW_RT -TAO/tests/RTScheduling/Scheduling_Interceptor/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !STATIC !LabVIEW_RT -TAO/tests/OBV/Any/run_test.pl: !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/OBV/Collocated/Forward/run_test.pl: !ST !LynxOS !CORBA_E_MICRO !LabVIEW_RT !FIXED_BUGS_ONLY -TAO/tests/OBV/Factory/run_test.pl: !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/OBV/Forward/run_test.pl: !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/OBV/TC_Alignment/run_test.pl: !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/OBV/ValueBox/run_test.pl: !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/OBV/Truncatable/run_test.pl: !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/OBV/Simple/run_test.pl: !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/HandleExhaustion/run_test.pl: !Win32 !LabVIEW_RT -TAO/tests/Hello/run_test.pl: -TAO/tests/LongDouble/run_test.pl: !LabVIEW_RT -TAO/tests/IPV6/run_test.pl: IPV6 !LabVIEW_RT -TAO/tests/AlternateIIOP/run_test.pl: !DISABLE_ToFix_LynxOS_x86 !LabVIEW_RT -TAO/tests/Optimized_Connection/run_test.pl: !DISABLE_ToFix_LynxOS_x86 !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/Cache_Growth_Test/run_test.pl: !LabVIEW_RT -TAO/tests/Muxing/run_test.pl: !ST !LabVIEW_RT -TAO/tests/Muxed_GIOP_Versions/run_test.pl: !VxWorks !ST !DISABLE_ToFix_LynxOS_PPC !OpenVMS_IA64Crash !LabVIEW_RT -TAO/tests/MT_Client/run_test.pl: !ST !LabVIEW_RT -TAO/tests/MT_BiDir/run_test.pl: !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !GIOP10 !DISABLE_BIDIR !LynxOS !LabVIEW_RT -TAO/tests/File_IO/run_test.pl: !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/MT_Server/run_test.pl: !ST !LabVIEW_RT -TAO/tests/No_Server_MT_Connect_Test/run_test.pl: !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Connect_Strategy_Test/run_test.pl: !LabVIEW_RT -# DISABLED TAO/tests/Client_Leaks/run_test.pl: !VxWorks !ST !Tru64 -TAO/tests/Server_Leaks/run_test.pl: !LabVIEW_RT -TAO/tests/Smart_Proxies/Policy/run_test.pl: !LabVIEW_RT -TAO/tests/Smart_Proxies/run_test.pl: !LabVIEW_RT -TAO/tests/Smart_Proxies/dtor/run_test.pl: !LabVIEW_RT -TAO/tests/Stack_Recursion/run_test.pl: !ST !DISABLE_ToFix_LynxOS_PPC !QUICK !LabVIEW_RT -TAO/tests/Stack_Recursion/run_test.pl -quick : !ST !DISABLE_ToFix_LynxOS_PPC QUICK !LabVIEW_RT -TAO/tests/Faults/run_test.pl: !VxWorks !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !OpenVMS_IA64Crash !LabVIEW_RT -TAO/tests/CallbackTest/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO -TAO/tests/CallbackTest/run_test_ipv6.pl: IPV6 !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/CallbackTest/run_test_mixed_ip.pl: IPV6 !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Crashed_Callback/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !OpenVMS_IA64Crash !LabVIEW_RT -# Disabled Crash On Write on Win32, see bugzilla 959 why !LabVIEW_RT -TAO/tests/Crash_On_Write/run_test.pl: !VxWorks !ST !Win32 !LabVIEW_RT -TAO/tests/Nested_Upcall_Crash/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !OpenVMS_IA64Crash !QUICK !LabVIEW_RT -TAO/tests/Nested_Upcall_Crash/run_test.pl -quick: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !OpenVMS_IA64Crash QUICK !LabVIEW_RT -TAO/tests/NestedUpcall/Simple/run_test.pl: !ST !LabVIEW_RT -TAO/tests/NestedUpcall/MT_Client_Test/run_test.pl: !ST !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/NestedUpcall/Triangle_Test/run_test.pl: !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Nested_Event_Loop/run_test.pl: !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/POA/Identity/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/POA/Forwarding/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/POA/Policies/run_test.pl: !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/POA/Excessive_Object_Deactivations/run_test.pl: !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/POA/Persistent_ID/run_test.pl: !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/POA/Etherealization/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/POA/Object_Reactivation/run_test.pl: !ST !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/POA/POA_Destruction/run_test.pl: !LabVIEW_RT -TAO/tests/POA/Default_Servant/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/POA/Single_Threaded_POA/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/POA/Non_Servant_Upcalls/run_test.pl: !SUNCC5_1 !LabVIEW_RT -TAO/tests/POA/MT_Servant_Locator/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/POA/Bug_1592_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT !FIXED_BUGS_ONLY -TAO/tests/POA/Bug_2511_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/POA/Nested_Non_Servant_Upcalls/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/POA/Deactivate_Object/run_test.pl: !LabVIEW_RT -TAO/tests/POA/Reference_Counting/run_test.pl: !LabVIEW_RT -TAO/tests/POA/Current/run_test.pl: !LabVIEW_RT -TAO/tests/POA/wait_for_completion/run_test.pl: !LabVIEW_RT -TAO/tests/POA/POAManagerFactory/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/POA/EndpointPolicy/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/POA/EndpointPolicy/run_test_dh.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/POA/EndpointPolicy/run_test_lh.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT !VxWorks -TAO/tests/POA/Adapter_Activator/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !SUNCC5_1 !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/POA/POA_BiDir/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_BIDIR !LabVIEW_RT -TAO/tests/POA/DSI/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/POA/Default_Servant2/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/POA/Explicit_Activation/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/POA/FindPOA/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/POA/NewPOA/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/POA/On_Demand_Activation/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/POA/On_Demand_Loading/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !KCC_Linux !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/POA/Reference_Counted_Servant/run_test.pl: !SUNCC5_1 !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/POA/Loader/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !KCC_Linux !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/POA/RootPOA/run_test.pl: !LabVIEW_RT -TAO/tests/DiffServ/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/IORManipulation/run_test.pl: !LabVIEW_RT -TAO/tests/IORManipulation/filter/run_test.pl: !LabVIEW_RT -TAO/tests/Policies/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/Timeout/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/MT_Timeout/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !OpenVMS_IA64Crash !LabVIEW_RT -TAO/tests/Timed_Buffered_Oneways/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Single_Read/run_test.pl: !LabVIEW_RT -TAO/tests/Connection_Timeout/run_test.pl: !VxWorks !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !LabVIEW_RT -#TAO/tests/Connection_Failure/run_test.pl ! Timesout for good reasons !LabVIEW_RT -TAO/tests/MProfile_Connection_Timeout/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/Codec/run_test.pl -TAO/tests/Bug_1693_Test/run_test.pl: !LabVIEW_RT -TAO/tests/IDL_Test/run_test.pl: !NO_MESSAGING !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/ORB_init/run_test.pl: !LabVIEW_RT -TAO/tests/ORB_destroy/run_test.pl: !LabVIEW_RT -TAO/tests/ORB_shutdown/run_test.pl: !LabVIEW_RT -TAO/tests/DSI_Gateway/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/DSI_AMI_Gateway/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/DSI_Gateway/run_exception_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/DSI_AMI_Gateway/run_exception_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/DSI_AMH/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/DII_AMI_Forward/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/DynAny_Test/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/DynUnion_Test/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Connection_Purging/run_test.pl: !VxWorks !ST !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/Server_Connection_Purging/run_test.pl: !VxWorks !Win32 !LabVIEW_RT -TAO/tests/LongUpcalls/run_test.pl: !VxWorks !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Reliable_Oneways/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Blocking_Sync_None/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Oneway_Buffering/run_message_count.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Oneway_Buffering/run_buffer_size.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Oneway_Buffering/run_timeout.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Oneway_Buffering/run_timeout_reactive.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Oneway_Timeouts/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_MESSAGING !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/AMI_Buffering/run_message_count.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/AMI_Buffering/run_buffer_size.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/AMI_Buffering/run_timeout.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/AMI_Buffering/run_timeout_reactive.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/Big_AMI/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Big_Oneways/run_test.pl: !ST !LabVIEW_RT -TAO/tests/Big_Twoways/run_test.pl: !ST !LabVIEW_RT -TAO/tests/Big_Reply/run_test.pl: !ST !LabVIEW_RT -TAO/tests/Big_Request_Muxing/run_test.pl: !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Oneways_Invoking_Twoways/run_test.pl: !ST !LabVIEW_RT -TAO/tests/Queued_Message_Test/run_test.pl: !LabVIEW_RT -TAO/tests/DLL_ORB/run_test.pl: !ST !STATIC !LabVIEW_RT -TAO/tests/InterOp-Naming/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Multiple/run_test.pl: !SUNCC5_1 !LabVIEW_RT -TAO/tests/Exposed_Policies/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/Portable_Interceptors/Bug_1559/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/Bug_2510_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ST !LabVIEW_RT -TAO/tests/Portable_Interceptors/Collocated/Dynamic/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ST !LabVIEW_RT -TAO/tests/Portable_Interceptors/Processing_Mode_Policy/Collocated/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ST !LabVIEW_RT -TAO/tests/Portable_Interceptors/Processing_Mode_Policy/Remote/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ST !LabVIEW_RT -TAO/tests/Portable_Interceptors/Collocated/Service_Context_Manipulation/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ST !LabVIEW_RT -TAO/tests/Portable_Interceptors/Dynamic/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/IORInterceptor/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !GIOP10 !LabVIEW_RT -TAO/tests/Portable_Interceptors/ForwardRequest/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/Service_Context_Manipulation/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/Request_Interceptor_Flow/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !HAS_EXTENDED_FT_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/PICurrent/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/AMI/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/ORB_Shutdown/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/PolicyFactory/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/Bug_2088/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/Recursive_ORBInitializer/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/Register_Initial_References/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/Slot/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/AdvSlot/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/AdvSlotDblCpy/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/AdvSlotExt/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/Redirection/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/Bug_3079/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/Bug_3080/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Portable_Interceptors/Bug_2133/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/ORT/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !LabVIEW_RT -TAO/tests/Object_Loader/run_test.pl: !STATIC !LabVIEW_RT -TAO/tests/Two_Objects/run_test.pl: !ST !LabVIEW_RT -TAO/tests/TransportCurrent/Framework/run_test.pl -dynamic: !DISABLE_TRANSPORT_CURRENT !STATIC !DISABLE_INTERCEPTORS !MINIMUM !LabVIEW_RT -TAO/tests/TransportCurrent/Framework/run_test.pl -static: !DISABLE_TRANSPORT_CURRENT STATIC !DISABLE_INTERCEPTORS !MINIMUM !LabVIEW_RT -TAO/tests/TransportCurrent/IIOP/run_test.pl -dynamic: !DISABLE_TRANSPORT_CURRENT !STATIC !DISABLE_INTERCEPTORS !MINIMUM !LabVIEW_RT -TAO/tests/TransportCurrent/IIOP/run_test.pl -static: !DISABLE_TRANSPORT_CURRENT STATIC !DISABLE_INTERCEPTORS !MINIMUM !LabVIEW_RT -TAO/tests/UNKNOWN_Exception/run_test.pl: !LabVIEW_RT -TAO/tests/Native_Exceptions/run_test.pl: !LabVIEW_RT -TAO/tests/Servant_To_Reference_Test/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !LabVIEW_RT -TAO/tests/Sequence_Unit_Tests/run_test.pl -noboost: !LabVIEW_RT -TAO/tests/Sequence_Unit_Tests/run_test.pl -boost: BOOST !LabVIEW_RT -TAO/tests/Typedef_String_Array/run_test.pl: !LabVIEW_RT -TAO/tests/GIOP_Fragments/PMB_With_Fragments/run_test.pl: !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/CodeSets/simple/run_test.pl: !GIOP10 !STATIC !LabVIEW_RT -TAO/tests/Hang_Shutdown/run_test.pl: !ST !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/Any/Recursive/run_test.pl: !STATIC !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_1/run_test.pl: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_2/run_test.pl: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_2/run_test.pl remote: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_2/run_test.pl collocated: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_2/run_test.pl remote_orbthreads: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_2/run_test.pl remote_servants: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_2/run_test.pl remote_csdthreads: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_2/run_test.pl remote_big: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_2/run_test.pl big: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_3/run_test.pl: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_3/run_test.pl remote: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_3/run_test.pl collocated: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_3/run_test.pl remote_orbthreads: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_3/run_test.pl remote_servants: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_3/run_test.pl remote_csdthreads: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_3/run_test.pl remote_big: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_3/run_test.pl big: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_4/run_test.pl: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_4/run_test.pl remote: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_4/run_test.pl collocated: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_4/run_test.pl remote_orbthreads: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_4/run_test.pl remote_servants: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_4/run_test.pl remote_csdthreads: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_4/run_test.pl remote_big: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_4/run_test.pl big: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_Dynamic/run_test.pl: !STATIC !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Strategy_Tests/TP_Test_Static/run_test.pl: !ST !CORBA_E_MICRO !LynxOS !LabVIEW_RT -TAO/tests/CSD_Collocation/run_test.pl: !ST !CORBA_E_COMPACT !CORBA_E_MICRO !MINIMUM !LynxOS !LabVIEW_RT -TAO/tests/Permanent_Forward/run_test.pl: !LabVIEW_RT -TAO/tests/Parallel_Connect_Strategy/run_test.pl: !QUICK !LabVIEW_RT !VxWorks55 -TAO/tests/Parallel_Connect_Strategy/run_test.pl -quick : QUICK !LabVIEW_RT !VxWorks55 -TAO/tests/DII_Collocation_Tests/oneway/run_test.pl: !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/DII_Collocation_Tests/twoway/run_test.pl: !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LabVIEW_RT -TAO/tests/Compression/run_test.pl: ZLIB !LabVIEW_RT -TAO/tests/Collocated_Forwarding/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ACE_FOR_TAO !LabVIEW_RT -TAO/tests/ZIOP/run_test.pl: ZIOP ZLIB !LabVIEW_RT diff --git a/ACE/bin/tao_other_tests.lst b/ACE/bin/tao_other_tests.lst deleted file mode 100644 index 9e8e3f73a32..00000000000 --- a/ACE/bin/tao_other_tests.lst +++ /dev/null @@ -1,197 +0,0 @@ -# $Id$ -# -# This is the list of run_test.pl's that need to be run by -# auto_run_tests.pl. -# Each line has its own test, and a test can be followed by a -# list of configurations it does _not_ run on. -# -# Example: TAO\examples\foo\run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST -# -# NOTE: This file contains examples and other service level test for -# TAO's. Please do not include regular tests here. -TAO/performance-tests/Cubit/TAO/IDL_Cubit/run_test.pl: !LynxOS !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/Cubit/TAO/MT_Cubit/run_test.pl: !ST !OpenBSD !Win32 !ACE_FOR_TAO !OpenVMS !CORBA_E_MICRO !VxWorks !VxWorks_RTP -TAO/performance-tests/Latency/Single_Threaded/run_test.pl -n 1000: !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/Latency/Thread_Pool/run_test.pl -n 1000: !ST !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/Latency/Thread_Per_Connection/run_test.pl -n 1000: !ST !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/Latency/AMI/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/Latency/DSI/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/Latency/DII/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/Latency/Deferred/run_test.pl: !QNX !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/Sequence_Latency/Single_Threaded/run_test.pl: !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/Sequence_Latency/Thread_Pool/run_test.pl: !ST !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/Sequence_Latency/Thread_Per_Connection/run_test.pl: !ST !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/Sequence_Latency/AMI/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/Sequence_Latency/DSI/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/Sequence_Latency/DII/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/Sequence_Latency/Deferred/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/Throughput/run_test.pl: !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/POA/Object_Creation_And_Registration/run_test.pl: !Win32 !ACE_FOR_TAO !OpenVMS !CORBA_E_MICRO !VxWorks !VxWorks_RTP -TAO/performance-tests/RTCorba/Oneways/Reliable/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !Win32 !OpenVMS !VxWorks !VxWorks_RTP -TAO/performance-tests/Protocols/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !Win32 !ACE_FOR_TAO !OpenVMS !VxWorks !VxWorks_RTP -TAO/examples/Simple/bank/run_test.pl: !NO_MESSAGING !CORBA_E_MICRO -TAO/examples/Simple/grid/run_test.pl: !NO_MESSAGING !CORBA_E_MICRO -TAO/examples/Simple/time-date/run_test.pl: !ST !STATIC !NO_MESSAGING !Win32 -TAO/examples/Simple/time/run_test.pl: !NO_MESSAGING !Win32 !CORBA_E_MICRO -TAO/examples/Quoter/run_test.pl: !DISABLE_ToFix_LynxOS_PPC !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !Win32 !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/examples/Load_Balancing/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !SUNCC5_1 !ACE_FOR_TAO -TAO/examples/AMH/Sink_Server/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !Win32 !LynxOS !ACE_FOR_TAO -TAO/examples/OBV/Typed_Events/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO -TAO/orbsvcs/tests/AVStreams/Pluggable/run_test.pl -p TCP,UDP,RTP_UDP: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/AVStreams/Pluggable/run_test.pl -p SCTP_SEQ: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO SCTP !LynxOS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/AVStreams/Full_Profile/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !LynxOS !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/AVStreams/Multicast/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !LynxOS !VxWorks !VxWorks_RTP -#TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -#TAO/orbsvcs/tests/AVStreams/Latency/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/AVStreams/Simple_Two_Stage/run_test.pl -p TCP,UDP,RTP_UDP: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/AVStreams/Simple_Two_Stage/run_test.pl -p SCTP_SEQ: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO SCTP !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/AVStreams/Simple_Two_Stage_With_QoS/run_test.pl -p TCP,UDP,RTP_UDP: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/AVStreams/Simple_Two_Stage_With_QoS/run_test.pl -p SCTP_SEQ: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO SCTP !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/AVStreams/Simple_Three_Stage/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !DISABLE_ToFix_LynxOS_x86 !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/AVStreams/Asynch_Three_Stage/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/AVStreams/Component_Switching/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_1334_Regression/run_test.pl: !ACE_FOR_TAO !CORBA_E_MICRO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_1393_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_IFR !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_1395_Regression/run_test.pl: !LynxOS !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_MESSAGING !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_1436_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_IFR !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_1437_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_MESSAGING !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_1630_Regression/run_test.pl: !NO_IFR !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2074_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !NO_MESSAGING !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2247_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2248_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2285_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2285_Regression/run_test2.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2287_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2316_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !SUNCC5_1 !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2377_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2615_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2777_Regression/run_test.pl: !MINIMUM !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2926_Regression/run_test.pl: !ST !NO_MESSAGING !STATIC !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !LynxOS !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_3215_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_3216_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/CosEvent/Basic/run_test.pl: !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/HTIOP/Hello/run_test.pl: !NO_UUID !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/HTIOP/AMI/run_test.pl: !NO_UUID !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/HTIOP/BiDirectional/run_test.pl: !NO_UUID !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Simple_Naming/run_test.pl: !ST !SUNCC5_1 !NO_MESSAGING !ACE_FOR_TAO !LynxOS !CORBA_E_MICRO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Simple_Naming/run_test_ffp.pl: !ST !SUNCC5_1 !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_MESSAGING !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Redundant_Naming/run_test.pl: !ST !SUNCC5_1 !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Trading/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !SUNCC5_1 !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/unit/Trading/Interpreter/run_test.pl: !CORBA_E_MICRO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Event/Basic/run_test.pl: !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Event/Performance/run_test.pl: !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Event/UDP/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !NO_DIOP !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/EC_Custom_Marshal/run_test.pl: !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !DISABLE_ToFix_LynxOS_x86 !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/EC_Throughput/run_test.pl: !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_ToFix_LynxOS_x86 !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/EC_MT_Mcast/run_test.pl:!ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Event/Mcast/RTEC_MCast_Federated/run_test.pl: !NO_MCAST !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Event/Mcast/RTEC_MCast_Federated/run_test.pl -ipv6: IPV6 !NO_MCAST !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/FaultTolerance/GroupRef_Manipulation/run_test.pl:!MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/FaultTolerance/IOGR/run_test.pl:!MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/FaultTolerance/IOGRManipulation/run_test.pl:!MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2137_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/InterfaceRepo/Application_Test/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_IFR !STATIC !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/InterfaceRepo/IDL3_Test/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_IFR !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/InterfaceRepo/IFR_Test/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_IFR !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/InterfaceRepo/IFR_Inheritance_Test/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_IFR !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/InterfaceRepo/Latency_Test/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_IFR !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/InterfaceRepo/Persistence_Test/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_IFR !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/InterfaceRepo/Union_Forward_Test/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_IFR !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/InterfaceRepo/Bug_2962_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_IFR !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/InterfaceRepo/Bug_3155_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_IFR !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/InterfaceRepo/Bug_3174_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_IFR !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/ImplRepo/run_test.pl both_ir: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/ImplRepo/run_test.pl nestea_ir: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/ImplRepo/run_test.pl airplane_ir: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/ImplRepo/run_test.pl persistent_ir: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/ImplRepo/run_test.pl nt_service_ir: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO Win32 !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/ImplRepo/run_test.pl shutdown: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LynxOS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/ImplRepo/run_test.pl perclient: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/ImplRepo/NameService/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/ImplRepo/locked/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !LynxOS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/ImplRepo/scale/run_test.pl -servers 5 -objects 5: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/ImplRepo/Bug_689_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/ImplRepo/Bug_2604_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/examples/ImR/Combined_Service/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !ST !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/examples/CosEC/TypedSimple/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !NO_IFR !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/CosEvent/Timeout/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !NO_MESSAGING !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Log/Basic_Log_Test/run_test.pl: !NO_MESSAGING !ACE_FOR_TAO !CORBA_E_MICRO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Basic/run_test.pl notify.reactive.conf: !ST !NO_MESSAGING !STATIC !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Basic/run_test_ipv6.pl notify.reactive.conf: IPV6 !ST !NO_MESSAGING !STATIC !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Basic/run_test.pl notify.mt.conf: !ST !NOTIFY !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Basic/run_test_ipv6.pl notify.mt.conf: IPV6 !ST !NOTIFY !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Basic/run_test.pl notify.rt.conf: !ST !STATIC !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Basic/run_test_ipv6.pl notify.rt.conf: IPV6 !ST !STATIC !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Blocking/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !DISABLE_ToFix_LynxOS_x86 !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Bug_1385_Regression/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !DISABLE_ToFix_LynxOS_x86 !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Bug_2561_Regression/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !DISABLE_ToFix_LynxOS_x86 !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Bug_3252_Regression/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !DISABLE_ToFix_LynxOS_x86 !STATIC !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Discarding/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !DISABLE_ToFix_LynxOS_x86 !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/MT_Dispatching/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Ordering/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !DISABLE_ToFix_LynxOS_x86 !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Timeout/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/performance-tests/Filter/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !IRIX !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Sequence_Multi_ETCL_Filter/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Sequence_Multi_Filter/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Structured_Filter/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !DISABLE_ToFix_LynxOS_x86 !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Structured_Multi_Filter/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Reconnecting/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/XML_Persistence/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/Persistent_POA/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/EC_Mcast/run_test.pl: !NO_MCAST !NO_MESSAGING !DISABLE_ToFix_LynxOS_PPC !ACE_FOR_TAO !CORBA_E_MICRO !VxWorks !VxWorks_RTP -# FAILS 'TAO/orbsvcs/tests/EC_Multiple/run_test.pl !VxWorks !VxWorks_RTP -# NO REDIRECTION TAO/examples/Simple/echo/run_test.pl < Echo.idl !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Property/run_test.pl: !NO_MESSAGING !ACE_FOR_TAO !CORBA_E_MICRO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_3387_Regression/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO -#HANGS TAO/orbsvcs/tests/ImplRepo/run_test.pl airplane !VxWorks !VxWorks_RTP -#HANGS'TAO/orbsvcs/tests/ImplRepo/run_test.pl airplane_ir !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Security/Secure_Invocation/run_test.pl: SSL !STATIC !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Security/Bug_1107_Regression/run_test.pl: SSL !STATIC !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Security/Bug_2908_Regression/run_test.pl: SSL !STATIC !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP !FIXED_BUGS_ONLY -TAO/orbsvcs/tests/Security/Big_Request/run_test.pl: SSL !STATIC !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Security/BiDirectional/run_test.pl: SSL !STATIC !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Security/Callback/run_test.pl: SSL !STATIC !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Security/MT_SSLIOP/run_test.pl: !ST SSL !STATIC !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Security/MT_IIOP_SSL/run_test.pl: !ST SSL !STATIC !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -#Bug 1647. run_test_harsh.pl takes 5 minutes; but there aren't many SSL builds !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Security/MT_SSLIOP/run_test_harsh.pl: !ST SSL !STATIC !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Security/Crash_Test/run_test.pl: SSL !STATIC !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Security/InsecureReferences/run_test.pl: SSL !STATIC !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Security/EndpointPolicy/run_test.pl: SSL !STATIC !DISABLE_INTERCEPTORS !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Miop/McastHello/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !SUNCC5_1 !NO_MCAST !VxWorks !VxWorks_RTP -# The following 2 tests use dynamic loading to change the default reactor on Windows !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !STATIC !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Infrastructure_Controlled/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !STATIC !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/LoadBalancing/LoadMonitor/CPU/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !NO_LOADAVG !DISABLE_ToFix_LynxOS_x86 !VxWorks !VxWorks_RTP -TAO/examples/RTCORBA/Activity/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ST !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/examples/RTScheduling/Fixed_Priority_Scheduler/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !STATIC !ST !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/examples/RTScheduling/MIF_Scheduler/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_INTERCEPTORS !STATIC !ST !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/examples/ior_corbaloc/run_test.pl: !NO_MESSAGING !ACE_FOR_TAO !CORBA_E_MICRO !VxWorks !VxWorks_RTP -TAO/utils/nslist/run_test.pl: !ST !SUNCC5_1 !NO_MESSAGING !ACE_FOR_TAO !CORBA_E_MICRO -TAO/orbsvcs/tests/BiDir_CORBALOC/run_test.pl: !NO_MESSAGING !ACE_FOR_TAO !CORBA_E_MICRO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/IOR_MCast/run_test_ipv6.pl: IPV6 !NO_MCAST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2709_Regression/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !ST !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2800_Regression/run_test.pl: !ST !CORBA_E_MICRO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2800_Regression/run_test_federated.pl: !ST !CORBA_E_MICRO !VxWorks !VxWorks_RTP -TAO/orbsvcs/examples/Notify/Filter/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/examples/Notify/Subscribe/run_test.pl: !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2925_Regression/run_test.pl: !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2925_Regression/run_test_ipv6.pl: IPV6 !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_2377_Regression/run_test_ipv6.pl: IPV6 !ST !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_3444_Regression/run_test.pl: !NO_DIOP !CORBA_E_MICRO !STATIC !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_3444_Regression/run_test.pl --sciop: SCTP !CORBA_E_MICRO !STATIC !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_3444_Regression/run_test_ipv6.pl: IPV6 !NO_DIOP !CORBA_E_MICRO !STATIC !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Bug_3444_Regression/run_test_ipv6.pl --sciop: IPV6 SCTP !CORBA_E_MICRO !STATIC !VxWorks !VxWorks_RTP -TAO/examples/PluggableUDP/tests/SimplePerformance/run_test_ipv6.pl: IPV6 !QNX !NO_DIOP !ACE_FOR_TAO -TAO/examples/PluggableUDP/tests/SimplePerformance/run_test.pl: !QNX !NO_DIOP !ACE_FOR_TAO -TAO/examples/PluggableUDP/tests/Performance/run_test.pl: !QNX !ST !NO_DIOP !ACE_FOR_TAO !CORBA_E_COMPACT !CORBA_E_MICRO -TAO/examples/PluggableUDP/tests/Performance/run_test_ipv6.pl: IPV6 !QNX !ST !NO_DIOP !ACE_FOR_TAO !CORBA_E_COMPACT !CORBA_E_MICRO -TAO/orbsvcs/tests/unit/Notify/MC/Control/run_test.pl: !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/unit/Notify/MC/MonitorControlExt/run_test.pl: !STATIC !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/unit/Notify/MC/MonitorManager/run_test.pl: !ST !STATIC !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/unit/Notify/MC/NotificationServiceMonitor/run_test.pl: !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/unit/Notify/MC/Statistic_Registry/run_test.pl: !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/unit/Notify/MC/Statistic/run_test.pl: !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Notify/MC/run_test.pl: !ST !STATIC !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !VxWorks !VxWorks_RTP -TAO/orbsvcs/tests/Simple_Naming/run_test_ipv6.pl: IPV6 !ST !SUNCC5_1 !NO_MESSAGING !ACE_FOR_TAO !LynxOS !CORBA_E_MICRO !VxWorks !VxWorks_RTP diff --git a/ACE/configure.ac b/ACE/configure.ac index 83e9b208c52..56ab10d88c4 100644 --- a/ACE/configure.ac +++ b/ACE/configure.ac @@ -63,7 +63,7 @@ dnl Add maintainer mode option to the option list. dnl AM_MAINTAINER_MODE dnl The maintainer of this configure script. -ACE_CONFIGURE_MAINTAINER='ace-users@cs.wustl.edu' +ACE_CONFIGURE_MAINTAINER='ace-users@list.isis.vanderbilt.edu' dnl Until autoconf support in ACE is complete, prevent this script @@ -3385,9 +3385,11 @@ ACE_CHECK_LACKS_FUNCS(strtod) ACE_CHECK_LACKS_FUNCS(strtol) +ACE_FUNC_STRTOLL + ACE_CHECK_LACKS_FUNCS(strtoul) -ACE_CHECK_LACKS_FUNCS(strtoull) +ACE_FUNC_STRTOULL # swab() comes in a number of forms: # swab (const void*, void*, size_t) is POSIX, XPG4, SUS, SUSv2 standard. @@ -3683,8 +3685,9 @@ ACE_CHECK_HAS_FUNCS(vasprintf vaswprintf vfwprintf vswprintf) ACE_CHECK_HAS_FUNCS(wcsnlen) -ACE_CHECK_LACKS_FUNCS(fgetws fputws itow towlower towupper wcscat wcschr wcscmp wcscpy wcscspn wcslen wcsncat wcsncmp wcsncpy wcsnicmp wcspbrk wcsrchr wcsspn wcsstr wcstod wcstok wcstol wcstoul wcstoull) +ACE_CHECK_LACKS_FUNCS(fgetws fputws isblank iswblank isctype iswctype itow towlower towupper wcscat wcschr wcscmp wcscpy wcscspn wcslen wcsncat wcsncmp wcsncpy wcsnicmp wcspbrk wcsrchr wcsspn wcsstr wcstod) +ACE_CHECK_LACKS_FUNCS(wcstok) if test "$ac_cv_func_wcstok" = yes; then dnl The wcstok() function varies with standards. Check which one we have. AC_MSG_CHECKING([for 2- or 3-param wcstok]) @@ -3708,6 +3711,14 @@ AC_LINK_IFELSE([AC_LANG_PROGRAM( ]) fi dnl test "$ac_cv_func_wcstok" = yes +ACE_CHECK_LACKS_FUNCS(wcstol) + +ACE_FUNC_WCSTOLL + +ACE_CHECK_LACKS_FUNCS(wcstoul) + +ACE_FUNC_WCSTOULL + dnl Check for SYSV IPC functions dnl dnl Although Darwin/OS X does not implement any of the SysV IPC API, @@ -7253,13 +7264,13 @@ ACE_CACHE_CHECK([if generated ACE configuration is usable], dnl there would be no chance that the rest of ACE would compile. ], [ - AC_MSG_ERROR( + AC_MSG_WARN( [ The generated configuration appears to be unusable. Please verify that your system path and environment variables are correct. If they appear to be correct then please send the maintainer of this configure -script $ACE_CONFIGURE_MAINTAINER the *COMPRESSED* 'config.log' file -and the following information: +script $ACE_CONFIGURE_MAINTAINER the *COMPRESSED* 'config.log' file, +the generated ace/config.h file and the following information: ACE 'configure' Script Information ================================== diff --git a/ACE/contrib/FaCE/CE_ARGV.H b/ACE/contrib/FaCE/CE_ARGV.H index 78e848abae1..716887ae1a8 100644 --- a/ACE/contrib/FaCE/CE_ARGV.H +++ b/ACE/contrib/FaCE/CE_ARGV.H @@ -34,7 +34,7 @@ class CE_ARGV { public: /** - * Ctor accepts CE command line as a paramter. + * Ctor accepts CE command line as a parameter. */ CE_ARGV(wchar_t* cmdLine); @@ -44,7 +44,7 @@ public: ~CE_ARGV(void); /** - * Returns the number of command line paramters, same as argc on Unix. + * Returns the number of command line parameters, same as argc on Unix. */ int argc(void); @@ -65,7 +65,7 @@ private: CE_ARGV(CE_ARGV&); /** - * Pointer of converted command line paramters. + * Pointer of converted command line parameters. */ wchar_t** ce_argv_; diff --git a/ACE/contrib/FaCE/FaCENOACE.mpc b/ACE/contrib/FaCE/FaCENOACE.mpc index 408c4f4e7d4..6868e78bc07 100644 --- a/ACE/contrib/FaCE/FaCENOACE.mpc +++ b/ACE/contrib/FaCE/FaCENOACE.mpc @@ -1,7 +1,7 @@ // -*- MPC -*- // $Id$ -project { +project: vc_warnings { exename = FaCENOACE requires += wince macros += NO_ACE diff --git a/ACE/debianbuild/Basic_Logging_Service.sgml b/ACE/debianbuild/Basic_Logging_Service.sgml new file mode 100644 index 00000000000..bd74c24ef56 --- /dev/null +++ b/ACE/debianbuild/Basic_Logging_Service.sgml @@ -0,0 +1,68 @@ +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [ + <!ENTITY applname "Basic_Logging_Service"> + <!ENTITY revision "$Revision$"> + <!ENTITY man_tao_orb_options "<citerefentry><refentrytitle>TAO_ORB_Options</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_notify_logging_service "<citerefentry><refentrytitle>Notify_Logging_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_event_logging_service "<citerefentry><refentrytitle>Event_Logging_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_rt_event_logging_service "<citerefentry><refentrytitle>RTEvent_Logging_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_naming_service "<citerefentry><refentrytitle>Naming_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY Naming_Service "<application>Naming_Service</application>"> + <!ENTITY Basic_Logging_Service "<application>Basic_Logging_Service</application>"> + <!ENTITY seealso "&man_tao_orb_options;, &man_notify_logging_service;, &man_event_logging_service;, &man_rt_event_logging_service;, &man_naming_service;"> + <!ENTITY year "1999"> + <!ENTITY username "David Hanvey"> + <!ENTITY useremail "<email><d.hanvey@qub.ac.uk></email>"> +]> +<refentry> + <refmeta> + <refentrytitle>BASIC_LOGGING_SERVICE</refentrytitle> + <manvolnum>1</manvolnum> + </refmeta> + <refnamediv> + <refname>&applname;</refname> + <refpurpose>TAO Basic Telecom Log Service</refpurpose> + </refnamediv> + <refsynopsisdiv> + <title>SYNOPSIS</title> + <cmdsynopsis> + <command>&applname;</command> + <group><arg>-ORBoptions</arg></group> + </cmdsynopsis> + </refsynopsisdiv> + <refsect1> + <title>DESCRIPTION</title> + <para> + &applname; is an event-unaware implementation of the Telecom Log Service. + </para> + <para> + The Telecom Log Service specification may be found on the OMG + website at <ulink + url="http://www.omg.org/cgi-bin/doc?telecom/99-05-01"></ulink>. + </para> + <para> + &applname; requires a running &Naming_Service; and registers with + it as `BasicLogFactory'. + </para> + </refsect1> + <refsect1> + <title>OPTIONS</title> + <para> + The program follows the usual TAO ORB command line syntax. See + &man_tao_orb_options;. + </para> + </refsect1> + <refsect1> + <title>BUGS</title> + <para> + Currently all Logs records are stored in memory. + </para> + </refsect1> + <refsect1> + <title>SEE ALSO</title> + <para>&seealso;</para> + </refsect1> + <refsect1> + <title>AUTHOR</title> + <para>&username; &useremail;</para> + </refsect1> +</refentry> diff --git a/ACE/debianbuild/Event_Logging_Service.sgml b/ACE/debianbuild/Event_Logging_Service.sgml new file mode 100644 index 00000000000..8980166a883 --- /dev/null +++ b/ACE/debianbuild/Event_Logging_Service.sgml @@ -0,0 +1,70 @@ +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [ + <!ENTITY applname "Event_Logging_Service"> + <!ENTITY revision "$Revision$"> + <!ENTITY man_tao_orb_options "<citerefentry><refentrytitle>TAO_ORB_Options</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_event_service "<citerefentry><refentrytitle>Event_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_basic_logging_service "<citerefentry><refentrytitle>Basic_Logging_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_notify_logging_service "<citerefentry><refentrytitle>Notify_Logging_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_rt_event_logging_service "<citerefentry><refentrytitle>RTEvent_Logging_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_naming_service "<citerefentry><refentrytitle>Naming_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY Naming_Service "<application>Naming_Service</application>"> + <!ENTITY Event_Logging_Service "<application>Event_Logging_Service</application>"> + <!ENTITY seealso "&man_tao_orb_options;, &man_event_service;, &man_basic_logging_service;, &man_notify_logging_service;, &man_rt_event_logging_service;, &man_naming_service;"> + <!ENTITY year "1999"> + <!ENTITY username "David Hanvey"> + <!ENTITY useremail "<email><d.hanvey@qub.ac.uk></email>"> +]> +<refentry> + <refmeta> + <refentrytitle>EVENT_LOGGING_SERVICE</refentrytitle> + <manvolnum>1</manvolnum> + </refmeta> + <refnamediv> + <refname>&applname;</refname> + <refpurpose>TAO Event Telecom Log Service</refpurpose> + </refnamediv> + <refsynopsisdiv> + <title>SYNOPSIS</title> + <cmdsynopsis> + <command>&applname;</command> + <group><arg>-ORBoptions</arg></group> + </cmdsynopsis> + </refsynopsisdiv> + <refsect1> + <title>DESCRIPTION</title> + <para> + &applname; is an implementation of the Telecom Log Service that + integrates with the Event Service. + </para> + <para> + The Telecom Log Service specification may be found on the OMG + website at <ulink + url="http://www.omg.org/cgi-bin/doc?telecom/99-05-01"></ulink>. + </para> + <para> + &applname; requires a running &Naming_Service; and registers with + it as `EventLogFactory'. + </para> + </refsect1> + <refsect1> + <title>OPTIONS</title> + <para> + The program follows the usual TAO ORB command line syntax. See + &man_tao_orb_options;. + </para> + </refsect1> + <refsect1> + <title>BUGS</title> + <para> + Currently all Logs records are stored in memory. + </para> + </refsect1> + <refsect1> + <title>SEE ALSO</title> + <para>&seealso;</para> + </refsect1> + <refsect1> + <title>AUTHOR</title> + <para>&username; &useremail;</para> + </refsect1> +</refentry> diff --git a/ACE/debianbuild/Notify_Logging_Service.sgml b/ACE/debianbuild/Notify_Logging_Service.sgml new file mode 100644 index 00000000000..ec874c8c8a4 --- /dev/null +++ b/ACE/debianbuild/Notify_Logging_Service.sgml @@ -0,0 +1,70 @@ +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [ + <!ENTITY applname "Notify_Logging_Service"> + <!ENTITY revision "$Revision$"> + <!ENTITY man_tao_orb_options "<citerefentry><refentrytitle>TAO_ORB_Options</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_notify_service "<citerefentry><refentrytitle>Notify_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_basic_logging_service "<citerefentry><refentrytitle>Basic_Logging_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_event_logging_service "<citerefentry><refentrytitle>Event_Logging_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_rt_event_logging_service "<citerefentry><refentrytitle>RTEvent_Logging_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_naming_service "<citerefentry><refentrytitle>Naming_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY Naming_Service "<application>Naming_Service</application>"> + <!ENTITY Notify_Logging_Service "<application>Notify_Logging_Service</application>"> + <!ENTITY seealso "&man_tao_orb_options;, &man_notify_service;, &man_basic_logging_service;, &man_event_logging_service;, &man_rt_event_logging_service;, &man_naming_service;"> + <!ENTITY year "1999"> + <!ENTITY username "David Hanvey"> + <!ENTITY useremail "<email><d.hanvey@qub.ac.uk></email>"> +]> +<refentry> + <refmeta> + <refentrytitle>NOTIFY_LOGGING_SERVICE</refentrytitle> + <manvolnum>1</manvolnum> + </refmeta> + <refnamediv> + <refname>&applname;</refname> + <refpurpose>TAO Notify Telecom Log Service</refpurpose> + </refnamediv> + <refsynopsisdiv> + <title>SYNOPSIS</title> + <cmdsynopsis> + <command>&applname;</command> + <group><arg>-ORBoptions</arg></group> + </cmdsynopsis> + </refsynopsisdiv> + <refsect1> + <title>DESCRIPTION</title> + <para> + &applname; is an implementation of the Telecom Log Service that + integrates with the Notification Service. + </para> + <para> + The Telecom Log Service specification may be found on the OMG + website at <ulink + url="http://www.omg.org/cgi-bin/doc?telecom/99-05-01"></ulink>. + </para> + <para> + &applname; requires a running &Naming_Service; and registers with + it as `NotifyLogFactory'. + </para> + </refsect1> + <refsect1> + <title>OPTIONS</title> + <para> + The program follows the usual TAO ORB command line syntax. See + &man_tao_orb_options;. + </para> + </refsect1> + <refsect1> + <title>BUGS</title> + <para> + Currently all Logs records are stored in memory. + </para> + </refsect1> + <refsect1> + <title>SEE ALSO</title> + <para>&seealso;</para> + </refsect1> + <refsect1> + <title>AUTHOR</title> + <para>&username; &useremail;</para> + </refsect1> +</refentry> diff --git a/ACE/debianbuild/README.Debian b/ACE/debianbuild/README.Debian new file mode 100644 index 00000000000..46528c360d0 --- /dev/null +++ b/ACE/debianbuild/README.Debian @@ -0,0 +1,35 @@ +ACE for Debian +-------------- + + +== Environment variables == + +If the software you are compiling requires $ACE_ROOT to be set (for +example, the tutorials), you may set it to /usr/share/ace. For bash, +the command to do this is + + export ACE_ROOT=/usr/share/ace + + +Likewise, for TAO: + + export TAO_ROOT=${ACE_ROOT}/TAO + + +== Compiling examples == + +To compile ACE or TAO examples (in libace-doc and libtao-orbsvcs-doc), you'll +need: + 1. to define ACE_ROOT and TAO_ROOT as explained above. + 2. to install mpc-ace package if needed. + 3. to copy and uncompress the example you want to test, e.g.: + + cp /usr/share/doc/libtao-orbsvcs-doc/examples/CosEC $HOME/ex1 + find $HOME/ex1 -type f -name '*.gz' | xargs gunzip + + 4. to regenerate the GNUmakefiles for this new location: + + cd $HOME/ex1 + mwc-ace -recurse -value_project install=. -value_project libout=. + + 5. now you can compile your example. diff --git a/ACE/debianbuild/RTEvent_Logging_Service.sgml b/ACE/debianbuild/RTEvent_Logging_Service.sgml new file mode 100644 index 00000000000..3bb123c89e6 --- /dev/null +++ b/ACE/debianbuild/RTEvent_Logging_Service.sgml @@ -0,0 +1,70 @@ +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [ + <!ENTITY applname "RTEvent_Logging_Service"> + <!ENTITY revision "$Revision$"> + <!ENTITY man_tao_orb_options "<citerefentry><refentrytitle>TAO_ORB_Options</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_event_service "<citerefentry><refentrytitle>Event_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_basic_logging_service "<citerefentry><refentrytitle>Basic_Logging_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_notify_logging_service "<citerefentry><refentrytitle>Notify_Logging_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_event_logging_service "<citerefentry><refentrytitle>Event_Logging_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY man_naming_service "<citerefentry><refentrytitle>Naming_Service</refentrytitle><manvolnum>1</manvolnum></citerefentry>"> + <!ENTITY Naming_Service "<application>Naming_Service</application>"> + <!ENTITY RTEvent_Logging_Service "<application>RTEvent_Logging_Service</application>"> + <!ENTITY seealso "&man_tao_orb_options;, &man_event_service;, &man_basic_logging_service;, &man_notify_logging_service;, &man_event_logging_service;, &man_naming_service;"> + <!ENTITY year "1999"> + <!ENTITY username "David Hanvey"> + <!ENTITY useremail "<email><d.hanvey@qub.ac.uk></email>"> +]> +<refentry> + <refmeta> + <refentrytitle>RTEVENT_LOGGING_SERVICE</refentrytitle> + <manvolnum>1</manvolnum> + </refmeta> + <refnamediv> + <refname>&applname;</refname> + <refpurpose>TAO RTEvent Telecom Log Service</refpurpose> + </refnamediv> + <refsynopsisdiv> + <title>SYNOPSIS</title> + <cmdsynopsis> + <command>&applname;</command> + <group><arg>-ORBoptions</arg></group> + </cmdsynopsis> + </refsynopsisdiv> + <refsect1> + <title>DESCRIPTION</title> + <para> + &applname; is an implementation of the Telecom Log Service that + integrates with the RTEvent Service. + </para> + <para> + The Telecom Log Service specification may be found on the OMG + website at <ulink + url="http://www.omg.org/cgi-bin/doc?telecom/99-05-01"></ulink>. + </para> + <para> + &applname; requires a running &Naming_Service; and registers with + it as `RTEventLogFactory'. + </para> + </refsect1> + <refsect1> + <title>OPTIONS</title> + <para> + The program follows the usual TAO ORB command line syntax. See + &man_tao_orb_options;. + </para> + </refsect1> + <refsect1> + <title>BUGS</title> + <para> + Currently all Logs records are stored in memory. + </para> + </refsect1> + <refsect1> + <title>SEE ALSO</title> + <para>&seealso;</para> + </refsect1> + <refsect1> + <title>AUTHOR</title> + <para>&username; &useremail;</para> + </refsect1> +</refentry> diff --git a/ACE/debianbuild/TAO_ORB_Options.sgml b/ACE/debianbuild/TAO_ORB_Options.sgml new file mode 100644 index 00000000000..e31fbefd50a --- /dev/null +++ b/ACE/debianbuild/TAO_ORB_Options.sgml @@ -0,0 +1,518 @@ +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [ + <!ENTITY applname "TAO_ORB_Options"> + <!ENTITY revision "$Revision$"> + <!ENTITY progname "tao_program"> + <!ENTITY year "1999"> + <!ENTITY username "Douglas C. Schmidt"> + <!ENTITY useremail "<email><schmidt@cs.wustl.edu></email>"> +]> +<refentry> + <refmeta> + <refentrytitle>TAO_ORB_OPTIONS</refentrytitle> + <manvolnum>1</manvolnum> + </refmeta> + <refnamediv> + <refname>&applname;</refname> + <refpurpose>Common options for programs that use TAO</refpurpose> + </refnamediv> + <refsynopsisdiv> + <title>SYNOPSIS</title> + <cmdsynopsis> + <command>&progname;</command> + <arg>ORB_options</arg> + <arg>program_options</arg> + </cmdsynopsis> + </refsynopsisdiv> + <refsect1> + <title>DESCRIPTION</title> + <para> + All programs relying on TAO understand the same set of + parameters: the <emphasis>-ORB</emphasis> options that affect + the ORB behaviour. + </para> + <para> + This manual page describe these parameters. Please note that the + ORB behaviour can also be altered using a + <filename>svc.conf</filename>. See TAO's documentation for help + on that topic. + </para> + </refsect1> + <refsect1> + <title>OPTIONS</title> + <variablelist> + <varlistentry> + <term><parameter>-ORBSvcConf</parameter> <replaceable>configfilename</replaceable></term> + <listitem> + <para> + Specifies the name of the file used to read service + configuration directives via the Service Configurator + framework. By default, a service configurator-based + application will look for a file named + <filename>svc.conf</filename> in the current directory. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBSvcConfDirective</parameter> <replaceable>directivestring</replaceable></term> + <listitem> + <para> + Specifies a service configuration directive, which is + passed to the Service Configurator. You can pass multiple + of these options on the same command-line. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBDebug</parameter></term> + <listitem> + <para> + Instructs the ORB to print debugging messages from the + service configurator framework. This option does not have + a value but is used as a toggle to enable or disable + debugging messages. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBDebugLevel</parameter> <replaceable>level</replaceable></term> + <listitem> + <para> + Control the level of debugging in the ORB. Higher numbers + generate more output (try 10). The default value of this + option is 0. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBVerboseLogging {0,1,2}</parameter></term> + <listitem> + <para> + Controls the amount of status data printed on each line of + the debug log. Higher numbers generate more output. The + default value of this option is <parameter>0</parameter>. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBLogFile</parameter> <replaceable>logfilename</replaceable></term> + <listitem> + <para> + Causes all <function>ACE_DEBUG</function> and + <function>ACE_ERROR</function> output to be redirected to + the designated <replaceable>filename</replaceable>. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBObjRefStyle {IOR,URL}</parameter></term> + <listitem> + <para> + Specifies the user-visible style of object references. The + <parameter>IOR</parameter> style (default) is the conventional + CORBA object reference, whereas the <parameter>URL</parameter> + style looks more like a URL. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBCDRTradeoff</parameter> <replaceable>maxsize</replaceable></term> + <listitem> + <para> + Control the strategy to tradeoff between copy vs. no copy + marshaling of octet sequences. If an octet sequence is + smaller than <replaceable>maxsize</replaceable> (which + defaults to + <constant>ACE_DEFAULT_CDR_MEMORY_TRADEOFF</constant>) -- + and the current message block contains enough space for it + -- the octet sequence is copied instead of appended to the + CDR stream. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBCollocation {global,per-orb,no}</parameter></term> + <listitem> + <para> + Specifies the use of collocation object optimization. If + <parameter>global</parameter> is specified (default), objects + in the same process will be treated as collocated. If + <parameter>per-orb</parameter> is specified, only objects in + the same ORB are treated as collocated. When + <parameter>no</parameter> is specified, no objects are + treated as collocated. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBCollocationStrategy {thru_poa,direct}</parameter></term> + <listitem> + <para> + Specifies what type of collocated object to use. If the + <parameter>thru_poa</parameter> (default) strategy is used, + TAO uses the collocation object implementation that + respects POA's current state and policies. When using the + <parameter>direct</parameter> strategy, method invocations + on collocated objects become direct calls to servant + without checking POA's status, which can increase + performance. If you use the + <parameter>direct</parameter> strategy, your interfaces must + be compiled with the <parameter>-Gd</parameter> IDL compiler option. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBNodelay {0,1}</parameter></term> + <listitem> + <para> + Enable or disable the <constant>TCP_NODELAY</constant> option + (Nagle's algorithm). By default, + <constant>TCP_NODELAY</constant> is enabled. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBRcvSock</parameter> <replaceable>recv_size</replaceable></term> + <listitem> + <para> + Specify the size of the socket receive buffer as a + positive, non-zero integer. If not specified, the + <constant>ACE_DEFAULT_MAX_SOCKET_BUFSIZ</constant> default + is used. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBSndSock</parameter> <replaceable>snd_size</replaceable></term> + <listitem> + <para> + Specify the size of the socket send buffer as a positive, + non-zero integer. If not specified, the + <constant>ACE_DEFAULT_MAX_SOCKET_BUFSIZ</constant> default + is used. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBStdProfileComponents {0,1}</parameter></term> + <listitem> + <para> + If <parameter>0</parameter> then the ORB does not generate + the OMG standardized profile components, such as the ORB + type and code sets. Notice that the presence of this + components is optional in GIOP 1.1 The default value is + controlled by a compile-time flag (check + <filename>orbconf.h</filename>). + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBSingleReadOptimization {0,1}</parameter></term> + <listitem> + <para> + This option controls whether TAO's ``single read + optimization'' is used when receiving requests. If this + option is disabled (<parameter>0</parameter>), the ORB will + do two reads to read a request: one reads the request + header and the other reads the request payload. If this + option is enabled (<parameter>1</parameter>), the ORB will + do a read of size <constant>TAO_MAXBUFSIZE</constant>, + hoping to read the entire request. If more than one + request is read they will be queued up for processing + later. + </para> + <para> + This option defaults to <parameter>1</parameter> because it + can provide better performance. However, in the case of + RT-CORBA, this option should be set to + <parameter>0</parameter>. Consider the following scenario: + <itemizedlist> + <listitem> + <para>two requests are read from one socket,</para> + </listitem> + <listitem> + <para>the additional request is queued, and</para> + </listitem> + <listitem> + <para>the ORB uses its Reactor's notification + mechanism to wake up the follower threads. </para> + </listitem> + </itemizedlist> + </para> + <para> + If at the same time, however, new requests arrive on + others sockets of higher priority the lower priority + queued message will be processed before the newly arrived + higher priority request since Reactor notifications are + given preferences over normal I/O, thereby causing + priority inversion. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBDisableRTCollocation {0,1}</parameter></term> + <listitem> + <para> + This option controls whether the application wants to use + or discard RT collocation decisions made by the RT ORB. A + value of <parameter>1</parameter> disables RT collocation + decisions and falls back on the default collocation + decisions implemented in the default ORB. This is very + useful for applications using the RT ORB and doesn't want + to use the RT collocation decisions but fallback on the + default decisions for better performance. The default + value is <parameter>0</parameter>. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBDefaultInitRef</parameter> <replaceable>ior_prefix</replaceable></term> + <listitem> + <para> + This argument allows resolution of initial references not + explicitly specified with + <parameter>-ORBInitRef</parameter>. It requires a URL prefix + that, after appending a slash `/' (`|' for the UIOP + pluggable protocol) and a simple object key, forms a new + URL to identify an initial object reference. The URL + prefix format currently supported is based on the standard + corbaloc mechanism in the CORBA Interoperable Naming + Service. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBDottedDecimalAddresses {0,1}</parameter></term> + <listitem> + <para> + Use the dotted decimal notation for addresses. This option + can be used to workaround broken DNS implementations and + may also reduce the time spent resolving IP addresses. By + default, this option is disabled (<parameter>0</parameter>) + since domain names are the standard address notation for + IORs. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBEndpoint</parameter> <replaceable>endpoint</replaceable></term> + <listitem> + <para> + This option is similar to the + <parameter>-ORBListenEndPoints</parameter> option described + below. This option will be deprecated in later versions on + TAO since the CORBA specification now defines the + <parameter>-ORBListenEndpoints</parameter> option instead. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBListenEndpoints</parameter> <replaceable>endpoint</replaceable></term> + <listitem> + <para> + This option was introduced with the CORBA ORT (Object + Reference Template) specification. It instructs a server + ORB to listen for requests on the interface specified by + <replaceable>endpoint</replaceable>. TAO endpoints are + specified using a URL style format. An endpoint has the + form: `protocol://V.v@addr1,...,W.w@addrN' + where V.v and W.w are optional protocol versions for each + address. An example of an IIOP endpoint is: + `iiop://hostname:port' + </para> + <para> + Sets of endpoints may be specified using multiple + <parameter>-ORBEndpoint</parameter> options or by delimiting + endpoints with a semi-colon (`;'). For example, + + `-ORBEndpoint iiop://localhost:9999 -ORBEndpoint uiop:///tmp/mylocalsock -ORBEndpoint shmiop://10002' + + is equivalent to: + + `-ORBEndpoint 'iiop://localhost:9999;uiop:///tmp/mylocalsock;shmiop://10002'' + + Notice the single quotes (') in the latter option + specification. Single quotes are needed to prevent the + shell from interpreting text after the semi-colon as + another command to run. + + If an endpoint is specified without an addr such as the + following: + + `-ORBEndpoint uiop:// -ORBEndpoint shmiop://' + + then a default endpoint will be created for the specified + protocol. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBImplRepoServicePort</parameter> <replaceable>portspec</replaceable></term> + <listitem> + <para> + Specifies which port the Implementation Repository is + listening on for multicast requests. By default, the + <constant>TAO_DEFAULT_IMPLREPO_SERVER_REQUEST_PORT</constant> (10018) is used. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBInitRef</parameter> <replaceable>ObjectId=IOR</replaceable></term> + <listitem> + <para> + Allows specification of an arbitrary object reference for an + initial service. The IOR could be in any one of the following + formats: OMG IOR, URL, corbaloc (including uioploc) or file. + corbaloc is a multiple end-point IOR understood by + <function>ORB::string_to_object()</function> and used as a + boot-strapping mechanism by the + <function>ORB::resolve_initial_references()</function>. The + mappings specified through this argument override the ORB + install-time defaults. + The file://pathname interprets the contents of the pathname file as + an object reference in any of the above formats. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBMulticastDiscoveryEndpoint</parameter> <replaceable>endpoint</replaceable></term> + <listitem> + <para> + Specifies the endpoint that should be used for locating the + Naming Service through multicast. + <replaceable>endpoint</replaceable> is of the form + ip-number:port-number (e.g., "tango.cs.wustl.edu:1234" or + "128.252.166.57:1234"). If there is no `:' in the + <replaceable>endpoint</replaceable> it is assumed to be a port + number, with the IP address being <constant>INADDR_ANY</constant>. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBNameServicePort</parameter> <replaceable>portspec</replaceable></term> + <listitem> + <para> + Specifies which port the Naming Service is listening on for multicast + requests. By default, the + <constant>TAO_DEFAULT_NAME_SERVICE_REQUEST_PORT</constant> (10013) + value is used. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBTradingServicePort</parameter> <replaceable>portspec</replaceable></term> + <listitem> + <para> + Specifies to which port the Trading Service is listening on for + multicast requests. By default, the + <constant>TAO_DEFAULT_TRADING_SERVICE_REQUEST_PORT</constant> (10016) + value is used. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBUseIMR {0,1}</parameter></term> + <listitem> + <para> + This argument specifies that for POAs with the PERSISTENT policy, + that the TAO Implementation Repository should be used for + notification of startup and shutdown and object references should + be changed to use the Implementation Repository also. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBId</parameter> <replaceable>orb_name</replaceable></term> + <listitem> + <para> + This option allows the name of an ORB to be set to + <replaceable>orb_name</replaceable>. The ORBId will be passed to the + <function>ORB_init()</function> method to differentiate coexisting + ORBs (when there are more than one ORBs). + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBServerId</parameter> <replaceable>server_id</replaceable></term> + <listitem> + <para> + This option allows setting a name/id to a server to uniquely + identify a server to TAO's Implementation Repository. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>-ORBDaemon</parameter></term> + <listitem> + <para> + Specifies that the ORB should daemonize itself, i.e., run as a + background process. This option is only meaningful on OS + platforms that support daemonization. + </para> + </listitem> + </varlistentry> + </variablelist> + </refsect1> + <refsect1> + <title>ENVIRONMENT VARIABLES</title> + <para> + Environment variables have a limited use in TAO ORB + configuration. The currently supported environment variables are + listed below. They are used to specify the IOR and port numbers + for three of TAO's ORB services. + </para> + + <variablelist> + <varlistentry> + <term><parameter>NameServicePort</parameter></term> + <listitem> + <para> + Specifies which port the Naming Service is listening on + for multicast requests. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>TradingServicePort</parameter></term> + <listitem> + <para> + Specifies which port the Trading Service is listening on + for multicast requests. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>ImplRepoServicePort</parameter></term> + <listitem> + <para> + Specifies which port the Implementation Repository is + listening on for multicast requests. + </para> + </listitem> + </varlistentry> + </variablelist> + + <para> + In addition to being able to define the port where these known + services are listening for multicast requests, as above, it is + possible to set an environment variable that specifies the IOR + of any named service. For example + NameServiceIOR=<replaceable>which</replaceable>, + TradingServiceIOR=<replaceable>which</replaceable>, + ImplRepoServiceIOR=<replaceable>which</replaceable>, + MyServiceIOR=<replaceable>which</replaceable>. This will have a + similar effect to defining an <parameter>-ORBInitRef</parameter> + value on the command line (see above). Any value set as a + command line <parameter>-ORBInitRef</parameter> option will + override any value set as an environment variable for the same + service name. + + In general, setting environment variables is not particularly + portable or convenient, which is why users can also set these + options via command-line options. + </para> + </refsect1> + <refsect1> + <title>AUTHOR</title> + <para>&username; &useremail;</para> + </refsect1> +</refentry> diff --git a/ACE/debianbuild/TODO b/ACE/debianbuild/TODO new file mode 100644 index 00000000000..721de639197 --- /dev/null +++ b/ACE/debianbuild/TODO @@ -0,0 +1,24 @@ += Misc = + * default tao_idl lookup path? + * put IDL in /usr/share/idl + * current IDL should be in orvsvcs/orbsvcs + * see current bugs: + o package netsvcs library + o package websvcs library? + * rewrite the patch to load TAO libraries by SONAME and RFC it + * move ACE_ROOT from /usr/share/ace to /usr/lib/ace? + * hide .real programs in /usr/lib/ace? + * make all TAO programs start with tao_, and put distribution compatible + program in /usr/lib/tao + += MWC and MPC = + * they should define $ACE_ROOT and $TAO_ROOT if they're not + * some makefile are not regenerated (e.g. JAWS). Seems like a bug. + += autoconf support = + * some macros are missing (see rules) + += CIAO = + * to restore + * autoconf support + * cidlc diff --git a/ACE/debianbuild/changelog b/ACE/debianbuild/changelog new file mode 100644 index 00000000000..1249c97813a --- /dev/null +++ b/ACE/debianbuild/changelog @@ -0,0 +1,850 @@ +ace (5.6.6-1) experimental; urgency=low + + * New upstream release. + + -- Thomas Girard <thomas.g.girard@free.fr> Fri, 03 Oct 2008 21:57:29 +0000 + +ace (5.6.3-5) unstable; urgency=low + + * Do not ship MPC config files in both mpc-ace and libace-dev packages; + they're meant to be only in mpc-ace. Make mpc-ace Replaces: the bogus + previous upload. Closes: #484718. + * Bump Standards-Version: to 3.8.0. + + -- Thomas Girard <thomas.g.girard@free.fr> Fri, 13 Jun 2008 21:52:28 +0000 + +ace (5.6.3-4) unstable; urgency=low + + * Add the following missing programs to libace-dev: + o $ACE_ROOT/bin/generate_export_file.pl + o $ACE_ROOT/bin/split-cpp + o $ACE_ROOT/bin/g++dep + o $ACE_ROOT/bin/add_rel_link.sh + * Move DependencyGenerator from mpc-ace to libace-dev. + * New patch, 22-remove-Ge-doc.dpatch, to remove documentation for + tao_idl -Ge flag that no longer works. Thanks to Pascal Giard for + reporting this. + * Remove PACKAGE_* definitions from /usr/include/ace/config.h. Thanks to + Pascal Giard for reporting this. + * Remove pre-etch Conflicts: and Replaces: information. + * Add missing headers found with cmp-installation.sh. Closes: #481088. + + -- Thomas Girard <thomas.g.girard@free.fr> Sat, 24 May 2008 15:47:01 +0000 + +ace (5.6.3-3) unstable; urgency=low + + * Pass full path to fox-config-1.6 instead of trying to detect fox-config + since fox-config is an alternative. Should fix multiple FTBFS. + * Enable IPv6 again. Disabling it was a mistake: it does work. But on an + IPv4 only host one need to specify the end-point to use, e.g. : + Naming_Service -ORBEndPoint iiop://localhost:1234 + + -- Thomas Girard <thomas.g.girard@free.fr> Thu, 24 Apr 2008 18:27:07 +0000 + +ace (5.6.3-2) unstable; urgency=low + + * Add missing libfox-1.6-dev build dependency. Thanks to Bastian Blank for + the report. Closes: #476822. + * Build depend on libqt4-dev (>= 4.4~rc1-4) to fix FTBFS. Thanks to + Martin Zobel-Helas for the report and to Sune Vuorela for the fix. + Closes: #476505. + * Add platform_macros.GNU.in and have autotools handle it so that it's + possible to ship rules.*.GNU. Closes: #469843, #469845. + * Remove doxygen-generated files we don't need. + * (Build-)Depend on tk-dev instead of tk8.4-dev. + * Rework debian/patches/05-autoconf-fox.dpatch not to link against too + many libs. + * Restore doxygen build-dependency. + + -- Thomas Girard <thomas.g.girard@free.fr> Tue, 22 Apr 2008 18:23:46 +0000 + +ace (5.6.3-1) unstable; urgency=low + + * New upstream release: + o missing os_include/os_byteswap.h is included. Closes: #469844. + * Upload to unstable. + * New packages: libace-foxreactor and libtao-foxresource, integrating + with the FOX toolkit. + * Build doxygen again. + * Rewrite debian/copyright, following proposal from: + http://wiki.debian.org/Proposals/CopyrightFormat + * Add a watch file. + + -- Thomas Girard <thomas.g.girard@free.fr> Sat, 12 Apr 2008 17:10:14 +0000 + +ace (5.6.2-1) experimental; urgency=low + + * New upstream release. + * Generate .am files instead of patching them; hence drop: + o patches/02-tao-sonames-release-am.dpatch + o tao-sonames-release-am.sh + * Fix DEB_BUILD_OPTIONS=noopt. + * Add zlib1g-dev and libzzip-dev build dependencies. + * Enable symbol visibility. + * Manually add missing some autoconf tests to reduce differences against + regular ACE build method. + * Do not generate doxygen; it fails now. + + -- Thomas Girard <thomas.g.girard@free.fr> Sun, 06 Jan 2008 21:05:37 +0100 + +ace (5.5.9-1) experimental; urgency=low + + * New upstream release. We now use the -src.tar.bz2 tarball, hence: + o generate autotools stuff at compile time + o huge patches/06-bootstrap is dropped + * Fix broken libtao-tkresource package. + * Drop no longer needed patches: + o 03-compile-lifecycle + o 04-compile-ftrt + o 07-ace-tao-ssliop-refcount + * New patches: + o 02-qt4 to switch to Qt4 + o 02-fltk-no-gl to avoid linking with libfltk_gl + o 03-g++-new-throws to prevent autoconfiguration from eating all + memory testing whether std::bad_alloc is thrown + * Disable patch 20-check-_REENTRANT; it's not needed when using autotools + method. Closes: #420216. + * Update patch 34-bts386713. + * Use debian/compat instead of DH_COMPAT. + * Drop no longer needed dpkg-dev tightened build-dependency since it is + available in etch. + * Generate doxygen documentation. Closes: #391011. + * Enable ACE reactor notification queue. + * Move $ACE_ROOT/bin/MakeProjectCreator/config files into libace-dev. + * Install $TAO_ROOT/MPC files into libtao-dev. + + -- Thomas Girard <thomas.g.girard@free.fr> Tue, 17 Jul 2007 22:50:36 +0200 + +ace (5.5.6-2) experimental; urgency=low + + * debian/control: fix broken Conflicts: fields. Package split for + libtao-orbsvcs happened in libtao-orbsvcs1.4.7c2a 5.4.7-11 and this should + not be changed. + + -- Thomas Girard <thomas.g.girard@free.fr> Fri, 23 Mar 2007 18:38:41 +0000 + +ace (5.5.6-1) experimental; urgency=low + + Thomas Girard: + * New upstream release. Closes: #381647. + * Switch to the autotools method. Consequences: + o CIAO packages are dropped for now + o static libraries are removed as well + o IPv6 is disabled again + * Drop obsolete patches and scripts. + * We no longer ship TAO_ORB_Options.1 in libtao-orbsvcs. + * debian/patches/01-change-tao-sonames.dpatch: enable TAO_VERSION_NAME + propagation from configure, and use it for TAO libraries. + * debian/patches/02-tao-sonames-release-am.dpatch: diff on Makefile.am + after application of the 01-change-tao-sonames patch. + * debian/patches/03-compile-lifecycle.dpatch: enables LifeCycle + compilation. + * debian/patches/04-compile-ftrt.dpatch: enables FTRT_EventService + compilation. + * debian/patches/07-ace-tao-ssliop-refcount.dpatch: fix ssliop reference + counting problem. + + Konstantinos Margaritis: + * changed URL in copyright to new one. + + -- Thomas Girard <thomas.g.girard@free.fr> Thu, 15 Mar 2007 22:12:29 +0000 + +ace (5.4.7-11) unstable; urgency=low + + * debian/control: package HTBP, the protocol over HTTP tunneling library. + * debian/control: split libace into libace + libace-ssl. + * debian/control: move binaries in their own tao-* packages. + * debian/patches/34-bts386713.dpatch: dlopen() TAO libraries using their + full name (Closes: #386713). + * debian/generate_pkgconfig.sh: generate .pc files (Closes: #367480). + + -- Thomas Girard <thomas.g.girard@free.fr> Sat, 23 Sep 2006 15:02:12 +0200 + +ace (5.4.7-10) unstable; urgency=low + + * debian/rules: fix and honor DEB_BUILD_OPTIONS. + * debian/libace-dev.install: drop QoS header files as QoS in not compiled + in. + * debian/*.install: fix empty wildcard expansion that produce errors when + DH_COMPAT is 5. + * debian/libtao-dev.install: do not distribute include files from TAO_IDL. + They are not needed and don't get installed when using the autotools + method. + * debian/rules: rename mwc.pl and mpc.pl to mwc-ace and mpc-ace. + * debian/ace-config*,debian/tao-config*: dropped. These files were no + longer installed. + * debian/libace-dev.install: don't install ace-config and tao-config + manpages either (Closes: #367478). + * debian/control: relax mpc-ace dependencies. This package now installs + without pulling any ACE library. Thanks to Alex Bodnaru for noticing. + * debian/control: simplify packages synopsis and descriptions. + * debian/control: drop xerces dependency (Closes: #378605). Xerces is + only needed by DAnCE, which is not packaged yet. + * debian/libace-dev.install: remove generate_export_file.pl for now. + * patches/31-gcc-4.1-fix.dpatch: add other type-punned fixes taken from + upstream. + * debian/mpc.sgml: new man page. + * debian/patches/32-bug1770-fix.dpatch,33-bug1805-fix.dpatch: backport + two patches for SSL wrappers. + + -- Thomas Girard <thomas.g.girard@free.fr> Thu, 20 Jul 2006 20:55:53 +0200 + +ace (5.4.7-9) unstable; urgency=low + + * debian/patches/28-bug2222-fix.dpatch, debian/patches/29-bug2262.dpatch: + backport upstream fixes. + * debian/patches/31-gcc-4.1-fix.dpatch: fix "dereferencing type-punned + pointers" gcc 4.1 warning. + * debian/patches/30-Env_Value-template-specialization-fix.dpatch: + backport template specialization fix (Closes: #358898). + * debian/patches/20-debian-compiler-definitions.dpatch: downgrade + optimization flag from `-O3' to `-O2'. + * debian/rules: add ${perl:Depends} for mpc-ace package. + * debian/control: make a new package, libciao-doc. + * debian/libtao-dev.install: add missing pkg-config file for ImR_Client + library. + + -- Thomas Girard <thomas.g.girard@free.fr> Wed, 29 Mar 2006 22:14:53 +0200 + +ace (5.4.7-8) unstable; urgency=low + + * debian/copy_template_sources.sh: add missing files to `libtao-dev' + package. Thanks to Arren and Bernhard Seibold for reporting this. + * debian/patches/23-PortableGroup-exceptions-propagation.dpatch, + debian/patches/24-collocated-oneway+SYNC_WITH_SERVER-fix.dpatch, + debian/patches/25-TypeCode-equivalent-fix.dpatch, + debian/patches/26-union-_default-fix.dpatch, + debian/patches/27-bug2225-fix.dpatch: backport various upstream + fixes. + * debian/control: tighten build dependency from `xlibs-dev' to + `libxt-dev'. (Closes: #346607). + + -- Thomas Girard <thomas.g.girard@free.fr> Fri, 13 Jan 2006 17:15:37 +0200 + +ace (5.4.7-7) unstable; urgency=low + + * debian/config/config.h: add IPv6 support. Thanks to David Hausheer + for the report and the fix. (Closes: #341988) + * debian/patches/23-TTY_IO-compilation-fix.dpatch: new patch to work + around `struct termios` platform-specific fields. (Closes: #342328). + * debian/patches/84-skip-DAnCE-compilation.dpatch: completely disable + DAnCE compilation, since we don't package it. (Closes: #336020). + * Really close fixed in NMU bugs (Closes: #324271, #339142). + + -- Konstantinos Margaritis <markos@debian.org> Mon, 19 Dec 2005 13:40:48 +0200 + +ace (5.4.7-6) unstable; urgency=low + + * debian/control: consolidate package descriptions. + * debian/patches/16-g++4-visibility-tweaks.dpatch: + Backport upstream tweaks for g++ 4 visibility feature and disable + visibility hiding for now. (Closes: #324271). + * debian/rules: g++ 4.0.2 was ICE'ing on #pragma once. This is no + longer true as of g++-4.0_4.0.2-4, so we can use g++4 again. For the + record, another possible fix was to #define ACE_LACKS_PRAGMA_ONCE in + `$ACE_ROOT/ace/config.h`. + * Add `c2a` suffix to all libs for libstdc++ allocator change. + (Closes: #339142). + + -- Thomas Girard <thomas.g.girard@free.fr> Fri, 18 Nov 2005 20:23:59 +0100 + +ace (5.4.7-5) unstable; urgency=low + + * Force gcc 3.4 for all arches, seems gcc 4.0 produces errors on all of + them. (Closes: #333981) + + -- Konstantinos Margaritis <markos@debian.org> Wed, 12 Oct 2005 03:26:14 +0300 + +ace (5.4.7-4) unstable; urgency=medium + + * Rebuilt package for the Qt C++ transition. (Closes: #327926). + * Also, gcc 4.0 is buggy in some arches, use g++-3.4 on them instead. + Update: Even on i386, cpp-4.0 produces Internal Compiler Errors(ICEs). For + this reason, cpp-3.4 will be used instead (but with gcc/g++ 4.0. + + -- Konstantinos Margaritis <markos@debian.org> Mon, 4 Oct 2005 03:21:20 +0300 + +ace (5.4.7-3) unstable; urgency=low + + * Fixed (another) missing build-dependency. (Closes: #323630) + (this is getting irritating :-) + + -- Konstantinos Margaritis <markos@debian.org> Thu, 18 Aug 2005 10:29:48 +0300 + +ace (5.4.7-2) unstable; urgency=low + + * Fixed missing build-dependency in the .dsc file. (Closes: #323181) + + -- Konstantinos Margaritis <markos@debian.org> Tue, 16 Aug 2005 01:09:09 +0300 + +ace (5.4.7-1) unstable; urgency=low + + * Thomas Girard <thomas.g.girard@free.fr> + - New upstream release. (Closes: #317488) + - Package names were changed to include the full library soname. + (Closes: #288161) + - debian/control: libtao-{xt,qt}reactor are now called + libtao-{xt,qt}resource. Also add libtao-{fl,tk}resource. + - debian/control: add new package libace-tmcast5.4.7. + * Konstantinos Margaritis + - Now use the .bz2 version of the original tarball to save space. + + -- Konstantinos Margaritis <markos@debian.org> Fri, 12 Aug 2005 12:45:13 +0300 + +ace (5.4.2.1.0-4) unstable; urgency=high + + * Thomas Girard <thomas.g.girard@free.fr> + - debian/control: + o libacexml-dev depends on libace-dev. + o libkokyu-dev depends on libace-dev. + o libtao-dev depends on libtao1.4. + o normalize Depends: and Build-Depends: sections. + - debian/ace-config.1 debian/tao-config.1: fix hyphenation problem + reported by lintian. + - debian/libciao-dev.install: add missing .idl and .pidl files. + (Closes: #307258) + + -- Thomas Girard <thomas.g.girard@free.fr> Mon, 2 May 2005 19:30:01 +0200 + +ace (5.4.2.1.0-3) unstable; urgency=high + + * Thomas Girard <thomas.g.girard@free.fr> + - debian/patches/84-mpc-honour-soversion.dpatch: new patch from + upstream to honour the `version' keyword for libraries. + - debian/patches/17-fix-tao-encode_value-memory-leak: new patch + from upstream to fix a potential memory leak. + - debian/mpc-ace.install: add depgen.pl. (Closes: #289157) + - debian/tao_idl: new script that automatically sets ACE_ROOT and + TAO_ROOT environment variables. (Closes: #289158) + - debian/rules: unbreak gperf-ace. (Closes: #294338) + - debian/remove_reactor_dups.sh: new script to ensure that duplicate + reactor header files get deleted. (Closes: #294660) + - debian/patches/21-always-inline.dpatch, debian/config.h: Always + define __ACE_INLINE__, and remove the inline option from the MPC + generated GNUmakefiles. Thanks to Marek Brudka for reporting this and + for providing the fix. (Closes: #290114) + - debian/patches/18-fix-trader-twiddle-operator.dpatch: backport + fix to correct operator ~ in trader constraints. + - debian/patches/19-fix-taoidl-fd-leak.dpatch: backport a fix to + close open file. + - debian/control: lib{ace,tao}qtreactor-dev packages depend on + libqt3-mt-dev. + - debian/libtao-orbsvcs1.4.install: + o Add FT_ReplicationManager. + o Add Fault_Detector and Fault_Notifier. + - debian/control: + o mpc-ace is in devel section. + o lib{ace,tao}-{fl,tk,qt,xt}reactor-dev are in libdevel section. + - debian/tao_ifr: new wrapper script that automatically sets ACE_ROOT + and TAO_ROOT environment variables. + - debian/libtao-orbsvcs1.4.manpages: add TAO_ORB_Options.1 manpage. + + -- Thomas Girard <thomas.g.girard@free.fr> Wed, 30 Mar 2005 23:24:40 +0200 + +ace (5.4.2.1.0-2) unstable; urgency=medium + + * Konstantinos Margaritis <markos@debian.org> + - Changed dependency of libfltk1-dev in libace-flreactor-dev to + libfltk1.1-dev (Closes: #289287) + - Added Uploaders field in control. + + -- Konstantinos Margaritis <markos@debian.org> Sat, 8 Jan 2005 22:39:05 +0200 + +ace (5.4.2.1.0-1) unstable; urgency=low + + * Thomas Girard <thomas.g.girard@free.fr> + - Much lintian cleaning. + - Integrate upstream MPC patch to honour `libout' and `install' keywords. + - Repackage FTRT_EventChannel. + - Bug 242881 was closed in the previous upload. (Closes: #242881) + - debian/control: libtao-dev should depend on libace-dev. + (Closes: #277052) + - debian/{Basic,Event,Notify,RTEvent}_Logging_Service.sgml: new man pages. + - debian/rules: add docbook-to-man calls. + * Raphael Bossek <bossekr@debian.org> + - debian/config/debian.features: MPC configuration for Debian GNU/Linux added + - debian/config/platform_macros.GNU: Removed due to introduction of + debian.features files. This file will be generated + - debian/rules: Uses dpatch. Simplified clean target by removing temporary + ACE_wrappers subdirectory. Install ace-config and tao-config scripts + with executable bit set (Closes: #278522, #278523) + - debian/control: Added new reactor packages. Removed depricated + suggestions on ace+tao-utilities. Added libssl-dev as recommendation for + libace-dev. Added suggestions for pkg-config + - Upgrade to latest version of TAO (Closes: #265238) + - debian/pkgconfig-ace, debian/pkgconfig-tao, debian/ace.pc.in, + debian/tao.pc.in: Support for pkg-config added + - debian/libace-dev.links: Added sym-link for /usr/share/ace/lib and + /usr/share/ace/bin/generate_export_file.pl + - debian/*.docs, debian/*.manpages: Added source directory ACE_wrappers as prefix + - debian/libace-dev.install: Added ACE_wrappers/bin/generate_export_file.pl + + -- Thomas Girard <thomas.g.girard@free.fr> Mon, 18 Oct 2004 13:35:56 +0200 + +ace (5.4.2.1-1) unstable; urgency=low + + * Thomas Girard <thomas.g.girard@free.fr> + - New upstream release. (Closes: #243062) + - Do not link against Xt libs. (Closes: #251477) + - As such, libace-dev does not need to depend on libxt-dev nor xlibs-dev + (Closes: #253226) + - Add MPC. + - Patch ACE_IOStream to support g++ 3.3. (Closes: #243473) + - Patch MPC to honour `libout' and `install' keywords in GNUmakefile + generation. See DOC Bug#1915. + - Backport a fix to NotifyLoggingService from CVS. + - Make %S work in ACE_DEBUG. + * Konstantinos Margaritis + - Fixed missed path for libACE.so.5.4.2 in dh_shlibdeps + - Fixed incorrect timestamp of original archive (1970 etc). + + -- Konstantinos Margaritis <markos@debian.org> Thu, 2 Sep 2004 23:04:56 +0200 + +ace (5.4.0.1-1.1) unstable; urgency=low + + * Fixed ACE_NDEBUG configuration of ACE. (Closes: #242881) + * Build-depends on libqt3-headers removed qt_reactor not set. + * System capabilities will be determined by including <unistd.h> in + <ace/config.h>. + + -- Raphael Bossek <bossekr@debian.org> Thu, 8 Apr 2004 15:37:24 +0200 + +ace (5.4.0.1-1) unstable; urgency=low + + * KM: release to fix the timestamp errors in the upstream source. + + -- Konstantinos Margaritis <markos@debian.org> Sun, 29 Feb 2004 21:11:14 +0200 + +ace (5.4-3) unstable; urgency=low + + * KM: backported fixes from CVS to fix 64-bit pointer to int casting in + orbsvcs/RTCosScheduling files. This is to fix FTBFS bug in 64-bit archs, + until 5.4.1 is released (mid-march). + Closes: #233890 + + -- Konstantinos Margaritis <markos@debian.org> Wed, 28 Feb 2004 15:53:30 +0200 + +ace (5.4-2) unstable; urgency=low + + * KM: Includes patch from Raphael Bossek <bossekr@debian.org> to handle + bug in tao_idl to use ACE_GPERF instead of plain gperf. + * BN: libace-dev now suggests libtao-dev instead of the non-existing tao + package. (Closes: #233488) + * BN: prepended a "-" to the chmod commands in debian/rules so that they + don't fail if used repeatedly. + + -- Brian Nelson <pyro@debian.org> Wed, 18 Feb 2004 02:23:07 -0800 + +ace (5.4-1) unstable; urgency=low + + * KM: new upstream release + * KM: Now builds also ACE+SSL library, Kokyu and CIAO libs. + * KM: Due to the orbsvcs executables we can't have 2 different versions + of the libtao-orbsvcs1.x package, so we have to replace. This doesn't apply + for libace5.x, libtao1.x or the rest of the libs. + * Closes: #229134 (fixed dependencies). + + -- Konstantinos Margaritis <markos@debian.org> Sun, 25 Jan 2004 13:33:20 +0200 + +ace (5.3.1-8) unstable; urgency=low + + * KM: Included the .pidl files in libtao-dev package. These + were needed by some .idl files. (Closes: #213568) + + -- Konstantinos Margaritis <markos@debian.org> Wed, 29 Oct 2003 23:46:01 +0200 + +ace (5.3.1-7) unstable; urgency=low + + * BN: Changed maintainer to "Debian ACE+TAO maintainers + <pkg-ace-devel@lists.alioth.debian.org>" and moved myself to the + Uploaders. + * KM: Fixed conflicting file "/usr/bin/catior" by changing the name to + tao-catior in libtao-dev. (Closes: #214421) + + -- Brian Nelson <pyro@debian.org> Thu, 9 Oct 2003 15:05:12 -0700 + +ace (5.3.1-6) unstable; urgency=low + + * Added the ORB services .idl files that were left out from the + libtao-orbsvcs-dev package. (Closes: #213568) + + -- Konstantinos Margaritis <markos@debian.org> Sun, 5 Oct 2003 12:31:21 +0300 + +ace (5.3.1-5) unstable; urgency=low + + * Regenerated .diff.gz so that it is no longer broken (Closes: #211501) + * Back out Debian-specific change in the way that CosNamingC.h is + included in TAO/utils/nslist/nslist.cpp. I'm not sure why this was + changed in the first place, but it broke the build. (Closes: #213611) + + -- Brian Nelson <pyro@debian.org> Wed, 1 Oct 2003 10:28:54 -0700 + +ace (5.3.1-4) unstable; urgency=low + + * Moved the manpages back to -dev packages to follow policy. + * Now mostly lintian clean. + * provided manpages for a few executables. + + -- Konstantinos Margaritis <markos@debian.org> Wed, 17 Sep 2003 11:43:55 +0300 + +ace (5.3.1-3) unstable; urgency=low + + * Updated to new standards version 3.6.1 + * Fixed the section of a couple of packages. + * Now the getrlimit, etc functions are always defined + as ints. g++ 3.x does not complain anymore (Closes: #104681). + + -- Konstantinos Margaritis <markos@debian.org> Tue, 16 Sep 2003 10:31:03 +0300 + +ace (5.3.1-2) unstable; urgency=low + + * Now the following TAO packages are created: + libtao1.3.1, libtao-dev, libtao-doc, libtao-orbsvcs1.3.1, + libtao-orbsvcs-dev. + * Also included ACEXML library in two separate packages: + libacexml5.3.1, libacexml-dev. + * Full doxygen documentation not included due to size concerns. + (Closes: #108749). + * tao-config included in libtao-dev. (Closes: #159234). + * All -dev packages carry their respective examples in full and + uncompressed. (Closes: #52145, #76967). + * libACE.a is compiled with thread support enabled. (Closes: #126717). + dbbalancer now builds successfully with -static. + * Moved all manpages to respective -doc pagkaces. (Closes: #73044). + + -- Konstantinos Margaritis <markos@debian.org> Tue, 9 Sep 2003 10:41:14 +0300 + +ace (5.3.1-1) unstable; urgency=low + + * New upstream release + * New maintainers for the package, Brian Nelson <pyro@debian.org> and + Konstantinos Margaritis <markos@debian.org> (Closes #199768) + * Removed build-dependency on versioned g++ + * Bumped up standards version to 3.6.0 + * Dropped version string from -dev package name + * libace-dev: downgrade tao to suggests (where did tao go anyway?) + * Use debian/compat for debhelper versioning + * Use dh_install instead of dh_movefiles, and dh_link instead of manual + ln. The debian/rules file is a lot less hairy now. + * Reinstated a libace-doc package (Closes: #192338) + * Added symlinks to /usr/share/ace so that this directory can serve as + $ACE_ROOT. Added a corresponding note to the README.Debian + file. (Closes: #80329) + * Removed the /usr/lib/libACE.so.5 and libACE_RMCast.so.5 symlinks, and + made the package names match the sonames. The sonames now include the + full version string, so ACE libs of different versions from now on + should coexist nicely, even though upstream doesn't use a proper + versioning scheme. (Closes: #147741) + + -- Brian Nelson <pyro@debian.org> Fri, 15 Aug 2003 00:15:59 -0700 + +ace (5.2.4-1.2) unstable; urgency=low + + * fix to previous NMU + * (Closes: #190792) + + -- Konstantinos Margaritis <markos@debian.org> Sat, 26 Apr 2003 19:18:49 +0300 + +ace (5.2.4-1.1) unstable; urgency=low + + * gcc-3.2 transition, NMU patch by Andreas Metzler <ametzler@debian.org> + * (Closes: #188328) + + -- Konstantinos Margaritis <markos@debian.org> Fri, 11 Apr 2003 23:25:38 +0200 + +ace (5.2.4-1) unstable; urgency=low + + * New upstream. + * Incorporated below change from Goswin. (Closes: #159236) + + -- Ossama Othman <ossama@valinor.ece.uci.edu> Sun, 15 Sep 2002 14:14:06 -0700 + +ace (5.2.1-1.1) unstable; urgency=low + + * debian/control: libace5.2-dev recommends tao + * ace-config: export ACE_ROOT + make -f /usr/share/ace/ace-config.GNU + test for tao-confg + unset MAKEs env vars to prevent extranous output + * debian/rules: install platform macros in + $(ACE_PREFIX)/share/ace/include/makeinclude/ + + -- Goswin Brederlow <goswin.brederlow@student.uni-tuebingen.de> Mon, 02 Sep 2002 02:37:25 +0200 + +ace (5.2.1-1) unstable; urgency=low + + * New upstream. + * Pulled in updated g++ configuration header and Linux Makefile rules + for ACE. They allow implicit template instantiation to occur. + * Disabled support for the ACE_XT_Reactor. Most folks never use it. + + -- Ossama Othman <ossama@debian.org> Mon, 25 Feb 2002 13:15:25 -0800 + +ace (5.1.8-7) unstable; urgency=low + + * Really removed the flex/lex checks in configure.in. + + -- Ossama Othman <ossama@debian.org> Wed, 28 Nov 2001 15:30:59 -0800 + +ace (5.1.8-6) unstable; urgency=low + + * Added "libtool" to Build-Depend field, and run libtoolize in `rules' + file to pull in links to recent config.sub, config.guess and + ltmain.sh revisions. (Closes: #120141) + * Removed local autoconf test that checks if new() throws exception + on failure. The test caused build hosts to come to a crawl. g++ + does indeed throw an exception. + Just configure that explicitly. (Closes: #90731) + * Removed flex and yacc checks in configure.in. They aren't necessary + to build ACE. + * Closed bug related to gcc internal compiler error. (Closes: #85230) + * Removed unnecessary g++ dependency in control file. (Closes: #84405) + * Added missing xlibs-dev dependency to libace5.1-dev package. + + -- Ossama Othman <ossama@debian.org> Mon, 26 Nov 2001 16:53:33 -0800 + +ace (5.1.8-5.1) unstable; urgency=high + + * NMU + * Added the missing build dependencies on flex and xlibs-dev. + (closes: #101170) + + -- Adrian Bunk <bunk@fs.tum.de> Sat, 10 Nov 2001 01:17:53 +0100 + +ace (5.1.8-5) unstable; urgency=low + + * libace5.1 and libace5.1-dev now conflict with their corresponding ACE + 5.0 debian packages, since both sets of packages have files with the + same name. libace5.1-dev also conflicts with libace4.6-dev. (#74031) + * Added xlib6g-dev to the list of build dependencies. The X11 libraries + aren't strictly necessary to build ACE, but the Debian packages enable + ACE's XtReactor support. + * Updated `README.Debian'. The Debian ACE packages are no longer built + using experimental ACE Configuration Project distributions. They are + built using the upstream distribution's autoconf support (contributed + by the ACE Configuration Project). + + -- Ossama Othman <ossama@debian.org> Thu, 5 Oct 2000 17:35:56 -0700 + +ace (5.1.8-4) unstable; urgency=low + + * Updated configure script from new upstream since it detects the CDROM + and STREAMS ioctl conflict in current kernels and glibc 2.1.94. This + fixes a seg fault that would occur in ACE applications that use the + ACE_Reactor. + + -- Ossama Othman <ossama@debian.org> Wed, 4 Oct 2000 14:43:48 -0700 + +ace (5.1.8-3) unstable; urgency=low + + * Rebuilt against glibc 2.1.94 (pre-2.2). + + -- Ossama Othman <ossama@debian.org> Fri, 29 Sep 2000 12:40:39 -0700 + +ace (5.1.8-2) unstable; urgency=low + + * Added missing Build-Depends and Build-Depends-Indep fields to the + control file. (#70113) + * Corrected `debian/rules' so that it doesn't erase the installed + `config-all.h' header. + + -- Ossama Othman <ossama@debian.org> Sat, 23 Sep 2000 09:54:26 -0700 + +ace (5.1.8-1) unstable; urgency=low + + * New upstream release. + + -- Ossama Othman <ossama@debian.org> Fri, 25 Aug 2000 15:45:01 -0700 + +ace (5.0.7-4) frozen unstable; urgency=low + + * Rebuilt the packages so that they get installed in the unstable + distribution archive, in addition to the frozen one. (#58366) + + -- Ossama Othman <ossama@debian.org> Wed, 24 May 2000 15:15:21 -0700 + +ace (5.0.7-3) frozen; urgency=high + + * Updated libtool related files from latest libtool multi-language + branch snapshot. Regenerated the configure script. It now has the + appropriate deplibs regex. Apparently, there was a problem with M4 + quoting in the last package upload. (#63932) + * Explicitly enable C++ exception support. A fix to the configure + script caused this to be necessary since the configure script disables + exception handling by default. + * Updated `debian/rules' file to use debhelper v2 support. + * Updated download location in `debian/copyright'. + + -- Ossama Othman <ossama@debian.org> Fri, 19 May 2000 15:05:30 -0700 + +ace (5.0.7-2) frozen; urgency=low + + * Updated `acewindex.html' file so that it is no longer empty. (#50704) + * Updated `ACE_Log_Msg.3' man page so that important information is + included when it is generated. This patch was incorporated upstream. + (#51224) + * Replaced configure script and related files with current upstream + configure script. Patched OS.{h,i} with llseek/lseek64 related + upstream fixes. This should correct the lseek64 and llseek problems + encountered in the m68k port. (#50094, #51074) + * Updated ace-config.in with latest upstream since the previous one was + missing a "-lACE" in the library list. + * Fixed "--infodir" and "--mandir" configure script options in `rules' + file. They incorrectly used a the actual install prefix instead of + the debian package install prefix. This fixes a problem where the + gperf-ace documentation wasn't being registered doc-base. + + -- Ossama Othman <ossama@debian.org> Mon, 17 Jan 2000 18:39:18 -0800 + +ace (5.0.7-1) unstable; urgency=low + + * New upstream. + * Enabled C++ template repository during build. This will reduce + the size of the resulting binaries by about 20%. + * Updated copyright file. (updated distribution terms contain + suggestions contributed by Richard M. Stallman) + * FHS updates. + * Added versioned shlibs dependencies via "-V" option for dh_makeshlibs. + This is important since new versions of libACE are not always binary + compatible with previous versions. + * Updated libace5.0-dev to use package dh_installinfo to install + gperf-ace.info file. + * Minor update to ACE documentation index.html file. + * Added ACE man pages in HTML format. + + -- Ossama Othman <ossama@debian.org> Fri, 29 Oct 1999 21:13:10 -0500 + +ace (4.6.44-1) unstable; urgency=low + + * New upstream. + + -- Ossama Othman <ossama@debian.org> Tue, 13 Jul 1999 20:23:11 -0500 + +ace (4.6.42-1) unstable; urgency=low + + * New upstream. + + -- Ossama Othman <ossama@debian.org> Sat, 26 Jun 1999 15:46:16 -0500 + +ace (4.6.37-1) unstable; urgency=low + + * New upstream. + * Added doc-base support. + + -- Ossama Othman <ossama@debian.org> Tue, 27 Apr 1999 13:28:53 -0500 + +ace (4.6.31-2) unstable; urgency=low + + * Removed clone.1 man page since ACE clone utility isn't needed + for the Debian packages. + + -- Ossama Othman <ossama@debian.org> Mon, 22 Mar 1999 14:47:50 -0600 + +ace (4.6.31-1) unstable; urgency=low + + * New upstream beta. + * Added ACE PROBLEM-REPORT-FORM to each package. (#34455) + * Rebuilt against glibc 2.1. (#34573) + * Added check for struct siginfo_t in signal.h. Thanks to + Konstantinos Margaritis <kmargar@cc.uoa.gr> for pointing this + configuration bug out. (#34678) + + -- Ossama Othman <ossama@debian.org> Sun, 24 Jan 1999 15:49:04 -0500 + +ace (4.6.15-1) unstable; urgency=low + + * Updated to ACE release 4.6.15. + + -- Ossama Othman <ossama@debian.org> Sat, 16 Jan 1999 18:47:25 -0500 + +ace (4.6.13-1) unstable; urgency=low + + * Updated to ACE release 4.6.13. + + -- Ossama Othman <ossama@debian.org> Thu, 14 Jan 1999 19:54:41 -0500 + +ace (4.6.12-2) unstable; urgency=low + + * Forgot to change libace4.6-dev dependency from version 4.6.7 to 4.6.12. + + -- Ossama Othman <ossama@debian.org> Thu, 14 Jan 1999 02:47:13 -0500 + +ace (4.6.12-1) unstable; urgency=low + + * Updated to ACE release 4.6.12. + + -- Ossama Othman <ossama@debian.org> Thu, 14 Jan 1999 01:17:16 -0500 + +ace (4.6.7-1) unstable; urgency=low + + * Force libtool to link "-lpthread" into ACE's inter-library dependencies + since the configure script detects that the "-pthread" flag can be used + which make it unneccessary to explicitly link to "-lpthread." However, we + want the "-lpthread" dependency since not all users or programs use the + "-pthread" compiler flag. + * Fixed packaging bug where run-time library package tried to install/remove + the gperf-ace info file. + * Updated to ACE release 4.6.7. + + -- Ossama Othman <ossama@debian.org> Tue, 15 Dec 1998 16:29:10 -0500 + +ace (4.6.5-3) unstable; urgency=low + + * Enabled ACE debugging macros. + * Enabled ACE logging macros (LM_DEBUG and LM_INFO). + + -- Ossama Othman <ossama@debian.org> Tue, 8 Dec 1998 14:22:02 -0500 + +ace (4.6.5-2) unstable; urgency=low + + * Released ace-4.6.5-2 packages. + * gperf files (gperf, gperf.1 and gperf.info) will be installed as gperf-ace + to prevent conflicts with the existing Cygnus based gperf package. + * Corrected libACE compile list by removing template sources from the + libACE "SOURCES" make variable. + + -- Ossama Othman <ossama@debian.org> Thu, 3 Dec 1998 15:59:06 -0500 + +ace (4.6.5-1) unstable; urgency=low + + * Released ace-4.6.5-1 packages + + -- Ossama Othman <othman@astrosun.tn.cornell.edu> Tue, 1 Dec 1998 16:09:49 -0500 + +ace (4.6.4-2) unstable; urgency=low + + * Added libnsl to library check for t_accept() (not a Debian issue). + * Moved all pre-processor related lines to the first column of the M4 block + so that they will be in the first column of their respective test programs. + * Made definition of ACE_HAS_NONSTATIC_OBJECT_MANAGER a configure script + option since there was no working autoconf test for it. + + -- Ossama Othman <othman@astrosun.tn.cornell.edu> Mon, 30 Nov 1998 17:24:49 -0500 + +ace (4.6.4-1) unstable; urgency=low + + * Added "install-info" commands to postinst and prerm scripts. + * Added a "modernized" gperf.info to the distribution. + * Added "#ifndef" guards to PACKAGE, VERSION, DEBUG and NDEBUG macros in + acconfig.h to prevent redefinition when using ACE with a package that + defines them. + * Added Env_Value_T.cpp to list of template sources to be installed. + * Moved ace-config script to "-dev" package. + * Added gperf to the distribution. + + -- Ossama Othman <othman@astrosun.tn.cornell.edu> Fri, 13 Nov 1998 16:02:32 -0500 + +ace (4.6.3-2) unstable; urgency=low + + * Released ace-4.6.3-2 packages. + * Corrected ace-config and configure scripts so that the X11 libraries are + displayed correctly by the ace-config script. + + -- Ossama Othman <othman@astrosun.tn.cornell.edu> Thu, 12 Nov 1998 17:24:11 -0500 + +ace (4.6.3-1) unstable; urgency=low + + * Initial Release. + + -- Ossama Othman <othman@astrosun.tn.cornell.edu> Thu, 12 Nov 1998 13:13:59 -0500 + diff --git a/ACE/debianbuild/cmp-installation.sh b/ACE/debianbuild/cmp-installation.sh new file mode 100755 index 00000000000..d12d8e83dd8 --- /dev/null +++ b/ACE/debianbuild/cmp-installation.sh @@ -0,0 +1,37 @@ +#!/bin/sh +# +# This script compares autoconf-based installation against regular builds +# provided files. +# +# This script should be run after `make install DESTDIR=debian/tmp' has been +# run on autoconf-based build. +# + +set -e + +P1=ACE_wrappers +P2=debian/tmp/usr/include + +# Find files +# ff <from> +ff() { + find "$1" -name '*.h' -o -name '*.inl' -o -name '*.hpp' -o -name '*.ipp' +} + +# Remove path with examples, tests and tutorial from STDIN +drop() { + grep -E -v '(examples|tests|tutorials)/' +} + +# Removed unused/unshipped stuff +unused() { + grep -E -v '^/(ASNMP|CIAO|TAO_IDL|ace/QoS|apps|contrib|utils)' +} + +F1=`mktemp -t ace_regular.XXXXXXXXXX` +F2=`mktemp -t ace_autoconf.XXXXXXXXXX` +trap "rm $F1 $F2" 0 + +ff $P1 | sed -e "s@$P1@@" -e "s@/TAO@@" -e "s@/protocols@@" -e "s@^/orbsvcs@@" | drop | unused | sort >> $F1 +ff $P2 | sed -e "s@$P2@@" | sort >> $F2 +diff -u $F1 $F2 diff --git a/ACE/debianbuild/compat b/ACE/debianbuild/compat new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/ACE/debianbuild/compat @@ -0,0 +1 @@ +5 diff --git a/ACE/debianbuild/control b/ACE/debianbuild/control new file mode 100644 index 00000000000..0c84d35242b --- /dev/null +++ b/ACE/debianbuild/control @@ -0,0 +1,626 @@ +Source: ace +Section: devel +Priority: optional +Maintainer: Debian ACE+TAO maintainers <pkg-ace-devel@lists.alioth.debian.org> +Uploaders: Konstantinos Margaritis <markos@debian.org>, Brian Nelson <pyro@debian.org>, Thomas Girard <thomas.g.girard@free.fr> +Build-Depends: debhelper (>= 5), libssl-dev (>= 0.9.7d), dpatch (>= 2.0.10), libxt-dev (>= 4.3.0), libfltk1.1-dev (>= 1.1.4), libqt4-dev (>= 4.4~rc1-4), tk-dev (>= 8.4.7), libfox-1.6-dev, zlib1g-dev, libzzip-dev, docbook-to-man, bzip2, autoconf, automake, libtool, autotools-dev, doxygen +Build-Conflicts: autoconf2.13, automake1.4 +Standards-Version: 3.8.0 +Vcs-Svn: svn://svn.debian.org/svn/pkg-ace/trunk +Vcs-Browser: http://svn.debian.org/wsvn/pkg-ace/trunk +Homepage: http://www.cs.wustl.edu/~schmidt/ACE.html + +Package: mpc-ace +Architecture: all +Section: devel +Depends: ${perl:Depends} +Recommends: make +Replaces: libace-dev (= 5.6.7-4) +Suggests: libace-dev, pkg-config +Description: makefile, project and workspace creator + This package contains the Makefile, Project and Workspace Creator (MPC) + as distributed with the ACE toolkit. + . + MPC generates platform and compiler specific files to automate the + compilation process. + . + The following programs are included: + * mpc-ace, generating project files for a single target + * mwc-ace, generating workspace files for a set of projects + +Package: libace-5.6.7 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: C++ network programming framework + This package contains the ADAPTIVE Communication Environment (ACE) + framework. + . + It provides platform independent C++ wrappers for interprocess + communication: + * signals + * pipes + * sockets + * message queues + * semaphores + * shared memory + as well as thread, process management routines and much more. + . + Moreover, it defines patterns for common communication tasks. Beyond + these: + * Reactor, to handle event demultiplexing and dispatching + * Proactor, for asynchronous I/O driven programs + +Package: libace-dev +Architecture: any +Section: libdevel +Depends: libace-5.6.7 (= ${binary:Version}) +Suggests: libace-doc, libtao-dev, pkg-config +Replaces: mpc-ace (<< 5.6.7-4) +Description: C++ network programming framework development files + This package contains the header files and static library for the ACE + framework. + +Package: libace-doc +Architecture: all +Section: doc +Suggests: libace-dev +Description: C++ network programming framework documentation + This package contains the ACE overview documentation, tutorials, + examples, and information regarding upstream development. + +Package: libace-ssl-5.6.7 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: ACE secure socket layer library + This package contains wrappers that integrate the OpenSSL library in the + ACE framework. + +Package: libace-ssl-dev +Architecture: any +Section: libdevel +Depends: libace-ssl-5.6.7 (= ${binary:Version}), libace-dev (= ${binary:Version}), libssl-dev (>= 0.9.7d) +Description: ACE secure socket layer library development files + This package contains the header files and static library for the ACE + SSL library. + +Package: libace-rmcast-5.6.7 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: ACE reliable multicast library + The RMCast library is a reliable source-ordered multicast protocol + implementation. + . + It uses sequence number for re-ordering, duplicate suppression and + loss detection of messages. + +Package: libace-rmcast-dev +Architecture: any +Section: libdevel +Depends: libace-rmcast-5.6.7 (= ${binary:Version}), libace-dev (= ${binary:Version}) +Description: ACE reliable multicast library development files + This package contains the header files and static library for the ACE + reliable multicast library. + +Package: libace-tmcast-5.6.7 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: ACE transactional multicast library + The TMCast library is a transaction multicast protocol implementation. + . + Each message is delivered to multicast group members as a transaction: + an atomic, consistent and isolated action. + +Package: libace-tmcast-dev +Architecture: any +Section: libdevel +Depends: libace-tmcast-5.6.7 (= ${binary:Version}), libace-dev (= ${binary:Version}) +Description: ACE transactional multicast library development files + This package contains the header files and static library for the ACE + transactional multicast library. + +Package: libace-htbp-5.6.7 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: ACE protocol over HTTP tunneling library + The HTTP Tunneling, Bidirectional, Protocol (HTBP) library enables + the writing of stream-based protocols over HTTP. + . + This allows clients behind a firewall to establish a connection with + outbound servers using the HTTP protocol. + +Package: libace-htbp-dev +Architecture: any +Section: libdevel +Depends: libace-htbp-5.6.7 (= ${binary:Version}), libace-dev (= ${binary:Version}) +Description: ACE protocol over HTTP tunneling library development files + This package contains the header files and static library for the ACE + HTBP library. + +Package: gperf-ace +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Description: ACE perfect hash function generator + gperf-ace is the ACE version of gperf. + . + Both gperf-ace and gperf were written by the same author, and have + basically the same options and functionality. gperf-ace simply takes + advantage of the some of the features provided by the ACE library. + +Package: libacexml-5.6.7 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: ACE SAX based XML parsing library + This package provides interfaces for XML parsing based on Simple API + for XML (SAX) 2.0, defined by David Megginson. This is an event-driven + parsing approach. + . + ACEXML is a small footprint and portable library. It does not validate + XML documents and supports only Unicode encoding. + +Package: libacexml-dev +Architecture: any +Section: libdevel +Depends: libacexml-5.6.7 (= ${binary:Version}), libace-dev (= ${binary:Version}) +Description: ACE SAX based XML parsing library development files + This package contains the header files and static library for the ACE + XML parsing library. + +Package: libkokyu-5.6.7 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Suggests: libtao-1.6.9, libtao-orbsvcs-1.6.9 +Description: ACE scheduling and dispatching library + Kokyu is a library designed to provide flexible scheduling and + dispatching services. + . + Currently it provides real-time scheduling and dispatching services + for TAO real-time CORBA Event Service. + +Package: libkokyu-dev +Architecture: any +Section: libdevel +Depends: libkokyu-5.6.7 (= ${binary:Version}), libace-dev (= ${binary:Version}) +Description: ACE scheduling and dispatching library development files + This package contains the header files and static library for the ACE + scheduling and dispatching library. + +Package: libace-qtreactor-5.6.7 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: ACE-GUI reactor integration for Qt + Recognizing the need to write reactor-based GUI applications, the ACE + community has created several reactor extensions for use with X Window + System. Each of these extends the ACE_Select_Reactor to work with a + specific toolkit. By using these reactors, your GUI application can remain + single threaded yet still respond to both GUI events, such as button + presses, any your own application events. + . + The ACE_QtReactor extends both the ACE_Select_Reactor and the Trolltech Qt + library's QObjects class. Rather then using select(), the + QtWaitForMultipleEvents() function is used. + +Package: libace-qtreactor-dev +Architecture: any +Section: libdevel +Depends: libace-qtreactor-5.6.7 (= ${binary:Version}), libace-dev (= ${binary:Version}), libqt4-dev +Description: ACE-GUI reactor integration for Qt development files + This package contains header files and static library for the ACE-Qt + reactor integration. + +Package: libace-xtreactor-5.6.7 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: ACE-GUI reactor integration for Xt + Recognizing the need to write reactor-based GUI applications, the ACE + community has created several reactor extensions for use with X Window + System. Each of these extends the ACE_Select_Reactor to work with a + specific toolkit. By using these reactors, your GUI application can remain + single threaded yet still respond to both GUI events, such as button presses, + any your own application events. + . + The ACE_XtReactor extends both the ACE_Select_Reactor and the X Toolkit + library function XtWaitForMultipleEvents(). + +Package: libace-xtreactor-dev +Architecture: any +Section: libdevel +Depends: libace-xtreactor-5.6.7 (= ${binary:Version}), libace-dev (= ${binary:Version}), libxt-dev (>= 4.3.0) +Description: ACE-GUI reactor integration for Xt development files + This package contains header files and static library for the ACE-Xt + reactor integration. + +Package: libace-tkreactor-5.6.7 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: ACE-GUI reactor integration for Tk + Recognizing the need to write reactor-based GUI applications, the ACE + community has created several reactor extensions for use with X Window + System. Each of these extends the ACE_Select_Reactor to work with a + specific toolkit. By using these reactors, your GUI application can remain + single threaded yet still respond to both GUI events, such as button presses, + any your own application events. + . + The ACE_TkReactor provides reactor functionality around the popular Tcl/Tk + library. The underlying Tcl/Tk method used is Tcl_DoOneEvent(). + +Package: libace-tkreactor-dev +Architecture: any +Section: libdevel +Depends: libace-tkreactor-5.6.7 (= ${binary:Version}), libace-dev (= ${binary:Version}), tk-dev (>= 8.4.7) +Description: ACE-GUI reactor integration for Tk development files + This package contains header files and static library for the ACE-Tk + reactor integration. + +Package: libace-flreactor-5.6.7 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: ACE-GUI reactor integration for Fl + Recognizing the need to write reactor-based GUI applications, the ACE + community has created several reactor extensions for use with X Window + System. Each of these extends the ACE_Select_Reactor to work with a + specific toolkit. By using these reactors, your GUI application can remain + single threaded yet still respond to both GUI events, such as button presses, + any your own application events. + . + The ACE_FlReactor integrates with the FastLight toolkit's Fl::wait() method. + +Package: libace-flreactor-dev +Architecture: any +Section: libdevel +Depends: libace-flreactor-5.6.7 (= ${binary:Version}), libace-dev (= ${binary:Version}), libfltk1.1-dev (>= 1.1.4) +Description: ACE-GUI reactor integration for Fl development files + This package contains header files and static library for the ACE-Fl + reactor integration. + +Package: libace-foxreactor-5.6.7 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: ACE-GUI reactor integration for FOX + Recognizing the need to write reactor-based GUI applications, the ACE + community has created several reactor extensions for use with X Window + System. Each of these extends the ACE_Select_Reactor to work with a + specific toolkit. By using these reactors, your GUI application can remain + single threaded yet still respond to both GUI events, such as button + presses, any your own application events. + . + The ACE_FoxReactor integrates with the FOX toolkit. + +Package: libace-foxreactor-dev +Architecture: any +Section: libdevel +Depends: libace-foxreactor-5.6.7 (= ${binary:Version}), libace-dev (= ${binary:Version}), libfox-1.6-dev +Description: ACE-GUI reactor integration for FOX development files + This package contains header files and static library for the ACE-FOX + reactor integration. + +Package: libtao-1.6.9 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: ACE based CORBA ORB core libraries + The ACE ORB (TAO) is an open-source Common Object Request Broker + Architecture (CORBA) 2.x-compliant Object Request Broker (ORB). It + supports real-time extensions. + . + This package contains TAO core libraries. + +Package: libtao-dev +Architecture: any +Section: libdevel +Depends: libtao-1.6.9 (= ${binary:Version}), libace-dev (= ${binary:Version}) +Suggests: libtao-doc, libtao-orbsvcs-dev +Description: ACE based CORBA ORB core libraries development files + This package contains the header files for TAO. Due to the size of the + static libs (> 400MB) they have been left out. + +Package: libtao-doc +Architecture: all +Section: doc +Depends: libace-doc (= ${source:Version}) +Suggests: libtao-dev +Description: ACE based CORBA ORB core libraries documentation + This package contains the TAO overview documentation, tutorials, + examples, and information regarding upstream development. + +Package: libtao-orbsvcs-1.6.9 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: TAO CORBA services libraries + This package contains libraries that are needed by many TAO programs. + +Package: libtao-orbsvcs-dev +Architecture: any +Section: libdevel +Depends: libtao-orbsvcs-1.6.9 (= ${binary:Version}), libtao-dev (= ${binary:Version}) +Description: TAO CORBA services development files + This package contains the header files for the TAO CORBA services. + . + Due to the size of the static libs (> 400MB) they have been left out. + The examples and some documentation have been included as well. + +Package: libtao-qtresource-1.6.9 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: TAO-GUI reactor integration for Qt + The Qt resource factory integrates ACE QtReactor into TAO ORB reactor. + +Package: libtao-qtresource-dev +Architecture: any +Section: libdevel +Depends: libtao-qtresource-1.6.9 (= ${binary:Version}), libace-qtreactor-dev (= ${binary:Version}), libtao-dev (= ${binary:Version}) +Description: TAO-GUI reactor integration for Qt development files + This package contains header files and static library for the TAO-Qt + reactor integration. + +Package: libtao-xtresource-1.6.9 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: TAO-GUI reactor integration for Xt + The Xt resource factory integrates ACE XtReactor into TAO ORB reactor. + +Package: libtao-xtresource-dev +Architecture: any +Section: libdevel +Depends: libtao-xtresource-1.6.9 (= ${binary:Version}), libace-xtreactor-dev (= ${binary:Version}), libtao-dev (= ${binary:Version}) +Description: TAO-GUI reactor integration for Xt development files + This package contains header files and static library for the TAO-Xt + reactor integration. + +Package: libtao-flresource-1.6.9 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: TAO-GUI reactor integration for Fl + The Fl resource factory integrates ACE FlReactor into TAO ORB reactor. + +Package: libtao-flresource-dev +Architecture: any +Section: libdevel +Depends: libtao-flresource-1.6.9 (= ${binary:Version}), libace-flreactor-dev (= ${binary:Version}), libtao-dev (= ${binary:Version}) +Description: TAO-GUI reactor integration for Fl development files + This package contains header files and static library for the TAO-Fl + reactor integration. + +Package: libtao-tkresource-1.6.9 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: TAO-GUI reactor integration for Tk development files + The Tk resource factory integrates ACE TkReactor into TAO ORB reactor. + +Package: libtao-tkresource-dev +Architecture: any +Section: libdevel +Depends: libtao-tkresource-1.6.9 (= ${binary:Version}), libace-tkreactor-dev (= ${binary:Version}), libtao-dev (= ${binary:Version}) +Description: TAO-GUI reactor integration for Tk development files + This package contains header files and static library for the TAO-Tk + reactor integration. + +Package: libtao-foxresource-1.6.9 +Architecture: any +Section: libs +Depends: ${shlibs:Depends} +Description: TAO-GUI reactor integration for FOX + The Fl resource factory integrates ACE FoxReactor into TAO ORB reactor. + +Package: libtao-foxresource-dev +Architecture: any +Section: libdevel +Depends: libtao-foxresource-1.6.9 (= ${binary:Version}), libace-foxreactor-dev (= ${binary:Version}), libtao-dev (= ${binary:Version}) +Description: TAO-GUI reactor integration for FOX development files + This package contains header files and static library for the TAO-FOX + reactor integration. + +Package: tao-idl +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Description: TAO IDL to C++ compiler + This package provides a Interface Definition Language (IDL) to C++ compiler. + . + Use tao_idl to generate stubs and skeletons to call or implement CORBA + distributed objects in C++. + +Package: tao-ifr +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Description: TAO interface repository + CORBA-aware programs can contact an interface repository to get objects + interfaces at run-time. Then they can use the Dynamic Invocation + Interface (DII) mechanism to invoke requests on those objects. + . + This package includes the following programs: + * IFR_Service: interface repository server + * tao_ifr: feeds in the interface repository + +Package: tao-imr +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Description: TAO implementation repository + An implementation repository activates CORBA servers on demand. + . + This package includes the following programs: + * ImplRepo_Service: the main server; delegates call to activators + * ImR_Activator: activates and shuts servers down on demand + * tao_imr: registers servers for later activation + +Package: tao-ft +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Description: TAO fault tolerant services + TAO supports Fault Tolerance for CORBA Objects. + . + This package includes three FT CORBA infrastructure components: + * Fault_Detector that monitors a process or a host + * Fault_Notifier that receives fault reports from detectors + * FT_ReplicationManager that manages object groups + +Package: tao-utils +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Suggests: tao-naming +Description: TAO naming service and IOR utilities + This package includes programs to query or control a CORBA naming + service, and to dump an IOR. + . + The following programs are included: + * tao-nslist, to list naming context and object bindings + * tao-nsadd, to create bindings + * tao-nsdel, to remove bindings + * tao-catior, to dump the content of an Interoperable Object Reference + +Package: tao-naming +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Recommends: tao-utils +Description: TAO naming service + TAO implementation of CORBA interoperable naming service (INS). + . + A naming service provides a location service for CORBA objects. Given a + name, it will return the Interoperable Object Reference (IOR) for the CORBA + object that was registered with this name. + +Package: tao-trading +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Description: TAO trading service + TAO implementation of CORBA trading service. + . + A trading service is quite like a naming service except that it relies on a + set of properties instead of a name to find object references. + +Package: tao-event +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Description: TAO event service + An event service creates channels where suppliers and consumers + can push or pull events. This channel enables asynchronous, message + based communication between consumers and suppliers. + . + This event service supports both the Push and Pull styles for event + communication. + +Package: tao-rtevent +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Description: TAO real-time event service + Another TAO implementation of CORBA event service. For more information on + CORBA event service have a look at tao-event package. + . + This version does not support the Pull style but provides a real-time + event channel. + +Package: tao-ftrtevent +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Description: TAO fault-tolerant real-time event service + TAO fault-tolerant, real-time CORBA event service. For more information on + CORBA event service have a look at tao-event package. + . + This package contains: + * ftrt_eventservice, the fault-tolerant event channel + * ftrtec_factory_service, spawning ftrt_eventservice processes + * ftrtec_gateway_service, relaying events to FT CORBA unaware clients + +Package: tao-notify +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Description: TAO notification service + A notification service enhances an event service. For more information on + CORBA event service have a look at tao-event package. + . + The notification service adds: + * quality of service control on reliability and speed + * event filtering + +Package: tao-load +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Description: TAO load balancing service + TAO implementation of OMG Load Balancing and Monitoring specification. + . + This package provides: + * LoadManager, that distributes loads across objects + * LoadMonitor, that monitors and reports loads to a manager + +Package: tao-log +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Description: TAO telecom log services + TAO implementations of CORBA telecom log service. + . + Four separate services are provided: + * Basic_Logging_Service + * Event_Logging_Service + * Notify_Logging_Service + * RTEvent_Logging_Service + +Package: tao-scheduling +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Description: TAO scheduling service + TAO implementation of CORBA scheduling service. + . + This package contains: + * Scheduling_Service + * Dump_Schedule + +Package: tao-concurrency +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Description: TAO concurrency service + A concurrency service provides a mechanism to acquire and release locks in + a distributed system. + . + TAO version does not support transactions. + +Package: tao-lifecycle +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Description: TAO lifecycle service + The CORBA lifecycle service allows clients to create, delete, copy and move + objects. + . + This package contains the TAO implementation of such service. + +Package: tao-time +Architecture: any +Section: devel +Depends: ${shlibs:Depends} +Description: TAO time service + A time service offers globally synchronized time to clients. + . + This package contains two programs: + * Time_Service_Clerk, answering client requests + * Time_Service_Server, queried by clerks to keep their time synchronized diff --git a/ACE/debianbuild/copyright b/ACE/debianbuild/copyright new file mode 100644 index 00000000000..891512b3683 --- /dev/null +++ b/ACE/debianbuild/copyright @@ -0,0 +1,690 @@ +This package was debianized by: + Ossama Othman <ossama@debian.org> on Fri, 25 Sep 1998 16:43:42 -0400. + +It is now maintained by: + Brian Nelson <pyro@debian.org> + Konstantinos Margaritis <markos@debian.org> + Thomas Girard <thomas.g.girard@free.fr> + +It was downloaded from: <http://download.dre.vanderbilt.edu/> + +Files: * +Copyright: © 1993-2008 Douglas C. Schmidt and his research group at + Washington University, University of California, Irvine, + and Vanderbilt University +License: other-BSD + Copyright and Licensing Information for ACE(TM), TAO(TM), CIAO(TM), and + CoSMIC(TM) + + [1]ACE(TM), [2]TAO(TM), [3]CIAO(TM), and [4]CoSMIC(TM) (henceforth + referred to as "DOC software") are copyrighted by [5]Douglas C. + Schmidt and his [6]research group at [7]Washington University, + [8]University of California, Irvine, and [9]Vanderbilt University, + Copyright (c) 1993-2008, all rights reserved. Since DOC software is + open-source, freely available software, you are free to use, modify, + copy, and distribute--perpetually and irrevocably--the DOC software + source code and object code produced from the source, as well as copy + and distribute modified versions of this software. You must, however, + include this copyright statement along with any code built using DOC + software that you release. No copyright statement needs to be provided + if you just ship binary executables of your software products. + + You can use DOC software in commercial and/or binary software releases + and are under no obligation to redistribute any of your source code + that is built using DOC software. Note, however, that you may not do + anything to the DOC software code, such as copyrighting it yourself or + claiming authorship of the DOC software code, that will prevent DOC + software from being distributed freely using an open-source + development model. You needn't inform anyone that you're using DOC + software in your software, though we encourage you to let [10]us know + so we can promote your project in the [11]DOC software success + stories. + + The [12]ACE, [13]TAO, [14]CIAO, and [15]CoSMIC web sites are + maintained by the [16]DOC Group at the [17]Institute for Software + Integrated Systems (ISIS) and the [18]Center for Distributed Object + Computing of Washington University, St. Louis for the development of + open-source software as part of the open-source software community. By + submitting comments, suggestions, code, code snippets, techniques + (including that of usage) and algorithms (collectively + ``Submissions''), submitters acknowledge that they have the right to + do so, that any such Submissions are given freely and unreservedly, + and that they waive any claims to copyright or ownership. In addition, + submitters acknowledge that any such Submission might become part of + the copyright maintained on the overall body of code that comprises + the DOC software. By making a Submission, submitter agree to these + terms. Moreover, submitters acknowledge that the incorporation or + modification of such Submissions is entirely at the discretion of the + moderators of the open-source DOC software projects or their + designees. + + Submissions are provided by the submitter ``as is'' with no warranties + whatsoever, including any warranty of merchantability, noninfringement + of third party intellectual property, or fitness for any particular + purpose. In no event shall the submitter be liable for any direct, + indirect, special, exemplary, punitive, or consequential damages, + including without limitation, lost profits, even if advised of the + possibility of such damages. Likewise, DOC software is provided as is + with no warranties of any kind, including the warranties of design, + merchantability, and fitness for a particular purpose, + noninfringement, or arising from a course of dealing, usage or trade + practice. Washington University, UC Irvine, Vanderbilt University, + their employees, and students shall have no liability with respect to + the infringement of copyrights, trade secrets or any patents by DOC + software or any part thereof. Moreover, in no event will Washington + University, UC Irvine, or Vanderbilt University, their employees, or + students be liable for any lost revenue or profits or other special, + indirect and consequential damages. + + DOC software is provided with no support and without any obligation on + the part of Washington University, UC Irvine, Vanderbilt University, + their employees, or students to assist in its use, correction, + modification, or enhancement. A [19]number of companies around the + world provide commercial support for DOC software, however. + + DOC software is Y2K-compliant, as long as the underlying OS platform + is Y2K-compliant. Likewise, DOC software is compliant with the new US + daylight savings rule passed by Congress as "The Energy Policy Act of + 2005," which established new daylight savings times (DST) rules for + the United States that expand DST as of March 2007. Since DOC software + obtains time/date and calendaring information from operating systems + users will not be affected by the new DST rules as long as they + upgrade their operating systems accordingly. + + The names ACE(TM), TAO(TM), CIAO(TM), CoSMIC(TM), Washington + University, UC Irvine, and Vanderbilt University, may not be used to + endorse or promote products or services derived from this source + without express written permission from Washington University, UC + Irvine, or Vanderbilt University. Further, products or services + derived from this source may not be called ACE(TM), TAO(TM), CIAO(TM), + or CoSMIC(TM) nor may the name Washington University, UC Irvine, or + Vanderbilt University appear in their names, without express written + permission from Washington University, UC Irvine, and Vanderbilt + University. + + If you have any suggestions, additions, comments, or questions, please + let [20]me know. + + [21]Douglas C. Schmidt + _________________________________________________________________ + + Back to the [22]ACE home page. + + References + 1. http://www.cs.wustl.edu/~schmidt/ACE.html + 2. http://www.cs.wustl.edu/~schmidt/TAO.html + 3. http://www.dre.vanderbilt.edu/CIAO/ + 4. http://www.dre.vanderbilt.edu/cosmic/ + 5. http://www.dre.vanderbilt.edu/~schmidt/ + 6. http://www.cs.wustl.edu/~schmidt/ACE-members.html + 7. http://www.wustl.edu/ + 8. http://www.uci.edu/ + 9. http://www.vanderbilt.edu/ + 10. mailto:doc_group@cs.wustl.edu + 11. http://www.cs.wustl.edu/~schmidt/ACE-users.html + 12. http://www.cs.wustl.edu/~schmidt/ACE.html + 13. http://www.cs.wustl.edu/~schmidt/TAO.html + 14. http://www.dre.vanderbilt.edu/CIAO/ + 15. http://www.dre.vanderbilt.edu/cosmic/ + 16. http://www.dre.vanderbilt.edu/ + 17. http://www.isis.vanderbilt.edu/ + 18. http://www.cs.wustl.edu/~schmidt/doc-center.html + 19. http://www.cs.wustl.edu/~schmidt/commercial-support.html + 20. mailto:d.schmidt@vanderbilt.edu + 21. http://www.dre.vanderbilt.edu/~schmidt/ + 22. http://www.cs.wustl.edu/ACE.html + +Files: apps/gperf/* +Copyright: © 1989 Free Software Foundation, Inc. +License: GPL-2+ + On Debian systems the full text of the GNU General Public License (Version 2) + can be found in the `/usr/share/common-licenses/GPL-2' file. + +Files: ACE_wrappers/MPC/* +Copyright: © 2003-2006 OCI. St. Louis MO USA +License: other-BSD + MPC (Licensed Product) is protected by copyright, and is distributed under + the following terms. + + MPC (Make, Project and workspace Creator) is an open source tool, developed + by OCI and written in Perl. It is designed to generate a variety of tool + specific project files from a common baseline. Through the powerful + combination of inheritance and defaults MPC is able to reduce the + maintenance burden normally associated with keeping multiple target + platforms, their unique build tools, and inconsistent feature sets current. + It is also easily extensible to support new build environments. The + objective is to solve the prevalent problem of fragile build environments, + usually experienced by developer groups, by replacing it with a singular + robust build environment, and an active community of users committed to its + evolution. + + Since MPC is open source and free of licensing fees, you are free to use, + modify, and distribute the source code, as long as you include this + copyright statement. + + In particular, you can use MPC to build proprietary software and are under + no obligation to redistribute any of your source code that is built using + MPC. Note, however, that you may not do anything to the MPC code, such as + copyrighting it yourself or claiming authorship of the MPC code, that will + prevent MPC from being distributed freely using an open source development + model. + + Warranty + + LICENSED PRODUCT IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING + THE WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, OR ARISING FROM A COURSE OF DEALING, USAGE OR + TRADE PRACTICE. + + Support + + LICENSED PRODUCT IS PROVIDED WITH NO SUPPORT AND WITHOUT ANY OBLIGATION ON + THE PART OF OCI OR ANY OF ITS SUBSIDIARIES OR AFFILIATES TO ASSIST IN ITS + USE, CORRECTION, MODIFICATION OR ENHANCEMENT. + + Support may be available from OCI to users who have agreed to a support + contract. + + Liability + + OCI OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH + RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY + LICENSED PRODUCT OR ANY PART THEREOF. + + IN NO EVENT WILL OCI OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR + ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL + DAMAGES, EVEN IF OCI HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + + MPC copyright OCI. St. Louis MO USA, 2003-2006 + +Files: ACE_wrappers/contrib/minizip/*.[ch] +Copyright: © 1998-2005 Gilles Vollant +License: ZLIB + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + +Files: ACE_wrappers/contrib/utility/* +Copyright: © 2002-2003 Boris Kolpackov +License: other-BSD + This software or documentation is provided 'as-is', without any + express or implied warranty. In no event will the author or contributors + be held liable for any damages arising from the use of this software + or documentation. + + Permission is granted to anyone to use this software or documentation + for any purpose, including commercial applications, and to alter it and + redistribute it freely, subject to the following restrictions: + + 1. The origin of this software or documentation must not be + misrepresented; you must not claim that you wrote the original + software or documentation. If you use this software or + documentation in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + + 2. Altered source versions must be plainly marked as such, and must + not be misrepresented as being the original software or documentation. + Altered source versions may be contributed back to the author to be + integrated into the original software or documentation at the + author's discretion. + + 3. Neither this notice or reference to it nor any copyright, author or + contributor clause may be removed from or altered in any software + source distribution or documentation covered by this license. + + 4. Neither the name of the author, nor the names of contributors may be + used to endorse or promote products derived from this software or + documentation without specific prior written permission. + +Files: ACE_wrappers/TAO/TAO_IDL/* + ACE_wrappers/*/drv_*_ifr.* + ACE_wrappers/*/be_produce.cpp + ACE_wrappers/*/be_extern.h +Copyright: © 1992-1995 Sun Micosystems, Inc +License: other + COPYRIGHT + + Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the + United States of America. All Rights Reserved. + + This product is protected by copyright and distributed under the + following license restricting its use. + + The Interface Definition Language Compiler Front End (CFE) is made + available for your use provided that you include this license and + copyright notice on all media and documentation and the software + program in which this product is incorporated in whole or part. You + may copy and extend functionality (but may not remove functionality) + of the Interface Definition Language CFE without charge, but you are + not authorized to license or distribute it to anyone else except as + part of a product or program developed by you or with the express + written consent of Sun Microsystems, Inc. ("Sun"). + + The names of Sun Microsystems, Inc. and any of its subsidiaries or + affiliates may not be used in advertising or publicity pertaining to + distribution of Interface Definition Language CFE as permitted herein. + + This license is effective until terminated by Sun for failure to + comply with this license. Upon termination, you shall destroy or + return all code and documentation for the Interface Definition + Language CFE. + + INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES + OF ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND + FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A + COURSE OF DEALING, USAGE OR TRADE PRACTICE. + + INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND + WITHOUT ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES + OR AFFILIATES TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR + ENHANCEMENT. + + SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY + WITH RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY + PATENTS BY INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. + + IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE + LIABLE FOR ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND + CONSEQUENTIAL DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY + OF SUCH DAMAGES. + + Use, duplication, or disclosure by the government is subject to + restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in + Technical Data and Computer Software clause at DFARS 252.227-7013 and + FAR 52.227-19. + + Sun, Sun Microsystems and the Sun logo are trademarks or registered + trademarks of Sun Microsystems, Inc. + + SunSoft, Inc. + 2550 Garcia Avenue + Mountain View, California 94043 + + NOTE: + + SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are + trademarks or registered trademarks of Sun Microsystems, Inc. + +Files: ACE_wrappers/TAO/tao/DynamicInterface/Unknown_User_Exception.h + ACE_wrappers/TAO/tao/DynamicInterface/ExceptionList.h + ACE_wrappers/TAO/tao/DynamicInterface/Request.h + ACE_wrappers/TAO/tao/DynamicInterface/Server_Request.h + ACE_wrappers/TAO/tao/default_ports.h + ACE_wrappers/TAO/tao/Stub.h + ACE_wrappers/TAO/tao/corba.h + ACE_wrappers/TAO/tao/GIOP_Message_Base.h + ACE_wrappers/TAO/tao/Stub.cpp + ACE_wrappers/TAO/tao/Object.h + ACE_wrappers/TAO/tao/TAO_Server_Request.h + ACE_wrappers/TAO/tao/CDR.h + ACE_wrappers/TAO/tao/orbconf.h + ACE_wrappers/TAO/tao/AnyTypeCode/Marshal.cpp + ACE_wrappers/TAO/tao/AnyTypeCode/append.cpp + ACE_wrappers/TAO/tao/AnyTypeCode/NVList.h + ACE_wrappers/TAO/tao/Object.cpp + ACE_wrappers/TAO/tao/Principal.h + ACE_wrappers/TAO/tao/Principal.cpp +Copyright: © 1995 Sun Microsystems, Inc +License: other + This notice applies to all files in this software distribution that + were originally derived from SunSoft IIOP code (these files contain + Sun Microsystems copyright notices). + + COPYRIGHT AND LICENSING + ----------------------- + + Copyright 1995 Sun Microsystems, Inc. + Printed in the United States of America. + All Rights Reserved. + + This software product (LICENSED PRODUCT), implementing the Object + Management Group's "Internet Inter-ORB Protocol", is protected by + copyright and is distributed under the following license restricting + its use. Portions of LICENSED PRODUCT may be protected by one or more + U.S. or foreign patents, or pending applications. + + LICENSED PRODUCT is made available for your use provided that you + include this license and copyright notice on all media and + documentation and the software program in which this product is + incorporated in whole or part. + + You may copy, modify, distribute, or sublicense the LICENSED PRODUCT + without charge as part of a product or software program developed by + you, so long as you preserve the functionality of interoperating with + the Object Management Group's "Internet Inter-ORB Protocol" version + one. However, any uses other than the foregoing uses shall require + the express written consent of Sun Microsystems, Inc. + + The names of Sun Microsystems, Inc. and any of its subsidiaries or + affiliates may not be used in advertising or publicity pertaining to + distribution of the LICENSED PRODUCT as permitted herein. + + This license is effective until terminated by Sun for failure to + comply with this license. Upon termination, you shall destroy or + return all code and documentation for the LICENSED PRODUCT. + + LICENSED PRODUCT IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND + INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A + PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF + DEALING, USAGE OR TRADE PRACTICE. + + LICENSED PRODUCT IS PROVIDED WITH NO SUPPORT AND WITHOUT ANY + OBLIGATION ON THE PART OF SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES + TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. + + SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY + WITH RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY + PATENTS BY LICENSED PRODUCT OR ANY PART THEREOF. + + IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE + LIABLE FOR ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND + CONSEQUENTIAL DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY + OF SUCH DAMAGES. + + Use, duplication, or disclosure by the government is subject to + restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in + Technical Data and Computer Software clause at DFARS 252.227-7013 and + FAR 52.227-19. + + SunOS, SunSoft, Sun, Solaris, Sun Microsystems and the Sun logo are + trademarks or registered trademarks of Sun Microsystems, Inc. + + SunSoft, Inc. + 2550 Garcia Avenue + Mountain View, California 94043 + +Files: ACE_wrappers/ace/OS_NS_unistd.inl (swab function) +Copyright: © 1994-2006 Red Hat, Inc. +License: BSD-3 + +Files: ACE_wrappers/ace/UTF32_Encoding_Converter.cpp + ACE_wrappers/ace/UTF16_Encoding_Converter.cpp + ACE_wrappers/ace/UTF16_Encoding_Converter.inl +Copyright: © 2001-2004 Unicode, Inc. +License: other + Limitations on Rights to Redistribute This Code + + Unicode, Inc. hereby grants the right to freely use the information + supplied in this file in the creation of products supporting the + Unicode Standard, and to make copies of this file in any form + for internal or external distribution as long as this notice + remains attached. + +Files: ACE_wrappers/apps/JAWS3/* +Copyright: © 2000 James Hu and Entera, Inc. +License: other + Copyright and Licensing Information for JAWS Adaptive Web Server, + version 3 (JAWS3). + + JAWS3 is copyrighted by James Hu and Entera, Inc., Copyright (c) + 2000, all rights reserved. Since JAWS3 is open source, free + software, you are free to use, modify, and distribute the JAWS3 + source code and object code produced or otherwise derived from + JAWS3, provided you include this copyright statement in all versions + of such code. + + In particular, you can use JAWS3 in proprietary software and are + under no obligation to redistribute any of your source code that is + derived from JAWS3. Note, however, that you may not modify the + JAWS3 code in any way, or take any other action such as copyrighting + it yourself or claiming authorship of the JAWS3 code, that will + prevent JAWS3 from being distributed freely using an open source + development model. + + JAWS3 is provided as is with no warranties of any kind, including + the warranties of design, merchantibility and fitness for a + particular purpose, noninfringement, or arising from a course of + dealing, usage or trade practice. Moreover, JAWS3 is provided with + no support and without any obligation on the part of Entera, Inc., + or its employees. + + Entera, Inc., and its employees shall have no liability with respect + to the infringement of copyrights, trade secrets or any patents by + JAWS3 or any part thereof. Moreover, in no event will Entera, Inc., + or its employees, be liable for any lost revenue or profits or other + special, indirect and consequential damages. + + By submitting comments, suggestions, code, code snippets, techniques + (including that of usage), and algorithms, submitters acknowledge + that they have the right to do so, that any such submissions are + given freely and unreservedly, and that they waive any claims to + copyright or ownership. In addition, submitters acknowledge that + any such submission might become part of the copyright maintained on + the overall body of code, which comprises the JAWS3 software. By + making a submission, submitters agree to these terms. Furthermore, + submitters acknowledge that the incorporation or modification of + such submissions is entirely at the discretion of the moderators of + the open source JAWS3 project or their designees. + + The names JAWS3 and Entera, Inc., may not be used to endorse or + promote products or services derived from this source without + express written permission from Entera, Inc. Further, products or + services derived from this source may not be called JAWS3 nor may + the name Entera, Inc., appear in their names, without express + written permission from Entera, Inc. + + If you have any suggestions, additions, comments, or questions, + please let me know. + + James C. Hu + Entera, Inc. + jxh@entera.com + +Files: ACE_wrappers/apps/JAWS/clients/WebSTONE/* +Copyright: © 1995 Silicon Graphics, Inc. +License: other + This file and all files contained in this directory are + copyright 1995, Silicon Graphics, Inc. + + This software is provided without support and without any obligation on the + part of Silicon Graphics, Inc. to assist in its use, correction, modification + or enhancement. There is no guarantee that this software will be included in + future software releases, and it probably will not be included. + + THIS SOFTWARE IS PROVIDED "AS IS" WITH NO WARRANTIES OF ANY KIND INCLUDING THE + WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE, + OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. + + In no event will Silicon Graphics, Inc. be liable for any lost revenue or + profits or other special, indirect and consequential damages, even if + Silicon Graphics, Inc. has been advised of the possibility of such damages. + +Files: ACE_wrappers/ASNMP/* +Copyright: © 1996 Hewlett-Packard Company + © 1988, 1989, 1991, 1992 Carnegie Mellon University + © 1997 Cisco Systems, Inc. +License: other-BSD + These copyrights apply to the SNMP++ module shipped with the ACE library: + + /*=================================================================== + Copyright (c) 1996 + Hewlett-Packard Company + + ATTENTION: USE OF THIS SOFTWARE IS SUBJECT TO THE FOLLOWING TERMS. + Permission to use, copy, modify, distribute and/or sell this software + and/or its documentation is hereby granted without fee. User agrees + to display the above copyright notice and this license notice in all + copies of the software and any documentation of the software. User + agrees to assume all liability for the use of the software; Hewlett-Packard + makes no representations about the suitability of this software for any + purpose. It is provided "AS-IS without warranty of any kind,either express + or implied. User hereby grants a royalty-free license to any and all + derivatives based upon this software code base. + + =====================================================================*/ + + /********************************************************************** + Copyright 1988, 1989, 1991, 1992 by Carnegie Mellon University + + All Rights Reserved + + Permission to use, copy, modify, and distribute this software and its + documentation for any purpose and without fee is hereby granted, + provided that the above copyright notice appear in all copies and that + both that copyright notice and this permission notice appear in + supporting documentation, and that the name of CMU not be + used in advertising or publicity pertaining to distribution of the + software without specific, written prior permission. + + CMU DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING + ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL + CMU BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR + ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, + WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, + ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + SOFTWARE. + ******************************************************************/ + + Certain portions of this version of HP's SNMP++ are: + + /*-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + Copyright 1997 Cisco Systems, Inc. + + Permission to use, copy, modify, and distribute this software for any + purpose and without fee is hereby granted, provided that this + copyright and permission notice appear on all copies of the software and + supporting documentation, the name of Cisco Systems, Inc. not be used + in advertising or publicity pertaining to distribution of the + program without specific prior permission, and notice be given + in supporting documentation that modification, copying and distribution is by + permission of Cisco Systems, Inc. + + Cisco Systems, Inc. makes no representations about the suitability of this + software for any purpose. THIS SOFTWARE IS PROVIDED ``AS IS'' + AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT + LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGMENT AND + FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL CISCO SYSTEMS, INC. BE + LIABLE FOR ANY DAMAGES ARISING OUT OF THIS LICENSE OR YOUR USE OF THE + SOFTWARE INCLUDING WITHOUT LIMITATION, DIRECT, INDIRECT OR CONSEQUENTIAL + DAMAGES. + -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/ + +Files: ACE_wrappers/ace/OS_NS_wchar.cpp (wcs*_emulation functions) +Copyright: © 1991, 1993 The Regents of the University of California +License: BSD-4 + Copyright (c) 1991, 1993 + The Regents of the University of California. All rights reserved. + + This code is derived from software contributed to Berkeley by + James W. Williams of NASA Goddard Space Flight Center. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + This product includes software developed by the University of + California, Berkeley and its contributors. + 4. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + +Files: ACE_wrappers/ace/Get_Opt.cpp +Copyright: © 1987, 1993, 1994 The Regents of the University of California + © 2000 The NetBSD Foundation, Inc. +License: BSD-4 + Copyright (c) 1987, 1993, 1994 + The Regents of the University of California. All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + This product includes software developed by the University of + California, Berkeley and its contributors. + 4. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + + ****************************************************************** + + Copyright (c) 2000 The NetBSD Foundation, Inc. + All rights reserved. + + This code is derived from software contributed to The NetBSD Foundation + by Dieter Baron and Thomas Klausner. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + This product includes software developed by the NetBSD + Foundation, Inc. and its contributors. + 4. Neither the name of The NetBSD Foundation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +Files: ACE_wrappers/examples/C++NPv1 + ACE_wrappers/examples/C++NPv2 + ACE_wrappers/examples/APG +Copyright: © 2001, 2003 Addison Wesley +License: other + All of the files in these directories are copyright Addison Wesley, + and they come with absolutely no warranty whatsoever. Permission is + hereby granted to use these programs for educational or commercial + purposes. diff --git a/ACE/debianbuild/dsc b/ACE/debianbuild/dsc new file mode 100644 index 00000000000..0eb4b47c54f --- /dev/null +++ b/ACE/debianbuild/dsc @@ -0,0 +1,10 @@ +# Format: 1.0 +# Source: ace +# Version: 1.5.7 +# Binary: ace +# Maintainer: Johnny Willemsen <jwillemsen@remedy.nl> +# Architecture: any +# Build-Depends: g++ +# Files: +# d57283ebb8157ae919762c58419353c8 133282 ACE+TAO+CIAO-src-5.6.7.tar.bz2 +# diff --git a/ACE/debianbuild/gperf-ace.docs b/ACE/debianbuild/gperf-ace.docs new file mode 100644 index 00000000000..b14ede1b24f --- /dev/null +++ b/ACE/debianbuild/gperf-ace.docs @@ -0,0 +1,2 @@ +ACE_wrappers/PROBLEM-REPORT-FORM +ACE_wrappers/apps/gperf/README diff --git a/ACE/debianbuild/gperf-ace.install b/ACE/debianbuild/gperf-ace.install new file mode 100644 index 00000000000..04c9b7c515b --- /dev/null +++ b/ACE/debianbuild/gperf-ace.install @@ -0,0 +1,2 @@ +usr/bin/ace_gperf +usr/share/man/man1/ace_gperf.1 diff --git a/ACE/debianbuild/libace-5.6.8.docs b/ACE/debianbuild/libace-5.6.8.docs new file mode 100644 index 00000000000..e367841dc93 --- /dev/null +++ b/ACE/debianbuild/libace-5.6.8.docs @@ -0,0 +1,8 @@ +ACE_wrappers/README +ACE_wrappers/VERSION +ACE_wrappers/AUTHORS +ACE_wrappers/FAQ +ACE_wrappers/PROBLEM-REPORT-FORM +ACE_wrappers/THANKS +ACE_wrappers/VERSION +ACE_wrappers/NEWS diff --git a/ACE/debianbuild/libace-5.6.8.install b/ACE/debianbuild/libace-5.6.8.install new file mode 100644 index 00000000000..c1cbf26a13f --- /dev/null +++ b/ACE/debianbuild/libace-5.6.8.install @@ -0,0 +1 @@ +usr/lib/libACE-*.so* diff --git a/ACE/debianbuild/libace-dev.docs b/ACE/debianbuild/libace-dev.docs new file mode 100644 index 00000000000..8d00ada38de --- /dev/null +++ b/ACE/debianbuild/libace-dev.docs @@ -0,0 +1,7 @@ +ACE_wrappers/README +ACE_wrappers/VERSION +ACE_wrappers/AUTHORS +ACE_wrappers/FAQ +ACE_wrappers/PROBLEM-REPORT-FORM +ACE_wrappers/THANKS +ACE_wrappers/VERSION diff --git a/ACE/debianbuild/libace-dev.install b/ACE/debianbuild/libace-dev.install new file mode 100644 index 00000000000..f6c547fad2d --- /dev/null +++ b/ACE/debianbuild/libace-dev.install @@ -0,0 +1,12 @@ +../../ACE_wrappers/bin/generate_export_file.pl usr/share/ace/bin +../../ACE_wrappers/bin/split-cpp usr/share/ace/bin +../../ACE_wrappers/bin/g++dep usr/share/ace/bin +../../ACE_wrappers/bin/add_rel_link.sh usr/share/ace/bin +../../ACE_wrappers/bin/depgen.pl usr/share/ace/bin +../../ACE_wrappers/bin/DependencyGenerator usr/share/ace/bin +../../ACE_wrappers/include usr/share/ace +../../objdir/include/makeinclude/platform_macros.GNU usr/share/ace/include/makeinclude +usr/include/ace/*.{h,inl,cpp} +usr/include/ace/os_include +usr/lib/libACE.so +usr/lib/pkgconfig/ACE.pc diff --git a/ACE/debianbuild/libace-dev.links b/ACE/debianbuild/libace-dev.links new file mode 100644 index 00000000000..3efd6197eb5 --- /dev/null +++ b/ACE/debianbuild/libace-dev.links @@ -0,0 +1,2 @@ +usr/include/ace usr/share/ace/ace +usr/lib usr/share/ace/lib diff --git a/ACE/debianbuild/libace-doc.docs b/ACE/debianbuild/libace-doc.docs new file mode 100644 index 00000000000..f15b7f7c57e --- /dev/null +++ b/ACE/debianbuild/libace-doc.docs @@ -0,0 +1,3 @@ +ACE_wrappers/docs +ACE_wrappers/examples +ACE_wrappers/html/ace/* diff --git a/ACE/debianbuild/libace-flreactor-5.6.8.install b/ACE/debianbuild/libace-flreactor-5.6.8.install new file mode 100644 index 00000000000..550aa832bf0 --- /dev/null +++ b/ACE/debianbuild/libace-flreactor-5.6.8.install @@ -0,0 +1 @@ +usr/lib/libACE_FlReactor-*.so* diff --git a/ACE/debianbuild/libace-flreactor-dev.install b/ACE/debianbuild/libace-flreactor-dev.install new file mode 100644 index 00000000000..4de36ed5380 --- /dev/null +++ b/ACE/debianbuild/libace-flreactor-dev.install @@ -0,0 +1,3 @@ +usr/lib/libACE_FlReactor.so +usr/include/ace/FlReactor +usr/lib/pkgconfig/ACE_FlReactor.pc diff --git a/ACE/debianbuild/libace-foxreactor-5.6.8.install b/ACE/debianbuild/libace-foxreactor-5.6.8.install new file mode 100644 index 00000000000..fd0fc562b85 --- /dev/null +++ b/ACE/debianbuild/libace-foxreactor-5.6.8.install @@ -0,0 +1 @@ +usr/lib/libACE_FoxReactor-*.so* diff --git a/ACE/debianbuild/libace-foxreactor-dev.install b/ACE/debianbuild/libace-foxreactor-dev.install new file mode 100644 index 00000000000..610f74fa297 --- /dev/null +++ b/ACE/debianbuild/libace-foxreactor-dev.install @@ -0,0 +1,3 @@ +usr/lib/libACE_FoxReactor.so +usr/include/ace/FoxReactor +usr/lib/pkgconfig/ACE_FoxReactor.pc diff --git a/ACE/debianbuild/libace-htbp-5.6.8.install b/ACE/debianbuild/libace-htbp-5.6.8.install new file mode 100644 index 00000000000..9467b8be94b --- /dev/null +++ b/ACE/debianbuild/libace-htbp-5.6.8.install @@ -0,0 +1 @@ +usr/lib/libACE_HTBP-*.so* diff --git a/ACE/debianbuild/libace-htbp-dev.docs b/ACE/debianbuild/libace-htbp-dev.docs new file mode 100644 index 00000000000..d8a3e7dc562 --- /dev/null +++ b/ACE/debianbuild/libace-htbp-dev.docs @@ -0,0 +1 @@ +ACE_wrappers/protocols/ace/HTBP/README diff --git a/ACE/debianbuild/libace-htbp-dev.install b/ACE/debianbuild/libace-htbp-dev.install new file mode 100644 index 00000000000..4f12cdbf717 --- /dev/null +++ b/ACE/debianbuild/libace-htbp-dev.install @@ -0,0 +1,3 @@ +usr/include/ace/HTBP +usr/lib/libACE_HTBP.so +usr/lib/pkgconfig/ACE_HTBP.pc diff --git a/ACE/debianbuild/libace-qtreactor-5.6.8.install b/ACE/debianbuild/libace-qtreactor-5.6.8.install new file mode 100644 index 00000000000..7b9064dfd86 --- /dev/null +++ b/ACE/debianbuild/libace-qtreactor-5.6.8.install @@ -0,0 +1 @@ +usr/lib/libACE_QtReactor-*.so* diff --git a/ACE/debianbuild/libace-qtreactor-dev.install b/ACE/debianbuild/libace-qtreactor-dev.install new file mode 100644 index 00000000000..c5fd689c59a --- /dev/null +++ b/ACE/debianbuild/libace-qtreactor-dev.install @@ -0,0 +1,3 @@ +usr/lib/libACE_QtReactor.so +usr/include/ace/QtReactor +usr/lib/pkgconfig/ACE_QtReactor.pc diff --git a/ACE/debianbuild/libace-rmcast-5.6.8.install b/ACE/debianbuild/libace-rmcast-5.6.8.install new file mode 100644 index 00000000000..20aeea4c29b --- /dev/null +++ b/ACE/debianbuild/libace-rmcast-5.6.8.install @@ -0,0 +1 @@ +usr/lib/libACE_RMCast-*.so* diff --git a/ACE/debianbuild/libace-rmcast-dev.docs b/ACE/debianbuild/libace-rmcast-dev.docs new file mode 100644 index 00000000000..7e7b6b827e3 --- /dev/null +++ b/ACE/debianbuild/libace-rmcast-dev.docs @@ -0,0 +1 @@ +ACE_wrappers/protocols/ace/RMCast/README diff --git a/ACE/debianbuild/libace-rmcast-dev.install b/ACE/debianbuild/libace-rmcast-dev.install new file mode 100644 index 00000000000..9fffea503bc --- /dev/null +++ b/ACE/debianbuild/libace-rmcast-dev.install @@ -0,0 +1,3 @@ +usr/include/ace/RMCast +usr/lib/libACE_RMCast.so +usr/lib/pkgconfig/ACE_RMCast.pc diff --git a/ACE/debianbuild/libace-ssl-5.6.8.install b/ACE/debianbuild/libace-ssl-5.6.8.install new file mode 100644 index 00000000000..46f38fe8510 --- /dev/null +++ b/ACE/debianbuild/libace-ssl-5.6.8.install @@ -0,0 +1 @@ +usr/lib/libACE_SSL-*.so* diff --git a/ACE/debianbuild/libace-ssl-dev.install b/ACE/debianbuild/libace-ssl-dev.install new file mode 100644 index 00000000000..1a1c38eb201 --- /dev/null +++ b/ACE/debianbuild/libace-ssl-dev.install @@ -0,0 +1,3 @@ +usr/include/ace/SSL +usr/lib/libACE_SSL.so +usr/lib/pkgconfig/ACE_SSL.pc diff --git a/ACE/debianbuild/libace-tkreactor-5.6.8.install b/ACE/debianbuild/libace-tkreactor-5.6.8.install new file mode 100644 index 00000000000..38a14bc655f --- /dev/null +++ b/ACE/debianbuild/libace-tkreactor-5.6.8.install @@ -0,0 +1 @@ +usr/lib/libACE_TkReactor-*.so* diff --git a/ACE/debianbuild/libace-tkreactor-dev.install b/ACE/debianbuild/libace-tkreactor-dev.install new file mode 100644 index 00000000000..d61e98a09f8 --- /dev/null +++ b/ACE/debianbuild/libace-tkreactor-dev.install @@ -0,0 +1,3 @@ +usr/lib/libACE_TkReactor.so +usr/include/ace/TkReactor +usr/lib/pkgconfig/ACE_TkReactor.pc diff --git a/ACE/debianbuild/libace-tmcast-5.6.8.install b/ACE/debianbuild/libace-tmcast-5.6.8.install new file mode 100644 index 00000000000..024bf2de1bb --- /dev/null +++ b/ACE/debianbuild/libace-tmcast-5.6.8.install @@ -0,0 +1 @@ +usr/lib/libACE_TMCast-*.so* diff --git a/ACE/debianbuild/libace-tmcast-dev.docs b/ACE/debianbuild/libace-tmcast-dev.docs new file mode 100644 index 00000000000..e740752c6a4 --- /dev/null +++ b/ACE/debianbuild/libace-tmcast-dev.docs @@ -0,0 +1 @@ +ACE_wrappers/protocols/ace/TMCast/README diff --git a/ACE/debianbuild/libace-tmcast-dev.install b/ACE/debianbuild/libace-tmcast-dev.install new file mode 100644 index 00000000000..19eaad0d3cb --- /dev/null +++ b/ACE/debianbuild/libace-tmcast-dev.install @@ -0,0 +1,3 @@ +usr/include/ace/TMCast +usr/lib/libACE_TMCast.so +usr/lib/pkgconfig/ACE_TMCast.pc diff --git a/ACE/debianbuild/libace-xtreactor-5.6.8.install b/ACE/debianbuild/libace-xtreactor-5.6.8.install new file mode 100644 index 00000000000..f981828eb55 --- /dev/null +++ b/ACE/debianbuild/libace-xtreactor-5.6.8.install @@ -0,0 +1 @@ +usr/lib/libACE_XtReactor-*.so* diff --git a/ACE/debianbuild/libace-xtreactor-dev.install b/ACE/debianbuild/libace-xtreactor-dev.install new file mode 100644 index 00000000000..b24baea6a03 --- /dev/null +++ b/ACE/debianbuild/libace-xtreactor-dev.install @@ -0,0 +1,3 @@ +usr/lib/libACE_XtReactor.so +usr/include/ace/XtReactor +usr/lib/pkgconfig/ACE_XtReactor.pc diff --git a/ACE/debianbuild/libacexml-5.6.8.docs b/ACE/debianbuild/libacexml-5.6.8.docs new file mode 100644 index 00000000000..4ebd1c55c18 --- /dev/null +++ b/ACE/debianbuild/libacexml-5.6.8.docs @@ -0,0 +1 @@ +ACE_wrappers/ACEXML/README diff --git a/ACE/debianbuild/libacexml-5.6.8.install b/ACE/debianbuild/libacexml-5.6.8.install new file mode 100644 index 00000000000..2c0837e6b38 --- /dev/null +++ b/ACE/debianbuild/libacexml-5.6.8.install @@ -0,0 +1,3 @@ +usr/lib/libACEXML_XML_Svc_Conf_Parser-*.so* +usr/lib/libACEXML-*.so* +usr/lib/libACEXML_Parser-*.so* diff --git a/ACE/debianbuild/libacexml-dev.docs b/ACE/debianbuild/libacexml-dev.docs new file mode 100644 index 00000000000..77ec1b320a1 --- /dev/null +++ b/ACE/debianbuild/libacexml-dev.docs @@ -0,0 +1,3 @@ +ACE_wrappers/ACEXML/README +ACE_wrappers/ACEXML/docs +ACE_wrappers/ACEXML/examples diff --git a/ACE/debianbuild/libacexml-dev.install b/ACE/debianbuild/libacexml-dev.install new file mode 100644 index 00000000000..06b82c95daf --- /dev/null +++ b/ACE/debianbuild/libacexml-dev.install @@ -0,0 +1,5 @@ +usr/include/ACEXML +usr/lib/libACEXML.so +usr/lib/libACEXML_Parser.so +usr/lib/libACEXML_XML_Svc_Conf_Parser.so +usr/lib/pkgconfig/ACEXML*.pc diff --git a/ACE/debianbuild/libacexml-dev.links b/ACE/debianbuild/libacexml-dev.links new file mode 100644 index 00000000000..16f0027f673 --- /dev/null +++ b/ACE/debianbuild/libacexml-dev.links @@ -0,0 +1 @@ +usr/include/ACEXML usr/share/ace/ACEXML diff --git a/ACE/debianbuild/libkokyu-5.6.8.docs b/ACE/debianbuild/libkokyu-5.6.8.docs new file mode 100644 index 00000000000..35ee2dbe99c --- /dev/null +++ b/ACE/debianbuild/libkokyu-5.6.8.docs @@ -0,0 +1 @@ +ACE_wrappers/Kokyu/README diff --git a/ACE/debianbuild/libkokyu-5.6.8.install b/ACE/debianbuild/libkokyu-5.6.8.install new file mode 100644 index 00000000000..6bd63ce5377 --- /dev/null +++ b/ACE/debianbuild/libkokyu-5.6.8.install @@ -0,0 +1 @@ +usr/lib/libKokyu-*.so* diff --git a/ACE/debianbuild/libkokyu-dev.docs b/ACE/debianbuild/libkokyu-dev.docs new file mode 100644 index 00000000000..50165282295 --- /dev/null +++ b/ACE/debianbuild/libkokyu-dev.docs @@ -0,0 +1,3 @@ +ACE_wrappers/Kokyu/README +ACE_wrappers/Kokyu/docs +ACE_wrappers/Kokyu/tests diff --git a/ACE/debianbuild/libkokyu-dev.install b/ACE/debianbuild/libkokyu-dev.install new file mode 100644 index 00000000000..33ef826a07d --- /dev/null +++ b/ACE/debianbuild/libkokyu-dev.install @@ -0,0 +1,3 @@ +usr/include/Kokyu +usr/lib/libKokyu.so +usr/lib/pkgconfig/Kokyu.pc diff --git a/ACE/debianbuild/libkokyu-dev.links b/ACE/debianbuild/libkokyu-dev.links new file mode 100644 index 00000000000..eb6d21d003a --- /dev/null +++ b/ACE/debianbuild/libkokyu-dev.links @@ -0,0 +1 @@ +usr/include/Kokyu usr/share/ace/Kokyu diff --git a/ACE/debianbuild/libtao-1.6.8.docs b/ACE/debianbuild/libtao-1.6.8.docs new file mode 100644 index 00000000000..a79beab3449 --- /dev/null +++ b/ACE/debianbuild/libtao-1.6.8.docs @@ -0,0 +1,4 @@ +ACE_wrappers/TAO/README +ACE_wrappers/TAO/VERSION +ACE_wrappers/TAO/PROBLEM-REPORT-FORM +ACE_wrappers/TAO/NEWS diff --git a/ACE/debianbuild/libtao-1.6.8.install b/ACE/debianbuild/libtao-1.6.8.install new file mode 100644 index 00000000000..38fc18caa42 --- /dev/null +++ b/ACE/debianbuild/libtao-1.6.8.install @@ -0,0 +1,33 @@ +usr/lib/libTAO-*.so* +usr/lib/libTAO_AnyTypeCode-*.so* +usr/lib/libTAO_BiDirGIOP-*.so* +usr/lib/libTAO_CodecFactory-*.so* +usr/lib/libTAO_Codeset-*.so* +usr/lib/libTAO_Compression-*.so* +usr/lib/libTAO_CSD_Framework-*.so* +usr/lib/libTAO_CSD_ThreadPool-*.so* +usr/lib/libTAO_DynamicAny-*.so* +usr/lib/libTAO_DynamicInterface-*.so* +usr/lib/libTAO_EndpointPolicy-*.so* +usr/lib/libTAO_IFR_Client-*.so* +usr/lib/libTAO_IORInterceptor-*.so* +usr/lib/libTAO_IORManip-*.so* +usr/lib/libTAO_IORTable-*.so* +usr/lib/libTAO_Messaging-*.so* +usr/lib/libTAO_ObjRefTemplate-*.so* +usr/lib/libTAO_PI-*.so* +usr/lib/libTAO_PI_Server-*.so* +usr/lib/libTAO_PortableServer-*.so* +usr/lib/libTAO_RTCORBA-*.so* +usr/lib/libTAO_RTPortableServer-*.so* +usr/lib/libTAO_RTScheduler-*.so* +usr/lib/libTAO_SmartProxies-*.so* +usr/lib/libTAO_Strategies-*.so* +usr/lib/libTAO_TC-*.so* +usr/lib/libTAO_TC_IIOP-*.so* +usr/lib/libTAO_TypeCodeFactory-*.so* +usr/lib/libTAO_Utils-*.so* +usr/lib/libTAO_Valuetype-*.so* +usr/lib/libTAO_ImR_Client-*.so* +usr/lib/libTAO_DiffServPolicy-*.so* +usr/lib/libTAO_ZlibCompressor-*.so* diff --git a/ACE/debianbuild/libtao-dev.dirs b/ACE/debianbuild/libtao-dev.dirs new file mode 100644 index 00000000000..9ec18989c12 --- /dev/null +++ b/ACE/debianbuild/libtao-dev.dirs @@ -0,0 +1 @@ +usr/share/ace/TAO/MPC diff --git a/ACE/debianbuild/libtao-dev.docs b/ACE/debianbuild/libtao-dev.docs new file mode 100644 index 00000000000..e9b5ab32d7c --- /dev/null +++ b/ACE/debianbuild/libtao-dev.docs @@ -0,0 +1,3 @@ +ACE_wrappers/TAO/README +ACE_wrappers/TAO/VERSION +ACE_wrappers/TAO/PROBLEM-REPORT-FORM diff --git a/ACE/debianbuild/libtao-dev.install b/ACE/debianbuild/libtao-dev.install new file mode 100644 index 00000000000..b62a82dbd26 --- /dev/null +++ b/ACE/debianbuild/libtao-dev.install @@ -0,0 +1,97 @@ +usr/include/tao/*.{h,i,inl,idl,pidl,cpp} +usr/lib/libTAO.so +usr/lib/pkgconfig/TAO.pc +usr/include/tao/AnyTypeCode +usr/lib/libTAO_AnyTypeCode.so +usr/lib/pkgconfig/TAO_AnyTypeCode.pc +usr/include/tao/BiDir_GIOP +usr/lib/libTAO_BiDirGIOP.so +usr/lib/pkgconfig/TAO_BiDirGIOP.pc +usr/include/tao/CodecFactory +usr/lib/libTAO_CodecFactory.so +usr/lib/pkgconfig/TAO_CodecFactory.pc +usr/include/tao/Codeset +usr/lib/libTAO_Codeset.so +#usr/lib/pkgconfig/TAO_Codeset.pc +usr/include/tao/Compression +usr/lib/libTAO_Compression.so +usr/lib/pkgconfig/TAO_Compression.pc +usr/include/tao/CSD_Framework +usr/lib/libTAO_CSD_Framework.so +usr/lib/pkgconfig/TAO_CSD_Framework.pc +usr/include/tao/CSD_ThreadPool +usr/lib/libTAO_CSD_ThreadPool.so +usr/lib/pkgconfig/TAO_CSD_ThreadPool.pc +usr/include/tao/DynamicAny +usr/lib/libTAO_DynamicAny.so +usr/lib/pkgconfig/TAO_DynamicAny.pc +usr/include/tao/DynamicInterface +usr/lib/libTAO_DynamicInterface.so +usr/lib/pkgconfig/TAO_DynamicInterface.pc +usr/include/tao/EndpointPolicy +usr/lib/libTAO_EndpointPolicy.so +usr/lib/pkgconfig/TAO_EndpointPolicy.pc +usr/include/tao/IFR_Client +usr/lib/libTAO_IFR_Client.so +usr/lib/pkgconfig/TAO_IFR_Client.pc +usr/include/tao/ImR_Client +usr/lib/libTAO_ImR_Client.so +usr/lib/pkgconfig/TAO_ImR_Client.pc +usr/include/tao/IORInterceptor +usr/lib/libTAO_IORInterceptor.so +usr/lib/pkgconfig/TAO_IORInterceptor.pc +usr/include/tao/IORManipulation +usr/lib/libTAO_IORManip.so +usr/lib/pkgconfig/TAO_IORManip.pc +usr/include/tao/IORTable +usr/lib/libTAO_IORTable.so +usr/lib/pkgconfig/TAO_IORTable.pc +usr/include/tao/Messaging +usr/lib/libTAO_Messaging.so +usr/lib/pkgconfig/TAO_Messaging.pc +usr/include/tao/ObjRefTemplate +usr/lib/libTAO_ObjRefTemplate.so +usr/lib/pkgconfig/TAO_ObjRefTemplate.pc +usr/include/tao/PI +usr/lib/libTAO_PI.so +usr/lib/pkgconfig/TAO_PI.pc +usr/include/tao/PI_Server +usr/lib/libTAO_PI_Server.so +usr/lib/pkgconfig/TAO_PI_Server.pc +usr/include/tao/PortableServer +usr/lib/libTAO_PortableServer.so +usr/lib/pkgconfig/TAO_PortableServer.pc +usr/include/tao/RTCORBA +usr/lib/libTAO_RTCORBA.so +usr/lib/pkgconfig/TAO_RTCORBA.pc +usr/include/tao/RTPortableServer +usr/lib/libTAO_RTPortableServer.so +usr/lib/pkgconfig/TAO_RTPortableServer.pc +usr/include/tao/RTScheduling +usr/lib/libTAO_RTScheduler.so +usr/lib/pkgconfig/TAO_RTScheduler.pc +usr/include/tao/SmartProxies +usr/lib/libTAO_SmartProxies.so +usr/lib/pkgconfig/TAO_SmartProxies.pc +usr/include/tao/Strategies +usr/lib/libTAO_Strategies.so +usr/lib/pkgconfig/TAO_Strategies.pc +usr/include/tao/TransportCurrent +usr/lib/libTAO_TC.so +usr/lib/libTAO_TC_IIOP.so +usr/include/tao/TypeCodeFactory +usr/lib/libTAO_TypeCodeFactory.so +usr/lib/pkgconfig/TAO_TypeCodeFactory.pc +usr/include/tao/Utils +usr/lib/libTAO_Utils.so +usr/lib/pkgconfig/TAO_Utils.pc +usr/include/tao/Valuetype +usr/lib/libTAO_Valuetype.so +usr/lib/pkgconfig/TAO_Valuetype.pc +usr/lib/libTAO_DiffServPolicy.so +usr/lib/pkgconfig/TAO_DiffServPolicy.pc +usr/include/tao/DiffServPolicy +usr/lib/libTAO_ZlibCompressor.so +usr/lib/pkgconfig/TAO_ZlibCompressor.pc +../../ACE_wrappers/TAO/MPC/config usr/share/ace/TAO/MPC +../../ACE_wrappers/TAO/rules.tao.GNU usr/share/ace/TAO diff --git a/ACE/debianbuild/libtao-dev.links b/ACE/debianbuild/libtao-dev.links new file mode 100644 index 00000000000..d07668bc513 --- /dev/null +++ b/ACE/debianbuild/libtao-dev.links @@ -0,0 +1 @@ +usr/include/tao usr/share/ace/TAO/tao diff --git a/ACE/debianbuild/libtao-doc.docs b/ACE/debianbuild/libtao-doc.docs new file mode 100644 index 00000000000..23026c0f89d --- /dev/null +++ b/ACE/debianbuild/libtao-doc.docs @@ -0,0 +1,3 @@ +ACE_wrappers/TAO/docs +ACE_wrappers/TAO/examples +ACE_wrappers/html/tao/* diff --git a/ACE/debianbuild/libtao-flresource-1.6.8.install b/ACE/debianbuild/libtao-flresource-1.6.8.install new file mode 100644 index 00000000000..5387bf74f53 --- /dev/null +++ b/ACE/debianbuild/libtao-flresource-1.6.8.install @@ -0,0 +1 @@ +usr/lib/libTAO_FlResource-*.so* diff --git a/ACE/debianbuild/libtao-flresource-dev.install b/ACE/debianbuild/libtao-flresource-dev.install new file mode 100644 index 00000000000..218c4c24c75 --- /dev/null +++ b/ACE/debianbuild/libtao-flresource-dev.install @@ -0,0 +1,2 @@ +usr/lib/libTAO_FlResource.so +usr/include/tao/FlResource diff --git a/ACE/debianbuild/libtao-foxresource-1.6.8.install b/ACE/debianbuild/libtao-foxresource-1.6.8.install new file mode 100644 index 00000000000..bfaad19f8eb --- /dev/null +++ b/ACE/debianbuild/libtao-foxresource-1.6.8.install @@ -0,0 +1 @@ +usr/lib/libTAO_FoxResource-*.so* diff --git a/ACE/debianbuild/libtao-foxresource-dev.install b/ACE/debianbuild/libtao-foxresource-dev.install new file mode 100644 index 00000000000..b3b52d4941d --- /dev/null +++ b/ACE/debianbuild/libtao-foxresource-dev.install @@ -0,0 +1,2 @@ +usr/lib/libTAO_FoxResource.so +usr/include/tao/FoxResource diff --git a/ACE/debianbuild/libtao-orbsvcs-1.6.8.NEWS b/ACE/debianbuild/libtao-orbsvcs-1.6.8.NEWS new file mode 100644 index 00000000000..ea0759e0ade --- /dev/null +++ b/ACE/debianbuild/libtao-orbsvcs-1.6.8.NEWS @@ -0,0 +1,6 @@ +ace (5.4.7-11) unstable; urgency=low + + The libtao-orbsvcs1.4.7c2a package was split into smaller packages. + Please install the tao-* packages that suit your needs. + + -- Thomas Girard <thomas.g.girard@free.fr> Sat, 23 Sep 2006 09:47:01 +0200 diff --git a/ACE/debianbuild/libtao-orbsvcs-1.6.8.install b/ACE/debianbuild/libtao-orbsvcs-1.6.8.install new file mode 100644 index 00000000000..59883c71dea --- /dev/null +++ b/ACE/debianbuild/libtao-orbsvcs-1.6.8.install @@ -0,0 +1,59 @@ +usr/lib/libTAO_AV-*.so* +usr/lib/libTAO_CosConcurrency-*.so* +usr/lib/libTAO_CosConcurrency_Skel-*.so* +usr/lib/libTAO_CosConcurrency_Serv-*.so* +usr/lib/libTAO_CosEvent-*.so* +usr/lib/libTAO_CosEvent_Skel-*.so* +usr/lib/libTAO_CosEvent_Serv-*.so* +usr/lib/libTAO_CosLifeCycle-*.so* +usr/lib/libTAO_CosLoadBalancing-*.so* +usr/lib/libTAO_CosNaming-*.so* +usr/lib/libTAO_CosNaming_Skel-*.so* +usr/lib/libTAO_CosNaming_Serv-*.so* +usr/lib/libTAO_CosNotification-*.so* +usr/lib/libTAO_CosNotification_Persist-*.so* +usr/lib/libTAO_CosNotification_Skel-*.so* +usr/lib/libTAO_CosNotification_Serv-*.so* +usr/lib/libTAO_CosNotification_MC-*.so* +usr/lib/libTAO_CosNotification_MC_Ext-*.so* +usr/lib/libTAO_CosProperty-*.so* +usr/lib/libTAO_CosProperty_Skel-*.so* +usr/lib/libTAO_CosProperty_Serv-*.so* +usr/lib/libTAO_CosTime-*.so* +usr/lib/libTAO_CosTrading-*.so* +usr/lib/libTAO_CosTrading_Skel-*.so* +usr/lib/libTAO_CosTrading_Serv-*.so* +usr/lib/libTAO_DsEventLogAdmin-*.so* +usr/lib/libTAO_DsEventLogAdmin_Skel-*.so* +usr/lib/libTAO_DsEventLogAdmin_Serv-*.so* +usr/lib/libTAO_DsLogAdmin-*.so* +usr/lib/libTAO_DsLogAdmin_Skel-*.so* +usr/lib/libTAO_DsLogAdmin_Serv-*.so* +usr/lib/libTAO_DsNotifyLogAdmin-*.so* +usr/lib/libTAO_DsNotifyLogAdmin_Skel-*.so* +usr/lib/libTAO_DsNotifyLogAdmin_Serv-*.so* +usr/lib/libTAO_ETCL-*.so* +usr/lib/libTAO_FaultTolerance-*.so* +usr/lib/libTAO_FT_ClientORB-*.so* +usr/lib/libTAO_FT_ServerORB-*.so* +usr/lib/libTAO_FTORB_Utils-*.so* +usr/lib/libTAO_FTRT_EventChannel-*.so* +usr/lib/libTAO_FtRtEvent-*.so* +usr/lib/libTAO_FTRT_ClientORB-*.so* +usr/lib/libTAO_HTIOP-*.so* +usr/lib/libTAO_IFRService-*.so* +usr/lib/libTAO_PortableGroup-*.so* +usr/lib/libTAO_RTCORBAEvent-*.so* +usr/lib/libTAO_RTEvent-*.so* +usr/lib/libTAO_RTEvent_Serv-*.so* +usr/lib/libTAO_RTEvent_Skel-*.so* +usr/lib/libTAO_RTEventLogAdmin-*.so* +usr/lib/libTAO_RTEventLogAdmin_Skel-*.so* +usr/lib/libTAO_RTEventLogAdmin_Serv-*.so* +usr/lib/libTAO_RTKokyuEvent-*.so* +usr/lib/libTAO_RTSched-*.so* +usr/lib/libTAO_RTSchedEvent-*.so* +usr/lib/libTAO_RT_Notification-*.so* +usr/lib/libTAO_SSLIOP-*.so* +usr/lib/libTAO_Security-*.so* +usr/lib/libTAO_Svc_Utils-*.so* diff --git a/ACE/debianbuild/libtao-orbsvcs-dev.install b/ACE/debianbuild/libtao-orbsvcs-dev.install new file mode 100644 index 00000000000..bc2098b0585 --- /dev/null +++ b/ACE/debianbuild/libtao-orbsvcs-dev.install @@ -0,0 +1,117 @@ +usr/include/orbsvcs +usr/lib/libTAO_AV.so +usr/lib/libTAO_CosConcurrency.so +usr/lib/libTAO_CosConcurrency_Skel.so +usr/lib/libTAO_CosConcurrency_Serv.so +usr/lib/libTAO_CosEvent.so +usr/lib/libTAO_CosEvent_Skel.so +usr/lib/libTAO_CosEvent_Serv.so +usr/lib/libTAO_CosLifeCycle.so +usr/lib/libTAO_CosLoadBalancing.so +usr/lib/libTAO_CosNaming.so +usr/lib/libTAO_CosNaming_Skel.so +usr/lib/libTAO_CosNaming_Serv.so +usr/lib/libTAO_CosNotification.so +usr/lib/libTAO_CosNotification_Persist.so +usr/lib/libTAO_CosNotification_Skel.so +usr/lib/libTAO_CosNotification_Serv.so +usr/lib/libTAO_CosNotification_MC.so +usr/lib/libTAO_CosNotification_MC_Ext.so +usr/lib/libTAO_CosProperty.so +usr/lib/libTAO_CosProperty_Skel.so +usr/lib/libTAO_CosProperty_Serv.so +usr/lib/libTAO_CosTime.so +usr/lib/libTAO_CosTrading.so +usr/lib/libTAO_CosTrading_Skel.so +usr/lib/libTAO_CosTrading_Serv.so +usr/lib/libTAO_DsEventLogAdmin.so +usr/lib/libTAO_DsEventLogAdmin_Skel.so +usr/lib/libTAO_DsEventLogAdmin_Serv.so +usr/lib/libTAO_DsLogAdmin.so +usr/lib/libTAO_DsLogAdmin_Skel.so +usr/lib/libTAO_DsLogAdmin_Serv.so +usr/lib/libTAO_DsNotifyLogAdmin.so +usr/lib/libTAO_DsNotifyLogAdmin_Skel.so +usr/lib/libTAO_DsNotifyLogAdmin_Serv.so +usr/lib/libTAO_ETCL.so +usr/lib/libTAO_FT_ServerORB.so +usr/lib/libTAO_FT_ClientORB.so +usr/lib/libTAO_FTORB_Utils.so +usr/lib/libTAO_FaultTolerance.so +usr/lib/libTAO_HTIOP.so +usr/lib/libTAO_IFRService.so +usr/lib/libTAO_PortableGroup.so +usr/lib/libTAO_RTCORBAEvent.so +usr/lib/libTAO_RTEvent.so +usr/lib/libTAO_RTEvent_Serv.so +usr/lib/libTAO_RTEvent_Skel.so +usr/lib/libTAO_RTEventLogAdmin.so +usr/lib/libTAO_RTEventLogAdmin_Skel.so +usr/lib/libTAO_RTEventLogAdmin_Serv.so +usr/lib/libTAO_RTKokyuEvent.so +usr/lib/libTAO_RTSched.so +usr/lib/libTAO_RTSchedEvent.so +usr/lib/libTAO_RT_Notification.so +usr/lib/libTAO_SSLIOP.so +usr/lib/libTAO_Security.so +usr/lib/libTAO_Svc_Utils.so +usr/lib/libTAO_FTRT_EventChannel.so +usr/lib/libTAO_FtRtEvent.so +usr/lib/libTAO_FTRT_ClientORB.so +#usr/lib/pkgconfig/TAO_AV.pc +usr/lib/pkgconfig/TAO_CosConcurrency.pc +usr/lib/pkgconfig/TAO_CosConcurrency_Skel.pc +usr/lib/pkgconfig/TAO_CosConcurrency_Serv.pc +usr/lib/pkgconfig/TAO_CosEvent.pc +usr/lib/pkgconfig/TAO_CosEvent_Skel.pc +usr/lib/pkgconfig/TAO_CosEvent_Serv.pc +usr/lib/pkgconfig/TAO_CosLifeCycle.pc +usr/lib/pkgconfig/TAO_CosLoadBalancing.pc +usr/lib/pkgconfig/TAO_CosNaming.pc +usr/lib/pkgconfig/TAO_CosNaming_Skel.pc +usr/lib/pkgconfig/TAO_CosNaming_Serv.pc +usr/lib/pkgconfig/TAO_CosNotification.pc +usr/lib/pkgconfig/TAO_CosNotification_Skel.pc +usr/lib/pkgconfig/TAO_CosNotification_Serv.pc +#usr/lib/pkgconfig/TAO_CosNotification_Persist.pc +usr/lib/pkgconfig/TAO_CosProperty.pc +usr/lib/pkgconfig/TAO_CosProperty_Skel.pc +usr/lib/pkgconfig/TAO_CosProperty_Serv.pc +usr/lib/pkgconfig/TAO_CosTime.pc +usr/lib/pkgconfig/TAO_CosTrading.pc +usr/lib/pkgconfig/TAO_CosTrading_Skel.pc +usr/lib/pkgconfig/TAO_CosTrading_Serv.pc +usr/lib/pkgconfig/TAO_DsEventLogAdmin.pc +usr/lib/pkgconfig/TAO_DsEventLogAdmin_Skel.pc +usr/lib/pkgconfig/TAO_DsEventLogAdmin_Serv.pc +usr/lib/pkgconfig/TAO_DsLogAdmin.pc +usr/lib/pkgconfig/TAO_DsLogAdmin_Skel.pc +usr/lib/pkgconfig/TAO_DsLogAdmin_Serv.pc +usr/lib/pkgconfig/TAO_DsNotifyLogAdmin.pc +usr/lib/pkgconfig/TAO_DsNotifyLogAdmin_Skel.pc +usr/lib/pkgconfig/TAO_DsNotifyLogAdmin_Serv.pc +usr/lib/pkgconfig/TAO_ETCL.pc +usr/lib/pkgconfig/TAO_FT_ServerORB.pc +usr/lib/pkgconfig/TAO_FT_ClientORB.pc +usr/lib/pkgconfig/TAO_FTORB_Utils.pc +usr/lib/pkgconfig/TAO_FaultTolerance.pc +#usr/lib/pkgconfig/TAO_IFRService.pc +#usr/lib/pkgconfig/TAO_HTIOP.pc +usr/lib/pkgconfig/TAO_PortableGroup.pc +#usr/lib/pkgconfig/TAO_RTCORBAEvent.pc +usr/lib/pkgconfig/TAO_RTEvent.pc +usr/lib/pkgconfig/TAO_RTEvent_Serv.pc +usr/lib/pkgconfig/TAO_RTEvent_Skel.pc +usr/lib/pkgconfig/TAO_RTEventLogAdmin.pc +usr/lib/pkgconfig/TAO_RTEventLogAdmin_Skel.pc +usr/lib/pkgconfig/TAO_RTEventLogAdmin_Serv.pc +#usr/lib/pkgconfig/TAO_RTKokyuEvent.pc +#usr/lib/pkgconfig/TAO_RTSched.pc +#usr/lib/pkgconfig/TAO_RTSchedEvent.pc +#usr/lib/pkgconfig/TAO_RT_Notification.pc +#usr/lib/pkgconfig/TAO_SSLIOP.pc +#usr/lib/pkgconfig/TAO_Security.pc +usr/lib/pkgconfig/TAO_Svc_Utils.pc +#usr/lib/pkgconfig/TAO_FTRT_EventChannel.pc +#usr/lib/pkgconfig/TAO_FtRtEvent.pc +#usr/lib/pkgconfig/TAO_FTRT_ClientORB.pc diff --git a/ACE/debianbuild/libtao-orbsvcs-dev.links b/ACE/debianbuild/libtao-orbsvcs-dev.links new file mode 100644 index 00000000000..42fe43bc2a7 --- /dev/null +++ b/ACE/debianbuild/libtao-orbsvcs-dev.links @@ -0,0 +1 @@ +usr/include/orbsvcs usr/share/ace/TAO/orbsvcs diff --git a/ACE/debianbuild/libtao-qtresource-1.6.8.install b/ACE/debianbuild/libtao-qtresource-1.6.8.install new file mode 100644 index 00000000000..b5af230536e --- /dev/null +++ b/ACE/debianbuild/libtao-qtresource-1.6.8.install @@ -0,0 +1 @@ +usr/lib/libTAO_QtResource-*.so* diff --git a/ACE/debianbuild/libtao-qtresource-dev.install b/ACE/debianbuild/libtao-qtresource-dev.install new file mode 100644 index 00000000000..d4bfe3864c8 --- /dev/null +++ b/ACE/debianbuild/libtao-qtresource-dev.install @@ -0,0 +1,2 @@ +usr/lib/libTAO_QtResource.so +usr/include/tao/QtResource diff --git a/ACE/debianbuild/libtao-tkresource-1.6.8.install b/ACE/debianbuild/libtao-tkresource-1.6.8.install new file mode 100644 index 00000000000..9de803ef62b --- /dev/null +++ b/ACE/debianbuild/libtao-tkresource-1.6.8.install @@ -0,0 +1 @@ +usr/lib/libTAO_TkResource-*.so* diff --git a/ACE/debianbuild/libtao-tkresource-dev.install b/ACE/debianbuild/libtao-tkresource-dev.install new file mode 100644 index 00000000000..daaa40e9b7e --- /dev/null +++ b/ACE/debianbuild/libtao-tkresource-dev.install @@ -0,0 +1,2 @@ +usr/lib/libTAO_TkResource.so +usr/include/tao/TkResource diff --git a/ACE/debianbuild/libtao-xtresource-1.6.8.install b/ACE/debianbuild/libtao-xtresource-1.6.8.install new file mode 100644 index 00000000000..b6a1ca56d3c --- /dev/null +++ b/ACE/debianbuild/libtao-xtresource-1.6.8.install @@ -0,0 +1 @@ +usr/lib/libTAO_XtResource-*.so* diff --git a/ACE/debianbuild/libtao-xtresource-dev.install b/ACE/debianbuild/libtao-xtresource-dev.install new file mode 100644 index 00000000000..24782aea620 --- /dev/null +++ b/ACE/debianbuild/libtao-xtresource-dev.install @@ -0,0 +1,2 @@ +usr/lib/libTAO_XtResource.so +usr/include/tao/XtResource diff --git a/ACE/debianbuild/mpc-ace.docs b/ACE/debianbuild/mpc-ace.docs new file mode 100644 index 00000000000..fb3dd6ec92c --- /dev/null +++ b/ACE/debianbuild/mpc-ace.docs @@ -0,0 +1,3 @@ +ACE_wrappers/MPC/ChangeLog +ACE_wrappers/MPC/docs/README +ACE_wrappers/MPC/docs/USAGE diff --git a/ACE/debianbuild/mpc-ace.install b/ACE/debianbuild/mpc-ace.install new file mode 100644 index 00000000000..a6820c5fa42 --- /dev/null +++ b/ACE/debianbuild/mpc-ace.install @@ -0,0 +1,8 @@ +usr/bin/mpc-ace +usr/bin/mwc-ace +../../ACE_wrappers/bin/MakeProjectCreator usr/share/ace/bin +../../ACE_wrappers/MPC/config usr/share/ace/MPC +../../ACE_wrappers/MPC/modules usr/share/ace/MPC +../../ACE_wrappers/MPC/templates usr/share/ace/MPC +../../ACE_wrappers/MPC/*.pl usr/share/ace/MPC +../../ACE_wrappers/MPC/ChangeLog usr/share/ace/MPC diff --git a/ACE/debianbuild/mpc-ace.links b/ACE/debianbuild/mpc-ace.links new file mode 100644 index 00000000000..e0fc68a6beb --- /dev/null +++ b/ACE/debianbuild/mpc-ace.links @@ -0,0 +1,3 @@ +usr/bin/mpc-ace usr/share/ace/bin/mpc.pl +usr/bin/mwc-ace usr/share/ace/bin/mwc.pl +usr/share/man/man1/mpc-ace.1.gz usr/share/man/man1/mwc-ace.1.gz diff --git a/ACE/debianbuild/mpc-ace.manpages b/ACE/debianbuild/mpc-ace.manpages new file mode 100644 index 00000000000..59e55053a00 --- /dev/null +++ b/ACE/debianbuild/mpc-ace.manpages @@ -0,0 +1 @@ +debian/mpc-ace.1 diff --git a/ACE/debianbuild/patches/00list b/ACE/debianbuild/patches/00list new file mode 100644 index 00000000000..58876f97286 --- /dev/null +++ b/ACE/debianbuild/patches/00list @@ -0,0 +1,9 @@ +01-change-tao-sonames +02-fltk-no-gl +02-qt4 +04-reduce-opt +12-fix-fox-include +15-fix-fltk-include +34-bts386713 +50-prepatch-dummy-mark +92-default-ACE_ROOT diff --git a/ACE/debianbuild/patches/00patch-opts b/ACE/debianbuild/patches/00patch-opts new file mode 100644 index 00000000000..d49694774c8 --- /dev/null +++ b/ACE/debianbuild/patches/00patch-opts @@ -0,0 +1,21 @@ +# -*- shell-script -*- #vim:syntax=sh +# By default dpatch works with -p1 (patch level 1) which works +# fine with one working directory, e.g. ACE_wrappers. While +# two working directories exist the default -p1 makes thinks +# complicate. Instaed of recreate patches we overwrite the +# dpatch_patch and dpatch_unpatch functions with -p0. +# See /usr/share/dpatch/dpatch.lib.sh for more implementation +# details on this issue. +# -- Raphael Bossek <bossekr@debian.org> + +DPATCH_LIB_NO_DEFAULT="no" + +dpatch_patch () +{ + patch -p0 $* +} + +dpatch_unpatch () +{ + patch -p0 -R $* +} diff --git a/ACE/debianbuild/patches/01-change-tao-sonames.dpatch b/ACE/debianbuild/patches/01-change-tao-sonames.dpatch new file mode 100644 index 00000000000..0f1c3a7a9af --- /dev/null +++ b/ACE/debianbuild/patches/01-change-tao-sonames.dpatch @@ -0,0 +1,33 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 01-change_tao_sonames.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: propagate TAO_VERSION_NAME in all TAO Makefile.am files. + +@DPATCH@ +--- ACE_wrappers.orig/TAO/configure.ac ++++ ACE_wrappers/TAO/configure.ac +@@ -149,10 +149,12 @@ + TAO_MAJOR=$2 + TAO_MINOR=$3 + TAO_BETA=$4 ++TAO_VERSION_NAME=TAO_VERSION + + AC_SUBST([TAO_MAJOR]) + AC_SUBST([TAO_MINOR]) + AC_SUBST([TAO_BETA]) ++AC_SUBST([TAO_VERSION_NAME]) + + dnl We should have --with/--enable flags for these options. + dnl Until we do, set them to reasonable defaults. +--- ACE_wrappers.orig/TAO/MPC/config/taodefaults.mpb ++++ ACE_wrappers/TAO/MPC/config/taodefaults.mpb +@@ -7,7 +7,7 @@ + libpaths += $(ACE_ROOT)/lib + + specific(automake) { +- am_version = @TAO_MAJOR@:@TAO_MINOR@:@TAO_BETA@ ++ am_release = @TAO_VERSION_NAME@ + includes += $(TAO_BUILDDIR) + libpaths -= $(ACE_ROOT)/lib + } diff --git a/ACE/debianbuild/patches/02-fltk-no-gl.dpatch b/ACE/debianbuild/patches/02-fltk-no-gl.dpatch new file mode 100644 index 00000000000..1828c31e2b0 --- /dev/null +++ b/ACE/debianbuild/patches/02-fltk-no-gl.dpatch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 02-fltk-no-gl.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## DP: do not link against libfltk_gl + +@DPATCH@ +--- ACE_wrappers.orig/m4/ace.m4 ++++ ACE_wrappers/m4/ace.m4 +@@ -1180,8 +1180,8 @@ + fi + fi + if test X"${FLTKCONFIG}" != X; then +- ACE_FLTK_CPPFLAGS=`$FLTKCONFIG --use-gl --cxxflags 2>/dev/null` +- ACE_FLTK_LIBS=`$FLTKCONFIG --use-gl --ldflags 2>/dev/null` ++ ACE_FLTK_CPPFLAGS=`$FLTKCONFIG --cxxflags 2>/dev/null` ++ ACE_FLTK_LIBS=`$FLTKCONFIG --ldflags 2>/dev/null` + + AC_SUBST(ACE_FLTK_CPPFLAGS) + AC_SUBST(ACE_FLTK_LIBS) diff --git a/ACE/debianbuild/patches/02-qt4.dpatch b/ACE/debianbuild/patches/02-qt4.dpatch new file mode 100644 index 00000000000..5a0501f024b --- /dev/null +++ b/ACE/debianbuild/patches/02-qt4.dpatch @@ -0,0 +1,32 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 02-qt4.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: detect Qt4 instead of Qt3 + +@DPATCH@ +--- ACE_wrappers.orig/m4/ace.m4 ++++ ACE_wrappers/m4/ace.m4 +@@ -1265,18 +1265,18 @@ + AC_DEFUN([ACE_PATH_QT], + [ + ac_qt_found=no +- PKG_CHECK_MODULES([Qt], [qt-mt], ++ PKG_CHECK_MODULES([Qt4], [QtCore QtGui], + [ac_qt_found=yes], + [AC_MSG_RESULT([not found])]) + if test X"${ac_qt_found}" = Xyes; then +- ACE_QT_CPPFLAGS="${Qt_CFLAGS}" +- ACE_QT_LIBS="${Qt_LIBS}" ++ ACE_QT_CPPFLAGS="${Qt4_CFLAGS}" ++ ACE_QT_LIBS="${Qt4_LIBS}" + AC_SUBST(ACE_QT_CPPFLAGS) + AC_SUBST(ACE_QT_LIBS) + + AS_IF([test -n "$QTDIR"], + [], +- [QTDIR=`$PKG_CONFIG --variable=prefix qt-mt 2>/dev/null`]) ++ [QTDIR=`$PKG_CONFIG --variable=prefix QtCore 2>/dev/null`]) + AC_SUBST(QTDIR) + fi + ]) diff --git a/ACE/debianbuild/patches/04-reduce-opt.dpatch b/ACE/debianbuild/patches/04-reduce-opt.dpatch new file mode 100644 index 00000000000..7f072829c7e --- /dev/null +++ b/ACE/debianbuild/patches/04-reduce-opt.dpatch @@ -0,0 +1,18 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 04-reduce-opt.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: drop -O3 default optimization level + +@DPATCH@ +--- ACE_wrappers.orig/m4/compiler.m4 ++++ ACE_wrappers/m4/compiler.m4 +@@ -234,7 +234,7 @@ + CXXFLAGS="$CXXFLAGS" + ACE_CXXFLAGS="$ACE_CXXFLAGS" + DCXXFLAGS="$DCXXFLAGS" +- OCXXFLAGS="-O3" ++ OCXXFLAGS="" + fi + ;; + esac diff --git a/ACE/debianbuild/patches/05-autoconf-fox.dpatch b/ACE/debianbuild/patches/05-autoconf-fox.dpatch new file mode 100644 index 00000000000..0315ab11eec --- /dev/null +++ b/ACE/debianbuild/patches/05-autoconf-fox.dpatch @@ -0,0 +1,116 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 05-autoconf-fox.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: add autoconf support for Fox + +@DPATCH@ +--- ACE_wrappers.orig/m4/ace.m4 ++++ ACE_wrappers/m4/ace.m4 +@@ -501,6 +501,7 @@ + ACE_ENABLE_QT_REACTOR + ACE_ENABLE_TK_REACTOR + ACE_ENABLE_XT_REACTOR ++ ACE_ENABLE_FOX_REACTOR + + # placeholder for WxWindows/wxWidgets support + AM_CONDITIONAL([BUILD_WXWINDOWS], false) +@@ -1543,4 +1544,58 @@ + [test X$ace_user_enable_xt_reactor = Xyes]) + ]) + ++# ACE_PATH_FOX ++#--------------------------------------------------------------------------- ++AC_DEFUN([ACE_PATH_FOX], ++[AC_ARG_WITH([fox-config], ++ AS_HELP_STRING([--with-fox-config=PATH], ++ [path to fox-config [[automatic]]]), ++ [ ac_fox_config="${withval}" ]) ++ if test X"${ac_fox_config}" = X; then ++ AC_PATH_PROG([FOXCONFIG], [fox-config], [], []) ++ else ++ AC_MSG_CHECKING([whether ${ac_fox_config} exists]) ++ if test -f "${ac_fox_config}"; then ++ FOXCONFIG="${ac_fox_config}" ++ AC_MSG_RESULT([yes]) ++ else ++ AC_MSG_RESULT([no]) ++ fi ++ fi ++ if test X"${FOXCONFIG}" != X; then ++ ACE_FOX_CPPFLAGS=-I/usr/include/fox-1.6 ++ ACE_FOX_LIBS=-lFOX-1.6 ++ AC_SUBST(ACE_FOX_CPPFLAGS) ++ AC_SUBST(ACE_FOX_LIBS) ++ fi ++]) + ++# ACE_ENABLE_FOX_REACTOR ++#--------------------------------------------------------------------------- ++AC_DEFUN([ACE_ENABLE_FOX_REACTOR], ++[AC_REQUIRE([ACE_PATH_FOX]) ++AC_ARG_ENABLE([fox-reactor], ++ AS_HELP_STRING([--enable-fox-reactor], ++ [build support for the FoxReactor [[no]]]), ++ [case "${enableval}" in ++ yes) ++ AS_IF([test X"${FOXCONFIG}" != X], ++ [ace_user_enable_fox_reactor=yes], ++ [AC_MSG_ERROR([ACE_FoxReactor cannot be enabled: fox-config not found.])]) ++ ;; ++ no) ++ ace_user_enable_fox_reactor=no ++ ;; ++ *) ++ AC_MSG_ERROR([bad value ${enableval} for --enable-fox-reactor]) ++ ;; ++ esac], ++ [ ++ ace_user_enable_fox_reactor=no ++ ]) ++AM_CONDITIONAL([BUILD_FOX], [test X$ace_user_enable_fox_reactor = Xyes]) ++AM_CONDITIONAL([BUILD_ACE_FOXREACTOR], ++ [test X$ace_user_enable_fox_reactor = Xyes]) ++AM_CONDITIONAL([BUILD_TAO_FOXRESOURCE], ++ [test X$ace_user_enable_fox_reactor = Xyes]) ++]) +--- ACE_wrappers.orig/bin/MakeProjectCreator/config/global.features ++++ ACE_wrappers/bin/MakeProjectCreator/config/global.features +@@ -90,6 +90,8 @@ + ace_tkreactor = 1 + // Use FlReactor + ace_flreactor = 1 ++// Use FoxReactor ++ace_foxreactor = 1 + + // Features for TAO support for various GUI libraries + // Use QtResources for TAO +@@ -100,6 +102,8 @@ + tao_tkresource = 1 + // Use FlResources for TAO + tao_flresource = 1 ++// Use FoxResources for TAO ++tao_foxresource = 1 + + //Use the ZIP_Wrapper feature for when using the ZIP wrapper classes + ZIP_Wrapper = 0 +--- ACE_wrappers.orig/ace/ace.mwc ++++ ACE_wrappers/ace/ace.mwc +@@ -6,6 +6,7 @@ + ace.mpc + ace_for_tao.mpc + ace_flreactor.mpc ++ ace_foxreactor.mpc + ace_qtreactor.mpc + ace_tkreactor.mpc + ace_xtreactor.mpc +--- ACE_wrappers.orig/TAO/configure.ac ++++ ACE_wrappers/TAO/configure.ac +@@ -183,6 +183,7 @@ + ACE_ENABLE_QT_REACTOR + ACE_ENABLE_TK_REACTOR + ACE_ENABLE_XT_REACTOR ++ACE_ENABLE_FOX_REACTOR + ACE_PATH_ZZIP + ACE_PATH_ZLIB + diff --git a/ACE/debianbuild/patches/06-fix-kokyu-mpc.dpatch b/ACE/debianbuild/patches/06-fix-kokyu-mpc.dpatch new file mode 100644 index 00000000000..9d08731ca6f --- /dev/null +++ b/ACE/debianbuild/patches/06-fix-kokyu-mpc.dpatch @@ -0,0 +1,18 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 06-revert-mpc-kokyu-change.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: use upstream patch to unbreak Kokyu library search path + +@DPATCH@ +--- ACE_wrappers.orig/bin/MakeProjectCreator/modules/AutomakeWorkspaceHelper.pm ++++ ACE_wrappers/bin/MakeProjectCreator/modules/AutomakeWorkspaceHelper.pm +@@ -135,7 +135,7 @@ + $reldir = 'Kokyu'; + } + } +- $str =~ s!$libname!\$(top_builddir)/$reldir/$libname!; ++ $str =~ s!$libname!\$(ACE_BUILDDIR)/$reldir/$libname!; + return $str; + } + elsif ($libname =~ /^lib(tao|kokyu)/i) { diff --git a/ACE/debianbuild/patches/07-autoconf-fix-gperf.dpatch b/ACE/debianbuild/patches/07-autoconf-fix-gperf.dpatch new file mode 100644 index 00000000000..27332fe00b8 --- /dev/null +++ b/ACE/debianbuild/patches/07-autoconf-fix-gperf.dpatch @@ -0,0 +1,18 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 07-autoconf-fix-gperf.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: fix an autotools error in GPERF handling. + +@DPATCH@ +--- ACE_wrappers.orig/m4/ace.m4 ++++ ACE_wrappers/m4/ace.m4 +@@ -535,7 +535,7 @@ + AC_MSG_WARN([existing gperf may be overwritten during installation]) + ],[]) + fi +- AM_CONDITIONAL([COMPILE_GPERF], [test X$ace_user_enable_gperf = Xyes]) ++ AM_CONDITIONAL([BUILD_GPERF], [test X$ace_user_enable_gperf = Xyes]) + + ACE_ENABLE_QOS + ACE_ENABLE_SSL diff --git a/ACE/debianbuild/patches/09-autoconf-fix-no-base-include-headers.diff b/ACE/debianbuild/patches/09-autoconf-fix-no-base-include-headers.diff new file mode 100644 index 00000000000..b026082d727 --- /dev/null +++ b/ACE/debianbuild/patches/09-autoconf-fix-no-base-include-headers.diff @@ -0,0 +1,19 @@ +--- ACE_wrappers.orig/ace/Makefile.am ++++ ACE_wrappers/ace/Makefile.am +@@ -10,6 +10,7 @@ + + includedir = @includedir@/ace + pkgconfigdir = @libdir@/pkgconfig ++nobase_include_HEADERS = + + ACE_BUILDDIR = $(top_builddir) + ACE_ROOT = $(top_srcdir) +@@ -336,7 +337,7 @@ + libACE_la_LDFLAGS = \ + -release @ACE_VERSION_NAME@ + +-nobase_include_HEADERS = \ ++nobase_include_HEADERS += \ + ACE.h \ + ACE.inl \ + ACE_export.h \ diff --git a/ACE/debianbuild/patches/12-fix-fox-include.dpatch b/ACE/debianbuild/patches/12-fix-fox-include.dpatch new file mode 100644 index 00000000000..26ff9767537 --- /dev/null +++ b/ACE/debianbuild/patches/12-fix-fox-include.dpatch @@ -0,0 +1,29 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 12-fix-fox-include.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: drop fox/ prefix in include, it's correctly set by fox-config + +@DPATCH@ +--- ACE_wrappers.orig/ace/FoxReactor/FoxReactor.h ++++ ACE_wrappers/ace/FoxReactor/FoxReactor.h +@@ -27,7 +27,7 @@ + + #include "ace/Select_Reactor.h" + +-#include <fox/fx.h> ++#include <fx.h> + + /** + * @class ACE_FoxReactor +--- ACE_wrappers.orig/TAO/tao/FoxResource/FoxResource_Loader.h ++++ ACE_wrappers/TAO/tao/FoxResource/FoxResource_Loader.h +@@ -24,7 +24,7 @@ + + #include "tao/Versioned_Namespace.h" + +-#include <fox/fx.h> ++#include <fx.h> + + TAO_BEGIN_VERSIONED_NAMESPACE_DECL + diff --git a/ACE/debianbuild/patches/14-autoconf-tao.dpatch b/ACE/debianbuild/patches/14-autoconf-tao.dpatch new file mode 100644 index 00000000000..f13d0e95d50 --- /dev/null +++ b/ACE/debianbuild/patches/14-autoconf-tao.dpatch @@ -0,0 +1,54 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 14-autoconf-tao.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: enhance TAO autoconf support + +@DPATCH@ +--- ACE_wrappers.orig/TAO/configure.ac ++++ ACE_wrappers/TAO/configure.ac +@@ -124,10 +124,6 @@ + AC_PROG_CXX + AC_PROG_CXXCPP + +-dnl Configure libtool +-AC_DISABLE_STATIC +-AC_PROG_LIBTOOL +- + ACE_CHECK_THREADS + + dnl Set the test language as C++ +@@ -190,6 +186,33 @@ + TAO_ENABLE_EXAMPLES + TAO_ENABLE_TESTS + ++dnl The user's/default C++ flags are stored in "CXXFLAGS." We use ++dnl the variable "ACE_CXXFLAGS" to set the C++ flags we want. At the end ++dnl of the configuration process we combine ACE_CXXFLAGS and CXXFLAGS ++dnl into CXXFLAGS (e.g., CXXFLAGS="$ACE_CXXFLAGS $CXXFLAGS"). CXXFLAGS ++dnl goes after ACE_CXXFLAGS so that the user's C++ flag command line ++dnl choices always override the configure script's choices. ++ACE_CXXFLAGS="" ++ACE_CFLAGS="" ++ ++ACE_SET_COMPILER_FLAGS ++ ++dnl Disable building of static libraries by default ++AC_DISABLE_STATIC ++ ++dnl Enable Libtool module support ++AC_LIBTOOL_DLOPEN ++ ++dnl Enable support for "clean" DLLs. ++AC_LIBTOOL_WIN32_DLL ++ ++dnl Check for libtool and turn on Automake processing for Libtool ++AC_PROG_LIBTOOL ++ ++CXXFLAGS="$ACE_CXXFLAGS $X_CFLAGS $CXXFLAGS" ++CFLAGS="$ACE_CFLAGS $X_CFLAGS $CFLAGS" ++CPPFLAGS="$ACE_CPPFLAGS $CPPFLAGS" ++LDFLAGS="$ACE_LDFLAGS $LDFLAGS" + + dnl + dnl SECTION 16: AC_CONFIG_FILES([FILE...]) diff --git a/ACE/debianbuild/patches/15-fix-fltk-include.dpatch b/ACE/debianbuild/patches/15-fix-fltk-include.dpatch new file mode 100644 index 00000000000..54dc8b6c348 --- /dev/null +++ b/ACE/debianbuild/patches/15-fix-fltk-include.dpatch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 15-fix-fltk-include.dpatch by Raphael Bossek <bossekr@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Uses new FLTK header files. + +@DPATCH@ + +--- ACE_wrappers/ace/FlReactor/FlReactor.cpp.orig 2004-10-25 00:08:59.932411424 +0200 ++++ ACE_wrappers/ace/FlReactor/FlReactor.cpp 2004-10-25 00:09:08.272143592 +0200 +@@ -6,7 +6,7 @@ + + #if defined (ACE_HAS_FL) + +-#include /**/ <FL/Fl.h> ++#include /**/ <FL/Fl.H> + + ACE_ALLOC_HOOK_DEFINE (ACE_FlReactor) + diff --git a/ACE/debianbuild/patches/16-skip-apps.dpatch b/ACE/debianbuild/patches/16-skip-apps.dpatch new file mode 100644 index 00000000000..c59bcedbda4 --- /dev/null +++ b/ACE/debianbuild/patches/16-skip-apps.dpatch @@ -0,0 +1,22 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 16-skip-apps.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## DP: do not compile some apps + +@DPATCH@ +--- ACE_wrappers.orig/apps/apps.mwc ++++ ACE_wrappers/apps/apps.mwc +@@ -2,4 +2,13 @@ + // $Id$ + + workspace { ++ exclude { ++ drwho ++ Gateway ++ JAWS ++ JAWS2 ++ JAWS3 ++ mkcsregdb ++ soreduce ++ } + } diff --git a/ACE/debianbuild/patches/17-protect-mpc-path.dpatch b/ACE/debianbuild/patches/17-protect-mpc-path.dpatch new file mode 100644 index 00000000000..fb4ad963bfe --- /dev/null +++ b/ACE/debianbuild/patches/17-protect-mpc-path.dpatch @@ -0,0 +1,17 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 17-protect-mpc-path.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## DP: disable pattern metacharacters in path + +@DPATCH@ +--- ACE_wrappers.orig/MPC/modules/AutomakeWorkspaceCreator.pm ++++ ACE_wrappers/MPC/modules/AutomakeWorkspaceCreator.pm +@@ -618,7 +618,7 @@ + my($start) = $self->getstartdir(); + + ## Take off the starting directory +- $value =~ s/$start//; ++ $value =~ s/\Q$start\E//; + return $value; + } + diff --git a/ACE/debianbuild/patches/18-fix-bswap-detection.dpatch b/ACE/debianbuild/patches/18-fix-bswap-detection.dpatch new file mode 100644 index 00000000000..95521e2328d --- /dev/null +++ b/ACE/debianbuild/patches/18-fix-bswap-detection.dpatch @@ -0,0 +1,35 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 18-fix-bswap-detection.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## DP: taken from upstream: fix bswap autoconf detection +@DPATCH@ +--- ACE_wrappers.orig/configure.ac ++++ ACE_wrappers/configure.ac +@@ -3445,15 +3445,24 @@ + + ACE_CHECK_HAS_DEFINES([bswap16]) + if test "$ace_cv_defined_bswap16" = no; then +- ACE_CHECK_HAS_DEFINES([bswap_16]) ++ ACE_CHECK_HAS_DEFINES([bswap_16],[],[],[ ++#if ACE_HAS_BYTESWAP_H ++#include <byteswap.h> ++#endif]) + fi + ACE_CHECK_HAS_DEFINES([bswap32]) + if test "$ace_cv_defined_bswap32" = no; then +- ACE_CHECK_HAS_DEFINES([bswap_32]) ++ ACE_CHECK_HAS_DEFINES([bswap_32],[],[],[ ++#if ACE_HAS_BYTESWAP_H ++#include <byteswap.h> ++#endif]) + fi + ACE_CHECK_HAS_DEFINES([bswap64]) + if test "$ace_cv_defined_bswap64" = no; then +- ACE_CHECK_HAS_DEFINES([bswap_64]) ++ ACE_CHECK_HAS_DEFINES([bswap_64],[],[],[ ++#if ACE_HAS_BYTESWAP_H ++#include <byteswap.h> ++#endif]) + fi + + ACE_CHECK_LACKS_FUNCS(chdir) diff --git a/ACE/debianbuild/patches/19-gcc43.dpatch b/ACE/debianbuild/patches/19-gcc43.dpatch new file mode 100644 index 00000000000..d857df95f1b --- /dev/null +++ b/ACE/debianbuild/patches/19-gcc43.dpatch @@ -0,0 +1,32 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 19-gcc43.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## DP: fix failures and warnings with g++ 4.3 +## DP: See http://bugzilla.dre.vanderbilt.edu/show_bug.cgi?id=3270 +@DPATCH@ +--- ACE_wrappers.orig/ace/config-macros.h ++++ ACE_wrappers/ace/config-macros.h +@@ -380,7 +380,7 @@ + // This eliminates the warnings, and no code is generated for the null + // conditional statement. @note that may only be true if -O is enabled, + // such as with GreenHills (ghs) 1.8.8. +-# define ACE_UNUSED_ARG(a) do {/* null */} while (&a == 0) ++# define ACE_UNUSED_ARG(a) do {/* null */} while (&a < 0) + #elif defined (__DMC__) + #define ACE_UNUSED_ID(identifier) + template <class T> +--- ACE_wrappers.orig/apps/JAWS/server/HTTP_Server.cpp ++++ ACE_wrappers/apps/JAWS/server/HTTP_Server.cpp +@@ -143,10 +143,12 @@ + HTTP_Handler_Factory *f = 0; + + if (this->strategy_ != (JAWS::JAWS_POOL | JAWS::JAWS_ASYNCH)) ++ { + if (this->caching_) + ACE_NEW_RETURN (f, Synch_HTTP_Handler_Factory (), -1); + else + ACE_NEW_RETURN (f, No_Cache_Synch_HTTP_Handler_Factory (), -1); ++ } + + //NOTE: At this point f better not be a NULL pointer, + //so please do not change the ACE_NEW_RETURN macros unless diff --git a/ACE/debianbuild/patches/20-fix-iostream-detection.dpatch b/ACE/debianbuild/patches/20-fix-iostream-detection.dpatch new file mode 100644 index 00000000000..4cd9e8cf059 --- /dev/null +++ b/ACE/debianbuild/patches/20-fix-iostream-detection.dpatch @@ -0,0 +1,128 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 20-autoconf-fix-iostream.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## DP: fix autotools iostream detection +@DPATCH@ +--- ACE_wrappers.orig/configure.ac ++++ ACE_wrappers/configure.ac +@@ -1013,11 +1013,9 @@ + dnl Check for availablity of "new style" C++ stream headers + AC_CHECK_HEADERS([iomanip ios iostream istream ostream fstream streambuf], + , +- [AC_DEFINE([ACE_USES_OLD_IOSTREAMS])]) +- +-AC_CHECK_HEADER([iostream.h], +- [AC_CHECK_HEADER([fstream.h],,[AC_DEFINE([ACE_LACKS_IOSTREAM_TOTALLY])])], +- [AC_DEFINE([ACE_LACKS_IOSTREAM_TOTALLY])]) ++ [AC_CHECK_HEADERS([iostream.h fstream.h], ++ [AC_DEFINE([ACE_USES_OLD_IOSTREAMS])], ++ [AC_DEFINE([ACE_LACKS_IOSTREAM_TOTALLY])])]) + + dnl Check if platform needs to #include <regexpr.h> for + dnl regular expression support +@@ -2014,14 +2012,18 @@ + [ace_cv_feature_char_right_shifts], + [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ ++#ifdef ACE_USES_OLD_IOSTREAM + #include <iostream.h> ++#else ++#include <iostream> ++#endif + ]],[[ + unsigned char a = 0; +-cin >> a; ++std::cin >> a; + + #ifndef ACE_LACKS_SIGNED_CHAR + signed char b = 0; +-cin >> b; ++std::cin >> b; + #endif + ]])],[ + ace_cv_feature_char_right_shifts=yes +@@ -2036,14 +2038,18 @@ + [ace_cv_feature_char_ptr_right_shifts], + [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ ++#ifdef ACE_USES_OLD_IOSTREAMS + #include <iostream.h> ++#else ++#include <iostream> ++#endif + ]],[[ + unsigned char * a = 0; +-cin >> a; ++std::cin >> a; + + #ifndef ACE_LACKS_SIGNED_CHAR + signed char * b = 0; +-cin >> b; ++std::cin >> b; + #endif + ]])],[ + ace_cv_feature_char_ptr_right_shifts=yes +@@ -5823,9 +5829,17 @@ + ACE_CACHE_CHECK([for iostream method ipfx()], + [ace_cv_feature_has_iostream_ipfx],[ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ ++#ifdef ACE_USES_OLD_IOSTREAMS + #include <iostream.h> ++#else ++#include <iostream> ++#endif + ]], [[ ++#ifdef ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB ++ std::cin.ipfx(); ++#else + cin.ipfx(); ++#endif + ]])],[ + ace_cv_feature_has_iostream_ipfx=yes + ],[ +@@ -5837,9 +5851,17 @@ + ACE_CACHE_CHECK([for line-buffered streambufs], + [ace_cv_feature_has_linebuffered_streambuf],[ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ ++#ifdef ACE_USES_OLD_IOSTREAMS + #include <iostream.h> ++#else ++#include <iostream> ++#endif + ]], [[ ++#ifdef ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB ++ std::cin.rdbuf()->linebuffered(1); ++#else + cin.rdbuf()->linebuffered(1); ++#endif + ]])],[ + ace_cv_feature_has_linebuffered_streambuf=yes + ],[ +@@ -5851,9 +5873,17 @@ + ACE_CACHE_CHECK([for unbuffered streambufs], + [ace_cv_feature_has_unbuffered_streambuf],[ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ ++#ifdef ACE_USES_OLD_IOSTREAMS + #include <iostream.h> ++#else ++#include <iostream> ++#endif + ]], [[ ++#ifdef ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB ++ std::cin.rdbuf()->unbuffered(1); ++#else + cin.rdbuf()->unbuffered(1); ++#endif + ]])],[ + ace_cv_feature_has_unbuffered_streambuf=yes + ],[ +--- ACE_wrappers.orig/m4/aio.m4 ++++ ACE_wrappers/m4/aio.m4 +@@ -64,7 +64,6 @@ + #include <string.h> + #include <errno.h> + #include <stdio.h> +-#include <iostream.h> + + #include <aio.h> + diff --git a/ACE/debianbuild/patches/21-generate-platform_macros.GNU.diff b/ACE/debianbuild/patches/21-generate-platform_macros.GNU.diff new file mode 100644 index 00000000000..653c15fd04a --- /dev/null +++ b/ACE/debianbuild/patches/21-generate-platform_macros.GNU.diff @@ -0,0 +1,10 @@ +--- ACE_wrappers.orig/configure.ac ++++ ACE_wrappers/configure.ac +@@ -8020,6 +8020,7 @@ + dnl tests/Makefile + + AC_CONFIG_FILES([ ++ include/makeinclude/platform_macros.GNU + Makefile + ace/Makefile + ace/SSL/Makefile diff --git a/ACE/debianbuild/patches/22-tao_idl-64bit-fix.dpatch b/ACE/debianbuild/patches/22-tao_idl-64bit-fix.dpatch new file mode 100644 index 00000000000..b93cf6d87e2 --- /dev/null +++ b/ACE/debianbuild/patches/22-tao_idl-64bit-fix.dpatch @@ -0,0 +1,65 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 22-tao_idl-64bit-fix.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## DP: backport 64bit fix for tao_idl from upstream +@DPATCH@ +--- ACE_wrappers/TAO/TAO_IDL/be/be_helper.cpp- 2008-11-04 22:18:23.000000000 +0100 ++++ ACE_wrappers/TAO/TAO_IDL/be/be_helper.cpp 2008-11-04 22:19:14.000000000 +0100 +@@ -360,7 +360,7 @@ + + return *this; + } +-#if defined (ACE_WIN64) || ! (! defined (ACE_HAS_UINT64_T) && ACE_SIZEOF_LONG == 8) ++ + TAO_OutStream & + TAO_OutStream::operator<< (const ACE_CDR::ULongLong num) + { +@@ -380,26 +380,6 @@ + + return *this; + } +-#endif +-TAO_OutStream & +-TAO_OutStream::operator<< (const unsigned long num) +-{ +- ACE_OS::fprintf (this->fp_, +- "%lu", +- num); +- +- return *this; +-} +- +-TAO_OutStream & +-TAO_OutStream::operator<< (const long num) +-{ +- ACE_OS::fprintf (this->fp_, +- "%ld", +- num); +- +- return *this; +-} + + TAO_OutStream & + TAO_OutStream::operator<< (const TAO_NL&) +--- ACE_wrappers/TAO/TAO_IDL/be_include/be_helper.h- 2008-11-04 22:14:08.000000000 +0100 ++++ ACE_wrappers/TAO/TAO_IDL/be_include/be_helper.h 2008-11-04 22:16:53.000000000 +0100 +@@ -174,18 +174,12 @@ + + TAO_OutStream &operator<< (const ACE_CDR::Long num); + // output the integer and return a reference to ourselves +-#if defined (ACE_WIN64) || ! (! defined (ACE_HAS_UINT64_T) && ACE_SIZEOF_LONG == 8) ++ + TAO_OutStream &operator<< (const ACE_CDR::ULongLong num); + // output the integer and return a reference to ourselves + + TAO_OutStream &operator<< (const ACE_CDR::LongLong num); + // output the integer and return a reference to ourselves +-#endif +- TAO_OutStream &operator<< (const unsigned long num); +- // output the integer and return a reference to ourselves +- +- TAO_OutStream &operator<< (const long num); +- // output the integer and return a reference to ourselves + + // = MANIPULATORS + diff --git a/ACE/debianbuild/patches/34-bts386713.dpatch b/ACE/debianbuild/patches/34-bts386713.dpatch new file mode 100644 index 00000000000..cdf73439591 --- /dev/null +++ b/ACE/debianbuild/patches/34-bts386713.dpatch @@ -0,0 +1,165 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 34-bts386713.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: load libraries with their complete name. + +@DPATCH@ +--- ACE_wrappers.orig/TAO/orbsvcs/orbsvcs/PortableGroup/PortableGroup_ORBInitializer.cpp 2007-01-25 18:04:11.000000000 +0000 ++++ ACE_wrappers/TAO/orbsvcs/orbsvcs/PortableGroup/PortableGroup_ORBInitializer.cpp 2007-02-13 11:45:38.000000000 +0000 +@@ -14,7 +14,7 @@ + + static const char pg_poa_factory_name[] = "TAO_GOA"; + static const char pg_poa_factory_directive[] = ACE_DYNAMIC_SERVICE_DIRECTIVE( +- "TAO_GOA", "TAO_PortableGroup", "_make_TAO_PG_Object_Adapter_Factory", ""); ++ "TAO_GOA", "libTAO_PortableGroup-1.6.6.so", "_make_TAO_PG_Object_Adapter_Factory", ""); + + TAO_BEGIN_VERSIONED_NAMESPACE_DECL + +--- ACE_wrappers.orig/TAO/tao/ORB_Core.cpp 2007-01-25 19:59:59.000000000 +0000 ++++ ACE_wrappers/TAO/tao/ORB_Core.cpp 2007-02-13 12:33:58.000000000 +0000 +@@ -1596,7 +1596,7 @@ + { + this->configuration ()->process_directive ( + ACE_DYNAMIC_SERVICE_DIRECTIVE("PolicyFactory_Loader", +- "TAO_PI", ++ "libTAO_PI-1.6.6.so", + "_make_TAO_PolicyFactory_Loader", + "")); + loader = +@@ -1635,7 +1635,7 @@ + { + config->process_directive ( + ACE_DYNAMIC_SERVICE_DIRECTIVE ("ORBInitializer_Registry", +- "TAO_PI", ++ "libTAO_PI-1.6.6.so", + "_make_ORBInitializer_Registry", + "")); + this->orbinitializer_registry_ = +@@ -2432,7 +2432,7 @@ + { + this->configuration ()->process_directive + (ACE_DYNAMIC_SERVICE_DIRECTIVE("TypeCodeFactory", +- "TAO_TypeCodeFactory", ++ "libTAO_TypeCodeFactory-1.6.6.so", + "_make_TAO_TypeCodeFactory_Loader", + "")); + loader = +@@ -2465,7 +2465,7 @@ + { + this->configuration()->process_directive + (ACE_DYNAMIC_SERVICE_DIRECTIVE("CodecFactory", +- "TAO_CodecFactory", ++ "libTAO_CodecFactory-1.6.6.so", + "_make_TAO_CodecFactory_Loader", + "")); + loader = +@@ -2492,7 +2492,7 @@ + { + this->configuration()->process_directive + (ACE_DYNAMIC_SERVICE_DIRECTIVE("Compression", +- "TAO_Compression", ++ "libTAO_Compression-1.6.6.so", + "_make_TAO_Compression_Loader", + "")); + loader = +@@ -2519,7 +2519,7 @@ + { + this->configuration()->process_directive + (ACE_DYNAMIC_SERVICE_DIRECTIVE("TAO_POA_Current_Factory", +- "TAO_PortableServer", ++ "libTAO_PortableServer-1.6.6.so", + "_make_TAO_POA_Current_Factory", + "")); + loader = +@@ -2549,7 +2549,7 @@ + { + this->configuration ()->process_directive + (ACE_DYNAMIC_SERVICE_DIRECTIVE("PICurrent_Loader", +- "TAO_PI", ++ "libTAO_PI-1.6.6.so", + "_make_TAO_PICurrent_Loader", + "")); + loader = +@@ -2581,7 +2581,7 @@ + { + this->configuration ()->process_directive + (ACE_DYNAMIC_SERVICE_DIRECTIVE("DynamicAny_Loader", +- "TAO_DynamicAny", ++ "libTAO_DynamicAny-1.6.6.so", + "_make_TAO_DynamicAny_Loader", + "")); + loader = +@@ -2609,7 +2609,7 @@ + { + this->configuration()->process_directive + (ACE_DYNAMIC_SERVICE_DIRECTIVE("IORManip_Loader", +- "TAO_IORManip", ++ "libTAO_IORManip-1.6.6.so", + "_make_TAO_IORManip_Loader", + "")); + loader = +@@ -2636,7 +2636,7 @@ + { + this->configuration ()->process_directive + (ACE_DYNAMIC_SERVICE_DIRECTIVE("TAO_IORTable", +- "TAO_IORTable", ++ "libTAO_IORTable-1.6.6.so", + "_make_TAO_Table_Adapter_Factory", + "")); + factory = +--- ACE_wrappers.orig/TAO/tao/ORBInitializer_Registry.cpp 2007-01-24 16:37:36.000000000 +0000 ++++ ACE_wrappers/TAO/tao/ORBInitializer_Registry.cpp 2007-02-13 12:30:53.000000000 +0000 +@@ -57,7 +57,7 @@ + { + ACE_Service_Config::process_directive ( + ACE_DYNAMIC_SERVICE_DIRECTIVE("ORBInitializer_Registry", +- "TAO_PI", ++ "libTAO_PI-1.6.6.so", + "_make_ORBInitializer_Registry", + "")); + orbinitializer_registry_ = +--- ACE_wrappers.orig/TAO/tao/PI/ORBInitInfo.cpp 2007-01-24 18:43:15.000000000 +0000 ++++ ACE_wrappers/TAO/tao/PI/ORBInitInfo.cpp 2007-02-13 12:30:07.000000000 +0000 +@@ -128,7 +128,7 @@ + { + ACE_Service_Config::process_directive ( + ACE_DYNAMIC_SERVICE_DIRECTIVE("CodecFactory", +- "TAO_CodecFactory", ++ "libTAO_CodecFactory-1.6.6.so", + "_make_TAO_CodecFactory_Loader", + "")); + loader = +--- ACE_wrappers.orig/TAO/tao/PortableServer/LifespanStrategyPersistent.cpp 2007-01-24 16:37:36.000000000 +0000 ++++ ACE_wrappers/TAO/tao/PortableServer/LifespanStrategyPersistent.cpp 2007-02-13 11:46:59.000000000 +0000 +@@ -85,7 +85,7 @@ + { + ACE_Service_Config::process_directive ( + ACE_DYNAMIC_SERVICE_DIRECTIVE( +- "ImR_Client_Adapter", "TAO_ImR_Client", ++ "ImR_Client_Adapter", "libTAO_ImR_Client-1.6.6.so", + "_make_ImR_Client_Adapter_Impl", "")); + + adapter = +--- ACE_wrappers.orig/TAO/tao/TAO_Internal.cpp 2006-12-28 11:46:39.000000000 +0000 ++++ ACE_wrappers/TAO/tao/TAO_Internal.cpp 2007-02-13 11:47:57.000000000 +0000 +@@ -484,7 +484,7 @@ + ACE_Service_Config::process_directive ( + ACE_DYNAMIC_SERVICE_DIRECTIVE ( + "TAO_Codeset", +- "TAO_Codeset", ++ "libTAO_Codeset-1.6.6.so", + "_make_TAO_Codeset_Manager_Factory", + "")); + +--- ACE_wrappers.orig/TAO/tao/RTCORBA/RT_ORBInitializer.cpp 2007-06-28 18:53:33.000000000 +0000 ++++ ACE_wrappers/TAO/tao/RTCORBA/RT_ORBInitializer.cpp 2007-06-28 18:55:43.000000000 +0000 +@@ -40,7 +40,7 @@ + static const ACE_TCHAR rt_poa_factory_directive[] = + ACE_DYNAMIC_SERVICE_DIRECTIVE( + "TAO_RT_Object_Adapter_Factory", +- "TAO_RTPortableServer", ++ "libTAO_RTPortableServer-1.6.6.so", + "_make_TAO_RT_Object_Adapter_Factory", + ""); + diff --git a/ACE/debianbuild/patches/50-prepatch-dummy-mark.dpatch b/ACE/debianbuild/patches/50-prepatch-dummy-mark.dpatch new file mode 100644 index 00000000000..758f5225979 --- /dev/null +++ b/ACE/debianbuild/patches/50-prepatch-dummy-mark.dpatch @@ -0,0 +1,8 @@ +#! /bin/sh -e +## 50-prepatch-mark-dummy.dpatch by Raphael Bossek <bossekr@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: This files does nothing then be a mark for the `autotools' +## DP: debian/rules's target. + +exit 0 diff --git a/ACE/debianbuild/patches/92-default-ACE_ROOT.dpatch b/ACE/debianbuild/patches/92-default-ACE_ROOT.dpatch new file mode 100644 index 00000000000..c9be527c910 --- /dev/null +++ b/ACE/debianbuild/patches/92-default-ACE_ROOT.dpatch @@ -0,0 +1,20 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 92-default-ACE_ROOT.dpatch by Thomas Girard <thomas.g.girard@free.fr> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Automatically set ACE_ROOT to /usr/share/ace in MPC generated +## DP: GNUmakefile if no ACE_ROOT is set. + +@DPATCH@ +--- ACE_wrappers.orig/bin/MakeProjectCreator/modules/GNUACEWorkspaceCreator.pm ++++ ACE_wrappers/bin/MakeProjectCreator/modules/GNUACEWorkspaceCreator.pm +@@ -89,6 +89,9 @@ + "ifeq (\$(findstring k,\$(MAKEFLAGS)),k)$crlf", + " KEEP_GOING = -$crlf", + "endif$crlf$crlf", ++ "ifndef ACE_ROOT$crlf", ++ " export ACE_ROOT = /usr/share/ace$crlf", ++ "endif$crlf", + "include \$(ACE_ROOT)/include/makeinclude/macros.GNU$crlf"; + + if ($named) { diff --git a/ACE/debianbuild/platform_macros.GNU.in b/ACE/debianbuild/platform_macros.GNU.in new file mode 100644 index 00000000000..4ab8f0aac88 --- /dev/null +++ b/ACE/debianbuild/platform_macros.GNU.in @@ -0,0 +1,127 @@ +# -*- Makefile -*- +ifeq (@BUILD_EXCEPTIONS_TRUE@,) + exceptions ?= 1 +else + exceptions ?= 0 +endif + +ifneq ($(findstring -g,@CXXFLAGS@),) + debug ?= 1 +else + debug ?= 0 +endif + +ifneq ($(filter -O2 -O3,@CXXFLAGS@),) + optimize ?= 1 +else + optimize ?= 0 +endif + +ifneq ($(findstring -pthread,@CXXFLAGS@),) + threads ?= 1 +else + threads ?= 0 +endif + +insure ?= 0 + +PLATFORM_XT_CPPFLAGS = @ACE_XT_CPPFLAGS@ +PLATFORM_XT_LIBS = @ACE_XT_LIBS@ +PLATFORM_XT_LDFLAGS = @ACE_XT_LDFLAGS@ + +PLATFORM_FL_CPPFLAGS = @ACE_FLTK_CPPFLAGS@ +PLATFORM_FL_LIBS = @ACE_FLTK_LIBS@ + +PLATFORM_X11_CPPFLAGS = @ACE_X11_CPPFLAGS@ +PLATFORM_X11_LIBS = @ACE_X11_LIBS@ +PLATFORM_X11_LDFLAGS = @ACE_X11_LDFLAGS@ + +PLATFORM_FOX_CPPFLAGS = @ACE_FOX_CPPFLAGS@ +PLATFORM_FOX_LIBS = @ACE_FOX_LIBS@ + +PLATFORM_TCL_CPPFLAGS = @ACE_TCL_CPPFLAGS@ +PLATFORM_TCL_LIBS = @ACE_TCL_LIBS@ + +PLATFORM_TK_CPPFLAGS = @ACE_TK_CPPFLAGS@ +PLATFORM_TK_LIBS = @ACE_TK_LIBS@ + +PLATFORM_QT_CPPFLAGS = @ACE_QT_CPPFLAGS@ +PLATFORM_QT_LIBS = @ACE_QT_LIBS@ + +ifeq (@BUILD_SSL_TRUE@,) + ssl ?= 1 +else + ssl ?= 0 +endif + +ifeq ($(insure),1) + CC = insure + CXX = insure +endif + +PIC = -fPIC +AR ?= @AR@ +ARFLAGS = rsuv +RANLIB = @RANLIB@ + +ifeq ($(insure),0) + CC ?= @CC@ + CXX ?= @CXX@ + CXX_FOR_VERSION_TEST ?= $(CXX) +else + CXX_FOR_VERSION_TEST ?= @CXX@ +endif + +ifneq ($(findstring -pipe,@CXXFLAGS@),) + pipes ?= 1 +else + pipes ?= 0 +endif + +CXX_FULL_VERSION := $(shell $(CXX_FOR_VERSION_TEST) --version) + +FLAGS_C_CC += $(filter-out -g -O2 -O3 -pipe,@CXXFLAGS@) + +ifeq ($(buildbits),32) + FLAGS_C_CC += -m32 + LDFLAGS += -m32 +endif +ifeq ($(buildbits),64) + FLAGS_C_CC += -m64 +endif + +DCFLAGS += -g +DCCFLAGS += -g +DLD = $(CXX) +LD = $(CXX) +LIBS += @LIBS@ + +ifeq ($(optimize),1) + SOFLAGS += -Wl,-O2 +endif + +SOFLAGS += $(CPPFLAGS) -shared +SOBUILD = $(COMPILE.cc) $(PIC) -o $(VSHDIR)$*.so $<; \ + $(SOLINK.cc) -o $@ $(LDFLAGS) $(VSHDIR)$*.o +PRELIB = @true + +# Test for template instantiation, add to SOFLAGS if SONAME set, +# add -E to LDFLAGS if using GNU ld +# +include $(ACE_ROOT)/include/makeinclude/platform_g++_common.GNU + +OCFLAGS ?= -O2 +OCCFLAGS ?= -O2 + +CFLAGS += $(FLAGS_C_CC) +CCFLAGS += $(FLAGS_C_CC) $(TEMPLATES_FLAG) + +# Added line below to support "Executable Shared Object" files (as +# needed by the service configurator). +# Marius Kjeldahl <mariusk@sn.no, marius@funcom.com> +ifeq ($(threads),1) + ESOBUILD = $(COMPILEESO.cc) $(PIC) -shared -o $(VSHDIR)$*.so $< + ifndef PRELIB + PRELIB = @true + endif # ! PRELIB +endif diff --git a/ACE/debianbuild/rules b/ACE/debianbuild/rules new file mode 100644 index 00000000000..4eb6078903b --- /dev/null +++ b/ACE/debianbuild/rules @@ -0,0 +1,272 @@ +#!/usr/bin/make -f + +# debian/rules file for the ACE Debian GNU/Linux package +# written February 2002 by Ossama Othman <ossama@debian.org> +# Modified August 2003 by Brian Nelson <pyro@debian.org> +# Copyright (C) 2004 Raphael Bossek <bossekr@debian.org> +# Copyright © 2005-2008 Thomas Girard <thomas.g.girard@free.fr> + +# This is the debhelper compatibility version to use. +export DH_COMPAT=4 + +INSTALL := install -o root -g root +INSTALL_755 := $(INSTALL) -m 755 + +export DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +export DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH) + +ifeq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE)) +confflags += --build $(DEB_HOST_GNU_TYPE) +else +confflags += --build $(DEB_BUILD_GNU_TYPE) \ + --host $(DEB_HOST_GNU_TYPE) +endif + +TCL_HOME := /usr/lib +TK_HOME := /usr/lib + +ACE_SUBDIR := ACE_wrappers +ACE_ARCHIVE := $(shell ls -1 ACE+TAO+CIAO-src-*.tar.bz2 2>/dev/null || echo ace-archive-missing) +MPC_SUBDIR := MPC +MPC_ARCHIVE := $(shell ls -1 MPC*.tar.gz 2>/dev/null || echo mpc-archive-missing) + +MWCFLAGS := -type automake -features "ssl=1,zlib=1,zzip=1,xt=1,tk=1,fl=1,qt=1,fox=1" -noreldefs + +MAN1 := debian/Basic_Logging_Service.1 \ + debian/Event_Logging_Service.1 \ + debian/Notify_Logging_Service.1 \ + debian/RTEvent_Logging_Service.1 \ + debian/TAO_ORB_Options.1 \ + debian/mpc-ace.1 +MAN5 := + +DOXYGEN_FILES_TO_REMOVE := -name '*.tag' -o \ + -name '*.md5' -o \ + -name '*.dot' -o \ + -name '*.idx' -o \ + -name '*.map' -o \ + -name 'index.hh?' + +ifneq (mpc-archive-missing,$(MPC_ARCHIVE)) +export MPC_ROOT := $(shell pwd)/$(MPC_SUBDIR) +endif +export ACE_ROOT := $(shell pwd)/$(ACE_SUBDIR) +export TAO_ROOT := $(ACE_ROOT)/TAO +export CIAO_ROOT := $(TAO_ROOT)/CIAO +export LD_LIBRARY_PATH := $(LD_LIBRARY_PATH):$(ACE_ROOT)/lib +export QTDIR := /usr/share/qt4 + +# This dpatch is only a place holder. The `prepatch' targets stops +# here by default. +PREPATCH_MARK := 50-prepatch-dummy-mark.dpatch +UNTIL := $(PREPATCH_MARK) + +# Where we install every file before calling dh_install +DT := debian/tmp + +CONFIG := objdir/ace/config.h + +extract-stamp: $(ACE_ARCHIVE) + tar -xjf $< + cp debian/platform_macros.GNU.in $(ACE_ROOT)/include/makeinclude + touch $@ + +.PHONY: extract +extract: extract-stamp + +$(MPC_ROOT): $(MPC_ARCHIVE) + tar -xzf $< + touch $@ + +debian/mpc-ace.sgml: ACE_wrappers/MPC/docs/MPC.sgml + sed -e 's/mpc\.pl/mpc-ace/g' -e 's/mwc\.pl/mwc-ace/g' $< > $@ + +debian/%.1 debian/%.5: debian/%.sgml + docbook-to-man $< > $@ + +# Prepare a ACE_wrappers directory where most of the patches are applied. +ifneq (mpc-archive-missing,$(MPC_ARCHIVE)) +prepatch-stamp: extract-stamp $(MPC_ROOT) +else +prepatch-stamp: extract-stamp +endif + dpatch apply-until $(UNTIL) + cd $(ACE_ROOT) && bin/mwc.pl -noreldefs $(MWCFLAGS) ACE.mwc + cd $(TAO_ROOT) && ../bin/mwc.pl -noreldefs $(MWCFLAGS) TAO.mwc + patch -p0 < debian/patches/09-autoconf-fix-no-base-include-headers.diff + patch -p0 < debian/patches/21-generate-platform_macros.GNU.diff + touch $@ + +.PHONY: prepatch +prepatch: prepatch-stamp + +pl-stamp: extract-stamp + for fn in `find "$(ACE_ROOT)" -name "*.pl"`; do (echo '#!/usr/bin/perl'; cat "$$fn") > "$${fn}T"; mv "$${fn}T" "$$fn"; chmod a+x "$$fn"; done + touch $@ + +patch-stamp: pl-stamp autotools-stamp + dpatch apply-all + chmod +x $(ACE_ROOT)/configure $(ACE_ROOT)/TAO/configure + touch $@ + +.PHONY: patch +patch: patch-stamp + +unpatch: patch-stamp + dpatch unpatch + rm -f $< + +ifeq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CXXFLAGS+=-O2 +endif + +autotools-stamp: prepatch-stamp + cd $(ACE_ROOT) && bin/bootstrap + touch $@ + +.PHONY: autotools +autotools: autotools-stamp + +build: build-stamp manpages-stamp + +manpages-stamp: $(MAN1) $(MAN5) + touch $@ + +doxygen-stamp: extract-stamp + cd $(ACE_ROOT) && bin/generate_doxygen.pl -is_release + find $(ACE_ROOT)/html/ace $(DOXYGEN_FILES_TO_REMOVE) | xargs -r rm -f + find $(ACE_ROOT)/html/tao $(DOXYGEN_FILES_TO_REMOVE) | xargs -r rm -f + touch $@ + +.PHONY: doxygen +doxygen: doxygen-stamp + +build-stamp: configure-stamp + dh_testdir + mkdir -p objdir/ace/QtReactor + $(MAKE) -C objdir + $(MAKE) -C objdir/TAO + + touch $@ + +clean: + dh_testdir + rm -rf $(ACE_SUBDIR) $(MPC_SUBDIR) objdir debian/patched $(MAN1) $(MAN5) *-stamp debian/mpc-ace.sgml + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + $(MAKE) -C objdir install DESTDIR=$(CURDIR)/$(DT) + $(MAKE) -C objdir/TAO install DESTDIR=$(CURDIR)/$(DT) + +# Rename the catior utility, it already exists in another package + mv $(DT)/usr/bin/catior $(DT)/usr/bin/tao-catior + +# Multiple README + cp $(TAO_ROOT)/utils/catior/README $(TAO_ROOT)/utils/catior/README.catior + cp $(TAO_ROOT)/utils/nslist/README $(TAO_ROOT)/utils/nslist/README.nslist + +# We provide scripts replacement for tao_idl and tao_ifr ; they +# automatically define ACE_ROOT and TAO_ROOT + mv $(DT)/usr/bin/tao_idl $(DT)/usr/bin/tao_idl.real + $(INSTALL_755) -D debian/tao_idl $(DT)/usr/bin/tao_idl + mv $(DT)/usr/bin/tao_ifr $(DT)/usr/bin/tao_ifr.real + $(INSTALL_755) -D debian/tao_ifr $(DT)/usr/bin/tao_ifr + +# Copy MPC files. + $(INSTALL_755) -D $(ACE_ROOT)/bin/mpc.pl $(DT)/usr/bin/mpc-ace + $(INSTALL_755) -D $(ACE_ROOT)/bin/mwc.pl $(DT)/usr/bin/mwc-ace + +# Be lintian clean, fix permissions on examples + -chmod -x `find $(TAO_ROOT)/examples/ -perm 755 ! -type d -a ! \( -name "*.pl" -o -name "*.sh" \)` + +# We don't install .la files + find $(DT) -name '*.la' -print0 | xargs -0 rm + rm -f $(DT)/usr/bin/TAO_Service + dh_install --sourcedir=$(DT) --fail-missing + +binary-indep: build install doxygen-stamp + dh_testdir -i + dh_testroot -i + dh_installdocs -i + dh_installexamples -i + dh_installman -i + dh_installchangelogs -i $(ACE_ROOT)/ChangeLog + dh_perl -i + dh_link -i + dh_compress -i -Xexamples -Xtutorials + dh_fixperms -i + dh_installdeb -i + dh_gencontrol -i + dh_md5sums -i + dh_builddeb -i + +binary-arch: build install + dh_testdir -a + dh_testroot -a + dh_installdocs -a -A + dh_installman -a + dh_installinfo -pgperf-ace $(ACE_ROOT)/apps/gperf/ace_gperf.info + dh_installchangelogs -a $(ACE_ROOT)/ChangeLog + dh_installchangelogs -pgperf-ace $(ACE_ROOT)/apps/gperf/ChangeLog + dh_strip -a + dh_link -a + dh_compress -a + dh_fixperms -a + dh_makeshlibs -a -V + dh_installdeb -a + dh_shlibdeps -a -l `ls -1 debian/lib*.install | sed -e 's#\(.*\)\.install#\1/usr/lib#' | tr '\n' ':' | sed -e 's#:$$##'` + dh_gencontrol -a + dh_md5sums -a + dh_builddeb -a + +source diff: + @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false + +binary: binary-indep binary-arch + +configure-stamp: patch-stamp + mkdir -p objdir + cd objdir && ../ACE_wrappers/configure $(confflags) --prefix=/usr \ + --disable-tao-examples --disable-tao-tests \ + --disable-ace-examples --disable-ace-tests \ + --enable-fl-reactor --enable-qt-reactor --enable-xt-reactor \ + --enable-tk-reactor \ + --with-fox-config=/usr/bin --enable-fox-reactor \ + --with-tclconfig=$(TCL_HOME) --with-tkconfig=$(TK_HOME) \ + --with-zlib --with-zzip \ + --enable-ipv6 --enable-ipv4-ipv6 \ + --enable-inline \ + --enable-pthreads \ + --enable-symbol-visibility \ + --enable-ace-reactor-notification-queue + echo '#define TAO_IDL_INCLUDE_DIR "/usr/include/tao"' >> $(CONFIG) + + # bz#3138 + echo "#define ACE_HAS_RECURSIVE_MUTEXES" >> $(CONFIG) + + echo "#define ACE_HAS_SCANDIR" >> $(CONFIG) + echo "#define ACE_SCANDIR_CMP_USES_CONST_VOIDPTR" >> $(CONFIG) + + # bz#3144 + echo "#define ACE_HAS_SENDFILE" >> $(CONFIG) + + echo "#define ACE_LACKS_WCSICMP" >> $(CONFIG) + + echo "#define ACE_POSIX_SIG_PROACTOR" >> $(CONFIG) + + # TODO: ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO? + + # Remove PACKAGE_* from the generated config.h + sed -i -e '/package/I D' objdir/ace/config.h + touch $@ + +.PHONY: configure +configure: configure-stamp + +.PHONY: build clean binary-indep binary-arch binary install unpatch source diff diff --git a/ACE/debianbuild/tao-concurrency.docs b/ACE/debianbuild/tao-concurrency.docs new file mode 100644 index 00000000000..27759070d95 --- /dev/null +++ b/ACE/debianbuild/tao-concurrency.docs @@ -0,0 +1 @@ +ACE_wrappers/TAO/orbsvcs/Concurrency_Service/README diff --git a/ACE/debianbuild/tao-concurrency.install b/ACE/debianbuild/tao-concurrency.install new file mode 100644 index 00000000000..d5056db405c --- /dev/null +++ b/ACE/debianbuild/tao-concurrency.install @@ -0,0 +1 @@ +usr/bin/Concurrency_Service diff --git a/ACE/debianbuild/tao-event.docs b/ACE/debianbuild/tao-event.docs new file mode 100644 index 00000000000..323dd9c38cc --- /dev/null +++ b/ACE/debianbuild/tao-event.docs @@ -0,0 +1 @@ +ACE_wrappers/TAO/orbsvcs/CosEvent_Service/README diff --git a/ACE/debianbuild/tao-event.install b/ACE/debianbuild/tao-event.install new file mode 100644 index 00000000000..6bebccee3e8 --- /dev/null +++ b/ACE/debianbuild/tao-event.install @@ -0,0 +1 @@ +usr/bin/CosEvent_Service diff --git a/ACE/debianbuild/tao-ft.docs b/ACE/debianbuild/tao-ft.docs new file mode 100644 index 00000000000..2ba85e3736d --- /dev/null +++ b/ACE/debianbuild/tao-ft.docs @@ -0,0 +1 @@ +ACE_wrappers/TAO/orbsvcs/FT_ReplicationManager/README diff --git a/ACE/debianbuild/tao-ft.install b/ACE/debianbuild/tao-ft.install new file mode 100644 index 00000000000..54f6167bc6d --- /dev/null +++ b/ACE/debianbuild/tao-ft.install @@ -0,0 +1,3 @@ +usr/bin/Fault_Detector +usr/bin/Fault_Notifier +usr/bin/FT_ReplicationManager diff --git a/ACE/debianbuild/tao-ftrtevent.install b/ACE/debianbuild/tao-ftrtevent.install new file mode 100644 index 00000000000..df412324715 --- /dev/null +++ b/ACE/debianbuild/tao-ftrtevent.install @@ -0,0 +1,3 @@ +usr/bin/ftrt_eventservice +usr/bin/ftrtec_factory_service +usr/bin/ftrtec_gateway_service diff --git a/ACE/debianbuild/tao-idl.install b/ACE/debianbuild/tao-idl.install new file mode 100644 index 00000000000..84f7a05b480 --- /dev/null +++ b/ACE/debianbuild/tao-idl.install @@ -0,0 +1,2 @@ +usr/bin/tao_idl.real +usr/bin/tao_idl diff --git a/ACE/debianbuild/tao-idl.links b/ACE/debianbuild/tao-idl.links new file mode 100644 index 00000000000..a331370709b --- /dev/null +++ b/ACE/debianbuild/tao-idl.links @@ -0,0 +1,2 @@ +usr/bin/tao_idl usr/share/ace/bin/tao_idl +usr/share/man/man1/tao_idl.1.gz usr/share/man/man1/tao_idl.real.1.gz diff --git a/ACE/debianbuild/tao-idl.manpages b/ACE/debianbuild/tao-idl.manpages new file mode 100644 index 00000000000..bbaa6e3fb67 --- /dev/null +++ b/ACE/debianbuild/tao-idl.manpages @@ -0,0 +1 @@ +ACE_wrappers/TAO/TAO_IDL/tao_idl.1 diff --git a/ACE/debianbuild/tao-ifr.docs b/ACE/debianbuild/tao-ifr.docs new file mode 100644 index 00000000000..4b680d8f663 --- /dev/null +++ b/ACE/debianbuild/tao-ifr.docs @@ -0,0 +1 @@ +ACE_wrappers/TAO/orbsvcs/IFR_Service/README diff --git a/ACE/debianbuild/tao-ifr.install b/ACE/debianbuild/tao-ifr.install new file mode 100644 index 00000000000..745c4474b5b --- /dev/null +++ b/ACE/debianbuild/tao-ifr.install @@ -0,0 +1,3 @@ +usr/bin/IFR_Service +usr/bin/tao_ifr.real +usr/bin/tao_ifr diff --git a/ACE/debianbuild/tao-imr.docs b/ACE/debianbuild/tao-imr.docs new file mode 100644 index 00000000000..015d20b03f7 --- /dev/null +++ b/ACE/debianbuild/tao-imr.docs @@ -0,0 +1 @@ +ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/README.txt diff --git a/ACE/debianbuild/tao-imr.install b/ACE/debianbuild/tao-imr.install new file mode 100644 index 00000000000..1054516f613 --- /dev/null +++ b/ACE/debianbuild/tao-imr.install @@ -0,0 +1,3 @@ +usr/bin/ImplRepo_Service +usr/bin/ImR_Activator +usr/bin/tao_imr diff --git a/ACE/debianbuild/tao-lifecycle.install b/ACE/debianbuild/tao-lifecycle.install new file mode 100644 index 00000000000..a34fa7b8ee6 --- /dev/null +++ b/ACE/debianbuild/tao-lifecycle.install @@ -0,0 +1 @@ +usr/bin/LifeCycle_Service diff --git a/ACE/debianbuild/tao-load.docs b/ACE/debianbuild/tao-load.docs new file mode 100644 index 00000000000..d9c83468cb0 --- /dev/null +++ b/ACE/debianbuild/tao-load.docs @@ -0,0 +1 @@ +ACE_wrappers/TAO/orbsvcs/LoadBalancer/README diff --git a/ACE/debianbuild/tao-load.install b/ACE/debianbuild/tao-load.install new file mode 100644 index 00000000000..203a48c0296 --- /dev/null +++ b/ACE/debianbuild/tao-load.install @@ -0,0 +1,2 @@ +usr/bin/LoadManager +usr/bin/LoadMonitor diff --git a/ACE/debianbuild/tao-log.docs b/ACE/debianbuild/tao-log.docs new file mode 100644 index 00000000000..8a75e5909f2 --- /dev/null +++ b/ACE/debianbuild/tao-log.docs @@ -0,0 +1 @@ +ACE_wrappers/TAO/orbsvcs/Logging_Service/README diff --git a/ACE/debianbuild/tao-log.install b/ACE/debianbuild/tao-log.install new file mode 100644 index 00000000000..f2197fef495 --- /dev/null +++ b/ACE/debianbuild/tao-log.install @@ -0,0 +1,4 @@ +usr/bin/Basic_Logging_Service +usr/bin/Event_Logging_Service +usr/bin/Notify_Logging_Service +usr/bin/RTEvent_Logging_Service diff --git a/ACE/debianbuild/tao-log.manpages b/ACE/debianbuild/tao-log.manpages new file mode 100644 index 00000000000..b94e70dc2db --- /dev/null +++ b/ACE/debianbuild/tao-log.manpages @@ -0,0 +1,4 @@ +debian/Basic_Logging_Service.1 +debian/Event_Logging_Service.1 +debian/Notify_Logging_Service.1 +debian/RTEvent_Logging_Service.1 diff --git a/ACE/debianbuild/tao-naming.docs b/ACE/debianbuild/tao-naming.docs new file mode 100644 index 00000000000..1f38248a647 --- /dev/null +++ b/ACE/debianbuild/tao-naming.docs @@ -0,0 +1 @@ +ACE_wrappers/TAO/orbsvcs/Naming_Service/README diff --git a/ACE/debianbuild/tao-naming.install b/ACE/debianbuild/tao-naming.install new file mode 100644 index 00000000000..d76b87af15c --- /dev/null +++ b/ACE/debianbuild/tao-naming.install @@ -0,0 +1 @@ +usr/bin/Naming_Service diff --git a/ACE/debianbuild/tao-notify.docs b/ACE/debianbuild/tao-notify.docs new file mode 100644 index 00000000000..08af3d3f8fe --- /dev/null +++ b/ACE/debianbuild/tao-notify.docs @@ -0,0 +1 @@ +ACE_wrappers/TAO/orbsvcs/Notify_Service/README diff --git a/ACE/debianbuild/tao-notify.install b/ACE/debianbuild/tao-notify.install new file mode 100644 index 00000000000..40deedfaf5a --- /dev/null +++ b/ACE/debianbuild/tao-notify.install @@ -0,0 +1 @@ +usr/bin/Notify_Service diff --git a/ACE/debianbuild/tao-rtevent.install b/ACE/debianbuild/tao-rtevent.install new file mode 100644 index 00000000000..48ff34c9df0 --- /dev/null +++ b/ACE/debianbuild/tao-rtevent.install @@ -0,0 +1 @@ +usr/bin/Event_Service diff --git a/ACE/debianbuild/tao-scheduling.install b/ACE/debianbuild/tao-scheduling.install new file mode 100644 index 00000000000..5dfc36c35d8 --- /dev/null +++ b/ACE/debianbuild/tao-scheduling.install @@ -0,0 +1,2 @@ +usr/bin/Scheduling_Service +usr/bin/Dump_Schedule diff --git a/ACE/debianbuild/tao-time.docs b/ACE/debianbuild/tao-time.docs new file mode 100644 index 00000000000..d474eb065e6 --- /dev/null +++ b/ACE/debianbuild/tao-time.docs @@ -0,0 +1 @@ +ACE_wrappers/TAO/orbsvcs/Time_Service/README diff --git a/ACE/debianbuild/tao-time.install b/ACE/debianbuild/tao-time.install new file mode 100644 index 00000000000..f179e39461c --- /dev/null +++ b/ACE/debianbuild/tao-time.install @@ -0,0 +1,2 @@ +usr/bin/Time_Service_Server +usr/bin/Time_Service_Clerk diff --git a/ACE/debianbuild/tao-trading.docs b/ACE/debianbuild/tao-trading.docs new file mode 100644 index 00000000000..5c5869da934 --- /dev/null +++ b/ACE/debianbuild/tao-trading.docs @@ -0,0 +1 @@ +ACE_wrappers/TAO/orbsvcs/Trading_Service/README diff --git a/ACE/debianbuild/tao-trading.install b/ACE/debianbuild/tao-trading.install new file mode 100644 index 00000000000..61109722f34 --- /dev/null +++ b/ACE/debianbuild/tao-trading.install @@ -0,0 +1 @@ +usr/bin/Trading_Service diff --git a/ACE/debianbuild/tao-utils.docs b/ACE/debianbuild/tao-utils.docs new file mode 100644 index 00000000000..3d8830cfa42 --- /dev/null +++ b/ACE/debianbuild/tao-utils.docs @@ -0,0 +1,2 @@ +ACE_wrappers/TAO/utils/nslist/README.nslist +ACE_wrappers/TAO/utils/catior/README.catior diff --git a/ACE/debianbuild/tao-utils.install b/ACE/debianbuild/tao-utils.install new file mode 100644 index 00000000000..087577155ab --- /dev/null +++ b/ACE/debianbuild/tao-utils.install @@ -0,0 +1,2 @@ +usr/bin/tao-ns{add,del,list} +usr/bin/tao-catior diff --git a/ACE/debianbuild/tao_idl b/ACE/debianbuild/tao_idl new file mode 100644 index 00000000000..2d48cb8614e --- /dev/null +++ b/ACE/debianbuild/tao_idl @@ -0,0 +1,6 @@ +#!/bin/sh + +ACE_ROOT=/usr/share/ace; export ACE_ROOT; +TAO_ROOT=$ACE_ROOT/TAO; export TAO_ROOT; + +exec tao_idl.real "$@" diff --git a/ACE/debianbuild/tao_ifr b/ACE/debianbuild/tao_ifr new file mode 100644 index 00000000000..baf5a4c7698 --- /dev/null +++ b/ACE/debianbuild/tao_ifr @@ -0,0 +1,6 @@ +#!/bin/sh + +ACE_ROOT=/usr/share/ace; export ACE_ROOT; +TAO_ROOT=$ACE_ROOT/TAO; export TAO_ROOT; + +exec tao_ifr.real "$@" diff --git a/ACE/debianbuild/watch b/ACE/debianbuild/watch new file mode 100644 index 00000000000..ecc70a07613 --- /dev/null +++ b/ACE/debianbuild/watch @@ -0,0 +1,3 @@ +version=3 + +ftp://download.dre.vanderbilt.edu/previous_versions/ACE\+TAO\+CIAO-src-(.*)\.tar\.bz2 diff --git a/ACE/docs/CE-status.txt b/ACE/docs/CE-status.txt index 3b618df0980..cf2382fb27f 100644 --- a/ACE/docs/CE-status.txt +++ b/ACE/docs/CE-status.txt @@ -1,15 +1,16 @@ /** @page wince ACE on Windows CE status -Last updated Tuesday 15-November-2005 by Steve Huston <shuston@riverace.com> +Last updated Friday 14-November-2008 by Johnny Willemsen +<jwillemsen@remedy.nl> @subsection ce_status Status -As of ACE 5.5, Riverace supports ACE on Windows CE building with Microsoft -Visual Studio 2005 and targeting the Pocket PC 2003 SDK and Windows Mobile 5. -OCI supports TAO 1.3 on at least Windows CE 3 with the PocketPC 2002 SDK. -Contact the individual support provider for complete information regarding -these platforms as well as the supported hardware targets. +As of ACE 5.6, Remedy IT supports ACE and TAO on Windows CE building with +Microsoft Visual Studio 2005 and targeting the Windows Mobile 5 and 6. OCI +supports TAO 1.3 on at least Windows CE 3 with the PocketPC 2002 SDK. Contact +the individual support provider for complete information regarding these +platforms as well as the supported hardware targets. @subsection ce_evc eMbedded Visual C++ Projects @@ -28,24 +29,20 @@ generate_makefile and generate_workspace commands can be used for this. The ACE release process generates the needed Visual Studio 2005 solution and project files with "_WinCE" appended to the name (e.g. ACE_WinCE.vcproj) to distinguish them from both Win32-targeted VC8 projects (ACE_vc8.vcproj) and -Visual Studio 2003 projects (ACE.vcproj). The files are generated with -the "Pocket PC 2003 SDK (ARMV4)" and "Windows Mobile 5.0 Pocket PC SDK -(ARMV4I)" platforms defined. To add additional platforms, the files must be -regenerated using MPC. +Visual Studio 2003 projects (ACE_vc71.vcproj). The files are generated with +the "Pocket PC 2003 SDK (ARMV4)", "Windows Mobile 5.0 Pocket PC SDK +(ARMV4I)", and "Windows Mobile 6 SDK (ARMV4I)" platforms defined. To add +additional platforms, the files must be regenerated using MPC. @subsection ce_wchar Unicode/WChar ACE on WindowsCE automatically has ACE_HAS_WCHAR and ACE_USES_WCHAR turned -on. Thus ACE_TCHAR and ACE_TEXT() are the wide char versions. +on. Thus ACE_TCHAR and ACE_TEXT() are the wide char versions. @subsection ce_tests Running the Test Suite on Windows CE The ACE test suite in ACE_wrappers/tests is used on Windows CE as well as -on dekstop Windows. The test suite tools are being extended to use a -product called Pocket Controller, Enterprise edition from Soft Object -Technologies, Inc. (www.soti.net) that can script the actions needed to -copy the test files to a PocketPC device, run the test, and copy the log -files back to the build machine for analysis and reporting to the -scoreboard. +on dekstop Windows. The test suite tools are extended to run remotely +on the device using the telnet server. */ diff --git a/ACE/docs/Download.html b/ACE/docs/Download.html index aec81ed3740..0391b65f700 100644 --- a/ACE/docs/Download.html +++ b/ACE/docs/Download.html @@ -84,101 +84,101 @@ of the ACE, TAO, and CIAO micro release kit is available for <TR><TH>Filename</TH><TH>Description</TH><TH>Full</TH><TH>Sources only</TH></TR> <TR><TD>ACE+TAO+CIAO.tar.gz</TD> <TD>ACE+TAO+CIAO (tar+gzip format)</TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-5.6.6.tar.gz">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-5.6.6.tar.gz">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-5.6.8.tar.gz">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-5.6.8.tar.gz">FTP</A>] </TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-src-5.6.6.tar.gz">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-src-5.6.6.tar.gz">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-src-5.6.8.tar.gz">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-src-5.6.8.tar.gz">FTP</A>] </TD> </TR> <TR><TD>ACE+TAO+CIAO.tar.bz2</TD> <TD>ACE+TAO+CIAO (tar+bzip2 format)</TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-5.6.6.tar.bz2">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-5.6.6.tar.bz2">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-5.6.8.tar.bz2">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-5.6.8.tar.bz2">FTP</A>] </TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-src-5.6.6.tar.bz2">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-src-5.6.6.tar.bz2">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-src-5.6.8.tar.bz2">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-src-5.6.8.tar.bz2">FTP</A>] </TD> </TR> <TR><TD>ACE+TAO+CIAO.zip</TD> <TD>ACE+TAO+CIAO (zip format)</TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-5.6.6.zip">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-5.6.6.zip">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-5.6.8.zip">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-5.6.8.zip">FTP</A>] </TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-src-5.6.6.zip">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-src-5.6.6.zip">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-src-5.6.8.zip">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO+CIAO-src-5.6.8.zip">FTP</A>] </TD> </TR> <TR><TD>ACE+TAO.tar.gz</TD> <TD>ACE+TAO (tar+gzip format)</TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-5.6.6.tar.gz">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-5.6.6.tar.gz">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-5.6.8.tar.gz">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-5.6.8.tar.gz">FTP</A>] </TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-src-5.6.6.tar.gz">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-src-5.6.6.tar.gz">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-src-5.6.8.tar.gz">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-src-5.6.8.tar.gz">FTP</A>] </TD> </TR> <TR><TD>ACE+TAO.tar.bz2</TD> <TD>ACE+TAO (tar+bzip2 format)</TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-5.6.6.tar.bz2">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-5.6.6.tar.bz2">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-5.6.8.tar.bz2">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-5.6.8.tar.bz2">FTP</A>] </TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-src-5.6.6.tar.bz2">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-src-5.6.6.tar.bz2">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-src-5.6.8.tar.bz2">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-src-5.6.8.tar.bz2">FTP</A>] </TD> </TR> <TR><TD>ACE+TAO.zip</TD> <TD>ACE+TAO (zip format)</TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-5.6.6.zip">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-5.6.6.zip">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-5.6.8.zip">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-5.6.8.zip">FTP</A>] </TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-src-5.6.6.zip">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-src-5.6.6.zip">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-src-5.6.8.zip">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-src-5.6.8.zip">FTP</A>] </TD> </TR> <TR><TD>ACE-html.tar.gz</TD> <TD>Doxygen documentation for ACE+TAO+CIAO (tar+gzip format)</TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-html-5.6.6.tar.gz">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-html-5.6.6.tar.gz">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-html-5.6.8.tar.gz">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-html-5.6.8.tar.gz">FTP</A>] </TD> </TR> <TR><TD>ACE-html.tar.bz2</TD> <TD>Doxygen documentation for ACE+TAO+CIAO (tar+bzip2 format)</TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-html-5.6.6.tar.bz2">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-html-5.6.6.tar.bz2">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-html-5.6.8.tar.bz2">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-html-5.6.8.tar.bz2">FTP</A>] </TD> </TR> <TR><TD>ACE-html.zip</TD> <TD>Doxygen documentation for ACE+TAO+CIAO (zip format)</TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-html-5.6.6.zip">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-html-5.6.6.zip">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-html-5.6.8.zip">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-html-5.6.8.zip">FTP</A>] </TD> </TR> <TR><TD>ACE.tar.gz</TD> <TD>ACE only (tar+gzip format)</TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-5.6.6.tar.gz">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-5.6.6.tar.gz">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-5.6.8.tar.gz">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-5.6.8.tar.gz">FTP</A>] </TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-src-5.6.6.tar.gz">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-src-5.6.6.tar.gz">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-src-5.6.8.tar.gz">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-src-5.6.8.tar.gz">FTP</A>] </TD> </TR> <TR><TD>ACE.tar.bz2</TD> <TD>ACE only (tar+bzip2 format)</TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-5.6.6.tar.bz2">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-5.6.6.tar.bz2">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-5.6.8.tar.bz2">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-5.6.8.tar.bz2">FTP</A>] </TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-src-5.6.6.tar.bz2">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-src-5.6.6.tar.bz2">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-src-5.6.8.tar.bz2">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-src-5.6.8.tar.bz2">FTP</A>] </TD> </TR> <TR><TD>ACE.zip</TD> <TD>ACE only (zip format)</TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-5.6.6.zip">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-5.6.6.zip">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-5.6.8.zip">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-5.6.8.zip">FTP</A>] </TD> - <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-src-5.6.6.zip">HTTP</A>] - [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-src-5.6.6.zip">FTP</A>] + <TD>[<A HREF="http://download.dre.vanderbilt.edu/previous_versions/ACE-src-5.6.8.zip">HTTP</A>] + [<A HREF="ftp://download.dre.vanderbilt.edu/previous_versions/ACE-src-5.6.8.zip">FTP</A>] </TD> </TR> </TABLE> diff --git a/ACE/docs/bczar/bczar.html b/ACE/docs/bczar/bczar.html index 6ee8e151a89..2645705b70e 100644 --- a/ACE/docs/bczar/bczar.html +++ b/ACE/docs/bczar/bczar.html @@ -1,380 +1,502 @@ <!-- $Id$ --> <body> -<html> -<head> -<title>The realm of the build czar</title> -</head> - -<h2>Build Czar Duties</h2> -<p> - - The main duties of the Build Czar are summarized as follows - - <li> Continuously monitor the builds using the <a - href="http://www.dre.vanderbilt.edu/scoreboard"> Scoreboard </a> as - one of the primary source of information. - - <li> Notify developers who broke compilation to fix the errors as - soon as possible, ideally by the next day. A red color in the - "Compile" column is not at all acceptable - the Build Czar needs to - ensure that these problems are identified and fixed in a timely - manner. If possible, the Build Czar should let developers know what - the source of problems might be. It is quite possible that - developers who checked in the code or users who provided the patch - may not have resources to investigate the issues, so the Builds - Czar's help is essential to keep things moving ahead. - - <li> Keep an eye on the tests that are run in every build. Anything - abnormal needs to be notified to the right developer. The Build Czar - should try helping the developer by providing stack traces (in case - of crashes) or other details like printouts with debugging level - turned on. - - <li> Some tests fail in the daily builds for many reasons like known - bugs, transient timeouts etc. Make sure that no new test failures - show up. This <a href="mailto:jwillemsen@remedy.nl">guy</a> knows - most of the information. Ask him to help you out with known - problems. - - <li> Keep an eye on the <a - href="http://www.dre.vanderbilt.edu/Stats">footprint and - performance</a> stats. Any abnormal changes should be brought to - the attention of the developer resposible for it or to the <a - href="mailto:devo-group@list.isis.vanderbilt.edu">devo group</a>. - - <li> Keep the builds ticking. Any red on the "Last Finished" column - in the Scoreboard should be fixed. The link to the "Build Name" - indicates the machine where the build is being run. - - <li> The builds don't cover all the possible configurations. If you - get a bug report about a compile error in a particular - configuration, try setting up a build to make sure that it doesn't - show up again if it has been fixed. - - <li> Keep an eye on the <a - href="http://deuce.doc.wustl.edu/bugzilla/index.cgi">bugzilla </a> - entries that are registered by users and developers. Decide on the - bugs that need to be fixed for the beta and pain developers for an - ETA. - -</p> - -<P> The document <a href="./privileges.html"> here </a> talks about -the powers of a build Czar. </P> - -<P> The Build Czar is empowered to set up more builds on his own for -his convenience. This -<a - href="https://svn.dre.vanderbilt.edu/viewvc/ACE_autobuild/trunk/README?revision=HEAD"> -page </a> has a -step by step instructions on how to do that. </P> - -<P> The build czar can get the build configuration by looking at the -config portion of the scoreboard. </P> - -<p>Pro-active involvement by the build czar is necessary. Being -a pro-active build czar requires monitoring the subversion -archive carefully and responding quickly to suspected changes to keep - the repo stays stable.</p> - -<hr> -<h2>Recipe for Cutting a Beta/Minor Kit</h2> - -<P> The build czar is also in charge for the release of the -beta. Cutting a beta is as simple as cutting butter if things go -well. Here is the procedure followed while cutting a beta: - -<ol> -<li>The whole process takes somewhere between 8-9 hours, about 2 hours -for making the release itself and the remaining time for generating -the doxygen documentation.</li> -<li>I suggest you take advantage of GNU Screen so that even if your SSH session -is interrupted, the cutting process can continue. -<ul> -<li> type <code>screen</code> to start screen.</li> -<li> execute commands as normal. Note that Ctrl-A is special in screen, so you -need to type Ctrl-A-A to send a Ctrl-A to the shell</li> -<li> should your session be interrupted, reconnect and type <code>screen -x</code></li> -<li> when finished, just type exit twice</li> -</ul> -<li>Prior to starting this, gather aggregate release notes from all -developers. This is usually in the form of an email plea asking for -a writeup of significant changes since the last beta. Add these notes -to the NEWS files before cutting the release so that all notes are -part of the release.</li> -<li>Checkout a new workspace on <tt>anduril.dre.vanderbilt.edu</tt></li> -<ul> -<li> -The best place to create the workspace is under /export/anduriltmp/bczar. Don't use -the home directory itself, it is an NFS share and not really fast. -</li> -<li>Checkout like this: -<ul><li>svn co --username <your user id> https://svn.dre.vanderbilt.edu/DOC/Middleware/trunk DOC_ROOT</li> - <li>svn co --username <your user id> https://svn.dre.vanderbilt.edu/DOC/MPC/trunk DOC_ROOT/ACE/MPC</li> -</ul> -</ul> -<li> Set $DOC_ROOT to point to the new -workspace you checked out.</li> -<li> Set an environment variable SIGNATURE indicating your full -name. This is used to fill the ChangeLog entry.</li> -<ul><li>For example,<tt>export SIGNATURE="Chris Cleeland"</tt></li></ul> -<li> Set an environment variable MAILID indicating your mail id. This -is used to fill the mail id portion of the ChangeLog entry.</li> -<ul><li>For example,<tt>export MAILID="cleeland@ociweb.com"</tt></li></ul> -<li> Change directories to to <tt>$DOC_ROOT</tt> </li> -<li> Tag the release by executing <code>ACE/bin/make_release.py --beta --update --tag</code> This will only -take a couple minutes to complete.</li> -<li> Create the kits by executing <code>ACE/bin/make_release.py --kit </code> This will take about two hours to complete. - -<ul><li>These commands only tags and creates the kits for the - software itself, not documentation. </li> -<li>The kits end up in <tt>/export/anduriltmp/bczar/packages</tt></li> -</ul> -<p> -To summarize, the following is a transcript of the steps up to this point executing -successfully: <p> -<code> -sm@beatrice ~<br> -$ ssh bczar@anduril.dre.vanderbilt.edu<br> -No default printer<br> --bash-3.00$ cd /export/anduriltmp/bczar<br> --bash-3.00$ export DOC_ROOT=$PWD/DOC_ROOT<br> --bash-3.00$ export SIGNATURE="Johnny Willemsen"<br> --bash-3.00$ export MAILID=jwillemsen@remedy.nl<br> --bash-3.00$ svn co https://svn.dre.vanderbilt.edu/DOC/Middleware/trunk DOC_ROOT<br> --bash-3.00$ svn co https://svn.dre.vanderbilt.edu/DOC/MPC/trunk DOC_ROOT/ACE/MPC<br> --bash-3.00$ cd DOC_ROOT/<br> --bash-3.00$ ACE/bin/make_release.py --beta --update --tag<br> --bash-3.00$ ACE/bin/make_release.py --kit<br> -</code> -<p> -Feel free to cut and paste with suitable edits. -<li>In the <em>EXTREMELY</em> unlikely event that something goes wrong during the -<em>tagging</em> of the repo (ie, make_release -v beta -u), -the following files must be returned to the state they were in before the release -process started and then checked back into SVN:<br><code> -ACE/ChangeLog<br> -ACE/PROBLEM-REPORT-FORM<br> -ACE/VERSION<br> -ACE/TAO/ChangeLog<br> -ACE/TAO/PROBLEM-REPORT-FORM<br> -TAO/VERSION<br> -CIAO/ChangeLog<br> -CIAO/PROBLEM-REPORT-FORM<br> -CIAO/VERSION<br> -CIAO/ciao/Version.h<br> -TAO/tao/Version.h<br> -ace/Version.h<br></code><p> -In most cases, a <code>svn revert -R *</code> from DOC_ROOT will suffice.<br /> -The tag will also need to be removed (both in Middleware and MPC): ACE+TAO+CIAO-X_Y_Z -(where X and Y are the minor and beta release numbers of the release that is to be restarted).<p> -E.g.:<br> -<code> -svn rm https://svn.dre.vanderbilt.edu/DOC/Middleware/tags/ACE+TAO+CIAO-X_Y_Z<br /> -svn rm https://svn.dre.vanderbilt.edu/DOC/MPC/tags/ACE+TAO+CIAO-X_Y_Z<br /> -</code> - -Note that this <em>only</em> needs to be done if the <em>tagging</em> fails. If kit creation -fails, simply restart that process. -<li>The packages end up by default under $DOC_ROOT/packages-PID, you can copy them to the webserver using the following commands. At the moment -you execute these commands all users can download these packages.</li> -<code> -cp $DOC_ROOT/packages-PID/ACE* /export/www/download.dre/ACE+TAO-distribution<br> -</code> -<li>After the repository is tagged you can start generating the doxygen -documentation.</li> -<li>Login to naboo.dre.vanderbilt.edu as bczar: <code>ssh bczar@naboo.dre.vanderbilt.edu</code></li> -<ul><li>After login, ssh to bczar@download.dre.vanderbilt.edu as bczar and check whether ssh succeeds. If not fix the problem. The make script tries to copy the tar.gz files to the website using ssh.</li></ul> -<li> go to /web/users/isisbuilds/tmp/ACE_wrappers and remove the contents of this directory</li> -<li> Update the workspace with the right version tag </li> -<code> -svn co svn://svn.dre.vanderbilt.edu/DOC/Middleware/tags/ACE+TAO+CIAO-X_Y_Z/ACE ACE_wrappers<br> -svn co svn://svn.dre.vanderbilt.edu/DOC/Middleware/tags/ACE+TAO+CIAO-X_Y_Z/TAO ACE_wrappers/TAO<br> -svn co svn://svn.dre.vanderbilt.edu/DOC/Middleware/tags/ACE+TAO+CIAO-X_Y_Z/CIAO ACE_wrappers/TAO/CIAO<br> -</code> -<li> Set the needed environment variables using</li> -<code> -export ACE_ROOT=/web/users/isisbuilds/tmp/ACE_wrappers/ACE_wrappers -</code> -<li> Run doxygen --version within the shell. </li> -<li> Open up $ACE_ROOT/bin/generate_rel_manpages in your favorite editor.</li> -<li> Search for the string 'doxy_version'. </li> -<li> Check the version specified here. If it is the same as the one -you got using doxygen --version then you don't have to worry. </li> -<li> If it is different change the value of the doxy_version to the one installed on naboo.dre.vanderbilt.edu.</li> -<li> Now you are ready to create documentation </li> -<li> Do a <code>cd $ACE_ROOT</code> and then run <tt>make -f Release manpages</tt> to create the doxygen -documentation.</li> -<ul><li><b>If you can't leave the terminal window active for 6-9 hours, - consider prefixing this command with <tt>nohup</tt></b></li></ul> -<li>While doxygen churns, format a release announcement, including the -release notes gathered from developers. <a href="sample_relnotes.txt"> -You can use these as an example.</a> -<ul><li>Let <a href="mailto:schmidt@cs.wustl.edu">Doug Schmidt</a> review -these before you do anything with them.</li></ul> -<li>Check the file, generate_rel_manpages into the repository if you have made some changes to it.</li> -<li>Make sure the new version is available in Bugzilla.</li> -<ul> -<li>We now have a bczar Bugzilla user (bczar@dre.vanderbilt.edu) with full privileges which points - to the bczar user at ISIS. To gain access to this account as a new build czar, you could update - the ~/.forward file on one of the ISIS hosts (for example bczar@naboo.dre.vanderbilt.edu) with - your own email address (but be aware that if you leave this ~/.forward file in effect, you will - get innundated with cron mail messages from all of the ISIS lab build machines, so it is probably - best to remove it after obtaining the Bugzilla password). From the "Bugzilla - Main Page" - (http://bugzilla.dre.vanderbilt.edu/index.cgi) click on one of the various "LogIn" links, - and from this login page you should be able to "Submit Request" to change a forgotten password. - If you enter bczar@dre.vanderbilt.edu and click "Submit Request" this will email you the password - change link to bczar@dre.vanderbilt.edu, which will then in turn be forwarded to your own email - account. Simply copy this link into your browser to set your own bczar password for the next - steps.</li> -<li>here is the description of how to add a new version through Bugzilla.</li> -<li>go to any Bugzilla "Query" page, you should see a grey box at the bottom. click "Log in" link to log in as bczar@dre.vanderbilt.edu.</li> -<li>look at the grey box at bottom again. You will see several links following "Edit". Click on the "Product" link.</li> -<li>you are then at "Select product" page. You should see a list components, i.e., ACE CIAO TAO. Click on the product you want to edit.</li> -<li>you are then at "Edit product" page. Scroll down a bit, you should see a list of all versions coming with this product. At the very beginning of the list, you should see "Edit versions" link. Click this link.</li> -<li>you should see a "Add a new version" text box and a "Add" link just above the grey box at the bottom. Click on this link</li> -<li>you are then at "Add version of [Name of the product]" page.</li> -<li>you are able to add the new version now.</li> -</ul> -<li>Now update the documentation at - www.dre.vanderbilt.edu/Doxygen.</li> -<ul> -<li>Login to naboo.dre.vanderbilt.edu</li> -<li>su to bczar user</li> -<li>cd to directory /web/www/Doxygen</li> -<li>Create a temporary directory. eg. tmp - mkdir tmp</li> -<li>Change Directory to tmp - cd tmp</li> -<li>scp file from the download server - - scp bczar@download.dre.vanderbilt.edu:/export/www/download.dre/ACE+TAO-distribution/ACE-html.tar.bz2 .</li> -<li>Unzip and untar the files - bunzip2 ACE-html.tar.bz2;tar -xvf ACE-html.tar</li> -<li>Do cd ..</li> -<li>Create directory 'Current Version No'</li> -<li>Change directory to 'Current Version No'</li> -<li>Move contents of tmp/html to this directory - mv ../tmp/html</li> -<li>Now Change Directory - cd ..</li> -<li>Remove the already existing soflink to the "Micro" with rm Micro</li> -<li>Create softlink "Micro" linking it to new Documentation using: ln X.Y.Z/html Micro --symbolic</li> -<li>Remove the directory tmp - rm -rf tmp</lib> -</ul> -<li>Update in the autobuild archive the file configs/scoreboard/releases.xml with -the made release. This is used by the integrated scoreboard on http://remedy.nl</li> -<li>You should also the packages to the previous versions directory with the appropriate decorators. Do -this after the doxygen documentation packages are ready so that these are also archived. -<ul> -<li><code>cd /export/www/download.dre/ACE+TAO-distribution</code></li> -<li>Modify <code>/export/anduriltmp/bczar/copy_script.sh</code> to use the correct version X.Y.Z and run it. -</ul> -<li>Mail the approved release announcement out to, at minimum the following: -<tt>ciao-users@list.isis.vanderbilt.edu</tt>, -<tt>tao-users@list.isis.vanderbilt.edu</tt>, -<tt>tao-announce@list.isis.vanderbilt.edu</tt>, -<tt>ace-users@list.isis.vanderbilt.edu</tt>, -<tt>ace-announce@list.isis.vanderbilt.edu</tt>. Do this as yourself (not as bugzilla). -<b>N.B.</b> You will not be able to post to the users' lists unless you are -subscribed to them. Odds are you will not be able to post to the announce lists -at all. Ask someone else (like Doug or Johnny) to do this step. -<li>When all cidlc builds are ready with the new version, login to naboo.dre.vanderbilt.edu -as bczar and run <code>./cut_cidlc.sh version-number</code> fe <code>./cut_cidlc.sh 0.6.0</code>. If this -script is not in its place, then the original is in the bin directory of the distribution.</li> -<li>Update docs/Download.html to show the new release. Make sure you refer to the -previous_versions directory, that way we can exactly track how many people download -a specific version.</li> -<li>Update etc/index.hml to show the new doxygen package you installed</li> -</ol> -</p> - - -<hr> - -<h2> Tips to being a Build Czar</h2> -<p> -1. Trust no one.<br> -2. Be careful with <a href=http://www.cs.wustl.edu/~schmidt>this -guy</a>, he is notorious in breaking builds (and fixing them as -well...Rumour has it that it's actually a super-scalar, -super-pipelined processor capable of out-of-order execution, in human -incarnation).<br> -3. Don't forgive people who break ACE :-)<br> -4. If a build hasn't run in a long time (symptoms are a "red" in the -Last Run column of the build scoreboard), delete the .disable file in -/path/to/build/directory/BUILD_NAME/ by hand.<br> -5. Think of the group who wrote the scoreboard update script, every time -you catch an otherwise not so obvious error with the help of the -scoreboard. Tell <a href="mailto:devo-group@list.isis.vanderbilt.edu"> DEVO group -</a> about it.<br> -6. Add $CVSROOT/CVSROOT/etc/FROZEN to freeze the repo <br> -7. Add names of people who need to be given permission and make sure -that you add your name so that you can see what is being checked in. <br> -8. Leave a line at the end of the FROZEN file <br> -9. Compile once on Win32, Linux and Solaris before cutting a beta.<br> -10. Trust the release script when making a release. Don't make tar -balls by hand. Make sure that the public ftp directories -(/project/beguine/ftp/pub/ACE+TAO-distribution and -/project/beguine/ftp/pub/ACE+TAO-distribution/diffs) have the right -permissions, so that the release script can copy the tar balls.<br> -11. When making a release, make sure that all the auto_compiles on -that machine (deuce.doc.wustl.edu) are stopped. Also make sure that -there is enough space in /tmp on that machine.<br> -12. When all hell breaks loose, don't wait for the nightly builds to -monitor improvement. Instead manually start the builds.<br> -13. Maintain private up-to-date workspaces for problem platforms (read -as Solaris).<br> -14. Don't hesitate to ask for help.<br> -15. When you get an account to access the cvs repo, make sure you are added to the correct groups, for example, gid=100(users),5000(doc),5002(acetaodev),5003(cvs). Otherwise you will have problem to checkout various modules.<br> -16. Install your public key to the different machines you have frequent access to avoid typing password.<br> -17. Update this page if you have any more tips for future build czars :-). This -page is in svn under <code>ACE_wrappres/docs/bczar/bczar.html</code><br> -</p> -<hr> - -<Center> <h1>The Realm of the Build Czar</h1></center> -<hr> -<h2>Build Czar Arthur</h2> -<p>Many years have passes since the days of the legendary Build Czar -Arthur. His duties were given to him by the mystical Lady of the Lake, -who outlined the first responsibilities of the Build Czar.</p> -<tt> -<br> -Then bespake the Lady of the Lake,<br> -And these were the words said shee:<br> -"I knoweth of thy deeds, thou noble Arthur,<br> -but thy task hath not finished for thee"<br> -<br> -"Thou shalt feitch thy trusty steed,<br> -And cleanse thy builds againe;<br> -Then shallt thy ryde hath finnished,<br> -When new kits released thee cann."<br> -<br> -Then bespake him noble Arthur<br> -And these were the words said he:<br> -"With what weapons shallt I use,<br> -To asure these from the devil free?"<br> -<br> -Then appeered before noble Arthur,<br> -Uppon the ground a sacred scroll<br> -Conjurred by the Lady of the Lake<br> -Borne of the earth in a roll.<br> -<br> -She saies, "Clasp this to thine selfe<br> -For thee shallt find need for it.<br> -It shall keep others in the cold,<br> -Only to be ressurected when thee sees fit."<br> -<br> -"Others shall join thy person,<br> -To ryde with thee in thy quest;<br> -Thee shallt be thankful of theire help,<br> -And to alsoe hold them steadfast."<br> -<br> -"But if theire talke too lodly rise,<br> -And causeth much damage to thine cuntry,<br> -He must come forth, and make proclamation,<br> -For the next one he shall be."<br> -<br> -So hath Arthur to the Lady spoke:<br> -"For I sweare, and save my othe,<br> -While enimes and evils I seeke,<br> -I shall fight against them bothe.<br> -<br></tt> -<hr> -</html> + <html> + <head> + <title>The realm of the build czar</title> + </head> + <h2>Build Czar Duties</h2> + <p> + The main duties of the Build Czar are summarized as follows + <li> + Continuously monitor the builds using the <a href="http://www.dre.vanderbilt.edu/scoreboard"> + Scoreboard </a> + as one of the primary source of information. + <li> + Notify developers who broke compilation to fix the errors as soon as possible, + ideally by the next day. A red color in the "Compile" column is not at all + acceptable - the Build Czar needs to ensure that these problems are identified + and fixed in a timely manner. If possible, the Build Czar should let developers + know what the source of problems might be. It is quite possible that developers + who checked in the code or users who provided the patch may not have resources + to investigate the issues, so the Builds Czar's help is essential to keep + things moving ahead. + <li> + Keep an eye on the tests that are run in every build. Anything abnormal needs + to be notified to the right developer. The Build Czar should try helping the + developer by providing stack traces (in case of crashes) or other details like + printouts with debugging level turned on. + <li> + Some tests fail in the daily builds for many reasons like known bugs, transient + timeouts etc. Make sure that no new test failures show up. This <a href="mailto:jwillemsen@remedy.nl"> + guy</a> + knows most of the information. Ask him to help you out with known problems. + <li> + Keep an eye on the <a href="http://www.dre.vanderbilt.edu/Stats">footprint and + performance</a> stats. Any abnormal changes should be brought to the + attention of the developer resposible for it or to the <a href="mailto:devo-group@list.isis.vanderbilt.edu"> + devo group</a>. + <li> + Keep the builds ticking. Any red on the "Last Finished" column in the + Scoreboard should be fixed. The link to the "Build Name" indicates the machine + where the build is being run. + <li> + The builds don't cover all the possible configurations. If you get a bug report + about a compile error in a particular configuration, try setting up a build to + make sure that it doesn't show up again if it has been fixed. + <li> + Keep an eye on the <a href="http://deuce.doc.wustl.edu/bugzilla/index.cgi">bugzilla + </a> + entries that are registered by users and developers. Decide on the bugs that + need to be fixed for the beta and pain developers for an ETA. + </p> + <P> + The document <a href="./privileges.html">here </a>talks about the powers of a + build Czar. + </P> + <P> + The Build Czar is empowered to set up more builds on his own for his + convenience. This <a href="https://svn.dre.vanderbilt.edu/viewvc/ACE_autobuild/trunk/README?revision=HEAD"> + page </a>has a step by step instructions on how to do that. + </P> + <P> + The build czar can get the build configuration by looking at the config portion + of the scoreboard. + </P> + <p>Pro-active involvement by the build czar is necessary. Being a pro-active + build czar requires monitoring the subversion archive carefully and responding + quickly to suspected changes to keep the repo stays stable.</p> + <hr> + <h2>Recipe for Cutting a Beta/Minor Kit</h2> + <P> + The build czar is also in charge for the release of the beta. Cutting a beta is + as simple as cutting butter if things go well. Here is the procedure followed + while cutting a beta: + <ol> + <li> + The whole process takes somewhere between 8-9 hours, it now takes much longer + than the original 2 hours for making the release itself where as generating the + doxygen documentation now completes in around this 2-3 hours mark.</li> + <li> + I suggest you take advantage of GNU Screen so that even if your SSH session is + interrupted, the cutting process can continue. This command is available on + both of the two machines we use to cut the release. + <ul> + <li> + type <code>screen</code> to start screen.</li> + <li> + execute commands as normal. Note that Ctrl-A is special in screen, so you need + to type Ctrl-A-A to send a Ctrl-A to the shell</li> + <li> + should your session be interrupted, reconnect and type <code>screen -x</code></li> + <li> + when finished, just type exit twice</li> + </ul> + <li> + Prior to starting this, gather aggregate release notes from all developers. + This is usually in the form of an email plea asking for a writeup of + significant changes since the last beta. Add these notes to the NEWS files + before cutting the release so that all notes are part of the release.</li> + <li> + Checkout a new workspace on <tt>anduril.dre.vanderbilt.edu</tt></li> + <ul> + <li> + The best place to create the workspace is under /export/anduriltmp/bczar. Don't + use the home directory itself, it is an NFS share and not really fast. + </li> + <li> + Checkout like this: + <ul> + <li> + svn co --username <your user id> + https://svn.dre.vanderbilt.edu/DOC/Middleware/trunk DOC_ROOT</li> + <li> + svn co --username <your user id> + https://svn.dre.vanderbilt.edu/DOC/MPC/trunk DOC_ROOT/ACE/MPC</li> + </ul> + </ul> + <li> + Set $DOC_ROOT to point to the new workspace you checked out.</li> + <li> + Set an environment variable SIGNATURE indicating your full name. This is used + to fill the ChangeLog entry.</li> + <ul> + <li> + For example,<tt>export SIGNATURE="Chris Cleeland"</tt></li></ul> + <li> + Set an environment variable MAILID indicating your mail id. This is used to + fill the mail id portion of the ChangeLog entry.</li> + <ul> + <li> + For example,<tt>export MAILID="cleeland@ociweb.com"</tt></li></ul> + <li> + Change directories to <tt>$DOC_ROOT</tt> + </li> + <li> + Tag the release by executing<br> + <code>ACE/bin/make_release.py --beta --update --tag</code><br> + This will only take a couple minutes to complete and once done successfully, + you can carry on with BOTH creating the kits and generating the doxygen + documentation in parallel. NOTE that <code>--beta</code> should be replaced + with <code>--minor</code> or <code>--major</code> as appropriate.</li> + <br> + <br> + In the <em>EXTREMELY</em> unlikely event that something goes wrong during the <em> + tagging</em> of the repo, the following files must be returned to the state + they were in before the release process started and then checked back into SVN:<br> + <ul> + <code> + <li> + ACE/ChangeLog</li> + <li> + ACE/PROBLEM-REPORT-FORM</li> + <li> + ACE/VERSION</li> + <li> + ACE/TAO/ChangeLog</li> + <li> + ACE/TAO/PROBLEM-REPORT-FORM</li> + <li> + TAO/VERSION</li> + <li> + CIAO/ChangeLog</li> + <li> + CIAO/PROBLEM-REPORT-FORM</li> + <li> + CIAO/VERSION</li> + <li> + CIAO/ciao/Version.h</li> + <li> + TAO/tao/Version.h</li> + ace/Version.h</li> </code> + </ul> + In most cases, a<br> + <code>svn revert -R *</code><br> + from DOC_ROOT will suffice.<br /> + The tag will also need to be removed (both in Middleware and MPC): + ACE+TAO+CIAO-X_Y_Z (where X is the ACE Major version number, and Y & Z are the + Minor and Beta release numbers of the release that is to be restarted).<p> + E.g.:<br> + <code>svn rm + https://svn.dre.vanderbilt.edu/DOC/Middleware/tags/ACE+TAO+CIAO-X_Y_Z<br /> + svn rm https://svn.dre.vanderbilt.edu/DOC/MPC/tags/ACE+TAO+CIAO-X_Y_Z<br /> + </code> + <br> + Note that this <em>only</em> needs to be done if the <em>tagging</em> fails. If + kit creation fails, simply restart that process. + <li> + Create the kits by executing<br> + <code>ACE/bin/make_release.py --kit</code><br> + This will take somewhere arround 4-8 hours to complete. + <ul> + <li> + These commands only tags and creates the kits for the software itself, not + documentation, this can be started in parrellel with this activity. + </li> + <li> + The kits end up in <tt>/export/anduriltmp/bczar/packages</tt></li> + </ul> + <p> + To summarize, the following is a transcript of the steps up to this point + executing successfully: + <p><code>$ ssh bczar@anduril.dre.vanderbilt.edu<br> + No default printer<br> + -bash-3.00$ screen<br> + -bash-3.00$ cd /export/anduriltmp/bczar<br> + -bash-3.00$ export DOC_ROOT=$PWD/DOC_ROOT<br> + -bash-3.00$ export SIGNATURE="Johnny Willemsen"<br> + -bash-3.00$ export MAILID=jwillemsen@remedy.nl<br> + -bash-3.00$ svn co https://svn.dre.vanderbilt.edu/DOC/Middleware/trunk DOC_ROOT<br> + -bash-3.00$ svn co https://svn.dre.vanderbilt.edu/DOC/MPC/trunk + DOC_ROOT/ACE/MPC<br> + -bash-3.00$ cd DOC_ROOT/<br> + -bash-3.00$ ACE/bin/make_release.py --beta --update --tag<br> + -bash-3.00$ ACE/bin/make_release.py --kit<br> + </code> + <p> + Feel free to cut and paste with suitable edits. + <li> + The packages end up by default under $DOC_ROOT/package-<PID>, you can + copy them to the webserver using the following commands. (Note that <PID> + needs to be the numerical pid of the process that created the kit, use<br> + <code>ls -ald</code><br> + to determine the correct filename.) At the moment you execute these commands + all users can download these packages.</li><br> + <code>cp $DOC_ROOT/package-<PID>/ACE* + /export/www/download.dre/ACE+TAO-distribution<br> + </code> + <li> + After the repository is tagged you can also start generating the doxygen + documentation in parrellel with the kit generation above.<br> + <ul> + <li> + Login to naboo.dre.vanderbilt.edu as bczar and start a screen session:<br> + <code>ssh bczar@naboo.dre.vanderbilt.edu</code><br> + <code>screen</code></li> + <li> + After login check that you can, + <br> + <code>ssh bczar@download.dre.vanderbilt.edu</code><br> + to ensure that this succeeds. If not fix the problem, if ok exit again back to + naboo. The make script tries to copy the tar.gz files to the website using ssh.</li> + <li> + <code>cd /web/users/isisbuilds/tmp/ACE_wrappers</code><br> + and remove the contents of this directory with</li><br> + <code>rm -rf *</code> + <li> + Update the workspace with the right version tag (replace the X_Y_Z with the ACE + version number being released e.g. 5_6_7) + <br> + <code>svn co + svn://svn.dre.vanderbilt.edu/DOC/Middleware/tags/ACE+TAO+CIAO-X_Y_Z/ACE + ACE_wrappers<br> + svn co svn://svn.dre.vanderbilt.edu/DOC/Middleware/tags/ACE+TAO+CIAO-X_Y_Z/TAO + ACE_wrappers/TAO<br> + svn co svn://svn.dre.vanderbilt.edu/DOC/Middleware/tags/ACE+TAO+CIAO-X_Y_Z/CIAO + ACE_wrappers/TAO/CIAO </code> + </li> + <li> + Set the needed environment variables using<br> + <code>export ACE_ROOT=/web/users/isisbuilds/tmp/ACE_wrappers/ACE_wrappers</code></li> + <li> + Check the doxygen version at the shell by executing the command:<br> + <code>doxygen --version</code> + </li> + <li> + Open up <code>$ACE_ROOT/bin/generate_rel_manpages</code> in your favorite + editor.<br> + Search for the string '<code><b>doxy_version</b></code>'.<br> + Check that the version specified in the file is the same as the one you got + using the shell command. If it is different change the value of the + doxy_version to the one installed on naboo.dre.vanderbilt.edu.</li> Then exit the editor. + Check the file, generate_rel_manpages back into the repository if you have made some + changes to it. + <br> + Now you are ready to create documentation + </li> + <li> + <code>cd $ACE_ROOT</code><br> + <code>make -f Release manpages</code> + </li></ul><br> + <li> + While doxygen churns, format a release announcement, including the release + notes gathered from developers. + <ul> + <li>Get from bugzilla the bugs fixed. Use the following + <a href="http://bugzilla.dre.vanderbilt.edu/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=&product=ACE&product=CIAO&product=CoSMIC&product=MPC&product=OpenDDS&product=TAO&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&status_whiteboard_type=allwordssubstr&status_whiteboard=&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailreporter2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&chfieldfrom=2008-11-28&chfieldto=Now&chfield=resolution&chfieldvalue=FIXED&cmdtype=doit&order=Reuse+same+sort+as+last+time&field0-0-0=noop&type0-0-0=noop&value0-0-0=">query</a> as start query and update the start date.</li> + <li> + Let <a href="mailto:schmidt@cs.wustl.edu">Doug Schmidt</a> review these before + you do anything with them.</li></ul> + + <li> + Make sure the new version is available in Bugzilla.</li> + <ul> + <li> + We now have a bczar Bugzilla user (bczar@dre.vanderbilt.edu) with full + privileges which points to the bczar user at ISIS. To gain access to this + account as a new build czar, you could update the ~/.forward file on one of the + ISIS hosts (for example bczar@naboo.dre.vanderbilt.edu) with your own email + address (but be aware that if you leave this ~/.forward file in effect, you + will get innundated with cron mail messages from all of the ISIS lab build + machines, so it is probably best to remove it after obtaining the Bugzilla + password). From the "Bugzilla - Main Page" + (http://bugzilla.dre.vanderbilt.edu/index.cgi) click on one of the various + "LogIn" links, and from this login page you should be able to "Submit Request" + to change a forgotten password. If you enter bczar@dre.vanderbilt.edu and click + "Submit Request" this will email you the password change link to + bczar@dre.vanderbilt.edu, which will then in turn be forwarded to your own + email account. Simply copy this link into your browser to set your own bczar + password for the next steps.</li> + <li> + here is the description of how to add a new version through Bugzilla.</li> + <li> + go to any Bugzilla "Query" page, you should see a grey box at the bottom. click + "Log in" link to log in as bczar@dre.vanderbilt.edu.</li> + <li> + look at the grey box at bottom again. You will see several links following + "Edit". Click on the "Product" link.</li> + <li> + you are then at "Select product" page. You should see a list components, i.e., + ACE CIAO TAO. Click on the product you want to edit.</li> + <li> + you are then at "Edit product" page. Scroll down a bit, you should see a list + of all versions coming with this product. At the very beginning of the list, + you should see "Edit versions" link. Click this link.</li> + <li> + you should see a "Add a new version" text box and a "Add" link just above the + grey box at the bottom. Click on this link</li> + <li> + you are then at "Add version of [Name of the product]" page.</li> + <li> + you are able to add the new version now.</li> + </ul><br> + <li> + Back on <b>naboo.dre.vanderbilt.edu</b> once the doxygen generation has finished, update the documentation at www.dre.vanderbilt.edu/Doxygen.</li> + <ul> + <li> + <code>cd /web/www/Doxygen</code></li> + <li> + Create a temporary directory. eg. tmp and change Directory to this- <br><code>mkdir tmp</code><br><code>cd tmp</code></li> + <li> + scp file from the download server -<br><code>scp + bczar@download.dre.vanderbilt.edu:/export/www/download.dre/ACE+TAO-distribution/ACE-html.tar.bz2 .</code> + </li> + <li> + Unzip and untar the files - <br><code>bunzip2 ACE-html.tar.bz2;tar -xvf ACE-html.tar</code></li> + <li>back out of the temporary directory<br> + <code>cd ..</code></li> + <li> + Create directory 'Current Version No' for example 5.6.7 and change directory into this new one<br><code>mkdir 5.6.7<br>cd 5.6.7</code></li> + <li> + Move contents of the temporary directory's html to this directory -<br><code>mv ../tmp/html .</code></li> + <li> + Now back our of this directory and remove the already existing soflink to the "Micro" directory -<br><code>cd ..<br>rm Micro</code></li> + <li> + Create softlink "Micro" linking it to new Documentation using -<br><code>ln -s 5.6.7/html + Micro</code></li> + <li> + Remove the directory tmp -<br><code>rm -rf tmp</code></lib> + </ul><br> + <li> + Back on <b>anduril.dre.vanderbilt.edu</b> where the kit was being generated and once <b>BOTH</b> the kit + and doxygen generation have finished their work, you should also move the packages to the + previous versions directory with the appropriate decorators. + <ul> + <li> + <code>cd /export/www/download.dre/ACE+TAO-distribution</code></li> + <li> + Check that the packages in this directory are all from today</li> + <li> + Modify <b><code>/export/anduriltmp/bczar/copy_script.sh</code></b> + to use the correct ACE version X.Y.Z and run it. + </ul><br> + <li> + Mail the approved release announcement out to, at minimum the following: <tt>ciao-users@list.isis.vanderbilt.edu</tt>, + <tt>tao-users@list.isis.vanderbilt.edu</tt>, <tt>tao-announce@list.isis.vanderbilt.edu</tt>, + <tt>ace-users@list.isis.vanderbilt.edu</tt>, <tt>ace-announce@list.isis.vanderbilt.edu</tt>. + Do this as yourself (not as bugzilla). <b>N.B.</b> + You will not be able to post to the users' lists unless you are subscribed to + them. Odds are you will not be able to post to the announce lists at all. Ask + someone else (like Doug or Johnny) to do this step.<br> + <li> + When all cidlc builds are ready with the new version, login to + naboo.dre.vanderbilt.edu as bczar and run <code>./cut_cidlc.sh version-number</code> + where the version-number is the CIAO release just made. For example<br> + <code>./cut_cidlc.sh 0.6.7</code><br>If this script is not in its place, then + the original is in the bin directory of the distribution.</li> + <li> + Update in the autobuild archive the file configs/scoreboard/releases.xml with + the made release (version number and release date). This is used by the integrated scoreboard on http://remedy.nl Remember to do a changelog entry.</li> + <li> + Update the ACE_wrappers repo (remember to create a changelog entry, and possiably archive the old changelog to the changelog directory if this has become too long):<ul> + <li>docs/Download.html to show the new release. Make sure you refer to the + previous_versions directory, that way we can exactly track how many people + download a specific version.</li> + <li> + etc/index.hml to show the new doxygen package you installed</li> + <li>bin/diff-builds-and-group-fixed-tests-only.sh to give the correct default old_date for this release.</li></ul> + <li> + Update the NEWS, TAO/NEWS, and TAO/CIAO/NEWS files to have a new section for the next release.</li> + <li> + Update the rpmbuild/*.spec files to have a new version for the next release.</li> + <li> + Validate the packages on the webserver whether they are really containing the new release. Make at least + one builid where you run the TAO Hello world test and check if the libraries are having the + correct version number.</li> + </ol> + </p> + <hr> + <h2> + Tips to being a Build Czar</h2> + <p> + 1. Trust no one.<br> + 2. Be careful with <a href="http://www.cs.wustl.edu/~schmidt">this guy</a>, he + is notorious in breaking builds (and fixing them as well...Rumour has it that + it's actually a super-scalar, super-pipelined processor capable of out-of-order + execution, in human incarnation).<br> + 3. Don't forgive people who break ACE :-)<br> + 4. If a build hasn't run in a long time (symptoms are a "red" in the Last Run + column of the build scoreboard), delete the .disable file in + /path/to/build/directory/BUILD_NAME/ by hand.<br> + 5. Think of the group who wrote the scoreboard update script, every time you + catch an otherwise not so obvious error with the help of the scoreboard. Tell <a href="mailto:devo-group@list.isis.vanderbilt.edu"> + DEVO group</a> about it.<br> + 6. Send a note to <a href="mailto:sysadmin@isis.vanderbilt.edu">sysadmin@isis.vanderbilt.edu</a> asking for the repo to be frozen. Provide them a list of names, including yourself and bczar to be granted write permission. + <br> + 7. Compile once on Win32, Linux and Solaris before cutting a beta.<br> + 8. Trust the release script when making a release. Don't make tar balls by + hand. Make sure that the public ftp directories + (/project/beguine/ftp/pub/ACE+TAO-distribution and + /project/beguine/ftp/pub/ACE+TAO-distribution/diffs) have the right + permissions, so that the release script can copy the tar balls.<br> + 9. When making a release, make sure that all the auto_compiles on that machine + (deuce.doc.wustl.edu) are stopped. Also make sure that there is enough space in + /tmp on that machine.<br> + 10. When all hell breaks loose, don't wait for the nightly builds to monitor + improvement. Instead manually start the builds.<br> + 11. Maintain private up-to-date workspaces for problem platforms (read as + Solaris).<br> + 12. Don't hesitate to ask for help.<br> + 13. When you get an account to access the svn repo, make sure you are added to + the correct groups, for example, + gid=100(users),5000(doc),5002(acetaodev),5003(cvs). Otherwise you will have + problem to checkout various modules.<br> + 14. Install your public key to the different machines you have frequent access + to avoid typing password.<br> + 15. Update this page if you have any more tips for future build czars :-). This + page is in svn under <code>ACE_wrappres/docs/bczar/bczar.html</code><br> + </p> + <hr> + <Center> + <h1>The Realm of the Build Czar</h1> + </Center> + <hr> + <h2>Build Czar Arthur</h2> + <p>Many years have passes since the days of the legendary Build Czar Arthur. His + duties were given to him by the mystical Lady of the Lake, who outlined the + first responsibilities of the Build Czar.</p> + <tt> + <br> + Then bespake the Lady of the Lake,<br> + And these were the words said shee:<br> + "I knoweth of thy deeds, thou noble Arthur,<br> + but thy task hath not finished for thee"<br> + <br> + "Thou shalt feitch thy trusty steed,<br> + And cleanse thy builds againe;<br> + Then shallt thy ryde hath finnished,<br> + When new kits released thee cann."<br> + <br> + Then bespake him noble Arthur<br> + And these were the words said he:<br> + "With what weapons shallt I use,<br> + To asure these from the devil free?"<br> + <br> + Then appeered before noble Arthur,<br> + Uppon the ground a sacred scroll<br> + Conjurred by the Lady of the Lake<br> + Borne of the earth in a roll.<br> + <br> + She saies, "Clasp this to thine selfe<br> + For thee shallt find need for it.<br> + It shall keep others in the cold,<br> + Only to be ressurected when thee sees fit."<br> + <br> + "Others shall join thy person,<br> + To ryde with thee in thy quest;<br> + Thee shallt be thankful of theire help,<br> + And to alsoe hold them steadfast."<br> + <br> + "But if theire talke too lodly rise,<br> + And causeth much damage to thine cuntry,<br> + He must come forth, and make proclamation,<br> + For the next one he shall be."<br> + <br> + So hath Arthur to the Lady spoke:<br> + "For I sweare, and save my othe,<br> + While enimes and evils I seeke,<br> + I shall fight against them bothe.<br> + <br> + </tt> + <hr> + </html> </body> diff --git a/ACE/docs/run_test.txt b/ACE/docs/run_test.txt index 5f77a734921..c02da95ab27 100644 --- a/ACE/docs/run_test.txt +++ b/ACE/docs/run_test.txt @@ -11,6 +11,8 @@ sure the run_test.pl works on all platforms - The run_test should return a non-zero value if the test failed - When an executable can't be spawned the test should directly exit and not wait for a fail to be created by that executable +- The processes should suppor that files names are passed through + the commandline Following is an example @@ -25,53 +27,70 @@ eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}' # -*- perl -*- use lib "$ENV{ACE_ROOT}/bin"; -use PerlACE::Run_Test; +use PerlACE::TestTarget; $status = 0; +my $server = PerlACE::TestTarget::create_target (1) || die "Create target 1 failed\n"; +my $client = PerlACE::TestTarget::create_target (2) || die "Create target 2 failed\n"; + $plain_server_ior = "server.ior"; -$server_ior = PerlACE::LocalFile ("$plain_server_ior"); -unlink $server_ior; +my $iorbase = "server.ior"; +my $server_iorfile = $server->LocalFile ($iorbase); +my $client_iorfile = $client->LocalFile ($iorbase); +$server->DeleteFile($iorbase); +$client->DeleteFile($iorbase); -if (PerlACE::is_vxworks_test()) { - $SV = new PerlACE::ProcessVX ("server", "-o $plain_server_ior"); -} -else { - $SV = new PerlACE::Process ("server", "-o $server_ior_file"); -} +$SV = $server->CreateProcess ("server", "-ORBdebuglevel $debug_level -o $server_iorfile"); +$CL = $client->CreateProcess ("client", "-k file://$client_iorfile"); -$CL = new PerlACE::Process ("client", "-k file://$server_ior"); +$server_status = $SV->Spawn (); -$server = $SV->Spawn (); +if ($server_status != 0) { + print STDERR "ERROR: server returned $server_status\n"; + exit 1; +} -if ($server != 0) { - print STDERR "ERROR: server returned $server\n"; - $status = 1; +if ($server->WaitForFileTimed ($iorbase, + $server->ProcessStartWaitInterval()) == -1) { + print STDERR "ERROR: cannot find file <$server_iorfile>\n"; + $SV->Kill (); $SV->TimedWait (1); + exit 1; } -if (PerlACE::waitforfile_timed ($server_ior, $PerlACE::wait_interval_for_process_creation) == -1) { - print STDERR "ERROR: cannot find file <$server_ior>\n"; - $SV->Kill (); +if ($server->GetFile ($iorbase) == -1) { + print STDERR "ERROR: cannot retrieve file <$server_iorfile>\n"; + $SV->Kill (); $SV->TimedWait (1); + exit 1; +} +if ($client->PutFile ($iorbase) == -1) { + print STDERR "ERROR: cannot set file <$client_iorfile>\n"; + $SV->Kill (); $SV->TimedWait (1); exit 1; } -$client = $CL->SpawnWaitKill (60); +$client_status = $CL->SpawnWaitKill ($client->ProcessStartWaitInterval()); -if ($client != 0) { - print STDERR "ERROR: client returned $client\n"; +if ($client_status != 0) { + print STDERR "ERROR: client returned $client_status\n"; $status = 1; } -$server = $SV->TerminateWaitKill (5); +$server_status = $SV->WaitKill ($server->ProcessStopWaitInterval()); -if ($server != 0) { - print STDERR "ERROR: server returned $server\n"; +if ($server_status != 0) { + print STDERR "ERROR: server returned $server_status\n"; $status = 1; } -unlink $server_ior; +$server->GetStderrLog(); +$client->GetStderrLog(); + +$server->DeleteFile($server_iorfile); +$client->DeleteFile($client_iorfile); exit $status; + @endverbatim @subsection details Example Details @@ -92,7 +111,7 @@ The SVN ID string is the usual one we put in. @verbatim use lib "$ENV{ACE_ROOT}/bin"; -use PerlACE::Run_Test; +use PerlACE::TestTarget; @endverbatim The use lib line is used to tell Perl where the PerlACE modules are. @@ -109,69 +128,82 @@ line arguments (like -Config and -ExeSubDir) and also brings in the PerlACE::Process module. @verbatim -$status = 0; +my $server = PerlACE::TestTarget::create_target (1) || die "Create target 1 failed\n"; +my $client = PerlACE::TestTarget::create_target (2) || die "Create target 2 failed\n"; +@endverbatim -$server_ior = PerlACE::LocalFile ("server.ior"); +We need to have two targets to run the tst on -unlink $server_ior; +@verbatim +my $iorbase = "server.ior"; +my $server_iorfile = $server->LocalFile ($iorbase); +my $client_iorfile = $client->LocalFile ($iorbase); +$server->DeleteFile($iorbase); +$client->DeleteFile($iorbase); @endverbatim Because of the way tests work on chorus, we need to have a fully qualified path to all *.ior and *.conf files. We unlink the file -immediately because we use PerlACE::waitforfile_timed later. +immediately because we use WaitForFileTimed later. @verbatim -if (PerlACE::is_vxworks_test()) { - $SV = new PerlACE::ProcessVX ("server", "-o $plain_server_ior"); -} -else { - $SV = new PerlACE::Process ("server", "-o $server_ior_file"); -} +$SV = $server->CreateProcess ("server", "-ORBdebuglevel $debug_level -o $server_iorfile"); @endverbatim -We check using PerlACE::is_vxworks_test() if we are testing for VxWorks. At -that moment we have to run on part of the test on the target, the other -part on the host system. The part that has to run on the target has to -be created as PerlACE::ProcessVX. When using VxWorks the files shouldn't -be passed in created by PerlACE::LocalFile because that refers to the -ior file on the host system, that is not reachable for the target, so -the plain text filename should be passed. +The server we have to spawn @verbatim -$CL = new PerlACE::Process ("client", " -k file://$server_ior "); +$CL = $client->CreateProcess ("client", "-k file://$client_iorfile"); -$server = $SV->Spawn (); +$server_status = $SV->Spawn (); -if ($server != 0) { - print STDERR "ERROR: server returned $server\n"; - $status = 1; +if ($server_status != 0) { + print STDERR "ERROR: server returned $server_status\n"; + exit 1; } @endverbatim -The PerlACE::Process is constructed with an executable and +The PerlACE::Process is created with an executable and arguments. @note Unlike the old Process module, the process isn't started until one of the Spawn methods is used. We check the result of the spawn, if we couldn't spawn the process we directly exit the script. @verbatim -if (PerlACE::waitforfile_timed ($server_ior, $PerlACE::wait_interval_for_process_creation) == -1) { - print STDERR "ERROR: cannot find file <$server_ior>\n"; - $SV->Kill (); +if ($server->WaitForFileTimed ($iorbase, + $server->ProcessStartWaitInterval()) == -1) { + print STDERR "ERROR: cannot find file <$server_iorfile>\n"; + $SV->Kill (); $SV->TimedWait (1); exit 1; } @endverbatim -The PerlACE::waitforfile_timed method waits until the file is +The WaitForFileTimed method waits until the file is created. In this way, we know when to start the client. If no IOR file is used, then you'd need to use Perl's sleep method. @verbatim -$client = $CL->SpawnWaitKill (60); +if ($server->GetFile ($iorbase) == -1) { + print STDERR "ERROR: cannot retrieve file <$server_iorfile>\n"; + $SV->Kill (); $SV->TimedWait (1); + exit 1; +} +if ($client->PutFile ($iorbase) == -1) { + print STDERR "ERROR: cannot set file <$client_iorfile>\n"; + $SV->Kill (); $SV->TimedWait (1); + exit 1; +} +@endverbatim + +This transfers the file from the server to the client in +case that is needed with the used test targets. + +@verbatim +$client_status = $CL->SpawnWaitKill ($client->ProcessStartWaitInterval()); -if ($client != 0) { - print STDERR "ERROR: client returned $client\n"; +if ($client_status != 0) { + print STDERR "ERROR: client returned $client_status\n"; $status = 1; } @endverbatim @@ -187,10 +219,10 @@ timeout, since SpawnWaitKill will print out a timeout error. Instead, just check for != 0. @verbatim -$server = $SV->TerminateWaitKill (5); +$server_status = $SV->WaitKill ($server->ProcessStopWaitInterval()); -if ($server != 0) { - print STDERR "ERROR: server returned $server\n"; +if ($server_status != 0) { + print STDERR "ERROR: server returned $server_status\n"; $status = 1; } @endverbatim @@ -202,7 +234,11 @@ it does (such as when the client calls a shutdown method). Once again, we check the return status. @verbatim -unlink $server_ior; +$server->GetStderrLog(); +$client->GetStderrLog(); + +$server->DeleteFile($server_iorfile); +$client->DeleteFile($client_iorfile); exit $status; @endverbatim diff --git a/ACE/docs/svn/config b/ACE/docs/svn/config index 743e4ac9dea..8cb4c69a472 100644 --- a/ACE/docs/svn/config +++ b/ACE/docs/svn/config @@ -61,7 +61,7 @@ [miscellany] ### Set global-ignores to a set of whitespace-delimited globs ### which Subversion will ignore in its status output. -global-ignores = *.o *.lo *.la #*# .*.rej *.rej .*~ *~ .#* .DS_Store *.class *C.i *C.inl *S.i *S.inl *C.h *S.h *C.cpp *S.cpp *C.hh *S.hh *S_T.i *S_T.inl *S_T.h *S_T.cpp .obj .pure .shobj config.h Templates.DB Thumbs.db ir.out *.aux *.lof *.lot *.log *.dvi *.blg *.bbl *.ior *Cli.* *Ser.* *Ser_T.* *.vcl *.vcb *.vcl *.vco *.SUP .depend.* GNUmake* [Mm]akefile *.mak *.a *.so* *.idb *.obj *.exe *_svnt.* *.user *.vcproj *.dsw *.dsp *.sln *.suo *.dep *.tlb *.pch *.ocx *.dll *.exp *.ilk *.lib *.ncb *.opt *.pdb *.plg *.bsc *.res LIB DLL Debug Release Static_Debug Static_Release *.bak *.trg *.mga *.mta ComponentLib.h *_[ip].c dlldata.c *.tds *.vxe +global-ignores = *.o *.lo *.la #*# .*.rej *.rej .*~ *~ .#* .DS_Store *.class *C.i *C.inl *S.i *S.inl *C.h *S.h *C.cpp *S.cpp *C.hh *S.hh *S_T.i *S_T.inl *S_T.h *S_T.cpp .obj .pure .shobj config.h Templates.DB Thumbs.db ir.out *.aux *.lof *.lot *.log *.dvi *.blg *.bbl *.ior *Cli.* *Ser.* *Ser_T.* *.vcl *.vcb *.vcl *.vco *.SUP .depend.* GNUmake* [Mm]akefile *.mak *.a *.so* *.idb *.obj *.exe *_svnt.* *.user *.vcproj *.dsw *.dsp *.sln *.suo *.dep *.tlb *.pch *.ocx *.dll *.exp *.ilk *.lib *.ncb *.opt *.pdb *.plg *.bsc *.res LIB DLL Debug Release Static_Debug Static_Release *.bak *.trg *.mga *.mta ComponentLib.h *_[ip].c dlldata.c *.tds *.vxe *.bmak ### Set log-encoding to the default encoding for log messages # log-encoding = latin1 ### Set use-commit-times to make checkout/update/switch/revert @@ -108,6 +108,7 @@ enable-auto-props = yes *.mpc=svn:eol-style=native;svn:keywords=Author Date Id Revision *.mpb=svn:eol-style=native;svn:keywords=Author Date Id Revision *.mpt=svn:eol-style=native;svn:keywords=Author Date Id Revision +*.ns=svn:eol-style=native;svn:keywords=Author Date Id Revision *.cdp=svn:eol-style=native;svn:keywords=Author Date Id Revision *.pcd=svn:eol-style=native;svn:keywords=Author Date Id Revision *.cdd=svn:eol-style=native;svn:keywords=Author Date Id Revision @@ -141,6 +142,7 @@ enable-auto-props = yes *.ll=svn:eol-style=native;svn:keywords=Author Date Id Revision *.yy=svn:eol-style=native;svn:keywords=Author Date Id Revision *.conf=svn:eol-style=native;svn:keywords=Author Date Id Revision +*.pem=svn:eol-style=native;svn:keywords=Author Date Id Revision Change?og*=svn:eol-style=native;svn:keywords=Author Date Id Revision README=svn:eol-style=native;svn:keywords=Author Date Id Revision "Makefile"="svn:eol-style=native;svn:keywords=Author Date Id Revision" diff --git a/ACE/docs/svn/svn-prefs.reg b/ACE/docs/svn/svn-prefs.reg index b4c15c2cdcc..bea9fede09d 100644 --- a/ACE/docs/svn/svn-prefs.reg +++ b/ACE/docs/svn/svn-prefs.reg @@ -26,7 +26,7 @@ REGEDIT4 "#diff3-has-program-arg"="" [HKEY_CURRENT_USER\Software\Tigris.org\Subversion\Config\miscellany] -"global-ignores"="*.o *.lo *.la #*# .*.rej *.rej .*~ *~ .#* .DS_Store *.class *C.i *C.inl *S.i *S.inl *C.h *S.h *C.cpp *S.cpp *C.hh *S.hh *S_T.i *S_T.inl *S_T.h *S_T.cpp .obj .pure .shobj config.h Templates.DB Thumbs.db ir.out *.aux *.lof *.lot *.log *.dvi *.blg *.bbl *.ior *Cli.* *Ser.* *Ser_T.* *.vcl *.vcb *.vcl *.vco *.SUP .depend.* GNUmake* [Mm]akefile *.mak *.a *.so* *.idb *.obj *.exe *_svnt.* *.user *.vcproj *.dsw *.dsp *.sln *.suo *.dep *.tlb *.pch *.ocx *.dll *.exp *.ilk *.lib *.ncb *.opt *.pdb *.plg *.bsc *.res LIB DLL Debug Release Static_Debug Static_Release *.bak *.trg *.mga *.mta ComponentLib.h *_[ip].c dlldata.c *.tds *.vxe" +"global-ignores"="*.o *.lo *.la #*# .*.rej *.rej .*~ *~ .#* .DS_Store *.class *C.i *C.inl *S.i *S.inl *C.h *S.h *C.cpp *S.cpp *C.hh *S.hh *S_T.i *S_T.inl *S_T.h *S_T.cpp .obj .pure .shobj config.h Templates.DB Thumbs.db ir.out *.aux *.lof *.lot *.log *.dvi *.blg *.bbl *.ior *Cli.* *Ser.* *Ser_T.* *.vcl *.vcb *.vcl *.vco *.SUP .depend.* GNUmake* [Mm]akefile *.mak *.a *.so* *.idb *.obj *.exe *_svnt.* *.user *.vcproj *.dsw *.dsp *.sln *.suo *.dep *.tlb *.pch *.ocx *.dll *.exp *.ilk *.lib *.ncb *.opt *.pdb *.plg *.bsc *.res LIB DLL Debug Release Static_Debug Static_Release *.bak *.trg *.mga *.mta ComponentLib.h *_[ip].c dlldata.c *.tds *.vxe *.bmak" "#log-encoding"="" "use-commit-times"="yes" "#template-root"="" @@ -35,6 +35,7 @@ REGEDIT4 [HKEY_CURRENT_USER\Software\Tigris.org\Subversion\Config\auto-props] "*.aspx"="svn:eol-style=native;svn:keywords=Author Date Id Revision" +"*.conf"="svn:eol-style=native;svn:keywords=Author Date Id Revision" "*.cpp"="svn:eol-style=native;svn:keywords=Author Date Id Revision" "*.cxx"="svn:eol-style=native;svn:keywords=Author Date Id Revision" "*.cc"="svn:eol-style=native;svn:keywords=Author Date Id Revision" @@ -52,6 +53,7 @@ REGEDIT4 "*.pidl"="svn:eol-style=native;svn:keywords=Author Date Id Revision" "*.cidl"="svn:eol-style=native;svn:keywords=Author Date Id Revision" "*.html"="svn:eol-style=native;svn:keywords=Author Date Id Revision" +"*.pem"="svn:eol-style=native;svn:keywords=Author Date Id Revision" "*.sh"="svn:eol-style=native;svn:keywords=Author Date Id Revision;svn:executable" "*.py"="svn:eol-style=native;svn:keywords=Author Date Id Revision;svn:executable" "*.pl"="svn:eol-style=native;svn:keywords=Author Date Id Revision;svn:executable" @@ -62,6 +64,7 @@ REGEDIT4 "*.mpc"="svn:eol-style=native;svn:keywords=Author Date Id Revision" "*.mpb"="svn:eol-style=native;svn:keywords=Author Date Id Revision" "*.mpt"="svn:eol-style=native;svn:keywords=Author Date Id Revision" +"*.ns"="svn:eol-style=native;svn:keywords=Author Date Id Revision" "*.cdp"="svn:eol-style=native;svn:keywords=Author Date Id Revision" "*.pcd"="svn:eol-style=native;svn:keywords=Author Date Id Revision" "*.cdd"="svn:eol-style=native;svn:keywords=Author Date Id Revision" @@ -94,6 +97,7 @@ REGEDIT4 "*.rc"="svn:eol-style=native;svn:keywords=Author Date Id Revision" "*.gplot"="svn:eol-style=native;svn:keywords=Author Date Id Revision" "*.diff"="svn:eol-style=native;svn:keywords=Author Date Id Revision" +"*.xme"="svn:eol-style=native;svn:keywords=Author Date Id Revision" "Change?og*"="svn:eol-style=native;svn:keywords=Author Date Id Revision" "README"="svn:eol-style=native;svn:keywords=Author Date Id Revision" "Makefile"="svn:eol-style=native;svn:keywords=Author Date Id Revision" diff --git a/ACE/docs/wchar.txt b/ACE/docs/wchar.txt index 14c0d9e5ce0..cb502dd9110 100644 --- a/ACE/docs/wchar.txt +++ b/ACE/docs/wchar.txt @@ -34,7 +34,7 @@ Like Regular Support, both char and wchar_t versions of some methods are available, but unlike Regular Support, other methods that have char arguments or return values may have wchar_t arguments or return values. -This has only been tested in Windows, and is the default for Windows CE. +This has been tested on Windows and Linux, and is the default for Windows CE. @subsection wchar_othermacros Other Important Macros @@ -55,15 +55,9 @@ ACE_TCHAR * and needs to be a char * string. ACE_TEXT_WIDE ("foo") is unique in that it always maps to L"foo". It is not a conditional macro. -For string constants in code, ACE_TEXT and ACE_LIB_TEXT are used to put the -Unicode prefix (Usually 'L') before the string when needed. By default both -are controlled by ACE_USES_WCHAR. - -All ACE code except for the ACE library should use ACE_TEXT. ACE_LIB_TEXT -was introduced as a short-term fix for backwards compatibility purposes. -This allows ACE_TEXT to be overriden to act just like TEXT in Microsoft -Windows while not affecting ACE's interface. In the future ACE_LIB_TEXT and -this backwards compatibility will be deprecated and removed. +For string constants in code, ACE_TEXT is used to put the Unicode prefix +(Usually 'L') before the string when needed. This is controlled by +ACE_USES_WCHAR. Finally, on Windows there are a bunch of ACE_TEXT_Apicall type macros which are used to choose the correct version of a Win32 API function depending on @@ -75,7 +69,7 @@ done. One of the more troublesome aspect of supporting wide and Ansi strings is the fact that the format strings for ACE_DEBUG and family always had to have -ACE_TEXT (or ACE_LIB_TEXT) around them. +ACE_TEXT around them. Now this should not be the case, since ACE_Log_Msg was extended to support both types of format strings concurrently. This is okay, but when strings diff --git a/ACE/etc/ace.doxygen b/ACE/etc/ace.doxygen index fb37002b8f7..9dd3895dc4f 100644 --- a/ACE/etc/ace.doxygen +++ b/ACE/etc/ace.doxygen @@ -135,7 +135,9 @@ EXPAND_AS_DEFINED = ACE_RCSID \ ACE_CACHE_MAP_MANAGER \ ACE_THROW_SPEC \ ACE_T1 \ - ACE_T2 + ACE_T2 \ + ACE_BEGIN_VERSIONED_NAMESPACE_DECL \ + ACE_END_VERSIONED_NAMESPACE_DECL #--------------------------------------------------------------------------- # Configuration::addtions related to external references diff --git a/ACE/etc/index.html b/ACE/etc/index.html index bf833f5ee06..97f4162a304 100644 --- a/ACE/etc/index.html +++ b/ACE/etc/index.html @@ -35,6 +35,8 @@ <hr> We do have the documentation for previous releases <ul> + <LI><P><A HREF="5.6.8/html">5.6.8</A></P></LI> + <LI><P><A HREF="5.6.7/html">5.6.7</A></P></LI> <LI><P><A HREF="5.6.6/html">5.6.6</A></P></LI> <LI><P><A HREF="5.6.5/html">5.6.5</A></P></LI> <LI><P><A HREF="5.6.4/html">5.6.4</A></P></LI> @@ -67,7 +69,7 @@ <address><a href="mailto:bala at dre dot vanderbilt dot edu">Bala Natarajan</a></address> <!-- Created: Sun Sep 24 15:02:40 PDT 2000 --> <!-- hhmts start --> -Last modified: Thu Apr 17 17:18:35 CDT 2003 +Last modified: Fri Nov 29 09:00:00 UTC 2008 <!-- hhmts end --> </body> </html> diff --git a/ACE/examples/APG/Containers/DLList.cpp b/ACE/examples/APG/Containers/DLList.cpp index 8c93e5b4039..d45d5c5fb38 100644 --- a/ACE/examples/APG/Containers/DLList.cpp +++ b/ACE/examples/APG/Containers/DLList.cpp @@ -97,7 +97,7 @@ ListTest::displayList (MyList& list) } ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n"))); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Reverse Iteration \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Reverse Iteration\n"))); ACE_DLList_Reverse_Iterator<DataElement> riter (list); while (!riter.done ()) { diff --git a/ACE/examples/APG/Containers/Hash_Map.cpp b/ACE/examples/APG/Containers/Hash_Map.cpp index 1b2d4ee4634..d93d9d54be5 100644 --- a/ACE/examples/APG/Containers/Hash_Map.cpp +++ b/ACE/examples/APG/Containers/Hash_Map.cpp @@ -54,7 +54,7 @@ int Hash_Map_Example::run (void) map_.bind (i, DataElement(i)); } - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Map has \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Map has\n"))); for (int j = 0; j < 100; j++) { DataElement d; @@ -82,7 +82,7 @@ void Hash_Map_Example::iterate_forward (void) { ACE_TRACE (ACE_TEXT ("Hash_Map_Example::iterate_forward")); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Forward Iteration \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Forward Iteration\n"))); for (Hash_Map<int, DataElement>::iterator iter = map_.begin (); iter != map_.end (); iter++) { @@ -95,7 +95,7 @@ void Hash_Map_Example::iterate_reverse (void) { ACE_TRACE (ACE_TEXT ("Hash_Map_Example::iterate_reverse")); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Reverse Iteration \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Reverse Iteration\n"))); for (Hash_Map<int, DataElement>::reverse_iterator iter = map_.rbegin (); iter != map_.rend (); iter++) { diff --git a/ACE/examples/APG/Containers/Hash_Map_Hash.cpp b/ACE/examples/APG/Containers/Hash_Map_Hash.cpp index faad3c72585..f81136ac085 100644 --- a/ACE/examples/APG/Containers/Hash_Map_Hash.cpp +++ b/ACE/examples/APG/Containers/Hash_Map_Hash.cpp @@ -47,7 +47,7 @@ int Hash_Map_Example::run (void) map_.bind (i, DataElement (i)); } - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Map has \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Map has\n"))); for (int j = 0; j < 100; j++) { DataElement d; @@ -75,7 +75,7 @@ void Hash_Map_Example::iterate_forward (void) { ACE_TRACE (ACE_TEXT ("Hash_Map_Example::iterate_forward")); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Forward Iteration \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Forward Iteration\n"))); for (Hash_Map<KeyType, DataElement>::iterator iter = map_.begin (); iter != map_.end (); iter++) { @@ -88,7 +88,7 @@ void Hash_Map_Example::iterate_reverse (void) { ACE_TRACE (ACE_TEXT ("Hash_Map_Example::iterate_reverse")); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Reverse Iteration \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Reverse Iteration\n"))); for (Hash_Map<KeyType, DataElement>::reverse_iterator iter = map_.rbegin (); iter != map_.rend (); iter++) { diff --git a/ACE/examples/APG/Containers/Map_Manager.cpp b/ACE/examples/APG/Containers/Map_Manager.cpp index 6673204fcc4..8588a52daf2 100644 --- a/ACE/examples/APG/Containers/Map_Manager.cpp +++ b/ACE/examples/APG/Containers/Map_Manager.cpp @@ -37,7 +37,7 @@ int Map_Example::run (void) map_.bind (i, DataElement (i)); } - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Map has \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Map has\n"))); for (int j = 0; j < 100; j++) { DataElement d; diff --git a/ACE/examples/APG/Containers/Map_Manager_Specialization.cpp b/ACE/examples/APG/Containers/Map_Manager_Specialization.cpp index fc9c00d86f0..afffce23b5d 100644 --- a/ACE/examples/APG/Containers/Map_Manager_Specialization.cpp +++ b/ACE/examples/APG/Containers/Map_Manager_Specialization.cpp @@ -36,6 +36,7 @@ ACE_Map_Manager<KeyType, DataElement, ACE_Null_Mutex>::equal } // Listing 1 #else +ACE_BEGIN_VERSIONED_NAMESPACE_DECL template<> int ACE_Map_Manager<KeyType, DataElement, ACE_Null_Mutex>::equal @@ -43,6 +44,7 @@ ACE_Map_Manager<KeyType, DataElement, ACE_Null_Mutex>::equal { return (r1 == r2); } +ACE_END_VERSIONED_NAMESPACE_DECL #endif /* 0 */ class Map_Example @@ -75,7 +77,7 @@ int Map_Example::run (void) map_.bind (i, DataElement (i)); } - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Map has \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Map has\n"))); for (int j = 0; j < 100; j++) { DataElement d; diff --git a/ACE/examples/APG/Containers/RB_Tree.cpp b/ACE/examples/APG/Containers/RB_Tree.cpp index 187332a31d8..cf6c2326df4 100644 --- a/ACE/examples/APG/Containers/RB_Tree.cpp +++ b/ACE/examples/APG/Containers/RB_Tree.cpp @@ -50,7 +50,7 @@ int Tree_Example::run (void) } } - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Using find: \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Using find:\n"))); for (int j = 0; j < 100; j++) { tree_.find (j, d); @@ -77,7 +77,7 @@ void Tree_Example::iterate_forward (void) { ACE_TRACE (ACE_TEXT ("Tree_Example::iterate_forward")); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Forward Iteration: \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Forward Iteration:\n"))); for (Tree<int, DataElement*>::iterator iter = tree_.begin (); iter != tree_.end (); iter++) { @@ -91,7 +91,7 @@ void Tree_Example::iterate_reverse (void) { ACE_TRACE (ACE_TEXT ("Tree_Example::iterate_reverse")); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Reverse Iteration: \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Reverse Iteration:\n"))); for (Tree<int, DataElement*>::reverse_iterator iter = tree_.rbegin (); iter != tree_.rend (); iter++) diff --git a/ACE/examples/APG/Containers/RB_Tree_Functors.cpp b/ACE/examples/APG/Containers/RB_Tree_Functors.cpp index cb71fd75d79..3010075761d 100644 --- a/ACE/examples/APG/Containers/RB_Tree_Functors.cpp +++ b/ACE/examples/APG/Containers/RB_Tree_Functors.cpp @@ -52,7 +52,7 @@ int Tree_Example::run () } } - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Using find: \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Using find:\n"))); for (int j = 0; j < 100; j++) { DataElement* d = 0; @@ -84,7 +84,7 @@ void Tree_Example::iterate_forward (void) { ACE_TRACE (ACE_TEXT ("Tree_Example::iterate_forward")); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Forward Iteration \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Forward Iteration\n"))); for (Tree<KeyType, DataElement*>::iterator iter = tree_.begin (); iter != tree_.end (); iter++) { @@ -97,7 +97,7 @@ void Tree_Example::iterate_reverse (void) { ACE_TRACE (ACE_TEXT ("Tree_Example::iterate_reverse")); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Reverse Iteration \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Reverse Iteration\n"))); for (Tree<KeyType, DataElement*>::reverse_iterator iter = tree_.rbegin (); iter != tree_.rend (); iter++) { diff --git a/ACE/examples/APG/ThreadManagement/Async_Cancel.cpp b/ACE/examples/APG/ThreadManagement/Async_Cancel.cpp index 842c7fa2bca..3aac199d793 100644 --- a/ACE/examples/APG/ThreadManagement/Async_Cancel.cpp +++ b/ACE/examples/APG/ThreadManagement/Async_Cancel.cpp @@ -23,6 +23,10 @@ public: // Put this thread in a compute loop.. no // cancellation points are available. } +#if defined (__HP_aCC) + // This is only to workaround a warning on HP-UX compiler. + return 0; +#endif /* __HP_aCC */ } int set_cancel_mode (void) diff --git a/ACE/examples/APG/ThreadManagement/Coop_Cancel.cpp b/ACE/examples/APG/ThreadManagement/Coop_Cancel.cpp index 4a7714cf14b..781f72e4d35 100644 --- a/ACE/examples/APG/ThreadManagement/Coop_Cancel.cpp +++ b/ACE/examples/APG/ThreadManagement/Coop_Cancel.cpp @@ -15,7 +15,7 @@ public: virtual int svc (void) { - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) starting up \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) starting up\n"))); // Cache our ACE_Thread_Manager pointer. ACE_Thread_Manager *mgr = this->thr_mgr (); diff --git a/ACE/examples/APG/ThreadManagement/ExitHandler.cpp b/ACE/examples/APG/ThreadManagement/ExitHandler.cpp index 85238eac052..0d47b430f51 100644 --- a/ACE/examples/APG/ThreadManagement/ExitHandler.cpp +++ b/ACE/examples/APG/ThreadManagement/ExitHandler.cpp @@ -9,7 +9,7 @@ class ExitHandler : public ACE_At_Thread_Exit public: virtual void apply (void) { - ACE_DEBUG ((LM_INFO, ACE_TEXT ("(%t) is exiting \n"))); + ACE_DEBUG ((LM_INFO, ACE_TEXT ("(%t) is exiting\n"))); // Shut down all devices. } @@ -24,7 +24,7 @@ public: virtual int svc (void) { - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) starting up \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) starting up\n"))); this->thr_mgr ()->at_exit (eh_); diff --git a/ACE/examples/APG/ThreadManagement/Pool.cpp b/ACE/examples/APG/ThreadManagement/Pool.cpp index 30ae56801a5..bc3644480a6 100644 --- a/ACE/examples/APG/ThreadManagement/Pool.cpp +++ b/ACE/examples/APG/ThreadManagement/Pool.cpp @@ -12,7 +12,7 @@ class HA_CommandHandler : public ACE_Task<ACE_MT_SYNCH> public: virtual int svc (void) { - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) starting up \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) starting up\n"))); ACE_Message_Block *mb; if (this->getq (mb) == -1) return -1; diff --git a/ACE/examples/APG/ThreadManagement/Signals2.cpp b/ACE/examples/APG/ThreadManagement/Signals2.cpp index 0df855c45bb..bb9497cb6c6 100644 --- a/ACE/examples/APG/ThreadManagement/Signals2.cpp +++ b/ACE/examples/APG/ThreadManagement/Signals2.cpp @@ -68,7 +68,7 @@ SignalableTask::handle_alert (void) // Listing 1 code/ch13 int ACE_TMAIN (int, ACE_TCHAR *[]) { - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) Main thread \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) Main thread\n"))); SignalableTask handler; handler.activate (THR_NEW_LWP | THR_JOINABLE, 5); diff --git a/ACE/examples/APG/ThreadManagement/Start_Hook.cpp b/ACE/examples/APG/ThreadManagement/Start_Hook.cpp index 1c4ad0794b7..e48a29f6861 100644 --- a/ACE/examples/APG/ThreadManagement/Start_Hook.cpp +++ b/ACE/examples/APG/ThreadManagement/Start_Hook.cpp @@ -38,7 +38,7 @@ class HA_CommandHandler : public ACE_Task_Base public: virtual int svc (void) { - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) starting up \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) starting up\n"))); // Do something. diff --git a/ACE/examples/APG/ThreadSafety/Atomic_Op.cpp b/ACE/examples/APG/ThreadSafety/Atomic_Op.cpp index d315d433a66..29199fffaa9 100644 --- a/ACE/examples/APG/ThreadSafety/Atomic_Op.cpp +++ b/ACE/examples/APG/ThreadSafety/Atomic_Op.cpp @@ -42,7 +42,7 @@ public: buf_[in_.value () % Q_SIZE] = itemNo.value (); in_++; - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Produced %d \n"), + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Produced %d\n"), itemNo.value ())); if (check_termination (itemNo.value ())) diff --git a/ACE/examples/APG/ThreadSafety/TSS.cpp b/ACE/examples/APG/ThreadSafety/TSS.cpp index 8cc875cb3ee..f0b3c59ee9f 100644 --- a/ACE/examples/APG/ThreadSafety/TSS.cpp +++ b/ACE/examples/APG/ThreadSafety/TSS.cpp @@ -42,7 +42,7 @@ public: { ACE_thread_t *tid = (ACE_thread_t*)this->tss_ctx_->get_attribute ("thread_id"); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) TSS TID: %d \n"), + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) TSS TID: %d\n"), *tid)); // do work. diff --git a/ACE/examples/APG/Timers/Task.cpp b/ACE/examples/APG/Timers/Task.cpp index 4774eb1444f..c5ab6b4591c 100644 --- a/ACE/examples/APG/Timers/Task.cpp +++ b/ACE/examples/APG/Timers/Task.cpp @@ -40,7 +40,7 @@ private: int ACE_TMAIN (int, ACE_TCHAR *[]) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("the main thread %t has started \n"))); + ACE_TEXT ("the main thread %t has started\n"))); // Create an "active" timer and start its thread. ActiveTimer atimer; diff --git a/ACE/examples/ASX/Event_Server/Event_Server/Consumer_Router.cpp b/ACE/examples/ASX/Event_Server/Event_Server/Consumer_Router.cpp index e7dadb5d68c..cb448367e61 100644 --- a/ACE/examples/ASX/Event_Server/Event_Server/Consumer_Router.cpp +++ b/ACE/examples/ASX/Event_Server/Event_Server/Consumer_Router.cpp @@ -138,22 +138,22 @@ Consumer_Router::info (ACE_TCHAR **strp, size_t length) const { ACE_TCHAR buf[BUFSIZ]; ACE_INET_Addr addr; - const ACE_TCHAR *mod_name = this->name (); + const ACE_TCHAR *module_name = this->name (); if (this->context ()->acceptor ().get_local_addr (addr) == -1) return -1; ACE_OS::sprintf (buf, FMTSTR, - mod_name, + module_name, addr.get_port_number (), ACE_TEXT ("tcp"), ACE_TEXT ("# consumer router"), this->is_reader () ? ACE_TEXT ("reader") : ACE_TEXT ("writer")); - if (*strp == 0 && (*strp = ACE_OS::strdup (mod_name)) == 0) + if (*strp == 0 && (*strp = ACE_OS::strdup (module_name)) == 0) return -1; else - ACE_OS::strncpy (*strp, mod_name, length); + ACE_OS::strncpy (*strp, module_name, length); - return ACE_Utils::truncate_cast<int> (ACE_OS::strlen (mod_name)); + return ACE_Utils::truncate_cast<int> (ACE_OS::strlen (module_name)); } diff --git a/ACE/examples/ASX/Event_Server/Event_Server/Options.cpp b/ACE/examples/ASX/Event_Server/Event_Server/Options.cpp index 8683f48d153..16ce65aa5fd 100644 --- a/ACE/examples/ASX/Event_Server/Event_Server/Options.cpp +++ b/ACE/examples/ASX/Event_Server/Event_Server/Options.cpp @@ -168,32 +168,26 @@ Options::parse_args (int argc, ACE_TCHAR *argv[]) "\t[-H high water mark]\n" "\t[-i number of test iterations]\n" "\t[-L low water mark]\n" - "\t[-M] message size \n" + "\t[-M] message size\n" "\t[-n] (THR_NEW_LWP)\n" "\t[-q max queue size]\n" "\t[-s supplier port]\n" "\t[-t number of threads]\n" - "\t[-v] (verbose) \n", + "\t[-v] (verbose)\n", ACE_TEXT_ALWAYS_CHAR (argv[0])); ACE_OS::exit (1); /* NOTREACHED */ break; } - // This is a major hack to get the size_t format spec to be a narrow - // char, same as the other strings for printf() here. It only works - // because this is the end of the source file. It makes the - // ACE_SIZE_T_FORMAT_SPECIFIER not use ACE_TEXT, effectively. -#undef ACE_TEXT -#define ACE_TEXT(A) A if (this->verbose ()) ACE_OS::printf ("%8d = initial concurrency hint\n" - ACE_SIZE_T_FORMAT_SPECIFIER " = total iterations\n" - ACE_SIZE_T_FORMAT_SPECIFIER " = thread count\n" - ACE_SIZE_T_FORMAT_SPECIFIER " = low water mark\n" - ACE_SIZE_T_FORMAT_SPECIFIER " = high water mark\n" - ACE_SIZE_T_FORMAT_SPECIFIER " = message_size\n" - ACE_SIZE_T_FORMAT_SPECIFIER " = initial queue length\n" + ACE_SIZE_T_FORMAT_SPECIFIER_ASCII " = total iterations\n" + ACE_SIZE_T_FORMAT_SPECIFIER_ASCII " = thread count\n" + ACE_SIZE_T_FORMAT_SPECIFIER_ASCII " = low water mark\n" + ACE_SIZE_T_FORMAT_SPECIFIER_ASCII " = high water mark\n" + ACE_SIZE_T_FORMAT_SPECIFIER_ASCII " = message_size\n" + ACE_SIZE_T_FORMAT_SPECIFIER_ASCII " = initial queue length\n" "%8d = THR_BOUND\n" "%8d = THR_NEW_LWP\n", ACE_Thread::getconcurrency (), diff --git a/ACE/examples/ASX/Event_Server/Event_Server/Peer_Router.cpp b/ACE/examples/ASX/Event_Server/Event_Server/Peer_Router.cpp index f3ac967e554..9fced9b8059 100644 --- a/ACE/examples/ASX/Event_Server/Event_Server/Peer_Router.cpp +++ b/ACE/examples/ASX/Event_Server/Event_Server/Peer_Router.cpp @@ -406,7 +406,7 @@ Peer_Handler::svc (void) ACE_TEXT ("unbind failed")), -1); LM_DEBUG ((LOG_DEBUG, - ACE_TEXT ("(%t) shutting down \n"))); + ACE_TEXT ("(%t) shutting down\n"))); // We do not need to be deregistered by reactor // as we were not registered at all. diff --git a/ACE/examples/ASX/Event_Server/Event_Server/Supplier_Router.cpp b/ACE/examples/ASX/Event_Server/Event_Server/Supplier_Router.cpp index de00bba7346..0e0f45e386f 100644 --- a/ACE/examples/ASX/Event_Server/Event_Server/Supplier_Router.cpp +++ b/ACE/examples/ASX/Event_Server/Event_Server/Supplier_Router.cpp @@ -144,23 +144,23 @@ Supplier_Router::info (ACE_TCHAR **strp, size_t length) const { ACE_TCHAR buf[BUFSIZ]; ACE_INET_Addr addr; - const ACE_TCHAR *mod_name = this->name (); + const ACE_TCHAR *module_name = this->name (); if (this->context ()->acceptor ().get_local_addr (addr) == -1) return -1; ACE_OS::sprintf (buf, FMTSTR, - mod_name, + module_name, addr.get_port_number (), ACE_TEXT ("tcp"), ACE_TEXT ("# supplier router"), this->is_reader () ? ACE_TEXT ("reader") : ACE_TEXT ("writer")); - if (*strp == 0 && (*strp = ACE_OS::strdup (mod_name)) == 0) + if (*strp == 0 && (*strp = ACE_OS::strdup (module_name)) == 0) return -1; else - ACE_OS::strncpy (*strp, mod_name, length); + ACE_OS::strncpy (*strp, module_name, length); - return ACE_Utils::truncate_cast<int> (ACE_OS::strlen (mod_name)); + return ACE_Utils::truncate_cast<int> (ACE_OS::strlen (module_name)); } diff --git a/ACE/examples/ASX/Event_Server/Transceiver/transceiver.cpp b/ACE/examples/ASX/Event_Server/Transceiver/transceiver.cpp index 37bbaad7d3d..56327d405bd 100644 --- a/ACE/examples/ASX/Event_Server/Transceiver/transceiver.cpp +++ b/ACE/examples/ASX/Event_Server/Transceiver/transceiver.cpp @@ -47,7 +47,7 @@ Event_Transceiver::parse_args (int argc, ACE_TCHAR *argv[]) break; default: ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("usage: %n [-CS] [-h host_name] [-p portnum] \n")), + ACE_TEXT ("usage: %n [-CS] [-h host_name] [-p portnum]\n")), -1); /* NOTREACHED */ break; diff --git a/ACE/examples/ASX/UPIPE_Event_Server/Consumer_Router.cpp b/ACE/examples/ASX/UPIPE_Event_Server/Consumer_Router.cpp index 5b1faec011a..4b0b25ed8fb 100644 --- a/ACE/examples/ASX/UPIPE_Event_Server/Consumer_Router.cpp +++ b/ACE/examples/ASX/UPIPE_Event_Server/Consumer_Router.cpp @@ -113,7 +113,7 @@ Consumer_Router::info (ACE_TCHAR **strp, size_t length) const { ACE_TCHAR buf[BUFSIZ]; ACE_UPIPE_Addr addr; - const ACE_TCHAR *mod_name = this->name (); + const ACE_TCHAR *module_name = this->name (); ACE_UPIPE_Acceptor &sa = (ACE_UPIPE_Acceptor &) *this->acceptor_; if (sa.get_local_addr (addr) == -1) @@ -126,15 +126,15 @@ Consumer_Router::info (ACE_TCHAR **strp, size_t length) const #endif ACE_OS::sprintf (buf, FMTSTR, - mod_name, ACE_TEXT ("upipe"), + module_name, ACE_TEXT ("upipe"), ACE_TEXT ("# consumer router\n")); - if (*strp == 0 && (*strp = ACE_OS::strdup (mod_name)) == 0) + if (*strp == 0 && (*strp = ACE_OS::strdup (module_name)) == 0) return -1; else - ACE_OS::strncpy (*strp, mod_name, length); + ACE_OS::strncpy (*strp, module_name, length); - return ACE_Utils::truncate_cast<int> (ACE_OS::strlen (mod_name)); + return ACE_Utils::truncate_cast<int> (ACE_OS::strlen (module_name)); } #endif /* ACE_HAS_THREADS */ diff --git a/ACE/examples/ASX/UPIPE_Event_Server/Options.cpp b/ACE/examples/ASX/UPIPE_Event_Server/Options.cpp index 033132610aa..0f7cccb2365 100644 --- a/ACE/examples/ASX/UPIPE_Event_Server/Options.cpp +++ b/ACE/examples/ASX/UPIPE_Event_Server/Options.cpp @@ -165,34 +165,27 @@ Options::parse_args (int argc, ACE_TCHAR *argv[]) "\t[-H high water mark]\n" "\t[-i number of test iterations]\n" "\t[-L low water mark]\n" - "\t[-M] message size \n" + "\t[-M] message size\n" "\t[-n] (THR_NEW_LWP)\n" "\t[-q max queue size]\n" "\t[-S supplier file]\n" "\t[-s supplier port]\n" "\t[-t number of threads]\n" - "\t[-v] (verbose) \n", + "\t[-v] (verbose)\n", ACE_TEXT_ALWAYS_CHAR (argv[0])); ACE_OS::exit (1); /* NOTREACHED */ break; } - // HACK! This needs to be done to avoid the mismatch from ACE_TEXT - // in ACE_SIZE_T_FORMAT_SPECIFIER to narrow-char on wide-char builds. - // It only works because it's at the end of the file. -# if defined (ACE_TEXT) -# undef ACE_TEXT -# endif -# define ACE_TEXT(X) X if (this->verbose ()) ACE_OS::printf ("%8d = initial concurrency hint\n" - ACE_SIZE_T_FORMAT_SPECIFIER " = total iterations\n" - ACE_SIZE_T_FORMAT_SPECIFIER " = thread count\n" - ACE_SIZE_T_FORMAT_SPECIFIER " = low water mark\n" - ACE_SIZE_T_FORMAT_SPECIFIER " = high water mark\n" - ACE_SIZE_T_FORMAT_SPECIFIER " = message_size\n" - ACE_SIZE_T_FORMAT_SPECIFIER " = initial queue length\n" + ACE_SIZE_T_FORMAT_SPECIFIER_ASCII " = total iterations\n" + ACE_SIZE_T_FORMAT_SPECIFIER_ASCII " = thread count\n" + ACE_SIZE_T_FORMAT_SPECIFIER_ASCII " = low water mark\n" + ACE_SIZE_T_FORMAT_SPECIFIER_ASCII " = high water mark\n" + ACE_SIZE_T_FORMAT_SPECIFIER_ASCII " = message_size\n" + ACE_SIZE_T_FORMAT_SPECIFIER_ASCII " = initial queue length\n" "%8d = THR_BOUND\n" "%8d = THR_NEW_LWP\n", ACE_OS::thr_getconcurrency (), diff --git a/ACE/examples/ASX/UPIPE_Event_Server/Peer_Router.cpp b/ACE/examples/ASX/UPIPE_Event_Server/Peer_Router.cpp index b1f3755d9bd..65eb65a5609 100644 --- a/ACE/examples/ASX/UPIPE_Event_Server/Peer_Router.cpp +++ b/ACE/examples/ASX/UPIPE_Event_Server/Peer_Router.cpp @@ -84,7 +84,7 @@ Peer_Handler<ROUTER, KEY>::svc (void) if (this->router_task_->unbind_peer (this->get_handle ()) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("%p\n"), ACE_TEXT ("unbind failed")), -1); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) shutting down \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) shutting down\n"))); return -1; // We do not need to be deregistered by reactor // as we were not registered at all } diff --git a/ACE/examples/ASX/UPIPE_Event_Server/Supplier_Router.cpp b/ACE/examples/ASX/UPIPE_Event_Server/Supplier_Router.cpp index 823253d8c06..50ddc87998a 100644 --- a/ACE/examples/ASX/UPIPE_Event_Server/Supplier_Router.cpp +++ b/ACE/examples/ASX/UPIPE_Event_Server/Supplier_Router.cpp @@ -112,7 +112,7 @@ Supplier_Router::info (ACE_TCHAR **strp, size_t length) const { ACE_TCHAR buf[BUFSIZ]; ACE_UPIPE_Addr addr; - const ACE_TCHAR *mod_name = this->name (); + const ACE_TCHAR *module_name = this->name (); ACE_UPIPE_Acceptor &sa = (ACE_UPIPE_Acceptor &) *this->acceptor_; if (sa.get_local_addr (addr) == -1) @@ -125,15 +125,15 @@ Supplier_Router::info (ACE_TCHAR **strp, size_t length) const #endif ACE_OS::sprintf (buf, FMTSTR, - mod_name, ACE_TEXT ("upipe"), + module_name, ACE_TEXT ("upipe"), ACE_TEXT ("# supplier router\n")); - if (*strp == 0 && (*strp = ACE_OS::strdup (mod_name)) == 0) + if (*strp == 0 && (*strp = ACE_OS::strdup (module_name)) == 0) return -1; else - ACE_OS::strncpy (*strp, mod_name, length); + ACE_OS::strncpy (*strp, module_name, length); - return ACE_Utils::truncate_cast<int> (ACE_OS::strlen (mod_name)); + return ACE_Utils::truncate_cast<int> (ACE_OS::strlen (module_name)); } #endif /* ACE_HAS_THREADS */ diff --git a/ACE/examples/C++NPv2/AIO_Client_Logging_Daemon.h b/ACE/examples/C++NPv2/AIO_Client_Logging_Daemon.h index 7c0d81da606..e72d9bb867d 100644 --- a/ACE/examples/C++NPv2/AIO_Client_Logging_Daemon.h +++ b/ACE/examples/C++NPv2/AIO_Client_Logging_Daemon.h @@ -59,6 +59,10 @@ public: virtual void open (ACE_HANDLE new_handle, ACE_Message_Block &message_block); + // This is to make happy a compiler on HP-UX which complains + // that the 'open' above hides "int ACE_Task_Base::open(void *)" + using ACE_Task<ACE_NULL_SYNCH>::open; + protected: ACE_Asynch_Read_Stream reader_; // Detects connection loss ACE_Asynch_Write_Stream writer_; // Sends to server diff --git a/ACE/examples/Connection/misc/Connection_Handler.cpp b/ACE/examples/Connection/misc/Connection_Handler.cpp index f05c38ce59b..23b8457b0ac 100644 --- a/ACE/examples/Connection/misc/Connection_Handler.cpp +++ b/ACE/examples/Connection/misc/Connection_Handler.cpp @@ -112,7 +112,7 @@ int Connection_Handler::handle_close (ACE_HANDLE, ACE_Reactor_Mask) { - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%P|%t) in handle_close \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%P|%t) in handle_close\n"))); // Signal the svc() event loop to shut down. this->finished_ = 1; diff --git a/ACE/examples/IPC_SAP/ATM_SAP/CPP-client.cpp b/ACE/examples/IPC_SAP/ATM_SAP/CPP-client.cpp index 91c682e4fbe..9d847d843e4 100644 --- a/ACE/examples/IPC_SAP/ATM_SAP/CPP-client.cpp +++ b/ACE/examples/IPC_SAP/ATM_SAP/CPP-client.cpp @@ -90,7 +90,7 @@ int ACE_TMAIN (int argc, ACE_TCHAR *argv[]) // Point-to-point connection // Not sure why but reuse_addr set to true/1 causes problems for // FORE/XTI/ATM - this is now handled in ACE_ATM_Connector::connect() - ACE_OS::printf( "ATM_Client: to open a connection \n" ); + ACE_OS::printf( "ATM_Client: to open a connection\n" ); ACE_ATM_Params params = ACE_ATM_Params(); if (con.connect (atm_stream, hosts[ 0 ], diff --git a/ACE/examples/IPC_SAP/SOCK_SAP/summarize.pl b/ACE/examples/IPC_SAP/SOCK_SAP/summarize.pl index ee8ffd2df25..6411faa2f88 100755 --- a/ACE/examples/IPC_SAP/SOCK_SAP/summarize.pl +++ b/ACE/examples/IPC_SAP/SOCK_SAP/summarize.pl @@ -1,3 +1,4 @@ +#! /usr/bin/perl eval '(exit $?0)' && eval 'exec perl -w -S $0 ${1+"$@"}' & eval 'exec perl -w -S $0 $argv:q' if 0; @@ -32,7 +33,7 @@ foreach $total_threads (sort {$a <=> $b} @total_threads) { open (FILE, "client-${total_threads}.log") || die "$0: unable to open \"client-${total_threads}.log\"\n"; while ($line = <FILE>) { - if ($line =~ /.*usec-per-message = ([\d\.]+)/) + if ($line =~ /.*usec-per-message = ([\d\.]+)/) { $high_latency += $1 ; $number++; diff --git a/ACE/examples/IPC_SAP/SSL_SAP/SSL-server-fancy.cpp b/ACE/examples/IPC_SAP/SSL_SAP/SSL-server-fancy.cpp index bfd86b5138d..704d0b35ab6 100644 --- a/ACE/examples/IPC_SAP/SSL_SAP/SSL-server-fancy.cpp +++ b/ACE/examples/IPC_SAP/SSL_SAP/SSL-server-fancy.cpp @@ -225,7 +225,7 @@ Handler::open (void *) 0); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) client %C connected from %d \n"), + ACE_TEXT ("(%P|%t) client %C connected from %d\n"), cli_addr.get_host_name (), cli_addr.get_port_number ())); diff --git a/ACE/examples/IPC_SAP/SSL_SAP/SSL-server.cpp b/ACE/examples/IPC_SAP/SSL_SAP/SSL-server.cpp index c1f173cd72f..d0c512ea554 100644 --- a/ACE/examples/IPC_SAP/SSL_SAP/SSL-server.cpp +++ b/ACE/examples/IPC_SAP/SSL_SAP/SSL-server.cpp @@ -254,8 +254,8 @@ oneway_server (void *arg) timer.elapsed_time (et); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("\t\treal time = %f secs \n") - ACE_TEXT ("\t\tuser time = %f secs \n") + ACE_TEXT ("\t\treal time = %f secs\n") + ACE_TEXT ("\t\tuser time = %f secs\n") ACE_TEXT ("\t\tsystem time = %f secs\n"), et.real_time, et.user_time, diff --git a/ACE/examples/IPC_SAP/SSL_SAP/summarize.pl b/ACE/examples/IPC_SAP/SSL_SAP/summarize.pl index ee8ffd2df25..6411faa2f88 100755 --- a/ACE/examples/IPC_SAP/SSL_SAP/summarize.pl +++ b/ACE/examples/IPC_SAP/SSL_SAP/summarize.pl @@ -1,3 +1,4 @@ +#! /usr/bin/perl eval '(exit $?0)' && eval 'exec perl -w -S $0 ${1+"$@"}' & eval 'exec perl -w -S $0 $argv:q' if 0; @@ -32,7 +33,7 @@ foreach $total_threads (sort {$a <=> $b} @total_threads) { open (FILE, "client-${total_threads}.log") || die "$0: unable to open \"client-${total_threads}.log\"\n"; while ($line = <FILE>) { - if ($line =~ /.*usec-per-message = ([\d\.]+)/) + if ($line =~ /.*usec-per-message = ([\d\.]+)/) { $high_latency += $1 ; $number++; diff --git a/ACE/examples/QOS/Change_Receiver_FlowSpec/receiver.cpp b/ACE/examples/QOS/Change_Receiver_FlowSpec/receiver.cpp index 8ef43514e9b..9ef416308b0 100644 --- a/ACE/examples/QOS/Change_Receiver_FlowSpec/receiver.cpp +++ b/ACE/examples/QOS/Change_Receiver_FlowSpec/receiver.cpp @@ -186,7 +186,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) -1); else ACE_DEBUG ((LM_DEBUG, - "Dgram_Mcast subscribe succeeds \n")); + "Dgram_Mcast subscribe succeeds\n")); int nIP_TTL = 25; char achInBuf [BUFSIZ]; @@ -204,13 +204,13 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) 0, // Overlapped. 0) == -1) // Func. ACE_ERROR ((LM_ERROR, - "Error in Multicast scope ACE_OS::ioctl() \n")); + "Error in Multicast scope ACE_OS::ioctl()\n")); else ACE_DEBUG ((LM_DEBUG, - "Setting TTL with Multicast scope ACE_OS::ioctl call succeeds \n")); - + "Setting TTL with Multicast scope ACE_OS::ioctl call succeeds\n")); + int bFlag = 0; - + // Should this be abstracted into QoS objects ?? Doesnt seem to have // to do anything directly with QoS. if (ACE_OS::ioctl (dgram_mcast_qos.get_handle (), // Socket. @@ -223,16 +223,16 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) 0, // Overlapped. 0) == -1) // Func. ACE_ERROR ((LM_ERROR, - "Error in Loopback ACE_OS::ioctl() \n")); + "Error in Loopback ACE_OS::ioctl()\n")); else ACE_DEBUG ((LM_DEBUG, - "Disable Loopback with ACE_OS::ioctl call succeeds \n")); - - // This is a receiver. + "Disable Loopback with ACE_OS::ioctl call succeeds\n")); + + // This is a receiver. qos_session->flags (ACE_QoS_Session::ACE_QOS_RECEIVER); - + ACE_QoS_Manager qos_manager = dgram_mcast_qos.qos_manager (); - + // Set the QoS for the session. Replaces the ioctl () call that // was being made previously. if (qos_session->qos (&dgram_mcast_qos, @@ -248,11 +248,11 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) // Register a signal handler that helps to gracefully close the // open QoS sessions. QoS_Signal_Handler qos_signal_handler (qos_session); - + // Register the usual SIGINT signal handler with the Reactor for // the application to gracefully release the QoS session and // shutdown. - if (ACE_Reactor::instance ()->register_handler + if (ACE_Reactor::instance ()->register_handler (SIGINT, &qos_signal_handler) == -1) ACE_ERROR_RETURN ((LM_ERROR, "Error in registering the Signal Handler.\n"), @@ -262,7 +262,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) Receiver_QoS_Event_Handler qos_event_handler (dgram_mcast_qos, qos_session); - // Decorate the above handler with QoS functionality. + // Decorate the above handler with QoS functionality. ACE_QoS_Decorator qos_decorator (&qos_event_handler, qos_session); @@ -280,13 +280,13 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) "Error in registering the Decorator with the Reactor\n"), -1); - + // Start the event loop. ACE_DEBUG ((LM_DEBUG, - "Running the Event Loop ... \n")); - + "Running the Event Loop ...\n")); + ACE_Reactor::instance ()->run_event_loop (); - + ACE_DEBUG ((LM_DEBUG, "(%P|%t) shutting down server logging daemon\n")); } diff --git a/ACE/examples/QOS/Change_Receiver_FlowSpec/sender.cpp b/ACE/examples/QOS/Change_Receiver_FlowSpec/sender.cpp index c721aa810c4..5aedacb3303 100644 --- a/ACE/examples/QOS/Change_Receiver_FlowSpec/sender.cpp +++ b/ACE/examples/QOS/Change_Receiver_FlowSpec/sender.cpp @@ -190,7 +190,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) -1); else ACE_DEBUG ((LM_DEBUG, - "Dgram_Mcast subscribe succeeds \n")); + "Dgram_Mcast subscribe succeeds\n")); int nIP_TTL = 25; char achInBuf [BUFSIZ]; @@ -208,13 +208,13 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) 0, // Overlapped. 0) == -1) // Func. ACE_ERROR ((LM_ERROR, - "Error in Multicast scope ACE_OS::ioctl() \n")); + "Error in Multicast scope ACE_OS::ioctl()\n")); else ACE_DEBUG ((LM_DEBUG, - "Setting TTL with Multicast scope ACE_OS::ioctl call succeeds \n")); - + "Setting TTL with Multicast scope ACE_OS::ioctl call succeeds\n")); + int bFlag = 0; - + // Should this be abstracted into QoS objects ?? Doesnt seem to have // to do anything directly with QoS. if (ACE_OS::ioctl (dgram_mcast_qos.get_handle (), // Socket. @@ -227,22 +227,22 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) 0, // Overlapped. 0) == -1) // Func. ACE_ERROR ((LM_ERROR, - "Error in Loopback ACE_OS::ioctl() \n")); + "Error in Loopback ACE_OS::ioctl()\n")); else ACE_DEBUG ((LM_DEBUG, - "Disable Loopback with ACE_OS::ioctl call succeeds \n")); - - // This is a sender. + "Disable Loopback with ACE_OS::ioctl call succeeds\n")); + + // This is a sender. qos_session->flags (ACE_QoS_Session::ACE_QOS_SENDER); - + ACE_QoS_Manager qos_manager = dgram_mcast_qos.qos_manager (); - + // Since we are using RSVP, it is imperative that the client // application have the option of supplying the source sender // port for the RSVP messages. A default will be chosen by the // ACE API if this is not done. qos_session->source_port (qos_util.source_port ()); - + // Set the QoS for the session. Replaces the ioctl () call that // was being made previously. if (qos_session->qos (&dgram_mcast_qos, @@ -254,7 +254,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) else ACE_DEBUG ((LM_DEBUG, "Setting QOS succeeds.\n")); - + // Register a signal handler that helps to gracefully close the open // QoS sessions. QoS_Signal_Handler qos_signal_handler (qos_session); @@ -262,7 +262,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) // Register the usual SIGINT signal handler with the Reactor for // the application to gracefully release the QoS session and // shutdown. - if (ACE_Reactor::instance ()->register_handler + if (ACE_Reactor::instance ()->register_handler (SIGINT, &qos_signal_handler) == -1) ACE_ERROR_RETURN ((LM_ERROR, "Error in registering the Signal Handler.\n"), @@ -272,7 +272,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) Sender_QoS_Event_Handler qos_event_handler (dgram_mcast_qos, qos_session); - // Decorate the above handler with QoS functionality. + // Decorate the above handler with QoS functionality. ACE_QoS_Decorator qos_decorator (&qos_event_handler, qos_session); @@ -292,13 +292,13 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) - + // Start the event loop. ACE_DEBUG ((LM_DEBUG, - "Running the Event Loop ... \n")); - + "Running the Event Loop ...\n")); + ACE_Reactor::instance ()->run_event_loop (); - + ACE_DEBUG ((LM_DEBUG, "(%P|%t) shutting down server logging daemon\n")); } diff --git a/ACE/examples/QOS/Change_Sender_TSpec/receiver.cpp b/ACE/examples/QOS/Change_Sender_TSpec/receiver.cpp index e5702b90c1c..f329560dece 100644 --- a/ACE/examples/QOS/Change_Sender_TSpec/receiver.cpp +++ b/ACE/examples/QOS/Change_Sender_TSpec/receiver.cpp @@ -186,7 +186,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) -1); else ACE_DEBUG ((LM_DEBUG, - "Dgram_Mcast subscribe succeeds \n")); + "Dgram_Mcast subscribe succeeds\n")); int nIP_TTL = 25; char achInBuf [BUFSIZ]; @@ -204,13 +204,13 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) 0, // Overlapped. 0) == -1) // Func. ACE_ERROR ((LM_ERROR, - "Error in Multicast scope ACE_OS::ioctl() \n")); + "Error in Multicast scope ACE_OS::ioctl()\n")); else ACE_DEBUG ((LM_DEBUG, - "Setting TTL with Multicast scope ACE_OS::ioctl call succeeds \n")); - + "Setting TTL with Multicast scope ACE_OS::ioctl call succeeds\n")); + int bFlag = 0; - + // Should this be abstracted into QoS objects ?? Doesnt seem to have // to do anything directly with QoS. if (ACE_OS::ioctl (dgram_mcast_qos.get_handle (), // Socket. @@ -223,16 +223,16 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) 0, // Overlapped. 0) == -1) // Func. ACE_ERROR ((LM_ERROR, - "Error in Loopback ACE_OS::ioctl() \n")); + "Error in Loopback ACE_OS::ioctl()\n")); else ACE_DEBUG ((LM_DEBUG, - "Disable Loopback with ACE_OS::ioctl call succeeds \n")); - - // This is a receiver. + "Disable Loopback with ACE_OS::ioctl call succeeds\n")); + + // This is a receiver. qos_session->flags (ACE_QoS_Session::ACE_QOS_RECEIVER); - + ACE_QoS_Manager qos_manager = dgram_mcast_qos.qos_manager (); - + // Set the QoS for the session. Replaces the ioctl () call that // was being made previously. if (qos_session->qos (&dgram_mcast_qos, @@ -248,11 +248,11 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) // Register a signal handler that helps to gracefully close the // open QoS sessions. QoS_Signal_Handler qos_signal_handler (qos_session); - + // Register the usual SIGINT signal handler with the Reactor for // the application to gracefully release the QoS session and // shutdown. - if (ACE_Reactor::instance ()->register_handler + if (ACE_Reactor::instance ()->register_handler (SIGINT, &qos_signal_handler) == -1) ACE_ERROR_RETURN ((LM_ERROR, "Error in registering the Signal Handler.\n"), @@ -262,7 +262,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) Receiver_QoS_Event_Handler qos_event_handler (dgram_mcast_qos, qos_session); - // Decorate the above handler with QoS functionality. + // Decorate the above handler with QoS functionality. ACE_QoS_Decorator qos_decorator (&qos_event_handler, qos_session); @@ -292,20 +292,20 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) // // The following event handler handles the data. // ACE_QoS_Event_Handler data_event_handler (dgram_mcast_qos, // qos_session); - + // // Register the Data Event Handler with the Reactor. -// if (ACE_Reactor::instance ()->register_handler +// if (ACE_Reactor::instance ()->register_handler // (&data_event_handler,ACE_Event_Handler::READ_MASK) == -1) // ACE_ERROR_RETURN ((LM_ERROR, // "Error in registering Data Event Handler\n"), // -1); - + // Start the event loop. ACE_DEBUG ((LM_DEBUG, - "Running the Event Loop ... \n")); - + "Running the Event Loop ...\n")); + ACE_Reactor::instance ()->run_event_loop (); - + ACE_DEBUG ((LM_DEBUG, "(%P|%t) shutting down server logging daemon\n")); } diff --git a/ACE/examples/QOS/Change_Sender_TSpec/sender.cpp b/ACE/examples/QOS/Change_Sender_TSpec/sender.cpp index 68d8d1a5586..1af380f90b3 100644 --- a/ACE/examples/QOS/Change_Sender_TSpec/sender.cpp +++ b/ACE/examples/QOS/Change_Sender_TSpec/sender.cpp @@ -190,7 +190,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) -1); else ACE_DEBUG ((LM_DEBUG, - "Dgram_Mcast subscribe succeeds \n")); + "Dgram_Mcast subscribe succeeds\n")); int nIP_TTL = 25; char achInBuf [BUFSIZ]; @@ -208,13 +208,13 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) 0, // Overlapped. 0) == -1) // Func. ACE_ERROR ((LM_ERROR, - "Error in Multicast scope ACE_OS::ioctl() \n")); + "Error in Multicast scope ACE_OS::ioctl()\n")); else ACE_DEBUG ((LM_DEBUG, - "Setting TTL with Multicast scope ACE_OS::ioctl call succeeds \n")); - + "Setting TTL with Multicast scope ACE_OS::ioctl call succeeds\n")); + int bFlag = 0; - + // Should this be abstracted into QoS objects ?? Doesnt seem to have // to do anything directly with QoS. if (ACE_OS::ioctl (dgram_mcast_qos.get_handle (), // Socket. @@ -227,22 +227,22 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) 0, // Overlapped. 0) == -1) // Func. ACE_ERROR ((LM_ERROR, - "Error in Loopback ACE_OS::ioctl() \n")); + "Error in Loopback ACE_OS::ioctl()\n")); else ACE_DEBUG ((LM_DEBUG, - "Disable Loopback with ACE_OS::ioctl call succeeds \n")); - - // This is a sender. + "Disable Loopback with ACE_OS::ioctl call succeeds\n")); + + // This is a sender. qos_session->flags (ACE_QoS_Session::ACE_QOS_SENDER); - + ACE_QoS_Manager qos_manager = dgram_mcast_qos.qos_manager (); - + // Since we are using RSVP, it is imperative that the client // application have the option of supplying the source sender // port for the RSVP messages. A default will be chosen by the // ACE API if this is not done. qos_session->source_port (qos_util.source_port ()); - + // Set the QoS for the session. Replaces the ioctl () call that // was being made previously. if (qos_session->qos (&dgram_mcast_qos, @@ -254,7 +254,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) else ACE_DEBUG ((LM_DEBUG, "Setting QOS succeeds.\n")); - + // Register a signal handler that helps to gracefully close the open // QoS sessions. QoS_Signal_Handler qos_signal_handler (qos_session); @@ -262,7 +262,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) // Register the usual SIGINT signal handler with the Reactor for // the application to gracefully release the QoS session and // shutdown. - if (ACE_Reactor::instance ()->register_handler + if (ACE_Reactor::instance ()->register_handler (SIGINT, &qos_signal_handler) == -1) ACE_ERROR_RETURN ((LM_ERROR, "Error in registering the Signal Handler.\n"), @@ -272,7 +272,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) Sender_QoS_Event_Handler qos_event_handler (dgram_mcast_qos, qos_session); - // Decorate the above handler with QoS functionality. + // Decorate the above handler with QoS functionality. ACE_QoS_Decorator qos_decorator (&qos_event_handler, qos_session); @@ -289,13 +289,13 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) ACE_ERROR_RETURN ((LM_ERROR, "Error in registering the Decorator with the Reactor\n"), -1); - + // Start the event loop. ACE_DEBUG ((LM_DEBUG, - "Running the Event Loop ... \n")); - + "Running the Event Loop ...\n")); + ACE_Reactor::instance ()->run_event_loop (); - + ACE_DEBUG ((LM_DEBUG, "(%P|%t) shutting down server logging daemon\n")); } diff --git a/ACE/examples/QOS/Simple/receiver.cpp b/ACE/examples/QOS/Simple/receiver.cpp index 72381d64f69..cba39f779e1 100644 --- a/ACE/examples/QOS/Simple/receiver.cpp +++ b/ACE/examples/QOS/Simple/receiver.cpp @@ -187,7 +187,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) -1); else ACE_DEBUG ((LM_DEBUG, - "Dgram_Mcast subscribe succeeds \n")); + "Dgram_Mcast subscribe succeeds\n")); int nIP_TTL = 25; char achInBuf [BUFSIZ]; @@ -205,13 +205,13 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) 0, // Overlapped. 0) == -1) // Func. ACE_ERROR ((LM_ERROR, - "Error in Multicast scope ACE_OS::ioctl() \n")); + "Error in Multicast scope ACE_OS::ioctl()\n")); else ACE_DEBUG ((LM_DEBUG, - "Setting TTL with Multicast scope ACE_OS::ioctl call succeeds \n")); - + "Setting TTL with Multicast scope ACE_OS::ioctl call succeeds\n")); + int bFlag = 0; - + // Should this be abstracted into QoS objects ?? Doesnt seem to have // to do anything directly with QoS. if (ACE_OS::ioctl (dgram_mcast_qos.get_handle (), // Socket. @@ -224,16 +224,16 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) 0, // Overlapped. 0) == -1) // Func. ACE_ERROR ((LM_ERROR, - "Error in Loopback ACE_OS::ioctl() \n")); + "Error in Loopback ACE_OS::ioctl()\n")); else ACE_DEBUG ((LM_DEBUG, - "Disable Loopback with ACE_OS::ioctl call succeeds \n")); - - // This is a receiver. + "Disable Loopback with ACE_OS::ioctl call succeeds\n")); + + // This is a receiver. qos_session->flags (ACE_QoS_Session::ACE_QOS_RECEIVER); - + ACE_QoS_Manager qos_manager = dgram_mcast_qos.qos_manager (); - + // Set the QoS for the session. Replaces the ioctl () call that // was being made previously. if (qos_session->qos (&dgram_mcast_qos, @@ -249,11 +249,11 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) // Register a signal handler that helps to gracefully close the // open QoS sessions. QoS_Signal_Handler qos_signal_handler (qos_session); - + // Register the usual SIGINT signal handler with the Reactor for // the application to gracefully release the QoS session and // shutdown. - if (ACE_Reactor::instance ()->register_handler + if (ACE_Reactor::instance ()->register_handler (SIGINT, &qos_signal_handler) == -1) ACE_ERROR_RETURN ((LM_ERROR, "Error in registering the Signal Handler.\n"), @@ -263,7 +263,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) Receiver_QoS_Event_Handler qos_event_handler (dgram_mcast_qos, qos_session); - // Decorate the above handler with QoS functionality. + // Decorate the above handler with QoS functionality. ACE_QoS_Decorator qos_decorator (&qos_event_handler, qos_session); @@ -281,13 +281,13 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) "Error in registering the Decorator with the Reactor\n"), -1); - + // Start the event loop. ACE_DEBUG ((LM_DEBUG, - "Running the Event Loop ... \n")); - + "Running the Event Loop ...\n")); + ACE_Reactor::instance ()->run_event_loop (); - + ACE_DEBUG ((LM_DEBUG, "(%P|%t) shutting down server logging daemon\n")); } diff --git a/ACE/examples/QOS/Simple/sender.cpp b/ACE/examples/QOS/Simple/sender.cpp index 97e6aafa407..43684703be5 100644 --- a/ACE/examples/QOS/Simple/sender.cpp +++ b/ACE/examples/QOS/Simple/sender.cpp @@ -190,7 +190,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) -1); else ACE_DEBUG ((LM_DEBUG, - "Dgram_Mcast subscribe succeeds \n")); + "Dgram_Mcast subscribe succeeds\n")); int nIP_TTL = 25; char achInBuf [BUFSIZ]; @@ -208,13 +208,13 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) 0, // Overlapped. 0) == -1) // Func. ACE_ERROR ((LM_ERROR, - "Error in Multicast scope ACE_OS::ioctl() \n")); + "Error in Multicast scope ACE_OS::ioctl()\n")); else ACE_DEBUG ((LM_DEBUG, - "Setting TTL with Multicast scope ACE_OS::ioctl call succeeds \n")); - + "Setting TTL with Multicast scope ACE_OS::ioctl call succeeds\n")); + int bFlag = 0; - + // Should this be abstracted into QoS objects ?? Doesnt seem to have // to do anything directly with QoS. if (ACE_OS::ioctl (dgram_mcast_qos.get_handle (), // Socket. @@ -227,22 +227,22 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) 0, // Overlapped. 0) == -1) // Func. ACE_ERROR ((LM_ERROR, - "Error in Loopback ACE_OS::ioctl() \n")); + "Error in Loopback ACE_OS::ioctl()\n")); else ACE_DEBUG ((LM_DEBUG, - "Disable Loopback with ACE_OS::ioctl call succeeds \n")); - - // This is a sender. + "Disable Loopback with ACE_OS::ioctl call succeeds\n")); + + // This is a sender. qos_session->flags (ACE_QoS_Session::ACE_QOS_SENDER); - + ACE_QoS_Manager qos_manager = dgram_mcast_qos.qos_manager (); - + // Since we are using RSVP, it is imperative that the client // application have the option of supplying the source sender // port for the RSVP messages. A default will be chosen by the // ACE API if this is not done. qos_session->source_port (qos_util.source_port ()); - + // Set the QoS for the session. Replaces the ioctl () call that // was being made previously. if (qos_session->qos (&dgram_mcast_qos, @@ -254,7 +254,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) else ACE_DEBUG ((LM_DEBUG, "Setting QOS succeeds.\n")); - + // Register a signal handler that helps to gracefully close the open // QoS sessions. QoS_Signal_Handler qos_signal_handler (qos_session); @@ -262,7 +262,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) // Register the usual SIGINT signal handler with the Reactor for // the application to gracefully release the QoS session and // shutdown. - if (ACE_Reactor::instance ()->register_handler + if (ACE_Reactor::instance ()->register_handler (SIGINT, &qos_signal_handler) == -1) ACE_ERROR_RETURN ((LM_ERROR, "Error in registering the Signal Handler.\n"), @@ -272,7 +272,7 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) Sender_QoS_Event_Handler qos_event_handler (dgram_mcast_qos, qos_session); - // Decorate the above handler with QoS functionality. + // Decorate the above handler with QoS functionality. ACE_QoS_Decorator qos_decorator (&qos_event_handler, qos_session); @@ -291,13 +291,13 @@ ACE_TMAIN (int argc, ACE_TCHAR * argv[]) -1); - + // Start the event loop. ACE_DEBUG ((LM_DEBUG, - "Running the Event Loop ... \n")); - + "Running the Event Loop ...\n")); + ACE_Reactor::instance ()->run_event_loop (); - + ACE_DEBUG ((LM_DEBUG, "(%P|%t) shutting down server logging daemon\n")); } diff --git a/ACE/examples/Reactor/Misc/test_demuxing.cpp b/ACE/examples/Reactor/Misc/test_demuxing.cpp index a55bdbab0f1..99e3715f345 100644 --- a/ACE/examples/Reactor/Misc/test_demuxing.cpp +++ b/ACE/examples/Reactor/Misc/test_demuxing.cpp @@ -145,14 +145,13 @@ Sig_Handler::handle_signal (int signum, siginfo_t *, ucontext_t *) (this->handle_, ACE_Event_Handler::READ_MASK, ACE_Reactor::ADD_MASK); -#if defined (ACE_WIN32) && defined (SIGTERM) +#if defined (SIGTERM) && (SIGTERM != 0) case SIGTERM: - // This is coded thusly to avoid problems if SIGQUIT is a legit // value but is not a preprocessor macro. #elif !defined (SIGQUIT) || (SIGQUIT != 0) case SIGQUIT: -#endif /* ACE_WIN32 */ +#endif /* SIGTERM != 0 */ ACE_Reactor::end_event_loop (); break; default: diff --git a/ACE/examples/Reactor/Proactor/post_completions.cpp b/ACE/examples/Reactor/Proactor/post_completions.cpp index 1eaf0c5b176..ce24d5f5ef1 100644 --- a/ACE/examples/Reactor/Proactor/post_completions.cpp +++ b/ACE/examples/Reactor/Proactor/post_completions.cpp @@ -186,7 +186,7 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[]) ACE_UNUSED_ARG (argv); ACE_DEBUG ((LM_DEBUG, - "(%P | %t):Test starts \n")); + "(%P | %t):Test starts\n")); // = Get two POSIX_SIG_Proactors, one with SIGRTMIN and one with // SIGRTMAX. diff --git a/ACE/examples/Reactor/Proactor/test_aiosig.cpp b/ACE/examples/Reactor/Proactor/test_aiosig.cpp index 5fc1737fae7..944719968f1 100644 --- a/ACE/examples/Reactor/Proactor/test_aiosig.cpp +++ b/ACE/examples/Reactor/Proactor/test_aiosig.cpp @@ -215,12 +215,12 @@ query_aio_completions (void) if (number_of_compleions == 0) // Print the buffer. - printf ("Number of bytes transferred : %d\n The buffer : %s \n", + printf ("Number of bytes transferred : %d\n The buffer : %s\n", nbytes, mb1); else // Print the buffer. - printf ("Number of bytes transferred : %d\n The buffer : %s \n", + printf ("Number of bytes transferred : %d\n The buffer : %s\n", nbytes, mb2); } diff --git a/ACE/examples/Reactor/Proactor/test_aiosig_ace.cpp b/ACE/examples/Reactor/Proactor/test_aiosig_ace.cpp index 3a76ea81251..fab137a4c02 100644 --- a/ACE/examples/Reactor/Proactor/test_aiosig_ace.cpp +++ b/ACE/examples/Reactor/Proactor/test_aiosig_ace.cpp @@ -290,7 +290,7 @@ query_aio_completions (void) // may easily overrun the ACE_Log_Msg output buffer. If you need // to turn the on for some reason, be careful of this. #if 0 - ACE_DEBUG ((LM_DEBUG, "The buffer : %s \n", mb1.rd_ptr ())); + ACE_DEBUG ((LM_DEBUG, "The buffer : %s\n", mb1.rd_ptr ())); #endif /* 0 */ } else @@ -300,7 +300,7 @@ query_aio_completions (void) "\n Number of bytes transferred : %d\n", nbytes)); #if 0 - ACE_DEBUG ((LM_DEBUG, "The buffer : %s \n", mb2.rd_ptr ())); + ACE_DEBUG ((LM_DEBUG, "The buffer : %s\n", mb2.rd_ptr ())); #endif /* 0 */ } } diff --git a/ACE/examples/Reactor/Proactor/test_end_event_loop.cpp b/ACE/examples/Reactor/Proactor/test_end_event_loop.cpp index db1e6645bec..2a87b875afe 100644 --- a/ACE/examples/Reactor/Proactor/test_end_event_loop.cpp +++ b/ACE/examples/Reactor/Proactor/test_end_event_loop.cpp @@ -83,7 +83,7 @@ public: if (this->time_flag_) { ACE_DEBUG ((LM_DEBUG, - "(%P|%t):Going to do *timed* <run_event_loop> \n")); + "(%P|%t):Going to do *timed* <run_event_loop>\n")); ACE_Time_Value run_time (13); @@ -95,7 +95,7 @@ public: else { ACE_DEBUG ((LM_DEBUG, - "(%P|%t):Going to do *indefinite* <run_event_loop> \n")); + "(%P|%t):Going to do *indefinite* <run_event_loop>\n")); if (ACE_Proactor::instance ()->run_event_loop () == -1) ACE_ERROR_RETURN ((LM_ERROR, "(%P|%t):%p.\n", @@ -117,7 +117,7 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv []) ACE_UNUSED_ARG (argv); ACE_DEBUG ((LM_DEBUG, - "(%P | %t):Test starts \n")); + "(%P | %t):Test starts\n")); // Let us get the singleton proactor created here. This is very // important. This will mask the signal used in the Proactor masked diff --git a/ACE/examples/Reactor/WFMO_Reactor/APC.cpp b/ACE/examples/Reactor/WFMO_Reactor/APC.cpp index e45ab2f699d..c9e36381fac 100644 --- a/ACE/examples/Reactor/WFMO_Reactor/APC.cpp +++ b/ACE/examples/Reactor/WFMO_Reactor/APC.cpp @@ -21,7 +21,7 @@ #include "ace/OS_main.h" -#if defined (ACE_WIN32) +#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE) #include "ace/Reactor.h" #include "ace/Auto_Event.h" diff --git a/ACE/examples/Reactor/WFMO_Reactor/Registry_Changes.cpp b/ACE/examples/Reactor/WFMO_Reactor/Registry_Changes.cpp index bcbdfff242d..a215c45acfb 100644 --- a/ACE/examples/Reactor/WFMO_Reactor/Registry_Changes.cpp +++ b/ACE/examples/Reactor/WFMO_Reactor/Registry_Changes.cpp @@ -20,7 +20,7 @@ #include "ace/OS_main.h" -#if defined (ACE_WIN32) && !defined (ACE_LACKS_WIN32_REGISTRY) +#if defined (ACE_WIN32) && !defined (ACE_LACKS_WIN32_REGISTRY) && !defined (ACE_LACKS_REGNOTIFYCHANGEKEYVALUE) #include "ace/Reactor.h" #include "ace/Registry.h" diff --git a/ACE/examples/Reactor/WFMO_Reactor/WFMO_Reactor.mpc b/ACE/examples/Reactor/WFMO_Reactor/WFMO_Reactor.mpc index eec632ee696..3663aa7c6e1 100644 --- a/ACE/examples/Reactor/WFMO_Reactor/WFMO_Reactor.mpc +++ b/ACE/examples/Reactor/WFMO_Reactor/WFMO_Reactor.mpc @@ -9,7 +9,6 @@ project(*Abandoned): aceexe, wfmo { } project(*APC): aceexe, wfmo { - avoids += wince exename = apc Source_Files { APC.cpp @@ -73,7 +72,7 @@ project(*Registration): aceexe, wfmo { } project(*Registry_Changes): aceexe, wfmo { - avoids += ace_for_tao wince + avoids += ace_for_tao exename = registry_changes Source_Files { Registry_Changes.cpp @@ -95,7 +94,7 @@ project(*Suspended_Removals): aceexe, wfmo { } project(*Talker): aceexe, wfmo { - avoids += ace_for_tao wince + avoids += ace_for_tao exename = talker Source_Files { Talker.cpp @@ -110,7 +109,7 @@ project(*Timeouts): aceexe, wfmo { } project(*Window_Messages): aceexe, wfmo { - avoids += ace_for_tao wince + avoids += ace_for_tao exename = window_messages Source_Files { Window_Messages.cpp diff --git a/ACE/examples/Reactor/WFMO_Reactor/run_test.pl b/ACE/examples/Reactor/WFMO_Reactor/run_test.pl index cc445c64043..e47d878f7c4 100755 --- a/ACE/examples/Reactor/WFMO_Reactor/run_test.pl +++ b/ACE/examples/Reactor/WFMO_Reactor/run_test.pl @@ -5,20 +5,19 @@ eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}' # $Id$ # -*- perl -*- -use lib '../../../bin'; -use PerlACE::Run_Test; +use lib "$ENV{ACE_ROOT}/bin"; +use PerlACE::TestTarget; # # These tests only run on Win32 # -if ($^O ne "MSWin32") +if ($^O ne "MSWin32") { exit; } -$test_timeout = 60; -@tests = +@tests = ( "Abandoned", "APC", @@ -38,15 +37,18 @@ $test_timeout = 60; "Window_Messages", ); +my $target = PerlACE::TestTarget::create_target (1) || die "Create target 1 failed\n";; +$test_timeout = 60 + $target->ProcessStartWaitInterval(); + for $test (@tests) { print STDOUT "\n________________________________________\n"; print STDOUT "\nStarting test \"$test\""; print STDOUT "\n________________________________________\n\n"; - - $test_process = new PerlACE::Process ($test); - if (! -x $test_process->Executable ()) { + my $test_process = $target->CreateProcess($test); + + if (! -e $test_process->Executable ()) { print STDERR "Error: " . $test_process->Executable () . " does not exist or is not runnable\n"; } @@ -54,8 +56,8 @@ for $test (@tests) { $test_process->Spawn (); $test_result = $test_process->WaitKill ($test_timeout); - - if ($test_result != 0) + + if ($test_result != 0) { print STDERR "\n________________________________________\n"; print STDERR "\nERROR: \"$test\" returned $test_result"; diff --git a/ACE/examples/Service_Configurator/Misc/main.cpp b/ACE/examples/Service_Configurator/Misc/main.cpp index d3bd663ad48..0130a135c1e 100644 --- a/ACE/examples/Service_Configurator/Misc/main.cpp +++ b/ACE/examples/Service_Configurator/Misc/main.cpp @@ -32,7 +32,7 @@ ACE_RCSID(Misc, main, "$Id$") ACE_STATIC_SVC_REQUIRE (Timer_Service_1) int -ACE_TMAIN (int, ACE_TCHAR *argv[]) +ACE_TMAIN (int argc, ACE_TCHAR *argv[]) { // Set up an argument vector that we can add entries to! ACE_ARGV args; @@ -40,7 +40,10 @@ ACE_TMAIN (int, ACE_TCHAR *argv[]) // Manufacture a "fake" svc.conf entry to demonstrate the -S option // that allows us to pass these entries via the "command-line" // rather than the svc.conf file. - args.add (argv[0]); + + for (int i = 0; i < argc; i++) + args.add (argv[i]); + args.add (ACE_TEXT ("-y")); args.add (ACE_TEXT ("-d")); args.add (ACE_TEXT ("-S")); diff --git a/ACE/examples/Shared_Memory/test_MM.cpp b/ACE/examples/Shared_Memory/test_MM.cpp index 2d98224f910..90697296dbc 100644 --- a/ACE/examples/Shared_Memory/test_MM.cpp +++ b/ACE/examples/Shared_Memory/test_MM.cpp @@ -48,12 +48,7 @@ server (void) int ACE_TMAIN (int, ACE_TCHAR *[]) { - if ( -#if defined (ACE_LACKS_MKSTEMP) - ACE_OS::mktemp (shm_key) == 0 -#else - ACE_OS::mkstemp (shm_key) == 0 -#endif + if (ACE_OS::mkstemp (shm_key) == 0 || (ACE_OS::unlink (shm_key) == -1 && errno == EPERM)) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("%p\n"), shm_key), 1); diff --git a/ACE/examples/Threads/auto_event.cpp b/ACE/examples/Threads/auto_event.cpp index e568ffe84d1..21ecbee830c 100644 --- a/ACE/examples/Threads/auto_event.cpp +++ b/ACE/examples/Threads/auto_event.cpp @@ -36,7 +36,7 @@ reader (void *arg) // Wait for writer to complete. - ACE_DEBUG ((LM_DEBUG, "(%t) reader: waiting...... \n")); + ACE_DEBUG ((LM_DEBUG, "(%t) reader: waiting......\n")); if (EVENT::instance ()->wait () == -1) { @@ -45,7 +45,7 @@ reader (void *arg) } // Read shared data. - ACE_DEBUG ((LM_DEBUG, "(%t) reader: value of data is: %d \n", data)); + ACE_DEBUG ((LM_DEBUG, "(%t) reader: value of data is: %d\n", data)); return 0; } diff --git a/ACE/examples/Threads/manual_event.cpp b/ACE/examples/Threads/manual_event.cpp index d4b37975f23..0e1e76bfd8e 100644 --- a/ACE/examples/Threads/manual_event.cpp +++ b/ACE/examples/Threads/manual_event.cpp @@ -71,14 +71,14 @@ worker (void *arg) ACE_OS::sleep (::amount_of_work.value ()); // synch with everybody else - ACE_DEBUG ((LM_DEBUG, "(%t) waiting to synch with others \n")); + ACE_DEBUG ((LM_DEBUG, "(%t) waiting to synch with others\n")); thread_barrier.wait (); // more work ACE_DEBUG ((LM_DEBUG, "(%t) more work (%d secs)\n", ++::amount_of_work)); ACE_OS::sleep (::amount_of_work.value ()); - ACE_DEBUG ((LM_DEBUG, "(%t) dying \n")); + ACE_DEBUG ((LM_DEBUG, "(%t) dying\n")); return 0; } diff --git a/ACE/examples/Timer_Queue/Async_Timer_Queue_Test.cpp b/ACE/examples/Timer_Queue/Async_Timer_Queue_Test.cpp index 8503c295db4..d139bca0c87 100644 --- a/ACE/examples/Timer_Queue/Async_Timer_Queue_Test.cpp +++ b/ACE/examples/Timer_Queue/Async_Timer_Queue_Test.cpp @@ -239,7 +239,7 @@ Async_Timer_Queue_Test_Driver::display_menu (void) // The menu of options provided to the user. static char menu[] = "****\n" - "1) schedule timer <usecs> \n" + "1) schedule timer <usecs>\n" "2) cancel timer <timer_id>\n" "^C list timers\n" "^\\ exit program\n"; diff --git a/ACE/html/Stats/index.shtml b/ACE/html/Stats/index.shtml index 18c4c53177b..f8c16612b20 100644 --- a/ACE/html/Stats/index.shtml +++ b/ACE/html/Stats/index.shtml @@ -22,7 +22,7 @@ href="http://www.dre.vanderbilt.edu/scoreboard"> nightly</A> regression tests. The complete source for the tests is available as part of the ACE+TAO+CIAO <A - HREF="http://deuce.doc.wustl.edu/Download.html"> distribution + HREF="http://download.dre.vanderbilt.edu"> distribution </A>. The hardware and software configuration used for these tests is described <A HREF="configuration.shtml">here</A>. Notice, however, that the @@ -49,6 +49,9 @@ In addition to the statistics described above, a number of other ACE/TAO/CIAO de <li> <a href="http://www.dre.vanderbilt.edu/Scoreboard/">Automated Builds</a> </li> +<li> + <a href="http://www.dre.vanderbilt.edu/~isisbuilds/auto_compile_logs/isislab/emulab/FC6xampler/Template-Display/_Report/">Xampler Performance benchmarks</a> +</li> </ul> The <i>Code Coverage</i> pages illustrate which areas of ACE+TAO+CIAO code are used, and how frequently. The <i>Scoreboard</i> diff --git a/ACE/include/makeinclude/platform_gnuwin32_common.GNU b/ACE/include/makeinclude/platform_gnuwin32_common.GNU index 099e78cf8bf..00750e11752 100644 --- a/ACE/include/makeinclude/platform_gnuwin32_common.GNU +++ b/ACE/include/makeinclude/platform_gnuwin32_common.GNU @@ -33,6 +33,9 @@ endif CC = gcc CXX = g++ RC = windres +DLLTOOL = dlltool + +RC_OUTPUT_FLAG = -o ifeq (2.9,$(findstring 2.9,$(GNUWIN32_CXX_VERSION))) MODEL_FLAGS += -mcpu=$(TCPU) @@ -85,7 +88,7 @@ PLATFORM_WX_LDFLAGS ?= $(shell wx-config --ldflags) # to workaround to a bug in ld. SHLIBBUILD = \ $(RM) $(VSHDIR)/$@.def.old $(VSHDIR)/$@.def; \ - dlltool --export-all --output-def $(VSHDIR)/$@.def --dllname $@ \ + $(DLLTOOL) --export-all --output-def $(VSHDIR)/$@.def --dllname $@ \ $(VSHOBJS) \ && mv $(VSHDIR)/$@.def $(VSHDIR)/$@.def.old \ && sed 's/;.*$$//g' < $(VSHDIR)/$@.def.old > $(VSHDIR)/$@.def \ diff --git a/ACE/include/makeinclude/platform_linux.GNU b/ACE/include/makeinclude/platform_linux.GNU index 710935e7419..0bce73d819b 100644 --- a/ACE/include/makeinclude/platform_linux.GNU +++ b/ACE/include/makeinclude/platform_linux.GNU @@ -18,6 +18,7 @@ endif pipes ?= 1 CXX_FULL_VERSION := $(shell $(CXX_FOR_VERSION_TEST) --version) +CXX_VERSION := $(shell $(CXX_FOR_VERSION_TEST) -dumpversion) ifeq (Ubuntu, $(findstring Ubuntu,$(LSB_RELEASE_ID))) ifeq (7.10, $(findstring 7.10,$(LSB_RELEASE_RELEASE))) @@ -27,19 +28,11 @@ ifeq (Ubuntu, $(findstring Ubuntu,$(LSB_RELEASE_ID))) no_hidden_visibility ?= 1 endif endif -ifeq (Fedora, $(findstring Fedora,$(LSB_RELEASE_ID))) - ifeq (6, $(findstring 6,$(LSB_RELEASE_RELEASE))) +ifeq (Red Hat, $(findstring Red Hat,$(CXX_FULL_VERSION))) + ifeq (4.1.1, $(findstring 4.1.1,$(CXX_VERSION))) gcc_template_instantiation_visibility ?= 1 endif - ifeq (7, $(findstring 7,$(LSB_RELEASE_RELEASE))) - gcc_template_instantiation_visibility ?= 1 - endif - ifeq (8, $(findstring 8,$(LSB_RELEASE_RELEASE))) - gcc_template_instantiation_visibility ?= 1 - endif -endif -ifeq (RedHatEnterpriseServer, $(findstring RedHatEnterpriseServer,$(LSB_RELEASE_ID))) - ifeq (5, $(findstring 5,$(LSB_RELEASE_RELEASE))) + ifeq (4.1.2, $(findstring 4.1.2,$(CXX_VERSION))) gcc_template_instantiation_visibility ?= 1 endif endif diff --git a/ACE/include/makeinclude/platform_sunos5_common.GNU b/ACE/include/makeinclude/platform_sunos5_common.GNU index 88964e72bfc..e968af141f6 100644 --- a/ACE/include/makeinclude/platform_sunos5_common.GNU +++ b/ACE/include/makeinclude/platform_sunos5_common.GNU @@ -11,10 +11,12 @@ endif ifeq ($(shell /bin/uname -r),5.10) # Solaris 10 puts sendfile() in a separate library. LIBS += -lsendfile + sctp ?= lksctp endif ifeq ($(shell /bin/uname -r),5.11) # Solaris 11 puts sendfile() in a separate library. LIBS += -lsendfile + sctp ?= lksctp endif kstat ?= 1 ifeq ($(kstat),1) @@ -37,4 +39,9 @@ PLATFORM_TK_LDFLAGS= #PLATFORM_TCL_LIBS=-ltcl8.4 #PLATFORM_TCL_LDFLAGS= +sctp ?= +ifeq ($(sctp),lksctp) + PLATFORM_SCTP_CPPFLAGS+= -DACE_HAS_LKSCTP + PLATFORM_SCTP_LIBS?= -lsctp +endif diff --git a/ACE/include/makeinclude/platform_sunos5_g++.GNU b/ACE/include/makeinclude/platform_sunos5_g++.GNU index 330582a2415..c860662bdca 100644 --- a/ACE/include/makeinclude/platform_sunos5_g++.GNU +++ b/ACE/include/makeinclude/platform_sunos5_g++.GNU @@ -27,7 +27,7 @@ endif # ! i86pc CC = gcc CXX = g++ -FLAGS_C_CC += -W -Wall -Wpointer-arith +CFLAGS += -W -Wall -Wpointer-arith ifeq ($(threads),1) CPPFLAGS += -D_REENTRANT @@ -54,11 +54,10 @@ include $(ACE_ROOT)/include/makeinclude/platform_sunos5_common.GNU # include $(ACE_ROOT)/include/makeinclude/platform_g++_common.GNU -CFLAGS += $(FLAGS_C_CC) -CCFLAGS += $(FLAGS_C_CC) $(TEMPLATES_FLAG) +CCFLAGS += $(CFLAGS) $(TEMPLATES_FLAG) # Make sure we resolve all symbols at link time, see bugzilla 2710 -LDFLAGS += -z now +LDFLAGS += -z now ## Unfortunately, gcc 3.0 fails to many cpp files with ## optimization enabled. Even -O causes the compiler diff --git a/ACE/include/makeinclude/platform_vxworks6.2.GNU b/ACE/include/makeinclude/platform_vxworks6.2.GNU index 5138256a534..2e32b881c68 100644 --- a/ACE/include/makeinclude/platform_vxworks6.2.GNU +++ b/ACE/include/makeinclude/platform_vxworks6.2.GNU @@ -1,3 +1,4 @@ +# -*- Makefile -*- # $Id$ # VxWorks 6.2 @@ -173,7 +174,6 @@ ifneq ($(VX_LIB_BUILD),1) EXEEXT = .vxe VXE_DIR := $(OUTPUT_DIRECTORY) EXE = $(BIN_UNCHECKED) - GENERATED_DIRTY += $(PRJ_DIR)/$(PRJ_FILE) endif PRJ_DIR = . CLEANUP_OBJS := ctdt.c $(PRJ_DIR)/$(PRJ_FILE) $(CLEANUP_OBJS) @@ -194,7 +194,19 @@ ifeq ($(rtp),1) LDFLAGS := $(filter-out -N, $(LDFLAGS)) LD := $(CPLUS) DLD := $(CPLUS) - LDFLAGS += -L$(WIND_USR)/lib/$(VX_CPU_FAMILY)/$(CPU)/common + + ifeq ($(SHARED_LIBS), 1)) + ifeq ($(PRJ_TYPE),library) + PICDIR = /PIC + endif + endif + + ifeq ($(findstring *sf,*$(TOOL)),*sf) + LDFLAGS += -L$(WIND_USR)/lib/$(VX_CPU_FAMILY)/$(CPU)/sfcommon$(PICDIR) + else + LDFLAGS += -L$(WIND_USR)/lib/$(VX_CPU_FAMILY)/$(CPU)/common$(PICDIR) + endif + LDLIBS += -ldl else include $(TGT_DIR)/h/make/defs.default diff --git a/ACE/include/makeinclude/platform_vxworks6.3.GNU b/ACE/include/makeinclude/platform_vxworks6.3.GNU index c1b84dce857..7bdc6254526 100644 --- a/ACE/include/makeinclude/platform_vxworks6.3.GNU +++ b/ACE/include/makeinclude/platform_vxworks6.3.GNU @@ -1,3 +1,4 @@ +# -*- Makefile -*- # $Id$ # VxWorks 6.3 @@ -174,7 +175,6 @@ ifneq ($(VX_LIB_BUILD),1) EXEEXT = .vxe VXE_DIR := $(OUTPUT_DIRECTORY) EXE = $(BIN_UNCHECKED) - GENERATED_DIRTY += $(PRJ_DIR)/$(PRJ_FILE) endif PRJ_DIR = . CLEANUP_OBJS := ctdt.c $(PRJ_DIR)/$(PRJ_FILE) $(CLEANUP_OBJS) @@ -199,15 +199,18 @@ ifeq ($(rtp),1) CPPFLAGS += -DACE_HAS_AIO_CALLS LIBS += AioPx endif + ifeq ($(PRJ_TYPE),library) + PICDIR = /PIC + endif endif LDFLAGS := $(filter-out -X, $(LDFLAGS)) LDFLAGS := $(filter-out -N, $(LDFLAGS)) LD := $(CPLUS) DLD := $(CPLUS) ifeq ($(findstring *sf,*$(TOOL)),*sf) - LDFLAGS += -L$(WIND_USR)/lib/$(VX_CPU_FAMILY)/$(CPU)/sfcommon + LDFLAGS += -L$(WIND_USR)/lib/$(VX_CPU_FAMILY)/$(CPU)/sfcommon$(PICDIR) else - LDFLAGS += -L$(WIND_USR)/lib/$(VX_CPU_FAMILY)/$(CPU)/common + LDFLAGS += -L$(WIND_USR)/lib/$(VX_CPU_FAMILY)/$(CPU)/common$(PICDIR) endif else include $(TGT_DIR)/h/make/defs.default diff --git a/ACE/include/makeinclude/platform_vxworks6.7.GNU b/ACE/include/makeinclude/platform_vxworks6.7.GNU new file mode 100644 index 00000000000..89289a049a8 --- /dev/null +++ b/ACE/include/makeinclude/platform_vxworks6.7.GNU @@ -0,0 +1,9 @@ +# $Id$ +# VxWorks 6.7 + +ifeq ($(VXWORKS_VERSION_FLAG),) + VXWORKS_VERSION_FLAG = -DACE_VXWORKS=0x670 +endif # VXWORKS_VERSION_FLAG + +include $(ACE_ROOT)/include/makeinclude/platform_vxworks6.6.GNU + diff --git a/ACE/include/makeinclude/platform_win32_msvc.GNU b/ACE/include/makeinclude/platform_win32_msvc.GNU new file mode 100644 index 00000000000..962f8870ec5 --- /dev/null +++ b/ACE/include/makeinclude/platform_win32_msvc.GNU @@ -0,0 +1,136 @@ +# -*- Makefile -*- +# $Id$ + +# TODO: +# - per-source-file flag_overrides (gnu.mpd) + +# Include this file from platform_macros.GNU to build with sh and GNU make +# and the Visual C++ compiler and linker. +# Tested with the MSYS shell and make from msysCORE-1.0.11-20080826.tar.gz and +# the Visual C++ 9 toolchain (Visual C++ 2008 Express Edition) - SP1. + +# Assuming the msysCORE archive is extracted to c:\msys... +# Start the Visual C++ Command Prompt +# Set ACE_ROOT (TAO_ROOT, CIAO_ROOT, DDS_ROOT) +# Add C:\msys\bin to PATH along with %ACE_ROOT%\lib and %ACE_ROOT%\bin +# If necessary, generate GNUmakefiles with MPC (set MPC_ROOT, use -type gnuace) +# Run "make" + +# - library naming +# - dynamic: ACE.dll, ACE.lib is the "import library" +# - static: ACE.lib +# - no "s" suffix added for static, so static and dynamic can't coexist +# - no other modifiers are added to the name (no ACEd.dll, ACEmfc.dll) +# - user-customizable make variables +# - everything in the "Defaults" section (plus inline) +# - SUBSYSTEM: defaults to CONSOLE for exes, WINDOWS for libs +# - CRT_TYPE: defaults to D (dynamic) for shared libs, T (static) for static + +# Defaults +debug ?= 1 +optimize ?= 0 +#inline determined below, defaults to !debug +CPU ?= X86 +winnt ?= 1 +winregistry ?= 1 +wfmo ?= 1 +qos ?= 1 + +# Programs +CC = cl +CXX = $(CC) +RC = rc +LD = link +DLD = $(LD) +AR = $(LD) + +# File naming +EXEEXT = .exe +SOEXT = dll +OBJEXT = obj +LIBEXT = lib +LIB_PREFIX = +versioned_so = 0 + +# Need forward slashes for paths going through sh.exe +ACE_ROOT := $(subst \,/,$(ACE_ROOT)) + +# Options +PIC = +CC_OUTPUT_FLAG = -Fo +CC_OUTPUT_FLAG_SEP = +CPPFLAGS += -DWIN32 -D_WINDOWS -D_CRT_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE +CFLAGS += -Zc:wchar_t -nologo -W3 -EHsc -GR -wd4355 -Fd$(INTDIR) +ARFLAGS = -lib -nologo -machine:$(CPU) +MSVC_LDFLAGS = -incremental:no -nologo -subsystem:$(SUBSYSTEM) -machine:$(CPU) +ifeq (,$(BIN_UNCHECKED)) + SUBSYSTEM ?= WINDOWS +else + SUBSYSTEM ?= CONSOLE + REALCLEAN_FILES += $(BIN).manifest $(BIN_UNCHECKED).pdb +endif +ifeq (1,$(optimize)) + CFLAGS += -O2 +else + CFLAGS += -Ob0 +endif +ifeq (1,$(static_libs_only)) + static_libs = 1 +endif +ifeq (1,$(static_libs)) + shared_libs = 0 + shared_libs_only = 0 + CRT_TYPE ?= T + INTDIR = $(VDIR) +else + static_libs = 0 + static_libs_only = 0 + CRT_TYPE ?= D + ifneq (,$(BIN_UNCHECKED)) + INTDIR = $(VDIR) + else + INTDIR = $(VSHDIR) + endif + MSVC_IMPLIB = $(LIB_NAME).lib + MSVC_DLLFLAGS += -dll -implib:$(MSVC_IMPLIB) + REALCLEAN_FILES += $(LIB_NAME).dll $(INSLIB)/$(LIB_NAME).dll $(LIB_NAME).exp + REALCLEAN_FILES += $(LIB_NAME).dll.manifest +endif +ifneq (,$(LIB_NAME)) + REALCLEAN_FILES += $(LIB_NAME).lib $(INSLIB)/$(LIB_NAME).lib $(LIB_NAME).pdb +endif +ifeq (1,$(debug)) + CPPFLAGS += -D_DEBUG + CFLAGS += -Zi -M$(CRT_TYPE)d -Gy -Gm + inline ?= 0 + MSVC_LDFLAGS += -DEBUG + MSVC_DLLFLAGS += -pdb:$(subst dll,pdb,$@) + MSVC_EXEFLAGS += -pdb:$(subst exe,pdb,$@) +else + CPPFLAGS += -DNDEBUG + CFLAGS += -M$(CRT_TYPE) + inline ?= 1 +endif +CCFLAGS = $(CFLAGS) +CXXFLAGS = $(CFLAGS) +RC_INCLUDE_FLAG = -I +RC_OUTPUT_FLAG = -fo +SYSTEMLIBS += advapi32.lib user32.lib +MSVC_LINK = $(LD) $(SYSTEMLIBS) $(MSVC_LDFLAGS) $(patsubst -L%,-libpath:%, $(subst /,\,$(LDFLAGS))) $(patsubst -l%,%.lib,$(ACE_SHLIBS)) $(LIBS) -out:$@ +define SOLINK.cc.override +$(MSVC_LINK) $(MSVC_DLLFLAGS) $^ + mt -nologo -manifest $@.manifest -outputresource:$@\;2 + @if test . != $(INSLIB) -a $(call PWD) != $(INSLIB) -a -r $(MSVC_IMPLIB) ; then \ + cp $(MSVC_IMPLIB) $(INSLIB) ; \ + fi +endef +define LINK.cc.override +$(MSVC_LINK) $(MSVC_EXEFLAGS) $(filter-out %.lib,$(filter-out %.a,$^)) $(patsubst -l%,%.lib,$(VLDLIBS)) $(POSTLINK) + @if test -r $@.manifest ; then \ + mt -nologo -manifest $@.manifest -outputresource:$@\;1 ; \ + fi +endef +AR.cc.override = $(AR) $(ARFLAGS) -out:$@ $^ $(AREXTRA) + +#this is not mingw32, but the makefiles in ACE should act like it is +mingw32 = 1 diff --git a/ACE/include/makeinclude/rules.bin.GNU b/ACE/include/makeinclude/rules.bin.GNU index ab22f2e4975..fe6fb0a83b1 100644 --- a/ACE/include/makeinclude/rules.bin.GNU +++ b/ACE/include/makeinclude/rules.bin.GNU @@ -9,7 +9,7 @@ #---------------------------------------------------------------------------- ifdef BIN - VBIN = $(BIN:%=%$(VAR)) + VBIN = $(ARCH_BIN:%=%$(VAR)) # VBIN always depends on idl_stubs and libraries, if they exist. ifdef IDL_SRC $(VBIN): $(IDL_SRC) @@ -39,14 +39,15 @@ VXWORKSLINK ?= using_aix_vacpp ?= ifeq ($(VXWORKSLINK),1) -$(BIN): $(DEFAULTRULE) +$(ARCH_BIN): $(DEFAULTRULE) mv $(DEFAULTRULE) $@ else # !VXWORKSLINK ifeq (1,$(using_aix_vacpp)) -$(BIN): %: %.icc $(SRC) +$(ARCH_BIN): %: %.icc $(SRC) vacbld_r $< -severitylevel=warning else # !using_aix_vacpp -$(BIN): %: $(VDIR)%.$(OBJEXT) $(VOBJS) - $(LINK.cc) $(LDFLAGS) $(CC_OUTPUT_FLAG) $@ $(sort $(VDIR)$@.$(OBJEXT) $(VOBJS)) $(VLDLIBS) $(POSTLINK) +# Since we add in the vdir, don't use arch_bin. use bin instead! +$(ARCH_BIN): %: $(VDIR)$(BIN).$(OBJEXT) $(VOBJS) + $(LINK.cc) $(LDFLAGS) $(CC_OUTPUT_FLAG) $@ $(sort $(VDIR)$(BIN).$(OBJEXT) $(VOBJS)) $(VLDLIBS) $(POSTLINK) endif # using_aix_vacpp endif diff --git a/ACE/include/makeinclude/rules.lib.GNU b/ACE/include/makeinclude/rules.lib.GNU index 2eeb0633f14..0a0a6338d8b 100644 --- a/ACE/include/makeinclude/rules.lib.GNU +++ b/ACE/include/makeinclude/rules.lib.GNU @@ -35,8 +35,8 @@ endif # versioned_so # The following targets arrange to build both unshared and shared libraries #---------------------------------------------------------------------------- -LIB ?= -VLIB = $(LIB:%.$(LIBEXT)=%$(VAR).$(LIBEXT)) +LIB_PREFIX ?= lib +VLIB = $(ARCH_LIB:%.$(LIBEXT)=%$(VAR).$(LIBEXT)) CLEANUP_VLIB = $(CLEANUP_LIB:%.$(LIBEXT)=%$(VAR).$(LIBEXT)) # Add VLIB to VLIBS if building static_libs. @@ -46,13 +46,13 @@ endif SHLIB ?= # Setup shared library variables, including versions. -VSHLIB_NO_VER = $(SHLIB:%.$(SOEXT)=%$(VAR).$(SOEXT)) +VSHLIB_NO_VER = $(ARCH_SHLIB:%.$(SOEXT)=%$(VAR).$(SOEXT)) CLEANUP_VSHLIB_NO_VER = $(CLEANUP_SHLIB:%.$(SOEXT)=%$(VAR).$(SOEXT)) VSHLIB = $(VSHLIB_NO_VER:%=%$(SOVERSION)) CLEANUP_VSHLIB = $(CLEANUP_VSHLIB_NO_VER:%=%$(SOVERSION)) SHLIBA ?= -VSHLIBA = $(SHLIBA:%.$(LIBEXT)=%$(VAR).$(LIBEXT)) +VSHLIBA = $(ARCH_SHLIBA:%.$(LIBEXT)=%$(VAR).$(LIBEXT)) # Add VSHLIB if we're building shared_libs. ifdef shared_libs @@ -159,8 +159,12 @@ $(VLIB): $(VLOBJS) ifeq (1,$(ACE_OPENVMS)) find $(TMPINCDIR:%=%) -name "*.o" -or -name "*.obj" | xargs $(AR) $(ARFLAGS) $@ $(AREXTRA) else + ifneq (,$(AR.cc.override)) + $(AR.cc.override) + else ([ "`echo $(TMPINCDIR:%=%/*.o)`" != "$(TMPINCDIR:%=%/*.o)" ] && echo $(TMPINCDIR:%=%/*.o); \ echo $(filter %.o, $?)) | xargs $(AR) $(ARFLAGS) $@ $(AREXTRA) + endif endif ifdef ibmcxx_build # This is required to get AIX IBM C/C++ to instantiate and compile the needed @@ -236,7 +240,11 @@ $(VSHLIB): $(VSHOBJS) ifeq ($(split),1) $(SHR_FILTER) $(SOLINK.cc) $(SO_OUTPUT_FLAG) $@ $(VSHDIR)/*.$(OBJEXT) $(LDFLAGS) $(ACE_SHLIBS) $(LIBS) else # ! split + ifneq ($(SOLINK.cc.override),) + $(SOLINK.cc.override) + else $(SHR_FILTER) $(SOLINK.cc) $(SO_OUTPUT_FLAG) $@ $^ $(LDFLAGS) $(ACE_SHLIBS) $(LIBS) + endif #override endif # split endif # ibmcxx_build endif # SHLIBBUILD diff --git a/ACE/include/makeinclude/rules.local.GNU b/ACE/include/makeinclude/rules.local.GNU index 6ef881c5424..0255d0ccb34 100644 --- a/ACE/include/makeinclude/rules.local.GNU +++ b/ACE/include/makeinclude/rules.local.GNU @@ -49,7 +49,7 @@ makefile_name.local: else makefile_name.local: @echo - @echo GNUmakefile: $(call PWD)/$(MAKEFILE) + @echo GNUmakefile: $(call PWD)/$(MAKEFILE) MAKEFLAGS=$(MAKEFLAGS) @echo endif @@ -64,7 +64,7 @@ IDL_SRC ?= VLIBS ?= BUILD ?= BIN ?= -VBIN ?= $(BIN:%=%$(VAR)) +VBIN ?= $(ARCH_BIN:%=%$(VAR)) ifneq ($(VBIN),) $(VBIN): $(VLIBS) endif @@ -103,35 +103,39 @@ define mk_obj_out_dir endef endif -$(VDIR)%.o: %.c +nullstring := +CC_OUTPUT_FLAG_SEP ?= $(nullstring) #space + +$(VDIR)%.$(OBJEXT): %.c $(mk_obj_out_dir) - $(COMPILE.c) $(CC_OUTPUT_FLAG) $@ $< + $(COMPILE.c) $(CC_OUTPUT_FLAG)$(CC_OUTPUT_FLAG_SEP)$@ $< ${MVCMD} -$(VDIR)%.o: %.C +$(VDIR)%.$(OBJEXT): %.C $(mk_obj_out_dir) - $(COMPILE.c) $(CC_OUTPUT_FLAG) $@ $< + $(COMPILE.c) $(CC_OUTPUT_FLAG)$(CC_OUTPUT_FLAG_SEP)$@ $< ${MVCMD} -$(VDIR)%.o: %.cpp +$(VDIR)%.$(OBJEXT): %.cpp $(mk_obj_out_dir) - $(COMPILE.cc) $(CC_OUTPUT_FLAG) $@ $< + $(COMPILE.cc) $(CC_OUTPUT_FLAG)$(CC_OUTPUT_FLAG_SEP)$@ $< ${MVCMD} -$(VDIR)%.o: %.cc +$(VDIR)%.$(OBJEXT): %.cc $(mk_obj_out_dir) - $(COMPILE.cc) $(CC_OUTPUT_FLAG) $@ $< + $(COMPILE.cc) $(CC_OUTPUT_FLAG)$(CC_OUTPUT_FLAG_SEP)$@ $< ${MVCMD} -$(VDIR)%.o: %.cxx +$(VDIR)%.$(OBJEXT): %.cxx $(mk_obj_out_dir) - $(COMPILE.cc) $(CC_OUTPUT_FLAG) $@ $< + $(COMPILE.cc) $(CC_OUTPUT_FLAG)$(CC_OUTPUT_FLAG_SEP)$@ $< ${MVCMD} +RC_OUTPUT_FLAG ?= ifneq (,$(COMPILE.rc)) $(VDIR)%.rc.o: %.rc $(mk_obj_out_dir) - $(COMPILE.rc) $< $@ + $(COMPILE.rc) $(RC_OUTPUT_FLAG) $@ $< ${MVCMD} endif # COMPILE.rc @@ -142,11 +146,11 @@ $(VDIR)%.rc.o: %.rc ifndef SOLINK $(VSHDIR)%.$(OBJEXT): %.c $(mk_obj_out_dir) - $(COMPILE.c) $(PIC) $(CC_OUTPUT_FLAG) $@ $< + $(COMPILE.c) $(PIC) $(CC_OUTPUT_FLAG)$(CC_OUTPUT_FLAG_SEP)$@ $< $(VSHDIR)%.$(OBJEXT): %.C $(mk_obj_out_dir) - $(COMPILE.c) $(PIC) $(CC_OUTPUT_FLAG) $@ $< + $(COMPILE.c) $(PIC) $(CC_OUTPUT_FLAG)$(CC_OUTPUT_FLAG_SEP)$@ $< # I added the "Executable Shared Object (ESO)" define to separate between # normal shared object files and executable shared object files (the kind @@ -164,7 +168,7 @@ $(VSHDIR)%.$(SOEXT): %.cpp $(VSHDIR)%.$(OBJEXT): %.cc $(mk_obj_out_dir) - $(COMPILE.cc) $(PIC) $(CC_OUTPUT_FLAG) $@ $< + $(COMPILE.cc) $(PIC) $(CC_OUTPUT_FLAG)$(CC_OUTPUT_FLAG_SEP)$@ $< ifeq ($(split), 1) $(VSHDIR)%.$(OBJEXT): %.cpp @@ -175,18 +179,18 @@ $(VSHDIR)%.$(OBJEXT): %.cpp $(VSHDIR)%.$(OBJEXT): %.cpp $(mk_obj_out_dir) - $(COMPILE.cc) $(PIC) $(CC_OUTPUT_FLAG) $@ $< + $(COMPILE.cc) $(PIC) $(CC_OUTPUT_FLAG)$(CC_OUTPUT_FLAG_SEP)$@ $< endif # split $(VSHDIR)%.$(OBJEXT): %.cxx $(mk_obj_out_dir) - $(COMPILE.cc) $(PIC) $(CC_OUTPUT_FLAG) $@ $< + $(COMPILE.cc) $(PIC) $(CC_OUTPUT_FLAG)$(CC_OUTPUT_FLAG_SEP)$@ $< ifneq (,$(COMPILE.rc)) $(VSHDIR)%.rc.$(OBJEXT): %.rc $(mk_obj_out_dir) - $(COMPILE.rc) $< $@ + $(COMPILE.rc) $(RC_OUTPUT_FLAG) $@ $< endif # COMPILE.rc $(VSHDIR)%.$(SOEXT): $(VSHDIR)%.$(OBJEXT) @@ -225,6 +229,10 @@ ifdef LIB_INSTALL $(LIB_INSTALL): $(VLIBS) endif +ifneq ($(INSBIN),) + $(INSBIN)/$(VBIN): $(VBIN) +endif + INSTALL ?= install.local: $(INSTALL) @@ -255,6 +263,14 @@ ifndef LN_S endif # ! WIN32 endif # ! LN_S +# Don't call shell/call directly below since we may need to +# add the architecture specific suffix to the directory +ifneq ($(mingw32),1) +ARCH_SOURCE_DIR := $(patsubst /,,$(shell pwd)/$(ARCH)) +else +ARCH_SOURCE_DIR := $(patsubst /,,$(call PWD)/$(ARCH)) +endif + $(INSBIN)/%$(VAR)$(EXEEXT) \ $(INSINC)/ace% \ $(INSLIB)/% \ @@ -272,57 +288,57 @@ ifeq ($(vxworks_ntbuild),1) @if exist $@ echo "$(@F) already installed" @if not exist $@ echo "Installing $(@F:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)) to $(@D)" && \ $(RM) $(@:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)) && \ - $(LN_S) $(shell pwd)/$(@F) $(@:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)) && \ + $(LN_S) $(ARCH_SOURCE_DIR)/$(@F) $(@:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)) && \ echo "Installing $(@F) to $(@D)" && \ $(RM) $@ && \ - $(LN_S) $(shell pwd)/$(@F) $@ + $(LN_S) $(ARCH_SOURCE_DIR)/$(@F) $@ else #not vxworks_ntbuild ifeq ($(mingw32),1) #If we're actually copying instead of linking, pay attention to timestamps to know when to install ifeq ($(firstword $(LN_S)),cp) ifneq ($(SOVERSION),) - @if test $(call PWD) != $(@D) ; then \ + @if test $(ARCH_SOURCE_DIR) != $(@D) ; then \ if test $(@F) -ot $(@:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)) ; then \ echo "Installing $(@F:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)) -> $(@D)" ; \ $(RM) $(@:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)); \ - $(LN_S) $(call PWD)/$(@F) $(@:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)); \ + $(LN_S) $(ARCH_SOURCE_DIR)/$(@F) $(@:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)); \ fi ; \ fi endif #SOVERSION - @if test $(call PWD) != $(@D) ; then \ + @if test $(ARCH_SOURCE_DIR) != $(@D) ; then \ if test $@ -nt $(@F) ; then \ echo "$(@F) already installed" ; \ else \ echo "Installing $(@F) -> $(@D)" ; \ $(RM) $@; \ - $(LN_S) $(call PWD)/$(@F) $@; \ + $(LN_S) $(ARCH_SOURCE_DIR)/$(@F) $@; \ fi ; \ fi else #firstword of LN_S is not cp, so we're using real symlinks - @if test $(call PWD) != $(@D) -o -n "$(SOVERSION)" ; then \ + @if test $(ARCH_SOURCE_DIR) != $(@D) -o -n "$(SOVERSION)" ; then \ if test -s $@ ; then \ echo "$(@F) already installed" ; \ else \ echo "Installing $(@F:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)) -> $(@D)" ; \ $(RM) $(@:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)); \ - $(LN_S) $(call PWD)/$(@F) $(@:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)); \ + $(LN_S) $(ARCH_SOURCE_DIR)/$(@F) $(@:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)); \ echo "Installing $(@F) -> $(@D)" ; \ $(RM) $@; \ - $(LN_S) $(call PWD)/$(@F) $@; \ + $(LN_S) $(ARCH_SOURCE_DIR)/$(@F) $@; \ fi ; \ fi endif #firstword else #not mingw32 - @if test $(shell pwd) != $(@D) -o -n "$(SOVERSION)" ; then \ + @if test $(ARCH_SOURCE_DIR) != $(@D) -o -n "$(SOVERSION)" ; then \ if test -s $@ ; then \ echo "$(@F) already installed" ; \ else \ echo "Installing $(@F:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)) -> $(@D)" ; \ $(RM) $(@:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)); \ - $(LN_S) $(shell pwd)/$(@F) $(@:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)); \ + $(LN_S) $(ARCH_SOURCE_DIR)/$(@F) $(@:%.$(SOEXT)$(SOVERSION)=%.$(SOEXT)); \ echo "Installing $(@F) -> $(@D)" ; \ $(RM) $@; \ - $(LN_S) $(shell pwd)/$(@F) $@; \ + $(LN_S) $(ARCH_SOURCE_DIR)/$(@F) $@; \ fi ; \ fi endif #mingw32 @@ -335,7 +351,7 @@ ifdef MVSLIB echo "$(@F:.$(SOEXT)=.x) already installed" ; \ else \ echo "Installing $(@F:.$(SOEXT)=.x) -> $(@D)" ; \ - $(RM) $(@); $(LN_S) $(shell pwd)/$(@F:.$(SOEXT)=.x) $(@:.$(SOEXT)=.x) ; \ + $(RM) $(@); $(LN_S) $(ARCH_SOURCE_DIR)/$(@F:.$(SOEXT)=.x) $(@:.$(SOEXT)=.x) ; \ fi \ fi endif @@ -386,7 +402,7 @@ ifdef OBJS CLEANUP_OBJS += $(addprefix $(VDIR), $(OBJS)) endif # OBJS ifneq ($(CLEANUP_BIN),) - CLEANUP_OBJS += $(addsuffix .$(OBJEXT),$(addprefix $(VDIR),$(basename $(CLEANUP_BIN)))) $(VOBJS) + CLEANUP_OBJS += $(addsuffix .$(OBJEXT),$(addprefix $(VDIR),$(basename $(CLEANUP_BIN:$(ARCH)/%=%)))) $(VOBJS) endif # CLEANUP_BIN ifdef VSHOBJS CLEANUP_OBJS += $(VSHOBJS) @@ -404,7 +420,7 @@ endif # DO_CLEANUP realclean.local: clean.local deinstall.local clean_idl_stubs.local ifdef DO_CLEANUP - -$(RM) -r $(REALCLEAN_FILES) $(sort $(CLEANUP_OBJDIRS)) + -$(RM) -r $(REALCLEAN_FILES) $(sort $(CLEANUP_OBJDIRS)) $(ARCH) endif # DO_CLEANUP @@ -521,8 +537,8 @@ SPLIT: @echo "done." svnignore.local: - if [ "n$(BIN)" != "n" ]; then \ - (svn propget svn:ignore .; echo $(BIN)) | sort | uniq | sed '/^$$/d' >SvNiGnOrE; \ + if [ "n$(ARCH_BIN)" != "n" ]; then \ + (svn propget svn:ignore .; echo $(ARCH_BIN)) | sort | uniq | sed '/^$$/d' >SvNiGnOrE; \ svn propset svn:ignore -F SvNiGnOrE .; \ rm SvNiGnOrE; \ fi diff --git a/ACE/include/makeinclude/wrapper_macros.GNU b/ACE/include/makeinclude/wrapper_macros.GNU index 01a527876ab..31bc814b4d7 100644 --- a/ACE/include/makeinclude/wrapper_macros.GNU +++ b/ACE/include/makeinclude/wrapper_macros.GNU @@ -192,6 +192,44 @@ # (link to the appropriate platform-specific config file). #---------------------------------------------------------------------------- +# default to not using an architecture specific output directory +ARCH ?= +ARCH_BIN = $(BIN) +ARCH_BIN2 = $(BIN2) +ARCH_LIB = $(LIB_CHECKED) +ARCH_LIB2 = $(LIB2) +ARCH_SHLIB = $(SHLIB) +ARCH_SHLIB2 = $(SHLIB2) +ARCH_SHLIBA = $(SHLIBA) +ARCH_SHLIBA2 = $(SHLIBA2) + +ifdef ARCH +ifdef BIN + ARCH_BIN = $(ARCH)/$(BIN) +endif +ifdef BIN2 + ARCH_BIN2 = $(ARCH)/$(BIN2) +endif +ifdef LIB_CHECKED + ARCH_LIB = $(ARCH)/$(LIB_CHECKED) +endif +ifdef LIB2 + ARCH_LIB2 = $(ARCH)/$(LIB2) +endif +ifdef SHLIB + ARCH_SHLIB = $(ARCH)/$(SHLIB) +endif +ifdef SHLIB2 + ARCH_SHLIB2 = $(ARCH)/$(SHLIB2) +endif +ifdef SHLIBA + ARCH_SHLIBA = $(ARCH)/$(SHLIBA) +endif +ifdef SHLIBA2 + ARCH_HLIBA2 = $(ARCH)/$(SHLIBA2) +endif +endif + # Set the cleanup targets. These targets are used by realclean even if # the component isn't being built, i.e., the decision to build it was based # on components built in another makefile and written a file (that might no @@ -205,10 +243,10 @@ BIN_UNCHECKED ?= CLEANUP_BIN ?= ifdef BIN - CLEANUP_BIN = $(BIN) + CLEANUP_BIN = $(ARCH_BIN) endif # !BIN ifdef BIN2 - CLEANUP_BIN += $(BIN2) + CLEANUP_BIN += $(ARCH_BIN2) endif # !BIN2 ifneq ($(BIN_UNCHECKED),) CLEANUP_BIN += $(BIN_UNCHECKED) @@ -216,11 +254,11 @@ endif # !BIN_UNCHECKED LIB_UNCHECKED ?= CLEANUP_LIB ?= -ifdef LIB - CLEANUP_LIB = $(LIB) -endif # !LIB +ifdef LIB_CHECKED + CLEANUP_LIB = $(ARCH_LIB) +endif # !LIB_CHECKED ifdef LIB2 - CLEANUP_LIB += $(LIB2) + CLEANUP_LIB += $(ARCH_LIB2) endif # !LIB2 ifneq ($(LIB_UNCHECKED),) CLEANUP_LIB = $(LIB_UNCHECKED) @@ -229,10 +267,10 @@ endif # !LIB_UNCHECKED SHLIB_UNCHECKED ?= CLEANUP_SHLIB ?= ifdef SHLIB - CLEANUP_SHLIB = $(SHLIB) + CLEANUP_SHLIB = $(ARCH_SHLIB) endif # !SHLIB ifdef SHLIB2 - CLEANUP_SHLIB += $(SHLIB2) + CLEANUP_SHLIB += $(ARCH_SHLIB2) endif # SHLIB2 ifneq ($(SHLIB_UNCHECKED),) CLEANUP_SHLIB += $(SHLIB_UNCHECKED) @@ -241,10 +279,10 @@ endif # ! SHLIB_UNCHECKED SHLIBA_UNCHECKED ?= CLEANUP_SHLIBA ?= ifdef SHLIBA - CLEANUP_SHLIBA = $(SHLIBA) + CLEANUP_SHLIBA = $(ARCH_SHLIBA) endif # SHLIBA ifdef SHLIBA2 - CLEANUP_SHLIBA = $(SHLIBA2) + CLEANUP_SHLIBA = $(ARCH_SHLIBA2) endif # SHLIB2A ifneq ($(SHLIBA_UNCHECKED),) CLEANUP_SHLIBA = $(SHLIBA_UNCHECKED) @@ -379,8 +417,13 @@ PCCFLAGS += #### set in platform_macros.GNU file, e.g., -p VAR = # Let users override the default VDIR directories +ifdef ARCH +VDIR ?= $(ARCH)/.obj/ +VSHDIR ?= $(ARCH)/.shobj/ +else VDIR ?= .obj/ VSHDIR ?= .shobj/ +endif # NOTE: VLDLIBS is defined below, in case it is overridden for static- # or shared-only builds. @@ -835,7 +878,6 @@ ace_svcconf ?= 1 ace_uuid ?= 1 ace_filecache ?= 1 acexml ?= 1 -xerces ?= 1 #---------------------------------------------------------------------------- # Conditional macro definitions diff --git a/ACE/m4/ace_func.m4 b/ACE/m4/ace_func.m4 index 14b84973bb4..bc8cbd11653 100644 --- a/ACE/m4/ace_func.m4 +++ b/ACE/m4/ace_func.m4 @@ -35,8 +35,8 @@ fi ]) # ACE_FUNC_STRNCASECMP -# + Defines ACE_LACKS_STRCASECMP to 1 if platform lacks strcasecmp() -# + Defines ACE_STRCASECMP_EQUIVALENT to identifier name if platform +# + Defines ACE_LACKS_STRNCASECMP to 1 if platform lacks strncasecmp() +# + Defines ACE_STRNCASECMP_EQUIVALENT to identifier name if platform # has a equivalent function that differs in name only. # + Defines ACE_LACKS_STRNCASECMP_PROTOTYPE to 1 if platform lacks # declaration for strncasecmp(). @@ -87,9 +87,65 @@ if test "$ac_cv_func_strdup" = no; then fi ]) +# ACE_FUNC_STRTOLL +# + Defines ACE_LACKS_STRTOLL to 1 if platform lacks strtoll() +# + Defines ACE_STRTOLL_EQUIVALENT to identifier name if platform +# has a equivalent function that differs in name only. +# + Defines ACE_LACKS_STRTOLL_PROTOTYPE to 1 if platform lacks +# declaration for strtoll(). +AC_DEFUN([ACE_FUNC_STRTOLL], +[ACE_CHECK_LACKS_FUNCS(strtoll) +if test $ac_cv_func_strtoll = "no"; then + AC_CHECK_FUNC(__strtoll) + if test $ac_cv_func___strtoll = "yes"; then + AC_DEFINE([ACE_STRTOLL_EQUIVALENT], [::__strtoll], + [Define to function that is equivalent to strtoll()]) + else + AC_CHECK_FUNC(_strtoi64) + if test $ac_cv_func__strtoi64 = "yes"; then + AC_DEFINE([ACE_STRTOLL_EQUIVALENT], [::_strtoi64]) + fi + fi +else + AC_CHECK_DECL([strtoll], + [], + [AC_DEFINE([ACE_LACKS_STRTOLL_PROTOTYPE], 1, + [Define to 1 if platform lacks a declaration for strtoll()])], + [#include <stdlib.h>]) +fi +]) + +# ACE_FUNC_STRTOULL +# + Defines ACE_LACKS_STRTOULL to 1 if platform lacks strtoull() +# + Defines ACE_STRTOULL_EQUIVALENT to identifier name if platform +# has a equivalent function that differs in name only. +# + Defines ACE_LACKS_STRTOULL_PROTOTYPE to 1 if platform lacks +# declaration for strtoull(). +#--------------------------------------------------------------------------- +AC_DEFUN([ACE_FUNC_STRTOULL], +[ACE_CHECK_LACKS_FUNCS(strtoull) +if test $ac_cv_func_strtoull = "no"; then + AC_CHECK_FUNC(__strtoull) + if test $ac_cv_func___strtoull = "yes"; then + AC_DEFINE([ACE_STRTOULL_EQUIVALENT], [::__strtoull], + [Define to function that is equivalent to strtoull()]) + else + AC_CHECK_FUNC(_strtoui64) + if test $ac_cv_func__strtoui64 = "yes"; then + AC_DEFINE([ACE_STRTOULL_EQUIVALENT], [::_strtoui64]) + fi + fi +else + AC_CHECK_DECL([strtoull], + [], + [AC_DEFINE([ACE_LACKS_STRTOULL_PROTOTYPE], 1, + [Define to 1 if platform lacks a declaration for strtoull()])], + [#include <stdlib.h>]) +fi +]) # ACE_FUNC_WCSCASECMP -# + Defines ACE_LACKS_WCSCASECMP to 1 if platform lacks strcasecmp() +# + Defines ACE_LACKS_WCSCASECMP to 1 if platform lacks wcscasecmp() # + Defines ACE_WCSCASECMP_EQUIVALENT to identifier name if platform # has a equivalent function that differs in name only. #--------------------------------------------------------------------------- @@ -110,7 +166,7 @@ fi ]) # ACE_FUNC_WCSNCASECMP -# + Defines ACE_LACKS_WCSNCASECMP to 1 if platform lacks strcasecmp() +# + Defines ACE_LACKS_WCSNCASECMP to 1 if platform lacks wcsncasecmp() # + Defines ACE_WCSNCASECMP_EQUIVALENT to identifier name if platform # has a equivalent function that differs in name only. #--------------------------------------------------------------------------- @@ -147,11 +203,72 @@ if test "$ac_cv_func_wcsdup" = no; then fi ]) +# ACE_FUNC_WCSTOLL +# + Defines ACE_LACKS_WCSTOLL to 1 if platform lacks wcstoll() +# + Defines ACE_WCSTOLL_EQUIVALENT to identifier name if platform +# has a equivalent function that differs in name only. +# + Defines ACE_LACKS_WCSTOLL_PROTOTYPE to 1 if platform lacks +# declaration for wcstoll(). +AC_DEFUN([ACE_FUNC_WCSTOLL], +[ACE_CHECK_LACKS_FUNCS(wcstoll) +if test $ac_cv_func_wcstoll = "no"; then + AC_CHECK_FUNC(__wcstoll) + if test $ac_cv_func___wcstoll = "yes"; then + AC_DEFINE([ACE_WCSTOLL_EQUIVALENT], [::__wcstoll], + [Define to function that is equivalent to wcstoll()]) + else + AC_CHECK_FUNC(_wcstoi64) + if test $ac_cv_func__wcstoi64 = "yes"; then + AC_DEFINE([ACE_WCSTOLL_EQUIVALENT], [::_wcstoi64], + [Define to function that is equivalent to wcstoll()]) + fi + fi +else + AC_CHECK_DECL([wcstoll], + [], + [AC_DEFINE([ACE_LACKS_WCSTOLL_PROTOTYPE], 1, + [Define to 1 if platform lacks a declaration for wcstoll()])], + [#include <stdlib.h> +#include <wchar.h>]) +fi +]) + +# ACE_FUNC_WCSTOULL +# + Defines ACE_LACKS_WCSTOULL to 1 if platform lacks wcstoull() +# + Defines ACE_WCSTOULL_EQUIVALENT to identifier name if platform +# has a equivalent function that differs in name only. +# + Defines ACE_LACKS_WCSTOULL_PROTOTYPE to 1 if platform lacks +# declaration for wcstoull(). +AC_DEFUN([ACE_FUNC_WCSTOULL], +[ACE_CHECK_LACKS_FUNCS(wcstoull) +if test $ac_cv_func_wcstoull = "no"; then + AC_CHECK_FUNC(__wcstoull) + if test $ac_cv_func___wcstoull = "yes"; then + AC_DEFINE([ACE_WCSTOULL_EQUIVALENT], [::__wcstoull], + [Define to function that is equivalent to wcstoull()]) + else + AC_CHECK_FUNC(_wcstoui64) + if test $ac_cv_func__wcstoui64 = "yes"; then + AC_DEFINE([ACE_WCSTOULL_EQUIVALENT], [::_wcstoui64], + [Define to function that is equivalent to wcstoull()]) + fi + fi +else + AC_CHECK_DECL([wcstoull], + [], + [AC_DEFINE([ACE_LACKS_WCSTOULL_PROTOTYPE], 1, + [Define to 1 if platform lacks a declaration for wcstoull()])], + [#include <stdlib.h> +#include <wchar.h>]) +fi +]) # ACE_CHECK_SYSINFO # -# SVR4 and Linux have completely independent implementations of the -# sysinfo() system / library call. +# HP/UX, SVR4/POSIX and Linux have completely independent +# implementations of the # sysinfo() system / library call. +# +# The HP/UX syscall is undocumented. # # The SVR4 signature is: # #include <sys/systeminfo.h> @@ -164,6 +281,8 @@ fi # SVR4 (or at least Solaris) also has a sys/sysinfo.h header, so that # cannot be used to distinguish between the two varients. As far as I # know, Linux does not have a sys/systeminfo.h header, so that can. +# To further avoid false positives, small programs that use the two +# APIs are compiled as part of the feature tests. # # ACE uses the ACE_HAS_SYSV_SYSINFO feature test macro for the first # and ACE_HAS_LINUX_SYSINFO for the second. @@ -173,11 +292,24 @@ ACE_CHECK_HAS_HEADERS(sys/sysinfo.h sys/systeminfo.h) AC_CHECK_FUNC(sysinfo) if test "$ac_cv_func_sysinfo" = yes; then if test "$ac_cv_header_sys_systeminfo_h" = yes; then - AC_DEFINE([ACE_HAS_SYSV_SYSINFO], 1, - [Define to 1 if system has SysV version of sysinfo().]) + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [#include <sys/systeminfo.h>], + [char buf[256]; + sysinfo (SI_SYSNAME, buf, sizeof(buf)); + return 0;])], + [AC_DEFINE([ACE_HAS_SYSV_SYSINFO], 1, + [Define to 1 if system has SysV version of sysinfo().])]) + elif test "$ac_cv_header_sys_sysinfo_h" = yes; then - AC_DEFINE([ACE_HAS_LINUX_SYSINFO], 1, - [Define to 1 if system has Linux version of sysinfo().]) + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [#include <sys/sysinfo.h>], + [struct sysinfo s; + sysinfo (&s); + return 0;])], + [AC_DEFINE([ACE_HAS_LINUX_SYSINFO], 1, + [Define to 1 if system has Linux version of sysinfo().])]) fi fi ]) diff --git a/ACE/netsvcs/clients/Naming/Dump_Restore/Dump_Restore.cpp b/ACE/netsvcs/clients/Naming/Dump_Restore/Dump_Restore.cpp index cdd036e4044..fd87cae7149 100644 --- a/ACE/netsvcs/clients/Naming/Dump_Restore/Dump_Restore.cpp +++ b/ACE/netsvcs/clients/Naming/Dump_Restore/Dump_Restore.cpp @@ -40,7 +40,7 @@ Dump_Restore::Dump_Restore (int argc, ACE_TCHAR *argv[]) // problme of Display () not printing the right hostname ACE_OS::strcpy (this->hostname_, this->name_options_->nameserver_host ()); - this->port_ = + this->port_ = this->name_options_->nameserver_port (); if (this->ns_context_->open (ACE_Naming_Context::NET_LOCAL) == -1) @@ -193,7 +193,7 @@ Dump_Restore::display_menu (void) ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("<D> Dump <file name>\n"))); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("<Q> or ^C (exit) \n"))); + ACE_TEXT ("<Q> or ^C (exit)\n"))); } @@ -331,7 +331,7 @@ Dump_Restore::populate (Dump_Restore::Operation_Type op) allocator); for (char *temp; - (temp = read_buffer.read ('\n')) != 0; + (temp = read_buffer.read ('\n')) != 0; ) { char *name = 0; @@ -421,7 +421,7 @@ Dump_Restore::unbind (const char *key) int result = ns_context_->unbind (key); if (result == -1) - ACE_ERROR_RETURN ((LM_ERROR, + ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("%p\n"), ACE_TEXT ("ns_context_->unbind")), -1); @@ -433,7 +433,7 @@ Dump_Restore::rebind (const char *key, const char *value, const char *type) { - if (ns_context_->rebind (key, + if (ns_context_->rebind (key, value, type) == -1) ACE_ERROR_RETURN ((LM_ERROR, diff --git a/ACE/netsvcs/lib/Client_Logging_Handler.cpp b/ACE/netsvcs/lib/Client_Logging_Handler.cpp index ae37c10fecd..84a59ac7d1f 100644 --- a/ACE/netsvcs/lib/Client_Logging_Handler.cpp +++ b/ACE/netsvcs/lib/Client_Logging_Handler.cpp @@ -1,7 +1,5 @@ // $Id$ -#define ACE_BUILD_SVC_DLL - #include "ace/Get_Opt.h" #include "ace/Acceptor.h" #include "ace/SOCK_Connector.h" @@ -18,7 +16,9 @@ #include "ace/INET_Addr.h" #include "Client_Logging_Handler.h" -ACE_RCSID(lib, Client_Logging_Handler, "$Id$") +ACE_RCSID(lib, + Client_Logging_Handler, + "$Id$") ACE_Client_Logging_Handler::ACE_Client_Logging_Handler (ACE_HANDLE output_handle) : logging_output_ (output_handle) @@ -74,7 +74,7 @@ ACE_Client_Logging_Handler::open (void *) ACE_TEXT ("get_remote_addr")), -1); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("connected to client on handle %u\n"), + ACE_TEXT ("Connected to client on handle %u\n"), this->peer ().get_handle ())); return 0; } @@ -104,7 +104,7 @@ ACE_Client_Logging_Handler::handle_input (ACE_HANDLE handle) if (handle == this->logging_output_) // We're getting a message from the logging server! ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("received data from server!\n")), + ACE_TEXT ("Received data from server!\n")), -1); ACE_Log_Record log_record; @@ -123,13 +123,9 @@ ACE_Client_Logging_Handler::handle_input (ACE_HANDLE handle) // Align the Message Block for a CDR stream ACE_CDR::mb_align (header.get ()); - ACE_CDR::Boolean byte_order; - ACE_CDR::ULong length; - -#if defined (ACE_HAS_STREAM_PIPES) +#if (ACE_HAS_STREAM_LOG_MSG_IPC == 1) // We're getting a logging message from a local application using // STREAM pipes, which are nicely prioritized for us. - ACE_Str_Buf header_msg (header->wr_ptr (), 0, 8); @@ -164,9 +160,9 @@ ACE_Client_Logging_Handler::handle_input (ACE_HANDLE handle) // We're getting a logging message from a local application using // sockets pipes, which are NOT prioritized for us. - ssize_t count = ACE::recv_n (handle, - header->wr_ptr (), - 8); + ssize_t const count = ACE::recv_n (handle, + header->wr_ptr (), + 8); switch (count) { // Handle shutdown and error cases. @@ -197,23 +193,35 @@ ACE_Client_Logging_Handler::handle_input (ACE_HANDLE handle) // Just fall through in this case.. break; } -#endif /* ACE_HAS_STREAM_PIPES */ +#endif /* ACE_HAS_STREAM_LOG_MSG_IPC == 1 */ // Reflect addition of 8 bytes for the header. - header->wr_ptr (8); + header->wr_ptr (8); // Create a CDR stream to parse the 8-byte header. ACE_InputCDR header_cdr (header.get ()); // Extract the byte-order and use helper methods to disambiguate // octet, booleans, and chars. - header_cdr >> ACE_InputCDR::to_boolean (byte_order); + ACE_CDR::Boolean byte_order; + if (!(header_cdr >> ACE_InputCDR::to_boolean (byte_order))) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Can't extract byte_order\n"))); + return 0; + } // Set the byte-order on the stream... header_cdr.reset_byte_order (byte_order); // Extract the length - header_cdr >> length; + ACE_CDR::ULong length; + if (!(header_cdr >> length)) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Can't extract length\n"))); + return 0; + } ACE_NEW_RETURN (payload_p, ACE_Message_Block (length), @@ -223,7 +231,7 @@ ACE_Client_Logging_Handler::handle_input (ACE_HANDLE handle) // Ensure there's sufficient room for log record payload. ACE_CDR::grow (payload.get (), 8 + ACE_CDR::MAX_ALIGNMENT + length); -#if defined (ACE_HAS_STREAM_PIPES) +#if (ACE_HAS_STREAM_LOG_MSG_IPC == 1) ACE_Str_Buf payload_msg (payload->wr_ptr (), 0, length); @@ -233,7 +241,7 @@ ACE_Client_Logging_Handler::handle_input (ACE_HANDLE handle) &payload_msg, &flags); - if (result < 0 || payload_msg.len == 0) + if (result < 0 || payload_msg.len != length) { ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("%p\n"), @@ -245,7 +253,9 @@ ACE_Client_Logging_Handler::handle_input (ACE_HANDLE handle) | ACE_Event_Handler::EXCEPT_MASK | ACE_Event_Handler::DONT_CALL) == -1) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("%n: %p\n"), + ACE_TEXT ("%n: result %d, length %d %p\n"), + result, + payload_msg.len, ACE_TEXT ("remove_handler")), -1); spipe.close (); @@ -271,14 +281,19 @@ ACE_Client_Logging_Handler::handle_input (ACE_HANDLE handle) ACE_OS::closesocket (handle); return 0; } -#endif /* ACE_HAS_STREAM_PIPES */ +#endif /* ACE_HAS_STREAM_LOG_MSG_IPC == 1 */ // Reflect additional bytes for the message. - payload->wr_ptr (length); + payload->wr_ptr (length); ACE_InputCDR payload_cdr (payload.get ()); payload_cdr.reset_byte_order (byte_order); - payload_cdr >> log_record; // Finally extract the <ACE_log_record>. + if (!(payload_cdr >> log_record)) // Finally extract the ACE_log_record. + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Can't extract log_record\n"))); + return 0; + } log_record.length (length); @@ -335,14 +350,16 @@ ACE_Client_Logging_Handler::send (ACE_Log_Record &log_record) *orig_ostream); if (this->logging_output_ == ACE_STDERR) - log_record.print (ACE_TEXT ("<localhost>"), - ACE_Log_Msg::instance ()->flags (), - stderr); + { + log_record.print (ACE_TEXT ("<localhost>"), + ACE_Log_Msg::instance ()->flags (), + stderr); + } else { // Serialize the log record using a CDR stream, allocate enough // space for the complete <ACE_Log_Record>. - const size_t max_payload_size = + size_t const max_payload_size = 4 // type() + 8 // timestamp + 4 // process id @@ -352,18 +369,33 @@ ACE_Client_Logging_Handler::send (ACE_Log_Record &log_record) // Insert contents of <log_record> into payload stream. ACE_OutputCDR payload (max_payload_size); - payload << log_record; + if (!(payload << log_record)) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Can't insert log_record\n"))); + return -1; + } // Get the number of bytes used by the CDR stream. - ACE_CDR::ULong length = payload.total_length (); + ACE_CDR::ULong const length = payload.total_length (); // Send a header so the receiver can determine the byte order and // size of the incoming CDR stream. ACE_OutputCDR header (ACE_CDR::MAX_ALIGNMENT + 8); - header << ACE_OutputCDR::from_boolean (ACE_CDR_BYTE_ORDER); + if (!(header << ACE_OutputCDR::from_boolean (ACE_CDR_BYTE_ORDER))) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Can't insert byte order\n"))); + return -1; + } // Store the size of the payload that follows - header << ACE_CDR::ULong (length); + if (!(header << ACE_CDR::ULong (length))) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Can't insert length\n"))); + return -1; + } // Use an iovec to send both buffer and payload simultaneously. iovec iov[2]; @@ -376,7 +408,7 @@ ACE_Client_Logging_Handler::send (ACE_Log_Record &log_record) // efficiently using "gather-write". if (ACE::sendv_n (this->logging_output_,iov, 2) == -1) { - ACE_DEBUG ((LM_DEBUG, + ACE_DEBUG ((LM_DEBUG, "Something about the sendv_n() failed, so switch to stderr\n")); if (ACE_Log_Msg::instance ()->msg_ostream () == 0) @@ -453,7 +485,7 @@ private: ACE_Client_Logging_Handler *handler_; // Pointer to the singleton handler that receives messages from - // clients and forwards to the server. + // clients and forwards to the server. }; int @@ -470,6 +502,7 @@ ACE_Client_Logging_Acceptor::fini (void) // This memory was allocated by <ACE_OS::strdup>. ACE_OS::free ((void *) this->logger_key_); + ACE_OS::free ((void *) this->server_host_); return 0; @@ -530,12 +563,13 @@ ACE_Client_Logging_Acceptor::init (int argc, ACE_TCHAR *argv[]) ACE_TEXT ("%p\n"), this->logger_key_), -1); + // Establish connection with the server. ACE_SOCK_Connector con; ACE_SOCK_Stream stream; ACE_INET_Addr server_addr; -#if defined (ACE_HAS_STREAM_PIPES) +#if (ACE_HAS_STREAM_LOG_MSG_IPC == 1) ACE_SPIPE_Addr lserver_addr; // Figure out what local port we're really bound to. @@ -546,7 +580,7 @@ ACE_Client_Logging_Acceptor::init (int argc, ACE_TCHAR *argv[]) -1); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("starting up Client Logging Daemon, ") + ACE_TEXT ("Starting up Client Logging Daemon, ") ACE_TEXT ("bounded to STREAM addr %s on handle %u\n"), lserver_addr.get_path_name (), this->acceptor ().get_handle ())); @@ -561,11 +595,11 @@ ACE_Client_Logging_Acceptor::init (int argc, ACE_TCHAR *argv[]) -1); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("starting up Client Logging Daemon, ") + ACE_TEXT ("Starting up Client Logging Daemon, ") ACE_TEXT ("bounded to local port %d on handle %u\n"), lserver_addr.get_port_number (), this->acceptor ().get_handle ())); -#endif /* ACE_HAS_STREAM_PIPES */ +#endif /* ACE_HAS_STREAM_LOG_MSG_IPC == 1 */ if (con.connect (stream, this->server_addr_, @@ -573,7 +607,7 @@ ACE_Client_Logging_Acceptor::init (int argc, ACE_TCHAR *argv[]) this->local_addr_) == -1) { ACE_ERROR ((LM_ERROR, - ACE_TEXT ("can't connect to logging server %s on port %d: ") + ACE_TEXT ("Can't connect to logging server %s on port %d: ") ACE_TEXT ("%m, using stderr\n"), this->server_addr_.get_host_name (), this->server_addr_.get_port_number (), @@ -593,7 +627,8 @@ ACE_Client_Logging_Acceptor::init (int argc, ACE_TCHAR *argv[]) ACE_TEXT ("get_remote_addr")), -1); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("Client Logging Daemon is connected to Server Logging Daemon %s on port %d on handle %u\n"), + ACE_TEXT ("Client Logging Daemon is connected to Server ") + ACE_TEXT ("Logging Daemon %s on port %d on handle %u\n"), server_addr.get_host_name (), server_addr.get_port_number (), stream.get_handle ())); diff --git a/ACE/netsvcs/lib/Client_Logging_Handler.h b/ACE/netsvcs/lib/Client_Logging_Handler.h index 20b593c2168..6a36c2be8e9 100644 --- a/ACE/netsvcs/lib/Client_Logging_Handler.h +++ b/ACE/netsvcs/lib/Client_Logging_Handler.h @@ -24,7 +24,7 @@ #include "ace/Svc_Handler.h" #include "ace/svc_export.h" -#if defined (ACE_HAS_STREAM_PIPES) +#if (ACE_HAS_STREAM_LOG_MSG_IPC == 1) #define LOGGING_STREAM ACE_SPIPE_STREAM #define LOGGING_ACCEPTOR ACE_SPIPE_ACCEPTOR #define LOGGING_ADDR ACE_SPIPE_Addr @@ -32,7 +32,7 @@ #define LOGGING_STREAM ACE_SOCK_STREAM #define LOGGING_ACCEPTOR ACE_SOCK_ACCEPTOR #define LOGGING_ADDR ACE_INET_Addr -#endif /* ACE_HAS_STREAM_PIPES */ +#endif /* ACE_HAS_STREAM_LOG_MSG_IPC == 1 */ #if defined ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_EXPORT template class ACE_Svc_Export ACE_Svc_Handler<LOGGING_STREAM, ACE_NULL_SYNCH>; @@ -45,29 +45,30 @@ template class ACE_Svc_Export ACE_Svc_Handler<LOGGING_STREAM, ACE_NULL_SYNCH>; * records from local applications processes and forwards them to * the server logging daemon running on another host. * - * The default implementation uses an <ACE_SPIPE_Stream> to + * The default implementation uses an ACE_SPIPE_Stream to * receive the logging message from the application and an - * <ACE_SOCK_Stream> to forward the logging message to the + * ACE_SOCK_Stream to forward the logging message to the * server. However, on platforms that don't support * <ACE_SPIPEs> (e.g., Win32) we use sockets instead. */ -class ACE_Svc_Export ACE_Client_Logging_Handler : public ACE_Svc_Handler<LOGGING_STREAM, ACE_NULL_SYNCH> +class ACE_Svc_Export ACE_Client_Logging_Handler : + public ACE_Svc_Handler<LOGGING_STREAM, ACE_NULL_SYNCH> { public: // = Initialization and termination. - /// Default constructor. <handle> is where the output is sent. + /// Default constructor. @a handle is where the output is sent. ACE_Client_Logging_Handler (ACE_HANDLE handle = ACE_STDERR); - /// Activate this instance of the <ACE_Client_Logging_Handler> - /// (called by the <ACE_Client_Logging_Acceptor>). + /// Activate this instance of the ACE_Client_Logging_Handler + /// (called by the ACE_Client_Logging_Acceptor). virtual int open (void * = 0); /// Return the handle of the IPC endpoint. virtual ACE_HANDLE get_handle (void) const; - /// Called when object is removed from the <ACE_Reactor>. + /// Called when object is removed from the ACE_Reactor. virtual int close (u_long); private: @@ -83,14 +84,14 @@ private: * Receive logging records from applications. This is necessary to * handle madness with UNIX select, which can't deal with MSG_BAND * data easily due to its overly simple interface... This just - * calls <handle_input>. + * calls handle_input(). */ virtual int handle_exception (ACE_HANDLE); /// Called back when it's ok to send. virtual int handle_output (ACE_HANDLE); - /// Send the <log_record> to the logging server. + /// Send the @a log_record to the logging server. int send (ACE_Log_Record &log_record); /// This is either a SOCKET (if we're connected to a logging server) diff --git a/ACE/netsvcs/lib/Makefile.am b/ACE/netsvcs/lib/Makefile.am index c525ee11ec6..ac4d55d60fe 100644 --- a/ACE/netsvcs/lib/Makefile.am +++ b/ACE/netsvcs/lib/Makefile.am @@ -21,7 +21,7 @@ noinst_LTLIBRARIES = libnetsvcs.la libnetsvcs_la_CPPFLAGS = \ -I$(ACE_ROOT) \ -I$(ACE_BUILDDIR) \ - -DACE_NETSVCS_BUILD_DLL + -DACE_BUILD_SVC_DLL libnetsvcs_la_SOURCES = \ Base_Optimizer.cpp \ diff --git a/ACE/netsvcs/lib/Name_Handler.cpp b/ACE/netsvcs/lib/Name_Handler.cpp index 087d63d7ac0..99e675243a0 100644 --- a/ACE/netsvcs/lib/Name_Handler.cpp +++ b/ACE/netsvcs/lib/Name_Handler.cpp @@ -1,7 +1,5 @@ // $Id$ -#define ACE_BUILD_SVC_DLL - #include "ace/Containers.h" #include "ace/Get_Opt.h" #include "ace/Singleton.h" @@ -371,7 +369,7 @@ ACE_Name_Handler::shared_bind (int rebind) { #if 0 ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("request for BIND \n"))); + ACE_TEXT ("request for BIND\n"))); #endif /* 0 */ result = this->naming_context ()->bind (a_name, a_value, @@ -381,7 +379,7 @@ ACE_Name_Handler::shared_bind (int rebind) { #if 0 ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("request for REBIND \n"))); + ACE_TEXT ("request for REBIND\n"))); #endif /* 0 */ result = this->naming_context ()->rebind (a_name, a_value, @@ -400,7 +398,7 @@ ACE_Name_Handler::resolve (void) { ACE_TRACE (ACE_TEXT ("ACE_Name_Handler::resolve")); #if 0 - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("request for RESOLVE \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("request for RESOLVE\n"))); #endif /* 0 */ ACE_NS_WString a_name (this->name_request_.name (), this->name_request_.name_len () / sizeof (ACE_WCHAR_T)); @@ -433,7 +431,7 @@ ACE_Name_Handler::unbind (void) { ACE_TRACE (ACE_TEXT ("ACE_Name_Handler::unbind")); #if 0 - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("request for UNBIND \n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("request for UNBIND\n"))); #endif /* 0 */ ACE_NS_WString a_name (this->name_request_.name (), this->name_request_.name_len () / sizeof (ACE_WCHAR_T)); @@ -551,7 +549,7 @@ ACE_Name_Handler::lists_entries (void) { #if 0 ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("request for LIST_NAME_ENTRIES \n"))); + ACE_TEXT ("request for LIST_NAME_ENTRIES\n"))); #endif /* 0 */ result = this->naming_context ()-> ACE_Naming_Context::list_name_entries (set, pattern); @@ -560,7 +558,7 @@ ACE_Name_Handler::lists_entries (void) { #if 0 ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("request for LIST_VALUE_ENTRIES \n"))); + ACE_TEXT ("request for LIST_VALUE_ENTRIES\n"))); #endif /* 0 */ result = this->naming_context ()-> ACE_Naming_Context::list_value_entries (set, pattern); @@ -569,7 +567,7 @@ ACE_Name_Handler::lists_entries (void) { #if 0 ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("request for LIST_TYPE_ENTRIES \n"))); + ACE_TEXT ("request for LIST_TYPE_ENTRIES\n"))); #endif /* 0 */ result = this->naming_context ()-> ACE_Naming_Context::list_type_entries (set, pattern); @@ -621,13 +619,13 @@ ACE_Name_Handler::lists_entries (void) ACE_Naming_Context * ACE_Name_Handler::naming_context (void) -{ - return naming_context_; +{ + return naming_context_; } ACE_Naming_Context * ACE_Name_Acceptor::naming_context (void) -{ +{ return &naming_context_; } diff --git a/ACE/netsvcs/lib/Name_Handler.h b/ACE/netsvcs/lib/Name_Handler.h index d41751145fe..9aa3615c938 100644 --- a/ACE/netsvcs/lib/Name_Handler.h +++ b/ACE/netsvcs/lib/Name_Handler.h @@ -145,9 +145,9 @@ private: /// Naming Context ACE_Naming_Context *naming_context_; - + ACE_Naming_Context *naming_context (void); - + /// Handle binds. int bind (void); diff --git a/ACE/netsvcs/lib/Server_Logging_Handler_T.cpp b/ACE/netsvcs/lib/Server_Logging_Handler_T.cpp index 1938c39e552..a8e5e0da81e 100644 --- a/ACE/netsvcs/lib/Server_Logging_Handler_T.cpp +++ b/ACE/netsvcs/lib/Server_Logging_Handler_T.cpp @@ -3,8 +3,6 @@ #ifndef ACE_SERVER_LOGGING_HANDLERT_C #define ACE_SERVER_LOGGING_HANDLERT_C -#define ACE_BUILD_SVC_DLL - #include "ace/config-all.h" #include "ace/Get_Opt.h" #include "ace/Log_Record.h" @@ -78,7 +76,7 @@ ACE_Server_Logging_Handler_T<ACE_PEER_STREAM_2, COUNTER, ACE_SYNCH_USE, LMR>::ha ACE_CDR::Boolean byte_order; ACE_CDR::ULong length; - ssize_t count = ACE::recv_n (this->peer ().get_handle (), + ssize_t count = ACE::recv_n (this->peer ().get_handle (), header->wr_ptr (), 8); switch (count) @@ -87,7 +85,6 @@ ACE_Server_Logging_Handler_T<ACE_PEER_STREAM_2, COUNTER, ACE_SYNCH_USE, LMR>::ha default: case -1: case 0: - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("server logging daemon closing down at host %s\n"), this->host_name ())); @@ -107,14 +104,24 @@ ACE_Server_Logging_Handler_T<ACE_PEER_STREAM_2, COUNTER, ACE_SYNCH_USE, LMR>::ha // Extract the byte-order and use helper methods to disambiguate // octet, booleans, and chars. - header_cdr >> ACE_InputCDR::to_boolean (byte_order); + if (!(header_cdr >> ACE_InputCDR::to_boolean (byte_order))) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Can't extract byte_order\n"))); + return 0; + } // Set the byte-order on the stream... header_cdr.reset_byte_order (byte_order); // Extract the length - header_cdr >> length; - + if (!(header_cdr >> length)) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Can't extract length\n"))); + return 0; + } + ACE_NEW_RETURN (payload_p, ACE_Message_Block (length), -1); @@ -126,7 +133,7 @@ ACE_Server_Logging_Handler_T<ACE_PEER_STREAM_2, COUNTER, ACE_SYNCH_USE, LMR>::ha // Use <recv_n> to obtain the contents. if (ACE::recv_n (this->peer ().get_handle (), payload->wr_ptr (), - length) <= 0) + length) <= 0) { ACE_ERROR ((LM_ERROR, ACE_TEXT ("%p\n"), @@ -138,7 +145,12 @@ ACE_Server_Logging_Handler_T<ACE_PEER_STREAM_2, COUNTER, ACE_SYNCH_USE, LMR>::ha ACE_InputCDR payload_cdr (payload.get ()); payload_cdr.reset_byte_order (byte_order); - payload_cdr >> log_record; // Finally extract the <ACE_log_record>. + if (!(payload_cdr >> log_record)) // Finally extract the <ACE_log_record>. + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Can't extract log_record\n"))); + return 0; + } log_record.length (length); @@ -232,7 +244,7 @@ ACE_Server_Logging_Handler_T<ACE_PEER_STREAM_2, COUNTER, ACE_SYNCH_USE, LMR>::ha return n; } } -#endif +#endif ACE_NOTREACHED (return -1;) } diff --git a/ACE/netsvcs/lib/Server_Logging_Handler_T.h b/ACE/netsvcs/lib/Server_Logging_Handler_T.h index 4c92b8e205f..2f54fb2c65c 100644 --- a/ACE/netsvcs/lib/Server_Logging_Handler_T.h +++ b/ACE/netsvcs/lib/Server_Logging_Handler_T.h @@ -158,7 +158,7 @@ private: * * @brief Product object created by a * <ACE_Server_Logging_Acceptor_T<ACE_Server_Logging_Handler> >. An - * <ACE_Server_Logging_Handler> receives, frames. The logging record + * ACE_Server_Logging_Handler receives, frames. The logging record * is then processed by the <LOG_MESSAGE_RECEIVER> * * All clients are handled in the same thread. @@ -188,7 +188,7 @@ typedef u_long ACE_LOGGER_COUNTER; * * @brief Product object created by a * <ACE_Server_Logging_Acceptor_T<ACE_Thr_Server_Logging_Handler> - * >. An <ACE_Thr_Server_Logging_Handler> receives, frames. The + * >. An ACE_Thr_Server_Logging_Handler receives, frames. The * logging record is then processed by the <LOG_MESSAGE_RECEIVER> * * Each client is handled in its own separate thread. diff --git a/ACE/netsvcs/lib/TS_Clerk_Handler.cpp b/ACE/netsvcs/lib/TS_Clerk_Handler.cpp index 17232f46390..8b9262626b9 100644 --- a/ACE/netsvcs/lib/TS_Clerk_Handler.cpp +++ b/ACE/netsvcs/lib/TS_Clerk_Handler.cpp @@ -1,7 +1,5 @@ // $Id$ -#define ACE_BUILD_SVC_DLL - #include "ace/Get_Opt.h" #include "TS_Clerk_Handler.h" #include "ace/Signal.h" diff --git a/ACE/netsvcs/lib/TS_Server_Handler.cpp b/ACE/netsvcs/lib/TS_Server_Handler.cpp index cdc78b1d3bd..a8c30c73662 100644 --- a/ACE/netsvcs/lib/TS_Server_Handler.cpp +++ b/ACE/netsvcs/lib/TS_Server_Handler.cpp @@ -1,7 +1,5 @@ // $Id$ -#define ACE_BUILD_SVC_DLL - #include "ace/SString.h" #include "ace/Containers.h" #include "ace/Get_Opt.h" diff --git a/ACE/netsvcs/lib/Time_Request_Reply.cpp b/ACE/netsvcs/lib/Time_Request_Reply.cpp index eb062308bb5..5542e3974e5 100644 --- a/ACE/netsvcs/lib/Time_Request_Reply.cpp +++ b/ACE/netsvcs/lib/Time_Request_Reply.cpp @@ -7,8 +7,6 @@ #include "ace/os_include/netinet/os_in.h" #include "ace/os_include/arpa/os_inet.h" -#define ACE_BUILD_SVC_DLL - #include "Time_Request_Reply.h" ACE_RCSID(lib, Time_Request_Reply, "$Id$") diff --git a/ACE/netsvcs/lib/Token_Handler.cpp b/ACE/netsvcs/lib/Token_Handler.cpp index 806f91c52c5..ae446d61262 100644 --- a/ACE/netsvcs/lib/Token_Handler.cpp +++ b/ACE/netsvcs/lib/Token_Handler.cpp @@ -1,7 +1,5 @@ // $Id$ -#define ACE_BUILD_SVC_DLL - #include "ace/Get_Opt.h" #include "Token_Handler.h" @@ -9,7 +7,6 @@ #include "ace/Signal.h" - ACE_RCSID (lib, Token_Handler, "$Id$") diff --git a/ACE/netsvcs/lib/Token_Handler.h b/ACE/netsvcs/lib/Token_Handler.h index b716b51ef03..14af4ce4eb5 100644 --- a/ACE/netsvcs/lib/Token_Handler.h +++ b/ACE/netsvcs/lib/Token_Handler.h @@ -6,7 +6,7 @@ * * $Id$ * - * @author Douglas C. Schmidt (schmidt@cs.wustl.edu) + * @author Douglas C. Schmidt (schmidt@cs.wustl.edu) * Tim Harrison (harrison@cs.wustl.edu) */ //============================================================================= diff --git a/ACE/netsvcs/lib/lib.mpc b/ACE/netsvcs/lib/lib.mpc index c4306613907..6124ac65764 100644 --- a/ACE/netsvcs/lib/lib.mpc +++ b/ACE/netsvcs/lib/lib.mpc @@ -4,7 +4,7 @@ project(netsvcs): ace_output, acelib { avoids += ace_for_tao sharedname = netsvcs - dynamicflags += ACE_NETSVCS_BUILD_DLL + dynamicflags += ACE_BUILD_SVC_DLL Source_Files { Time_Request_Reply.cpp TS_Server_Handler.cpp diff --git a/ACE/performance-tests/SCTP/Options_Manager.cpp b/ACE/performance-tests/SCTP/Options_Manager.cpp index 679249ebf15..d85fcfd7acf 100644 --- a/ACE/performance-tests/SCTP/Options_Manager.cpp +++ b/ACE/performance-tests/SCTP/Options_Manager.cpp @@ -523,9 +523,9 @@ void Options_Manager::_show_usage(FILE* out, ACE_TCHAR const * const opts_set) if (ACE_OS::strstr(__program_name, ACE_TEXT ("SOCK_SEQPACK_srv"))) { ACE_OS::fprintf (out, " -a w.x.y.z,a.b.c.d,... server-accept-addr INADDR_ANY\n" - " (comma-separated \n" - " list of one or more \n" - " addresses) \n"); + " (comma-separated \n" + " list of one or more \n" + " addresses) \n"); } else { ACE_OS::fprintf (out, " -a w.x.y.z server-accept-addr INADDR_ANY\n"); } diff --git a/ACE/performance-tests/Server_Concurrency/Leader_Follower/RT_CORBA_Leader_Follower.cpp b/ACE/performance-tests/Server_Concurrency/Leader_Follower/RT_CORBA_Leader_Follower.cpp index d31b85d90b2..8faa65c4de2 100644 --- a/ACE/performance-tests/Server_Concurrency/Leader_Follower/RT_CORBA_Leader_Follower.cpp +++ b/ACE/performance-tests/Server_Concurrency/Leader_Follower/RT_CORBA_Leader_Follower.cpp @@ -64,7 +64,7 @@ Synchronisers::start_synchronization (void) if (debug) { ACE_DEBUG ((LM_DEBUG, - "(%P|%t) Ready to go.. \n")); + "(%P|%t) Ready to go..\n")); } if (ready_threads == number_of_threads) @@ -106,7 +106,7 @@ Synchronisers::end_synchronization (void) if (debug) { ACE_DEBUG ((LM_DEBUG, - "(%P|%t) Ready to go.. \n")); + "(%P|%t) Ready to go..\n")); } if (ready_threads == number_of_threads) @@ -347,7 +347,7 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[]) if (result != 0) { ACE_DEBUG ((LM_DEBUG, - "(%P|%t) - Failed again no hope \n")); + "(%P|%t) - Failed again no hope\n")); return 0; } @@ -368,14 +368,14 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[]) ); ACE_DEBUG ((LM_DEBUG, - "(%P|%t) Throughput is [%f] \n", + "(%P|%t) Throughput is [%f]\n", 1000000000/ elapsed_time_per_invocation)); for (i = 0; i < number_of_threads; ++i) { ACE_DEBUG ((LM_DEBUG, - "Message consumed in thread [%d] is [%d] \n", + "Message consumed in thread [%d] is [%d]\n", i, leader_followers[i]->processed ())); delete leader_followers[i]; } @@ -394,7 +394,7 @@ int ACE_TMAIN(int, ACE_TCHAR *[]) { ACE_DEBUG ((LM_DEBUG, - "(%p|%t) Cannot run in SIngle threaded mode \n")); + "(%p|%t) Cannot run in SIngle threaded mode\n")); return 0; } diff --git a/ACE/performance-tests/Server_Concurrency/Queue_Based_Workers/RT_CORBA_Workers.cpp b/ACE/performance-tests/Server_Concurrency/Queue_Based_Workers/RT_CORBA_Workers.cpp index 543de4f60d9..9e76e3f0b6a 100644 --- a/ACE/performance-tests/Server_Concurrency/Queue_Based_Workers/RT_CORBA_Workers.cpp +++ b/ACE/performance-tests/Server_Concurrency/Queue_Based_Workers/RT_CORBA_Workers.cpp @@ -62,7 +62,7 @@ Synchronisers::start_synchronization (void) if (debug) { ACE_DEBUG ((LM_DEBUG, - "(%P|%t) Ready to signal start \n")); + "(%P|%t) Ready to signal start\n")); } // Start the timer test_timer.start (); @@ -81,7 +81,7 @@ Synchronisers::start_synchronization (void) { //FUZZ: disable check_for_lack_ACE_OS ACE_DEBUG ((LM_DEBUG, - "(%P|%t) Ready to wait () on event.. \n")); + "(%P|%t) Ready to wait () on event..\n")); //FUZZ: enable check_for_lack_ACE_OS } @@ -116,7 +116,7 @@ Synchronisers::end_synchronization (void) if (debug) { ACE_DEBUG ((LM_DEBUG, - "(%P|%t) Ended peacefully \n")); + "(%P|%t) Ended peacefully\n")); } // return to do our work; @@ -130,7 +130,7 @@ Synchronisers::end_synchronization (void) if (debug) { ACE_DEBUG ((LM_DEBUG, - "(%P|%t) Going to wait .. \n")); + "(%P|%t) Going to wait ..\n")); } // Wait blisfully till we are woken up @@ -235,7 +235,7 @@ Worker_Task::svc (void) { if (debug) ACE_DEBUG ((LM_DEBUG, - "(%P|%t) Got stop message after [%d] messages \n", + "(%P|%t) Got stop message after [%d] messages\n", this->messages_processed_)); break; @@ -300,7 +300,7 @@ Input_Task::svc (void) if (debug) { ACE_DEBUG ((LM_DEBUG, - "(%t) Sending close messages \n")); + "(%t) Sending close messages\n")); } @@ -388,7 +388,7 @@ Output_Task::put (ACE_Message_Block *mb, ACE_Time_Value *) { ACE_DEBUG ((LM_DEBUG, "(%P|%t) Sticking message into " - " output queue \n")); + " output queue\n")); }*/ return this->putq (mb); } @@ -556,18 +556,18 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[]) (double) elapsed_time / number_of_messages; ACE_DEBUG ((LM_DEBUG, - "(%P|%t) Throughput is [%f] \n", + "(%P|%t) Throughput is [%f]\n", elapsed_time_per_invocation)); ACE_DEBUG ((LM_DEBUG, - "(%P|%t) Throughput is [%f] \n", + "(%P|%t) Throughput is [%f]\n", 1000000000/ elapsed_time_per_invocation)); #endif /*ACE_WIN32 */ for (i = 0; i < number_of_workers; ++i) { ACE_DEBUG ((LM_DEBUG, - "Message process for thread [%d] is [%d] \n", + "Message process for thread [%d] is [%d]\n", i, workers[i]->processed ())); delete workers[i]; } @@ -582,7 +582,7 @@ int ACE_TMAIN(int, ACE_TCHAR *[]) { ACE_DEBUG ((LM_DEBUG, - "(%P|%t) Not supported in single threaded builds \n")); + "(%P|%t) Not supported in single threaded builds\n")); return 0; } diff --git a/ACE/performance-tests/Synch-Benchmarks/Perf_Test/Performance_Test_Options.cpp b/ACE/performance-tests/Synch-Benchmarks/Perf_Test/Performance_Test_Options.cpp index d2f5305de07..59f4e698d28 100644 --- a/ACE/performance-tests/Synch-Benchmarks/Perf_Test/Performance_Test_Options.cpp +++ b/ACE/performance-tests/Synch-Benchmarks/Perf_Test/Performance_Test_Options.cpp @@ -206,8 +206,8 @@ Performance_Test_Options::parse_args (int argc, ACE_TCHAR *argv[]) "\t[-S] service entry\n" "\t[-t] number of threads [%d]\n" "\t[-T] (enable tracing)\n" - "\t[-u] (UDP) \n" - "\t[-v] (verbose) \n" + "\t[-u] (UDP)\n" + "\t[-v] (verbose)\n" "\t[-X] (enable xdr conversion)\n" "\t[-Z] (enable zero-copy driver)\n%a", argv[0], diff --git a/ACE/performance-tests/TCP/tcp_test.cpp b/ACE/performance-tests/TCP/tcp_test.cpp index 74cda3e7eec..e2b202326d7 100644 --- a/ACE/performance-tests/TCP/tcp_test.cpp +++ b/ACE/performance-tests/TCP/tcp_test.cpp @@ -84,7 +84,7 @@ usage (void) " [-m message size]\n" " [-i iterations]\n" " [-I usdelay]\n" - " [-b socket bufsz] \n" + " [-b socket bufsz]\n" " [-p port]\n" " [-s]\n" " [-c]\n" @@ -93,7 +93,7 @@ usage (void) " [-a to use the ACE Select reactor]\n" " [-x to use the ACE TP reactor]\n" " [-w to use the ACE WFMO reactor]\n" - " targethost \n")); + " targethost\n")); } // **************************************************************** @@ -340,7 +340,7 @@ Server::Server (const ACE_INET_Addr &addr) "ACE_Reactor::register_handler: Server\n")); } -#if !defined (ACE_LACKS_SOCKET_BUFSIZ) +#if !defined (ACE_LACKS_SO_SNDBUF) if (so_bufsz != 0) { if (this->endpoint_.set_option (SOL_SOCKET, @@ -348,17 +348,26 @@ Server::Server (const ACE_INET_Addr &addr) (void *) &so_bufsz, sizeof (so_bufsz)) == -1 && errno != ENOTSUP) - ACE_ERROR ((LM_ERROR, "Server::Server: SO_SNDBUF %p\n", - "set_option failed")); - else if (this->endpoint_.set_option (SOL_SOCKET, - SO_RCVBUF, - (void *) &so_bufsz, - sizeof (so_bufsz)) == -1 + { + ACE_ERROR ((LM_ERROR, "Server::Server: SO_SNDBUF %p\n", + "set_option failed")); + } + } +#endif /* ACE_LACKS_SO_SNDBUF */ +#if !defined (ACE_LACKS_SO_RCVBUF) + if (so_bufsz != 0) + { + if (this->endpoint_.set_option (SOL_SOCKET, + SO_RCVBUF, + (void *) &so_bufsz, + sizeof (so_bufsz)) == -1 && errno != ENOTSUP) - ACE_ERROR ((LM_ERROR, "Server::Server: SO_RCVBUF %p\n", - "set_option failed")); + { + ACE_ERROR ((LM_ERROR, "Server::Server: SO_RCVBUF %p\n", + "set_option failed")); + } } -#endif /* !ACE_LACKS_SOCKET_BUFSIZ */ +#endif /* !ACE_LACKS_SO_RCVBUF */ if (acceptor.close () == -1) ACE_ERROR ((LM_ERROR, "Server::Server %p\n", "close failed")); diff --git a/ACE/performance-tests/TTCP/ACE-C++/wrapper-new-ttcp.cpp b/ACE/performance-tests/TTCP/ACE-C++/wrapper-new-ttcp.cpp index a00dd8671f2..e86aba3d2e9 100644 --- a/ACE/performance-tests/TTCP/ACE-C++/wrapper-new-ttcp.cpp +++ b/ACE/performance-tests/TTCP/ACE-C++/wrapper-new-ttcp.cpp @@ -474,7 +474,7 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[]) if (ack != data_buf_len) ACE_DEBUG ((LM_DEBUG, "received ack for only %d bytes\n", ack)); } - printf("Client finished. \n"); + printf("Client finished.\n"); } else { @@ -520,7 +520,7 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[]) "ttcp"), -1); } - printf("Server finished. \n"); + printf("Server finished.\n"); } /* if (errno) diff --git a/ACE/performance-tests/UDP/udp_test.cpp b/ACE/performance-tests/UDP/udp_test.cpp index 14df97f4a08..2d5d0f093e2 100644 --- a/ACE/performance-tests/UDP/udp_test.cpp +++ b/ACE/performance-tests/UDP/udp_test.cpp @@ -72,13 +72,13 @@ usage (void) " [-b send_bufsz]\n" " [-n nsamples]\n" " [-I usdelay]\n" - " [-s so_bufsz] \n" + " [-s so_bufsz]\n" " [-p port]\n" " [-t]\n" " [-r]\n" " [-x max_sample_allowed]\n" " [-a to use the ACE reactor]\n" - " targethost \n", + " targethost\n", *cmd)); } @@ -435,7 +435,7 @@ Client::run (void) if (logfile) { ACE_OS::fprintf (sumfp, - "Command executed: \n"); + "Command executed:\n"); for (; *cmd; cmd++) ACE_OS::fprintf (sumfp, "%s ", diff --git a/ACE/protocols/ace/HTBP/HTBP_Session.cpp b/ACE/protocols/ace/HTBP/HTBP_Session.cpp index 3abbfbb6c42..cb1dc421250 100644 --- a/ACE/protocols/ace/HTBP/HTBP_Session.cpp +++ b/ACE/protocols/ace/HTBP/HTBP_Session.cpp @@ -172,7 +172,7 @@ ACE::HTBP::Session::reconnect_i (ACE::HTBP::Channel *s) if (conn.connect (s->ace_stream(),*this->proxy_addr_) == -1) { ACE_TCHAR buffer[128]; - this->proxy_addr_->addr_to_string(buffer,128, 0); + this->proxy_addr_->addr_to_string(buffer, 128, 0); ACE_ERROR ((LM_ERROR, ACE_TEXT("(%P|%t) ACE::HTBP::Session::reconnect") ACE_TEXT(" failed to %s, %p\n"), diff --git a/ACE/protocols/tests/HTBP/README b/ACE/protocols/tests/HTBP/README index 65a2bde0320..3dea5658db7 100644 --- a/ACE/protocols/tests/HTBP/README +++ b/ACE/protocols/tests/HTBP/README @@ -1,8 +1,8 @@ $Id$ Test cases for the HTTP Tunneling Bidirectional Protocol. For more -information on the protocol itself, refer to ace/HTBP/README. These -tests are adaptations of essential ACE SOCK tests, with the minimal +information on the protocol itself, refer to protocols/ace/HTBP/README. +These tests are adaptations of essential ACE SOCK tests, with the minimal changes to support using HTBP rather than SOCK. Contained in this directory: diff --git a/ACE/protocols/tests/HTBP/Reactor_Tests/run_test.pl b/ACE/protocols/tests/HTBP/Reactor_Tests/run_test.pl index eda33881a66..13aafef2d43 100755 --- a/ACE/protocols/tests/HTBP/Reactor_Tests/run_test.pl +++ b/ACE/protocols/tests/HTBP/Reactor_Tests/run_test.pl @@ -6,40 +6,34 @@ eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}' # -*- perl -*- use lib "$ENV{ACE_ROOT}/bin"; -use PerlACE::Run_Test; -use Sys::Hostname; +use PerlACE::TestTarget; $status = 0; -$host = hostname(); -$port = PerlACE::random_port(); $synchbase = "ready"; -$synchfile = PerlACE::LocalFile ("$synchbase"); +my $target1 = PerlACE::TestTarget::create_target (1) || die "Create target 1 failed\n"; +my $target2 = PerlACE::TestTarget::create_target (2) || die "Create target 2 failed\n"; +my $host = $target1->HostName(); +my $port = $target1->RandomPort (); +$synchfile = $target1->LocalFile ("$synchbase"); -if (PerlACE::is_vxworks_test()) { - $host = $ENV{'ACE_RUN_VX_TGTHOST'}; - $SV = new PerlACE::ProcessVX ("server", "-p $port -o $synchbase"); -} -else { - $SV = new PerlACE::Process ("server", "-p $port -o $synchfile"); -} +my $SV = $target1->CreateProcess("server", "-p $port -o $synchfile"); + +$target1->DeleteFile ($synchbase); +$target2->DeleteFile ($synchbase); -unlink $synchfile; $SV->Spawn (); -if (PerlACE::waitforfile_timed ($synchfile, - $PerlACE::wait_interval_for_process_creation) == -1) { +if ($target1->WaitForFileTimed ($synchbase, + $target1->ProcessStartWaitInterval()) == -1) { print STDERR "ERROR: cannot find file <$synchfile>\n"; $SV->Kill (); $SV->TimedWait (1); exit 1; } -unlink $synchfile; +$target1->DeleteFile ($synchbase); -# The client code should later be modified to get the hostname -# using ACE_OS::hostname so the same script can be run on all -# hosts without havng to reset the host where it has to be run. -$CL = new PerlACE::Process ("client", "-h $host -p $port"); +my $CL = $target2->CreateProcess ("client", " -h $host -p $port"); $client = $CL->SpawnWaitKill (300); @@ -55,4 +49,10 @@ if ($server != 0) { $status = 1; } +$target1->GetStderrLog(); +$target2->GetStderrLog(); + +$target1->DeleteFile ($synchbase); +$target2->DeleteFile ($synchbase); + exit $status; diff --git a/ACE/protocols/tests/HTBP/Reactor_Tests/server.cpp b/ACE/protocols/tests/HTBP/Reactor_Tests/server.cpp index 7bc3d8ac0ee..af9f211c48c 100644 --- a/ACE/protocols/tests/HTBP/Reactor_Tests/server.cpp +++ b/ACE/protocols/tests/HTBP/Reactor_Tests/server.cpp @@ -149,7 +149,7 @@ Accept_Handler::handle_input (ACE_HANDLE h) if ((*ch)->state() == ACE::HTBP::Channel::Data_Queued) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) Server Accept_Handler::handle_input \n"), + ACE_TEXT ("(%P|%t) Server Accept_Handler::handle_input\n"), ACE_TEXT ("Issuing notification on handler\n"))); this->reactor()->notify (session->handler(), ACE_Event_Handler::READ_MASK); diff --git a/ACE/protocols/tests/HTBP/Send_Large_Msg/run_test.pl b/ACE/protocols/tests/HTBP/Send_Large_Msg/run_test.pl index a1bfaafb77f..6b5255794d9 100755 --- a/ACE/protocols/tests/HTBP/Send_Large_Msg/run_test.pl +++ b/ACE/protocols/tests/HTBP/Send_Large_Msg/run_test.pl @@ -6,40 +6,33 @@ eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}' # -*- perl -*- use lib "$ENV{ACE_ROOT}/bin"; -use PerlACE::Run_Test; -use Sys::Hostname; +use PerlACE::TestTarget; $status = 0; -$host = hostname(); -$port = PerlACE::random_port(); $synchbase = "ready"; -$synchfile = PerlACE::LocalFile ("$synchbase"); +my $target1 = PerlACE::TestTarget::create_target (1) || die "Create target 1 failed\n"; +my $target2 = PerlACE::TestTarget::create_target (2) || die "Create target 2 failed\n"; +$synchfile = $target1->LocalFile ("$synchbase"); +my $port = $target1->RandomPort (); +my $host = $target1->HostName(); -if (PerlACE::is_vxworks_test()) { - $host = $ENV{'ACE_RUN_VX_TGTHOST'}; - $SV = new PerlACE::ProcessVX ("server", "-p $port -o $synchbase"); -} -else { - $SV = new PerlACE::Process ("server", "-p $port -o $synchfile"); -} +my $SV = $target1->CreateProcess("server", "-p $port -o $synchfile"); +my $CL = $target2->CreateProcess ("client", " -h $host -p $port"); -# The client code should later be modified to get the hostname -# using ACE_OS::hostname so the same script can be run on all -# hosts without having to reset the host where it has to be run. -$CL = new PerlACE::Process ("client", "-h $host -p $port"); +$target1->DeleteFile ($synchbase); +$target2->DeleteFile ($synchbase); -unlink $synchfile; $SV->Spawn (); -if (PerlACE::waitforfile_timed ($synchfile, - $PerlACE::wait_interval_for_process_creation) == -1) { +if ($target1->WaitForFileTimed ($synchbase, + $target1->ProcessStartWaitInterval()) == -1) { print STDERR "ERROR: cannot find file <$synchfile>\n"; $SV->Kill (); $SV->TimedWait (1); exit 1; } -unlink $synchfile; +$target1->DeleteFile ($synchbase); $client = $CL->SpawnWaitKill (300); @@ -55,5 +48,10 @@ if ($server != 0) { $status = 1; } +$target1->GetStderrLog(); +$target2->GetStderrLog(); + +$target1->DeleteFile ($synchbase); +$target2->DeleteFile ($synchbase); exit $status; diff --git a/ACE/protocols/tests/HTBP/Send_Large_Msg/server.cpp b/ACE/protocols/tests/HTBP/Send_Large_Msg/server.cpp index 34f037148c5..724a14b2da3 100644 --- a/ACE/protocols/tests/HTBP/Send_Large_Msg/server.cpp +++ b/ACE/protocols/tests/HTBP/Send_Large_Msg/server.cpp @@ -140,7 +140,7 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[]) ACE_DEBUG ((LM_DEBUG, ACE_TEXT("(%P|%t) Server: ") - ACE_TEXT("received %b \n"),total_recv)); + ACE_TEXT("received %b\n"),total_recv)); ACE_OS::strcpy (buffer,"I hear you !"); diff --git a/ACE/protocols/tests/HTBP/Send_Recv_Tests/client.cpp b/ACE/protocols/tests/HTBP/Send_Recv_Tests/client.cpp index c8d224c9380..2ad433e70ea 100644 --- a/ACE/protocols/tests/HTBP/Send_Recv_Tests/client.cpp +++ b/ACE/protocols/tests/HTBP/Send_Recv_Tests/client.cpp @@ -128,10 +128,10 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[]) remote.get_port_number())); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) connected to %s\n"), - ACE_TEXT_CHAR_TO_TCHAR(remote.get_host_name ()))); + ACE_TEXT ("(%P|%t) connected to %C\n"), + remote.get_host_name ())); - ACE_DEBUG ((LM_DEBUG, "(%P) ***** client TEST 1 ***** \n")); + ACE_DEBUG ((LM_DEBUG, "(%P) ***** client TEST 1 *****\n")); //******************* TEST 1 ****************************** // @@ -184,7 +184,7 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[]) } // ACE_OS::sleep (10); - ACE_DEBUG ((LM_DEBUG, "(%P) ***** client TEST 2 ***** \n")); + ACE_DEBUG ((LM_DEBUG, "(%P) ***** client TEST 2 *****\n")); //******************* TEST 2 ****************************** // diff --git a/ACE/protocols/tests/HTBP/Send_Recv_Tests/run_test.pl b/ACE/protocols/tests/HTBP/Send_Recv_Tests/run_test.pl index 5a7fb2b3289..a5175909548 100755 --- a/ACE/protocols/tests/HTBP/Send_Recv_Tests/run_test.pl +++ b/ACE/protocols/tests/HTBP/Send_Recv_Tests/run_test.pl @@ -6,38 +6,32 @@ eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}' # -*- perl -*- use lib "$ENV{ACE_ROOT}/bin"; -use PerlACE::Run_Test; -use Sys::Hostname; +use PerlACE::TestTarget; $status = 0; -$host = hostname(); -$port = PerlACE::random_port(); $synchbase = "ready"; -$synchfile = PerlACE::LocalFile ("$synchbase"); +my $target1 = PerlACE::TestTarget::create_target (1) || die "Create target 1 failed\n"; +my $target2 = PerlACE::TestTarget::create_target (2) || die "Create target 2 failed\n"; +$synchfile = $target1->LocalFile ("$synchbase"); +my $port = $target1->RandomPort (); +my $host = $target1->HostName(); -if (PerlACE::is_vxworks_test()) { - $host = $ENV{'ACE_RUN_VX_TGTHOST'}; - $SV = new PerlACE::ProcessVX ("server", "-p $port -o $synchbase"); -} -else { - $SV = new PerlACE::Process ("server", "-p $port -o $synchfile"); -} +my $SV = $target1->CreateProcess("server", "-p $port -o $synchfile"); +my $CL = $target2->CreateProcess ("client", " -h $host -p $port"); -# The client code should later be modified to get the hostname -# using ACE_OS::hostname so the same script can be run on all -# hosts without havng to reset the host where it has to be run. -$CL = new PerlACE::Process ("client", "-h $host -p $port"); +$target1->DeleteFile ($synchbase); +$target2->DeleteFile ($synchbase); -unlink $synchfile; $SV->Spawn (); -if (PerlACE::waitforfile_timed ($synchfile, - $PerlACE::wait_interval_for_process_creation) == -1) { + +if ($target1->WaitForFileTimed ($synchbase, + $target1->ProcessStartWaitInterval()) == -1) { print STDERR "ERROR: cannot find file <$synchfile>\n"; $SV->Kill (); $SV->TimedWait (1); exit 1; } -unlink $synchfile; +$target1->DeleteFile ($synchbase); $client = $CL->SpawnWaitKill (300); @@ -53,4 +47,10 @@ if ($server != 0) { $status = 1; } +$target1->GetStderrLog(); +$target2->GetStderrLog(); + +$target1->DeleteFile ($synchbase); +$target2->DeleteFile ($synchbase); + exit $status; diff --git a/ACE/protocols/tests/HTBP/Send_Recv_Tests/server.cpp b/ACE/protocols/tests/HTBP/Send_Recv_Tests/server.cpp index 758fdc90a21..aec607eb629 100644 --- a/ACE/protocols/tests/HTBP/Send_Recv_Tests/server.cpp +++ b/ACE/protocols/tests/HTBP/Send_Recv_Tests/server.cpp @@ -178,12 +178,12 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[]) ACE::HTBP::Stream stream (session); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) client %s connected from %d\n"), - ACE_TEXT_CHAR_TO_TCHAR(cli_addr.get_host_name ()), + ACE_TEXT ("(%P|%t) client %C connected from %d\n"), + cli_addr.get_host_name (), cli_addr.get_port_number ())); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT("(%P) ***** server TEST 1 ***** \n"))); + ACE_TEXT("(%P) ***** server TEST 1 *****\n"))); //******************* TEST 1 ****************************** // // Do a iovec recvv - the client should send 255 bytes, which we @@ -232,7 +232,7 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[]) } ACE_DEBUG ((LM_DEBUG, - ACE_TEXT("(%P) ***** server TEST 2 ***** \n"))); + ACE_TEXT("(%P) ***** server TEST 2 *****\n"))); //******************* TEST 2 ****************************** // diff --git a/ACE/protocols/tests/HTBP/ping/run_test.pl b/ACE/protocols/tests/HTBP/ping/run_test.pl index b769c37757e..7269c8fcbfc 100755 --- a/ACE/protocols/tests/HTBP/ping/run_test.pl +++ b/ACE/protocols/tests/HTBP/ping/run_test.pl @@ -6,41 +6,34 @@ eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}' # -*- perl -*- use lib "$ENV{ACE_ROOT}/bin"; -use PerlACE::Run_Test; -use Sys::Hostname; +use PerlACE::TestTarget; $status = 0; -$host = hostname(); -$port = PerlACE::random_port(); $synchbase = "ready"; -$synchfile = PerlACE::LocalFile ("$synchbase"); +my $target1 = PerlACE::TestTarget::create_target (1) || die "Create target 1 failed\n"; +my $target2 = PerlACE::TestTarget::create_target (2) || die "Create target 2 failed\n"; +$synchfile = $target1->LocalFile ("$synchbase"); +my $port = $target1->RandomPort (); +my $host = $target1->HostName(); print "port = $port\n"; -if (PerlACE::is_vxworks_test()) { - $host = $ENV{'ACE_RUN_VX_TGTHOST'}; - $SV = new PerlACE::ProcessVX ("server", "-p $port -o $synchbase"); -} -else { - $SV = new PerlACE::Process ("server", "-p $port -o $synchfile"); -} -# The client code should later be modified to get the hostname -# using ACE_OS::hostname so the same script can be run on all -# hosts without havng to reset the host where it has to be run. -$CL = new PerlACE::Process ("client", " -h $host -p $port"); +my $SV = $target1->CreateProcess("server", "-p $port -o $synchfile"); +my $CL = $target2->CreateProcess ("client", " -h $host -p $port"); -unlink $synchfile; +$target1->DeleteFile ($synchbase); +$target2->DeleteFile ($synchbase); $SV->Spawn (); -if (PerlACE::waitforfile_timed ($synchfile, - $PerlACE::wait_interval_for_process_creation) == -1) { +if ($target1->WaitForFileTimed ($synchbase, + $target1->ProcessStartWaitInterval()) == -1) { print STDERR "ERROR: cannot find file <$synchfile>\n"; $SV->Kill (); $SV->TimedWait (1); exit 1; } -unlink $synchfile; +$target1->DeleteFile ($synchbase); $client = $CL->SpawnWaitKill (300); @@ -56,4 +49,10 @@ if ($server != 0) { $status = 1; } +$target1->GetStderrLog(); +$target2->GetStderrLog(); + +$target1->DeleteFile ($synchbase); +$target2->DeleteFile ($synchbase); + exit $status; diff --git a/ACE/protocols/tests/RMCast/run_test.pl b/ACE/protocols/tests/RMCast/run_test.pl index 6c21971afe2..abee8b0594c 100755 --- a/ACE/protocols/tests/RMCast/run_test.pl +++ b/ACE/protocols/tests/RMCast/run_test.pl @@ -5,20 +5,22 @@ eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}' # $Id$ # -*- perl -*- -use lib '../../../bin'; -use PerlACE::Run_Test; +use lib "$ENV{ACE_ROOT}/bin"; +use PerlACE::TestTarget; $status = 0; -$sender = new PerlACE::Process ("sender", "224.1.2.3:12345"); -$receiver = new PerlACE::Process ("receiver", "224.1.2.3:12345"); +my $target1 = PerlACE::TestTarget::create_target (1); +my $target2 = PerlACE::TestTarget::create_target (1); +my $sender = $target1->CreateProcess("sender", "224.1.2.3:12345"); +my $receiver = $target2->CreateProcess("receiver", "224.1.2.3:12345"); $receiver->Spawn (); # Wait for receiver to start. # -sleep ($PerlACE::wait_interval_for_process_creation); +sleep ($target1->ProcessStartWaitInterval()); $sender->Spawn (); @@ -31,4 +33,7 @@ if ($status != 0) { $sender->Kill (); +$target1->GetStderrLog(); +$target2->GetStderrLog(); + exit $status; diff --git a/ACE/rpmbuild/ace-tao-ciao.txt b/ACE/rpmbuild/ace-tao-ciao.spec index 888292c533f..2d4f5aca0de 100644 --- a/ACE/rpmbuild/ace-tao-ciao.txt +++ b/ACE/rpmbuild/ace-tao-ciao.spec @@ -1,7 +1,7 @@ # Set the version number here. -%define ACEVER 5.6.7 -%define TAOVER 1.6.7 -%define CIAOVER 0.6.7 +%define ACEVER 5.6.9 +%define TAOVER 1.6.9 +%define CIAOVER 0.6.9 # Set is_major_ver if the version is X.Y instead X.Y.Z # TODO @@ -120,15 +120,20 @@ BuildRequires: perl # Read: true if _with_guilibs is defined, false if not defined. %if %{?_with_fltk:1}%{!?_with_fltk:0} BuildRequires: fltk-devel +%define fltk_pac ace-flreactor %endif %if %{?_with_tk:1}%{!?_with_tk:0} BuildRequires: tcl-devel BuildRequires: tk-devel BuildRequires: tk +%define tk_pac ace-tkreactor +%define tao_tk_pac tao-tkresource %endif %if %{?_with_qt:1}%{!?_with_qt:0} +%define qt_pack ace-qtreactor +%define tao_qt_pac tao-qtresource # qt3 has a name change in F9 %if 0%{?fedora_version} > 8 @@ -148,6 +153,7 @@ BuildRequires: %{qtpacname}-devel %if 0%{?suse_version} == 1020 BuildRequires: fox16-devel %endif +%define fox_pac ace_foxreactor %endif %if %{?_with_xt:1}%{!?_with_xt:0} @@ -156,6 +162,23 @@ BuildRequires: fox16-devel # new -> BuildRequires: libX11-devel # BuildRequires: %{_libdir}/libX11.so # BuildRequires: %{_libdir}/libXt.so +%define xt_pac ace-xtreactor +%define tao_xt_pac tao-xtresource +%endif + +%if %{?_with_fl:1}%{!?_with_fl:0} +%define tao_fl_pac tao-flresource +%endif + + +%if 0%{?suse_version} + +%define ace_packages ace ace-xml ace-gperf ace-kokyu +%define tao_packages tao tao-utils tao tao-cosnaming tao-cosevent tao-cosnotification tao-costrading tao-rtevent tao-cosconcurrency +%define all_ace_packages %{?ace_packages} %{?fltk_pac} %{?tk_pac} %{?qt_pac} %{?fox_pac} %{?xt_pac} +%define all_tao_packages %{?tao_packages} %{?tao_fl_pac} %{?tao_qt_pac} %{?tao_xt_pac} %{?tao_tk_pac} + +%define debug_package_requires %{all_ace_packages} %{all_tao_packages} %endif %if %make_nosrc @@ -1295,10 +1318,10 @@ install ${ACE_ROOT}/bin/ace_gperf %{buildroot}%{_bindir} install ${ACE_ROOT}/bin/tao_idl %{buildroot}%{_bindir} install ${ACE_ROOT}/bin/tao_imr %{buildroot}%{_bindir} install ${ACE_ROOT}/bin/tao_ifr %{buildroot}%{_bindir} -install ${ACE_ROOT}/bin/catior %{buildroot}%{_bindir}/tao_catior -install ${ACE_ROOT}/bin/nsadd %{buildroot}%{_bindir}/tao_nsadd -install ${ACE_ROOT}/bin/nsdel %{buildroot}%{_bindir}/tao_nsdel -install ${ACE_ROOT}/bin/nslist %{buildroot}%{_bindir}/tao_nslist +install ${ACE_ROOT}/bin/tao_catior %{buildroot}%{_bindir}/tao_catior +install ${ACE_ROOT}/bin/tao_nsadd %{buildroot}%{_bindir}/tao_nsadd +install ${ACE_ROOT}/bin/tao_nsdel %{buildroot}%{_bindir}/tao_nsdel +install ${ACE_ROOT}/bin/tao_nslist %{buildroot}%{_bindir}/tao_nslist # ================================================================ # Config & Options @@ -2005,6 +2028,7 @@ fi %{_libdir}/libACE_RMCast.so %{_libdir}/libACE_TMCast.so %{_libdir}/libACE_SSL.so +%dir %{_datadir}/ace %{_datadir}/ace/include %{_datadir}/ace/include/makeinclude %{_datadir}/ace/bin diff --git a/ACE/rpmbuild/ace-tao-macros.patch b/ACE/rpmbuild/ace-tao-macros.patch index d74ac966de2..ca494dfa5c4 100644 --- a/ACE/rpmbuild/ace-tao-macros.patch +++ b/ACE/rpmbuild/ace-tao-macros.patch @@ -1,48 +1,27 @@ ---- ACE_wrappers/TAO/rules.tao.GNU~ 2007-03-07 04:33:14.000000000 -0800 -+++ ACE_wrappers/TAO/rules.tao.GNU 2007-03-26 22:40:00.000000000 -0700 -@@ -138,13 +138,13 @@ - # with different minor or major or beta versions to fail. - # - ifeq (cmd,$(findstring cmd,$(SHELL))) --TAO_MAJOR_VERSION := $(shell awk "/TAO_MAJOR_VERSION/ { print $$3}" ${TAO_ROOT}/tao/Version.h) --TAO_MINOR_VERSION := $(shell awk "/TAO_MINOR_VERSION/ { print $$3}" ${TAO_ROOT}/tao/Version.h) --TAO_BETA_VERSION := $(shell awk "/TAO_BETA_VERSION/ { print $$3}" ${TAO_ROOT}/tao/Version.h) -+TAO_MAJOR_VERSION := $(shell awk "/TAO_MAJOR_VERSION/ { print $$3}" ${TAO_ROOT}/include/tao/Version.h) -+TAO_MINOR_VERSION := $(shell awk "/TAO_MINOR_VERSION/ { print $$3}" ${TAO_ROOT}/include/tao/Version.h) -+TAO_BETA_VERSION := $(shell awk "/TAO_BETA_VERSION/ { print $$3}" ${TAO_ROOT}/include/tao/Version.h) - else --TAO_MAJOR_VERSION := $(shell awk '/TAO_MAJOR_VERSION/ { print $$3}' ${TAO_ROOT}/tao/Version.h) --TAO_MINOR_VERSION := $(shell awk '/TAO_MINOR_VERSION/ { print $$3}' ${TAO_ROOT}/tao/Version.h) --TAO_BETA_VERSION := $(shell awk '/TAO_BETA_VERSION/ { print $$3}' ${TAO_ROOT}/tao/Version.h) -+TAO_MAJOR_VERSION := $(shell awk '/TAO_MAJOR_VERSION/ { print $$3}' ${TAO_ROOT}/include/tao/Version.h) -+TAO_MINOR_VERSION := $(shell awk '/TAO_MINOR_VERSION/ { print $$3}' ${TAO_ROOT}/include/tao/Version.h) -+TAO_BETA_VERSION := $(shell awk '/TAO_BETA_VERSION/ { print $$3}' ${TAO_ROOT}/include/tao/Version.h) - endif - # Version number of the libraries - # ---- ACE_wrappers/include/makeinclude/wrapper_macros.GNU~ 2007-03-08 04:19:38.000000000 -0800 -+++ ACE_wrappers/include/makeinclude/wrapper_macros.GNU 2007-03-26 22:40:00.000000000 -0700 -@@ -257,13 +257,13 @@ +--- ACE_wrappers/include/makeinclude/wrapper_macros.GNU.ORIG 2008-11-18 16:12:14.000000000 -0800 ++++ ACE_wrappers/include/makeinclude/wrapper_macros.GNU 2008-11-23 10:16:32.000000000 -0800 +@@ -299,13 +299,13 @@ #### Set up the build ACE version in case the platform_macros.GNU wants it. ifeq (cmd,$(findstring cmd,$(SHELL))) -ACE_MAJOR_VERSION := $(shell awk "/ACE_MAJOR_VERSION/ { print $$3}" ${ACE_ROOT}/ace/Version.h) -ACE_MINOR_VERSION := $(shell awk "/ACE_MINOR_VERSION/ { print $$3}" ${ACE_ROOT}/ace/Version.h) -ACE_BETA_VERSION := $(shell awk "/ACE_BETA_VERSION/ { print $$3}" ${ACE_ROOT}/ace/Version.h) -+ACE_MAJOR_VERSION := $(shell awk "/ACE_MAJOR_VERSION/ { print $$3}" ${ACE_ROOT}/include/ace/Version.h) -+ACE_MINOR_VERSION := $(shell awk "/ACE_MINOR_VERSION/ { print $$3}" ${ACE_ROOT}/include/ace/Version.h) -+ACE_BETA_VERSION := $(shell awk "/ACE_BETA_VERSION/ { print $$3}" ${ACE_ROOT}/include/ace/Version.h) - else +-else -ACE_MAJOR_VERSION := $(shell awk '/ACE_MAJOR_VERSION/ { print $$3}' ${ACE_ROOT}/ace/Version.h) -ACE_MINOR_VERSION := $(shell awk '/ACE_MINOR_VERSION/ { print $$3}' ${ACE_ROOT}/ace/Version.h) -ACE_BETA_VERSION := $(shell awk '/ACE_BETA_VERSION/ { print $$3}' ${ACE_ROOT}/ace/Version.h) ++ACE_MAJOR_VERSION := $(shell awk "/ACE_MAJOR_VERSION/ { print $$3}" ${ACE_ROOT}/include/ace/Version.h) ++ACE_MINOR_VERSION := $(shell awk "/ACE_MINOR_VERSION/ { print $$3}" ${ACE_ROOT}/include/ace/Version.h) ++ACE_BETA_VERSION := $(shell awk "/ACE_BETA_VERSION/ { print $$3}" ${ACE_ROOT}/include/ace/Version.h) ++else +ACE_MAJOR_VERSION := $(shell awk '/ACE_MAJOR_VERSION/ { print $$3}' ${ACE_ROOT}/include/ace/Version.h) +ACE_MINOR_VERSION := $(shell awk '/ACE_MINOR_VERSION/ { print $$3}' ${ACE_ROOT}/include/ace/Version.h) +ACE_BETA_VERSION := $(shell awk '/ACE_BETA_VERSION/ { print $$3}' ${ACE_ROOT}/include/ace/Version.h) endif # Define some variables to silence warnings -@@ -334,14 +334,16 @@ +@@ -381,9 +381,11 @@ IDL_SERVER_TSRC_EXT ?= S_T.cpp ifeq (,$(findstring -I$(ACE_ROOT),$(INCLDIRS))) @@ -55,11 +34,26 @@ +INSINC ?= $(ACE_ROOT)/include/ace INSLIB ?= $(ACE_ROOT)/lib INSMAN ?= $(ACE_ROOT)/man - --ifeq (,$(findstring -L$(ACE_ROOT)/ace,$(LDFLAGS))) -- LDFLAGS += -L$(ACE_ROOT)/ace -L./ -+ifeq (,$(findstring -L$(ACE_ROOT)/lib,$(LDFLAGS))) -+ LDFLAGS += -L$(ACE_ROOT)/lib -L./ - endif ifeq (,$(findstring -L$(INSLIB),$(LDFLAGS))) - LDFLAGS += -L$(INSLIB) +--- ACE_wrappers/TAO/rules.tao.GNU.ORIG 2008-11-23 10:13:02.000000000 -0800 ++++ ACE_wrappers/TAO/rules.tao.GNU 2008-11-22 20:43:49.000000000 -0800 +@@ -138,13 +138,13 @@ + # with different minor or major or beta versions to fail. + # + ifeq (cmd,$(findstring cmd,$(SHELL))) +-TAO_MAJOR_VERSION := $(shell awk "/TAO_MAJOR_VERSION/ { print $$3}" ${TAO_ROOT}/tao/Version.h) +-TAO_MINOR_VERSION := $(shell awk "/TAO_MINOR_VERSION/ { print $$3}" ${TAO_ROOT}/tao/Version.h) +-TAO_BETA_VERSION := $(shell awk "/TAO_BETA_VERSION/ { print $$3}" ${TAO_ROOT}/tao/Version.h) ++TAO_MAJOR_VERSION := $(shell awk "/TAO_MAJOR_VERSION/ { print $$3}" ${TAO_ROOT}/include/tao/Version.h) ++TAO_MINOR_VERSION := $(shell awk "/TAO_MINOR_VERSION/ { print $$3}" ${TAO_ROOT}/include/tao/Version.h) ++TAO_BETA_VERSION := $(shell awk "/TAO_BETA_VERSION/ { print $$3}" ${TAO_ROOT}/include/tao/Version.h) + else +-TAO_MAJOR_VERSION := $(shell awk '/TAO_MAJOR_VERSION/ { print $$3}' ${TAO_ROOT}/tao/Version.h) +-TAO_MINOR_VERSION := $(shell awk '/TAO_MINOR_VERSION/ { print $$3}' ${TAO_ROOT}/tao/Version.h) +-TAO_BETA_VERSION := $(shell awk '/TAO_BETA_VERSION/ { print $$3}' ${TAO_ROOT}/tao/Version.h) ++TAO_MAJOR_VERSION := $(shell awk '/TAO_MAJOR_VERSION/ { print $$3}' ${TAO_ROOT}/include/tao/Version.h) ++TAO_MINOR_VERSION := $(shell awk '/TAO_MINOR_VERSION/ { print $$3}' ${TAO_ROOT}/include/tao/Version.h) ++TAO_BETA_VERSION := $(shell awk '/TAO_BETA_VERSION/ { print $$3}' ${TAO_ROOT}/include/tao/Version.h) + endif + # Version number of the libraries + # diff --git a/ACE/rpmbuild/ace-tao.spec b/ACE/rpmbuild/ace-tao.txt index b9ef34049d0..984e8e74fb2 100644 --- a/ACE/rpmbuild/ace-tao.spec +++ b/ACE/rpmbuild/ace-tao.txt @@ -1,7 +1,7 @@ # Set the version number here. -%define ACEVER 5.6.7 -%define TAOVER 1.6.7 -%define CIAOVER 0.6.7 +%define ACEVER 5.6.8 +%define TAOVER 1.6.8 +%define CIAOVER 0.6.8 # Set is_major_ver if the version is X.Y instead X.Y.Z # Conditional build @@ -1067,10 +1067,10 @@ install ${ACE_ROOT}/bin/ace_gperf $RPM_BUILD_ROOT%{_bindir} install ${ACE_ROOT}/bin/tao_idl $RPM_BUILD_ROOT%{_bindir} install ${ACE_ROOT}/bin/tao_imr $RPM_BUILD_ROOT%{_bindir} install ${ACE_ROOT}/bin/tao_ifr $RPM_BUILD_ROOT%{_bindir} -install ${ACE_ROOT}/bin/catior $RPM_BUILD_ROOT%{_bindir}/tao_catior -install ${ACE_ROOT}/bin/nsadd $RPM_BUILD_ROOT%{_bindir}/tao_nsadd -install ${ACE_ROOT}/bin/nsdel $RPM_BUILD_ROOT%{_bindir}/tao_nsdel -install ${ACE_ROOT}/bin/nslist $RPM_BUILD_ROOT%{_bindir}/tao_nslist +install ${ACE_ROOT}/bin/tao_catior $RPM_BUILD_ROOT%{_bindir} +install ${ACE_ROOT}/bin/tao_nsadd $RPM_BUILD_ROOT%{_bindir} +install ${ACE_ROOT}/bin/tao_nsdel $RPM_BUILD_ROOT%{_bindir} +install ${ACE_ROOT}/bin/tao_nslist $RPM_BUILD_ROOT%{_bindir} # ================================================================ # Config & Options @@ -2179,6 +2179,9 @@ fi # ================================================================ %changelog +* Sun Nov 23 2008 Ken Sedgwick <ken+5a4@bonsai.com> - 5.6.7-1 +- Updated for tao_ prefixed catior, nsadd, nsdel and nslist. + * Thu Jul 31 2008 Johnny Willemsen <jwillemsen@remedy.nl> - 5.6.6-2 - Removed ace-tao-unusedarg.patch (related to bug #3270). diff --git a/ACE/tests/ACE_Test.cpp b/ACE/tests/ACE_Test.cpp index 86749cc3a0c..ab112053723 100644 --- a/ACE/tests/ACE_Test.cpp +++ b/ACE/tests/ACE_Test.cpp @@ -41,6 +41,28 @@ log2_test (void) return error_count; } +int +ace_debug_test (void) +{ + int test_status = 0; + + // Check if ACE::debug() is by default false when no ACE_DEBUG environment variable + // is there + const char* debug = ACE_OS::getenv ("ACE_DEBUG"); + if (debug == 0) + { + if (ACE::debug()) + ACE_ERROR ((LM_ERROR, ACE_TEXT ("ACE::debug() returns true.\n"))); + } + else + { + if (!ACE::debug()) + ACE_ERROR ((LM_ERROR, ACE_TEXT ("ACE::debug() returns false.\n"))); + } + + return test_status; +} + // Test ACE::execname to be sure it finds .exe without regard to case. int execname_test (void) @@ -99,6 +121,9 @@ run_main (int, ACE_TCHAR *[]) if ((result = log2_test ()) != 0) status = result; + if ((result = ace_debug_test ()) != 0) + status = result; + ACE_END_TEST; return status; } diff --git a/ACE/tests/ARGV_Test.cpp b/ACE/tests/ARGV_Test.cpp index 56268df3495..eabb48960df 100644 --- a/ACE/tests/ARGV_Test.cpp +++ b/ACE/tests/ARGV_Test.cpp @@ -98,9 +98,9 @@ test_argv_type_converter (void) { for (size_t i = 0; i < 4; i++) ACE_DEBUG ((LM_DEBUG, - ACE_TEXT (" (%d) %s\n"), + ACE_TEXT (" (%d) %C\n"), i, - ACE_TEXT_CHAR_TO_TCHAR (argv[i]))); + argv[i])); } for (size_t i = 0; save_argv[i]; ++i) @@ -182,11 +182,17 @@ test_argv_buf (void) static int test_argv_quotes (void) { - const ACE_TCHAR *argv[] = { ACE_TEXT ("first without quotes"), - ACE_TEXT ("'second in single quotes'"), - ACE_TEXT ("\"third in double quotes\""), - 0 - }; + const ACE_TCHAR *argv_const[] = { ACE_TEXT ("first without quotes"), + ACE_TEXT ("'second in single quotes'"), + ACE_TEXT ("\"third in double quotes\""), + 0 + }; + ACE_TCHAR **argv = const_cast<ACE_TCHAR **> (argv_const); + // The convoluted argv definition is to silence warnings from gcc 4.3, which + // warns if the string-literals are not assigned to const char* and also + // warns if the const char*[] is passed to the ACE_ARGV constructor as in + // "args3" below. + int argc = 3; // (argc, argv) diff --git a/ACE/tests/Arg_Shifter_Test.cpp b/ACE/tests/Arg_Shifter_Test.cpp index 649f8054f46..d1424337fa6 100644 --- a/ACE/tests/Arg_Shifter_Test.cpp +++ b/ACE/tests/Arg_Shifter_Test.cpp @@ -22,10 +22,9 @@ int run_main (int, ACE_TCHAR *[]) { ACE_START_TEST (ACE_TEXT ("Arg_Shifter_Test")); - - const int test_argc_size = 5; - int argl (test_argc_size); - const ACE_TCHAR *args[test_argc_size] = { + const int test_argc_size1 = 5; + int argl (test_argc_size1); + const ACE_TCHAR *args1[test_argc_size1] = { ACE_TEXT ("-known"), ACE_TEXT ("-huh"), ACE_TEXT ("-arg"), @@ -33,11 +32,44 @@ run_main (int, ACE_TCHAR *[]) ACE_TEXT ("arg") }; - ACE_Arg_Shifter shifter (argl, args); + ACE_Arg_Shifter shifter1 (argl, args1); - if (!shifter.is_anything_left ()) + if (!shifter1.is_anything_left ()) ACE_ERROR ((LM_ERROR, "is_anything_left() returned 0 at start.\n")); + const int test_argc_size2 = 4; + int arg2 = test_argc_size2; + const ACE_TCHAR *args2[test_argc_size2] = { + ACE_TEXT ("-ORBDebugLevel"), + ACE_TEXT ("-0"), + ACE_TEXT ("-o"), + ACE_TEXT ("server.ior") + }; + bool found_ORBDebug = false; + + ACE_Arg_Shifter arg_shifter2 (arg2, args2); + while (arg_shifter2.is_anything_left ()) + { + if (0 == arg_shifter2.cur_arg_strncasecmp (ACE_TEXT ("-ORBDebug"))) + { + found_ORBDebug = true; + arg_shifter2.consume_arg (); + } + else if (0 == arg_shifter2.cur_arg_strncasecmp (ACE_TEXT ("-ORBDaemon"))) + { + arg_shifter2.consume_arg (); + } + else + { + arg_shifter2.ignore_arg (); + } + } + + if (found_ORBDebug) + { + ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("argshifter 2 test failed\n")), -1); + } + ACE_END_TEST; return 0; } diff --git a/ACE/tests/Based_Pointer_Test.cpp b/ACE/tests/Based_Pointer_Test.cpp index d571ab4185d..046cb38770f 100644 --- a/ACE/tests/Based_Pointer_Test.cpp +++ b/ACE/tests/Based_Pointer_Test.cpp @@ -52,13 +52,11 @@ class Void_Pointer : public ACE_Based_Pointer<void> #ifdef ACE_HAS_POSITION_INDEPENDENT_POINTERS -#if defined (ACE_WIN32) && defined (_MSC_VER) && defined (_DEBUG) -# define OBJ_SUFFIX ACE_TEXT ("d") ACE_DLL_SUFFIX -#elif defined (ACE_WIN32) && defined (__BORLANDC__) +#if defined (ACE_LD_DECORATOR_STR) # define OBJ_SUFFIX ACE_LD_DECORATOR_STR ACE_DLL_SUFFIX #else # define OBJ_SUFFIX ACE_DLL_SUFFIX -#endif /* ACE_WIN32 && && _MSC_VER && _DEBUG */ +#endif /* ACE_LD_DECORATOR_STR */ #if defined (ACE_WIN32) || defined (ACE_OPENVMS) # define OBJ_PREFIX ACE_DLL_PREFIX diff --git a/ACE/tests/Basic_Types_Test.cpp b/ACE/tests/Basic_Types_Test.cpp index 7fd5afb584b..7a864720841 100644 --- a/ACE/tests/Basic_Types_Test.cpp +++ b/ACE/tests/Basic_Types_Test.cpp @@ -194,7 +194,6 @@ test_ace_u_longlong (void) } #endif /* ACE_LACKS_LONGLONG_T || ACE_LACKS_UNSIGNEDLONGLONG_T */ - int run_main (int, ACE_TCHAR *[]) { diff --git a/ACE/tests/Bound_Ptr_Test.cpp b/ACE/tests/Bound_Ptr_Test.cpp index 761db4d664c..d443dac3d39 100644 --- a/ACE/tests/Bound_Ptr_Test.cpp +++ b/ACE/tests/Bound_Ptr_Test.cpp @@ -166,8 +166,8 @@ void Printer::print (void) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%t) %s\n"), - ACE_TEXT_CHAR_TO_TCHAR(this->message_))); + ACE_TEXT ("(%t) %C\n"), + this->message_)); } #if defined (ACE_HAS_THREADS) diff --git a/ACE/tests/Buffer_Stream_Test.cpp b/ACE/tests/Buffer_Stream_Test.cpp index ce4dc033801..e1d43be4457 100644 --- a/ACE/tests/Buffer_Stream_Test.cpp +++ b/ACE/tests/Buffer_Stream_Test.cpp @@ -192,9 +192,7 @@ Consumer::svc (void) break; } -#if !defined (ACE_HAS_WINCE) - ACE_ASSERT (result == 0 || errno == EWOULDBLOCK); -#endif /* ! ACE_HAS_WINCE */ + ACE_TEST_ASSERT (result == 0 || errno == EWOULDBLOCK); return 0; } diff --git a/ACE/tests/Bug_2772_Regression_Test.cpp b/ACE/tests/Bug_2772_Regression_Test.cpp new file mode 100644 index 00000000000..45e061ea779 --- /dev/null +++ b/ACE/tests/Bug_2772_Regression_Test.cpp @@ -0,0 +1,166 @@ +// $Id$ + +// ============================================================================ +// +// = LIBRARY +// tests +// +// = DESCRIPTION +// Test bug 2772 regression +// +// = AUTHOR +// Johnny Willemsen +// +// ============================================================================ + +#include "test_config.h" +#include "ace/Recursive_Thread_Mutex.h" +#include "ace/Condition_Recursive_Thread_Mutex.h" +#include "ace/Thread.h" + +ACE_RCSID(tests, Bug_2772_Regression_Test, "$Id$") + +class ThreadTest +{ + public: + ThreadTest(); + ~ThreadTest(); + int run(bool doubleLock); + + private: + static void * workerThreadWrapper(void *); + void workerThread(); + ACE_Recursive_Thread_Mutex m_mutex; + ACE_Condition_Recursive_Thread_Mutex m_startedCondition; + ACE_Condition_Recursive_Thread_Mutex m_stopCondition; + bool m_workerRunning; + bool m_doubleLock; +}; + +ThreadTest::ThreadTest() : + m_startedCondition(m_mutex), + m_stopCondition(m_mutex), + m_workerRunning(false), + m_doubleLock(false) +{ +} + +ThreadTest::~ThreadTest() +{ +} + +int +ThreadTest::run(bool doubleLock) +{ + ACE_hthread_t m_workerThreadHandle; + ACE_thread_t m_workerThreadId; + m_workerRunning = false; + m_doubleLock = doubleLock; + + m_mutex.acquire(); + + // Start worker thread + int rval = ACE_Thread::spawn((ACE_THR_FUNC) workerThreadWrapper, this, + THR_JOINABLE | THR_NEW_LWP, &m_workerThreadId, &m_workerThreadHandle, + ACE_DEFAULT_THREAD_PRIORITY); + + if (rval == -1) + { + ACE_ERROR_RETURN ((LM_ERROR, + ACE_TEXT ("%t Could not start worker thread!\n")), + 1); + } + + if (!m_workerRunning) + { + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("%t Waiting for worker thread to start running...\n"))); + m_startedCondition.wait(); + } + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("%t Worker thread is running...\n"))); + + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("%t Broadcasting STOP Condition...\n"))); + + m_stopCondition.broadcast(); + + m_mutex.release(); + + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("%t Joining worker thread...\n"))); + + ACE_Thread::join(m_workerThreadHandle); + + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("%t Test finished...\n"))); + + return 0; +} + +void* ThreadTest::workerThreadWrapper(void *data) +{ + ThreadTest *thisPtr = reinterpret_cast<ThreadTest *>(data); + thisPtr->workerThread(); + return 0; +} + +void ThreadTest::workerThread() +{ + m_mutex.acquire(); + m_workerRunning = true; + m_startedCondition.broadcast(); + + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("%t Thread running, waiting for stop condition.\n"))); + + if (m_doubleLock) + { + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("%t Thread starting double acquire.\n"))); + m_mutex.acquire(); + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("%t Thread finished double acquire.\n"))); + } + + + // Wait for the STOP condition to occur + m_stopCondition.wait(); + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("%t Thread received stop condition, exiting.\n"))); + + if (m_doubleLock) + { + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("%t Thread starting double release.\n"))); + m_mutex.release(); + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("%t Thread finished double acquire.\n"))); + } + m_mutex.release(); +} + +int +run_main (int, ACE_TCHAR *[]) +{ + ACE_START_TEST (ACE_TEXT ("Bug_2772_Regression_Test")); + + int status = 0; + + ThreadTest test; + + // This test passes + ACE_DEBUG ((LM_DEBUG, "TEST 1 - Single Lock\n")); + ACE_DEBUG ((LM_DEBUG, "--------------------\n")); + + status += test.run(false); + + // This test hangs; m_stopCondition.wait() in the worker thread + // doesn't unlock the mutex twice and thus a deadlock occurs + ACE_DEBUG ((LM_DEBUG, "TEST 2 - Double Lock\n")); + ACE_DEBUG ((LM_DEBUG, "--------------------\n")); + status += test.run(true); + + ACE_END_TEST; + return status; +} diff --git a/ACE/tests/Bug_2980_Regression_Test.cpp b/ACE/tests/Bug_2980_Regression_Test.cpp index 332cfeee501..c8cf34e84fe 100644 --- a/ACE/tests/Bug_2980_Regression_Test.cpp +++ b/ACE/tests/Bug_2980_Regression_Test.cpp @@ -1,4 +1,5 @@ // $Id$ + //FUZZ: disable check_for_lack_ACE_OS #include <iostream> #include <assert.h> @@ -192,3 +193,4 @@ int main (int, char *[]) return 0; } + //FUZZ: enable check_for_lack_ACE_OS diff --git a/ACE/tests/Bug_3432_Regression_Test.cpp b/ACE/tests/Bug_3432_Regression_Test.cpp index dc7246d6b2f..ecfb7189551 100644 --- a/ACE/tests/Bug_3432_Regression_Test.cpp +++ b/ACE/tests/Bug_3432_Regression_Test.cpp @@ -39,11 +39,13 @@ strptime_test (void) time_t time = lValue.sec(); struct tm tm_time; ACE_OS::gmtime_r (&time, &tm_time); - ACE_OS::strftime(lBuffer, 128, "%Y-%m-%d %H:%M", &tm_time); - - if (ACE_OS::strcmp (lBuffer, original_time) != 0) + if (ACE_OS::strftime(lBuffer, 128, "%Y-%m-%d %H:%M", &tm_time) == 0 && errno == ENOTSUP) + { + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("strftime is not supported on this platform\n"))); + } + else if (ACE_OS::strcmp (lBuffer, original_time) != 0) { - ACE_ERROR ((LM_ERROR, ACE_TEXT ("%s != %s\n"),lBuffer, original_time)); + ACE_ERROR ((LM_ERROR, ACE_TEXT ("%C != %C\n"), lBuffer, original_time)); ++error_count; } else diff --git a/ACE/tests/Bug_3500_Regression_Test.cpp b/ACE/tests/Bug_3500_Regression_Test.cpp new file mode 100644 index 00000000000..968d226180f --- /dev/null +++ b/ACE/tests/Bug_3500_Regression_Test.cpp @@ -0,0 +1,56 @@ +/** + * @file Bug_3500_Regression_Test.cpp + * + * $Id$ + * + * Reproduces the problems reported in bug 3500: + * http://deuce.doc.wustl.edu/bugzilla/show_bug.cgi?id=3500 + * + * @author Bill Rizzi <rizzi@softserv.com> + */ + +#include "ace/OS_NS_sys_mman.h" +#include "ace/SString.h" +#include "tests/test_config.h" + +ACE_RCSID (tests, + Bug_3500_Regression_Test, + "$Id$") + +int +run_main (int, ACE_TCHAR *[]) +{ + ACE_START_TEST (ACE_TEXT ("Bug_3500_Regression_Test")); + + int ret = 0; + +#if defined(ACE_WIN32) + ACE_HANDLE handle = ACE_INVALID_HANDLE; + ACE_TString name(ACE_TEXT ("Bug3500")); + + void *mmap = + ACE_OS::mmap(0, // addr + 28, // len + PAGE_READWRITE, // prot + MAP_SHARED, // flags + ACE_INVALID_HANDLE, // file_handle + 0, // off + &handle, // file_mapping + 0, // sa + name.c_str()); // shared memory name + + if (mmap == MAP_FAILED) + { + ret = -1; + } +#endif + + if (0 != ret) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("ACE_OS::mmap() failed\n"))); + } + + ACE_END_TEST; + + return 0; +} diff --git a/ACE/tests/Bug_3505_Regression_Test.cpp b/ACE/tests/Bug_3505_Regression_Test.cpp new file mode 100644 index 00000000000..46b89901b1f --- /dev/null +++ b/ACE/tests/Bug_3505_Regression_Test.cpp @@ -0,0 +1,49 @@ +// $Id$ + +// ============================================================================ +// +// = LIBRARY +// tests +// +// = DESCRIPTION +// Test bugzilla 3505 +// +// = AUTHOR +// Johnny Willemsen <jwillemsen@remedy.nl> +// +// ============================================================================ + +#include "ace/Service_Gestalt.h" +#include "test_config.h" + +ACE_RCSID(tests, Bug_3505_Regression_Test, "$Id$") + +int +run_main (int, ACE_TCHAR *[]) +{ + ACE_START_TEST (ACE_TEXT ("Bug_3505_Regression_Test")); + const int test_argc_size2 = 5; + int arg2 = test_argc_size2; + const ACE_TCHAR *args2[test_argc_size2] = { + ACE_TEXT ("\\network\\temp\\ACE\\wince6\\ACE_wrappers\\TAO\\tests\\Hello\\server"), + ACE_TEXT ("-ORBDebugLevel"), + ACE_TEXT ("-0"), + ACE_TEXT ("-o"), + ACE_TEXT ("\\network\\temp\\ACE\\wince6\\ACE_wrappers/TAO\\tests\\Hello/server.ior") + }; + + // Make sure ACE debug is false + ACE::debug (false); + + ACE_Service_Gestalt gestalt; + gestalt.parse_args (arg2, const_cast<ACE_TCHAR**>(args2)); + + if (ACE::debug ()) + { + ACE_ERROR_RETURN ((LM_ERROR, + ACE_TEXT ("ACE debug has been enabled by the service gestalt\n")), -1); + } + + ACE_END_TEST; + return 0; +} diff --git a/ACE/tests/Bug_3532_Regression_Test.cpp b/ACE/tests/Bug_3532_Regression_Test.cpp new file mode 100644 index 00000000000..8d326e54c4c --- /dev/null +++ b/ACE/tests/Bug_3532_Regression_Test.cpp @@ -0,0 +1,59 @@ +/** + * @file Bug_3532_Regression_Test.cpp + * + * $Id$ + * + * Reproduces the problems reported in bug 3532 + * http://deuce.doc.wustl.edu/bugzilla/show_bug.cgi?id=3532 + * + * @author Martin Gaus <Gaus at gmx dot de> + */ + +#include "test_config.h" +#include "ace/ACE.h" + +ACE_RCSID (tests, + Bug_3532_Regression_Test, + "$Id$") + +int +run_main (int, ACE_TCHAR *[]) +{ + ACE_START_TEST (ACE_TEXT ("Bug_3532_Regression_Test")); + + char Buffer[10]; + int result = 0; + + // Write a ASCII file with one byte (no BOM) + Buffer[0] = 'T'; + FILE* pFile = ACE_OS::fopen("OneByteFile", "wb"); + ACE_OS::fwrite(&Buffer, 1, 1, pFile); + ACE_OS::fclose(pFile); + + // Reopen the file and read the byte + Buffer[0] = '-'; + pFile = ACE_OS::fopen("OneByteFile", "rb"); + size_t BytesRead = ACE_OS::fread(&Buffer, 1, 1, pFile); + if(BytesRead == 1) + { + if(Buffer[0] != 'T') + { + ++result; + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Error: 'T' expected!!!\n"))); + } + } + else + { + ++result; + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Error: One byte should be read!!!\n"))); + } + + ACE_OS::fclose(pFile); + + ACE_END_TEST; + + return result; +} + diff --git a/ACE/tests/Bug_3541_Regression_Test.cpp b/ACE/tests/Bug_3541_Regression_Test.cpp new file mode 100644 index 00000000000..cbd0b28c791 --- /dev/null +++ b/ACE/tests/Bug_3541_Regression_Test.cpp @@ -0,0 +1,164 @@ +/** + * @file Bug_3541_Regression_Test.cpp + * + * $Id$ + * + * Reproduces the problems reported in bug 3541: + * http://deuce.doc.wustl.edu/bugzilla/show_bug.cgi?id=3541 + * + * @author Bill Rizzi <rizzi@softserv.com> + */ + +#include "ace/Event.h" +#include "ace/Mutex.h" +#include "ace/Semaphore.h" +#include "ace/OS_NS_errno.h" +#include "ace/SString.h" +#include "tests/test_config.h" + + +ACE_RCSID (tests, + Bug_3541_Regression_Test, + "$Id$") + +int +run_main (int, ACE_TCHAR *[]) +{ + ACE_START_TEST (ACE_TEXT ("Bug_3541_Regression_Test")); + + int ret = 0; + +#if defined(ACE_WIN32) && !defined (ACE_USES_WINCE_SEMA_SIMULATION) + int lastError; + + // ACE_OS::event_init() + + const ACE_TCHAR *eventName = ACE_TEXT ("Bug3541_Event"); + + ACE_Event event0(0, // int manual_reset = 0 + 0, // int initial_state = 0 + USYNC_PROCESS, // int type = USYNC_THREAD + eventName); // const ACE_TCHAR *name = 0 + + lastError = ACE_OS::last_error(); + + ACE_event_t eventHandle = event0.handle(); + + if ((eventHandle == ACE_INVALID_HANDLE) || + (lastError != 0)) + { + ret = -1; + + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("ACE_Event(%s) failed - handle %d lastError %d\n"), + eventName, eventHandle, lastError)); + } + else + { + ACE_Event event1(0, // int manual_reset = 0 + 0, // int initial_state = 0 + USYNC_PROCESS, // int type = USYNC_THREAD + eventName); // const ACE_TCHAR *name = 0 + + lastError = ACE_OS::last_error(); + + eventHandle = event1.handle(); + + if ((eventHandle == ACE_INVALID_HANDLE) || + (lastError != ERROR_ALREADY_EXISTS)) + { + ret = -1; + + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("ACE_Event(%s) failed - handle %d lastError %d\n"), + eventName, eventHandle, lastError)); + } + } + + // ACE_OS::sema_init + + const ACE_TCHAR *semaphoreName = ACE_TEXT ("Bug3541_Semaphore"); + + ACE_Semaphore semaphore0(1, // int count = 1 + USYNC_PROCESS, // int type = USYNC_THREAD + semaphoreName); // const ACE_TCHAR *name = 0 + + lastError = ACE_OS::last_error(); + + const ACE_sema_t &semaphoreLock = semaphore0.lock(); + if ((semaphoreLock == ACE_INVALID_HANDLE) || + (lastError != 0)) + { + ret = -1; + + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("ACE_Semaphore(%s) failed - lock %d lastError %d\n"), + semaphoreName, semaphoreLock, lastError)); + } + else + { + ACE_Semaphore semaphore1(1, // int count = 1 + USYNC_PROCESS, // int type = USYNC_THREAD + semaphoreName); // const ACE_TCHAR *name = 0 + + lastError = ACE_OS::last_error(); + + const ACE_sema_t &semaphoreLock = semaphore1.lock(); + + if ((semaphoreLock == ACE_INVALID_HANDLE) || + (lastError != ERROR_ALREADY_EXISTS)) + { + ret = -1; + + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("ACE_Semaphore(%s) failed - lock %d lastError %d\n"), + semaphoreName, semaphoreLock, lastError)); + } + } + + // ACE_OS::mutex_init() + + const ACE_TCHAR *mutexName = ACE_TEXT ("Bug3541_Mutex"); + + ACE_Mutex mutex0(USYNC_PROCESS, // int type = USYNC_THREAD + mutexName); // const ACE_TCHAR *name = 0 + + lastError = ACE_OS::last_error(); + + const ACE_mutex_t &mutexLock = mutex0.lock(); + + if ((mutexLock.proc_mutex_ == ACE_INVALID_HANDLE) || + (lastError != 0)) + { + ret = -1; + + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("ACE_Mutex(%s) failed - lock %d lastError %d\n"), + mutexName, mutexLock, lastError)); + } + else + { + ACE_Mutex mutex1(USYNC_PROCESS, // int type = USYNC_THREAD + mutexName); // const ACE_TCHAR *name = 0 + + lastError = ACE_OS::last_error(); + + const ACE_mutex_t &mutexLock = mutex1.lock(); + + if ((mutexLock.proc_mutex_ == ACE_INVALID_HANDLE) || + (lastError != ERROR_ALREADY_EXISTS)) + { + ret = -1; + + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("ACE_Mutex(%s) failed - lock %d lastError %d\n"), + mutexName, mutexLock, lastError)); + } + } + + #endif + + ACE_END_TEST; + + return ret; +} diff --git a/ACE/tests/CDR_Array_Test.cpp b/ACE/tests/CDR_Array_Test.cpp index f6aa7d02e0e..835bef0355d 100644 --- a/ACE/tests/CDR_Array_Test.cpp +++ b/ACE/tests/CDR_Array_Test.cpp @@ -544,7 +544,7 @@ CDR_Test<T, H>::do_test (int total, int niter, int use_array, if (is.good_bit () != 0) { ACE_ERROR ((LM_ERROR, - ACE_TEXT ("Test for good bit failed in %s Array_test \n"), + ACE_TEXT ("Test for good bit failed in %s Array_test\n"), H::name ())); } } diff --git a/ACE/tests/CDR_File_Test.cpp b/ACE/tests/CDR_File_Test.cpp index 63b82905f42..95352fc903d 100644 --- a/ACE/tests/CDR_File_Test.cpp +++ b/ACE/tests/CDR_File_Test.cpp @@ -34,11 +34,7 @@ ACE_RCSID(tests, CDR_File_Test, "$Id$") -#if !defined (ACE_LACKS_IOSTREAM_TOTALLY) | defined (ACE_HAS_WINCE) - -#if defined (ACE_HAS_WINCE) -#include "CE_fostream.h" -#endif // ACE_HAS_WINCE +#if !defined (ACE_LACKS_IOSTREAM_TOTALLY) class CDR_Test { @@ -224,14 +220,7 @@ run_test (int write_file, output_cdr << cdr_test; // Output the data to cout. -#if defined (ACE_HAS_WINCE) && defined (ACE_LACKS_IOSTREAM_TOTALLY) - // Since CE does not have ostream, ace_file_stream and output_file() cannot - // be used. Just use 'hard-coded' file name here. - (*ACE_CE_OSTREAM::instance()).open(ACE_TEXT("\\Log\\CDR_File_Test.txt")); - (*ACE_CE_OSTREAM::instance()) << cdr_test; -#else *ace_file_stream::instance ()->output_file () << cdr_test; -#endif // ACE_HAS_WINCE // Save the data. const ACE_Message_Block *output_mb = @@ -323,11 +312,7 @@ run_test (int write_file, // <CDR_Test> object. input_cdr >> temp; -#if defined (ACE_HAS_WINCE) && defined (ACE_LACKS_IOSTREAM_TOTALLY) - (*ACE_CE_OSTREAM::instance()) << temp; -#else *ace_file_stream::instance ()->output_file () << temp; -#endif // ACE_HAS_WINCE if (!(temp == cdr_test)) ACE_ERROR ((LM_ERROR, ACE_TEXT ("Data mismatch across file\n"))); @@ -404,30 +389,13 @@ run_main (int argc, ACE_TCHAR *argv[]) 0, ACE_Addr::sap_any, 0, - ((writing) ? (O_RDWR | O_CREAT) : O_RDONLY), + ((writing) ? (O_RDWR | O_CREAT) : O_RDONLY), ACE_DEFAULT_FILE_PERMS) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("connect failed for %p\n"), filename.get_path_name ()), 1); -#if !defined (ACE_VXWORKS) && !defined (ACE_HAS_PHARLAP) || (defined(ACE_VXWORKS) && (ACE_VXWORKS > 0x660)) -# define TEST_CAN_UNLINK_IN_ADVANCE -#endif - -#if defined (TEST_CAN_UNLINK_IN_ADVANCE) - if (fn == 0) - { - // Unlink this file right away so that it is automatically removed - // when the process exits. - if (file.unlink () == -1) - ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("pre-unlink failed for %p\n"), - filename.get_path_name ()), - 1); - } -#endif - CDR_Test cdr_test ('a', 0x00ff, 0xaabbccdd, @@ -453,7 +421,6 @@ run_main (int argc, ACE_TCHAR *argv[]) cdr_test); } -#if !defined (TEST_CAN_UNLINK_IN_ADVANCE) if (fn == 0) { file.close (); @@ -463,7 +430,6 @@ run_main (int argc, ACE_TCHAR *argv[]) filename.get_path_name ()), 1); } -#endif ACE_END_TEST; return 0; diff --git a/ACE/tests/CDR_Test.cpp b/ACE/tests/CDR_Test.cpp index 49bfde79de3..75b5f24c1d5 100644 --- a/ACE/tests/CDR_Test.cpp +++ b/ACE/tests/CDR_Test.cpp @@ -585,12 +585,12 @@ run_main (int argc, ACE_TCHAR *argv[]) if (debug > 0) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("Output CDR: \n"))); + ACE_TEXT ("Output CDR:\n"))); ACE_HEX_DUMP ((LM_DEBUG, input.rd_ptr(), 64)); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("Input CDR: \n"))); + ACE_TEXT ("Input CDR:\n"))); ACE_HEX_DUMP ((LM_DEBUG, input.rd_ptr(), 64)); @@ -616,12 +616,12 @@ run_main (int argc, ACE_TCHAR *argv[]) if (debug > 0) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("Output CDR: \n"))); + ACE_TEXT ("Output CDR:\n"))); ACE_HEX_DUMP ((LM_DEBUG, input.rd_ptr(), 64)); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("Input CDR: \n"))); + ACE_TEXT ("Input CDR:\n"))); ACE_HEX_DUMP ((LM_DEBUG, input.rd_ptr(), 64)); @@ -654,12 +654,12 @@ run_main (int argc, ACE_TCHAR *argv[]) if (debug > 0) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("Output CDR: \n"))); + ACE_TEXT ("Output CDR:\n"))); ACE_HEX_DUMP ((LM_DEBUG, input.rd_ptr(), 64)); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("Input CDR: \n"))); + ACE_TEXT ("Input CDR:\n"))); ACE_HEX_DUMP ((LM_DEBUG, input.rd_ptr(), 64)); @@ -680,12 +680,12 @@ run_main (int argc, ACE_TCHAR *argv[]) if (debug > 0) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("Output CDR: \n"))); + ACE_TEXT ("Output CDR:\n"))); ACE_HEX_DUMP ((LM_DEBUG, input.rd_ptr(), 64)); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("Input CDR: \n"))); + ACE_TEXT ("Input CDR:\n"))); ACE_HEX_DUMP ((LM_DEBUG, input.rd_ptr(), 64)); diff --git a/ACE/tests/CE_fostream.cpp b/ACE/tests/CE_fostream.cpp deleted file mode 100644 index c8c3c606a5f..00000000000 --- a/ACE/tests/CE_fostream.cpp +++ /dev/null @@ -1,163 +0,0 @@ -//============================================================================= -/** - * @file CE_fostream.cpp - * - * $Id$ - * - * @author Si Mong Park <spark@ociweb.com> - * - * This is a helper class to simulate basic functions of fostream for - * Windows CE since WinCE does not have IO stream. - * - * Note that the numeric base conversion does not work and will be displayed - * as received. - */ -// ============================================================================ - -#include "CE_fostream.h" - -// This is CE only, prior to availability of iostreams (VC 8). -#if defined (ACE_HAS_WINCE) && defined (ACE_LACKS_IOSTREAM_TOTALLY) - -ACE_CE_fostream* ACE_CE_fostream::instance_ = 0; - - -ACE_CE_fostream* ACE_CE_fostream::instance (void) -{ - if (instance_ == 0) { - instance_ = new ACE_CE_fostream(); - } - - return instance_; -} - - -ACE_CE_fostream::ACE_CE_fostream() -: ostream_(0) -, displayMode_(dec) -{ -} - - -ACE_CE_fostream::~ACE_CE_fostream() -{ - ACE_OS::fclose(ostream_); -} - - -FILE* ACE_CE_fostream::open(const ACE_TCHAR *prog_name) -{ - ostream_ = ACE_OS::fopen(prog_name, ACE_TEXT("a+")); - - return ostream_; -} - - -ACE_CE_fostream& ACE_CE_fostream::operator << (NUM_TYPE num_type) -{ - displayMode_ = num_type; - return *this; -} - - -ACE_CE_fostream& ACE_CE_fostream::operator << (const ACE_ANTI_TCHAR* c) -{ - ACE_OS::fprintf(ostream_, "%s", c); - return *this; -} - - -ACE_CE_fostream& ACE_CE_fostream::operator << (ACE_ANTI_TCHAR c) -{ - ACE_OS::fprintf(ostream_, "%c", c); - return *this; -} - - -ACE_CE_fostream& ACE_CE_fostream::operator << (const ACE_TCHAR* c) -{ - fwprintf(ostream_, ACE_TEXT("%s"), c); - return *this; -} - - -ACE_CE_fostream& ACE_CE_fostream::operator << (ACE_TCHAR c) -{ - fwprintf(ostream_, ACE_TEXT("%c"), c); - return *this; -} - - -ACE_CE_fostream& ACE_CE_fostream::operator << (short s) -{ - if (displayMode_ == oct) { - const NUM_BITS = ACE_SIZEOF_SHORT * 8; - short currentMax = 16384; - - for (int i = 0; i < NUM_BITS; ++i) { - } - } - else if (displayMode_ == hex) { - } - - fwprintf(ostream_, ACE_TEXT("%d"), s); - return *this; -} - - -ACE_CE_fostream& ACE_CE_fostream::operator << (int i) -{ - fwprintf(ostream_, ACE_TEXT("%d"), i); - return *this; -} - - -ACE_CE_fostream& ACE_CE_fostream::operator << (unsigned int i) -{ - fwprintf(ostream_, ACE_TEXT("%d"), i); - return *this; -} - - -ACE_CE_fostream& ACE_CE_fostream::operator << (long l) -{ - fwprintf(ostream_, ACE_TEXT("%f"), l); - return *this; -} - - -ACE_CE_fostream& ACE_CE_fostream::operator << (unsigned long l) -{ - fwprintf(ostream_, ACE_TEXT("%f"), l); - return *this; -} - - -ACE_CE_fostream& ACE_CE_fostream::operator << (float f) -{ - fwprintf(ostream_, ACE_TEXT("%f"), f); - return *this; -} - - -ACE_CE_fostream& ACE_CE_fostream::operator << (double d) -{ - fwprintf(ostream_, ACE_TEXT("%f"), d); - return *this; -} - - -ACE_CE_fostream& ACE_CE_fostream::operator << (long double d) -{ - fwprintf(ostream_, ACE_TEXT("%f"), d); - return *this; -} - - -ACE_CE_fostream& ACE_CE_fostream::operator << (const void* v) -{ - fwprintf(ostream_, ACE_TEXT("%d"), v); - return *this; -} - -#endif /* ACE_HAS_WINCE && ACE_LACKS_IOSTREAMS_TOTALLY */ diff --git a/ACE/tests/CE_fostream.h b/ACE/tests/CE_fostream.h deleted file mode 100644 index 9d84d7fc2be..00000000000 --- a/ACE/tests/CE_fostream.h +++ /dev/null @@ -1,105 +0,0 @@ -// -*- C++ -*- - -//============================================================================= -/** - * @file CE_fostream.h - * - * $Id$ - * - * @author Si Mong Park <spark@ociweb.com> - * - * This is a helper class to simulate basic functions of fostream for - * Windows CE since WinCE does not have IO stream. - * - * Note that the numeric base conversion does not work and will be displayed - * as received. - */ -// ============================================================================ - -#ifndef ACE_CE_fostream_h -#define ACE_CE_fostream_h - -#include "ace/config-all.h" - -#if defined (ACE_HAS_WINCE) && defined (ACE_LACKS_IOSTREAM_TOTALLY) - -#include "ace/Null_Mutex.h" -#include "ace/Singleton.h" - -#ifdef ostream -#undef ostream -#endif - -#ifdef OFSTREAM -#undef OFSTREAM -#endif // OFSTREAM - -#define ostream ACE_CE_fostream -#define OFSTREAM ACE_CE_fostream -#define dec ACE_CE_fostream::dec -#define oct ACE_CE_fostream::oct -#define hex ACE_CE_fostream::hex -#define endl ACE_TEXT("\n") - -class ACE_CE_fostream -{ -public: - friend class ACE_Singleton<ACE_CE_fostream, ACE_Null_Mutex>; - - enum NUM_TYPE { - // These numbers are not really meaningful for this class; set same as defined in ios. - // Also, base formatting works only for the integer types. - dec = 0x0010, - oct = 0x0020, - hex = 0x0040 - }; - - static ACE_CE_fostream* instance (void); - - FILE* open(const ACE_TCHAR *prog_name); - - ACE_CE_fostream& operator << (NUM_TYPE); - - ACE_CE_fostream& operator << (unsigned char); - - ACE_CE_fostream& operator << (const ACE_ANTI_TCHAR *); - ACE_CE_fostream& operator << (ACE_ANTI_TCHAR); - - ACE_CE_fostream& operator << (const ACE_TCHAR*); - ACE_CE_fostream& operator << (ACE_TCHAR); - - ACE_CE_fostream& operator << (short); - - ACE_CE_fostream& operator << (int); - ACE_CE_fostream& operator << (unsigned int); - - ACE_CE_fostream& operator << (long); - ACE_CE_fostream& operator << (unsigned long); - ACE_CE_fostream& operator << (float); - ACE_CE_fostream& operator << (double); - ACE_CE_fostream& operator << (long double); - - ACE_CE_fostream& operator << (const void *); - -private: - ACE_CE_fostream(); - - ~ACE_CE_fostream(); - - /** - * The ostream where logging messages can be written. - */ - ACE_OSTREAM_TYPE *ostream_; - - /** - * Currently set numeric base. - */ - NUM_TYPE displayMode_; - - static ACE_CE_fostream* instance_; -}; - -typedef ACE_Singleton<ACE_CE_fostream, ACE_Null_Mutex> ACE_CE_OSTREAM; - -#endif /* ACE_HAS_WINCE && ACE_LACKS_IOSTREAM_TOTALLY */ -#endif /* ACE_CE_fostream_h */ diff --git a/ACE/tests/Cache_Map_Manager_Test.cpp b/ACE/tests/Cache_Map_Manager_Test.cpp index 400235216e0..2b0fe6cce52 100644 --- a/ACE/tests/Cache_Map_Manager_Test.cpp +++ b/ACE/tests/Cache_Map_Manager_Test.cpp @@ -517,7 +517,7 @@ parse_args (int argc, ACE_TCHAR *argv[]) ACE_TEXT ("[-i (iterations)] ") ACE_TEXT ("[-d (debug, i.e., addition printouts)] ") ACE_TEXT ("[-p (purge percent)] ") - ACE_TEXT ("[-f (number of lookups)] \n"), + ACE_TEXT ("[-f (number of lookups)]\n"), ACE_TEXT ("Cache_Map_Manager_Test"))); return -1; } diff --git a/ACE/tests/Cached_Accept_Conn_Test.cpp b/ACE/tests/Cached_Accept_Conn_Test.cpp index b5d8cb5183c..8b7f5fb4f32 100644 --- a/ACE/tests/Cached_Accept_Conn_Test.cpp +++ b/ACE/tests/Cached_Accept_Conn_Test.cpp @@ -60,7 +60,7 @@ Accept_Strategy<SVC_HANDLER, ACE_PEER_ACCEPTOR_2>::Accept_Strategy (CACHED_CONNE template <class SVC_HANDLER, ACE_PEER_ACCEPTOR_1> int Accept_Strategy<SVC_HANDLER, ACE_PEER_ACCEPTOR_2>::open (const ACE_PEER_ACCEPTOR_ADDR &local_addr, - int restart) + bool restart) { int result = ACCEPT_STRATEGY_BASE::open (local_addr, restart); @@ -295,7 +295,7 @@ test_connection_management (CACHING_STRATEGY &caching_strategy) for (int i = 1; i <= iterations; ++i) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("iteration %d\n"), + ACE_TEXT ("%T iteration %d\n"), i)); // Connect strategy is required by the <out_of_sockets_handler>. diff --git a/ACE/tests/Cached_Accept_Conn_Test.h b/ACE/tests/Cached_Accept_Conn_Test.h index 6b8b3e8f46a..083440ca6c7 100644 --- a/ACE/tests/Cached_Accept_Conn_Test.h +++ b/ACE/tests/Cached_Accept_Conn_Test.h @@ -113,7 +113,7 @@ public: // Constructor. int open (const ACE_PEER_ACCEPTOR_ADDR &local_addr, - int restart = 0); + bool restart = false); // Initialize the <peer_acceptor_> with <local_addr>. If the // process runs out of descriptors, the unsed svc_handlers from the // CONNECTION CACHE are removed. diff --git a/ACE/tests/Cached_Conn_Test.cpp b/ACE/tests/Cached_Conn_Test.cpp index 63199c2e42a..3c6c553d942 100644 --- a/ACE/tests/Cached_Conn_Test.cpp +++ b/ACE/tests/Cached_Conn_Test.cpp @@ -274,7 +274,7 @@ test_connection_management (CACHING_STRATEGY &caching_strategy) for (int i = 1; i <= iterations; ++i) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("iteration %d\n"), + ACE_TEXT ("%T iteration %d\n"), i)); // If <listen_once> is false, one Acceptor is used for every @@ -426,8 +426,7 @@ run_main (int argc, ACE_TCHAR *argv[]) #if defined (ACE_WIN32) // Somehow, on Win32, the <listen once> option allows us to create // more handles. - if (!user_has_specified_iterations && - listen_once) + if (!user_has_specified_iterations && listen_once) iterations *= 2; #endif /* ACE_WIN32 */ diff --git a/ACE/tests/Config_Test.cpp b/ACE/tests/Config_Test.cpp index 01f6c6c5af3..b2cfdc760f8 100644 --- a/ACE/tests/Config_Test.cpp +++ b/ACE/tests/Config_Test.cpp @@ -119,7 +119,7 @@ test (ACE_Configuration *config, } u_char * the_data = static_cast<u_char *> (data_out); - + // compare em for (size_t j = 0; j < data_len; ++j) if (the_data[j] != data[j]) @@ -353,13 +353,23 @@ run_tests (void) status)); ACE_Ini_ImpExp import (cf); // This one should work... - status = import.import_config (ACE_TEXT ("Config_Test_Import_1.ini")); + ACE_TCHAR import_file_name [MAXPATHLEN]; +#if defined (TEST_DIR) + ACE_OS::strcpy (import_file_name, TEST_DIR); + ACE_OS::strcat (import_file_name, ACE_DIRECTORY_SEPARATOR_STR); + ACE_OS::strcat (import_file_name, ACE_TEXT ("Config_Test_Import_1.ini")); +#else + ACE_OS::strcpy (import_file_name, ACE_TEXT ("Config_Test_Import_1.ini")); +#endif + + status = import.import_config (import_file_name); if (status != 0) { - ACE_ERROR ((LM_ERROR, ACE_TEXT ("%p\n"), - ACE_TEXT ("Config_Test_Import_1.ini failed"))); + ACE_ERROR ((LM_ERROR, ACE_TEXT ("%p: %s\n"), + ACE_TEXT ("Config_Test_Import_1.ini failed"), + import_file_name)); } else { - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Config_Test_Import_1.ini imported\n"))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("%s imported\n"), import_file_name)); // Imported clean; verify content. See ini file for expected content. // Verify the expected sections are there, but no others. Verify the diff --git a/ACE/tests/DLL_Test.cpp b/ACE/tests/DLL_Test.cpp index 46fe272f1aa..ccca35e9416 100644 --- a/ACE/tests/DLL_Test.cpp +++ b/ACE/tests/DLL_Test.cpp @@ -25,13 +25,11 @@ ACE_RCSID(tests, DLL_Test, "$Id$") -#if defined (ACE_WIN32) && defined (_MSC_VER) && defined (_DEBUG) -# define OBJ_SUFFIX ACE_TEXT ("d") ACE_DLL_SUFFIX -#elif defined (ACE_WIN32) && defined (__BORLANDC__) +#if defined (ACE_LD_DECORATOR_STR) # define OBJ_SUFFIX ACE_LD_DECORATOR_STR ACE_DLL_SUFFIX #else # define OBJ_SUFFIX ACE_DLL_SUFFIX -#endif /* ACE_WIN32 && && _MSC_VER && _DEBUG */ +#endif /* ACE_LD_DECORATOR_STR */ #if defined (ACE_WIN32) || defined (ACE_OPENVMS) # define OBJ_PREFIX ACE_DLL_PREFIX diff --git a/ACE/tests/DLList_Test.cpp b/ACE/tests/DLList_Test.cpp index 57155d177ab..8dc77be3422 100644 --- a/ACE/tests/DLList_Test.cpp +++ b/ACE/tests/DLList_Test.cpp @@ -84,13 +84,13 @@ run_test (void) if (ACE_EVEN (i) && list.insert_tail ((ACE_STRING *) &string_table[i]) == 0) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("%p failed for %s \n"), + ACE_TEXT ("%p failed for %s\n"), ACE_TEXT ("insert"), string_table[i]), -1); else if (list.insert_head ((ACE_STRING *) &string_table[i]) == 0) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("%p failed for %s \n"), + ACE_TEXT ("%p failed for %s\n"), ACE_TEXT ("insert"), string_table[i]), -1); diff --git a/ACE/tests/Dirent_Test.cpp b/ACE/tests/Dirent_Test.cpp index 88d827ba591..df756c8d4c2 100644 --- a/ACE/tests/Dirent_Test.cpp +++ b/ACE/tests/Dirent_Test.cpp @@ -32,25 +32,17 @@ #include "ace/OS_String.h" #include "ace/SString.h" - ACE_RCSID (tests, Dirent_Test, "$Id Dirent_Test.cpp,v 4.10 2003/05/18 19:17:34 dhinton Exp$") - #if (defined (ACE_VXWORKS) && (ACE_VXWORKS < 0x600)) # define TEST_DIR "log" -# define DIR_DOT "." -# define DIR_DOT_DOT ".." # define TEST_ENTRY ".." #else # if defined (ACE_HAS_TCHAR_DIRENT) -# define DIR_DOT ACE_TEXT (".") -# define DIR_DOT_DOT ACE_TEXT ("..") # define TEST_ENTRY ACE_TEXT ("run_test.lst") # else -# define DIR_DOT "." -# define DIR_DOT_DOT ".." # define TEST_ENTRY "run_test.lst" # endif /* ACE_HAS_TCHAR_DIRENT */ #endif /* ACE_VXWORKS < 0x600 */ @@ -81,14 +73,13 @@ comparator (const ACE_DIRENT **d1, const ACE_DIRENT **d2) static int dirent_selector_test (void) { - int status; int n; int error = 0; const ACE_TCHAR *test_dir = TestDir.c_str (); ACE_Dirent_Selector sds; // Pass in functions that'll specify the selection criteria. - status = sds.open (test_dir, selector, comparator); + int status = sds.open (test_dir, selector, comparator); if (status == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("%s, %p\n"), @@ -107,10 +98,19 @@ dirent_selector_test (void) } for (n = 0; n < sds.length (); ++n) - ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("Sorted: %d: %C\n"), - n, - sds[n]->d_name)); + { +#if defined (ACE_HAS_TCHAR_DIRENT) + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("Sorted: %d: %s\n"), + n, + sds[n]->d_name)); +#else + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("Sorted: %d: %C\n"), + n, + sds[n]->d_name)); +#endif + } status = sds.close (); if (status == -1) @@ -146,10 +146,19 @@ dirent_selector_test (void) } for (n = 0; n < ds.length (); ++n) - ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("Entry %d: %C\n"), - n, - ds[n]->d_name)); + { +#if defined (ACE_HAS_TCHAR_DIRENT) + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("Entry %d: %s\n"), + n, + ds[n]->d_name)); +#else + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("Entry %d: %C\n"), + n, + ds[n]->d_name)); +#endif + } if (ds.close () == -1) { @@ -165,15 +174,29 @@ dirent_selector_test (void) static int dirent_test (void) { - ACE_Dirent dir (TestDir.c_str ()); + ACE_Dirent dir; + + if (dir.open (TestDir.c_str ()) == -1) + ACE_ERROR_RETURN + ((LM_ERROR, ACE_TEXT ("open of dir %s failed\n"), TestDir.c_str()), -1); for (ACE_DIRENT *directory; (directory = dir.read ()) != 0; entrycount++) - ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("Entry %d: %C\n"), - entrycount, - directory->d_name)); + { +#if defined (ACE_HAS_TCHAR_DIRENT) + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("Entry %d: %s\n"), + entrycount, + directory->d_name)); +#else + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("Entry %d: %C\n"), + entrycount, + directory->d_name)); +#endif + } + switch (entrycount) { case 0: @@ -228,12 +251,15 @@ dirent_count (const ACE_TCHAR *dir_path, # endif #endif /* !ACE_LACKS_CHDIR */ - ACE_Dirent dir (ACE_TEXT (".")); + ACE_Dirent dir; + if (dir.open (ACE_TEXT (".")) == -1) + ACE_ERROR_RETURN + ((LM_ERROR, ACE_TEXT ("open of dir . failed\n")), -1); // Since the dir struct d_name type changes depending on the setting // of ACE_LACKS_STRUCT_DIR, copy each name into a neutral format // array to work on it. - const size_t maxnamlen = MAXNAMLEN; + size_t const maxnamlen = MAXNAMLEN; ACE_TCHAR tname[maxnamlen + 1]; int entry_count = 0; @@ -241,8 +267,7 @@ dirent_count (const ACE_TCHAR *dir_path, for (ACE_DIRENT *directory; (directory = dir.read ()) != 0;) { // Skip the ".." and "." files. - if (ACE_OS::strcmp (directory->d_name, DIR_DOT) == 0 - || ACE_OS::strcmp (directory->d_name, DIR_DOT_DOT) == 0) + if (ACE::isdotdir(directory->d_name) == true) continue; ++entry_count; @@ -324,7 +349,7 @@ dirent_count (const ACE_TCHAR *dir_path, break; default: // Must be some other type of file (PIPE/FIFO/device) - file_count++; + ++file_count; break; } } diff --git a/ACE/tests/Enum_Interfaces_Test.cpp b/ACE/tests/Enum_Interfaces_Test.cpp index 85097b46d24..17552f76a12 100644 --- a/ACE/tests/Enum_Interfaces_Test.cpp +++ b/ACE/tests/Enum_Interfaces_Test.cpp @@ -70,8 +70,8 @@ run_main (int, ACE_TCHAR *[]) else if (the_addr_array[i].get_type() == AF_INET6) ++num_ipv6; #endif /* ACE_HAS_IPV6 */ - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\t%s\n"), - ACE_TEXT_CHAR_TO_TCHAR (the_addr_array[i].get_host_addr ()))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\t%C\n"), + the_addr_array[i].get_host_addr ())); } delete [] the_addr_array; diff --git a/ACE/tests/Get_Opt_Test.cpp b/ACE/tests/Get_Opt_Test.cpp index f9d4442344b..8acabb3a131 100644 --- a/ACE/tests/Get_Opt_Test.cpp +++ b/ACE/tests/Get_Opt_Test.cpp @@ -32,7 +32,7 @@ ACE_RCSID(tests, Get_Opt_Test, "$Id$") * total error count. */ -static const ACE_TString empty (ACE_TEXT ("")); +static const ACE_TString empty_string (ACE_TEXT ("")); static int parse_args (int test_number, @@ -40,7 +40,7 @@ parse_args (int test_number, const ACE_TCHAR *test_args, int skip_argv = 1, int report_errors = 1, - const ACE_TString &opt_prefix = empty) + const ACE_TString &opt_prefix = empty_string) { ACE_TString test; ACE_TString optstring (opt_prefix); @@ -77,37 +77,37 @@ parse_args (int test_number, 'f', ACE_Get_Opt::NO_ARG) != 0) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT (" Unable to add long option 'f' \n")), 1); + ACE_TEXT (" Unable to add long option 'f'\n")), 1); if (get_opt.long_option (ACE_TEXT ("requires_arg"), 'r', ACE_Get_Opt::ARG_REQUIRED) != 0) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT (" Unable to add long option 'r' \n")), 1); + ACE_TEXT (" Unable to add long option 'r'\n")), 1); if (get_opt.long_option (ACE_TEXT ("optional_arg"), 'o', ACE_Get_Opt::ARG_OPTIONAL) != 0) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT (" Unable to add long option 'o' \n")), 1); + ACE_TEXT (" Unable to add long option 'o'\n")), 1); if (get_opt.long_option (ACE_TEXT ("long_option"), 'l', ACE_Get_Opt::ARG_OPTIONAL) != 0) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT (" Unable to add long option 'l' \n")), 1); + ACE_TEXT (" Unable to add long option 'l'\n")), 1); if (get_opt.long_option (ACE_TEXT ("long_only"), -11, ACE_Get_Opt::ARG_REQUIRED) != 0) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT (" Unable to add long option ") - ACE_TEXT ("\"long_only\" \n")), 1); + ACE_TEXT ("\"long_only\"\n")), 1); if (get_opt.long_option (ACE_TEXT ("long_no_arg")) != 0) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT (" Unable to add long option ") - ACE_TEXT ("\"long_no_arg\" \n")), 1); + ACE_TEXT ("\"long_no_arg\"\n")), 1); // This is the special case of providing a non-alpha numeric corresponding // short option. This lets you use the corresponding short option in a @@ -118,7 +118,7 @@ parse_args (int test_number, ACE_Get_Opt::ARG_OPTIONAL) != 0) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT (" Unable to add long option ") - ACE_TEXT ("\"non_alpha_short\" \n")), 1); + ACE_TEXT ("\"non_alpha_short\"\n")), 1); // We print out the optstring here because adding long_options that // have corresponding short options that aren't yet present, are added. diff --git a/ACE/tests/Hash_Map_Manager_Test.cpp b/ACE/tests/Hash_Map_Manager_Test.cpp index e960e127f8c..9776b7104d3 100644 --- a/ACE/tests/Hash_Map_Manager_Test.cpp +++ b/ACE/tests/Hash_Map_Manager_Test.cpp @@ -198,7 +198,7 @@ run_test (void) if (hash.bind (string_table[i].key_, string_table[i].value_) == -1) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("%p failed for %s \n"), + ACE_TEXT ("%p failed for %s\n"), ACE_TEXT ("bind"), string_table[i].key_), -1); @@ -313,7 +313,7 @@ run_test (void) if (hash.bind (string_table[i].key_, string_table[i].value_) != 0) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("%p failed for %s \n"), + ACE_TEXT ("%p failed for %s\n"), ACE_TEXT ("bind"), string_table[i].key_), -1); diff --git a/ACE/tests/Hash_Multi_Map_Manager_Test.cpp b/ACE/tests/Hash_Multi_Map_Manager_Test.cpp index 2e883a71152..03946f8b0d0 100644 --- a/ACE/tests/Hash_Multi_Map_Manager_Test.cpp +++ b/ACE/tests/Hash_Multi_Map_Manager_Test.cpp @@ -55,7 +55,7 @@ run_test (void) warm_colors[i]) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("bind failed for %s in %s\n"), - warm_colors[i], + warm_colors[i], color_sorts[0]), -1); } @@ -68,11 +68,11 @@ run_test (void) entry) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("bind failed for %s in %s\n"), - cold_colors[i], + cold_colors[i], color_sorts[1]), -1); } - + HASH_STRING_VALUE_SET value_set; entry = 0; for (i = 0; neutral_colors[i] != 0; i++) @@ -258,11 +258,11 @@ run_test (void) iter++) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("%s \n"), + ACE_TEXT ("%s \n"), *iter)); } } - + // Check the unbind operation. if (colors.unbind (color_sorts[0]) == -1) ACE_ERROR_RETURN ((LM_ERROR, @@ -275,7 +275,7 @@ run_test (void) warm_colors[i]) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("bind failed for %s in %s\n"), - warm_colors[i], + warm_colors[i], color_sorts[0]), -1); } @@ -292,7 +292,7 @@ run_test (void) warm_colors[i]) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("bind failed for %s in %s\n"), - warm_colors[i], + warm_colors[i], color_sorts[0]), -1); } @@ -303,7 +303,7 @@ run_test (void) warm_colors[i]) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("unbind failed for %s in %s\n"), - warm_colors[i], + warm_colors[i], color_sorts[0]), -1); } @@ -326,7 +326,7 @@ run_test (void) iter++) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("%s \n"), + ACE_TEXT ("%s \n"), *iter)); } } @@ -357,7 +357,7 @@ run_test (void) iter++) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("%s \n"), + ACE_TEXT ("%s \n"), *iter)); } } diff --git a/ACE/tests/IOStream_Test.cpp b/ACE/tests/IOStream_Test.cpp index ffb758975f4..f4275c3ecba 100644 --- a/ACE/tests/IOStream_Test.cpp +++ b/ACE/tests/IOStream_Test.cpp @@ -180,8 +180,8 @@ client (void *arg = 0) // Send a string to the server which it can interpret as a qchar[] const char *str = "\"This is a test string.\""; - ACE_DEBUG ((LM_DEBUG, ACE_TEXT (" (%P|%t) Client Sending: (%s)\n"), - ACE_TEXT_CHAR_TO_TCHAR (str))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT (" (%P|%t) Client Sending: (%C)\n"), + str)); server << str << endl; // Allow the server to get the string and echo it to the user. (The @@ -315,8 +315,8 @@ server (void *arg = 0) client_handler >> qbuf; ACE_DEBUG ((LM_DEBUG, - ACE_TEXT (" (%P|%t) Server Received: (\"%s\")\n"), - ACE_TEXT_CHAR_TO_TCHAR ((char *) qbuf))); + ACE_TEXT (" (%P|%t) Server Received: (\"%C\")\n"), + (char *) qbuf)); // Give the client time to announce the next test to the user. ACE_OS::sleep (2); @@ -356,8 +356,8 @@ server (void *arg = 0) if (! (client_handler >> buf)) break; ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("%s "), - ACE_TEXT_CHAR_TO_TCHAR (buf))); + ACE_TEXT ("%C "), + buf)); } ACE_DEBUG ((LM_DEBUG, @@ -375,7 +375,7 @@ server (void *arg = 0) ACE_OS::sleep (5); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT (" (%P|%t) Server Sending: 1 .12342134 666555444 23.45 -46.5e9 \n"))); + ACE_TEXT (" (%P|%t) Server Sending: 1 .12342134 666555444 23.45 -46.5e9\n"))); client_handler << 1 << " "; client_handler << .12342134 << " "; client_handler << 666555444 << " "; diff --git a/ACE/tests/Log_Msg_Test.cpp b/ACE/tests/Log_Msg_Test.cpp index 972c3d541fa..3d5178996da 100644 --- a/ACE/tests/Log_Msg_Test.cpp +++ b/ACE/tests/Log_Msg_Test.cpp @@ -597,7 +597,11 @@ test_format_specs (void) ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("%}%IENDINDENTING\n"))); ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("%W\n"), ACE_TEXT_WIDE ("My string test\n"))); ACE_TCHAR* nill_string = 0; + char* char_nill_string = 0; ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("%W\n"), nill_string)); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("%s\n"), nill_string)); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("%C\n"), char_nill_string)); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("%m %p\n"), nill_string)); errno = ENOENT; ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("%m %p\n"), ACE_TEXT("perror"))); diff --git a/ACE/tests/Log_Thread_Inheritance_Test.cpp b/ACE/tests/Log_Thread_Inheritance_Test.cpp new file mode 100644 index 00000000000..6d4726102ad --- /dev/null +++ b/ACE/tests/Log_Thread_Inheritance_Test.cpp @@ -0,0 +1,129 @@ +// $Id$ + +#include "test_config.h" +#include "ace/Log_Msg.h" +#include "ace/Task.h" +#include <fstream> + +#ifdef ACE_HAS_PTHREADS +# include <pthread.h> +#endif /* ACE_HAS_PTHREADS */ + +ACE_RCSID (tests, Log_Thread_Inheritance_Test, "$Id$") + +#if !defined (ACE_HAS_THREADS) || defined (ACE_LACKS_IOSTREAM_TOTALLY) +int run_main (int, ACE_TCHAR *[]) +{ + return 0; +} +#else + +#ifdef ACE_HAS_PTHREADS +struct Inheritor : ACE_Task_Base +{ + int svc () + { + ACE_DEBUG ((LM_DEBUG, "(%P|%t) - this test might crash ACE if it does not " + "have the fix for the second bug in #3480.\n")); + return 0; + } +}; + +extern "C" +void* spawn_ace_task (void*) +{ + Inheritor inheritor; + + inheritor.activate (); + inheritor.wait (); + + return 0; +} + +bool test_inherited_attributes () +{ + // This test verifies ACE_OS_Log_Msg_Attributes correctly initializes + // when an ACE thread is created from a non-ACE thread (i.e. pthreads) + // and is then used for logging. + // + // This test will cause occasional SEGVs on failure. + // stallions 2009/02/05 + pthread_t parent; + + if (pthread_create (&parent, 0, spawn_ace_task, 0) != 0) + { + return false; + } + pthread_join (parent, 0); + + return true; +} +#endif /* ACE_HAS_PTHREADS */ + +struct MyThread : ACE_Task_Base +{ + + enum { THREAD_DEFAULTS = THR_NEW_LWP|THR_JOINABLE|THR_INHERIT_SCHED }; + + explicit MyThread (bool openfile = false) + : openfile_ (openfile) {} + + bool openfile_; + static MyThread childthread_; + + int svc () + { + if (openfile_) + { + ACE_LOG_MSG->msg_ostream ( + new std::ofstream ( + ACE_TEXT_ALWAYS_CHAR ( + ACE_LOG_DIRECTORY + ACE_TEXT ("Log_Thread_Inheritance_Ostream") + ACE_LOG_FILE_EXT_NAME + ) + ), true); + ACE_LOG_MSG->set_flags (ACE_Log_Msg::OSTREAM); + ACE_LOG_MSG->clr_flags (ACE_Log_Msg::STDERR | ACE_Log_Msg::LOGGER); + MyThread ends_first_thread; + ends_first_thread.activate (THREAD_DEFAULTS, 10); + ends_first_thread.wait (); + childthread_.activate (THREAD_DEFAULTS, 10); + } + ACE_DEBUG ((LM_DEBUG, "(%P|%t) - in svc() openfile_ is %C\n", + (openfile_ ? "true" : "false"))); + if (!openfile_) + { + for (int i = 0; i < 100; ++i) + { + ACE_DEBUG ((LM_DEBUG, "(%P|%t) - loop %d\n", i)); + if (!(i % 10)) ACE_OS::thr_yield (); + } + } + return 0; + } +}; + +MyThread MyThread::childthread_; + +int run_main (int, ACE_TCHAR *[]) +{ + ACE_START_TEST (ACE_TEXT ("Log_Thread_Inheritance_Test")); + ACE_DEBUG ((LM_DEBUG, "(%P|%t) - in run_main()\n")); + ACE_DEBUG ((LM_DEBUG, "(%P|%t) - this test will crash ACE if it does not " + "have the fix for bug #3480.\n")); + ACE_OSTREAM_TYPE *initial_stream = ACE_LOG_MSG->msg_ostream (); + MyThread mt (true); + mt.activate (); + mt.wait (); + MyThread::childthread_.wait (); + ACE_LOG_MSG->msg_ostream (initial_stream, 0); +#ifdef ACE_HAS_PTHREADS + if (!test_inherited_attributes ()) return -1; +#endif /* ACE_HAS_PTHREADS */ + ACE_DEBUG ((LM_DEBUG, "(%P|%t) - Test passed.\n")); + ACE_END_TEST; + return 0; +} + +#endif diff --git a/ACE/tests/Logging_Strategy_Test.cpp b/ACE/tests/Logging_Strategy_Test.cpp index 6e3739020dd..31b8b610399 100644 --- a/ACE/tests/Logging_Strategy_Test.cpp +++ b/ACE/tests/Logging_Strategy_Test.cpp @@ -108,7 +108,7 @@ static void print_till_death (void) { ACE_DEBUG ((LM_DEBUG, - "\n-> start generating messages... \n")); + "\n-> start generating messages...\n")); for (int i = 0; i < 1000; i++) { @@ -191,7 +191,7 @@ count_files (void) num_files)); ACE_DEBUG ((LM_DEBUG, - "\n-< counting finished... \n")); + "\n-< counting finished...\n")); } // get the file statistics @@ -200,10 +200,9 @@ static time_t get_statistics (ACE_TCHAR *f_name) { ACE_stat buf; - int result; // Get data associated with "file_name": - result = ACE_OS::stat (f_name, &buf); + int result = ACE_OS::stat (f_name, &buf); // Check if statistics are valid: if (result != 0) @@ -218,24 +217,12 @@ get_statistics (ACE_TCHAR *f_name) ACE_TEXT (" File size (B): %d\n"), buf.st_size)); -#if defined (ACE_HAS_WINCE) - time_t tm = buf.st_mtime.sec(); - - ACE_DEBUG ((LM_DEBUG, - ACE_TEXT (" Time modified : %s\n"), - ACE_OS::ctime (&tm))); -#else ACE_DEBUG ((LM_DEBUG, ACE_TEXT (" Time modified : %s\n"), ACE_OS::ctime (&buf.st_mtime))); -#endif // ACE_HAS_WINCE } -#if defined (ACE_HAS_WINCE) - return buf.st_mtime.sec(); -#else return buf.st_mtime; -#endif // ACE_HAS_WINCE } // analyse the file order @@ -243,7 +230,7 @@ static void order (void) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("\n-> start testing order... \n"))); + ACE_TEXT ("\n-> start testing order...\n"))); if (num_files <= 2) { @@ -312,19 +299,17 @@ remove_files (void) ACE_TEXT ("-> removing existent files...\n"))); int error = 0; - int test; int i = 0; - ACE_TCHAR backup[MAXPATHLEN+1]; do { - i++; + ++i; + ACE_TCHAR backup[MAXPATHLEN+1]; ACE_OS::sprintf (backup, ACE_TEXT ("%s.%d"), file_name, i); - test = ACE_OS::unlink (backup); - if (test != 0) + if (ACE_OS::unlink (backup) != 0) error = 1; } while (error != 1); @@ -428,7 +413,9 @@ int run_main (int argc, ACE_TCHAR *argv []) { l_argv[0] = (ACE_TCHAR *)ACE_TEXT ("Logging_Strategy_Test"); l_argv[1] = - (ACE_TCHAR *) ACE_TEXT ("-slog/Logging_Strategy_Test") + (ACE_TCHAR *) ACE_TEXT ("-s") + ACE_DEFAULT_TEST_DIR + ACE_TEXT ("log/Logging_Strategy_Test") ACE_LOG_FILE_EXT_NAME; l_argv[2] = (ACE_TCHAR *) ACE_TEXT ("-o"); l_argv[3] = 0; @@ -480,10 +467,10 @@ int run_main (int argc, ACE_TCHAR *argv []) #else // Platform doesn't support DLLs, or configured to link // statically ACE_Logging_Strategy logging_strategy; - char ls_argc = argc - 1; + unsigned char ls_argc = argc - 1; ACE_Auto_Basic_Ptr<ACE_TCHAR *> ls_argv (new ACE_TCHAR *[ls_argc]); - for (char c = 0; c < ls_argc; c++) + for (unsigned char c = 0; c < ls_argc; c++) (ls_argv.get ())[c] = argv[c+1]; if (logging_strategy.init (ls_argc, ls_argv.get ()) == -1) diff --git a/ACE/tests/MEM_Stream_Test.cpp b/ACE/tests/MEM_Stream_Test.cpp index 3469cf51794..fd351234404 100644 --- a/ACE/tests/MEM_Stream_Test.cpp +++ b/ACE/tests/MEM_Stream_Test.cpp @@ -60,7 +60,6 @@ ACE_RCSID(tests, MEM_Stream_Test, "$Id$") // If we don't have winsock2 we can't use WFMO_Reactor. #if defined (ACE_WIN32) \ - && !defined (ACE_HAS_WINCE) \ && defined (ACE_HAS_WINSOCK2) \ && ACE_HAS_WINSOCK2 != 0 # define TEST_CAN_USE_WFMO_REACTOR @@ -435,11 +434,7 @@ run_main (int argc, ACE_TCHAR *argv[]) reset_handler (NUMBER_OF_REACTIVE_CONNECTIONS); -#if defined (ACE_HAS_WINCE) - test_reactive (ACE_TEXT("\\Windows\\Start Menu\\MEM_Stream_Test_WinCE.exe"), server_addr); -#else - test_reactive (ACE_TEXT ("MEM_Stream_Test"), server_addr); -#endif // ACE_HAS_WINCE + test_reactive (argc > 0 ? argv[0] : ACE_TEXT ("MEM_Stream_Test"), server_addr); ACE_Reactor::instance ()->reset_reactor_event_loop (); @@ -449,11 +444,7 @@ run_main (int argc, ACE_TCHAR *argv[]) #endif /* !ACE_WIN32 && _ACE_USE_SV_SEM */ reset_handler (NUMBER_OF_MT_CONNECTIONS); -#if defined (ACE_HAS_WINCE) - test_concurrent (ACE_TEXT("\\Windows\\Start Menu\\MEM_Stream_Test_WinCE.exe"), server_addr); -#else - test_concurrent (ACE_TEXT ("MEM_Stream_Test"), server_addr); -#endif // ACE_HAS_WINCE + test_concurrent (argc > 0 ? argv[0] : ACE_TEXT ("MEM_Stream_Test"), server_addr); ACE_END_TEST; return 0; diff --git a/ACE/tests/MM_Shared_Memory_Test.cpp b/ACE/tests/MM_Shared_Memory_Test.cpp index 557c9c38fe5..54798362eb5 100644 --- a/ACE/tests/MM_Shared_Memory_Test.cpp +++ b/ACE/tests/MM_Shared_Memory_Test.cpp @@ -211,10 +211,7 @@ run_main (int, ACE_TCHAR *[]) if (ACE_OS::mktemp (shm_key) == 0 || (ACE_OS::unlink (shm_key) == -1 -#ifndef ACE_HAS_WINCE - && errno == EPERM -#endif - )) + && errno == EPERM)) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("(%P|%t) %p\n"), shm_key), diff --git a/ACE/tests/MT_Reference_Counted_Event_Handler_Test.cpp b/ACE/tests/MT_Reference_Counted_Event_Handler_Test.cpp index 45bd1924a92..3cc4b712184 100644 --- a/ACE/tests/MT_Reference_Counted_Event_Handler_Test.cpp +++ b/ACE/tests/MT_Reference_Counted_Event_Handler_Test.cpp @@ -1141,7 +1141,7 @@ testing (ACE_Reactor *reactor, int nested_upcalls) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("\n(%t) Configuration: \n") + ACE_TEXT ("\n(%t) Configuration:\n") ACE_TEXT ("\tInvocation thread = %d\n") ACE_TEXT ("\tEvent Loop thread = %d\n") ACE_TEXT ("\tPurger thread = %d\n") diff --git a/ACE/tests/Makefile.am b/ACE/tests/Makefile.am index 38feb1c1138..737f93582d7 100644 --- a/ACE/tests/Makefile.am +++ b/ACE/tests/Makefile.am @@ -223,7 +223,6 @@ noinst_HEADERS += \ ACE_Init_Test_Resource.h \ ACE_Init_Test_StdAfx.h \ Bound_Ptr_Test.h \ - CE_fostream.h \ Cache_Map_Manager_Test.h \ Cached_Accept_Conn_Test.h \ Cached_Conn_Test.h \ @@ -482,9 +481,7 @@ CDR_File_Test_CPPFLAGS = \ CDR_File_Test_SOURCES = \ $(ACE_ROOT)/tests/Main.cpp \ - CDR_File_Test.cpp \ - CE_fostream.cpp \ - CE_fostream.h + CDR_File_Test.cpp CDR_File_Test_LDADD = \ libTest_Output.la \ @@ -1196,7 +1193,6 @@ UnloadLibACE_SOURCES = \ ACE_Init_Test_Resource.h \ ACE_Init_Test_StdAfx.h \ Bound_Ptr_Test.h \ - CE_fostream.h \ Cache_Map_Manager_Test.h \ Cached_Accept_Conn_Test.h \ Cached_Conn_Test.h \ diff --git a/ACE/tests/Malloc_Test.cpp b/ACE/tests/Malloc_Test.cpp index 14a07aa19c2..1e26005590c 100644 --- a/ACE/tests/Malloc_Test.cpp +++ b/ACE/tests/Malloc_Test.cpp @@ -334,7 +334,7 @@ get_base_addrs (void) #endif /* defined (ACE_WIN32) */ int -run_main (int argc, ACE_TCHAR *[]) +run_main (int argc, ACE_TCHAR *argv[]) { #if defined (ACE_WIN32) get_base_addrs(); @@ -355,17 +355,15 @@ run_main (int argc, ACE_TCHAR *[]) // No arguments means we're the parent process. ACE_Process_Options options (1); - options.command_line (EXE_LOCATION - ACE_TEXT ("Malloc_Test") - ACE_PLATFORM_EXE_SUFFIX +#if !defined (ACE_WIN32) && defined (ACE_USES_WCHAR) + static const ACE_TCHAR* format = ACE_TEXT ("%ls%ls%ls"); +#else + static const ACE_TCHAR* format = ACE_TEXT ("%s%s%s"); +#endif /* !ACE_WIN32 && ACE_USES_WCHAR */ + options.command_line (format, EXE_LOCATION, + argc > 0 ? argv[0] : ACE_TEXT ("Malloc_Test"), ACE_TEXT (" run_as_test")); -#ifdef ACE_HAS_WINCE - // \Windows\Start Menu is where Malloc_Test.exe will be downloaded to. - // Check project setting for the directory information if needs to be changed. - options.process_name(ACE_TEXT("\\Windows\\Start Menu\\Malloc_Test.exe")); -#endif - MALLOC *myalloc = myallocator (PARENT_BASE_ADDR); Test_Data *data = initialize (myalloc); diff --git a/ACE/tests/Max_Default_Port_Test.cpp b/ACE/tests/Max_Default_Port_Test.cpp index 6b4fc0bb5a5..3c9f30cbf91 100644 --- a/ACE/tests/Max_Default_Port_Test.cpp +++ b/ACE/tests/Max_Default_Port_Test.cpp @@ -87,7 +87,7 @@ My_Accept_Handler::handle_input (ACE_HANDLE) } ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("My_Accept_Handler::handle_input \n"))); + ACE_TEXT ("My_Accept_Handler::handle_input\n"))); // Close the opened stream, else it'll leak a handle. Don't close // the acceptor here, though, because get_handle() needs it to @@ -186,7 +186,7 @@ run_main (int argc, ACE_TCHAR *argv[]) #else const u_short ports_to_test = 300; #endif - + //Ports beyond 65279 were said to bad on NT sp 3. for (u_short idx = USHRT_MAX; idx != USHRT_MAX - ports_to_test; --idx) { diff --git a/ACE/tests/Max_Default_Port_Test_IPV6.cpp b/ACE/tests/Max_Default_Port_Test_IPV6.cpp index bc0e9809ee0..29a5c29dc5b 100644 --- a/ACE/tests/Max_Default_Port_Test_IPV6.cpp +++ b/ACE/tests/Max_Default_Port_Test_IPV6.cpp @@ -75,7 +75,7 @@ My_Accept_Handler::handle_input (ACE_HANDLE) } ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("My_Accept_Handler::handle_input \n"))); + ACE_TEXT ("My_Accept_Handler::handle_input\n"))); // Close the opened stream, else it'll leak a handle. Don't close // the acceptor here, though, because get_handle() needs it to diff --git a/ACE/tests/Message_Queue_Notifications_Test.cpp b/ACE/tests/Message_Queue_Notifications_Test.cpp index 51fe8c261b3..75a3abbfcbb 100644 --- a/ACE/tests/Message_Queue_Notifications_Test.cpp +++ b/ACE/tests/Message_Queue_Notifications_Test.cpp @@ -223,7 +223,7 @@ Watermark_Test::producer (void) } ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) Producer: High water mark hit ---- \n"))); + ACE_TEXT ("(%P|%t) Producer: High water mark hit ----\n"))); ACE_MT (this->mq_full_.wait ()); diff --git a/ACE/tests/Message_Queue_Test.cpp b/ACE/tests/Message_Queue_Test.cpp index 97306f00a70..14f5e3e1d42 100644 --- a/ACE/tests/Message_Queue_Test.cpp +++ b/ACE/tests/Message_Queue_Test.cpp @@ -842,7 +842,7 @@ prio_test (void) mq.dequeue_prio (mb1p); mq.dequeue_prio (mb2p); - ACE_DEBUG ((LM_DEBUG, "message 1 = %s\nmessage 2 = %s\n", + ACE_DEBUG ((LM_DEBUG, "message 1 = %C\nmessage 2 = %C\n", mb1p->rd_ptr (), mb2p->rd_ptr ())); diff --git a/ACE/tests/Multicast_Test.cpp b/ACE/tests/Multicast_Test.cpp index 53015f1895b..251f2eb655d 100644 --- a/ACE/tests/Multicast_Test.cpp +++ b/ACE/tests/Multicast_Test.cpp @@ -602,7 +602,7 @@ MCT_Event_Handler::handle_input (ACE_HANDLE /*handle*/) ACE_DEBUG ((LM_ERROR, ACE_TEXT ("MCT_Event_Handler::handle_input - ") ACE_TEXT ("Received dgram for a group we didn't join ") - ACE_TEXT ("(%s) \n"), + ACE_TEXT ("(%s)\n"), buf)); } return 0; @@ -762,7 +762,7 @@ int send_dgram (ACE_SOCK_Dgram &socket, ACE_INET_Addr addr, int done = 0) ACE_OS::sprintf (buf, "%s/%d", address, port); if (socket.send (buf, ACE_OS::strlen (buf),addr) == -1) - ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("Send to %s, %p\n"), + ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("Send to %C, %p\n"), address, ACE_TEXT ("send_dgram - error calling send on ") ACE_TEXT ("ACE_SOCK_Dgram.")), -1); diff --git a/ACE/tests/Multicast_Test_IPV6.cpp b/ACE/tests/Multicast_Test_IPV6.cpp index 337d3a43b5c..854d1713cad 100644 --- a/ACE/tests/Multicast_Test_IPV6.cpp +++ b/ACE/tests/Multicast_Test_IPV6.cpp @@ -614,7 +614,7 @@ MCT_Event_Handler::handle_input (ACE_HANDLE /*handle*/) ACE_DEBUG ((LM_ERROR, ACE_TEXT ("MCT_Event_Handler::handle_input - ") ACE_TEXT ("Received dgram for a group we didn't join ") - ACE_TEXT ("(%s) \n"), + ACE_TEXT ("(%s)\n"), buf)); } return 0; diff --git a/ACE/tests/Naming_Test.cpp b/ACE/tests/Naming_Test.cpp index 1a905291184..f4f624a8c63 100644 --- a/ACE/tests/Naming_Test.cpp +++ b/ACE/tests/Naming_Test.cpp @@ -49,7 +49,7 @@ print_time (ACE_Profile_Timer &timer, timer.stop (); timer.elapsed_time (et); - ACE_DEBUG ((LM_DEBUG, ACE_TEXT (" ***** %C ***** \n"), test)); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT (" ***** %C ***** \n"), test)); ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("real time = %f secs, user time = %f secs, system time = %f secs\n"), et.real_time, et.user_time, et.system_time)); @@ -227,9 +227,9 @@ run_main (int argc, ACE_TCHAR *argv[]) # if defined (linux) && defined (__x86_64__) name_options->base_address ((char*)0x3c00000000); #endif - int unicode = 0; + bool unicode = false; #if (defined (ACE_WIN32) && defined (ACE_USES_WCHAR)) - unicode = 1; + unicode = true; #endif /* ACE_WIN32 && ACE_USES_WCHAR */ if (unicode && name_options->use_registry () == 1) { @@ -238,24 +238,28 @@ run_main (int argc, ACE_TCHAR *argv[]) } else { + const ACE_TCHAR* pname = ACE::basename (name_options->process_name (), + ACE_DIRECTORY_SEPARATOR_CHAR); // Allow the user to determine where the context file will be // located just in case the current directory is not suitable for // locking. We don't just set namespace_dir () on name_options // because that is not sufficient to work around locking problems // for Tru64 when the current directory is NFS mounted from a // system that does not properly support locking. - const char* temp_envs[] = { "TMPDIR", "TEMP", "TMP", 0 }; - for(const char** temp_env = temp_envs; *temp_env != 0; ++temp_env) + ACE_TCHAR temp_dir [MAXPATHLEN]; + if (ACE::get_temp_dir (temp_dir, MAXPATHLEN - 15) == -1) + // -15 for ace-file-XXXXXX { - char* temp_dir = ACE_OS::getenv(*temp_env); - if (temp_dir != 0) - { - ACE_OS::chdir (temp_dir); - break; - } + ACE_ERROR_RETURN ((LM_ERROR, + ACE_TEXT ("Temporary path too long, ") + ACE_TEXT ("defaulting to current directory\n")), + -1); + } + else + { + ACE_OS::chdir (temp_dir); } - ACE_OS::strcpy (temp_file, ACE::basename (name_options->process_name (), - ACE_DIRECTORY_SEPARATOR_CHAR)); + ACE_OS::strcpy (temp_file, pname); ACE_OS::strcat (temp_file, ACE_TEXT ("XXXXXX")); // Set the database name using mktemp to generate a unique file name diff --git a/ACE/tests/Network_Adapters_Test.cpp b/ACE/tests/Network_Adapters_Test.cpp index 0cecac17e20..d1488160643 100644 --- a/ACE/tests/Network_Adapters_Test.cpp +++ b/ACE/tests/Network_Adapters_Test.cpp @@ -32,15 +32,14 @@ #include "ace/Reactor.h" #include "ace/Timer_Queue.h" #include "ace/OS_NS_string.h" +#include "ace/OS_NS_signal.h" #include "Network_Adapters_Test.h" - ACE_RCSID (tests, Network_Adapters_Test, "$Id$") - /** * There are two major uses of the functionality: * @@ -145,12 +144,12 @@ Echo_Handler::open (ACE_Reactor * const reactor, if (this->reactor ()) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("(%P|%t) Echo_Handler::open - failed: ") - ACE_TEXT ("reactor is already set. \n")), + ACE_TEXT ("reactor is already set.\n")), -1); if (!reactor) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("(%P|%t) Echo_Handler::open - failed : ") - ACE_TEXT ("NULL pointer to reactor provided. \n")), + ACE_TEXT ("NULL pointer to reactor provided.\n")), -1); this->reactor (reactor); @@ -821,7 +820,7 @@ Repeats_Handler::handle_timeout (ACE_Time_Value const &, this->counter_++ ; if (one_button_test && this->counter_ > 3) { - ::raise (SIGINT); + ACE_OS::raise (SIGINT); } if (this->check_handler_) { @@ -848,7 +847,7 @@ extern "C" } #endif /* #if defined (ACE_HAS_SIG_C_FUNC) */ -#if defined (ACE_WIN32) +#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE) BOOL CtrlHandler(DWORD fdwCtrlType) { switch (fdwCtrlType) @@ -858,7 +857,7 @@ BOOL CtrlHandler(DWORD fdwCtrlType) case CTRL_SHUTDOWN_EVENT: case CTRL_CLOSE_EVENT: case CTRL_LOGOFF_EVENT: - ::raise (SIGINT); + ACE_OS::raise (SIGINT); return TRUE; // Pass other signals to the next handler. @@ -1025,7 +1024,9 @@ run_main (int argc, ACE_TCHAR *argv[]) ACE_START_TEST (ACE_TEXT ("Network_Adapters_Test")); #if defined (ACE_WIN32) +#if !defined (ACE_HAS_WINCE) SetConsoleCtrlHandler((PHANDLER_ROUTINE) CtrlHandler, TRUE); +#endif #else /* #if defined (ACE_WIN32) */ // Set a handler for SIGSEGV signal to call for abort. ACE_Sig_Action sa1 ((ACE_SignalHandler) sigsegv_handler, SIGSEGV); diff --git a/ACE/tests/Notify_Performance_Test.cpp b/ACE/tests/Notify_Performance_Test.cpp index 9f7d71d9207..673bb7bee46 100644 --- a/ACE/tests/Notify_Performance_Test.cpp +++ b/ACE/tests/Notify_Performance_Test.cpp @@ -102,9 +102,9 @@ create_reactor (void) if (opt_wfmo_reactor) { -#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE) +#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 == 1) ACE_NEW (impl, ACE_WFMO_Reactor); -#endif /* ACE_WIN32 */ +#endif /* ACE_HAS_WINSOCK2 == 1 */ } else if (opt_select_reactor) { @@ -168,7 +168,7 @@ run_main (int argc, ACE_TCHAR *argv[]) //FUZZ: disable check_for_lack_ACE_OS ACE_Get_Opt getopt (argc, argv, ACE_TEXT ("pswdc:l:")); - + for (int c; (c = getopt ()) != -1; ) switch (c) { diff --git a/ACE/tests/OS_Test.cpp b/ACE/tests/OS_Test.cpp index 3189a56e7f3..632685a96bc 100644 --- a/ACE/tests/OS_Test.cpp +++ b/ACE/tests/OS_Test.cpp @@ -24,6 +24,7 @@ #include "ace/OS_NS_sys_stat.h" #include "ace/OS_NS_unistd.h" #include "ace/OS_NS_errno.h" +#include "ace/OS_NS_ctype.h" ACE_RCSID(tests, OS_Test, "$Id$") @@ -33,6 +34,12 @@ ACE_RCSID(tests, OS_Test, "$Id$") ? static_cast<void>(0) \ : ACE_VERSIONED_NAMESPACE_NAME::__ace_assert(__FILE__, __LINE__, ACE_TEXT_CHAR_TO_TCHAR (#X))) +// Simple helper to avoid comparing floating point values with == +template <typename T> bool is_equal (const T& a, const T& b) +{ + return !((a < b) || (a > b)); +} + // Test ACE_OS::access() to be sure a file's existence is correctly noted. int access_test (void) @@ -99,7 +106,7 @@ rename_test (void) } ACE_OS::fclose (f); -#if defined (ACE_WIN32) && defined (ACE_LACKS_WIN32_MOVEFILEEX) +#if defined (ACE_WIN32) && defined (ACE_LACKS_WIN32_MOVEFILEEX) || defined (ACE_HAS_WINCE) // Can't rename if new_file exists already. ACE_OS::unlink (new_file); #endif @@ -990,6 +997,163 @@ pagesize_test (void) } int +ace_ctype_test (void) +{ + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("Testing ace ctype methods\n"))); + + int retval = 0; + int result = ACE_OS::ace_isprint (ACE_TEXT('\t')); + if (result != 0) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Error, ace_isprint should return 0 for tab ") + ACE_TEXT ("but it returned %d\n"), result)); + ++retval; + } + result = ACE_OS::ace_isblank (ACE_TEXT('\t')); + if (result == 0) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Error, ace_isblank should return != 0 for tab ") + ACE_TEXT ("but it returned %d\n"), result)); + ++retval; + } + result = ACE_OS::ace_isblank (ACE_TEXT(' ')); + if (result == 0) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Error, ace_isblank should return != 0 for space ") + ACE_TEXT ("but it returned %d\n"), result)); + ++retval; + } + result = ACE_OS::ace_isalpha (ACE_TEXT('\t')); + if (result != 0) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Error, ace_isalpha should return 0 for tab ") + ACE_TEXT ("but it returned %d\n"), result)); + ++retval; + } + result = ACE_OS::ace_isupper (ACE_TEXT('\t')); + if (result != 0) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Error, ace_isupper should return 0 for tab ") + ACE_TEXT ("but it returned %d\n"), result)); + ++retval; + } + result = ACE_OS::ace_islower (ACE_TEXT('\t')); + if (result != 0) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Error, ace_islower should return 0 for tab ") + ACE_TEXT ("but it returned %d\n"), result)); + ++retval; + } + result = ACE_OS::ace_isdigit (ACE_TEXT('\t')); + if (result != 0) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Error, ace_isdigit should return 0 for tab ") + ACE_TEXT ("but it returned %d\n"), result)); + ++retval; + } + result = ACE_OS::ace_isxdigit (ACE_TEXT('\t')); + if (result != 0) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Error, ace_isxdigit should return 0 for tab ") + ACE_TEXT ("but it returned %d\n"), result)); + ++retval; + } + result = ACE_OS::ace_isspace (ACE_TEXT('\t')); + if (result == 0) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Error, ace_isspace should return != 0 for tab ") + ACE_TEXT ("but it returned %d\n"), result)); + ++retval; + } + result = ACE_OS::ace_ispunct (ACE_TEXT('\t')); + if (result != 0) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Error, ace_ispunct should return 0 for tab ") + ACE_TEXT ("but it returned %d\n"), result)); + ++retval; + } + result = ACE_OS::ace_isalnum (ACE_TEXT('\t')); + if (result != 0) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Error, ace_isalnum should return 0 for tab ") + ACE_TEXT ("but it returned %d\n"), result)); + ++retval; + } + result = ACE_OS::ace_isgraph (ACE_TEXT('\t')); + if (result != 0) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Error, ace_isgraph should return 0 for tab ") + ACE_TEXT ("but it returned %d\n"), result)); + ++retval; + } + result = ACE_OS::ace_iscntrl (ACE_TEXT('\t')); + if (result == 0) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Error, ace_iscntrl should return != 0 for tab ") + ACE_TEXT ("but it returned %d\n"), result)); + ++retval; + } + result = ACE_OS::ace_isascii (ACE_TEXT('\t')); + if (result == 0) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Error, ace_isascii should return != 0 for tab ") + ACE_TEXT ("but it returned %d\n"), result)); + ++retval; + } + + return 0; +} + +int +ceil_test (void) +{ + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("Testing ceil method\n"))); + + double values[] = {-2.5, -1.5, 1.5, 2.5}; + double results[] = {-2.0, -1.0, 2.0, 3.0}; + double result = 0.0; + int error_count = 0; + + for (size_t i = 0 ; i < sizeof (values) / sizeof (double) ; i++) + { + result = ACE_OS::ceil (values [i]); + if (!is_equal(result, results[i])) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("ceil error: input %.1F, output %1F, expected %1F\n"), values [i], result, results [i])); + error_count++; + } + } + + return error_count; +} + +int +floor_test (void) +{ + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("Testing floor method\n"))); + + double values[] = {-2.5, -1.5, 1.5, 2.5}; + double results[] = {-3.0, -2.0, 1.0, 2.0}; + double result = 0.0; + int error_count = 0; + + for (size_t i = 0 ; i < sizeof (values) / sizeof (double) ; i++) + { + result = ACE_OS::floor (values [i]); + if (!is_equal(result, results[i])) + { + ACE_ERROR ((LM_ERROR, ACE_TEXT ("floor error: input %.1F, output %1F, expected %1F\n"), values [i], result, results [i])); + error_count++; + } + } + + return error_count; +} + +int log2_test (void) { ACE_DEBUG ((LM_DEBUG, @@ -1047,12 +1211,21 @@ run_main (int, ACE_TCHAR *[]) if ((result = pagesize_test ()) != 0) status = result; + if ((result = ceil_test ()) != 0) + status = result; + + if ((result = floor_test ()) != 0) + status = result; + if ((result = log2_test ()) != 0) status = result; if ((result = last_error_test ()) != 0) status = result; + if ((result = ace_ctype_test ()) != 0) + status = result; + ACE_END_TEST; return status; } diff --git a/ACE/tests/OrdMultiSet_Test.cpp b/ACE/tests/OrdMultiSet_Test.cpp index a87869d7438..279fd8c5aef 100644 --- a/ACE/tests/OrdMultiSet_Test.cpp +++ b/ACE/tests/OrdMultiSet_Test.cpp @@ -53,89 +53,89 @@ run_main (int, ACE_TCHAR *[]) { // No action. } - + while (set.remove (20) == 0) { // No action. } // Should still have 39 elements in the set. - ACE_ASSERT (set.is_empty () == 0); - ACE_ASSERT (set.size () == 39); + ACE_TEST_ASSERT (set.is_empty () == 0); + ACE_TEST_ASSERT (set.size () == 39); // Iterate forward through the range we created: should be one of // each. iter.first (); - + for (i = -19; i <= 19; ++i) { // we should still be in the set - ACE_ASSERT (iter.done () == 0); + ACE_TEST_ASSERT (iter.done () == 0); // make sure the current element is what we expect iter.next (ptr); - ACE_ASSERT (ptr != 0); - ACE_ASSERT (*ptr == i); + ACE_TEST_ASSERT (ptr != 0); + ACE_TEST_ASSERT (*ptr == i); // move to the next element in the set iter.advance (); } // We should have iterated through the entire set. - ACE_ASSERT (iter.done () != 0); + ACE_TEST_ASSERT (iter.done () != 0); // Iterate backward through the range we created: should be one of // each. iter.last (); - + for (i = 19; i >= -19; --i) { // We should still be in the set. - ACE_ASSERT (iter.done () == 0); + ACE_TEST_ASSERT (iter.done () == 0); // Make sure the current element is what we expect. int *ptr = 0; iter.next (ptr); - ACE_ASSERT (ptr != 0); - ACE_ASSERT (*ptr == i); + ACE_TEST_ASSERT (ptr != 0); + ACE_TEST_ASSERT (*ptr == i); // Move to the previous element in the set. iter.retreat (); } // We should have iterated through the entire set. - ACE_ASSERT (iter.done () != 0); + ACE_TEST_ASSERT (iter.done () != 0); // Iterate through the set and use the operator* to get the element iter.first (); - + for (i = -19; i <= 19; ++i) { // we should still be in the set - ACE_ASSERT (iter.done () == 0); + ACE_TEST_ASSERT (iter.done () == 0); // make sure the current element is what we expect int& l = *iter; - ACE_ASSERT (l == i); + ACE_TEST_ASSERT (l == i); // move to the next element in the set iter.advance (); } // We should have iterated through the entire set. - ACE_ASSERT (iter.done () != 0); + ACE_TEST_ASSERT (iter.done () != 0); // Clear the set, restart the iterator, and make sure the iterator // is out of range at both ends, the set is empty, and a subsequent // advance or retreat on an out of range iterator does not cause // problems set.reset (); - ACE_ASSERT (set.is_empty () != 0); + ACE_TEST_ASSERT (set.is_empty () != 0); iter.first (); - ACE_ASSERT (iter.done () != 0); + ACE_TEST_ASSERT (iter.done () != 0); iter.retreat (); iter.last (); - ACE_ASSERT (iter.done () != 0); + ACE_TEST_ASSERT (iter.done () != 0); iter.advance (); // Put in a bunch of ints in various relative positions, using an @@ -163,12 +163,12 @@ run_main (int, ACE_TCHAR *[]) { // No action. } - + while (set.remove (202) == 0) { // No action. } - + while (set.remove (203) == 0) { // No action. @@ -179,67 +179,67 @@ run_main (int, ACE_TCHAR *[]) iter.last (); iter.advance (); set.find (203, iter); - ACE_ASSERT (iter.done () != 0); + ACE_TEST_ASSERT (iter.done () != 0); set.find (202, iter); - ACE_ASSERT (iter.done () != 0); + ACE_TEST_ASSERT (iter.done () != 0); set.find (204, iter); - ACE_ASSERT (iter.done () != 0); + ACE_TEST_ASSERT (iter.done () != 0); // Make sure the other elements can be found. set.find (205, iter); - ACE_ASSERT (iter.done () == 0); + ACE_TEST_ASSERT (iter.done () == 0); iter.next (ptr); - ACE_ASSERT (ptr != 0); - ACE_ASSERT (*ptr == 205); + ACE_TEST_ASSERT (ptr != 0); + ACE_TEST_ASSERT (*ptr == 205); set.find (201, iter); - ACE_ASSERT (iter.done () == 0); + ACE_TEST_ASSERT (iter.done () == 0); iter.next (ptr); - ACE_ASSERT (ptr != 0); - ACE_ASSERT (*ptr == 201); + ACE_TEST_ASSERT (ptr != 0); + ACE_TEST_ASSERT (*ptr == 201); // Finally, iterate through the set and make sure its contents are // correct (one 201 and five 205s). iter.first (); - ACE_ASSERT (iter.done () == 0); + ACE_TEST_ASSERT (iter.done () == 0); iter.next (ptr); - ACE_ASSERT (ptr != 0); - ACE_ASSERT (*ptr == 201); + ACE_TEST_ASSERT (ptr != 0); + ACE_TEST_ASSERT (*ptr == 201); iter.advance (); for (i = 1; i <= 5; ++i) { // Should be in the set, able to access the element, value // should be 205 - ACE_ASSERT (iter.done () == 0); + ACE_TEST_ASSERT (iter.done () == 0); iter.next (ptr); - ACE_ASSERT (ptr != 0); - ACE_ASSERT (*ptr == 205); + ACE_TEST_ASSERT (ptr != 0); + ACE_TEST_ASSERT (*ptr == 205); // Move to the next element in the set. iter.advance (); } // Should not be anything else in the set. - ACE_ASSERT (iter.done () != 0); + ACE_TEST_ASSERT (iter.done () != 0); // remove the rest while (set.remove (205) == 0) { // No action. } - + while (set.remove (201) == 0) { // No action. } // Should have no more elements in the set. - ACE_ASSERT (set.is_empty () != 0); - ACE_ASSERT (set.size () == 0); + ACE_TEST_ASSERT (set.is_empty () != 0); + ACE_TEST_ASSERT (set.size () == 0); iter.first (); - ACE_ASSERT (iter.done () != 0); + ACE_TEST_ASSERT (iter.done () != 0); iter.last (); - ACE_ASSERT (iter.done () != 0); + ACE_TEST_ASSERT (iter.done () != 0); ACE_END_TEST; diff --git a/ACE/tests/Pipe_Test.cpp b/ACE/tests/Pipe_Test.cpp index 65f04bc4440..a3d2175a009 100644 --- a/ACE/tests/Pipe_Test.cpp +++ b/ACE/tests/Pipe_Test.cpp @@ -42,7 +42,7 @@ print_usage_and_die (void) { ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("usage: %n [-d (don't close pipes)] ") - ACE_TEXT ("[-c (child process)] [-i (iterations)] \n"))); + ACE_TEXT ("[-c (child process)] [-i (iterations)]\n"))); ACE_OS::exit (1); } @@ -121,7 +121,7 @@ run_main (int argc, ACE_TCHAR *argv[]) # endif /* ACE_WIN32 || !ACE_USES_WCHAR */ ACE_Process_Options options; options.command_line (cmdline_fmt, - argv[0], + argc > 0 ? argv[0] : ACE_TEXT ("Pipe_Test"), close_pipe == 0 ? ACE_TEXT (" -d") : ACE_TEXT ("")); ACE_exitcode status = 0; diff --git a/ACE/tests/Priority_Task_Test.cpp b/ACE/tests/Priority_Task_Test.cpp index 3ae0144dcd7..45f9f41e6ae 100644 --- a/ACE/tests/Priority_Task_Test.cpp +++ b/ACE/tests/Priority_Task_Test.cpp @@ -113,13 +113,11 @@ Priority_Task::open (void *arg) 1, this->priority_) == -1) { -#if !defined (ACE_HAS_WINCE) if (ACE_OS::last_error () == EPERM) ACE_ERROR_RETURN ((LM_INFO, ACE_TEXT ("Insufficient privilege to run this test.\n")), -1); else -#endif // ACE_HAS_WINCE ACE_DEBUG ((LM_ERROR, ACE_TEXT ("(%t) task activation at priority %d failed, ") ACE_TEXT ("exiting!\n%a"), diff --git a/ACE/tests/Proactor_UDP_Test.cpp b/ACE/tests/Proactor_UDP_Test.cpp index 36783918716..857860eefa3 100644 --- a/ACE/tests/Proactor_UDP_Test.cpp +++ b/ACE/tests/Proactor_UDP_Test.cpp @@ -457,7 +457,9 @@ public: private: int initiate_read (void); int initiate_write (void); + // FUZZ: disable check_for_lack_ACE_OS void close (void); + // FUZZ: enable check_for_lack_ACE_OS TestData *tester_; int id_; @@ -746,11 +748,18 @@ struct Session_Data // Master is the server-side receiver of session establishment requests. // For each "start" dgram received, instantiates a new Server object, // indicating the addressing info for the client. -// When the Master is destroyed, it stops establishing sessions. +// Master is initialized with a count of the number of expected sessions. After +// this number are set up, Master will stop listening for session requests. +// This is a bit fragile but is necessary because on HP-UX, AIX, et al., it +// is impossible to close/cancel a socket with an outstanding UDP recieve +// (on AIX the process is so wedged the machine needs to be rebooted to +// clear it!). So, this bit of messiness is necessary for portability. +// When the Master is destroyed, it will try to stop establishing sessions +// but this will only work on Windows. class Master : public ACE_Handler { public: - Master (TestData *tester, const ACE_INET_Addr &recv_addr); + Master (TestData *tester, const ACE_INET_Addr &recv_addr, int expected); ~Master (void); // Called when dgram receive operation completes. @@ -764,11 +773,17 @@ private: ACE_SOCK_Dgram sock_; ACE_Asynch_Read_Dgram rd_; ACE_Message_Block *mb_; + ACE_Atomic_Op<ACE_SYNCH_MUTEX, int> sessions_expected_; + volatile bool recv_in_progress_; }; // ************************************************************* -Master::Master (TestData *tester, const ACE_INET_Addr &recv_addr) - : tester_ (tester), recv_addr_ (recv_addr), mb_ (0) +Master::Master (TestData *tester, const ACE_INET_Addr &recv_addr, int expected) + : tester_ (tester), + recv_addr_ (recv_addr), + mb_ (0), + sessions_expected_ (expected), + recv_in_progress_ (false) { if (this->sock_.open (recv_addr) == -1) ACE_ERROR ((LM_ERROR, ACE_TEXT ("Master socket %p\n"), ACE_TEXT ("open"))); @@ -785,8 +800,10 @@ Master::Master (TestData *tester, const ACE_INET_Addr &recv_addr) Master::~Master (void) { - this->rd_.cancel (); + if (this->recv_in_progress_) + this->rd_.cancel (); this->sock_.close (); + if (this->mb_ != 0) { this->mb_->release (); @@ -797,6 +814,8 @@ Master::~Master (void) void Master::handle_read_dgram (const ACE_Asynch_Read_Dgram::Result &result) { + bool restart_recv = true; + // We should only receive Start datagrams with valid addresses to reply to. if (result.success ()) { @@ -861,6 +880,12 @@ Master::handle_read_dgram (const ACE_Asynch_Read_Dgram::Result &result) server->go (sock.get_handle (), client_addr); } } + if (--this->sessions_expected_ == 0) + { + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("All expected sessions are up\n"))); + restart_recv = false; + } } else { @@ -904,6 +929,8 @@ Master::start_recv (void) this->mb_->reset (); if (this->rd_.recv (this->mb_, unused, 0) == -1) ACE_ERROR ((LM_ERROR, ACE_TEXT ("(%t) Master %p\n"), ACE_TEXT ("recv"))); + else + this->recv_in_progress_ = true; } // *************************************************** @@ -2126,7 +2153,7 @@ run_main (int argc, ACE_TCHAR *argv[]) // on IPv6 as well as IPv4, you need to do some work on passing the // Session_Data address differently. ACE_INET_Addr addr (port, ACE_LOCALHOST, AF_INET); - Master master (&test, addr); + Master master (&test, addr, clients); Connector connector (&test); int rc = 0; diff --git a/ACE/tests/Process_Env_Test.cpp b/ACE/tests/Process_Env_Test.cpp index f922abdfab0..4b0ea673768 100644 --- a/ACE/tests/Process_Env_Test.cpp +++ b/ACE/tests/Process_Env_Test.cpp @@ -37,7 +37,7 @@ void create_large_env (setenvfn_t setenv, void *ctx) { char name[2] = { 'A' + i, '\0' }; char value[varsize]; - memset (value, 'R', varsize); + ACE_OS::memset (value, 'R', varsize); value[varsize - 1] = '\0'; setenv (ACE_TEXT_CHAR_TO_TCHAR (name), ACE_TEXT_CHAR_TO_TCHAR (value), diff --git a/ACE/tests/Process_Manager_Test.cpp b/ACE/tests/Process_Manager_Test.cpp index e433098c906..f42c7d1f006 100644 --- a/ACE/tests/Process_Manager_Test.cpp +++ b/ACE/tests/Process_Manager_Test.cpp @@ -40,6 +40,9 @@ ACE_RCSID(tests, Process_Manager_Test, "Process_Manager_Test.cpp,v 4.11 1999/09/02 04:36:30 schmidt Exp") static u_int debug_test = 0; +#if defined (ACE_HAS_WIN32_PRIORITY_CLASS) +static u_int process_id = 0; +#endif class Exit_Handler : public ACE_Event_Handler { @@ -57,7 +60,7 @@ public: virtual int handle_exit (ACE_Process *proc) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P) Exit_Handler(%s) got %d: %d\n"), + ACE_TEXT ("(%P) Exit_Handler(%C) got %d: %d\n"), msg_, int (proc->getpid ()), int (proc->exit_code ()) )); @@ -79,8 +82,10 @@ usage (const ACE_TCHAR *argv0) static pid_t spawn_child (const ACE_TCHAR *argv0, ACE_Process_Manager &mgr, - int sleep_time = 0) + int sleep_time, + int my_process_id) { + #if defined (ACE_WIN32) const ACE_TCHAR *cmdline_format = ACE_TEXT("\"%s\" %s %d"); #elif !defined (ACE_USES_WCHAR) @@ -90,17 +95,59 @@ const ACE_TCHAR *cmdline_format = ACE_TEXT (".") ACE_DIRECTORY_SEPARATOR_STR ACE #endif ACE_Process_Options opts; + ACE_TCHAR prio[64]; + ACE_TCHAR cmd[16]; + debug_test ? ACE_OS::sprintf (cmd, ACE_TEXT ("-d")) : + ACE_OS::sprintf (cmd, ACE_TEXT ("")); + +#if defined (ACE_HAS_WIN32_PRIORITY_CLASS) + if (my_process_id == 1) + { + opts.creation_flags (ABOVE_NORMAL_PRIORITY_CLASS); + ACE_OS::sprintf (prio, ACE_TEXT("and priority 'above normal'")); + } + else if (my_process_id == 2) + { + opts.creation_flags (BELOW_NORMAL_PRIORITY_CLASS); + ACE_OS::sprintf (prio, ACE_TEXT("and priority 'below normal'")); + } + else if (my_process_id == 3) + { + opts.creation_flags (IDLE_PRIORITY_CLASS); + ACE_OS::sprintf (prio, ACE_TEXT("and priority 'idle'")); + } + else if (my_process_id == 4) + { + opts.creation_flags (HIGH_PRIORITY_CLASS); + ACE_OS::sprintf (prio, ACE_TEXT("and priority 'high'")); + } + else if (my_process_id == 5) + { + opts.creation_flags (NORMAL_PRIORITY_CLASS); + ACE_OS::sprintf (prio, ACE_TEXT("and priority 'normal'")); + } + else + ACE_OS::sprintf(prio, ""); + + ACE_TCHAR pd [16]; + ACE_OS::sprintf (pd, ACE_TEXT (" -p %d"), my_process_id); + ACE_OS::strcat (cmd, pd); +#else + ACE_UNUSED_ARG (my_process_id); + ACE_OS::sprintf(prio, ACE_TEXT("")); +#endif + opts.command_line (cmdline_format, argv0, - debug_test ? ACE_TEXT ("-d") : ACE_TEXT (""), + cmd, sleep_time); - pid_t result = mgr.spawn (opts); + pid_t result = mgr.spawn (opts); if (result != ACE_INVALID_PID) ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P) spawned child: pid %d time %d\n"), - int (result), sleep_time)); + ACE_TEXT ("(%P) spawned child: pid %d time %d %s\n"), + int (result), sleep_time, prio)); else ACE_ERROR ((LM_ERROR, ACE_TEXT ("%p\n"), ACE_TEXT ("spawn failed"))); @@ -121,7 +168,9 @@ public: mgr_ (mgr), sleep_time_ (sleep_time) { } + // FUZZ: disable check_for_lack_ACE_OS int open (void*) + // FUZZ: enable check_for_lack_ACE_OS { char tmp[10]; order += ACE_OS::itoa (sleep_time_, tmp, 10); @@ -136,7 +185,8 @@ public: ACE_exitcode exitcode; pid_t my_child = spawn_child (argv0_, mgr_, - sleep_time_); + sleep_time_, + 0); result = mgr_.wait (my_child, &exitcode); if (result != my_child) @@ -159,7 +209,9 @@ public: return 0; } + // FUZZ: disable check_for_lack_ACE_OS int close (u_long) + // FUZZ: enable check_for_lack_ACE_OS { running_tasks--; return 0; @@ -193,23 +245,51 @@ command_line_test (void) return result; } +#if defined (ACE_HAS_WIN32_PRIORITY_CLASS) +void +check_process_priority (DWORD priority) +{ + if ((process_id == 0) || + (process_id == 1 && priority == ABOVE_NORMAL_PRIORITY_CLASS) || + (process_id == 2 && priority == BELOW_NORMAL_PRIORITY_CLASS) || + (process_id == 3 && priority == IDLE_PRIORITY_CLASS) || + (process_id == 4 && priority == HIGH_PRIORITY_CLASS) || + (process_id == 5 && priority == NORMAL_PRIORITY_CLASS) || + (process_id == 7 && priority == NORMAL_PRIORITY_CLASS)) + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Process ID (%d) and priority (%d) match\n"), + process_id, priority)); + else + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Given process priority (%d) and real priority (%d) differ.\n"), + process_id, priority)); +} +#endif + int run_main (int argc, ACE_TCHAR *argv[]) { - ACE_Get_Opt args (argc, argv, ACE_TEXT ("d")); - - for (int arg = args (); arg != EOF; arg = args ()) - switch (arg) - { - case 'd': - debug_test = 1u; - break; - default: - usage (argv[0]); - break; - } +#if defined (ACE_HAS_WIN32_PRIORITY_CLASS) + ACE_Get_Opt get_opt (argc, argv, ACE_TEXT ("dp:")); +#else + ACE_Get_Opt get_opt (argc, argv, ACE_TEXT ("d")); +#endif + int opt; + while ((opt = get_opt ()) != EOF) + { + switch (opt) + { + case 'd': + debug_test = 1u; + break; +#if defined (ACE_HAS_WIN32_PRIORITY_CLASS) + case 'p': + process_id = ACE_OS::atoi (get_opt.opt_arg ()); + break; +#endif + } + } - if (args.opt_ind () == argc - 1) + if (get_opt.opt_ind () == argc - 1) { // child process: sleep & exit ACE_TCHAR lognm[MAXPATHLEN]; @@ -217,18 +297,41 @@ run_main (int argc, ACE_TCHAR *argv[]) ACE_OS::sprintf(lognm, ACE_TEXT ("Process_Manager_Test-child-%d"), mypid); ACE_START_TEST (lognm); - int secs = ACE_OS::atoi (argv[args.opt_ind ()]); + int secs = ACE_OS::atoi (argv[get_opt.opt_ind ()]); ACE_OS::sleep (secs ? secs : 1); + + ACE_TCHAR prio[64]; +#if defined (ACE_WIN32_HAS_PRIORITY_CLASS) + DWORD priority = ::GetPriorityClass (::GetCurrentProcess()); + + check_process_priority(priority); + + if (priority == ABOVE_NORMAL_PRIORITY_CLASS) + ACE_OS::sprintf (prio, ACE_TEXT("and priority 'above normal'")); + else if (priority == BELOW_NORMAL_PRIORITY_CLASS) + ACE_OS::sprintf (prio, ACE_TEXT("and priority 'below normal'")); + else if (priority == HIGH_PRIORITY_CLASS) + ACE_OS::sprintf (prio, ACE_TEXT("and priority 'high'")); + else if (priority == IDLE_PRIORITY_CLASS) + ACE_OS::sprintf (prio, ACE_TEXT("and priority 'idle'")); + else if (priority == NORMAL_PRIORITY_CLASS) + ACE_OS::sprintf (prio, ACE_TEXT("and priority 'normal'")); + else if (priority == REALTIME_PRIORITY_CLASS) + ACE_OS::sprintf (prio, ACE_TEXT("and priority 'realtime'")); +#else + ACE_OS::sprintf (prio, ACE_TEXT ("")); +#endif if (debug_test) ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("%T: pid %P about to exit with code %d\n"), - secs)); + ACE_TEXT ("%T: pid %P about to exit with code %d %s\n"), + secs, + prio)); ACE_END_LOG; return secs; } - if (args.opt_ind () != argc) // incorrect usage + if (get_opt.opt_ind () != argc) // incorrect usage usage (argv[0]); ACE_START_TEST (ACE_TEXT ("Process_Manager_Test")); @@ -249,8 +352,9 @@ run_main (int argc, ACE_TCHAR *argv[]) // -------------------------------------------------- // wait for a specific PID - pid_t child1 = spawn_child (argv[0], + pid_t child1 = spawn_child (argc > 0 ? argv[0] : ACE_TEXT ("Process_Manager_Test"), mgr, + 1, 1); result = mgr.wait (child1, &exitcode); @@ -273,12 +377,14 @@ run_main (int argc, ACE_TCHAR *argv[]) // -------------------------------------------------- // wait for a specific PID; another should finish first - pid_t child2 = spawn_child (argv[0], + pid_t child2 = spawn_child (argc > 0 ? argv[0] : ACE_TEXT ("Process_Manager_Test"), mgr, - 1); - pid_t child3 = spawn_child (argv[0], + 1, + 2); + pid_t child3 = spawn_child (argc > 0 ? argv[0] : ACE_TEXT ("Process_Manager_Test"), mgr, - 4); + 4, + 3); result = mgr.wait (child3, &exitcode); @@ -322,9 +428,10 @@ run_main (int argc, ACE_TCHAR *argv[]) // Try the timed wait functions // This one shouldn't timeout: - pid_t child4 = spawn_child (argv[0], + pid_t child4 = spawn_child (argc > 0 ? argv[0] : ACE_TEXT ("Process_Manager_Test"), mgr, - 1); + 1, + 4); result = mgr.wait (0, ACE_Time_Value (4), &exitcode); if (result != child4) @@ -344,9 +451,10 @@ run_main (int argc, ACE_TCHAR *argv[]) exitcode)); // This one should timeout: - pid_t child5 = spawn_child (argv[0], + pid_t child5 = spawn_child (argc > 0 ? argv[0] : ACE_TEXT ("Process_Manager_Test"), mgr, - 4); + 4, + 5); result = mgr.wait (0, ACE_Time_Value (1), &exitcode); if (result != 0) { @@ -381,7 +489,10 @@ run_main (int argc, ACE_TCHAR *argv[]) exitcode)); // Terminate a child process and make sure we can wait for it. - pid_t child6 = spawn_child (argv[0], mgr, 5); + pid_t child6 = spawn_child (argc > 0 ? argv[0] : ACE_TEXT ("Process_Manager_Test"), + mgr, + 5, + 6); ACE_exitcode status6; if (-1 == mgr.terminate (child6)) { @@ -419,9 +530,9 @@ run_main (int argc, ACE_TCHAR *argv[]) } } - Process_Task task1 (argv[0], mgr, 3); - Process_Task task2 (argv[0], mgr, 2); - Process_Task task3 (argv[0], mgr, 1); + Process_Task task1 (argc > 0 ? argv[0] : ACE_TEXT ("Process_Manager_Test"), mgr, 3); + Process_Task task2 (argc > 0 ? argv[0] : ACE_TEXT ("Process_Manager_Test"), mgr, 2); + Process_Task task3 (argc > 0 ? argv[0] : ACE_TEXT ("Process_Manager_Test"), mgr, 1); task1.open (0); task2.open (0); task3.open (0); @@ -432,14 +543,14 @@ run_main (int argc, ACE_TCHAR *argv[]) ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%P) still running tasks\n"))); } - ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P) result: '%s'\n"), + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("(%P) result: '%C'\n"), order.c_str ())); if (order != "321123") { ACE_ERROR ((LM_ERROR, - ACE_TEXT ("(%P) wrong order of spawns ('%s', should be '321123')\n"), + ACE_TEXT ("(%P) wrong order of spawns ('%C', should be '321123')\n"), order.c_str ())); test_status = 1; } @@ -450,12 +561,14 @@ run_main (int argc, ACE_TCHAR *argv[]) mgr.open (ACE_Process_Manager::DEFAULT_SIZE, ACE_Reactor::instance ()); - pid_t child7 = spawn_child (argv[0], + pid_t child7 = spawn_child (argc > 0 ? argv[0] : ACE_TEXT ("Process_Manager_Test"), mgr, - 5); - /* pid_t child8 = */ spawn_child (argv[0], + 5, + 7); + /* pid_t child8 = */ spawn_child (argc > 0 ? argv[0] : ACE_TEXT ("Process_Manager_Test"), mgr, - 6); + 6, + 0); mgr.register_handler (new Exit_Handler ("specific"), child7); diff --git a/ACE/tests/Process_Manual_Event_Test.cpp b/ACE/tests/Process_Manual_Event_Test.cpp index 7608ecc5fc2..85be15358fb 100644 --- a/ACE/tests/Process_Manual_Event_Test.cpp +++ b/ACE/tests/Process_Manual_Event_Test.cpp @@ -195,6 +195,7 @@ run_main (int argc, ACE_TCHAR *argv[]) // On AIX, this is done by removing the shared memory objects before // trying to run. # if defined (AIX) + // FUZZ: disable check_for_lack_ACE_OS if (::shm_unlink (event_ping_name) != 0 && errno != ENOENT) ACE_ERROR ((LM_ERROR, ACE_TEXT ("(%P) event_ping %p\n"), @@ -203,6 +204,7 @@ run_main (int argc, ACE_TCHAR *argv[]) ACE_ERROR ((LM_ERROR, ACE_TEXT ("(%P) event_pong %p\n"), ACE_TEXT ("shm_unlink"))); + // FUZZ: enable check_for_lack_ACE_OS # endif /* AIX */ #if defined (ACE_WIN32) @@ -215,18 +217,21 @@ const ACE_TCHAR *cmdline_format = ACE_TEXT (".") ACE_DIRECTORY_SEPARATOR_STR ACE ACE_Process_Options options; options.command_line (cmdline_format, - argv[0], + argc > 0 ? argv[0] : ACE_TEXT ("Process_Manual_Event_Test"), iterations); // Spawn a child process that will contend for the // lock. ACE_Process child; // Spawn the child process. - int result = child.spawn (options); - ACE_ASSERT (result != -1); - ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("Parent spawned child process with pid = %d.\n"), - child.getpid ())); + pid_t result = child.spawn (options); + if (result != ACE_INVALID_PID) + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("Parent spawned child process with pid = %d.\n"), + child.getpid ())); + else + ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("%p\n"), + ACE_TEXT ("spawn failed")), 1); // start test acquire_release (); diff --git a/ACE/tests/Process_Mutex_Test.cpp b/ACE/tests/Process_Mutex_Test.cpp index e70cd8adede..cb235cf904c 100644 --- a/ACE/tests/Process_Mutex_Test.cpp +++ b/ACE/tests/Process_Mutex_Test.cpp @@ -160,7 +160,7 @@ run_main (int argc, ACE_TCHAR *argv[]) static const ACE_TCHAR* format = ACE_TEXT ("%s -c -n %s%s"); #endif /* !ACE_WIN32 && ACE_USES_WCHAR */ ACE_Process_Options options; - options.command_line (format, argv[0], mutex_name, + options.command_line (format, argc > 0 ? argv[0] : ACE_TEXT ("Process_Mutex_Test"), mutex_name, release_mutex == 0 ? ACE_TEXT (" -d") : ACE_TEXT ("")); // Spawn <n_processes> child processes that will contend for the diff --git a/ACE/tests/Process_Strategy_Test.cpp b/ACE/tests/Process_Strategy_Test.cpp index f7d2d35bc00..92a22214c74 100644 --- a/ACE/tests/Process_Strategy_Test.cpp +++ b/ACE/tests/Process_Strategy_Test.cpp @@ -120,7 +120,7 @@ Process_Strategy::activate_svc_handler (Counting_Service *svc_handler, void *arg) { // Call down to the base class - int result = + int const result = ACE_Process_Strategy<Counting_Service>::activate_svc_handler (svc_handler, arg); // Connection is now complete @@ -163,7 +163,6 @@ Options::Options (void) Options::~Options (void) { delete this->concurrency_strategy_; - this->concurrency_strategy_ = 0; } int @@ -496,7 +495,7 @@ client (void *arg) ACE_SOCK_Connector connector; char buf[BUFSIZ]; - const char *command; + const char *command = 0; size_t command_len; size_t i; @@ -537,9 +536,9 @@ client (void *arg) ACE_TEXT ("recv")), 0); - // ACE_DEBUG ((LM_DEBUG, - // ACE_TEXT ("(%P|%t) client iteration %d, buf = %s\n"), - // i, buf)); + // ACE_DEBUG ((LM_DEBUG, + // ACE_TEXT ("(%P|%t) client iteration %d, buf = %C\n"), + // i, buf)); if (stream.close () == -1) ACE_ERROR_RETURN ((LM_ERROR, @@ -582,7 +581,13 @@ client (void *arg) ACE_TEXT ("(%P|%t) count = %d\n"), count)); // Make sure that the count is correct. - ACE_ASSERT (count == ACE_MAX_ITERATIONS); + if (count != ACE_MAX_ITERATIONS) + { + ACE_ERROR_RETURN ((LM_ERROR, + ACE_TEXT ("Error: Count invalid, has %d expected %d\n"), + count, ACE_MAX_ITERATIONS), + 0); + } } if (stream.close () == -1) diff --git a/ACE/tests/Process_Test.cpp b/ACE/tests/Process_Test.cpp new file mode 100644 index 00000000000..11c2e22a40e --- /dev/null +++ b/ACE/tests/Process_Test.cpp @@ -0,0 +1,222 @@ +// $Id$ + +// ============================================================================ +// +// = LIBRARY +// tests +// +// = FILENAME +// Process_Test.cpp +// +// = DESCRIPTION +// Tests ACE_Process file handle inheritance for UNIX-like systems +// +// = AUTHOR +// Christian Fromme <kaner@strace.org> +// +// ============================================================================ + +#include "test_config.h" +#include "ace/Process.h" +#include "ace/Get_Opt.h" +#include "ace/ACE.h" +#include "ace/OS_NS_sys_stat.h" +#include "ace/OS_NS_unistd.h" +#include "ace/Dirent.h" +#include "ace/SString.h" + +ACE_RCSID(tests, Process_Test, "Process_Test.cpp,v 4.11 1999/09/02 04:36:30 schmidt Exp") + +// This will only work on Linux. Even UNIX-ish with /proc filesys lacks the +// 'self' level and link to the opened file name. +static const char *proc_self_fd = "/proc/self/fd/"; + +int +check_temp_file (const ACE_TString &tmpfilename) +{ + ACE_DIRENT *dir = 0; + ACE_Dirent entr; + ACE_stat stat; + char filename[MAXPATHLEN + 1]; + + ACE_OS::memset (&stat, 0, sizeof (stat)); + ACE_OS::memset (&entr, 0, sizeof (entr)); + + // Loop through /proc/self/fs/ + if (entr.open (ACE_TEXT_CHAR_TO_TCHAR(proc_self_fd)) == -1) + ACE_ERROR_RETURN ((LM_ERROR, + ACE_TEXT ("Could not open dir %C\n"), + proc_self_fd), + -1); + + while ((dir = entr.read ())) + { + ACE_CString fullp = proc_self_fd; +#if defined (ACE_HAS_TCHAR_DIRENT) + fullp += ACE_TEXT_ALWAYS_CHAR(dir->d_name); +#else + fullp += dir->d_name; +#endif + + if ((ACE_OS::lstat (fullp.c_str (), &stat)) == -1) + ACE_ERROR_RETURN ((LM_ERROR, + ACE_TEXT ("Stat failed for %C\n"), + fullp.c_str ()), + -1); + + if (S_ISLNK (stat.st_mode)) + { + ssize_t size = 0; + if ((size= ACE_OS::readlink (fullp.c_str (), + filename, + MAXPATHLEN + 1)) == -1) + ACE_ERROR_RETURN ((LM_ERROR, + ACE_TEXT ("Readlink failed for %C\n"), + fullp.c_str ()), + -1); + filename[size] = '\0'; + if (tmpfilename == ACE_TString (ACE_TEXT_CHAR_TO_TCHAR (filename))) + return 1; + } + } + + return 0; +} + +void +run_parent (bool inherit_files) +{ + ACE_TCHAR t[] = ACE_TEXT ("ace_testXXXXXX"); + + // Create tempfile. This will be tested for inheritance. + ACE_TCHAR tempfile[MAXPATHLEN + 1]; + + if (ACE::get_temp_dir (tempfile, MAXPATHLEN - sizeof (t)) == -1) + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Could not get temp dir\n"))); + + ACE_OS::strcat (tempfile, t); + + ACE_HANDLE file_handle = ACE_OS::mkstemp (tempfile); + if (file_handle == ACE_INVALID_HANDLE) + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Could not get temp filename\n"))); + + // Build child options + ACE_Process_Options options; + options.command_line (ACE_TEXT (".") ACE_DIRECTORY_SEPARATOR_STR + ACE_TEXT ("Process_Test") + ACE_PLATFORM_EXE_SUFFIX + ACE_TEXT (" -c -h %d -f %s"), + (int)inherit_files, + tempfile); + options.handle_inheritance (inherit_files); /* ! */ + + // Spawn child + ACE_Process child; + + pid_t result = child.spawn (options); + if (result == -1) + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Parent could NOT spawn child process\n"))); + else + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("Parent spawned child process with pid = %d.\n"), + child.getpid ())); + + ACE_exitcode child_status; + result = child.wait (&child_status); + if (result == -1) + ACE_ERROR ((LM_ERROR, ACE_TEXT ("Could NOT wait on child process\n"))); + else if (child_status == 0) + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("Child %d finished ok\n"), + child.getpid ())); + else + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Child %d finished with status %d\n"), + child.getpid (), child_status)); +} + +int +run_main (int argc, ACE_TCHAR *argv[]) +{ + // This test relies on the ability to get a list of open files for a process + // and examine each file descriptor to see which file is open, matching + // against an expected opened file name. Although most systems provide some + // mechanism to do this, the code in this test uses Linux-specific + // techniques. Thus, although it is possible to add the code for the + // checks on, for example, HP-UX (pstat_getproc, pstat_getpathname) and + // AIX (/proc is available, but there's no self and the fds are not links + // to the opened file names), the code isn't here at present. +#if defined (ACE_LACKS_FORK) || defined (ACE_LACKS_READLINK) || !defined(linux) + ACE_UNUSED_ARG (argc); + ACE_UNUSED_ARG (argv); + + ACE_START_TEST (ACE_TEXT ("Process_Test")); + ACE_ERROR ((LM_INFO, + ACE_TEXT ("This test is not supported on this platform\n"))); + ACE_END_TEST; +#else + int c = 0; + int handle_inherit = 0; /* Disable inheritance by default */ + bool ischild = false; + ACE_TString temp_file_name; + + ACE_Get_Opt getopt (argc, argv, ACE_TEXT ("ch:f:")); + + while ((c = getopt ()) != -1) + switch ((char) c) + { + case 'c': + ischild = true; + break; + case 'h': + handle_inherit = ACE_OS::atoi (getopt.opt_arg ()); + break; + case 'f': + temp_file_name = getopt.opt_arg (); + break; + default: + // Don't forgive bad options + ACE_ERROR_RETURN ((LM_ERROR, + ACE_TEXT ("Bad option\n")), + -1); + break; + } + + if (ischild) + { + ACE_TCHAR lognm[MAXPATHLEN]; + int mypid (ACE_OS::getpid ()); + ACE_OS::sprintf(lognm, ACE_TEXT ("Process_Test-child-%d"), mypid); + + ACE_START_TEST (lognm); + + int result = check_temp_file (temp_file_name); + // Check descriptor inheritance + if (result == -1) + ACE_ERROR_RETURN ((LM_ERROR, + ACE_TEXT ("Could not retrieve open files\n")), + -1); + else if (result == handle_inherit) + result = 0; + else + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Handle inheritance test failed\n"))); + ACE_END_LOG; + return result; + } + else + { + ACE_START_TEST (ACE_TEXT ("Process_Test")); + + // Test handle inheritance set to true + run_parent (true); + + // ... and set to false + run_parent (false); + + ACE_END_TEST; + } +#endif /* ! ACE_LACKS_FORK */ + + return 0; +} diff --git a/ACE/tests/QtReactor_Test.cpp b/ACE/tests/QtReactor_Test.cpp index 1891a92de76..95b116dc598 100644 --- a/ACE/tests/QtReactor_Test.cpp +++ b/ACE/tests/QtReactor_Test.cpp @@ -257,7 +257,7 @@ int DgramHandler::open (const ACE_INET_Addr &local, protocol, reuse_addr)) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT (" (%P) %p \n"), + ACE_TEXT (" (%P) %p\n"), ACE_TEXT ("Cannot oper dgram socket")), -1); @@ -280,7 +280,7 @@ int DgramHandler::handle_input (ACE_HANDLE handle) if (0 >= result) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT (" (%P) %p \n"), + ACE_TEXT (" (%P) %p\n"), ACE_TEXT ("While reading datagram from socket")) , -1); else @@ -303,7 +303,7 @@ int DgramHandler::handle_timeout (const ACE_Time_Value ¤t_time, const void static_cast< ACE_UINT32 > (INADDR_ANY)), ACE_PROTOCOL_FAMILY_INET, 0, 1)) ACE_ERROR ((LM_ERROR, - ACE_TEXT (" (%P) %p \n"), + ACE_TEXT (" (%P) %p\n"), ACE_TEXT ("Cannot open socket for sending Qt dgrams"))); ACE_INET_Addr peerAddr; @@ -312,7 +312,7 @@ int DgramHandler::handle_timeout (const ACE_Time_Value ¤t_time, const void if (sizeof (sendBuffer) != socket.send (&sendBuffer, sizeof (sendBuffer), peerAddr)) ACE_ERROR ((LM_ERROR, - ACE_TEXT (" (%P) %p \n"), + ACE_TEXT (" (%P) %p\n"), ACE_TEXT ("Cannot send dgram"))); else ++dgramsSent_; @@ -396,7 +396,7 @@ int TCPConnectionHandler::handle_input (ACE_HANDLE handle) int result = scheduleSend (buffer); if (0 > result) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT (" (%P) %p \n"), + ACE_TEXT (" (%P) %p\n"), ACE_TEXT ("Cannot schedule TCP reply")), -1); } @@ -476,7 +476,7 @@ int TCPConnectionHandler::scheduleSend (ACE_Message_Block * buffer) if (0 > sendBuffers ()) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT (" (%P) %p \n"), + ACE_TEXT (" (%P) %p\n"), ACE_TEXT ("Cannot schedule TCP send.")), -1); return 0; @@ -615,7 +615,7 @@ int HandlersRegister::scheduleTimers (const ACE_Time_Value &p_TestTime) ACE_Time_Value::zero, p_TestTime * (0.5 / DgramsToSend))) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT (" (%P) %p \n"), + ACE_TEXT (" (%P) %p\n"), ACE_TEXT ("Cannot schedule ACE timer")), -1); @@ -637,7 +637,7 @@ int HandlersRegister::registerDgramHandlers () ACE_TEXT ("127.0.0.1"), ACE_PROTOCOL_FAMILY_INET))) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT (" (%P) %p \n"), + ACE_TEXT (" (%P) %p\n"), ACE_TEXT ("Cannot open dgram handler")), -1); @@ -646,7 +646,7 @@ int HandlersRegister::registerDgramHandlers () if (-1 == reactor_->register_handler (DgramHandlers_[ i ], ACE_Event_Handler::READ_MASK)) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT (" (%P) %p \n"), + ACE_TEXT (" (%P) %p\n"), ACE_TEXT ("Cannot register dgram handler")), -1); return 0; @@ -658,7 +658,7 @@ int HandlersRegister::registerTCPHandlers () if (-1 == acceptor_->open (addr, reactor_, 1)) ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT (" (%P) %p \n"), + ACE_TEXT (" (%P) %p\n"), ACE_TEXT ("Cannot open acceptor port")), -1); diff --git a/ACE/tests/README b/ACE/tests/README index 17476a3ae5e..e25b50e296c 100644 --- a/ACE/tests/README +++ b/ACE/tests/README @@ -1,17 +1,50 @@ $Id$ -This directory contains a battery of tests that exercise many -capabilities of ACE on the numerous platforms upon which it runs. In -addition to providing an automated regression testing facility, these -tests also illustrate how to program many of the ACE features. The -tests can be executed in a single pass via the perl script -run_test.pl. - -By default, all the output from the tests will be stored in separate -files in the ./log/ (or .\log\) directory. However, you can override -this by setting the ACE_TEST_DIR environment variable to another -prefix. +This directory contains a battery of "one-button" regression tests +that exercise many capabilities of ACE on the numerous platforms upon +which it runs. In addition to providing an automated regression +testing facility, these tests also show how to program many of the ACE +features. Building and running the tests is straightforward: +1. Build all the tests in ACE_ROOT/tests, e.g., by running mwc.pl on + the tests.mwc file and then using whatever build process you've + selected to compile all the tests. + +2. You then need to run all the tests, e.g., by running the perl script + + ACE_ROOT/tests/run_test.pl + + Naturally, make sure that you've installed perl first! + +3. If everything works then you should see something like this: + +./run_test.pl +auto_run_tests: tests/ACE_Test + +auto_run_tests_finished: tests/ACE_Test Time:1s Result:0 +auto_run_tests: tests/Aio_Platform_Test + +auto_run_tests_finished: tests/Aio_Platform_Test Time:1s Result:0 +auto_run_tests: tests/Arg_Shifter_Test + +auto_run_tests_finished: tests/Arg_Shifter_Test Time:1s Result:0 +auto_run_tests: tests/ARGV_Test + +auto_run_tests_finished: tests/ARGV_Test Time:2s Result:0 +auto_run_tests: tests/Array_Map_Test + +auto_run_tests_finished: tests/Array_Map_Test Time:1s Result:0 +auto_run_tests: tests/Atomic_Op_Test + +auto_run_tests_finished: tests/Atomic_Op_Test Time:9s Result:0 +auto_run_tests: tests/Auto_Event_Test + +.... + +4. By default, all the output from the tests will be stored in separate + files in the ./log/ (or .\log\) directory. You can override + this, however, by setting the ACE_TEST_DIR environment variable to + another prefix. ________________________________________ Please follow these directions when adding a new test to @@ -21,20 +54,11 @@ $ACE_ROOT/tests: 2. Add new project entry to the tests.mpc file. -3. Add test to Makefile. * - -4. Add a new MS project file, e.g., <test>.dsp, then add and entry for - it to the tests.dsw file. * - -5. Add test to run_test.lst. - -* Steps 3 and 4 will go away once the mpc architecture is fully integrated, - since the Makefile and project files can be created on-the-fly by mpc. +3. Add test to run_test.lst. ________________________________________ - The tests have been run on a wide range of platforms (e.g., UNIX, -pSOS, VxWorks, LynxOS, Windows NT/2000/95/98/etc.) and they all work +VxWorks, LynxOS, Windows NT/2000/95/98/etc.) and they all work with the following exceptions: 1. UPIPE_Test and SPIPE_Test on Windows 95: these tests don't run on @@ -51,9 +75,6 @@ with the following exceptions: are unsupported features in these tests, removed from the test suite for pSOSim. -4. The set of tests for pSOSim will be expanded to include those that require - multiple threads, with the release of the multi-threaded port to pSOSim. - Notes: 1. Each test creates a log file and writes it to the ./log/ @@ -79,4 +100,4 @@ Notes: and Win32clerk.conf). If you have any questions/suggestions, please send email to -ace-users@cs.wustl.edu. +ace-users@list.isis.vanderbilt.edu. diff --git a/ACE/tests/RW_Process_Mutex_Test.cpp b/ACE/tests/RW_Process_Mutex_Test.cpp index 9436cb97127..a657b97358f 100644 --- a/ACE/tests/RW_Process_Mutex_Test.cpp +++ b/ACE/tests/RW_Process_Mutex_Test.cpp @@ -97,7 +97,7 @@ public: private: enum { Max_Ranges = 5 }; int range_count_; - Time_Range ranges_[Max_Ranges]; + Time_Range ranges_[Max_Ranges]; }; void @@ -468,7 +468,7 @@ run_main (int argc, ACE_TCHAR *argv[]) Child *child = (i == 0 ? &writer : &readers[i-1]); ACE_Process_Options options; options.command_line (format, - argv[0], + argc > 0 ? argv[0] : ACE_TEXT ("RW_Process_Mutex_Test"), i, (unsigned int)me.get_port_number (), mutex_name.c_str ()); diff --git a/ACE/tests/Reactor_Dispatch_Order_Test.cpp b/ACE/tests/Reactor_Dispatch_Order_Test.cpp index 8c5e63e565c..eb6e9595b68 100644 --- a/ACE/tests/Reactor_Dispatch_Order_Test.cpp +++ b/ACE/tests/Reactor_Dispatch_Order_Test.cpp @@ -102,7 +102,7 @@ int Handler::handle_timeout (const ACE_Time_Value &, const void *) { - int me = this->dispatch_order_++; + int const me = this->dispatch_order_++; if (me != 1) ACE_ERROR ((LM_ERROR, ACE_TEXT ("handle_timeout should be #1; it's %d\n"), @@ -116,7 +116,7 @@ Handler::handle_timeout (const ACE_Time_Value &, int Handler::handle_output (ACE_HANDLE) { - int me = this->dispatch_order_++; + int const me = this->dispatch_order_++; if (me != 2) ACE_ERROR ((LM_ERROR, ACE_TEXT ("handle_output should be #2; it's %d\n"), @@ -138,7 +138,7 @@ Handler::handle_output (ACE_HANDLE) int Handler::handle_input (ACE_HANDLE fd) { - int me = this->dispatch_order_++; + int const me = this->dispatch_order_++; if (me != 3) ACE_ERROR ((LM_ERROR, ACE_TEXT ("handle_input should be #3; it's %d\n"), diff --git a/ACE/tests/Reactor_Notification_Queue_Test.cpp b/ACE/tests/Reactor_Notification_Queue_Test.cpp index a29ab26769c..7e22474d3b3 100644 --- a/ACE/tests/Reactor_Notification_Queue_Test.cpp +++ b/ACE/tests/Reactor_Notification_Queue_Test.cpp @@ -163,7 +163,7 @@ Event_Handler::run (void) { ACE_ERROR ((LM_ERROR, ACE_TEXT ("Test %C failed due to timeout ") - ACE_TEXT (" sent=%d,recv=%d \n"), + ACE_TEXT (" sent=%d,recv=%d\n"), test_name_, notifications_sent_, notifications_recv_)); diff --git a/ACE/tests/Reactor_Performance_Test.cpp b/ACE/tests/Reactor_Performance_Test.cpp index d20b4199528..215fef181f3 100644 --- a/ACE/tests/Reactor_Performance_Test.cpp +++ b/ACE/tests/Reactor_Performance_Test.cpp @@ -260,10 +260,10 @@ create_reactor (void) if (opt_wfmo_reactor) { -#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE) +#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 == 1) ACE_NEW (impl, ACE_WFMO_Reactor); -#endif /* ACE_WIN32 */ +#endif /* ACE_HAS_WINSOCK2 == 1 */ } else if (opt_select_reactor) ACE_NEW (impl, diff --git a/ACE/tests/Reactor_Remove_Resume_Test.cpp b/ACE/tests/Reactor_Remove_Resume_Test.cpp index 7064b4b9151..715aaeaedb5 100644 --- a/ACE/tests/Reactor_Remove_Resume_Test.cpp +++ b/ACE/tests/Reactor_Remove_Resume_Test.cpp @@ -100,7 +100,7 @@ Bogus_Handler::handle_close (ACE_HANDLE, // This event handler is being closed by the reactor unexpectedly. ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("Bogus_Handler unexpectedly closed\n ")), + ACE_TEXT ("Bogus_Handler unexpectedly closed\n")), -1); } @@ -343,7 +343,7 @@ handle_events (ACE_Reactor & reactor, timeout.sec (2); int const result = reactor.handle_events (&timeout); - + if (result > 0) { ACE_ERROR ((LM_ERROR, diff --git a/ACE/tests/Reactor_Remove_Resume_Test_Dev_Poll.cpp b/ACE/tests/Reactor_Remove_Resume_Test_Dev_Poll.cpp index cc3b52a6f0e..078ae9a7534 100644 --- a/ACE/tests/Reactor_Remove_Resume_Test_Dev_Poll.cpp +++ b/ACE/tests/Reactor_Remove_Resume_Test_Dev_Poll.cpp @@ -103,7 +103,7 @@ Bogus_Handler::handle_close (ACE_HANDLE, // This event handler is being closed by the reactor unexpectedly. ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("Bogus_Handler unexpectedly closed\n ")), + ACE_TEXT ("Bogus_Handler unexpectedly closed\n")), -1); } @@ -346,7 +346,7 @@ handle_events (ACE_Reactor & reactor, timeout.sec (2); int const result = reactor.handle_events (&timeout); - + if (result > 0) { ACE_ERROR ((LM_ERROR, diff --git a/ACE/tests/Reactors_Test.cpp b/ACE/tests/Reactors_Test.cpp index 0354483105d..1d79e8a0c53 100644 --- a/ACE/tests/Reactors_Test.cpp +++ b/ACE/tests/Reactors_Test.cpp @@ -252,7 +252,7 @@ run_main (int, ACE_TCHAR *[]) -1); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%t) all threads are finished \n"))); + ACE_TEXT ("(%t) all threads are finished\n"))); #else ACE_ERROR ((LM_INFO, diff --git a/ACE/tests/SOCK_Connector_Test.cpp b/ACE/tests/SOCK_Connector_Test.cpp index fe9039bd31f..4bced6df444 100644 --- a/ACE/tests/SOCK_Connector_Test.cpp +++ b/ACE/tests/SOCK_Connector_Test.cpp @@ -55,7 +55,7 @@ host_is_up (ACE_TCHAR hostname[]) ACE_INET_Addr another_host ((u_short) 7, test_host); ACE_Time_Value timeout_value (5); - const int status = con.connect (sock, + int const status = con.connect (sock, another_host, &timeout_value); sock.close (); @@ -82,7 +82,7 @@ find_another_host (ACE_TCHAR other_host[]) #if !defined (ACE_LACKS_GETHOSTENT) // These gethost-type things don't work everywhere. - struct hostent *h; + struct hostent *h = 0; ACE_utsname un; ACE_OS::uname (&un); diff --git a/ACE/tests/SOCK_Dgram_Bcast_Test.cpp b/ACE/tests/SOCK_Dgram_Bcast_Test.cpp index 531bf196151..19c3eaac8ab 100644 --- a/ACE/tests/SOCK_Dgram_Bcast_Test.cpp +++ b/ACE/tests/SOCK_Dgram_Bcast_Test.cpp @@ -255,7 +255,7 @@ int run_main (int argc, ACE_TCHAR *argv[]) return -1; } ACE_START_TEST (ACE_TEXT ("SOCK_Dgram_Bcast_Test")); - result = run_auto_test (ACE_TEXT ("SOCK_Dgram_Bcast_Test")); + result = run_auto_test (argc > 0 ? argv[0] : ACE_TEXT ("SOCK_Dgram_Bcast_Test")); ACE_END_TEST; return result; } diff --git a/ACE/tests/SOCK_Netlink_Test.cpp b/ACE/tests/SOCK_Netlink_Test.cpp index f23412cdd52..67283ab407e 100644 --- a/ACE/tests/SOCK_Netlink_Test.cpp +++ b/ACE/tests/SOCK_Netlink_Test.cpp @@ -361,7 +361,7 @@ Secondary_Ipaddr_Handler::Secondary_Ipaddr_Handler () Secondary_Ipaddr_Handler::~Secondary_Ipaddr_Handler () { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) Secondary_Ipaddr_Handler::~Secondary_Ipaddr_Handler \n"))); + ACE_TEXT ("(%P|%t) Secondary_Ipaddr_Handler::~Secondary_Ipaddr_Handler\n"))); this->close (); } int @@ -374,7 +374,7 @@ Secondary_Ipaddr_Handler::open (ACE_Reactor *const reactor, !if_name || !ACE_OS::strlen (if_name)) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT("(%P) Secondary_Ipaddr_Handler::open: error ") - ACE_TEXT("zero pointers or zero length strings used as input. \n")), + ACE_TEXT("zero pointers or zero length strings used as input.\n")), -1); this->reactor (reactor); @@ -389,8 +389,8 @@ Secondary_Ipaddr_Handler::open (ACE_Reactor *const reactor, NETLINK_ROUTE) == -1) //FUZZ: disable check_for_lack_ACE_OS ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT("(%P|%t) Secondary_Ipaddr_Handler::open: - failed \n") - ACE_TEXT("to initialize netlink socket bu open (). \n")), + ACE_TEXT("(%P|%t) Secondary_Ipaddr_Handler::open: - failed\n") + ACE_TEXT("to initialize netlink socket bu open ().\n")), -1); //FUZZ: enable check_for_lack_ACE_OS @@ -433,7 +433,7 @@ int Secondary_Ipaddr_Handler::handle_input (ACE_HANDLE) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT("(%P) Secondary_Ipaddr_Handler::handle_input - entered \n"))); + ACE_TEXT("(%P) Secondary_Ipaddr_Handler::handle_input - entered\n"))); nlmsghdr *hdr = 0; iovec iov; @@ -485,7 +485,7 @@ Secondary_Ipaddr_Handler::handle_input (ACE_HANDLE) if (static_cast <int> (hdr->nlmsg_pid) != this->address_.get_pid () || hdr->nlmsg_seq != this->seq_) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT("(%P) Secondary_Ipaddr_Handler::handle_input - ") - ACE_TEXT("process id or message sequence is different \n")), + ACE_TEXT("process id or message sequence is different\n")), -1); if (hdr->nlmsg_type == NLMSG_ERROR) @@ -497,13 +497,13 @@ Secondary_Ipaddr_Handler::handle_input (ACE_HANDLE) { this->on_command_success (); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT("(%P) Secondary_Ipaddr_Handler::handle_input - command success \n"))); + ACE_TEXT("(%P) Secondary_Ipaddr_Handler::handle_input - command success\n"))); return 0; } this->on_command_error (); ACE_DEBUG ((LM_DEBUG, - ACE_TEXT("(%P) Secondary_Ipaddr_Handler::handle_input - command informs about error \n"))); + ACE_TEXT("(%P) Secondary_Ipaddr_Handler::handle_input - command informs about error\n"))); // some error message ACE_OS::perror("rtnetlink error message: "); @@ -519,7 +519,7 @@ Secondary_Ipaddr_Handler::handle_timeout (ACE_Time_Value const &, void const *) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT("(%P) Secondary_Ipaddr_Handler::handle_timeout - entered \n"))); + ACE_TEXT("(%P) Secondary_Ipaddr_Handler::handle_timeout - entered\n"))); if (this->command_status_ != COMMAND_SUCCESS && (this->command_status_ != COMMAND_ERROR && @@ -594,7 +594,7 @@ Secondary_Ipaddr_Handler::handle_close (ACE_HANDLE, ACE_Reactor_Mask) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT("(%P|%t) Secondary_Ipaddr_Handler::handle_close \n"))); + ACE_TEXT("(%P|%t) Secondary_Ipaddr_Handler::handle_close\n"))); this->close (); return 0; } @@ -603,7 +603,7 @@ int Secondary_Ipaddr_Handler::close () { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT("(%P) Secondary_Ipaddr_Handler::close \n"))); + ACE_TEXT("(%P) Secondary_Ipaddr_Handler::close\n"))); if (this->reactor ()) { @@ -901,7 +901,7 @@ parse_args (int argc, ACE_TCHAR *argv[]) if ((ip_len == 0 && if_len) || (ip_len && if_len == 0)) { ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT("%s - error: both options -a and -i should be provided. \n"), + ACE_TEXT("%s - error: both options -a and -i should be provided.\n"), ACE_TEXT("SOCK_Netlink_Test")), -1); } diff --git a/ACE/tests/SOCK_SEQPACK_SCTP_Test.cpp b/ACE/tests/SOCK_SEQPACK_SCTP_Test.cpp index 154524191f7..895d2d374d5 100644 --- a/ACE/tests/SOCK_SEQPACK_SCTP_Test.cpp +++ b/ACE/tests/SOCK_SEQPACK_SCTP_Test.cpp @@ -1,17 +1,17 @@ // $Id$ // -// *WARRANTY DISCLAIMER: LIMITATION OF LIABILITY. THE SOFTWARE AND -// CONTENT ARE PROVIDED "AS IS" WITH NO EXPRESS OR IMPLIED -// REPRESENTATIONS, GUARANTEES, OR WARRANTIES, INCLUDING BUT NOT LIMITED -// TO SUCH REPRESENTATION, GUARANTEES OR WARRANTIES REGARDING THE +// *WARRANTY DISCLAIMER: LIMITATION OF LIABILITY. THE SOFTWARE AND +// CONTENT ARE PROVIDED "AS IS" WITH NO EXPRESS OR IMPLIED +// REPRESENTATIONS, GUARANTEES, OR WARRANTIES, INCLUDING BUT NOT LIMITED +// TO SUCH REPRESENTATION, GUARANTEES OR WARRANTIES REGARDING THE // USABILITY, SUITABILITY, CONDITION, OPERATION OR ACCURACY THEREOF. * -// -// *ALL OTHER WARRANTIES AND CONDITIONS (EXPRESS, IMPLIED OR STATUTORY) -// ARE HEREBY DISCLAIMED, SUCH WARRANTIES AND CONDITIONS INCLUDING -// WITHOUT LIMITATION, ALL WARRANTIES AND CONDITIONS OF MERCHANTABILITY, -// TITLE, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, +// +// *ALL OTHER WARRANTIES AND CONDITIONS (EXPRESS, IMPLIED OR STATUTORY) +// ARE HEREBY DISCLAIMED, SUCH WARRANTIES AND CONDITIONS INCLUDING +// WITHOUT LIMITATION, ALL WARRANTIES AND CONDITIONS OF MERCHANTABILITY, +// TITLE, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, // COMPATIBILITY, AND SECURITY OR ACCURACY.* -// +// // ============================================================================ // // = LIBRARY @@ -81,11 +81,9 @@ Server (void *arg) // hang tests. // if (-1 == AcceptorSocket->enable (ACE_NONBLOCK)) - { ACE_ERROR ((LM_ERROR, ACE_TEXT ("(%P|%t) %p\n"), ACE_TEXT ("AcceptorSocket.enable (ACE_NONBLOCK)"))); - } // // Set up select to wait for I/O events. @@ -101,21 +99,15 @@ Server (void *arg) 0, &tv); - ACE_ASSERT (tv == def_timeout); - if (-1 == result) - { ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("(%P|%t) %p\n"), ACE_TEXT ("select")), 0); - } - else if (0 == result) - { + if (0 == result) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT("(%P|%t) select timed out, shutting down\n")), 0); - } ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%P|%t) waiting for client to connect\n"))); @@ -128,46 +120,38 @@ Server (void *arg) // Enable non-blocking I/O. // if (Stream.enable (ACE_NONBLOCK)) - { ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("(%P|%t) %p\n"), ACE_TEXT ("Stream.enable (ACE_NONBLOCK)")), 0); - } unsigned char byte = BYTE_MESG; if (-1 == Stream.send_n (&byte, 1)) - { ACE_ERROR ((LM_ERROR, ACE_TEXT ("(%P|%t) %p\n"), ACE_TEXT ("Stream.send_n"))); - } ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%P|%t) byte sent\n"))); // - // Ubruptly terminate the association. + // Abruptly terminate the association. // if (-1 == Stream.abort ()) - { ACE_ERROR ((LM_ERROR, ACE_TEXT ("(%P|%t) %p\n"), ACE_TEXT ("Association.abort"))); - } // // Negative test: make sure that we cannot send on a closed association. // if (-1 != Stream.send_n (&byte, 1)) - { //FUZZ: disable check_for_lack_ACE_OS ACE_ERROR ((LM_ERROR, ACE_TEXT ("(%P|%t) Negative test fail: Association") ACE_TEXT(".send_n succeeded after abort()\n"))); //FUZZ: enable check_for_lack_ACE_OS - } } @@ -175,11 +159,9 @@ Server (void *arg) // Close server socket. // if (-1 == AcceptorSocket->close ()) - { ACE_ERROR ((LM_ERROR, ACE_TEXT ("(%P|%t) %p\n"), ACE_TEXT ("AcceptorSocket.close"))); - } return 0; } @@ -228,24 +210,28 @@ Client(void *arg) ACE_TEXT ("Association.recv_n"))); } - ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) Client received %d bytes\n"), - bytes)); - ACE_ASSERT(1 == bytes); + if (1 == bytes) + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("(%P|%t) Client received %B bytes\n"), + bytes)); + else + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("(%P|%t) Client received %B bytes; expected 1\n"), + bytes)); // // Give server a little time to abort the association. // ACE_OS::sleep(1); - if (-1 != Stream.recv_n (&b, 1, &tv, &bytes)) - { - //FUZZ: disable check_for_lack_ACE_OS + // abort closes the connection, so the recv should either see a closed + // socket or some failure other than a timeout. + ssize_t cnt = Stream.recv_n (&b, 1, &tv, &bytes); + if (cnt > 0 || (cnt == -1 && errno == ETIME)) ACE_ERROR ((LM_ERROR, - ACE_TEXT ("(%P|%t) Negative test failed Association") - ACE_TEXT (".recv_n succeeded after abort()\n"))); - //FUZZ: enable check_for_lack_ACE_OS - } + ACE_TEXT ("(%P|%t) Negative test failed; Association") + ACE_TEXT (".recv_n returned %b (w/ %m) after abort\n"), + cnt)); return 0; } @@ -264,59 +250,44 @@ spawn_test(bool ipv6_test) ACE_SOCK_SEQPACK_Acceptor AcceptorSocket; + const ACE_TCHAR *addrstr = +#ifdef ACE_HAS_IPV6 + ipv6_test ? ACE_IPV6_LOCALHOST : ACE_LOCALHOST; +#else + ACE_LOCALHOST; +#endif /* ACE_HAS_IPV6 */ ACE_Multihomed_INET_Addr ServerAddr (TTCPPORT, + addrstr #ifdef ACE_HAS_IPV6 - (ipv6_test ? - ACE_IPV6_LOCALHOST : - ACE_LOCALHOST) -#else /* ! ACE_HAS_IPV6 */ - ACE_LOCALHOST -#endif /* ! ACE_HAS_IPV6 */ + ,1, + ipv6_test ? AF_INET6 : AF_INET +#endif /* ACE_HAS_IPV6 */ ); - if (-1 == AcceptorSocket.open (ServerAddr, - 1, -#ifdef ACE_HAS_IPV6 - (ipv6_test ? AF_INET6 : AF_INET), -#else /* ! ACE_HAS_IPV6 */ - AF_INET, -#endif /* ! ACE_HAS_IPV6 */ - ACE_DEFAULT_BACKLOG -#if defined (IPPROTO_SCTP) - ,IPPROTO_SCTP -#endif /* IPPROTO_SCTP */ - )) - { - ACE_ERROR ((LM_ERROR, - ACE_TEXT ("(%P|%t) %p\n"), - ACE_TEXT ("AcceptorSocket.open"))); - } + if (-1 == AcceptorSocket.open (ServerAddr, 1)) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("(%P|%t) %p\n"), + ACE_TEXT ("AcceptorSocket.open"))); + } if (-1 == AcceptorSocket.get_local_addr (ServerAddr)) - { - ACE_ERROR ((LM_ERROR, - ACE_TEXT ("(%P|%t) %p\n"), - ACE_TEXT ("AcceptorSocket.get_local_addr"))); - } - - struct sockaddr_in inaddr; - - ServerAddr.get_addresses(&inaddr, 1); - - ACE_ASSERT ((TTCPPORT == ServerAddr.get_port_number ())); - ACE_ASSERT ((ipv6_test || INADDR_LOOPBACK == ServerAddr.get_ip_address ())); - ACE_ASSERT ((!ipv6_test || - ACE_Multihomed_INET_Addr(TTCPPORT, "::1") == ServerAddr)); + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("(%P|%t) %p\n"), + ACE_TEXT ("AcceptorSocket.get_local_addr"))); + } #ifndef ACE_LACKS_FORK switch (ACE_OS::fork (ACE_TEXT ("child"))) { case -1: ACE_ERROR ((LM_ERROR, - ACE_TEXT ("(%P|%t) %p%a"), + ACE_TEXT ("(%P|%t) %p"), ACE_TEXT ("fork failed"))); break; case 0: + ACE_LOG_MSG->sync (ACE_TEXT ("SOCK_SEQPACK_SCTP_Test")); Client (&ServerAddr); ACE_OS::exit (0); break; @@ -349,7 +320,7 @@ spawn_test(bool ipv6_test) ACE_Thread_Manager::instance ()->wait (); #else /* ACE_LACKS_FORK && ! ACE_HAS_THREADS */ ACE_ERROR ((LM_DEBUG, - ACE_TEXT ("(%P|%t) \n"), + ACE_TEXT ("(%P|%t)\n"), ACE_TEXT ("only one thread may be run ") ACE_TEXT ("in a process on this platform\n"))); #endif /* ACE_LACKS_FORK && ! ACE_HAS_THREADS */ diff --git a/ACE/tests/SOCK_Send_Recv_Test.cpp b/ACE/tests/SOCK_Send_Recv_Test.cpp index a476e3071cf..04b76a2e859 100644 --- a/ACE/tests/SOCK_Send_Recv_Test.cpp +++ b/ACE/tests/SOCK_Send_Recv_Test.cpp @@ -80,8 +80,8 @@ client (void *arg) } ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) connected to %s\n"), - ACE_TEXT_CHAR_TO_TCHAR(server_addr.get_host_name ()))); + ACE_TEXT ("(%P|%t) connected to %C\n"), + server_addr.get_host_name ())); //******************* TEST 0 ****************************** // @@ -245,8 +245,8 @@ server (void *arg) } ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) client %s connected from %d\n"), - ACE_TEXT_CHAR_TO_TCHAR(cli_addr.get_host_name ()), + ACE_TEXT ("(%P|%t) client %C connected from %d\n"), + cli_addr.get_host_name (), cli_addr.get_port_number ())); //******************* TEST 1 ****************************** diff --git a/ACE/tests/SOCK_Send_Recv_Test_IPV6.cpp b/ACE/tests/SOCK_Send_Recv_Test_IPV6.cpp index b630ffb00ec..8a207aa19e5 100644 --- a/ACE/tests/SOCK_Send_Recv_Test_IPV6.cpp +++ b/ACE/tests/SOCK_Send_Recv_Test_IPV6.cpp @@ -75,8 +75,8 @@ client (void *arg) } ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) connected to %s\n"), - ACE_TEXT_CHAR_TO_TCHAR(server_addr.get_host_name ()))); + ACE_TEXT ("(%P|%t) connected to %C\n"), + server_addr.get_host_name ())); //******************* TEST 1 ****************************** // @@ -202,8 +202,8 @@ server (void *arg) } ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) client %s connected from %d\n"), - ACE_TEXT_CHAR_TO_TCHAR(cli_addr.get_host_name ()), + ACE_TEXT ("(%P|%t) client %C connected from %d\n"), + cli_addr.get_host_name (), cli_addr.get_port_number ())); //******************* TEST 1 ****************************** diff --git a/ACE/tests/SOCK_Test.cpp b/ACE/tests/SOCK_Test.cpp index e608a67a873..34000f53eee 100644 --- a/ACE/tests/SOCK_Test.cpp +++ b/ACE/tests/SOCK_Test.cpp @@ -62,8 +62,8 @@ client (void *arg) if (con.complete (cli_stream, &server_addr, &tv) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("(%P|%t) %p\n"), ACE_TEXT ("connection failed")), 0); else - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%P|%t) connected to %s\n"), - ACE_TEXT_CHAR_TO_TCHAR(server_addr.get_host_name ()))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%P|%t) connected to %C\n"), + server_addr.get_host_name ())); } if (cli_stream.disable (ACE_NONBLOCK) == -1) @@ -140,8 +140,8 @@ server (void *arg) while ((result = peer_acceptor->accept (new_stream, &cli_addr)) != -1) { - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%P|%t) client %s connected from %d\n"), - ACE_TEXT_CHAR_TO_TCHAR(cli_addr.get_host_name ()), cli_addr.get_port_number ())); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%P|%t) client %C connected from %d\n"), + cli_addr.get_host_name (), cli_addr.get_port_number ())); // Enable non-blocking I/O. if (new_stream.enable (ACE_NONBLOCK) == -1) diff --git a/ACE/tests/SOCK_Test_IPv6.cpp b/ACE/tests/SOCK_Test_IPv6.cpp index bea8a7a5587..4da69395d6d 100644 --- a/ACE/tests/SOCK_Test_IPv6.cpp +++ b/ACE/tests/SOCK_Test_IPv6.cpp @@ -63,8 +63,8 @@ client (void *arg) if (con.complete (cli_stream, &server_addr, &tv) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("(%P|%t) %p\n"), ACE_TEXT ("connection failed")), 0); else - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%P|%t) connected to %s\n"), - ACE_TEXT_CHAR_TO_TCHAR(server_addr.get_host_name ()))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%P|%t) connected to %C\n"), + server_addr.get_host_name ())); } if (cli_stream.disable (ACE_NONBLOCK) == -1) @@ -141,8 +141,8 @@ server (void *arg) while ((result = peer_acceptor->accept (new_stream, &cli_addr)) != -1) { - ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%P|%t) client %s connected from %d\n"), - ACE_TEXT_CHAR_TO_TCHAR(cli_addr.get_host_name ()), cli_addr.get_port_number ())); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%P|%t) client %C connected from %d\n"), + cli_addr.get_host_name (), cli_addr.get_port_number ())); // Enable non-blocking I/O. if (new_stream.enable (ACE_NONBLOCK) == -1) diff --git a/ACE/tests/SSL/Bug_2912_Regression_Test.cpp b/ACE/tests/SSL/Bug_2912_Regression_Test.cpp index bdc1bde3af4..0f25b43308b 100644 --- a/ACE/tests/SSL/Bug_2912_Regression_Test.cpp +++ b/ACE/tests/SSL/Bug_2912_Regression_Test.cpp @@ -145,7 +145,7 @@ get_dh1024 () return(dh); } -DH* +extern "C" DH* tmp_dh_callback (SSL *s, int is_export, int keylength) { ACE_UNUSED_ARG(s); diff --git a/ACE/tests/SSL/SSL_Asynch_Stream_Test.cpp b/ACE/tests/SSL/SSL_Asynch_Stream_Test.cpp index 9270f23f3dd..1ee2239fb80 100644 --- a/ACE/tests/SSL/SSL_Asynch_Stream_Test.cpp +++ b/ACE/tests/SSL/SSL_Asynch_Stream_Test.cpp @@ -31,6 +31,7 @@ #include "tests/test_config.h" #include "ace/Default_Constants.h" +#include "ace/OS_NS_signal.h" #include "ace/OS_NS_string.h" #include "ace/Event_Handler.h" #include "ace/Get_Opt.h" @@ -100,6 +101,9 @@ public: int open (const ACE_INET_Addr &listen_addr); //FUZZ: enable check_for_lack_ACE_OS + // Get the I/O handle. + virtual ACE_HANDLE get_handle (void) const; + // Called when a new connection is ready to accept. virtual int handle_input (ACE_HANDLE fd = ACE_INVALID_HANDLE); @@ -138,6 +142,34 @@ static int req_delay = 0; // This is the string sent from client to server. static const char *test_string = "SSL_Asynch_Stream_Test!"; +// Function to remove signals from the signal mask. +static int +disable_signal (int sigmin, int sigmax) +{ +#ifndef ACE_WIN32 + + sigset_t signal_set; + if (ACE_OS::sigemptyset (&signal_set) == - 1) + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Error: (%P|%t):%p\n"), + ACE_TEXT ("sigemptyset failed"))); + + for (int i = sigmin; i <= sigmax; i++) + ACE_OS::sigaddset (&signal_set, i); + + // Put the <signal_set>. + if (ACE_OS::pthread_sigmask (SIG_BLOCK, &signal_set, 0) != 0) + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Error: (%P|%t):%p\n"), + ACE_TEXT ("pthread_sigmask failed"))); +#else + ACE_UNUSED_ARG (sigmin); + ACE_UNUSED_ARG (sigmax); +#endif /* ACE_WIN32 */ + + return 1; +} + static void parse_args (int argc, ACE_TCHAR *argv[]) { @@ -180,6 +212,8 @@ parse_args (int argc, ACE_TCHAR *argv[]) Client_Handler::~Client_Handler () { + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) Client %@ handle %d down\n"), + this, this->stream_.handle ())); if (this->stream_.handle () != ACE_INVALID_HANDLE) { if (this->msgs_sent_ != cli_req_no) @@ -202,6 +236,8 @@ Client_Handler::~Client_Handler () int Client_Handler::open (ACE_HANDLE handle) { + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) Client %@ handle %d up\n"), + this, handle)); if (this->stream_.open (*this, handle) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("(%t) Client_Handler: %p\n"), @@ -230,6 +266,9 @@ Client_Handler::handle_write_stream delete this; return; } + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) Client %@ handle %d sent %B of %B bytes\n"), + this, this->stream_.handle (), + result.bytes_transferred (), result.bytes_to_write ())); ACE_Message_Block &b = result.message_block (); bool send_again = true; if (b.length () == 0) @@ -265,6 +304,8 @@ Client_Handler::handle_write_stream Server_Handler::~Server_Handler () { + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) Server %@ handle %d down\n"), + this, this->stream_.handle ())); if (this->stream_.handle () != ACE_INVALID_HANDLE) { if (this->msgs_rcvd_ != cli_req_no) @@ -287,6 +328,8 @@ Server_Handler::~Server_Handler () int Server_Handler::open (ACE_HANDLE handle) { + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) Server %@ handle %d up\n"), + this, handle)); if (this->stream_.open (*this, handle) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("(%t) Server_Handler: %p\n"), @@ -314,6 +357,9 @@ Server_Handler::handle_read_stream delete this; return; } + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) Server %@ handle %d recv %B of %B bytes\n"), + this, this->stream_.handle (), + result.bytes_transferred (), result.bytes_to_read ())); if (result.bytes_transferred () == 0) { ACE_DEBUG ((LM_DEBUG, @@ -326,8 +372,10 @@ Server_Handler::handle_read_stream // Scan through the received data for the expected string. There may be // multiples and/or partials. Count up how many arrive before the connection // is closed. - // The read operation left one byte space at the end so we can insert a - // nul terminator to ease scanning. + // Remember that the client side sends the terminating nul; in case the + // whole thing didn't arrive, we add a nul to the end of the receive + // block so we don't run off the end. When the recv into this buffer was + // initiated, we left the last byte empty to facilitate this. ACE_Message_Block &b = result.message_block (); *(b.wr_ptr ()) = '\0'; size_t test_string_len = ACE_OS::strlen (test_string); @@ -339,6 +387,10 @@ Server_Handler::handle_read_stream b.rd_ptr (), test_string)); b.rd_ptr (test_string_len); + // That ran up over the string; can we also consume the nul? + if (b.length () > 0) + b.rd_ptr (1); + ++this->msgs_rcvd_; } b.crunch (); if (this->stream_.read (b, b.space () - 1) == -1) @@ -363,6 +415,12 @@ Server_Acceptor::open (const ACE_INET_Addr &listen_addr) return 0; } +ACE_HANDLE +Server_Acceptor::get_handle (void) const +{ + return this->acceptor_.get_handle (); +} + int Server_Acceptor::handle_input (ACE_HANDLE) { @@ -411,11 +469,11 @@ start_clients (void *) { // Client thread function. ACE_INET_Addr addr (rendezvous); - ACE_SSL_SOCK_Stream stream; ACE_SSL_SOCK_Connector connect; for (size_t i = 0 ; i < cli_conn_no; i++) { + ACE_SSL_SOCK_Stream stream; if (connect.connect (stream, addr) < 0) { ACE_ERROR ((LM_ERROR, @@ -427,8 +485,10 @@ start_clients (void *) Client_Handler *new_handler = 0; ACE_NEW_RETURN (new_handler, Client_Handler, (ACE_THR_FUNC_RETURN)-1); if (new_handler->open (stream.get_handle ()) != 0) - delete new_handler; - stream.set_handle (ACE_INVALID_HANDLE); + { + delete new_handler; + stream.close (); + } } return 0; @@ -446,12 +506,22 @@ run_main (int argc, ACE_TCHAR *argv[]) context->private_key ("key.pem", SSL_FILETYPE_PEM); parse_args (argc, argv); + disable_signal (ACE_SIGRTMIN, ACE_SIGRTMAX); + disable_signal (SIGPIPE, SIGPIPE); Server_Acceptor acceptor; ACE_INET_Addr accept_addr (rendezvous); if (acceptor.open (accept_addr) == -1) return 1; + if (-1 == ACE_Reactor::instance ()->register_handler (&acceptor, + ACE_Event_Handler::ACCEPT_MASK)) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("(%t) %p; aborting\n"), + ACE_TEXT ("register_handler"))); + return 1; + } ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) Listening at %s\n"), rendezvous)); ACE_DEBUG ((LM_DEBUG, diff --git a/ACE/tests/SString_Test.cpp b/ACE/tests/SString_Test.cpp index f91e2e8e9ed..31eebbc5ad9 100644 --- a/ACE/tests/SString_Test.cpp +++ b/ACE/tests/SString_Test.cpp @@ -92,45 +92,45 @@ run_main (int, ACE_TCHAR *[]) // Not equal comparisons. Error if they are equal if (s1 == s2){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} - if (s1 == s5){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} + if (s1 == s5){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} // Equal comparisons. Error if they are not equal - if (s1 != s1){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} - if (s1 != s0){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} + if (s1 != s1){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} + if (s1 != s0){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} // Substring match. Error if they are not equal - if (s1.strstr (s2) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} - if (s1.strstr (s3) != 2){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} - if (s3.strstr (s1) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} - if (s1.strstr (s4) != 1){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} + if (s1.strstr (s2) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} + if (s1.strstr (s3) != 2){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} + if (s3.strstr (s1) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} + if (s1.strstr (s4) != 1){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} // Substring creation. Error if they are not equal - if (s1.substring (0) != s1){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} - if (s1.substring (1) != s4){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} - if (s1.substring (2, 2) != s3){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} - if (s1.substring (0, 0) != empty_string){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} - if (s1.substring (4, 10).length () != 1){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} + if (s1.substring (0) != s1){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} + if (s1.substring (1) != s4){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} + if (s1.substring (2, 2) != s3){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} + if (s1.substring (0, 0) != empty_string){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} + if (s1.substring (4, 10).length () != 1){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} // Forward search. Error if they are not equal - if (s1.find (s3) != 2){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} - if (s3.find (s1) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} - if (s1.find (s3, 2) != 2){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} - if (s3.find (s1, 1) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} - if (s1.find (s2) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} - if (s1.find ('o') != 4){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} + if (s1.find (s3) != 2){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} + if (s3.find (s1) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} + if (s1.find (s3, 2) != 2){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} + if (s3.find (s1, 1) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} + if (s1.find (s2) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} + if (s1.find ('o') != 4){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} // Reverse search. Error if they are not equal - if (s1.rfind ('l') != 3){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} - if (s1.rfind ('l', 3) != 2){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} + if (s1.rfind ('l') != 3){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} + if (s1.rfind ('l', 3) != 2){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} // Assignment. Error if they are not equal ACE_CString s6; s6 = s0; - if (s6 != s0){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} + if (s6 != s0){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} s6 = s4; - if (s4 != s6){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} + if (s4 != s6){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} s6 = s5; - if (s6 != s5){ACE_ERROR((LM_ERROR,"Set #1: \n"));return 1;} + if (s6 != s5){ACE_ERROR((LM_ERROR,"Set #1:\n"));return 1;} } { @@ -149,59 +149,59 @@ run_main (int, ACE_TCHAR *[]) ACE_CString zero_size_string (s1.c_str (), 0, 0, false); // Not equal comparisons. Error if they are equal - if (s1 == s2){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} - if (s1 == s5){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} + if (s1 == s2){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} + if (s1 == s5){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} // Equal comparisons. Error if they are not equal - if (s1 != s1){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} - if (s1 != s0){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} + if (s1 != s1){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} + if (s1 != s0){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} // Substring match. Error if they are not equal - if (s1.strstr (s2) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} - if (s1.strstr (s3) != 2){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} - if (s3.strstr (s1) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} - if (s1.strstr (s4) != 1){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} + if (s1.strstr (s2) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} + if (s1.strstr (s3) != 2){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} + if (s3.strstr (s1) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} + if (s1.strstr (s4) != 1){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} // Substring creation. Error if they are not equal - if (s1.substring (0) != s1){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} - if (s1.substring (1) != s4){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} - if (s1.substring (2, 2) != s3){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} - if (s1.substring (0, 0) != empty_string){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} + if (s1.substring (0) != s1){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} + if (s1.substring (1) != s4){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} + if (s1.substring (2, 2) != s3){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} + if (s1.substring (0, 0) != empty_string){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} // Forward search. Error if they are not equal - if (s1.find (s3) != 2){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} - if (s3.find (s1) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} - if (s1.find (s3, 2) != 2){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} - if (s3.find (s1, 1) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} - if (s1.find (s2) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} - if (s1.find ('o') != 4){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} + if (s1.find (s3) != 2){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} + if (s3.find (s1) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} + if (s1.find (s3, 2) != 2){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} + if (s3.find (s1, 1) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} + if (s1.find (s2) != ACE_CString::npos){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} + if (s1.find ('o') != 4){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} // Reverse search. Error if they are not equal - if (s1.rfind ('l') != 3){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} - if (s1.rfind ('l', 3) != 2){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} + if (s1.rfind ('l') != 3){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} + if (s1.rfind ('l', 3) != 2){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} // Assignment. Error if they are not equal ACE_CString s6; s6 = s0; - if (s6 != s0){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} + if (s6 != s0){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} s6 = s4; - if (s4 != s6){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} + if (s4 != s6){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} s6 = s5; - if (s6 != s5){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} + if (s6 != s5){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} // Clear. Error if they are not equal s0.clear(); - if (s0.length() != 0){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} + if (s0.length() != 0){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} // Rep. Error if they are not equal ACE_Auto_Basic_Array_Ptr<char> s (s1.rep ()); if (ACE_OS::strlen (s.get ()) != s1.length ()) { - ACE_ERROR((LM_ERROR,"Auto_ptr s: \n")); + ACE_ERROR((LM_ERROR,"Auto_ptr s:\n")); }; ACE_CString s7 (s.get ()); - if (s1 != s7){ACE_ERROR((LM_ERROR,"Set #2: \n"));return 1;} + if (s1 != s7){ACE_ERROR((LM_ERROR,"Set #2:\n"));return 1;} } { @@ -221,50 +221,50 @@ run_main (int, ACE_TCHAR *[]) ACE_NS_WString zero_size_string (s1.c_str (), 0, 0); // Not equal comparisons. Error if they are equal - if (s1 == s2){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} - if (s1 == s5){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} + if (s1 == s2){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} + if (s1 == s5){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} if (s1 == s6){ACE_ERROR((LM_ERROR,"Set #3: off-by-one failed\n"));return 1;} // Equal comparisons. Error if they are not equal - if (s1 != s1){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} - if (s1 != s0){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} + if (s1 != s1){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} + if (s1 != s0){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} // Substring match. Error if they are not equal - if (s1.strstr (s2) != ACE_NS_WString::npos){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} - if (s1.strstr (s3) != 2){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} - if (s3.strstr (s1) != ACE_NS_WString::npos){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} - if (s1.strstr (s4) != 1){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} + if (s1.strstr (s2) != ACE_NS_WString::npos){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} + if (s1.strstr (s3) != 2){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} + if (s3.strstr (s1) != ACE_NS_WString::npos){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} + if (s1.strstr (s4) != 1){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} // Substring creation. Error if they are not equal - if (s1.substring (0) != s1){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} - if (s1.substring (1) != s4){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} - if (s1.substring (2, 2) != s3){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} - if (s1.substring (0, 0) != empty_string){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} + if (s1.substring (0) != s1){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} + if (s1.substring (1) != s4){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} + if (s1.substring (2, 2) != s3){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} + if (s1.substring (0, 0) != empty_string){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} // Forward search. Error if they are not equal - if (s1.find (s3) != 2){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} - if (s3.find (s1) != ACE_NS_WString::npos){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} - if (s1.find (s3, 2) != 2){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} - if (s3.find (s1, 1) != ACE_NS_WString::npos){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} - if (s1.find (s2) != ACE_NS_WString::npos){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} - if (s1.find ('o') != 4){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} + if (s1.find (s3) != 2){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} + if (s3.find (s1) != ACE_NS_WString::npos){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} + if (s1.find (s3, 2) != 2){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} + if (s3.find (s1, 1) != ACE_NS_WString::npos){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} + if (s1.find (s2) != ACE_NS_WString::npos){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} + if (s1.find ('o') != 4){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} // Reverse search. Error if they are not equal - if (s1.rfind ('l') != 3){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} - if (s1.rfind ('l', 3) != 2){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} + if (s1.rfind ('l') != 3){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} + if (s1.rfind ('l', 3) != 2){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} // Assignment. Error if they are not equal ACE_NS_WString s7; s7 = s0; - if (s7 != s0){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} + if (s7 != s0){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} s7 = s4; - if (s4 != s7){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} + if (s4 != s7){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} s7 = s5; - if (s7 != s5){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} + if (s7 != s5){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} // Clear. Error if they are not equal s0.clear(); - if (s0.length() != 0){ACE_ERROR((LM_ERROR,"Set #3: \n"));return 1;} + if (s0.length() != 0){ACE_ERROR((LM_ERROR,"Set #3:\n"));return 1;} } { @@ -272,44 +272,44 @@ run_main (int, ACE_TCHAR *[]) ACE_CString s1("dog"); ACE_CString s2("d"); - if (s1 == s2){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} - if (!(s1 > s2)){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} - if (s1 < s2){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} + if (s1 == s2){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} + if (!(s1 > s2)){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} + if (s1 < s2){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} ACE_CString s3 ("dog"); ACE_CString s4 ("dogbert"); - if (s3 == s4){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} - if (!(s3 < s4)){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} - if (s3 > s4){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} + if (s3 == s4){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} + if (!(s3 < s4)){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} + if (s3 > s4){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} ACE_CString s5 ("dogbert",3); ACE_CString s6 ("dogbert",5); - if(s5 == s6){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} - if(!(s5 < s6)){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} - if(s5 > s6){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} + if(s5 == s6){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} + if(!(s5 < s6)){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} + if(s5 > s6){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} ACE_CString s7 ("dogbert",4); ACE_CString s8 ("dogbert",2); - if(s7 == s8){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} - if(!(s7 > s8)){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} - if(s7 < s8){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} + if(s7 == s8){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} + if(!(s7 > s8)){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} + if(s7 < s8){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} ACE_CString s9 ("dogbert",3); ACE_CString s10 ("dogbert"); - if(s9 == s10){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} - if(!(s9 < s10)){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} - if(s9 > s10){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} + if(s9 == s10){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} + if(!(s9 < s10)){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} + if(s9 > s10){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} ACE_CString s11 ("dogbert",5); ACE_CString s12 ("dog"); - if(s11 == s12){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} - if(!(s11 > s12)){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} - if(s11 < s12){ACE_ERROR((LM_ERROR,"Set #4: \n"));return 1;} + if(s11 == s12){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} + if(!(s11 > s12)){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} + if(s11 < s12){ACE_ERROR((LM_ERROR,"Set #4:\n"));return 1;} s11.fast_clear (); if (s11.length () != 0) @@ -329,7 +329,7 @@ run_main (int, ACE_TCHAR *[]) sstr.substring (2, 300); if (tmp.length () == 300) - ACE_ERROR ((LM_ERROR, "SString substring \n")); + ACE_ERROR ((LM_ERROR, "SString substring\n")); // Constring an ACE_SString without a character pointer or from an // existing ACE_SString causes memory to be allocated that will not diff --git a/ACE/tests/Sendfile_Test.cpp b/ACE/tests/Sendfile_Test.cpp index 144b42657b8..b87999c8062 100644 --- a/ACE/tests/Sendfile_Test.cpp +++ b/ACE/tests/Sendfile_Test.cpp @@ -68,8 +68,8 @@ client (void *arg) } ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) connected to %s\n"), - ACE_TEXT_CHAR_TO_TCHAR(server_addr.get_host_name ()))); + ACE_TEXT ("(%P|%t) connected to %C\n"), + server_addr.get_host_name ())); //******************* TEST 1 ****************************** // @@ -187,8 +187,8 @@ server (void *arg) } ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) client %s connected from %d\n"), - ACE_TEXT_CHAR_TO_TCHAR(cli_addr.get_host_name ()), + ACE_TEXT ("(%P|%t) client %C connected from %d\n"), + cli_addr.get_host_name (), cli_addr.get_port_number ())); //******************* TEST 1 ****************************** diff --git a/ACE/tests/Service_Config_Test.cpp b/ACE/tests/Service_Config_Test.cpp index e690c34cc5a..10f02350d29 100644 --- a/ACE/tests/Service_Config_Test.cpp +++ b/ACE/tests/Service_Config_Test.cpp @@ -36,6 +36,15 @@ static const u_int VARIETIES = 3; static u_int error = 0; +class MyRepository : public ACE_Service_Repository +{ +public: + array_type& array () + { + return service_array_; + } +}; + /** * @class Test_Singleton * @@ -66,10 +75,9 @@ private: u_short Test_Singleton::current_ = 0; extern "C" void -test_singleton_cleanup (void *object, void *param) +test_singleton_cleanup (void *object, void *) { // We can't reliably use ACE_Log_Msg in a cleanup hook. Yet. - ACE_UNUSED_ARG (param); /* ACE_DEBUG ((LM_DEBUG, "cleanup %d\n", (u_short) param)); */ delete (Test_Singleton *) object; @@ -81,13 +89,16 @@ Test_Singleton::instance (u_short variety) static Test_Singleton *instances[VARIETIES] = { 0 }; if (instances[variety] == 0) - ACE_NEW_RETURN (instances[variety], - Test_Singleton (variety), - 0); + { + ACE_NEW_RETURN (instances[variety], + Test_Singleton (variety), + 0); + } ACE_Object_Manager::at_exit (instances[variety], test_singleton_cleanup, - reinterpret_cast<void *> (static_cast<size_t> (variety))); + reinterpret_cast<void *> (static_cast<size_t> (variety)), + "Test_Singleton"); return instances[variety]; } @@ -146,7 +157,7 @@ testFailedServiceInit (int, ACE_TCHAR *[]) } // Try to find the service; it should not be there. - ACE_Service_Type const *svcp; + ACE_Service_Type const *svcp = 0; if (-1 != ACE_Service_Repository::instance ()->find (ACE_TEXT ("Refuses_Svc"), &svcp)) { @@ -317,7 +328,7 @@ testLoadingServiceConfFile (int argc, ACE_TCHAR *argv[]) } -// @brief The size of a repository is pre-determined and can not be exceeded +// @brief The size of a repository is unlimited and can be exceeded void testLimits (int , ACE_TCHAR *[]) { @@ -343,10 +354,9 @@ testLimits (int , ACE_TCHAR *[]) #endif /* (ACE_USES_CLASSIC_SVC_CONF == 1) */ ; - u_int error0 = error; - // Ensure enough room for one in a own + // Ensure enough room for one in a own, the repository can extend ACE_Service_Gestalt one (1, true); // Add two. @@ -362,18 +372,135 @@ testLimits (int , ACE_TCHAR *[]) ACE_ERROR ((LM_ERROR, ACE_TEXT("Expected to have registered the first service\n"))); } - if (-1 != one.find (ACE_TEXT ("Test_Object_2_More"), 0, 0)) + if (-1 == one.find (ACE_TEXT ("Test_Object_2_More"), 0, 0)) { ++error; - ACE_ERROR ((LM_ERROR, ACE_TEXT("Being able to add more than 1 service was not expected\n"))); + ACE_ERROR ((LM_ERROR, ACE_TEXT("Expected to have registered the second service\n"))); + } + + ACE_Service_Repository_Iterator sri (*one.current_service_repository (), 0); + + size_t index = 0; + for (const ACE_Service_Type *sr; + sri.next (sr) != 0; + sri.advance ()) + { + if (index == 0 && ACE_OS::strcmp (sr->name(), ACE_TEXT ("Test_Object_1_More")) != 0) + { + ++error; + ACE_ERROR ((LM_ERROR, ACE_TEXT("Service 1 is wrong\n"))); + } + if (index == 1 && ACE_OS::strcmp (sr->name(), ACE_TEXT ("Test_Object_2_More")) != 0) + { + ++error; + ACE_ERROR ((LM_ERROR, ACE_TEXT("Service 2 is wrong\n"))); + } + ++index; + } + + // Test close + one.current_service_repository ()->close(); + + if (one.current_service_repository ()->current_size () != 0) + { + ++error; + ACE_ERROR ((LM_ERROR, ACE_TEXT("Size of repository should be 0\n"))); } if (error == error0) ACE_DEBUG ((LM_DEBUG, ACE_TEXT("Limits test completed successfully\n"))); else ACE_DEBUG ((LM_DEBUG, ACE_TEXT("Limits test failed\n"))); + } +void +testrepository (int, ACE_TCHAR *[]) +{ + MyRepository repository; + ACE_DLL handle; + ACE_Service_Type s0 (ACE_TEXT ("0"), 0, handle, false); + ACE_Service_Type s1 (ACE_TEXT ("1"), 0, handle, false); + ACE_Service_Type s2 (ACE_TEXT ("2"), 0, handle, false); + ACE_Service_Type s3 (ACE_TEXT ("3"), 0, handle, false); + ACE_Service_Type* result = 0; + repository.insert (&s0); + if (repository.current_size () != 1) + { + ++error; + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Repository was wrong size %d\n"), + repository.current_size ())); + } + repository.insert (&s1); + if (repository.current_size () != 2) + { + ++error; + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Repository was wrong size %d\n"), + repository.current_size ())); + } + repository.insert (&s2); + if (repository.current_size () != 3) + { + ++error; + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Repository was wrong size %d\n"), + repository.current_size ())); + } + if (repository.remove (ACE_TEXT ("1"), &result) != 0) + { + ++error; + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Remove failed\n"))); + } + if (repository.current_size () != 3) + { + ++error; + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Repository was wrong size %d\n"), + repository.current_size ())); + } + if (repository.array ()[1] != 0) + { + ++error; + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Element 1 not zero\n"), + repository.current_size ())); + } + repository.insert (&s3); + if (repository.current_size () != 4) + { + ++error; + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Repository was wrong size %d\n"), + repository.current_size ())); + } + repository.remove (ACE_TEXT ("0"), &result); + if (repository.remove (ACE_TEXT ("1"), &result) != -1) + { + ++error; + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Double remove didn't return -1\n"))); + } + repository.remove (ACE_TEXT ("2"), &result); + repository.remove (ACE_TEXT ("3"), &result); + if (repository.current_size () != 4) + { + ++error; + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Repository was wrong size %d\n"), + repository.current_size ())); + } + repository.close (); + if (repository.current_size () != 0) + { + ++error; + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("Repository was wrong size %d\n"), + repository.current_size ())); + } +} // @brief ?? void @@ -476,7 +603,7 @@ testNonACEThread () u_int errors_before = error; -#if defined (ACE_HAS_WTHREADS) +#if defined (ACE_HAS_WTHREADS) && !defined (ACE_HAS_WINCE) HANDLE thr_h = (HANDLE)_beginthreadex (0, 0, &nonacethreadentry, @@ -539,6 +666,7 @@ run_main (int argc, ACE_TCHAR *argv[]) testLoadingServiceConfFile (argc, argv); testLoadingServiceConfFileAndProcessNo (argc, argv); testLimits (argc, argv); + testrepository (argc, argv); #if defined (ACE_HAS_WTHREADS) || defined (ACE_HAS_PTHREADS_STD) testNonACEThread(); #endif diff --git a/ACE/tests/Signal_Test.cpp b/ACE/tests/Signal_Test.cpp index 26a10e2ef0a..74251025f0a 100644 --- a/ACE/tests/Signal_Test.cpp +++ b/ACE/tests/Signal_Test.cpp @@ -97,7 +97,7 @@ handle_signal (int signum) #if 0 ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%P|%t) killing child pid %d \n"), + ACE_TEXT ("(%P|%t) killing child pid %d\n"), child_pid)); #endif int const result = ACE_OS::kill (child_pid, diff --git a/ACE/tests/Singleton_Test.cpp b/ACE/tests/Singleton_Test.cpp new file mode 100644 index 00000000000..03d2ec9bdd8 --- /dev/null +++ b/ACE/tests/Singleton_Test.cpp @@ -0,0 +1,37 @@ +// $Id$ + +// ============================================================================ +// +// = LIBRARY +// tests +// +// = FILENAME +// Singleton_Test.cpp +// +// = DESCRIPTION +// This is a simple test of ACE Singleton +// +// = AUTHOR +// Johnny Willemsen <jwillemsen@remedy.nl> +// +// ============================================================================ + +#include "tests/test_config.h" +#include "ace/Singleton.h" + +ACE_RCSID(tests, Singleton_Test, "$Id$") + +int +run_main (int, ACE_TCHAR *[]) +{ + ACE_START_TEST (ACE_TEXT ("Singleton_Test")); + + int *i = ACE_Singleton <int, ACE_SYNCH_RECURSIVE_MUTEX>::instance (); + *i = 3; + ACE_Singleton <int, ACE_SYNCH_RECURSIVE_MUTEX>::close (); + + ACE_END_TEST; + + return 0; +} + diff --git a/ACE/tests/Stack_Trace_Test.cpp b/ACE/tests/Stack_Trace_Test.cpp index a02b062fd43..9823d432178 100644 --- a/ACE/tests/Stack_Trace_Test.cpp +++ b/ACE/tests/Stack_Trace_Test.cpp @@ -34,10 +34,10 @@ struct SomeException { static const ssize_t SKIP = 1; //@TODO: #ifdef this for MACOSX which needs 2 SomeException () : where_(SKIP), explanation_ ("") { } - SomeException (const char* explanation) + SomeException (const char *explanation) : where_(SKIP), explanation_(explanation) { } ACE_Stack_Trace where_; - const char* explanation_; + const char *explanation_; }; void @@ -52,17 +52,17 @@ run_main (int, ACE_TCHAR *[]) ACE_START_TEST (ACE_TEXT ("Stack_Trace_Test")); ACE_Stack_Trace t1; - ACE_DEBUG ((LM_DEBUG, "t1 trace is %s\n", t1.c_str())); + ACE_DEBUG ((LM_DEBUG, "t1 trace is %C\n", t1.c_str())); ACE_Stack_Trace t2(t1); - ACE_DEBUG ((LM_DEBUG, "t2 (copied) trace is %s\n", + ACE_DEBUG ((LM_DEBUG, "t2 (copied) trace is %C\n", (ACE_OS::strcmp (t1.c_str(), t2.c_str()) == 0) ? "same" : "different")); ACE_Stack_Trace t3; - ACE_DEBUG ((LM_DEBUG, "t3 trace before assignment is %s\n", + ACE_DEBUG ((LM_DEBUG, "t3 trace before assignment is %C\n", (ACE_OS::strcmp (t1.c_str(), t3.c_str()) == 0) ? "same" : "different")); t3 = t1; - ACE_DEBUG ((LM_DEBUG, "t3 trace after assignment is %s\n", + ACE_DEBUG ((LM_DEBUG, "t3 trace after assignment is %C\n", (ACE_OS::strcmp (t1.c_str(), t3.c_str()) == 0) ? "same" : "different")); try { @@ -70,13 +70,13 @@ run_main (int, ACE_TCHAR *[]) } catch (SomeException& e) { ACE_DEBUG ((LM_DEBUG, - "SomeException caught at\n%?\n; thrown at\n%s", + "SomeException caught at\n%?\n; thrown at\n%C", e.where_.c_str())); } ACE_Stack_Trace one_frame_only(0, 1); ACE_DEBUG ((LM_DEBUG, - "stack trace of only one frame:\n%s", + "stack trace of only one frame:\n%C", one_frame_only.c_str())); ACE_DEBUG ((LM_DEBUG, "getting ready to end the test at %?\n")); diff --git a/ACE/tests/Svc_Handler_Test.cpp b/ACE/tests/Svc_Handler_Test.cpp index d7342808799..23dba078c8e 100644 --- a/ACE/tests/Svc_Handler_Test.cpp +++ b/ACE/tests/Svc_Handler_Test.cpp @@ -131,7 +131,7 @@ run_main (int argc, ACE_TCHAR *argv[]) for (ssize_t n_bytes; (n_bytes = file_io.recv (buf, ACE_MAXLOGMSGLEN)) > 0; ) { buf[n_bytes] = '\0'; - ACE_DEBUG ((LM_DEBUG, ACE_TEXT("%s"), ACE_TEXT_CHAR_TO_TCHAR(buf))); + ACE_DEBUG ((LM_DEBUG, ACE_TEXT("%C"), buf)); } ACE_DEBUG ((LM_DEBUG, ACE_TEXT("\n"))); diff --git a/ACE/tests/TP_Reactor_Test.cpp b/ACE/tests/TP_Reactor_Test.cpp index b6e4884c890..d0dff09d194 100644 --- a/ACE/tests/TP_Reactor_Test.cpp +++ b/ACE/tests/TP_Reactor_Test.cpp @@ -348,8 +348,8 @@ Acceptor::start (const ACE_INET_Addr &addr) ACE_Reactor::instance (), ACE_NONBLOCK) < 0) ACE_ERROR_RETURN ((LM_ERROR, - "%p\n", - "Acceptor::start () - open failed"), + ACE_TEXT("%p\n"), + ACE_TEXT("Acceptor::start () - open failed")), 0); return 1; } @@ -506,11 +506,11 @@ Receiver::handle_input (ACE_HANDLE h) LogLocker log_lock; ACE_DEBUG ((LM_DEBUG, "**** Receiver::handle_input () SessionId=%d****\n", index_)); - ACE_DEBUG ((LM_DEBUG, "%s = %d\n", "bytes_to_read", BUFSIZ)); - ACE_DEBUG ((LM_DEBUG, "%s = %d\n", "handle", h)); - ACE_DEBUG ((LM_DEBUG, "%s = %d\n", "bytes_transferred", res)); - ACE_DEBUG ((LM_DEBUG, "%s = %d\n", "error", err)); - ACE_DEBUG ((LM_DEBUG, "%s = %s\n", "message_block", mb->rd_ptr ())); + ACE_DEBUG ((LM_DEBUG, "%C = %d\n", "bytes_to_read", BUFSIZ)); + ACE_DEBUG ((LM_DEBUG, "%C = %d\n", "handle", h)); + ACE_DEBUG ((LM_DEBUG, "%C = %d\n", "bytes_transferred", res)); + ACE_DEBUG ((LM_DEBUG, "%C = %d\n", "error", err)); + ACE_DEBUG ((LM_DEBUG, "%C = %s\n", "message_block", mb->rd_ptr ())); ACE_DEBUG ((LM_DEBUG, "**** end of message ****************\n")); } @@ -591,11 +591,11 @@ Receiver::handle_output (ACE_HANDLE h) LogLocker log_lock; ACE_DEBUG ((LM_DEBUG, "**** Receiver::handle_output () SessionId=%d****\n", index_)); - ACE_DEBUG ((LM_DEBUG, "%s = %d\n", "bytes_to_write", bytes)); - ACE_DEBUG ((LM_DEBUG, "%s = %d\n", "handle", h)); - ACE_DEBUG ((LM_DEBUG, "%s = %d\n", "bytes_transferred", res)); - ACE_DEBUG ((LM_DEBUG, "%s = %d\n", "error", err)); - ACE_DEBUG ((LM_DEBUG, "%s = %s\n", "message_block", mb->rd_ptr ())); + ACE_DEBUG ((LM_DEBUG, "%C = %d\n", "bytes_to_write", bytes)); + ACE_DEBUG ((LM_DEBUG, "%C = %d\n", "handle", h)); + ACE_DEBUG ((LM_DEBUG, "%C = %d\n", "bytes_transferred", res)); + ACE_DEBUG ((LM_DEBUG, "%C = %d\n", "error", err)); + ACE_DEBUG ((LM_DEBUG, "%C = %s\n", "message_block", mb->rd_ptr ())); ACE_DEBUG ((LM_DEBUG, "**** end of message ****************\n")); } } @@ -709,8 +709,8 @@ Connector::start (const ACE_INET_Addr & addr, int num) ACE_NONBLOCK) < 0) ACE_ERROR_RETURN ((LM_ERROR, - "%p\n", - "Connector::start () - open failed"), + ACE_TEXT("%p\n"), + ACE_TEXT("Connector::start () - open failed")), 0); int rc = 0; @@ -722,8 +722,8 @@ Connector::start (const ACE_INET_Addr & addr, int num) if (ACE_Connector<Sender,ACE_SOCK_CONNECTOR>::connect (sender, addr) < 0) ACE_ERROR_RETURN ((LM_ERROR, - "%p\n", - "Connector::start () - connect failed"), + ACE_TEXT("%p\n"), + ACE_TEXT("Connector::start () - connect failed")), rc); } @@ -919,11 +919,11 @@ Sender::handle_input (ACE_HANDLE h) LogLocker log_lock; ACE_DEBUG ((LM_DEBUG, "**** Sender::handle_input () SessionId=%d****\n", index_)); - ACE_DEBUG ((LM_DEBUG, "%s = %d\n", "bytes_to_read", BUFSIZ)); - ACE_DEBUG ((LM_DEBUG, "%s = %d\n", "handle", h)); - ACE_DEBUG ((LM_DEBUG, "%s = %d\n", "bytes_transferred", res)); - ACE_DEBUG ((LM_DEBUG, "%s = %d\n", "error", err)); - ACE_DEBUG ((LM_DEBUG, "%s = %s\n", "message_block", mb->rd_ptr ())); + ACE_DEBUG ((LM_DEBUG, "%C = %d\n", "bytes_to_read", BUFSIZ)); + ACE_DEBUG ((LM_DEBUG, "%C = %d\n", "handle", h)); + ACE_DEBUG ((LM_DEBUG, "%C = %d\n", "bytes_transferred", res)); + ACE_DEBUG ((LM_DEBUG, "%C = %d\n", "error", err)); + ACE_DEBUG ((LM_DEBUG, "%C = %s\n", "message_block", mb->rd_ptr ())); ACE_DEBUG ((LM_DEBUG, "**** end of message ****************\n")); } @@ -987,11 +987,11 @@ Sender::handle_output (ACE_HANDLE h) LogLocker log_lock; ACE_DEBUG ((LM_DEBUG, "**** Sender::handle_output () SessionId=%d****\n", index_)); - ACE_DEBUG ((LM_DEBUG, "%s = %d\n", "bytes_to_write", bytes)); - ACE_DEBUG ((LM_DEBUG, "%s = %d\n", "handle", h)); - ACE_DEBUG ((LM_DEBUG, "%s = %d\n", "bytes_transferred", res)); - ACE_DEBUG ((LM_DEBUG, "%s = %d\n", "error", err)); - ACE_DEBUG ((LM_DEBUG, "%s = %s\n", "message_block", mb->rd_ptr ())); + ACE_DEBUG ((LM_DEBUG, "%C = %d\n", "bytes_to_write", bytes)); + ACE_DEBUG ((LM_DEBUG, "%C = %d\n", "handle", h)); + ACE_DEBUG ((LM_DEBUG, "%C = %d\n", "bytes_transferred", res)); + ACE_DEBUG ((LM_DEBUG, "%C = %d\n", "error", err)); + ACE_DEBUG ((LM_DEBUG, "%C = %s\n", "message_block", mb->rd_ptr ())); ACE_DEBUG ((LM_DEBUG, "**** end of message ****************\n")); } } @@ -1122,8 +1122,8 @@ disable_signal (int sigmin, int sigmax) sigset_t signal_set; if (ACE_OS::sigemptyset (&signal_set) == - 1) ACE_ERROR ((LM_ERROR, - "Error: (%P | %t):%p\n", - "sigemptyset failed")); + ACE_TEXT("Error: (%P | %t):%p\n"), + ACE_TEXT("sigemptyset failed"))); for (int i = sigmin; i <= sigmax; i++) ACE_OS::sigaddset (&signal_set, i); @@ -1131,8 +1131,8 @@ disable_signal (int sigmin, int sigmax) // Put the <signal_set>. if (ACE_OS::pthread_sigmask (SIG_BLOCK, &signal_set, 0) != 0) ACE_ERROR ((LM_ERROR, - "Error: (%P | %t):%p\n", - "pthread_sigmask failed")); + ACE_TEXT("Error: (%P | %t):%p\n"), + ACE_TEXT("pthread_sigmask failed"))); #else ACE_UNUSED_ARG(sigmin); ACE_UNUSED_ARG(sigmax); diff --git a/ACE/tests/Test_Output.cpp b/ACE/tests/Test_Output.cpp index 800f8e43abc..5ee03690dd7 100644 --- a/ACE/tests/Test_Output.cpp +++ b/ACE/tests/Test_Output.cpp @@ -87,14 +87,15 @@ ACE_Test_Output::set_output (const ACE_TCHAR *filename, int append) // Ignore the error value since the directory may already exist. const ACE_TCHAR *test_dir = 0; -#if !defined (ACE_HAS_WINCE) -# if defined (ACE_WIN32) || !defined (ACE_USES_WCHAR) +#if defined (ACE_WIN32) || !defined (ACE_USES_WCHAR) test_dir = ACE_OS::getenv (ACE_TEXT ("ACE_TEST_DIR")); -# else +#else ACE_TCHAR tempenv[MAXPATHLEN + 1] = { 0 }; char const * const test_dir_n = ACE_OS::getenv ("ACE_TEST_DIR"); if (test_dir_n == 0) - test_dir = 0; + { + test_dir = 0; + } else { ACE_OS::strncpy (tempenv, @@ -102,11 +103,10 @@ ACE_Test_Output::set_output (const ACE_TCHAR *filename, int append) MAXPATHLEN); test_dir = tempenv; } -# endif /* ACE_WIN32 || !ACE_USES_WCHAR */ +#endif /* ACE_WIN32 */ if (test_dir == 0) -#endif /* ACE_HAS_WINCE */ - test_dir = ACE_TEXT (""); + test_dir = ACE_DEFAULT_TEST_DIR; // This could be done with ACE_OS::sprintf() but it requires different // format strings for wide-char POSIX vs. narrow-char POSIX and Windows. @@ -135,12 +135,8 @@ ACE_Test_Output::set_output (const ACE_TCHAR *filename, int append) // directory does exist, it causes a wierd console error message // about "cat: input error on standard input: Is a directory". So, // VxWorks users must create the directory manually. -# if defined (ACE_HAS_WINCE) - ACE_OS::mkdir (ACE_LOG_DIRECTORY_FOR_MKDIR); -# else - ACE_OS::mkdir (ACE_LOG_DIRECTORY); -# endif // ACE_HAS_WINCE -#endif /* ! ACE_VXWORKS */ + ACE_OS::mkdir (ACE_LOG_DIRECTORY_FOR_MKDIR); +#endif /* ACE_VXWORKS */ # if !defined (ACE_LACKS_IOSTREAM_TOTALLY) this->output_file_->open (ACE_TEXT_ALWAYS_CHAR (temp), @@ -184,7 +180,7 @@ ACE_Test_Output::close (void) // have closed the output_file_ } -ACE_Test_Output* +ACE_Test_Output * ACE_Test_Output::instance () { if (ACE_Test_Output::instance_ == 0) diff --git a/ACE/tests/Thread_Pool_Reactor_Resume_Test.cpp b/ACE/tests/Thread_Pool_Reactor_Resume_Test.cpp index 51df91fccf0..a2cbb5569d7 100644 --- a/ACE/tests/Thread_Pool_Reactor_Resume_Test.cpp +++ b/ACE/tests/Thread_Pool_Reactor_Resume_Test.cpp @@ -163,7 +163,7 @@ int Request_Handler::resume_handler (void) { ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("(%t) resume_handler () called \n"))); + ACE_TEXT ("(%t) resume_handler () called\n"))); return 1; } @@ -214,7 +214,7 @@ Request_Handler::handle_close (ACE_HANDLE fd, ACE_Reactor_Mask) this->nr_msgs_rcvd_)); if (this->nr_msgs_rcvd_ != cli_req_no) ACE_ERROR((LM_ERROR, - "(%t) Handler 0x%x: Expected %d messages; got %d\n", + ACE_TEXT ("(%t) Handler 0x%x: Expected %d messages; got %d\n"), this, cli_req_no, this->nr_msgs_rcvd_)); @@ -240,8 +240,8 @@ svr_worker (void *) if (result == -1) ACE_ERROR_RETURN ((LM_ERROR, - "(%t) %p\n", - "Error handling events"), + ACE_TEXT ("(%t) %p\n"), + ACE_TEXT ("Error handling events")), 0); ACE_DEBUG ((LM_DEBUG, @@ -265,8 +265,8 @@ cli_worker (void *arg) if (connect.connect (stream, addr) < 0) { ACE_ERROR ((LM_ERROR, - "(%t) %p\n", - "connect")); + ACE_TEXT ("(%t) %p\n"), + ACE_TEXT ("connect"))); continue; } @@ -280,8 +280,8 @@ cli_worker (void *arg) (len + 1) * sizeof (ACE_TCHAR)) == -1) { ACE_ERROR ((LM_ERROR, - "(%t) %p\n", - "send_n")); + ACE_TEXT ("(%t) %p\n"), + ACE_TEXT ("send_n"))); continue; } ACE_OS::sleep (delay); @@ -321,8 +321,8 @@ worker (void *) if (connect.connect (stream, addr) == -1) ACE_ERROR ((LM_ERROR, - "(%t) %p Error while connecting\n", - "connect")); + ACE_TEXT ("(%t) %p Error while connecting\n"), + ACE_TEXT ("connect"))); const ACE_TCHAR *sbuf = ACE_TEXT ("\011shutdown"); @@ -332,8 +332,8 @@ worker (void *) if (stream.send_n (sbuf, (ACE_OS::strlen (sbuf) + 1) * sizeof (ACE_TCHAR)) == -1) ACE_ERROR ((LM_ERROR, - "(%t) %p\n", - "send_n")); + ACE_TEXT ("(%t) %p\n"), + ACE_TEXT ("send_n"))); ACE_DEBUG ((LM_DEBUG, "Sent message of length = %d\n", diff --git a/ACE/tests/UUID_Test.cpp b/ACE/tests/UUID_Test.cpp index 6b54ea7d2d0..7f8cf15bc74 100644 --- a/ACE/tests/UUID_Test.cpp +++ b/ACE/tests/UUID_Test.cpp @@ -79,6 +79,30 @@ Tester::test (void) retval = -1; } + ACE_Utils::UUID nil_uuid (*ACE_Utils::UUID::NIL_UUID.to_string ()); + ACE_DEBUG ((LM_DEBUG, + "UUID Constructed from NIL_UUID with string copy\n %s\n", + nil_uuid.to_string ()->c_str ())); + + if (nil_uuid != ACE_Utils::UUID::NIL_UUID) + { + ACE_ERROR ((LM_ERROR, "Error: UUIDs are not the same with NIL_UUID string copy\n")); + retval = -1; + } + + // Construct UUID using the assignment constructor + ACE_Utils::UUID new_uuid_assigment; + new_uuid_assigment = new_uuid; + ACE_DEBUG ((LM_DEBUG, + "UUID Constructed from above Generated UUID with assignment\n %s\n", + new_uuid_assigment.to_string ()->c_str ())); + + if (new_uuid != new_uuid_assigment) + { + ACE_ERROR ((LM_ERROR, "Error: UUIDs are not the same with assignment\n")); + retval = -1; + } + // Generate UUID with process and thread ids. auto_ptr <ACE_Utils::UUID> uuid_with_tp_id (ACE_Utils::UUID_GENERATOR::instance ()->generate_UUID (0x0001, 0xc0)); diff --git a/ACE/tests/Upgradable_RW_Test.cpp b/ACE/tests/Upgradable_RW_Test.cpp index 7f005517c77..9c8279fbc5b 100644 --- a/ACE/tests/Upgradable_RW_Test.cpp +++ b/ACE/tests/Upgradable_RW_Test.cpp @@ -299,9 +299,9 @@ Time_Calculation ::print_stats (void) ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n") - ACE_TEXT ("\treal_time\t = %0.06f ms, \n") - ACE_TEXT ("\tuser_time\t = %0.06f ms, \n") - ACE_TEXT ("\tsystem_time\t = %0.06f ms, \n") + ACE_TEXT ("\treal_time\t = %0.06f ms,\n") + ACE_TEXT ("\tuser_time\t = %0.06f ms,\n") + ACE_TEXT ("\tsystem_time\t = %0.06f ms,\n") ACE_TEXT ("\t%0.00f calls/second\n"), elapsed_time.real_time < 0.0 ? 0.0 : elapsed_time.real_time, elapsed_time.user_time < 0.0 ? 0.0 : elapsed_time.user_time, @@ -438,7 +438,7 @@ run_main (int argc, ACE_TCHAR *argv[]) if (not_upgraded != 0 || upgraded != 0) ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("upgraded to not upgraded ratio = %f \n"), + ACE_TEXT ("upgraded to not upgraded ratio = %f\n"), (float) upgraded / (float) (not_upgraded + upgraded))); ACE_DEBUG ((LM_DEBUG, diff --git a/ACE/tests/Vector_Test.cpp b/ACE/tests/Vector_Test.cpp index 3866094c62b..ecfae68116b 100644 --- a/ACE/tests/Vector_Test.cpp +++ b/ACE/tests/Vector_Test.cpp @@ -24,15 +24,8 @@ ACE_RCSID(tests, Vector_Test, "$Id$") #include "ace/Vector_T.h" typedef size_t DATA; -#if defined (__BORLANDC__) && (__BORLANDC__ <= 0x570) -// Borland C++ Builder 6 and earlier don't handle the second template -// argument correctly. We have to pass it explicitly -typedef ACE_Vector<DATA, ACE_VECTOR_DEFAULT_SIZE> VECTOR; -typedef ACE_Vector<DATA, ACE_VECTOR_DEFAULT_SIZE>::Iterator ITERATOR; -#else typedef ACE_Vector<DATA> VECTOR; typedef ACE_Vector<DATA>::Iterator ITERATOR; -#endif const size_t TOP = 100; const size_t LEFT = 10; @@ -123,10 +116,10 @@ int run_main (int, ACE_TCHAR *[]) // test resize (shrink and enlarge with buffer realloc) VECTOR vector2; - + // should be around 32 size_t boundary = vector2.capacity (); - + // we fill everything up with 1 // 1, 1, 1, 1, 1, 1, 1, 1, // 1, 1, 1, 1, 1, 1, 1, 1, @@ -134,7 +127,7 @@ int run_main (int, ACE_TCHAR *[]) // 1, 1, 1, 1, 1, 1, 1, 1, for (i = 0; i < boundary; ++i) vector2.push_back (FILLER1); - + // we throw almost everything away. vector2.resize (1, 0); @@ -145,7 +138,7 @@ int run_main (int, ACE_TCHAR *[]) // 2, 2, 2, 2, 2, 2, 2, 2, // 2, for (i = 0; i < boundary; ++i) - vector2.push_back (FILLER2); + vector2.push_back (FILLER2); // now we check the result ACE_ASSERT (vector2[0] == FILLER1); diff --git a/ACE/tests/Wild_Match_Test.cpp b/ACE/tests/Wild_Match_Test.cpp new file mode 100644 index 00000000000..d88996d8c74 --- /dev/null +++ b/ACE/tests/Wild_Match_Test.cpp @@ -0,0 +1,51 @@ +// $Id$ + +#include "ace/ACE.h" +#include "test_config.h" + +ACE_RCSID (tests, Wild_Match_Test, "$Id$") + +bool match (const char *str, const char *pat, bool cs = true, bool cc = false) +{ + bool result = ACE::wild_match (str, pat, cs, cc); + ACE_DEBUG ((LM_DEBUG, "string {%C} %C pattern {%s}\t%C\t%C\n", str, + (result ? "matches" : "does not match"), pat, + (cs ? "" : "case-insensitive"), (cc ? "char classes" : ""))); + return result; +} + +int run_main (int, ACE_TCHAR *[]) +{ + ACE_START_TEST (ACE_TEXT ("Wild_Match_Test")); + + bool ok = true; + ok &= match ("foo_baz_bar", "foo*bar"); + ok &= match ("lksfj;laskf;jbaz", "*baz"); + ok &= !match ("abc", "abc?"); + ok &= match ("simple", "simple"); + ok &= !match ("not so simple", "simple"); + ok &= match ("AbC", "abc", false); + ok &= match ("*\\", "\\*\\\\"); + ok &= match ("Nonwild[foo]", "*[foo]"); + ok &= match ("Apple][", "[zxya]p*[]125]\\[", false, true); + ok &= match ("[!]", "[][!][][!][][!]", true, true); + ok &= match ("ace", "[a-e][a-e][a-e]", true, true); + ok &= match ("--x", "[-1][2-][!-]", true, true); + + ok &= !match ("C2", "[!C]?", true, true); + ok &= match ("D1", "[!C]?", true, true); + ok &= match ("D2", "[!C]?", true, true); + + ok &= !match ("C2", "?[!2]", true, true); + ok &= match ("C1", "?[!2]", true, true); + + // invalid classes: results are undefined but we shouldn't crash + match ("foo", "f[o-a]o", true, true); + match ("bar", "[f-", true, true); + match ("bar", "[z", true, true); + match ("bar", "[]x", true, true); + match ("foo", "[f-f]oo", true, true); + + ACE_END_TEST; + return ok ? 0 : 1; +} diff --git a/ACE/tests/acetest.mpb b/ACE/tests/acetest.mpb index f9c60d247fc..e0d47b0e581 100644 --- a/ACE/tests/acetest.mpb +++ b/ACE/tests/acetest.mpb @@ -19,4 +19,9 @@ project : aceexe { } Template_Files { } + Build_Files { + tests.mpc + tests.mwc + acetest.mpb + } } diff --git a/ACE/tests/run_test.lst b/ACE/tests/run_test.lst index 3a5832eb416..5e729f7ac02 100644 --- a/ACE/tests/run_test.lst +++ b/ACE/tests/run_test.lst @@ -38,12 +38,17 @@ Bug_2540_Regression_Test #Bug_2610_Regression_Test: !ST !ACE_FOR_TAO Bug_2659_Regression_Test: !ST !VxWorks64 !VxWorks65 Bug_2653_Regression_Test: !ST +Bug_2772_Regression_Test: !ST !FIXED_BUGS_ONLY Bug_2815_Regression_Test Bug_2820_Regression_Test Bug_2980_Regression_Test: !STATIC !Win32 !VxWorks !WCHAR Bug_3102_Regression_Test Bug_3319_Regression_Test Bug_3432_Regression_Test +Bug_3500_Regression_Test +Bug_3532_Regression_Test +Bug_3541_Regression_Test +Bug_3505_Regression_Test CDR_Array_Test: !ACE_FOR_TAO CDR_File_Test: !ACE_FOR_TAO CDR_Test @@ -82,9 +87,10 @@ Intrusive_Auto_Ptr_Test Lazy_Map_Manager_Test Log_Msg_Test: !ACE_FOR_TAO Log_Msg_Backend_Test: !ACE_FOR_TAO +Log_Thread_Inheritance_Test: !ST Logging_Strategy_Test: !LynxOS !STATIC !ST Manual_Event_Test -MEM_Stream_Test: !VxWorks !nsk !ACE_FOR_TAO !PHARLAP +MEM_Stream_Test: !VxWorks !nsk !ACE_FOR_TAO !PHARLAP !QNX MM_Shared_Memory_Test: !Unicos !VxWorks !nsk !ACE_FOR_TAO MT_Reactor_Timer_Test MT_Reactor_Upcall_Test: !nsk @@ -123,6 +129,7 @@ Proactor_Test: !VxWorks !LynxOS !nsk !ACE_FOR_TAO !BAD_AIO Proactor_Timer_Test: !VxWorks !nsk !ACE_FOR_TAO Proactor_UDP_Test: !VxWorks !LynxOS !nsk !ACE_FOR_TAO !BAD_AIO Process_Env_Test: !VxWorks !PHARLAP +Process_Test: !VxWorks !ACE_FOR_TAO !PHARLAP !Win32 !FIXED_BUGS_ONLY Process_Manager_Test: !VxWorks !ACE_FOR_TAO !PHARLAP Process_Manual_Event_Test: !HPUX !VxWorks !ACE_FOR_TAO !PHARLAP Process_Mutex_Test: !VxWorks !ACE_FOR_TAO !PHARLAP @@ -162,6 +169,7 @@ Semaphore_Test: !ACE_FOR_TAO Service_Config_Test: !STATIC Sigset_Ops_Test Simple_Message_Block_Test +Singleton_Test Svc_Handler_Test: !ACE_FOR_TAO TP_Reactor_Test: !LynxOS !ACE_FOR_TAO TSS_Test @@ -201,6 +209,7 @@ Process_Strategy_Test: !VxWorks !LynxOS !ACE_FOR_TAO !PHARLAP Recursive_Condition_Bug_Test: !ST UnloadLibACE: !STATIC !WinCE !LabVIEW_RT UUID_Test: !NO_UUID !ACE_FOR_TAO +Wild_Match_Test SSL/Bug_2912_Regression_Test: SSL !ACE_FOR_TAO !BAD_AIO SSL/SSL_Asynch_Stream_Test: SSL !ACE_FOR_TAO !BAD_AIO SSL/Thread_Pool_Reactor_SSL_Test: SSL diff --git a/ACE/tests/run_test.pl b/ACE/tests/run_test.pl index c2915a6fe90..2e3b8769392 100755 --- a/ACE/tests/run_test.pl +++ b/ACE/tests/run_test.pl @@ -16,7 +16,6 @@ if (defined $ENV{top_srcdir}) { use lib "$ENV{top_srcdir}/bin"; } -use PerlACE::Run_Test; use PerlACE::TestTarget; use Cwd; @@ -61,10 +60,6 @@ sub check_for_more_configs () if (!-x $P->Executable ()) { $config_list->add_one_config ('missing_netsvcs'); } - - if (defined $opt_v) { - $config_list->add_one_config ('VxWorks'); - } } ################################################################################ @@ -89,18 +84,12 @@ sub check_resources { my($oh) = shift; if ($config_list->check_config ('CHECK_RESOURCES')) { - if (defined $opt_v) { - print $oh "memShow();\n"; - } - else { - $end_test_resources=`ipcs | egrep $user`; - - if ("$start_test_resources" ne "$end_test_resources") { - print STDERR "Warning: the ACE tests _may_ have leaked OS ". - "resources!\n"; - print STDERR "Warning: Before: $start_test_resources\n"; - print STDERR "Warning: After: $end_test_resources\n"; - } + $end_test_resources=`ipcs | egrep $user`; + if ("$start_test_resources" ne "$end_test_resources") { + print STDERR "Warning: the ACE tests _may_ have leaked OS ". + "resources!\n"; + print STDERR "Warning: Before: $start_test_resources\n"; + print STDERR "Warning: After: $end_test_resources\n"; } } } @@ -131,14 +120,13 @@ sub run_program ($@) unlink <log/$program*.log>; unlink "core"; - my $P = $target->CreateProcess($program,$arguments); + my $P = $target->CreateProcess($program, $arguments); if ($config_list->check_config ('Valgrind')) { $P->IgnoreExeSubDir(1); } else { ### Try to run the program - if (! -e $P->Executable ()) { print STDERR "Error: " . $P->Executable () . " does not exist or is not runnable\n"; @@ -148,18 +136,18 @@ sub run_program ($@) } my $start_time = time(); - $status = $P->SpawnWaitKill (400); + $status = $P->SpawnWaitKill (400 + $target->ProcessStartWaitInterval()); my $time = time() - $start_time; ### Check for problems if ($status == -1) { - print STDERR "Error: $program FAILED (time out)\n"; + print STDERR "Error: $program FAILED (time out after Time:$time"."s)\n"; $P->Kill (); $P->TimedWait (1); } elsif ($status != 0) { - print STDERR "Error: $program $arguments FAILED with exit status $status\n"; + print STDERR "Error: $program $arguments FAILED with exit status $status after Time:$time"."s\n"; } print "\nauto_run_tests_finished: tests/$program $arguments Time:$time"."s Result:$status\n"; @@ -174,63 +162,6 @@ sub run_program ($@) ################################################################################ -sub run_vxworks_command ($) -{ - my $program = shift; - - unlink <log/$program*.log>; - unlink "core"; - - my $P = new PerlACE::ProcessVX ($program); - - ## check module existence - if (! -e $P->Executable ()) { - print STDERR "Error: " . $P->Executable() . - " does not exist\n"; - return; - } - - print "auto_run_tests: tests/$program\n"; - my $start_time = time(); - $status = $P->SpawnWaitKill (400); - my $time = time() - $start_time; - - ### Check for problems - - if ($status == -1) { - print STDERR "Error: $program FAILED (time out)\n"; - $P->Kill (); - $P->TimedWait (1); - } - elsif ($status != 0) { - print STDERR "Error: $program FAILED with exit status $status\n"; - } - - print "\nauto_run_tests_finished: test/$program Time:$time"."s Result:$status\n"; - - check_log ($program); -} - -################################################################################ - -sub output_vxworks_commands -{ - my($oh) = shift; - my($program) = shift; - my($length) = length($program) + 2; - - if (defined $ENV{'ACE_RUN_VX_CHECK_RESOURCES'}) { - print $oh "memShow();\n"; - } - - print $oh "write(2, \"\\n$program\\n\", $length);\n" . - "ld 1,0, \"" . $program . ".out\"\n" . - "vx_execae ace_main\n" . - "unld \"" . $program . ".out\"\n"; -} - -################################################################################ - sub purify_program ($) { ### @todo @@ -260,13 +191,7 @@ sub check_log ($) my $program = shift; ### Check the logs - local $log_suffix; - if (defined $ENV{"ACE_WINCE_TEST_CONTROLLER"}) { - $log_suffix = ".txt"; - } - else { - $log_suffix = ".log"; - } + local $log_suffix = ".log"; # Support logs generated by tests in subdirectories, such as tests # found in the SSL subdirectory. @@ -469,8 +394,6 @@ if (!getopts ('dhtvo:') || $opt_h) { print " -d Debug mode (do not run tests)\n"; print " -h Display this help\n"; print " -t Runs all the tests passed via the cmd line\n"; - print " -v Generate commands for VxWorks\n"; - print " -o Put VxWorks commands in <output file>\n"; print "\n"; print "Pass in configs using \"-Config XXXXX\"\n"; print "\n"; @@ -490,10 +413,6 @@ if (!($tmp = $ENV{TMP}) && !($tmp = $ENV{TEMP})) { check_for_more_configs (); -if (PerlACE::is_vxworks_test ()) { - $opt_v = 1; -} - @tests = (); if (defined $opt_t) { @@ -511,58 +430,28 @@ if (defined $opt_d) { record_resources () if (!defined $opt_d); my($oh) = \*STDOUT; -if (defined $opt_v && defined $opt_o) { - $oh = new FileHandle(); - if ($opt_o != 1) { - if (!open($oh, ">$opt_o")) { - print STDERR "ERROR: Unable to write to $opt_o\n"; - exit(1); - } - } - print $oh "#\n" . - "# ACE one-button test for VxWorks 5.x.\n" . - "# To use: -> < run_test.vxworks > run_test.log\n" . - "#\n" . - "# NOTE: if you build with a shared ACE library, be sure to load\n" . - "# that first:\n" . - "# -> ld < ../ace/libACE.so\n" . - "# and unld it after running the tests.\n" . - "#\n" . - "# The output logs can be checked from a Unix host:\n" . - "# % ./run_tests.check log/*.log\n\n"; - - foreach $test (@tests) { - output_vxworks_commands ($oh, $test); - } -} -else { +my $target = PerlACE::TestTarget::create_target (1); - my $target = PerlACE::TestTarget::create_target (1); +# Put needed files in place for targets that require them. +# +# Service_Config_Test needs service config file. +my $svc_conf_file = $target->LocalFile ("Service_Config_Test.conf"); +if ($target->PutFile ("Service_Config_Test.conf", $svc_conf_file) == -1) { + print STDERR "WARNING: Cannot send $svc_conf_file to target\n"; +} - # Put needed files in place for targets that require them. - # - # Service_Config_Test needs service config file. - my $svc_conf_file = $target->LocalFile ("Service_Config_Test.conf"); - if ($target->PutFile ("Service_Config_Test.conf", $svc_conf_file) == -1) { - print STDERR "WARNING: Cannot send $svc_conf_file to target\n"; +foreach $test (@tests) { + if (defined $opt_d) { + print "Would run test $test now\n"; } - - foreach $test (@tests) { - if (defined $opt_d) { - print "Would run test $test now\n"; - } - elsif ($config_list->check_config ('Purify')) { - purify_program ($test); - } - if (defined $opt_v) { - run_vxworks_command ($test); - } - else { - run_program ($target, $test); - } - $target->GetStderrLog(); + elsif ($config_list->check_config ('Purify')) { + purify_program ($test); + } + else { + run_program ($target, $test); } + $target->GetStderrLog(); } check_resources ($oh) if (!defined $opt_d); diff --git a/ACE/tests/test_config.h b/ACE/tests/test_config.h index 144eaf63928..71923ea293c 100644 --- a/ACE/tests/test_config.h +++ b/ACE/tests/test_config.h @@ -45,32 +45,34 @@ # define MAKE_PIPE_NAME(X) ACE_TEXT ("\\\\.\\pipe\\"#X) #elif defined (ACE_WIN32) # define ACE_LOG_DIRECTORY ACE_TEXT ("log\\") +# define ACE_LOG_DIRECTORY_FOR_MKDIR ACE_TEXT ("log\\") # define MAKE_PIPE_NAME(X) ACE_TEXT ("\\\\.\\pipe\\"#X) #else +# define ACE_LOG_DIRECTORY_FOR_MKDIR ACE_TEXT ("log/") # define ACE_LOG_DIRECTORY ACE_TEXT ("log/") # define MAKE_PIPE_NAME(X) ACE_TEXT (X) #endif /* ACE_WIN32 */ -#if defined (ACE_HAS_WINCE) -#define ACE_LOG_FILE_EXT_NAME ACE_TEXT (".txt") -#else +#if !defined (ACE_DEFAULT_TEST_DIR) +# define ACE_DEFAULT_TEST_DIR ACE_TEXT ("") +#endif + #define ACE_LOG_FILE_EXT_NAME ACE_TEXT (".log") -#endif /* ACE_HAS_WINCE */ #if defined (ACE_HAS_WINCE) || defined (ACE_HAS_PHARLAP) -const size_t ACE_MAX_CLIENTS = 4; +size_t const ACE_MAX_CLIENTS = 4; #else -const size_t ACE_MAX_CLIENTS = 30; +size_t const ACE_MAX_CLIENTS = 30; #endif /* ACE_HAS_WINCE */ -const size_t ACE_NS_MAX_ENTRIES = 1000; -const size_t ACE_DEFAULT_USECS = 1000; -const size_t ACE_MAX_TIMERS = 4; -const size_t ACE_MAX_DELAY = 10; -const size_t ACE_MAX_INTERVAL = 0; -const size_t ACE_MAX_ITERATIONS = 10; -const size_t ACE_MAX_PROCESSES = 10; -const size_t ACE_MAX_THREADS = 4; +size_t const ACE_NS_MAX_ENTRIES = 1000; +size_t const ACE_DEFAULT_USECS = 1000; +size_t const ACE_MAX_TIMERS = 4; +size_t const ACE_MAX_DELAY = 10; +size_t const ACE_MAX_INTERVAL = 0; +size_t const ACE_MAX_ITERATIONS = 10; +size_t const ACE_MAX_PROCESSES = 10; +size_t const ACE_MAX_THREADS = 4; #ifndef ACE_START_TEST #define ACE_START_TEST(NAME) \ diff --git a/ACE/tests/tests.mpc b/ACE/tests/tests.mpc index 10ca2375032..85ad9b22b26 100644 --- a/ACE/tests/tests.mpc +++ b/ACE/tests/tests.mpc @@ -83,6 +83,9 @@ project(Based Pointer Test Lib) : acelib { Source_Files { Based_Pointer_Test_Lib.cpp } + Header_Files { + Based_Pointer_Test_Lib_Export.h + } Resource_Files { } } @@ -247,6 +250,13 @@ project(Bug_2653_Regression_Test) : acetest { } } +project(Bug_2772_Regression_Test) : acetest, threads { + exename = Bug_2772_Regression_Test + Source_Files { + Bug_2772_Regression_Test.cpp + } +} + project(Bug_2815_Regression_Test) : acetest { exename = Bug_2815_Regression_Test Source_Files { @@ -315,6 +325,33 @@ project(Bug_3432_Regression_Test) : acetest { } } +project(Bug_3500_Regression_Test) : acetest { + exename = Bug_3500_Regression_Test + Source_Files { + Bug_3500_Regression_Test.cpp + } +} + +project(Bug_3505_Regression_Test) : acetest { + exename = Bug_3505_Regression_Test + Source_Files { + Bug_3505_Regression_Test.cpp + } +} + +project(Bug_3532_Regression_Test) : acetest { + exename = Bug_3532_Regression_Test + Source_Files { + Bug_3532_Regression_Test.cpp + } +} + +project(Bug_3541_Regression_Test) : acetest { + exename = Bug_3541_Regression_Test + Source_Files { + Bug_3541_Regression_Test.cpp + } +} project(Cache Map Manager Test) : acetest { exename = Cache_Map_Manager_Test @@ -368,7 +405,6 @@ project(CDR File Test) : acetest { exename = CDR_File_Test Source_Files { CDR_File_Test.cpp - CE_fostream.cpp } } @@ -874,6 +910,14 @@ project(Priority Reactor Test) : acetest { } } +project(Process Test) : acetest { + avoids += ace_for_tao + exename = Process_Test + Source_Files { + Process_Test.cpp + } +} + project(Process Manager Test) : acetest { avoids += ace_for_tao exename = Process_Manager_Test @@ -1063,6 +1107,13 @@ project(Simple Message Block Test) : acetest { } } +project(Singleton Test) : acetest { + exename = Singleton_Test + Source_Files { + Singleton_Test.cpp + } +} + project(SOCK Test) : acetest { exename = SOCK_Test Source_Files { @@ -1594,3 +1645,17 @@ project(Process_Env_Test) : acetest { Process_Env_Test.cpp } } + +project(Log_Thread_Inheritance_Test) : acetest { + exename = Log_Thread_Inheritance_Test + Source_Files { + Log_Thread_Inheritance_Test.cpp + } +} + +project(Wild_Match_Test) : acetest { + exename = Wild_Match_Test + Source_Files { + Wild_Match_Test.cpp + } +} |