Sat Dec 01 09:26:27 2001  Balachandran  <bala@cs.wustl.edu>

        * ACE version 5.2.1 released.

Wed Nov 28 09:28:09 2001  Johnny Willemsen <jwillemsen@remedy.nl>

        * ace/examples/IPC_SAP/SOCK_SAP/*
        * ace/examples/IPC_SAP/SPIPE_SAP/*
        * ace/examples/Misc/*
        * ace/examples/Naming/*
        * ace/examples/RMCast/Send_File/*
        * ace/examples/Reactor/DGram/*
        * ace/examples/Reactor/Ntalker/*
        * ace/examples/Registry/*
        * ace/examples/Threads/*
        * ace/examples/Service_Configurator/IPC_tests/client/*
          Made these examples compiling when ACE_USES_WCHAR is set

Mon Nov 26 16:07:57 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

	* bin/make_release: The distribution will be available in bzip2
	  compressed format too. Made modifications to the release scripts
	  to put out the beta in bzip2 compressed format.

Sat Nov 24 10:23:00 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

	* ace/Unbounded_Set.h (class ACE_Unbounded_Set): Moved the
	  insert_tail() method from the private part of the class to the
 	  public part since it's needed by the examples/Misc/test_set.cpp
 	  file.

	* examples/Misc/test_set.cpp (main): Somehow the contents of this file
	  got lost.  Thanks to Johnny Willemsen for reporting this!

Fri Nov 23 08:40:33 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

	* tests/Refcounted_Auto_Ptr_Test.cpp: Added some ACE_DEBUGs to
	  print out the reference count.

	* ace/Refcounted_Auto_Ptr.h: Added a count() accessor method to
	  return the reference count.  Thanks to Andrea Bernicchia
 	  <a.bernicchia@acsys.it> for contributing this.

Thu Nov 22 05:24:51 2001  Craig Rodrigues  <crodrigu@bbn.com>

	* examples/QOS/Diffserv: Added a simple example to illustrate
	  how to set Diffserv Codepoints on an ACE_SOCK_CODgram.
	* examples/QOS/Makefile: Updated.

Wed Nov 21 11:35:50 2001  Michael Kircher  <Michael.Kircher@mchp.siemens.de>

	* ace/Bound_Ptr.h
	* ace/Bound_Ptr.i
	* ace/Future.cpp
	* ace/Future.h
	* ace/Refcounted_Auto_Ptr.h
	* ace/Refcounted_Auto_Ptr.i

	  Made the memory allocation failure behavior consistent
	  to the behavior prior to the change on Sun Oct 28 13:15:00 2001.
	  Thanks to Christopher Kohlhoff <chris@kohlhoff.com> who prepared
	  this change.
	  The problem was that with the above mentioned change failed
	  allocations would return 0 in either case, if exceptions were
	  enabled by the platform or not. This was incosistent to the
	  behavior before, as new threw bad_alloc on allocation failure
	  when exceptions were supported by the platform.

	  To fix this we faced the following forces:
	  - Not to introduce yet another macro
	  - Minimize impact of changes, localize the problem
	  - Keep the new calls wrapped by a ACE_NEW macro to allow
	    users to eventually redefine the macro (using e.g. new (nothrow)

	  As the ACE_NEW macros are quite restrictive in their supported
	  semantics, e.g. you can only return on error, we decided to introduce
	  a new method (as inline) internal_create which does the allocation.
	  internal_create is called by create which does the differentiation
	  between the exception-supported and exception-not-supported case.

Wed Nov 21 09:07:37 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

	* ace/OS.h: Updated the ACE_GUARD_ACTION macro and added a new
	  ACE_GUARD_REACTION macro.  Then, reimplemented the ACE_GUARD and
 	  ACE_GUARD_RETURN macros in terms of these new macros.  Thanks to
 	  Don Hinton for contributing these.

	* ace/Log_Msg_Callback.h: Improved the comments to explain why
	  ACE_Log_Msg_Callback isn't inherited.  Thanks to
	  Alexey Chalimov <alexey@allcharge.com> for motivating this.

Tue Nov 20 15:36:52 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

	* ACE-INSTALL.html: Pointed out that on Solaris with g++ you may
	  need to use GNU as instead of /usr/ccs/bin/as, if you want
 	  -gstabs+ and -pipe support.  Thanks to C Chan
 	  <CChan@md.aacisd.com> for reporting this.

Mon Nov 19 07:24:05 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

	* examples/Synch/proc_sema.cpp: Added the ACE_TEXT macro so that
	  ACE_Get_Opt works correctly.  Thanks to Johnny Willemsen for
	  contributing this.

	* tests/Aio_Platform_Test.cpp (main): Fixed the code so that it
	  compiles when ACE_USES_WCHAR.  Thanks to Johnny Willemsen for
 	  reporting this.

	* docs/ACE-categories.html: Updated the Doxygen URLs to use the
	  new format.  Thanks to Peter J. Mason <peter.mason@retriever.com.au>
	  for reporting the problem.

Fri Nov 16 10:39:52 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

	* docs: Moved minimumTAO.html from $TAO_ROOT/docs/ to
 	  $ACE_ROOT/docs.

	* ace/OS.h: Added two new macros ACE_GUARD_ACTION and
	  ACE_GUARD_ACTION_RETURN.  Thanks to Boris Kaminer
 	  <boris.kaminer@orcsoftware.com> for suggesting these.

	* ace/NT_Service.cpp (state): Fixed a bug where calling
	  ACE_NT_Service::state(x,x) while the service is stopped was
 	  causing the internal status variables of ACE_NT_Service to
 	  become corrupt.  If the control_mask is set to
 	  SERVICE_ACCEPT_STOP in the constructor, the call to state will
 	  cause this mask to be reset (if the service is not running).
  	  This ultimately results in an NT Service that can be started but
 	  not stopped.  Thanks to Kyle Brost <Kyle.Brost@quest.com> for
 	  providing this fix.

Wed Nov 21 10:00:20 2001  Chad Elliott  <elliott_c@ociweb.com>

        * ace/config-irix6.x-common.h:

          Changed the size of a long double from 16 to 8 for the GNU
          compiler.

        * include/makeinclude/platform_irix6.x_sgic++.GNU:

          Add buildbits macro to allow 32 and 64 bit builds on IRIX.

Wed Nov 21 12:49:08 2001  Johnny Willemsen <jwillemsen@remedy.nl>

        * performance-tests/Misc/basic_perf.cpp
        * performance-tests/Misc/childbirth_time.cpp
        * performance-tests/Misc/context_switch_time.cpp
        * performance-tests/Misc/preempt.cpp
        * performance-tests/Misc/test_mutex.cpp
        * performance-tests/Misc/test_singleton.cpp
          Made these tests compiling when ACE_USES_WCHAR is set

Wed Nov 21 08:49:12 2001  Johnny Willemsen <jwillemsen@remedy.nl>

        * ace/OS.h
          Added ACE_LIB_TEXT around ACE_DEFAULT_RENDEZVOUS to make a unicode
          constant when ACE_USES_WCHAR is defined

        * tests/FlReactor_Test.cpp
        * tests/TkReactor_Test.cpp
        * tests/XtReactor_Test.cpp
          Changed type of argv argument of main from char to ACE_TCHAR so that
          these tests compile without problems when ACE_USES_WCHAR is defined

        * examples/IPC_SAP/ATM_SAP/CPP-client.cpp
        * examples/IPC_SAP/ATM_SAP/CPP-server.cpp
        * examples/IPC_SAP/FIFO_SAP/FIFO-client.cpp
        * examples/IPC_SAP/FIFO_SAP/FIFO-Msg-client.cpp
        * examples/IPC_SAP/FIFO_SAP/FIFO-Msg-server.cpp
        * examples/IPC_SAP/FIFO_SAP/FIFO-server.cpp
          Made these example compiling when ACE_USES_WCHAR is set

Tue Nov 20 12:02:16 2001  Ossama Othman  <ossama@uci.edu>

        * configure.in:

          Removed this file from the distribution.  Some folks insist on
          attempting to build ACE/TAO with the configure script and
          reporting problems despite the fact we've explicitly disabled
          it.

Tue Nov 20 13:30:36 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Strategies.h:
        * ace/Strategies.cpp:
        * ace/Strategies.i: Re-added files back into the main trunk. Got
          accidentally removed from the main when I was doing some work on
          a branch.

Mon Nov 19 20:35:44 2001  Jaiganesh Balasubramanian  <jai@balar.ece.uci.edu>

	* ace/SOCK_Dgram_Mcast.cpp:
	  This class allow application to subscribe a single socket to
 	  many multicast groups.  However, the unsubscribe operation
 	  failed to work with more than one group.  For some strange
 	  reason it was storing the first multicast group subscription in
 	  a class member and using that member in all the paths for the
 	  unsubscribe methods.

	  We have changed the unsubscribe(const ACE_INET_Addr&,...) method
 	  to work as adversited, i.e. unsubscribe the *given* multicast
 	  address, not the stored one, as an added benefit the method is
 	  now re-entrant.  The unsubscribe(void) method works as before.
  	  The code has been re-factored to minimize duplication.

Mon Nov 19 11:03:07 2001  Ossama Othman  <ossama@uci.edu>

        * ACE-INSTALL.html:

          Added missing build instructions for the ACE_SSL library, and
          updated the list of "make" flags recognized by ACE's Makefile
          scheme.

Mon Nov 19 00:53:54 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * ace/Svc_Conf_y.cpp:
        * ace/Svc_Conf_l.cpp:
        * ace/Svc_Conf_Tokens.h:

          Fixed some bugs introduced by my previous checkin because of
          patch confusion. Replaced all the standard C system calls with
          ACE_OS calls. Made it more wchar friendly.

        * ace/Makefile:

          Removed the dependency on /pkg/gnu/bin/flex. It was broken. We
          now use $(LEX) and $(YACC) defined in
          $ACE_ROOT/include/makeinclude/wrapper_macros.GNU.

        * include/makeinclude/wrapper_macros.GNU:

          Changed the definition of YACC to bison (by default). If people
          want to change this, it can be overridden by a variable in the
          Makefile. But things are most likely to break if you use yacc.

        * etc/Svc_Conf_l.cpp.diff:
        * etc/Svc_Conf_y.cpp.diff:

          Regenerated the diffs.

          *Sigh* This patching business is ugly.

Fri Nov 16 07:22:19 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * bin/make_release: Updated the script to copy the beta to a
          different location.  Have tested this by creating a dummy
          repository and a dummy export directory. Things worked
          fine. Hopefully the beta should go through without any hassle.

          The script is tied to its usage on ace.cs. Needs to be
          changed. Will do that after this beta goes out. Having too many
          changes at the same time may not be good.

Thu Nov 15 20:44:40 2001  Craig Rodrigues  <crodrigu@bbn.com>

        * etc/Svc_Conf_l.cpp.diff: Updated.  Thanks to Kitty for reporting it.
        * etc/Svc_Conf_y.cpp.diff: Added.  We need it for uses of ACE_LIB_TEXT.
        * ace/Makefile: Added rule to apply patch to Svc_Conf_y.cpp.

Thu Nov 15 08:26:57 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/*.cpp: Changed all remaining uses of ACE_TEXT to ACE_LIB_TEXT
          to be consistent...  Thanks to Johnny Willemsen for reporting
          the inconsistencies and for Darrell Brunsch for clarifying what
          the right behavior should be.

Wed Nov 14 07:43:20 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * docs/ACE-guidelines.html: Updated the guidelines to explain
          the use of ACE_TCHAR for the argv parameter to main().  Thanks
          to Johnny Willemsen for reporting this.

        * ace/OS_Dirent.inl (opendir): Replace char * const cast with
          ACE_TCHAR * const cast.  Thanks to Nick Pratt for reporting
          this.

        * tests/Upgradable_RW_Test.cpp (main): Fixed the test to avoid
          dividing by 0 and also initialized all pointers to NULL.  Thanks
           to Johnny Willemsen for reporting this.  Thanks fixes BudID 650.

Tue Nov 13 15:25:04 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/ACE.h (ACE): Clarified what the time_len parameter is used for.
          Thanks to Tompa <safdsfd@adsffda.com> for reporting this.

Sun Nov 11 09:50:52 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/Naming_Context.cpp (info): Added an ACE_UNUSED_ARG to
          silence warning about "length" parameter and changed buf from
          char to ACE_TCHAR.  Thanks to Johnny Willemsen for reporting
          this.

	* tests/Aio_Platform_Test.cpp: The argv parameter of main() should
	  be ACE_TCHAR rather than char.  Thanks to Johnny Willemsen for
 	  reporting this.

Thu Nov 15 15:43:20 2001  Craig Rodrigues  <crodrigu@bbn.com>

        * ace/Naming_Context.cpp (info): Wrapped sprintf() arguments with
          ACE_LIB_TEXT.  Fix supplied by Johnny Willemsen.

Thu Nov 15 12:43:31 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * docs/wchar.txt: Added a writeup for ACE_LIB_TEXT and ACE_TEXT
          from "the authority."

Wed Nov 14 21:36:42 2001  Ossama Othman  <ossama@uci.edu>

        * docs/usage-bugzilla.html:

          Corrected link to the DOC Center's bugzilla site.

Wed Nov 14 23:11:59 2001  Craig Rodrigues  <crodrigu@bbn.com>

        * ace/Naming_Context.cpp (info): Fixed Unicode build problems
          by consistently using ACE_TCHAR instead of char, and by
          using Unicode aware string functions in ACE_OS_String
          instead of ACE_OS.

        * ace/Svc_Conf_l.cpp: Default intialized ace_yy_c_buf_p to ACE_TCHAR
          instead of char.  Default initialized ace_yy_cp, ace_yy_bp to 0.

        * ace/Svc_Conf_y.cpp: Wrap string literals passed to ace_yyerror
          with ACE_LIB_TEXT().

Wed Nov 14 06:38:41 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * docs/ACE-bug-process.html (HREF): Changed references from ace.cs
          to deuce.doc. Thanks to Johnny Willemsen for reporting this.

Tue Nov 13 15:04:15 2001  Carlos O'Ryan  <coryan@uci.edu>

        * html/Stats/index.shtml:
        * html/Stats/detailed_performance.shtml:
          Improved documentation about the test location, ORB, and network
          configuration used.  Thanks to David Yongqiang Wang
          <davidyw@avaya.com> for pointing out the problems.

Tue Nov 13 11:46:11 2001  Chris Cleeland  <cleeland_c@ociweb.com>

        * tests/Collection_Test.cpp (iterate_const): Fixed ACE_DEBUG print
          statements that were accessing the element of the unbounded set
          as an int rather than an UglyThing.  Thanks to Ossama for
          pointing this out.

Mon Nov 12 11:41:35 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_SOCK_Stream.cpp (send, recv):

          In the va_arg versions of these methods, do not use
          send/recv_n() to as the underlying send/recv() method.  It
          forces unnecessary blocking.

          Corrected return value semantics in versions of these methods
          that use loop to send/receive multiple buffers.  If data was
          sent or received than do not return -1 on error.  Instead return
          the amount of bytes sent/received.  This is necessary to allow
          the caller to keep track of sent or received data.  [Bug 882]

Sun Nov 11 23:50:00 2001  Craig Rodrigues  <crodrigu@bbn.com>

        * tests/Date_Time_Test.cpp: Remove argv variable from
            main() to eliminate unused variable compiler warning.
        * tests/Arg_Shifter_Test.cpp: Same.

Sun Nov 11 10:00:56 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_SOCK_Stream.h (ACE_SSL_SOCK_Stream):

          Removed unused class members.

        * ace/SSL/SSL_SOCK_Stream.cpp (sendv):

          If an error occurs but data was sent on a previous loop
          iteration then return the amount of bytes sent, not the error.
          This extends previous check for EWOULDBLOCK and ETIME.  All
          errors are now caught.  The caller must always know if any data
          was successfully sent.  [Bug 882]

          Do not continue on to the next loop iteration if the amount of
          data sent was less than the amount data given.  This avoids a
          subtle problem where "holes" in the data stream would occur if
          partial sends of a given buffer in the iovec array occured.
          [Bug 882]

Sun Nov 11 07:58:07 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_SOCK_Stream.cpp (sendv):

          Fixed unused variable warnings.

Sat Nov 10 23:25:50 2001  Ossama Othman  <ossama@uci.edu>

        * bin/auto_run_tests.lst:

          Added new SSLIOP "Big_Request" test to the list of regression
          tests to automatically run during the nightly builds.

Sat Nov 10 22:13:54 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * ace/Svc_Conf_l.cpp:
        * ace/Svc_Conf_y.cpp:
        * ace/Svc_Conf_Tokens.h:

          Regenerated the files after fixing the warnings that showed up
          under Sun CC Forte Update. They were caused because Sun CC's
          preprocessor doesn't like the #line statements generated by flex
          and bison. Since these files are not modified on a daily basis,
          people debugging the lexer can turn it on by removing the flags
          '-l' and '-L' to bison and flex respectively in the Makefile.
          For now, this removes a lot of noise.

        * ace/Makefile:

          Added flags '-l' to bison and '-L' to flex.

        * etc/Svc_Conf_l.cpp.diff:

          Regenerated the diff to match the current version.

        * etc/Svc_Conf_y.cpp.diff:

          This file held the stuff which have been obsoleted by the move
          to use bison. So removed this file to avoid causing confusion in
          the future. Thanks to Ossama for pointing this out.

          Let's see some green :-)

Sat Nov 10 19:27:36 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_Accept_Handler.cpp (ssl_accept):
        * ace/SSL/SSL_Connect_Handler.cpp (ssl_connect):

          If data is still buffered within OpenSSL's internal buffer, then
          force the Reactor to invoke the event handler (with
          the appropriate mask) before waiting for more events
          (e.g. blocking on select()) by returning a value greater than
          one.  All pending data must be processed before waiting for more
          events to come in on the SSL handle.

        * ace/SSL/SSL_SOCK_Stream.h (reactor, handler, notify):

          These methods are no longer needed.  Removed them.

          (sendv):

          Added missing timeout parameter.

        * ace/SSL/SSL_SOCK_Acceptor.cpp (ssl_accept):
        * ace/SSL/SSL_SOCK_Connector.cpp (ssl_connect):
        * ace/SSL/SSL_SOCK_Stream.i (notify, recv_i, send_i, close):

          Reverted code that notify()ed the Reactor if data was still
          pending in OpenSSL's internal buffers.  The idea was to force
          the reactor to call the appropriate event handler before polling
          for events (e.g. blocking on select()).  However, notifications
          are not dispatched until after events are polled which meant
          that there is no point in notify()ing the Reactor.

        * ace/SSL/SSL_SOCK_Stream.cpp (reactor, handler):

          These methods are no longer needed.  Removed them.

          (sendv):

          Fixed/improved the writev() semantics and emulation in this
          method.  Previously, if an iov_base buffer was successfully
          sent, that success was not reported to the caller if subsequent
          sends in the emulation loop failed.  The caller would end up
          thinking that no part of the message was sent.  The improved
          semantics are now the following if the underlying send() call
          returns with an EWOULDBLOCK or ETIME error condition:

                - If no data was sent, then return -1.
                - If some data was sent on a previous loop iteration then
                  return the number of bytes successfully sent.

          In both cases, errno is unchanged.   [Bug 882]

          Incidentally, this fixes a problem in TAO's SSLIOP pluggable
          protocol when sending very large requests.  Thanks to Andrew
          Finnell <Andrew.Finnell@esecurityinc.com> for providing an
          example that exhibited the problem.

          Lastly, the missing timeout support has been added.  The timeout
          is decremented on each loop iteration.

Sat Nov 10 17:16:59 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/OS.cpp (fopen): Removed redundant parentheses.

Sat Nov 10 09:29:48 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/OS.i (pipe): Replaced the _pipe() call on Win32 with the
          CreatePipe() call.  Thanks to Bo Balders <bba@post.utfors.se>
          for reporting this.

        * ace/Log_Msg.cpp (log): The "format" string was omitted.  Thanks
          to Martin Krumpolec for noticing this.

Sat Nov 10 08:48:24 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/Arg_Shifter.{h,cpp}: Added a new constructor to ACE_Arg_Shifter
          so that it can handle both const char ** and char ** arguments.

Fri Nov  9 07:42:41 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/Arg_Shifter.cpp: Made the argv parameter to ACE_Arg_Shifter
          a "const" ACE_CHAR **.

        * tests/Arg_Shifter_Test.cpp (main): Added "const" to the
          args local variable to remove a warning from SunC++.

Fri Nov  9 11:23:01 2001  Chris Cleeland  <cleeland_c@ociweb.com>

        * tests/Collection_Test.cpp: Fixed up things that caused problems
          on several platforms.  Added the ARRAY tests back in.

Thu Nov  8 14:52:39 2001  Steve Huston  <shuston@riverace.com>

        * ace/Log_Msg.h: Added a new 'M' option to print out the name of
          the log priority.  Thanks to Vladimir Chovanec
          <Vladimir.CHOVANEC@asset.sk> for reporting this.

Thu Nov  8 10:41:44 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/OS_String.h: Enhanced the documentation so that it explains
          the differences between ACE_OS::strsncpy() and ACE_OS::strcpy()
          more precisely.  Thanks to Alain Decamps for contributing this.

        * ace/Naming_Context.{h,cpp}: The info() method should have ACE_TCHAR **
          rather than char **.  Thanks to Johnny Willemsen for reporting
          this.

        * ace/OS.cpp: Added support for Borland's idiosyncratic _wfdopen()
          method.  Thanks to Johnny Willemsen for reporting this.

Wed Nov  7 05:17:03 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/Message_Queue_T.{h,cpp}: Changed the typo DEFUALT_PRIORITY
          to DEFAULT_PRIORITY.

        * ace/OS.i: In BCB the _wtempnam() has the following signature:
          wchar_t *_wtempnam(wchar_t *dir, wchar_t *prefix)

          This means that the arguments must be made non-const by a cast.  The
          fix is to add some defines so that with BCB and no wchar the
          _tempnam is used (with the casts) and with BCB and wchar then
          the _wtempnam is used with the casts.  Thanks to Johnny
          Willemsen for this fix.

Thu Nov  8 14:52:39 2001  Steve Huston  <shuston@riverace.comy>

        * ace/Arg_Shifter.h: Doxygen-ized some comments.

        * ace/Date_Time.i (update): Add 1900 to years value to convert from
          localtime's years-since-1900 value to now. Add 1 to the month
          to convert localtime's 0-11 range to 1-12. Thanks to Syed
          Wasim Ali <syed.ali@neustar.com> for reporting this.

        * tests/Date_Time_Test.(cpp dsp icc): New test for ACE_Date_Time.

        * tests/tests.dsw:
        * tests/tests.icp:
        * tests/Makefile[.bor]: Added Date_Time_Test.

        * tests/run_test.lst: Added Arg_Shifter_Test and Date_Time_Test.

Thu Nov  8 11:53:00 2001  Steve Huston  <shuston@riverace.com>

        * tests/Arg_Shifter_Test.(cpp dsp icc): New test for ACE_Arg_Shifter.

        * tests/tests.dsw:
        * tests/tests.icp:
        * tests/Makefile[.bor]: Added Arg_Shifter_Test.

Thu Nov  8 13:05:12 2001  Chad Elliott  <elliott_c@ociweb.com>

        * include/makeinclude/platform_irix6.x_sgic++.GNU:

          Added an option to suppress warnings about #pragma pack.

Thu Nov  8 10:43:22 2001  Chad Elliott  <elliott_c@ociweb.com>

        * ace/OS.cpp:

          Correct a build problem for GHS on Win32.

Wed Nov 07 13:50:39 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/Task_T.h (ACE_Task): Decorated ACE_Task with ACE_Export to
          avoid VC7's internal compiler error.  Thanks to Darrell for
          submitting the change.

Wed Nov  7 10:59:00 2001  Craig Rodrigues  <crodrigu@bbn.com>

        * include/makeinclude/platform_sunos5_g++.GNU: Append -D_REENTRANT
          to CPPFLAGS if threads=1

Wed Nov  7 08:09:20 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * bin/nightlybuilds/builds.lst: Changed the name CC5 build as
          CC51. It uses version 5.1 of the compiler anyway.

Tue Nov  6 14:39:28 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/SString.i (find),
        * ace/Local_Name_Space_T.cpp (resolve_i): Fixed "off-by-one"
          bugs with ACE_OS::strscpy().  Thanks to Alain Decamps
           <Alain.Decamps@PIDPA.be> for contributing this.

Tue Nov  6 13:25:40 2001  Chris Cleeland  <cleeland_c@ociweb.com>

        * tests/Collection_Test.cpp: Committed an old change that uses an
          actual class as the element in the Unbounded_Set rather than an
          int.  I wrote this to get a better understanding of how the
          iterator and accessors on the iterator worked.

        * tests/SString_Test.cpp (main): Added a test for the rep() method
          that insures that the char array returned is equivalent to the
          string in the ACE_CString from which it's obtained.

Mon Nov  5 10:12:01 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/OS.cpp,
        * ace/Local_Name_Space_T.cpp,
        * ace/FILE_Addr.cpp,
        * ace/Acceptor.cpp,
        * ace/ACE.cpp:  Changed uses of strncpy() to ACE_OS::strsncpy().
          Thanks to Alain Decamps for these fixes.

Sun Nov  4 12:11:31 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/Reactor.cpp: Enhanced all the Reactor's event loop methods
          to first check and see if the Reactor's been deactivated and to
          bailout immediately in this case.  Thanks to Don Hinton for
          suggesting this.

        * ace/Reactor.i: Moved the reactor_event_loop_done() method from
          the *.cpp file into the *.i file and made inlineable.

        * ace/Select_Reactor_T.cpp: Be more careful about error handling in the
          dispatch_notification_handlers() method.  If a failure occurs,
          when dispatch_notifications() is called, return -1, rather than
          erroneously "incrementing" the count of the number of handlers
          dispatched.  Thanks to Don Hinton for reporting this.

Sat Nov  3 11:15:43 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * The following fixes are from Joachim Achtzehnter <joachima@netacquire.com>:

          In ace/config-pharlap.h we had to explicitly #undef
          ACE_HAS_WCHAR after the #include "ace/config-win32.h"
          directive. Without this change the resulting DLL depended on
          several wide character versions of Win32 system functions, such
          as _CreateMutexW. At least some of these dependencies were
          caused by ace/OS.i.

          In ace/Log_Msg.cpp we had to add !defined(ACE_HAS_PHARLAP) to a
          few more places in addition to the ones Bruce Trask had posted
          to avoid reference to the NT Eventlog functionality.

          At the top of ace/Log_Msg_NT_Event_Log.h and
          ace/Log_Msg_NT_Event_Log.cpp we added !defined(ACE_HAS_PHARLAP)
          to completely bypass the contents of these two files.

        * ace/DEV_Addr.i (addr_to_string):
        * ace/Local_Tokens.i (name):
        * ace/Module.i (name):
        * ace/OS.i (asctime_r):
        * ace/SPIPE_Addr.i (addr_to_string):
        * ace/UNIX_Addr.i (addr_to_string):
        * ace/SString.i (rep): Changed uses of strncpy() to ACE_OS::strsncpy().
          Thanks to Alain Decamps for these fixes.

Fri Nov  2 14:38:49 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/Task.h (ACE_Task_Base): Clarify the meaning of the put()
          hook method.  Thanks to Tommy Svensson <tommysvensson@yahoo.com>
          for motivating this.

Mon Nov  5 14:23:12 2001  Chad Elliott  <elliott_c@ociweb.com>

        * ace/ACE.cpp:

          Remove a build warning for gcc 2.95.3 on SunOS 5.6.

Mon Nov  5 14:21:30 2001  Chad Elliott  <elliott_c@ociweb.com>

        * bin/nightlybuilds/builds.lst:

          Added the HP-UX nightly build back to the list.

Mon Nov  5 13:31:15 2001  Chad Elliott  <elliott_c@ociweb.com>

        * ace/ACE.cpp:

          Fix a build warning for 64-bit HP-UX.

        * ace/Active_Map_Manager_T.i:

          Cast the free list id to ACE_UINT32 to match up with the
          slot_index () type.  On 64-bit HP-UX, the free list id type
          (size_t) is a 64 bit number and must be cast down to 32 bits.
          Otherwise, the slot_index is cast up to 64 bits and does not give
          the correct results.

        * include/makeinclude/platform_hpux_aCC.GNU:

          Add a -L./ to allow the 64-bit HP-UX builds to link properly.

Mon Nov  5 11:17:20 2001  Carlos O'Ryan  <coryan@uci.edu>

        * bin/auto_compile:
          Add support for the new status.txt file in the scoreboard.

Mon Nov  5 13:02:50 2001  Chad Elliott  <elliott_c@ociweb.com>

        * ace/config-hpux-11.00.h:

          Added #define of ACE_HAS_CHARPTR_DL.  This corresponds with the
          declaration of dlopen(char*,unsigned int).

        * ace/OS.cpp:

          Changed the default thread scope to system (similar to Linux).
          Process thread scope is not supported in HP-UX.

Sun Nov 04 11:18:31 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/OS.cpp (fopen): Changed to forward call to fopen instead of
          _fopen on non-borland compilers when not using UNICODE.  This
          change allows the code to compile on Win98.  Thanks to Jstwo
          <jstwo@writeme.com> for submitting the fix.

Thu Nov  1 16:21:51 2001  Chris Cleeland  <cleeland_c@ociweb.com>

        * bin/auto_run_tests.pl: Added snippet of code that puts the
          current directory ('.') in the PATH environment variable since
          auto_run_tests.pl depends on the current directory being there.

Thu Nov 1 15:49:04  Balachandran Natarajan  <bala@cs.wustl.edu>

        * include/makeinclude/platform_osf1_4.x_cxx.GNU: Moved the
          CXX_VERSION definition to the global scope.

        * include/makeinclude/platform_tru64_cxx.GNU: Added
          -D_PTHREAD_ENV_DECCXX flag to the CPPFLAGS. This is done only
          for v5.1, 1885. The pthreads.h in 1885 is messed up. The
          conditional include of c_asm.h is busted for DECCXX and
          v1885. Hence the change. We need to do this to protect ACE and
          TAO applications on this platform and compiler
          combinations. Thanks to  Don Hinton <dhinton@gmx.net> for
          reporting the problem.

Thu Nov  1 14:25:52 2001  Jeff Parsons <parsons@cs.wustl.edu>

        * ace/config-win32-borland.h:

          Added fix sent in by Chris Kohlhoff <kohlhoff@pop.ihug.com.au>
          to ACE_CC_PREPROCESSOR_ARGS to enable the recognition of a
          filename to which the preprocessor output is to be directed.
          There is also a corresponding fix in TAO_IDL/driver/drv_preproc.cpp
          that carries out the redirection.

Thu Nov  1 10:27:21 2001  Ossama Othman  <ossama@uci.edu>

        * ace/Select_Reactor_Base.h (open):
        * ace/Select_Reactor_T.h (ACE_Select_Reactor_T, open):

          Added a note about the "size" of the Select_Reactor on Unix
          platforms. On Unix platforms, the size parameter should be as
          large as the maximum number of file descriptors allowed for a
          given process.  This is necessary since a file descriptor is
          used to directly index the array of event handlers maintained by
          the Reactor's handler repository.  Direct indexing is used for
          efficiency reasons.

Thu Nov  1 06:38:30 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/ACE.cpp: Fixed some minor formatting problems so that
          format_hexdump() works properly.  Thanks to Kyle Brost
          <Kyle.Brost@quest.com> for reporting this.

        * ace/config-win32.h: Include the config-cygwin32.h file when
          __CYGWIN32__ is enabled.  Thanks to Johnny Willemsen for
          reporting this.

        * ace/Synch.i (remove): Added some casts to make certain compilers
          happy?  Thanks to Guillaume Renaud <guillaume.renaud@valtech.fr>
          for reporting this.

        * ace/OS.i: Updated the Win32 version of ACE_OS::llseek().  Thanks to
          Doron Rajwan <doron@BANDWIZ.COM> for reporting this.

Wed Oct 31 11:25:40 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/OS.h: The ACE_OS::llseek() method must be static!  Thanks to
          Doron Rajwan <doron@BANDWIZ.COM> for reporting this.

Tue Oct 30 08:30:16 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/RB_Tree.cpp (operator=): Make sure to check for self-assignment
          in the operator=.  Thanks to Johnny Willemsen for reporting
          this.

Mon Oct 29 05:23:56 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/Naming_Context.{h,cpp}: Moved ACE_STATIC_SVC_REQUIRE from the
          .h file to the .cpp file to avoid multiple definitions.  Thanks to
          Boris Kaminer <boris.kaminer@orcsoftware.com> for reporting this.

Sun Oct 28 10:05:32 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/config-macosx.h:
        * include/makeincludes/platform_macosx.GNU
          Added new fixes to get this to work on MacOS X.  Thanks to John
          Michael Zorko <j.zorko@att.net> and Fikri Pribadi
          <fikri@ugotacall.com> for contributing this.

Wed Oct 24 23:59:13 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/Configuration_Import_Export.cpp: Fixed a bug where a
          check of a pointer was made rather than the character pointed to
          by the pointer.  Thanks to Juan Jose Comellas
          <uanjo@comellas.org> for reporting this.

Tue Oct 30 22:53:57 2001  Ossama Othman  <ossama@uci.edu>

        * ace/Svc_Conf_l.cpp:

          Fixed incorrect #line preprocessor directives.

        * etc/Svc_Conf_l.cpp.diff:

          Regenerated this diff so that it includes recent updates.

Mon Oct 29 20:12:40 2001  Ossama Othman  <ossama@uci.edu>

        * tests/run_test.lst:

          Added the Proactor test to the list of one-button tests to run.

Mon Oct 29 20:04:40 2001  Ossama Othman  <ossama@uci.edu>

        * tests/Proactor_Test.cpp:

          More patches from Alexander Libman.  The Proactor_Test appears
          to finally work on Linux.

Mon Oct 29 17:49:21 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/TP_Reactor.cpp: Added some error checks at places where
          token where acquired.

Mon Oct 29 16:59:58 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/TP_Reactor.cpp (acquire_token): The acquire_token () called
          acquire with a sleep hook. It was wrong. It should just unblock
          the thread by sending notify. A bad cut and paste error
          :(. Thanks to Graeme Clark <gclark@opentext.com> for reporting
          this. This closes [BUGID 1077].

Sun Oct 28 20:36:56 2001  Ossama Othman  <ossama@uci.edu>

        * ace/Map_T.i (clone):

          Fixed syntax errors.

        * ace/Svc_Handler.cpp (new):

          Reverted Michael's change.  It incorrectly altered the semantics
          of the new operator, particularly when compiling with native
          exception support enabled.  Fixes a warning.

Sun Oct 28 16:44:20 2001  Ossama Othman  <ossama@uci.edu>

        * ace/Timer_Hash_T.cpp (ACE_Timer_Hash_T):

          Corrected syntax error that was introduced in the changes
          described below by removing extraneous trailing bracket.

Sun Oct 28 13:15:00 2001  Michael Kircher <Michael.Kircher@mchp.siemens.de>

        * ace/ACE.i:
        * ace/Activation_Queue.cpp:
        * ace/Bound_Ptr.i:
        * ace/Configuration.cpp:
        * ace/Configuration_Import_Export.cpp:
        * ace/Containers_T.cpp:
        * ace/Future.cpp:
        * ace/Handle_Gobbler.h:
        * ace/Local_Tokens.i:
        * ace/MEM_SAP.i:
        * ace/Map_T.i:
        * ace/Message_Block.cpp:
        * ace/OS_Errno.cpp:
        * ace/Object_Manager.cpp:
        * ace/Obstack_T.cpp:
        * ace/Refcounted_Auto_Ptr.i:
        * ace/Remote_Tokens.i:
        * ace/Strategies_T.cpp:
        * ace/Stream.cpp:
        * ace/Svc_Handler.cpp:
        * ace/Synch_T.cpp:
        * ace/TLI.cpp:
        * ace/Timer_Hash_T.cpp:
        * ace/Timer_Queue_T.cpp:
        * ace/Unbounded_Queue.cpp:
        * ace/Unbounded_Set.cpp:

          Changed almost all direct usages of operator new in ACE to use
          ACE_NEW_RETURN (Exceptions is Dump_T.h).  In one case in
          Stream.cpp the semantics changed slightly if  operator new would
          have been overloaded, see the "@@ Michael" comment.

          When new got used with placement most of the usages  got
          replaced with ACE_NEW_MALLOC_RETURN. In some cases as in
          Malloc_T.cpp, Map_Manager.cpp, PI_Malloc.i, Array_Base.cpp
          special cases exist, where the macros would have incurred
          different semantics and performance penalties.

Fri Oct 26 07:37:43 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * bin/auto_run_tests.lst: Quoter example will not run in
          minimum_corba builds.

Wed Oct 24 08:04:36 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Reactor.h: Improved the documentation of the
          end_reactor_event_loop ().

Tue Oct 23 10:04:25 2001  Ossama Othman  <ossama@uci.edu>

        * tests/Proactor_Test.cpp:

          Replaced uses of a static global lock with the
          ACE_Static_Object_Lock singleton.

          Fixed incorrect uses of the "%l" format specifier.  "%d" is the
          expected format specifier.

          (Acceptor):

          Initialize the "sessions_" member in the base member initializer
          list.  Corrects a problem where the session number initially
          contained a "garbage" value.

Mon Oct 22 17:55:00 2001  Craig Rodrigues  <crodrigu@bbn.com>

        * ace/Svc_Conf_l.cpp: Remove include of stdlib.h, fix g++/Solaris
          build.

Mon Oct 22 15:54:29 2001  Steve Huston  <shuston@riverace.com>

        * ace/config-hpux-10.x-hpc++.h: Remove hard-coded setting of
          ACE_HAS_EXCEPTIONS. It is controlled by platform_hpux_aCC.GNU.

Mon Oct 22 15:50:35 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * THANKS: Added Chris Hughes name to the Hall of Fame

Sun Oct 21 16:44:41 2001  Ossama Othman  <ossama@uci.edu>

        * tests/Proactor_Test.cpp (disable_signal):

          Fixed warnings regarding a method that "hid" virtual function
          with the same name, in addition to unused argument warnings.

Sun Oct 21 15:22:57 2001  Ossama Othman  <ossama@uci.edu>

        * tests/Proactor_Test.cpp:

          Fixed warning about deprecated conversion of "const char *" to
          "char *" exhibited by GCC 3.0.x builds.

Sun Oct 21 12:50:39 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/LSOCK.cpp: The ACE_LSOCK::recv_handle() was returning success
          without setting the I/O handle.  Thanks to Rick Ohnemus
          <rick.ohnemus@systemware.com> for reporting this.

	* ace/config-freebsd-pthread.h: Changed
          #if (__FreeBSD_version > 430000) to
	  #if (__FreeBSD_version > 440000) to get ACE to work with FreeBSD 4.4.
	  Thanks to Gu Song <gusong_m@yahoo.com> for reporting this.

Fri Oct 19 06:44:17 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

	* examples/Reactor/WFMO_Reactor/test_window_messages.cpp:
	  Don't use a global Event_Handler object since this violates the
 	  design rules for the ACE_Reactor.

Sun Oct 21 13:39:27 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

	* bin/auto_run_tests.lst: Added the Quoter example in
	  $TAO_ROOT/examples to the list of tests in the daily builds.

Thu Oct 18 20:56:53 2001  Ossama Othman  <ossama@uci.edu>

	* tests/Proactor_Test.cpp:

	  Added no-op main() function for platforms that do not support
	  asynchronous IO.

Thu Oct 18 22:46:09 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

	* ace/TP_Reactor.h:
	* ace/TP_Reactor.cpp: Fixed warnings in Sun CC and TRU 64 builds.

Thu Oct 18 20:42:55 2001  Ossama Othman  <ossama@uci.edu>

	* tests/Proactor_Test.cpp:

	  Fixed Unicode build errors.

Thu Oct 18 19:52:44 2001  Craig Rodrigues <crodrigu@bbn.com>

	* ace/SString.h: clarify example in comments to ACE_Tokenize
           so that constant strings are not passed in its constructor.

	* examples/OS/Process/process.cpp: do not pass constant strings
	   to ACE_Tokenize constructor.  Thanks to
	   Werner Buchert <w.buchert@medat.de> and
	   Don Hinton <dhinton@swan.fr>.

Wed Oct 17 23:56:45 2001  Ossama Othman  <ossama@uci.edu>

	* tests/Proactor_Test.cpp:
	* tests/Proactor_Test.dsp:

	  Proactor test contributed by Alexander Libman
	  <alibman@baltimore.com>.

	* tests/tests.dsw:

	  Added Proactor_Test project to the tests workspace.

Wed Oct 17 18:59:53 2001  Christopher Kohlhoff  <chris@kohlhoff.com>

        * include/makeinclude/install.bor:
          Borland makefile fix to ensure that, when doing the install
          target, core executables are built correctly if they don't
          already exist.

Wed Oct 17 09:15:10 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

	* ace/config-linux-common.h: Clarified that this file should
	  not be included directly!  Thanks to Suresh N
 	  <suresh.n@vergiltech.com> for reporting this.

Wed Oct 17 16:00:19 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

	* THANKS: Added Graeme Clark to the Hall of Fame.

Wed Oct 17 15:49:20 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

	* ace/TP_Reactor.cpp:
	* ace/TP_Reactor.h: Added remove_handler () calls to the
	  TP_Reactor.  Before this, the  call on the reactor used to be
	  handled by the Select_Reactor's implementation. The
	  implementation has a problem. It tries to call handle_close ()
	  (an upcall) as one of the calls after holding the token. This
	  was asking for trouble. This could lead to deadlocks as
	  mentioned in [BUG ID 1055].

	  The method in the TP_Reactor now calls remove_handler () on the
	  Select_Reactor (its base class) with a DONT_CALL flag. Then it
	  calls handle_close () on the Event_Handler if the user did not
	  pass in the DONT_CALL mask. This two step process would get
	  around the problem that was mentioned before. Thanks to Graeme
	  Clark <gclark@opentext.com> for reporting the problem and
	  testing this fix.

	  This should close [BUG ID 1055].

Wed Oct 17 10:40:17 2001  Ossama Othman  <ossama@uci.edu>

	* ace/SSL/SSL_Accept_Handler.cpp (ssl_accept):
	* ace/SSL/SSL_Connect_Handler.cpp (ssl_connect):

	  If errno is set to EWOULDBLOCK for the SSL_ERROR_SYSCALL case,
 	  then continue the connection establishment loop.  Do not return
 	  right away.  Fixes non-blocking connection establishment on AIX.
  	  Thanks to Vladimir Chovanec <Vladimir.CHOVANEC@asset.sk> for
 	  providing this fix.

	* ace/SSL/SSL_SOCK_Stream.h (notify):

	  Made this method protected.  It isn't intended to be used
	  internally by the ACE_SSL_SOCK_Stream class.

Wed Oct 17 12:15:15 2001  Chris Cleeland  <cleeland_c@ociweb.com>

	* ace/Select_Reactor_T.cpp (handle_error, check_handles): Add
	  vxworks to the ever-growing list of OSs which return
	  unpredictable values in errno when there's a bad file descriptor
	  in a select mask. [Bug 1058].

	  Thanks to Dave Arndt <darndt@oresis.com>, Tad Hetke
	  <thetke@oresis.com>, and Erik Johannes <ejohannes@oresis.com>
	  for tracking down and providing this fix.

Tue Oct 16 23:08:27 2001  Ossama Othman  <ossama@uci.edu>

	* ace/Svc_Conf.h (ACE_Svc_Conf_Param):

	  Added a new ACE_Obstack attribute that is passed down to the
	  parser and scanner.  This obviates the need for the global
	  pointer to the ACE_Obstack that was formally used, which in turn
	  avoids a race condition.

	  (ace_obstack):

	  No longer a need to maintain a global pointer to the ACE_Obstack
	  instance used during parsing/scanning.

	* ace/Svc_Conf.y:
	* ace/Svc_Conf.l:

	  Retrieve the Obstack from the parameter passed down to yyparse()
	  and yylex() instead of using the (now non-existent) global
	  instance.  This is part of a race condition fix.

	* ace/Svc_Conf_y.cpp:
	* ace/Svc_Conf_l.cpp:

	  Updated to pull in the changes made to the source files from
	  which these files were generated.

	* ace/Service_Config.cpp (process_directives_i):

	  The global ACE_Obstack pointer used during each Service
	  Configurator parse has been removed.  An ACE_Obstack instance is
	  now passed down to the parser and scanner in a
	  reentrant/thread-safe manner via the new ACE_Svc_Conf_Param
	  parameter.  As such, there is no longer any need to maintain a
	  global pointer to the ACE_Obstack instance in use, nor is it
	  necessary to store/restore the previous value when performing
	  nested or parallel Service Configurator directive processing.
	  This fixes a race condition that was causing some memory
	  corruption when parsing Service Configurator directives in
	  parallel.

	  Note that the ACE_Obstack is now instantiated on the stack
	  rather than the heap, thus improving Service Configurator
	  directive processing performance.

Mon Oct 15 23:16:55 2001  Ossama Othman  <ossama@uci.edu>

	* ace/Service_Config.h (process_directives_i):

	  Updated the signature of this method to accept a parameter that
	  will eventually passed to the parser and the scanner.

	* ace/Service_Config.cpp:

	  No need to include "ace/Svc_Conf_Lexer_Guard.h" and
	  "ace/Object_Manager.h".

	  (process_directives_i):

	  Updated the signature of this method to accept a parameter that
	  will eventually passed to the parser and the scanner.

	  Pass the "ACE_Svc_Conf_Param" parameter to the yyparse() call.
	  This is reentrant/thread-safe.

	  Check the error count found in the "ACE_Svc_Conf_Param" object.
	  It's count is incremented in a thread-safe/reentrant manner.

	  (process_directive, process_directives):

	  The ACE_Svc_Conf_Lexer_Guard and its accompanying
	  synchronization has been moved to the generated scanner code.
	  This makes locking finer grained.  Specifically, instead of
	  holding a lock for the duration of the scope within which
	  service configurator directive parsing and scanning is
	  performed (e.g. for the duration of the yyparse() call), the
	  lock is only held for the duration of the scope where service
	  configurator directive scanning occurs (i.e. the entire yylex()
	  call is synchronized).  This is part of the core fix that
	  corrects a deadlock that occurred when activating an ACE_Task,
	  in conjunction with the singleton instance of the
	  ACE_Thread_Manager, during Service Object initialization.
	  [Bug 1036]

	* ace/Service_Config.i:

	  Cosmetic update.

	* ace/Svc_Conf.h:

	  Added declaration and method definitions for the
	  ACE_Svc_Conf_Param class.  Instances of this class contain the
	  state used when parsing/scanning a given service configurator
	  file or service configurator directive.

	  (ACE_SERVICE_DIRECTIVE_STACK_DEPTH):

	  There is no longer any hard-coded limit on the maximum depth
	  nested service configurator directives may be processed.  Only
	  process resource limits limit the maximum nesting depth.

	  (ace_yyparse, ace_yylex):

	  Updated the parser and lexer entry points to accept an
	  additional parameter, i.e. a pointer to an ACE_Svc_Conf_Param
	  object.

	  (ace_yy_push_buffer, ace_yy_pop_buffer):

	  Pass a pointer to the buffer that will be "switched" in our out
	  when processing nested service configurator directives those
	  that are processed in parallel.

	* ace/Svc_Conf.l:

	  Removed array that implemented the service configurator
	  directive stack.  The "stack" is now implemented using the
	  function call stack itself.  Hence there is no hard-coded limit
	  to the stack size.

	  Removed all references to ACE_{LPAREN, RPAREN, LBRACE, RBRACE,
	  COLON, STAR}.  Just return their corresponding symbolic integer
	  constants (e.g. ACE_COLON --> ':').

	  Increment error and line count in the ACE_Svc_Conf_Param object
	  passed to the yylex() function from yyparse().  This improves
	  reentrance/thread-safety when tracking error counts.

	  (yy_push_buffer, yy_pop_buffer):

	  Pass a pointer to the buffer that will be "switched" in our out
	  when processing nested service configurator directives those
	  that are processed in parallel.

	* ace/Svc_Conf.y:

	  Removed all references to ACE_{LPAREN, RPAREN, LBRACE, RBRACE,
	  COLON, STAR}.  Just use their corresponding symbolic integer
	  constants (e.g. ACE_COLON --> ':').

	  Increment error and line count in the ACE_Svc_Conf_Param object
	  passed to the yylex() function from yyparse().  This improves
	  reentrance/thread-safety when tracking error counts.

	* ace/Svc_Conf_Lexer_Guard.h:

	  Store a pointer the lexer buffer currently being scanned.

	* ace/Svc_Conf_Lexer_Guard.cpp:

	  Updated constructor to accept a pointer to an ACE_Svc_Conf_Param
	  object.  If the buffer in that object is zero, it will be
	  initialized.

	* ace/Svc_Conf_l.cpp:
	* ace/Svc_Conf_y.cpp:
	* ace/Svc_Conf_Tokens.h:

	  Regenerated these files in order to pull in the updates made to
	  their corresponding source files (i.e. Svc_Conf.{l,y}).

Mon Oct 15 11:26:39 2001  Steve Huston  <shuston@riverace.com>

        * examples/C++NPv2: New directory for examples in "C++ Network
          Programming, Volume 2: Systematic Reuse with ACE and Frameworks"
          Moved these changes to the new directory, and reverted the
          C++NPv1 files to their ACE 5.2 state:
             Sun Oct 14 17:05:14 2001  Douglas C. Schmidt
             Tue Oct  9 07:46:20 2001  Douglas C. Schmidt

Sun Oct 14 17:05:14 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

	* examples/C++NPv1/Logging_Handler.{h,cpp}: Changed log_file_ from
	  a reference to a pointer so that it can be initialized
 	  correctly.  Thanks to Kitty for reporting this.

Fri Oct 12 14:54:58 2001  Craig Rodrigues  <crodrigu@bbn.com>

        * ace/OS.i:
          Remove extraneous check for macro ACE_HAS_WINSOCK2_GQOS,
          which was breaking various builds under Windows.
          Thanks to Jeff McNiel <JMcNiel@datacrit.com> for pointing it out.

Fri Oct 12 12:15:22 2001  Carlos O'Ryan  <coryan@uci.edu>

        * bin/nightlybuilds/builds.lst:
          The QNX machine is no longer running that OS, plus attempts to
          bring it back to life failed.  The build is removed until
          further notice.

Thu Oct 11 17:52:32 2001  Priyanka Gontla  <pgontla@ece.uci.edu>

        * ace/SOCK_Dgram_Mcast.cpp:
          Somehow the file didnt get committed yesterday. So, committing
          the following change now.

          Wed Oct 10 16:56:18 2001  Priyanka Gontla  <pgontla@ece.uci.edu>

Thu Oct 11 10:57:58 2001  Carlos O'Ryan  <coryan@uci.edu>

        * ace/RB_Tree.h:
        * ace/RB_Tree.i:
        * ace/RB_Tree.cpp:
          Reverted to the 5.2 release state. The proposed changes were
          breaking some builds, and they were not bug fixes in any case.

Wed Oct 10 16:56:18 2001  Priyanka Gontla  <pgontla@ece.uci.edu>

        * ace/SOCK_Dgram_Mcast.cpp:
          Reverted the following change as it ended up with some problems
          for multicast services.

          Fri Oct  5 14:40:03 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

Wed Oct 10 06:16:52 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/Activation_Queue.{h,cpp}: Added support for two ACE_Allocator that
          will control how the message blocks and data blocks are
          allocated.  Thanks to Gil Rapaport <grapaport@comgates.co.il>
          for contributing this.

        * examples/Reactor/WFMO_Reactor/test_apc.cpp (main):
        * examples/Reactor/WFMO_Reactor/test_abandoned.cpp (main): Don't
          use a global Event_Handler since this violates the design rules
 	  for the ACE_Reactor.  Thanks to Heping He
 	  <heping.he@riskmetrics.com> and Hartmut Quast
 	  <HartmutQuast@t-online.de> for reporting this and to Irfan for
 	  suggesting where the problem arose.

Tue Oct  9 07:46:20 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * examples/C++NPv1/Logging_Handler.h: Added a new constructor to
          class Logging_Handler that just takes an ACE_SOCK_Stream.  We
          need to use this in C++NPv2.

        * ace/Message_Queue_T.cpp (wait_not_full_cond): Thanks to Leo Kov
          <leo_kov@hotmail.com> for reporting this.

        * ace/TTY_IO.cpp (control): Inserted some useful
          ACE_OS::set_errno_to_last_error() calls.  Also, for Win32 made
          readtimeoutmsec == 0 cause no timeout, whereas readtimeoutmsec
          == MAXDWORD causes infinite timeout.  Thanks to Lars Steubesand
          <Lars_Steubesand@hsgmed.com> for reporting this.

Mon Oct  8 20:19:44 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * examples/DLL/test_dll.cpp: There's no need to specify
          ACE_DLL_SUFFIX as it prevent ACE_Lib_Find to figure out the
          correct DLL name.

          The ACE_ERROR_RETURN macro store and reset the errno so there's
          no need to use dll.error() with it.  Changed to use "%p" to
          display the error.

          Thanks to Heping He <heping.he@riskmetrics.com> for reporting
          the problem.

Mon Oct  8 11:15:21 2001  Angelo Corsaro  <corsaro@doc.ece.uci.edu>

        * ace/RB_Tree.h (class ACE_RB_Tree_Node):
        * ace/RB_Tree.i:

          Changed access privilege on the operator new/delete to be
          public, and added assertion in those method implementation to
          make sure that wrong use of these method are promptly notified.
          This changes should fix the problem that some compiling were
          still having with RB_Trees.

Sat Oct 06 23:06:41 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_Accept_Handler.cpp (ssl_accept):
        * ace/SSL/SSL_Connect_Handler.cpp (ssl_connect):
        * ace/SSL/SSL_SOCK_Stream.i (send_i, recv_i, close):

          Removed the do/while(SSL_pending()) loop.  Its introduction into
          the code was a bit misguided.  There is no need to flush the SSL
          buffer before returning to the Reactor's event loop since the
          code now sends a notification to the Reactor to force the
          Reactor to invoke the event handler before waiting in the event
          loop.  This fixes some SSL protocol errors that manifested
          during multithreaded SSL communication.  [Bug 943]

        * ace/SSL/SSL_SOCK_Acceptor.cpp (ssl_accept):

          It is no longer necessary to call SSL_accept()/connect() to
          flush the SSL buffer before running the Reactor's event loop
          since the Reactor is notified that it should call the
          appropriate event handler before blocking on select() for
          WaitForMultipleObjects(), for example.

        * ace/SSL/SSL_SOCK_Stream.cpp (reactor, handler):

          New methods to set the Reactor and event handler associated with
          the ACE_SSL_SOCK_Stream.  If each of these is set, then the
          Reactor will be notified if data is still pending in the SSL
          buffer.

          (~ACE_SSL_SOCK_Stream):

          Uninlined the destructor.  There is no need for it to be
          inlined, and doing so only caused unnecessary code bloat.

        * ace/SSL/SSL_SOCK_Stream.h (notify, reactor, handler):

          Added these new method declarations, in addition to the
          corresponding attributes.

          Updated documentation.

        * ace/SSL/SSL_SOCK_Stream.i (notify):

          Method that pushes the event handler on to the Reactor's
          notification pipe when necessary.  Invoked by recv_i() and
          send_i().

        * ace/SSL/SSL_SOCK_Acceptor.h:
        * ace/SSL/SSL_SOCK_Connector.h:
        * ace/SSL/SSL_Accept_Handler.h:
        * ace/SSL/SSL_Connect_Handler.h:

          Updated documentation.

Sat Oct  6 16:04:29 2001  Angelo Corsaro  <corsaro@doc.ece.uci.edu>

        * ace/RB_Tree.h:
        * ace/RB_Tree.i:

          The operator new and delete were declared to be No-Op but were
          not implemented as such. This was breaking some builds. Now the
          operator are declared as private and they also have a no-op
          implementation. This should solve some linking error that were
          occurring.

Sat Oct  6 11:17:22 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * THANKS: Added Adrian Mercieca to the hallf of fame.

Fri Oct 05 18:30:59 2001  Irfan Pyarali  <irfan@cs.wustl.edu>

        * ace/RW_Process_Mutex.cpp: Added inclusion ACE.h and fixed member
          initialization.

Fri Oct  5 18:16:53 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/SString.h:
        * ace/SString.cpp: Changes the usage of ostream to
          ACE_OSTREAM_TYPE. Thanks to Russ Noseworthy for letting us
          know.

Thu Oct  4 07:10:01 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/RB_Tree.*: Added support for using the "ACE_Allocator" parameters
          to manage memory.  Thanks to Airat A. Sadreev <airatsa@nm.ru>
          for reporting contributing this.

Wed Oct  3 07:20:06 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/RW_Process_Mutex.{h,cpp}: Added the ability to create a
          unique name if the user doesn't supply one.  Thanks to Tom
          Wagner <TomW@CoManage.net> for suggesting this.

        * ace/Synch.h: Clarified that the timed wait capabilities of
          ACE_Semaphore only work on Solaris if ACE_HAS_PTHREAD is enabled
          *and* ACE_HAS_POSIX_SEM/ACE_HAS_STHREAD are disabled.  Thanks to
          Bonifides Bautista <earlboy@my-deja.com> for reporting this.

Fri Oct  5 12:48:48 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_SOCK_Stream.i (close):

          Reset the SSL object to allow another connection to be made
          using the existing ACE_SSL_SOCK_Stream instance.  This prevents
          the previous SSL session state from being associated with the
          new SSL session/connection.  Thanks to Vladimir Chovanec
          <Vladimir.CHOVANEC@asset.sk> for pointing out this problem and
          suggesting a course of action.

Fri Oct  5 14:40:03 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/SOCK_Dgram_Mcast.cpp (open): Removed the #if defined (linux)
          from the code. Looks like this had to be removed to get it
          working for RTI under Linux. The other ChangeLog entries that
          this change is concerned with are "Sat Feb 17 17:23:46 2001
          Darrell Brunsch <brunsch@uci.edu>" and "Fri Jan 26 11:18:15 2001
          Douglas C. Schmidt". Looks like the patch provided by Keith
          Nicewarner <knicewar@erg.sri.com> is being reverted. I remember
          a communication from Keith which seemed to hint that this may
          not be required.

          Thanks to Russ Noseworthy for suggesting this.

Fri Oct  5 14:04:39 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * THANKS: Added Hagen Ulrich to the Hall of Fame.

Fri Oct  5 13:55:02 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Makefile: Removed the SUPPRESS_DASH_G option. Not really
          sure where it is used. Further, added a tab to the place where
          rules for CHORUS are set. This should fix BUGID 1049. Thanks to
          Hagen Ulrich <ulrich.hagen@siemens.com> and Dr.David Levine for
          reporting and verifying the fix.

Fri Oct 05 05:56:50 2001  Balachandran  <bala@cs.wustl.edu>

        * ACE version 5.2 released.

Thu Oct  4 17:38:21 2001  Steve Huston  <shuston@riverace.com>

        * ace/Synch.h: Added some comments to explain the rationale for
          the different return values from the blocking and timed
          versions of ACE_Null_Semaphore::acquire().  Thanks to Doug
          Schmidt for explaining this.

Thu Oct  4 17:27:39 2001  Steve Huston  <shuston@riverace.com>

        * examples/C++NPv1/Logging_Handler.cpp (recv_log_record): Insure that
          the payload message block is properly aligned for any CDR
          extraction. Many thanks to Bala for noticing this problem and
          sending code for the fix.

Thu Oct  4 17:08:39 2001  Steve Huston  <shuston@riverace.com>

        * examples/C++NPv1/Process_Per_Connection_Logging_Server.cpp:
          In prepare(), call ACE_Process_Options::command_line() rather
          than ACE_Process_Options::process_name() to set the program
          path for the child process.

Thu Oct  4 13:18:37 2001  Steve Huston  <shuston@riverace.com>

        * examples/C++NPv1/Logging_Handler.cpp: Use a ACE_Message_Block,
          rather than hijacking a CDR block, to read the payload into.

Thu Oct  4 10:14:34 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * THANKS: Added Donald Acton to the Hall of Fame.

Thu Oct  4 06:39:20 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/config-sunos5.5.h: Added ACE_LACKS_MKSTEMP as SunOS 5.5 does
          not support mkstemp ().

        * ace/config-sunos5.6.h: Undefined ACE_LACKS_MKSTEMP as Sun 5.6
          and above support it.

          Thanks to Don Hinton <dhinton@swan.fr> for reporting this
          problem and Chad Elliott for testing this out on a Sun OS 5.5
          box.

Wed Oct  3 16:37:41 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/CDR_Stream.cpp (read_1): Reverted this change "Wed Oct  3
          15:05:43 2001  Jeff Parsons <parsons@cs.wustl.edu>".  This
          change is alone not enough to fix the problem that Brad
          reported. The sample program for the text needs to be fixed to
          get it working right.

Wed Oct  3 15:05:43 2001  Jeff Parsons <parsons@cs.wustl.edu>

        * ace/CDR_Stream.cpp (read_1);

          Reverted changed made in

          Fri Aug 17 16:56:16 2001  Jeff Parsons <parsons@cs.wustl.edu>

          to read_1(). A similar change made in several other methods is
          ok, but in this case bytes can be copied into the input CDR
          stream without changing wr_ptr, so the check will fail
          unnecessarily. Thanks to Brad Hoskins <BHoskins@slo.newport.com>
          for pointing this out.

Wed Oct  2 12:18:37 2001  Steve Huston  <shuston@riverace.com>

        * examples/C++NPv1/Logging_Server.cpp: Fixed spelling error.
        * examples/C++NPv1/Logging_Handler.cpp: Comment length adjustment.

Tue Oct  2 21:52:31 2001  Steve Huston  <shuston@riverace.com>

        * examples/C++NPv1/Logging_Client.cpp: Reverted this:
          Mon Oct  1 18:27:41 2001  Steve Huston  <shuston@riverace.com>

Tue Oct  2 19:52:57 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * Makefile: Removed some of the files that no longer exist in the
          repository. The inclusion of these files in the Makefile added
          noise during the beta cutting process.

Tue Oct 02 15:34:49 2001  Carlos O'Ryan  <coryan@uci.edu>

        * etc/tao_cosevent.doxygen:
        * etc/tao_cosnotification.doxygen:
          Fixed typos in the tag file names.

Tue Oct  2 15:52:27 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * THANKS: Added Sunny Leung to the Hall of Fame.

Tue Oct  2 15:33:36 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * THANKS: Removed one instance of Peter Phillips
          <pphillip@opentext.com> from the Hall of Fame.

Tue Oct  2 15:00:37 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/CDR_Stream.cpp (clone_from): Copied the GIOP major and minor
          versions from the incoming CDR stream. Thanks to Sunny Leung
          <sleung@opentext.com> for reporting this. This closes bugzilla
          #1043.

Tue Oct  2 09:45:39 2001  Steve Huston  <shuston@riverace.com>

        * tests/libDLL_Test.icc:
        * tests/libService_Config_DLL.icc: Add link(exportAll) to the link
          options to export the entrypoints needed for the tests.

Mon Oct  1 20:04:14 2001  Priyanka Gontla  <pgontla@ece.uci.edu>

        * THANKS:
          Added Tushar Nair to the THANKS file.

Mon Oct  1 18:06:48 2001  Priyanka Gontla  <pgontla@ece.uci.edu>

        * ace/Object_Manager.cpp (ACE_UnhandledExceptionFilter):
          Removed the un-needed #if 0's. Left them before as a safety
          measure (in case something doesnt work) and forgot to remove
          them later.

        * ace/Log_Msg.cpp (instance):
          Fixed the seg faults that are raised when ace is compiled with
          ACE_NTRACE=0 on SunOS. Added a check before locking and
          releasing a lock.

          Thanks to Tushar Nair <ntushar@yahoo.com> for reporting the
          problem and for providing a fix.

Mon Oct  1 18:27:41 2001  Steve Huston  <shuston@riverace.com>

        * examples/C++NPv1/Logging_Client.cpp: Remove the third (optional)
          arg from getline(). Using a char literal without further
          qualification causes confusion in Unicode builds.

Mon Oct  1 14:44:13 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_Context.cpp (ssl_library_init):

          Initialize the locking callbacks in the crypto library before
          initializing the OpenSSL library.  OpenSSL may require the
          locking callbacks to be initialized before its own
          initialization.

        * ace/SSL/SSL_Context.cpp (ssl_library_fini):

          Perform crypto library resource cleanup before reclaiming the
          locks used by the locking callbacks.  Crypto library resource
          cleanup makes use of the locking callbacks.

Mon Oct  1 15:19:11 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * examples/C++NPv1/README: Added a section that illustrates the
          mapping of chapters onto files in the directory.

Mon Oct  1 12:58:57 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/TP_Reactor.cpp (handle_socket_events): A fix for the problem
          that started showing  up this time is like this. One of the
          threads was dispatching an upcall. In the intermediate time the
          Reactor woke up another thread to close the handler, remember
          that this is possible with the TP_Reactor if the application
          resumes the handles (the way TAO does that). Now when the thread
          that that dispatched the upcall returned it tries to invoke a
          method on the already closed handle. To prevent that from
          happening we make an extra check to see whether the handle
          associated with the handler is still available in the internal
          map of the Reactor. As this check is done in the return path of
          the thread this should have less performance impact. This is
          another reason why we should have #1031 in place ASAP.

Mon Oct  1 12:23:57 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * bin/nightlybuilds/builds.lst (WEB): Changed the name of the
          Sun's EGCS build. We have not been using EGCS but 2.95.x for a
          long time now.

Mon Oct  1 10:46:15 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * bin/PerlACE/Run_Test.pm (check_n_cleanup_files): Removed the
          word "ERROR" when files are left behind. This was creating noise
          in the daily builds. We have captured the problem in the
          bugzilla with id #1014. After 1.2 goes out, if someone is
          looking at this problem again we need to add this back so that
          our daily builds can pick them up.

Sun Sep 30 17:25:33 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_SOCK_Stream.i (send_i, recv_i):

          Reset errno to prevent previous values (e.g. EWOULDBLOCK) from
          being associated with a fatal SSL error (e.g. an alert).

Sun Sep 30 16:52:22 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_Asynch_Stream.cpp (do_SSL_shutdown):

          Return the "retval" variable instead of always returning -1.
          The actual return value may not always be -1.  Thanks to Alain
          Totouom <atotouom@gmx.de> for providing this fix.

        * THANKS:

          Added Alain to the list of contributors.

Sun Sep 30 09:13:04 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_SOCK_Acceptor.cpp (ssl_accept):
        * ace/SSL/SSL_SOCK_Connector.cpp (ssl_connect):

          Made reactor mask constant to emphasize the fact that it is
          indeed a constant.

Sat Sep 29 08:07:07 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/Configuration.{h,cpp}: Changed "allocator" to "alloc" to
          avoid bugs with MSVC++ 5.0.  Thanks to Munagala Ramanath
          <amberarrow@yahoo.com> for reporting this.

        * ACE-INSTALL.html: Yet more improvements courtesy of Chris
          Kohloff.

Fri Sep 28 23:38:07 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_Accept_Handler.cpp (ssl_accept):

          Cleaned up the code.

          Do not attempt to verify the X.509 certificate.  Only the
          application knows how best to do that.

        * ace/SSL/SSL_Context.cpp (ssl_library_init):

          Fixed some Unicode problems.  Wrap strings within an ACE_TEXT
          macro.

        * ace/SSL/SSL_Connect_Handler.cpp (ssl_connect):
        * ace/SSL/SSL_SOCK_Stream.i:

          Corrected some comments.

        * ace/SSL/SSL_SOCK_Stream.h (send_n, recv_n):

          Added a "bytes transferred" pointer parameter.  This allows the
          amount of bytes transferred to returned via this parameter, thus
          matching the semantics of their ACE_SOCK_Stream counterparts.

        * ace/SSL/SSL_SOCK_Stream.cpp (send):

          Do not block attempt a timed send() if data is available in
          OpenSSL's internal buffer.  This prevents a condition where
          needlessly blocking on select() would occur.  A similar fix for
          recv() was made earlier.  See Fri Aug 24 16:54:02 2001  Ossama
          Othman  <ossama@uci.edu> for details.

          (send_n, recv_n):

          If the "bytes transferred" pointer parameter is non-zero then
          return the amounts of bytes transferred through it.  This makes
          these methods better match the semantics of their
          ACE_SOCK_Stream counterparts.

Fri Sep 28 19:24:51 2001  Steve Huston  <shuston@riverace.com>

        * ace/config-hpux-11.00.h: Moved the definitions for ACE_HAS_WCHAR
          and ACE_HAS_XPG4_MULTIBYTE_CHAR from the compiler-independent
          section to the aC++ section. (at least) gcc 3.0 distributed from
          HP can't handle compiling wide char stuff... it refers to
          wctype.h, only available in aC++.

Fri Sep 28 12:46:25 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_Context.cpp (report_error):

          Don't bother displaying an error message if the error code is
          zero (i.e. no error).

Fri Sep 28 12:31:39 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_SOCK_Acceptor.cpp (ssl_accept):

          Transfer ownership of the Reactor to the previous owner for the
          SSL_ERROR_ZERO_RETURN case.  Thanks to Vladimir Chovanec
          <Vladimir.CHOVANEC@asset.sk> for pointing out this problem.

          Remove the SSL event handler from the reactor for the
          SSL_ERROR_ZERO_RETURN case.  Previously, this method returned
          without removing it, resulting in a seg fault.

        * ace/SSL/SSL_SOCK_Connector.cpp (ssl_connect):

          Ported the updates made to the ssl_accept() counterpart to this
          method.

        * ace/SSL/SSL_Accept_Handler.cpp (ssl_accept):
        * ace/SSL/SSL_Connect_Handler.cpp (ssl_connect):
        * ace/SSL/SSL_SOCK_Stream.i (send_i):
        * ace/SSL/SSL_SOCK_Acceptor.cpp (ssl_accept):
        * ace/SSL/SSL_SOCK_Connector.cpp (ssl_connect):

          In the event a SSL_ERROR_SYSCALL error condition occurs, call
          ACE_OS::set_errno_to_last_error() to make sure errno is updated
          appropriately since OpenSSL does not do that.  Fixes some
          "misbehaving" Reactor interactions.  Thanks to Andrew Finnell
          <Andrew.Finnell@esecurityinc.com> for tracking down the problem
          and suggesting these fixes.

Fri Sep 28 09:37:28 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_Context.h (report_error):
        * ace/SSL/SSL_Context.cpp (report_error):

          New SSL error reporting functions that use the ACE_Log_Msg
          facilities to dump error information.

        * ace/SSL/SSL_Context.cpp (set_mode):
        * ace/SSL/SSL_SOCK_Acceptor.cpp (ssl_accept):
        * ace/SSL/SSL_SOCK_Stream.i (send_i, recv_i):
        * ace/SSL/SSL_Accept_Handler.cpp (ssl_accept):
        * ace/SSL/SSL_Connect_Handler.cpp (ssl_connect):

          Use the new report_error() static method to display error
          information instead of OpenSSL's ERR_print_error_fp().

        * ace/SSL/SSL_SOCK_Connector.cpp:

          Include 'ace/Log_Msg.h' to pull ACE_ERROR macro definitions.
          Fixes compile-time problems on Tru64.  Thanks to Martin
          Krumpolec for providing this fix.  [Bug 1034]

          (ACE_SSL_SOCK_Connector):

          Wrap format specifier string in ACE_ERROR call with ACE_TEXT.
          Fixes mismatched Unicode/non-unicode strings.

Fri Sep 28 06:17:27 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/SPIPE_Acceptor.{h,cpp}: Fixed the use of "char" for
          "already_connected_" to be "int".  Thanks to Johnny Willemsen
          for reporting this.

        * ACE-INSTALL.html: Improved the installation instructions for BCB 4/5.
          Thanks to Chris Kohloff for contributing this and to
          Jan Kalin <jan.kalin@zag.si> for motivating this.

        * ace/TTY_IO.cpp: Fixed numerous bugs in the control() method.
          Thanks to Airat A. Sadreev <airatsa@nm.ru> for reporting this.

        * ace/TTY_IO.h: Add a new field for Win32.  Thanks to
          Airat A. Sadreev <airatsa@nm.ru> for reporting this.

Thu Sep 27 06:12:21 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/config-win32.h: Added a special-case for Borland C++ Builder,
          which must include vcl.h before windows.h.  Thanks to Chris
          Kohloff for reporting this.  This fixes Bug ID 899 for the time
          being.

        * ace/Module.cpp (ACE_Module): The line

          this->name ("<unknown>");

          was  be replaced with

          this->name (ACE_TEXT("<unknown>"));

          Thanks to Airat A. Sadreev <sadreevaa@hq.tatenergo.ru> for
          reporting this.  This fixes bug id 1041.

Thu Sep 27 13:09:19 2001  Bala  <bala@cs.wustl.edu>

        * ACE version 5.1.21 released.

Tue Sep 25 16:12:14 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_SOCK_Stream.i (recv_i):

          Use ACE_OS::set_errno_to_last_error() set errno instead of doing
          so manually to get around broken compilers that reset the last
          error when assigning to errno.  Thanks to Chris Kohloff for
          pointing out the problem and suggesting this fix.

Tue Sep 25 13:00:37 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/Obstack.h: Fixed a typo when declaring ACE_Obstack
          exportable.  I mistakenly used the underlying
          ACE_EXPORT_SINGLETON_DECLARATION macro directly.
          ACE_SINGLETON_DECLARATION is the right macro to use here.
          Thanks to Martin Krumpolec <krumpolec@asset.sk> for reporting
          the bug.

Tue Sep 25 09:12:28 2001  Andrew Finnell  <Andrew.Finnell@esecurityinc.com>

        * ace/SSL/SSL_SOCK_Stream.i (recv_i):

          On MS Windows, OpenSSL does not store the last error in errno so
          explicitly do so.  This corrects problems where a server is
          unaware that a client has forcefully disconnected.

Tue Sep 25 00:01:59 2001  Irfan Pyarali  <irfan@cs.wustl.edu>

        * ace/Service_Repository.cpp (instance): There are three stages of
          the Object Manager: (a) starting up; (b) running; (c) shutdown.
          ACE_Service_Repository::instance() was not creating a new
          instance in (a) and (c).  It was changed to allow creation (a).

Mon Sep 24 01:55:29 2001  Ossama Othman  <ossama@uci.edu>

        * bin/auto_run_tests.lst:

          Added TAO's PICurrent test to the list of automated regression
          tests.

Sun Sep 23 19:28:06 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/Reactor.h (ACE_Reactor): Fixed comments for
          <end_reactor_event_loop> and <reactor_event_loop_done>.  Both
          methods work on an instance of reactor, not the global singleton
          reactor.  Thanks to Doug for noticing this.

Sun Sep 23 10:02:59 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/High_Res_Timer.h: Removed a question mark "?",  in a line
          which read  "or sometimes 3.579 Mhz??". This seems to remove the
          warning in VXWORKS builds. I have no clue about the problem that
          VXWORKS compiler sees. It took only more than an hour to figure
          this out. :(.

Sat Sep 22 08:59:24 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/Service_Manager.cpp (handle_input): Added some logic to
          strip off newlines and carriage returns for Windows platforms.
          Thanks to Kyle Brost <Kyle.Brost@quest.com> for contributing
          this.

Sat Sep 22 12:28:21 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/ACE_SSL_LIB.dsp:

          Corrected code generation settings to use the multi-threaded DLL
          version of the run-time library.  Corrects "legacy" build
          problems.

Sat Sep 22 08:59:24 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/High_Res_Timer.{h,i,cpp}: Added comments to explain how
          to configure the timers properly on various platforms.  Thanks
          to Alain Decamps <Alain.Decamps@PIDPA.be> for reporting this.

        * ace/OS.i (ACE_Flow_Spec): Added a check for ACE_HAS_WINSOCK2_GQOS
          so that things will compile properly on MinGW32.  Thanks to Jeff
          McNiel <JMcNiel@datacrit.com> for reporting this.

Fri Sep 21 15:54:55 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/OS_Dirent.cpp: Fixed all the allocations so they work properly
          when used with ACE_TCHAR!  Thanks to Olof Lindfors
          <olof.lindfors@protegrity.com>.

Tue Sep 18 06:25:22 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/*Reactor*: Changed all uses of "delta_time" to "delay_time".
          Thanks to Johnny Willemsen for reporting this.

Sun Sep 16 11:53:38 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/Connector.cpp (handle_output): Fixed the comment to be
          ACE_WIN32.  Thanks to Kobi Cohen-Arazi <kobi@mivzak.com> for
          reporting this.

Fri Sep 21 17:11:52 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Message_Block.h: Tried rewording some comments in the
          ACE_Message_Block. Thanks to Tom Wagner <TomW@CoManage.net> for
          suggesting this.

        * THANKS: Added Tom Wagner <TomW@CoManage.net> to the Hall of
          Fame.

Fri Sep 21 22:11:53 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/ACE_SSL_LIB.dsp:

          Removed hardcoded user-specific include paths, and user-specific
          preprocessor macro definitions.

Thu Sep 20 18:15:49 2001  Steve Huston  <shuston@riverace.com>

        * tests/Config_Test.cpp: Added some more tests to verify correct
          string value reset and enumerate values/sections.

Thu Sep 20 12:29:09 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/ACE_SSL_LIB.dsp:
        * ace/SSL/ACE_SSL_LIB.dsw:

          New static build MSVC++ project and workspace files for the
          ACE_SSL library contributed by Jonathan Reis <reis@stentor.com>.
          [Bug 1032]

Thu Sep 20 12:16:13 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_SOCK.cpp (enable, disable):

          Removed unreachable "return" statements.  [Bug 1033]

        * ace/SSL/SSL_SOCK_Stream.i (ACE_SSL_SOCK_Stream):
        * ace/SSL/SSL_SOCK_Stream.cpp:

          Moved constructor to the ".cpp" file since to prevent inclusion
          of `ace/Log_Msg.h' in `SSL_SOCK_Stream.h'.  This fixes problems
          with some platforms needing the Log_Msg include to pull in the
          ACE_ERROR macros without needlessly increasing inter-header
          dependencies and inclusions.  [Bug 1034]

Thu Sep 20 14:44:29 2001  Steve Huston  <shuston@riverace.com>

        * ace/Process.cpp (ACE_Process_Options): Moved avoid_zombies_
          initialization outside the !Win32 section. Thanks to Johnny
          Willemsen <johnny.willemsen@meco.nl> for this fix.

Thu Sep 20 06:28:50 2001  Chad Elliott  <elliott_c@ociweb.com>

        * ace/config-hpux-11.00.h:

          Reverting the change from "Wed Aug 29 15:32:10 2001  Douglas C.
          Schmidt  <schmidt@macarena.cs.wustl.edu>".  HP-UX 11.00 does
          not actually support pread/pwrite.

Wed Sep 19 16:56:02 2001  Irfan Pyarali  <irfan@cs.wustl.edu>

        * ace/OS.h (THR_SCOPE_PROCESS and THR_SCOPE_SYSTEM): Added
          definitions for THR_SCOPE_PROCESS and THR_SCOPE_SYSTEM on
          platforms that do not support threads.

Wed Sep 19 16:54:04 2001  Jeff Parsons <parsons@cs.wustl.edu>

        * ace/Containers_T.cpp:

          In copy constructor for ACE_Double_Linked_List, added line to
          copy the size of the rhs to the lhs. The new list was ending
          up with a garbage value for its size.

Wed Sep 19 14:15:08 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/ace_dll.dsp:
        * ace/ace_lib.dsp: Enabled generation of debug info even for
          release configurations.  Thanks to Jonathan Reis
          <reis@stentor.com> for suggesting this.

Wed Sep 19 10:23:06 2001  Carlos O'Ryan  <coryan@uci.edu>

        * html/index.html:
          Add couple of missing links to the RT-CORBA components

Wed Sep 19 12:00:04 2001  Johnny Willemsen <jwillemsen@remedy.nl>

        * ACE-INSTALL.html:
          Added BCB5 to some places as supported/used compiler

        * ace/Future.h:
        * ace/Test_and_Set.h:
          Removed the ACE_EXPORT from the templates ACE_Future_Holder and
          ACE_Test_and_Set

        * ace/Service_Config.{h,cpp}:
          Changed the type of the members be_a_daemon_ and no_static_svcs_
          from char to int

Tue Sep 18 13:57:36 2001  Carlos O'Ryan  <coryan@uci.edu>

        * */Makefile:
        * */Makefile.*:
          Updated dependencies, some of the paths were absolute leading to
          ambiguities in parallel builds.

Tue Sep 18 12:18:26 2001  Carlos O'Ryan  <coryan@uci.edu>

        * bin/footprint_stats.sh:
          Fixed bug in footprint charts generation.

Tue Sep 18 10:50:15 2001  Carlos O'Ryan  <coryan@uci.edu>

        * html/index.html:
          Add COS Event and COS Notification services to the index.

Mon Sep 17 19:00:00 2001  Irfan Pyarali  <irfan@cs.wustl.edu>

        * ace/OS.h:

          - THR_SCOPE_PROCESS and THR_SCOPE_SYSTEM were not defined
            for NT.  Added them.

          - Moved the following definitions of VxWorks around such
            that these defines are available even when PACE is not
            used.

            THR_INHERIT_SCHED
            THR_EXPLICIT_SCHED
            THR_SCHED_IO
            THR_SCOPE_SYSTEM
            THR_SCOPE_PROCESS

        * ace/OS.cpp: LinuxThreads do not have support for
          PTHREAD_SCOPE_PROCESS; only PTHREAD_SCOPE_SYSTEM is supported.
          Therefore, PTHREAD_SCOPE_PROCESS is ignored when setting the
          thread scheduling scope.

        * ace/Sample_History.cpp: Added accessors for <sample_count> and
          <max_samples>.

        * bin/auto_run_tests.lst: Added new RTCORBA tests.  Removed
          Minimum CORBA dependency on these tests.

Mon Sep 17 13:49:07 2001  Carlos O'Ryan  <coryan@uci.edu>

        * etc/tao_cosevent.doxygen:
        * etc/tao_cosnotification.doxygen:
          Add new Doxygen files for the Notification and COS Event
          Services

        * bin/generate_doxygen.pl:
          Add new doxygen files to the automatically generated
          documentation.

Mon Sep 17 11:36:54 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * tests/run_tests.lst: This is the script used by the shell
          script in that directory. As the name is confusing this is being
          moved as a new file.

        * tests/run_tests_remote.lst: Renamed the run_tests.lst as
          run_tests_shell.lst. This is invoked by run_tests.sh

        * tests/run_tests.sh: Renamed as a new file.

        * tests/run_tests_remote.sh: Renamed the file run_tests.sh as this
          one. This script can be used to run tests remotely on a
          CHORUS/ClassiX/MVME targets. Further this can also be used to
          run tests on platforms that dont support perl or do not have
          perl.

Sun Sep 16 11:19:01 2001  Balachandran  <bala@cs.wustl.edu>

        * ACE version 5.1.20 released.

Sat Sep 15 16:58:08 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * tests/High_Res_Timer_Test.cpp: Fixed compile problem with Sun CC
          4.2.

Fri Sep 14 05:28:13 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * THANKS: We now have over 1,300 contributors to ACE+TAO!

        * ace/Basic_Types.{h,i}: Added "const" to various operators and
          methods.  Thanks to Alain Decamps for reporting this.

Thu Sep 13 11:02:41 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/Singleton.cpp: If we're not compiling with threading enabled,
          don't call the get_singleton_lock() code.  Thanks to Charles
          Frasch <cfrasch@spawar.navy.mil> for contributing this.

Tue Sep 11 06:23:08 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/Array_Base.h: Changed current_ from u_int to size_t.  Thanks
          to Johnny Willemsen for reporting this.

Fri Sep 14 17:18:37 2001  Steve Huston  <shuston@riverace.com>

        * tests/High_Res_Timer_Test.cpp (check_micro_nano): If the
          nanointerval is 0, change it to 1 to prevent divide-by-zero.

Fri Sep 14 17:02:39 2001  Steve Huston  <shuston@riverace.com>

        * tests/High_Res_Timer_Test.cpp: Replaced some (u_int) casts with
          ACE_U64_TO_U32, which is correct. Thanks to Alain Decamps, yet
          again!, for this fix.

Fri Sep 14 11:39:03 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * THANKS: Added Mahesh Varadarajan and Kevin Clien to the Hall of
          Fame.

Thu Sep 13 22:43:34 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * bin/auto_run_tests.lst: Added the new Cache_Growth_Test to the
          daily tests.

Thu Sep 13 20:38:44 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/Thread_Manager.h (ACE_Thread_Manager): Changed the default
          argument <prealloc> for the constructor from 0 to
          ACE_DEFAULT_THREAD_MANAGER_PREALLOC.  Thanks to Doug for
          pointing this out.

          Added better documentation to explain the purpose of each
          argument in ACE_Thread_Manager's constructor.  Thanks to Nick
          Pratt <npratt@microstrategy.com> for motivating the change.

Thu Sep 13 13:38:41 2001  Steve Huston  <shuston@riverace.com>

        * ace/High_Res_Timer.cpp (elapsed_time (ACE_hrtime_t&nanoseconds),
          elapsed_time_incr (ACE_hrtime_t&nanoseconds): Instead of using
          "nanoseconds >>= 10", use "nanoseconds = nanoseconds >> 10" to
          work around a Borland C++Builder bug. Thanks very much to
          Johnny Willemsen, Christopher Kohlhoff, and Alain Decamps
          for solving this problem.

Thu Sep 13 13:33:29 2001  Steve Huston  <shuston@riverace.com>

        * tests/Service_Config_Test.cpp: Added #include "ace/Log_Msg.h".
          This was probably to get AIX to build clean, but it's been a
          while.

Thu Sep 13 12:04:04 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * THANKS: Added Werner Buchert to the Hall of Fame.

Wed Sep 12 15:10:41 2001  Steve Huston  <shuston@riverace.com>

        * ace/High_Res_Timer.cpp (elapsed_time (ACE_hrtime_t&nanoseconds),
          elapsed_time_incr (ACE_hrtime_t&nanoseconds): Changes to account
          for very fast clocks (> 1GHz). Thank you to Derek Dominish
          <derek.dominish@boeing.com> and Alain Decamps
          <Alain.Decamps@PIDPA.be> for identifying the problem and coming
          up with a good solution. This fixes Bugzilla #1024 (how
          appropriate! ;-)

        * ace/High_Res_Timer.i (elapsed_microseconds (ACE_hrtime_t &usecs):
          More adjustment to the Win32 scale factor adjusting. Thanks (again!)
          to Alain Decamps <Alain.Decamps@PIDPA.be> for identifying and
          supplying a fix for this. This fixes Bugzilla #948 (again).

Wed Sep 12 14:33:29 2001  Steve Huston  <shuston@riverace.com>

        * tests/High_Res_Timer_Test.cpp: Incorporated some additional tests
          for usec/nsec sanity checks on the calculated ACE_High_Res_Timer
          values. Thank you very much to Alain Decamps
          <Alain.Decamps@PIDPA.be> for this test.

Tue Sep 11 12:40:01 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * Terror unleashed. The World Trade Center and the Pentagon
          attacked  today. Looks like there could be lots of loss to
          precious lives. This is too horrible. We convey our condolences
          to the bereaved families. God save this world.

Tue Sep 11 06:41:31 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * apps/Gateway/Gateway/Concrete_Connection_Handlers.cpp: Fixed a
          typo. This should fix most of the errors in the scoreboard.

Mon Sep 10 18:59:24 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * apps/Gateway/Peer/Peer.cpp (nonblk_put):
        * apps/Gateway/Gateway/Concrete_Connection_Handlers.cpp (nonblk_put):
          Reverted Bala's changes below since the original code was
          correct.  Also, added comments to clarify things to prevent
          confusion in the future.

Mon Sep 10 17:31:11 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ACE-INSTALL.html: Added a new platform to the list.

Mon Sep 10 12:54:28 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * apps/Gateway/Gateway/Concrete_Connection_Handlers.cpp:
          Changed the condition  that checks for EWOULDBLOCK after a
          send. It was erroneously written. Thanks to Nick Pratt
          <npratt@microstrategy.com> for pointing this out.

Mon Sep 10 12:36:07 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * apps/Gateway/Peer/Peer.cpp (nonblk_put): Changed the condition
          that checks for EWOULDBLOCK after a send. It was erroneously
          written. Thanks to Nick Pratt <npratt@microstrategy.com> for
          pointing this out.

Mon Sep 10 08:17:08 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * bin/auto_run_tests.lst: Will not run the File_IO test in the
          Minimum CORBA configuration.

Mon Sep 10 08:05:39 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * bin/auto_run_tests.lst: Prevented the DLL_ORB test from running
          in static builds.

Sun Sep  9 10:20:59 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * */Makefile: Updated dependencies.

Sun Sep  9 08:43:02 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Handle_Set.i: Added a check in set_bit () and clr_bit () for
          ACE_INVALID_HANDLE. If we pass a ACE_INVALID_HANDLE we were
          crashing which is not good and hence the fix.

Sun Sep  9 08:28:52 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Reactor_Impl.h:
        * ace/Select_Reactor_Base.h:
        * ace/Select_Reactor_Base.cpp (is_dispatchable): Added a new
          method. This method, just figures out whether the buffer has any
          dispatchable info or not.

        * ace/WFMO_Reactor.h:
        * ace/WFMO_Reactor.cpp: Added the above method in the WFMO
          Reactor.

        * ace/TP_Reactor.cpp: The handle_notify_events () method now
          checks whether the buffer it has read is dispatchable or not. If
          it is then it gives up the token to make an upcall. Else, it
          just sits around to remove messages of the pipe, till it find
          one with a dispatchable info. The fix was necessary  so that
          wake-up calls that are unanswered are removed of the
          pipe. Unanswered wakeup calls were filling up the pipe and they
          were blocking some application from writing further to the
          pipe. This should be in all probability be the final fix to the
          Reactor.

Sat Sep  8 09:34:52 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * tests/Logging_Strategy_Test.cpp: Fixed a typo that was giving
          compile errors in VXWORKS builds.

Fri Sep  7 16:40:37 2001  Priyanka Gontla  <pgontla@ece.uci.edu>

        * ace/OS.h:
          Added an if-def case for IP_MULTICAST_TTL too.

Fri Sep  7 17:09:04 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * tests/Thread_Pool_Reactor_Resume_Test.cpp: Initialised the lock
          to null  in the constrcutor before allocating memory for
          it. This was done to remove the ABW errors in
          purify. This should remove the problem that we see with this
          test in our daily builds with SunCC 4.2.

Fri Sep  7 15:51:48 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * tests/Logging_Strategy_Test.cpp: Included Auto_Ptr.h.

Fri Sep 07 15:29:37 2001  Yamuna Krishnamurthy  <yamuna@cs.wustl.edu>

        * examples/QOS/Change_Receiver_FlowSpec/Receiver_QoS_Event_Handler.cpp:
        * examples/QOS/Change_Receiver_FlowSpec/Sender_QoS_Event_Handler.cpp::
        * examples/QOS/Change_Receiver_FlowSpec/Fill_ACE_QoS.cpp:

        * examples/QOS/Change_Sender_TSpec/Receiver_QoS_Event_Handler.cpp:
        * examples/QOS/Change_Sender_TSpec/Sender_QoS_Event_Handler.cpp::
        * examples/QOS/Change_Sender_TSpec/Fill_ACE_QoS.cpp:

        * examples/QOS/Simple/Receiver_QoS_Event_Handler.cpp:
        * examples/QOS/Simple/Sender_QoS_Event_Handler.cpp:
        * examples/QOS/Simple/Fill_ACE_QoS.cpp:

          Fixed compile errors.

Fri Sep  7 14:17:41 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/TP_Reactor.cpp: Do not clear the notify handle bit when
          trying to dispatch notify calls. This shoudl fix the long
          pending problems with TRU 64 builds.

Fri Sep 07 12:12:39 2001  Steve Huston  <shuston@riverace.com>

        * examples/C++NPv1/Iterative_Logging_Server.dsp:
        * examples/C++NPv1/Logging_Client.dsp:
        * examples/C++NPv1/Process_Per_Connection_Logging_Server.dsp:
        * examples/C++NPv1/RT_Thread_Per_Connection_Logging_Server.dsp:
        * examples/C++NPv1/Reactive_Logging_Server.dsp:
        * examples/C++NPv1/Reactive_Logging_Server_Ex.dsp:
        * examples/C++NPv1/Thread_Per_Connection_Logging_Server.dsp:
          Use relative paths to include and library files rather than
          $(ACE_ROOT). Makes it easier to use in place regardless of
          ACE version.

        * examples/C++NPv1/Logging_Client.cpp: Fixed scoping of the getline()
          method call.

Thu Sep  6 21:14:05 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * tests/Logging_Strategy_Test.cpp: Changed the usage of auto_ptr
          <> to ACE_Auto_Basic_Ptr<>. Thanks to Carlos O'Ryan for this
          suggestion.

Thu Sep 06 18:42:39 2001  Steve Huston  <shuston@riverace.com>

        * examples/C++NPv1: New directory that contains all of the example
          code for Doug/my book, C++ Network Programming, Vol 1.

Thu Sep  6 12:01:15 2001  Priyanka Gontla  <pgontla@ece.uci.edu>

        * ace/OS.h:
          Added a if-def case for IP_MULTICAST_IF. Seems like it is not
          defined in some of the OS versions.

Thu Sep 06 12:36:43 2001  Yamuna Krishnamurthy  <yamuna@cs.wustl.edu>

        * ace/OS.h:
        * ace/OS.i:
        * ace/QoS/QoS_Session_Impl.cpp:
        * ace/QoS/QoS_Session.h:

          Fixed compile errors.

Thu Sep  6 10:24:15 2001  Ossama Othman  <ossama@uci.edu>

        * ace/Acceptor.cpp (accept_svc_handler):
        * ace/Strategies_T.cpp (accept_svc_handler):

          Do not close and reopen the peer acceptor on failed attempts to
          accept a connection.  Several problems were fixed by removing
          this code:

                - A race condition existed where another thread or process
                could acquire the port that the peer acceptor was
                listening on before it was closed.  Note that it is not
                enough to attempt to synchronize this code with a lock
                since an external process could still acquire the port.

                - If the port in the peer acceptor (assuming it is an
                ACE_INET_Addr based one) is the wildcard port (zero), then
                there is no guarantee that the acceptor will be opened on
                the same port upon which it is was previously listening.
                In such a case, IORs generated by TAO (for example) can be
                rendered invalid since the addressing information embedded
                in those IORs will no longer contain the actual port to
                connect to when making invocations.  [Bug 962]

                - The above two problems actually introduced a
                denial-of-service attack vulnerability (now closed by this
                fix) since it was relatively easy to force a failed
                connection attempt, which would then cause the peer
                acceptor to be reopened on potentially a different port,
                or to shutdown completely if reopening failed.

        * ace/SSL/SSL_SOCK_Acceptor.i (close):

          Invalidate the handle stored within the ACE_SSL_SOCK_Acceptor
          instance.  Corrects problems arising from attempts to use a
          listening socket that has been shut down.

        * ace/SSL/SSL_SOCK_Acceptor.cpp (ssl_accept):

          Perform an OpenSSL SSL_accept() in case OpenSSL buffered data
          that must be handled before entering the Reactor event loop used
          to complete a non-blocking SSL passive connection.

          If the OpenSSL error status is SSL_ERROR_ZERO_RETURN shut down
          the partially initialized SSL stream/session since the peer has
          itself shut down.

Thu Sep  6 11:00:46 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/TP_Reactor.cpp: The timer events are not included as a part
          of  number of active handles from wait_for_multiple_events
          (). The check for event_count > 0 before processing timer events
          was wrong. Removed the check. Thanks to Chad Elliott for
          pointing this out.

          Further did some cosmetic changes like adding comments, removing
          comments that was not valid etc.

Thu Sep  6 07:50:56 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * bin/auto_run_tests.lst: The AMI buffering test should not be run
          Single threaded builds.

Thu Sep  6 02:30:14 2001  Christopher Kohlhoff  <chris@kohlhoff.com>

        * examples/Export/Makefile.bor:
        * examples/Export/export_dll.bor:
        * examples/Export/test.bor:
        * examples/Export/dll.h:
          Added makefiles for this example and fixed a template problem with
          Borland C++. Thanks to Charles Frasch <cfrasch@spawar.navy.mil> for
          contributing this.

Wed Sep  5 19:48:34 2001  Priyanka Gontla  <pgontla@ece.uci.edu>

        * ace/SOCK_Dgram.cpp (set_nic):
          Fixed the errors that raised in Win.

Wed Sep  5 20:38:10 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/OS.h:
        * ace/OS.i:
        * ace/QoS/QoS_Session_Impl.cpp:
        * ace/QoS/QoS_Session.h: Reverted the change "Wed Sep  5 18:58:00
          2001 Yamuna Krishnamurthy  <yamuna@cs.wustl.edu>". The change
          broke builds. Further there was no reason why the QoS
          information should come inside OS.* files. Talk about increasing
          foot print.

Wed Sep  5 18:58:00 2001 Yamuna Krishnamurthy  <yamuna@cs.wustl.edu>

        * ace/QoS/QoS_Session.h:
        * ace/QoS/QoS_Session_Impl.h:
        * ace/QoS/QoS_Session_Impl.cpp:

          Added rapi_sender and rapi_reserve calls with null tspec and
          flow spec respectively to facilitate the tearing down of PATH
          and RESV messages.

        * ace/OS.h:
        * ace/OS.i:

          Changed the sending_flowspec_ and receiving_flowspec_ members of
          the ACE_QoS class to pointers so they can be initialized to null
          flow specs.

Wed Sep  5 16:50:03 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * THANKS: Added Peter Phillips <pphillip@opentext.com> to the Hall
          of Fame.

        * ace/OS_String.cpp: Fixed a warning in TRU64 builds.

Wed Sep  5 11:29:59 2001  Priyanka Gontla  <pgontla@ece.uci.edu>

        * ace/SOCK_Dgram.h:
        * ace/SOCK_Dgram.cpp:

          Added a new method to set the NIC address in the socket.

Wed Sep 05 12:00:42 2001  Steve Huston  <shuston@riverace.com>

        * include/makeinclude/platform_aix4_g++.GNU: Sets ACE_AIX_VERS rather
          than separate major/minor; see entry below for further info.

Wed Sep 05 11:52:39 2001  Steve Huston  <shuston@riverace.com>

        * ace/config-aix5.1.h: New config file for AIX 5L, version 5.1,
          using Visual Age C++ 5.

        * ace/config-aix-4.1.x.h:
        * ace/config-aix-4.2.x.h:
        * ace/config-aix-4.3.x.h:
        * ace/config-aix-4.x.h: Use ACE_AIX_VERS (which has both major and
          minor version) rather than ACE_AIX_MAJOR_VERS and ACE_AIX_MINOR_VERS.

        * include/makeinclude/platform_aix_ibm.GNU: Rather than making
          separate major/minor OS version variables, use one that incorporates
          both to make it easier for config.h files to set upwardly-compatible
          feature flags.

Wed Sep  5 06:55:44 2001  Chad Elliott  <elliott_c@ociweb.com>

        * tests/Log_Msg_Test.cpp:

          Add ACE_TEXT() around the default program name for the Windows
          WChar Unicode build.

Tue Sep  4 18:48:00 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Select_Reactor_Base.cpp: Changed the value returned from
          ACE_Select_Reactor_Notify_Handler::handle_input (). This now
          returns a 0 if we did not dispatch any handles or the number of
          handles dispatched. We were returning a -1 if we did not
          dispatch any handles, after reading the notification from the
          pipe. This should fix the Reactor_Notify_Test in the Implicit
          templates build.

Tue Sep  4 12:46:50 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/ACE.cpp: Reverted this change "Tue Sep  4 07:37:17 2001
          Balachandran Natarajan  <bala@cs.wustl.edu>". Thanks to Irfan
          for pointing that this change, changes the semantics of the
          methods.

Tue Sep  4 09:14:36 2001  Chad Elliott  <elliott_c@ociweb.com>

        * ace/CDR_Stream.i:
        * ace/CDR_Stream.cpp:

          Work around a compiler bug in the latest Green Hills Multi200.
          Casting a float to an ACE_CDR::ULong* caused internal compiler
          errors if the code was inlined.

        * ace/config-vxworks5.x.h:
        * include/makeinclude/platform_vxworks5.x_ghs.GNU:

          Updated support for Green Hills Multi2000.

Tue Sep  4 07:41:42 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * THANKS: Added Eyal Neuman <eyal@tradertools.com> to the Hall of
          Fame.

Tue Sep  4 07:37:17 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/ACE.cpp: Fixed a bug with recv_n_i (). The problem was form
          returning the exact number of bytes from the for loop. If the
          loop had executed once and if we get 0 in the next recv_i ()
          call, then we should be returning the number of bytes read in
          the previous iteration and not 0. Thanks to Eyal Neuman
          <eyal@tradertools.com> for this fix. This closes bug 1015.

Tue Sep  4 07:08:30 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/ACE.cpp: Fixed a unicode error in teh Win32 builds. Acted as
          a dumbo when I made this change yesterday:(

Mon Sep  3 20:08:25 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/TP_Reactor.cpp: Fixed a warning in TRU 64 builds.

Mon Sep  3 09:58:32 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * */Makefile: Updated dependencies

Mon Sep  3 09:44:46 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Select_Reactor_Base.cpp: Fixed a warning in Implicit
          template builds.

Mon Sep  3 08:21:36 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/ACE.cpp: Replaced L with ACE_TEXT_WIDE.

Mon Sep  3 07:54:32 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/OS_String.cpp: Fixed compile errors in win32 builds. Thanks
          to Johnny Willemsen for sending in patches for replacing L with
          ACE_TEXT_WIDE.

Sun Sep  2 19:33:07 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Select_Reactor_Base.cpp: Fixed a small problem with the
          select reactor's notify () handling mechanism. This was more of
          a problem with me not checking the while () loop condition
          properly. This should fix most of the reactor problems seen in
          the daily builds.

Sat Sep  1 14:10:08 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/System_Time.cpp,
        * ace/Stream_Modules.cpp,
        * ace/Service_Types.cpp,
        * ace/Service_Manager.cpp,
        * ace/SPIPE_Addr.cpp,
        * ace/OS.cpp,
        * ace/Memory_Pool.cpp,
        * ace/Mem_Map.cpp,
        * ace/Local_Name_Space_T.cpp,
        * ace/FILE_Addr.cpp,
        * ace/FIFO.cpp,
        * ace/Connector.cpp,
        * ace/Acceptor.cpp,
        * ace/Token_Collection.cpp,
        * ace/Name_Request_Reply.cpp,
        * ace/Local_Tokens.cpp,
        * ace/ACE.cpp,
        * ace/Log_Record.cpp,
        * ace/Log_Msg.cpp: Added the use of the new ACE_OS::strsncpy()
          method.  Thanks to Alain for reporting this.

        * ace/OS_String.{h,cpp}: Added a "safe" c string copy method:
          strsncpy(dst,src,maxlen).  Changing an occurence off strncpy()
          to strsncpy() is less errorprone, but could break somebody's
          code if he/she is using the fact that the strncpy's where
          nul-padding the destination, but this is extremely
          unlikely. Using strsncpy() is also almost always (a lot) faster
          than strncpy().  Thanks to Alain Decamps
          <Alain.Decamps@PIDPA.be> for this method.

Sat Sep  1 09:54:55 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * tests/Bound_Ptr_Test.cpp: Added a patch from Chris Kohlhoff that
          fixes the problem with VXWORKS builds. The old gcc compiler
          seems to have problems with forward declared types as template
          parameters. Chris solves the problem by defining a ABC properly
          and making the offending class inherit from it. This should fix
          our daily VXWORKS builds.

Sat Sep  1 08:07:51 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Select_Reactor_Base.cpp: Fixed a compilation error  in the
          Notification queue portion of the code. Thanks to our daily
          builds for helping me with this testing.

Fri Aug 31 22:12:26 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/TP_Reactor.cpp:
        * ace/Select_Reactor_Base.cpp: Fixed fuzz errors.

Fri Aug 31 22:07:57 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/WFMO_Reactor.h:
        * ace/WFMO_Reactor.cpp: Added the method read_notify_pipe () to
          the WFMO_Notify_Handler.

Fri Aug 31 19:14:52 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Reactor_Impl.h: Added a new method by name read_notify_pipe
          (). Also changed the dispatch_notify () to take in a
          Notification buffer instead of a ACE_HANDLE.

        * ace/Select_Reactor_Base.cpp:
        * ace/Select_Reactor_Base.h: Made the following changes

          - Implemented read_notify_pipe (). Will read just one message from
            the notify pipe or one message from the notification queue.

          - Reimplemented dispatch_notify (). This method would just
            dispatch the upcall using the information in the notification
            buffer.

          - The handle_input () now uses the read_notify_pipe () and
            dispatch_notify () to achieve what it was doing before.

          - The notify () call now sends one notify message on the pipe
            for every message in the notification queue.

        * ace/TP_Reactor.cpp (handle_socket_events):
        * ace/TP_Reactor.h:
        * ace/TP_Reactor.i: We had a race condition. The race condition
          was because two threads were trying to read from the notify_pipe
          at the same instance. This race condition was fixed by adding a
          call to read_notify_pipe () with the lock held and then calling
          dispatch_notify () with the buffer read after releasing the
          lock.  Did the following minor modifications

          - Changed dispatch_socket_events () as dispatch_socket_event ()
            as we were dispatching only one event.

          - We dont grab the token in the constructor of the token. We
            have to make a call specfically to grab_token () to get the
            token.

        The above checkins should fix the correctness of the reactor
        problems that we have been seeing.

Fri Aug 31 18:30:28 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * bin/auto_run_tests.lst:

          Added Blocking_Sync_None to the list of tests to be run on
          Tru64.

        * ACE-INSTALL.html:

          Added Linux/IA64 to the list of platforms supported.

Fri Aug 31 15:27:09 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Bound_Ptr.i: Fixed a problem with Sun CC42 builds. Used 1
          instead of true.

Fri Aug 31 14:57:42 2001  Steve Huston  <shuston@riverace.com>

        * tests/MEM_Stream_Test.cpp: Fixed usage of ACE_SYNCH meta-class
          to work correctly with templates.

Fri Aug 31 11:53:05 2001  Krishnakumar B  <kitty@cs.wustl.edu>

         * ace/OS.h:
         * ace/Timer_Queue_T.h:
         * ace/Timer_Queue_T.h:
         * ace/config-hpux-11.00.h:
         * ace/config-hpux11.h:
         * ace/config-irix6.x-common.h:
         * ace/config-linux-common.h:
         * ace/config-lynxos.h:
         * ace/config-osf1-4.0.h:
         * ace/config-pharlap.h:
         * ace/config-sunos4-g++.h:
         * ace/config-sunos4-lucid3.2.h:
         * ace/config-sunos4-sun3.x.h:
         * ace/config-sunos4-sun4.1.4.h:
         * ace/config-sunos4-sun4.x-orbix.h:
         * ace/config-sunos5.4-centerline-2.x.h:
         * ace/config-sunos5.4-g++.h:
         * ace/config-sunos5.4-sunc++-4.x-orbix.h:
         * ace/config-sunos5.4-sunc++-4.x.h:
         * ace/config-sunos5.5.h:
         * ace/config-tandem.h:

           Fixed up documentation of ACE_TIMER_SKEW. Fixed bogus values in
           all the above files. Should help in removing some of the errors
           in TAO tests. Any test in ACE/TAO which breaks because of this
           change is broken and should be fixed.

Fri Aug 31 12:00:00 2001  Steve Huston  <shuston@riverace.com>

        * tests/Bound_Ptr_Test.icc: New Visual Age C++ config for this test.
        * tests/tests.icp: Added Bound_Ptr_Test.icc, Service_Config_Test.icc,
                           and libService_Config_DLL.icc.

Fri Aug 31 11:40:31 2001  Steve Huston  <shuston@riverace.com>

        * tests/MEM_Stream_Test.(cpp h): Fixed single-threaded builds.

Fri Aug 31 08:13:26 2001  Chad Elliott  <elliott_c@ociweb.com>

        * bin/perltest2cpp.pl:

          Added a -t option to set the timeout factor.

Thu Aug 30 18:08:32 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * ace/config-linux-common.h:

          Added some more missing stuff which might break compilations.
          The previous change also removed the existing definition for
          ACE_TIMER_SKEW so add it back till the new version is checked in.

Thu Aug 30 17:54:40 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * ace/config-linux-common.h:

          This file was checked in inadvertently when checking in fixes
          for ACE_NEEDS_HUGE_THREAD_STACKSIZE.

Thu Aug 30 13:04:38 2001  Steve Huston  <shuston@riverace.com>

        * tests/run_test.lst: Added Bound_Ptr_Test.

Thu Aug 30 11:40:39 2001  Steve Huston  <shuston@riverace.com>

        * tests/run_test.pl (run_program): Fixed the 'unlink' to get
          all of a test's log files; prevents seeing previous sub-logs
          from a test such as MEM_Stream_Test and falsely reporting errors.

Thu Aug 30 10:46:51 2001  Steve Huston  <shuston@riverace.com>

        * ace/High_Res_Timer.cpp (global_scale_factor ()): When checking for
          a high-res timer mechanism, don't set the global_scale_factor_status_
          away from 0 until _after_ getting the scale factor, to avoid
          a second parallel thread from using a bogus value. Thanks very much
          to Alain Decamps for this fix.

Thu Aug 30 09:30:19 2001  Chad Elliott  <elliott_c@ociweb.com>

        * tests/Log_Msg_Test.cpp:

          Fix for VxWorks when ace_main() is called with argc == 0.

        * tests/run_test.lst:

          Update the list of tests that run on VxWorks.

        * tests/Makefile:
        * tests/run_test.pl:

          Update the script to output VxWorks commands to a file.

Thu Aug 30 09:58:38 2001  Steve Huston  <shuston@riverace.com>

        * ace/High_Res_Timer.i (elapsed_microseconds): For Win32, isolate the
          msec modulus before converting it up to usecs. Thanks to Francois
          Rioux <rioux01@gel.ulaval.ca> for reporting this.

Thu Aug 30 00:42:41 2001  Christopher Kohlhoff  <chris@kohlhoff.com>

        * ace/Service_Config.cpp:
          Service_Object instances are now inserted into the Service_Repository
          only after they have been successfully initialised, to provide better
          support for recursive use of the service configurator. With this
          change, a service loaded from 'inside' another services's init() will
          be inserted into the repository first and unloaded last. This ensures
          that any recursively loaded services on which the original service
          depends still exist when the original service's fini() function is
          called.

Thu Aug 30 00:27:05 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * ChangeLog:

          Removed bogus files from the previous entry. I should not play
          around with a lot of tasks at once.

Wed Aug 29 19:57:29 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * ace/config-osf1-4.0.h:

          Remove definition of ACE_NEEDS_HUGE_THREAD_STACKSIZE. The
          default value seems to be good enough.

        * ace/config-vxworks5.x.h:
        * ace/config-lynxos.h:
        * ace/config-qnx-neutrino.h:
        * ace/config-rtems.h:

          Standardized the values to 64KB on these platforms. Don't know
          if these platforms need it. But I don't have access to any of
          these so playing it safe.


Wed Aug 29 18:52:12 2001  Christopher Kohlhoff  <chris@kohlhoff.com>

        * tests/Bound_Ptr_Test.cpp:
          Removed a stray asterisk that was causing compilation failures.

Wed Aug 29 17:54:52 2001  Steve Huston  <shuston@riverace.com>

        * tests/libDLL_Test.icc:
        * tests/libService_Config_DLL.icc: Fixed the "run after" directives
          to correctly build the lib*.a files. Also, fixed the cleanup
          directives to properly clean up both .a and shr.o files.

Wed Aug 29 15:32:10 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/config-aix-4.x.h:
        * ace/config-hpux-11.00.h:
        * ace/config-osf1-4.0.h: Added better support for pread()/pwrite().
          Thanks to Steve Vranyes <steve.vranyes@veritas.com> for these fixes.

Wed Aug 29 15:47:33 2001  Steve Huston  <shuston@riverace.com>

        * tests/run_test.lst: Re-enabled MEM_Stream_Test.

Wed Aug 29 12:15:01 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/ace_dll.dsp:
        * ace/ace_lib.dsp:  Added Bound_Ptr.* to the projects.

        * tests/tests.dsw:
        * tests/Bound_Ptr_Test.dsp: Added a new project for
          Bound_Ptr_Test.

Wed Aug 29 11:01:22 2001  Steve Huston  <shuston@riverace.com>

        * tests/MEM_Stream_Test.cpp: Fixed a cut/paste error and now runs the
          proper number of threads/processes for the MT case, avoiding a
          hang.

Wed Aug 29 07:08:23 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * tests/run_tests.lst:
        * tests/Makefile
        * tests/Makefile.bor
        * ace/Makefile
        * ace/Bound_Ptr.{h,i}
        * tests/Bound_Ptr_Test.cpp
        * examples/Smart_Pointer: Added a pair of new smart pointer classes,
          ACE_Strong_Bound_Ptr and ACE_Weak_Bound_Ptr.  Thanks to
          Christopher Kohlhoff <chris@kohlhoff.com> for contributing
          these.

Tue Aug 28 17:51:19 2001  Steve Huston  <shuston@riverace.com>

        * tests/run_test.pl: If a test has log files associated with the
          main log of the form <test>-<other>.log, e.g. MEM_Stream_Test-331.log
          the check_log function will scan those for errors/warnings too.

Tue Aug 28 16:48:23 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/TP_Reactor.i: We (the current thread) should not release the
          token unless we own it. This simple mistake just took 3 days to
          figure out. An 'if' condition was mixing and have added
          it. Shows how a small problem at lower levels can take days to
          fix.

Tue Aug 28 17:45:22 2001  Steve Huston  <shuston@riverace.com>

        * tests/MEM_Stream_Test.cpp: Fixed compile warning on gcc.

Tue Aug 28 13:16:31 2001  Chad Elliott  <elliott_c@ociweb.com>

        * bin/vxworks_modify.pl:
        * bin/perltest2cpp.pl:

          Generated c++ files now pass the fuzz check.

Tue Aug 28 11:02:08 2001  Ossama Othman  <ossama@uci.edu>

        * bin/nightlybuilds/builds.lst:

          Renamed the GCC 3.0 build to "Debian_GCC_3.0.1." since we're
          actually compiling with GCC 3.0.1, not GCC 3.0.  The latter has
          bugs that prevent it from compiling ACE/TAO at the "-O3"
          optimization level.

Tue Aug 28 10:19:18 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_SOCK_Stream.i (recv_i):

          Corrected Borland warning using a more efficient fix (i.e. less
          function calls).

Tue Aug 28 10:36:10 2001  Chad Elliott  <elliott_c@ociweb.com>

        * bin/vxworks_modify.pl:
        * bin/perltest2cpp.pl:

          Added these scripts for use with VxWorks and the newly added TAO
          TestUtils.  These scripts modify c++ and perl to generate
          "one-button" modules for TAO testing on VxWorks.

Tue Aug 28 11:07:26 2001  Steve Huston  <shuston@riverace.com>

        * tests/MEM_Stream_Test.cpp: Be sure to close the stream from the
          client end.

Mon Aug 27 20:16:38 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * tests/run_test.lst: Removed the MEM_Stream_Test from the daily
          builds as they were hanging. This was causing the builds to
          choke. I will keep Steve Huston informed on this so that he can
          reenable them once he has fixed the test.

Mon Aug 27 18:33:59 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * bin/nightlybuilds/builds.lst (WEB):

          Removed the stray yoda part of LIST which is causing the wrong
          results to show up.

Mon Aug 27 18:14:38 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * bin/nightlybuilds/builds.lst (WEB):

          Added the IA-64 builds back again. We now have a faster machine
          running a better version of Linux.

Mon Aug 27 09:39:33 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Timer_Queue_T.i (get_dispatch_info):
        * ace/Timer_Queue_T.h: Fixed the compile problem in VXWORKS
          builds. How could I forget that there are a few compilers which
          cannot grok traits?

Mon Aug 27 09:39:12 2001  Johnny Willemsen <jwillemsen@remedy.nl>

        * examples/Makefile.bor:
        * examples/NT_Service/Makefile.bor
          Added BCB makefile for this example

Sun Aug 26 22:08:32 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/TP_Reactor.i: Reordered methods to fix warnings in TRU 64
          builds.

Sun Aug 26 20:50:22 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/SSL/SSL_SOCK_Stream.i: Fixed a warning (hopefully) in
          Borland builds. The warning was because a temporary variable was
          created.

Sun Aug 26 20:45:24 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * tests/MEM_Stream_Test.cpp: Fixed a unused variable warning in
          Borland.

Sun Aug 26 08:13:12 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * tests/test_config.h: Added a new ACE_CLOSE_TEST_LOG macro.  Thanks to
          Edan for this.

Sun Aug 26 09:07:32 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/TP_Reactor.cpp: Fixed a compile error with SunCC4.2

Sun Aug 26 08:28:09 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Timer_Queue_T.cpp: Fixed a warning from an unused variable
          reported by KCC compilers.

Sun Aug 26 08:13:12 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * tests/Logging_Strategy_Test.cpp: Applied the following fixes from
          Edan:

          - Included ace/Logging_Strategy.h
          - Addition of -w switch to enable initial wipeout of logfile
          - Removal of the redundant ACE_LOG_MSG->open()
          - Explicitly close the previous log before applying the changes to the
            ACE_LOG_MSG
          - Moved remove_files() call higher, just before logfile close

        * ace/Logging_Strategy.{h,cpp}: Added the following fixes from
          Edan Ayal:

          - Logging_Strategy now supports any ACE_Log_Msg, not just the
            ACE_LOG_MSG singleton.
          - Added a check for success (ios::goodbit) of new ofstream
            creation.
          - Changed default values for max_size and interval. Now the
            default interval is 10 minutes (instead of 0) and the default
            log file size is 0 (was 16K). The timer is now activated only
            if both are non-zero.
          - Added a mutator to set the ACE_Log_Msg to work with, and a
            member variable
          - Added definition for ACE_DEFAULT_LOGFILE_POLL_INTERVAL
          - Removed definition of ACE_DEFAULT_MAX_LOGFILE_SIZE

        * ace/Log_Record.{h,cpp}: Enhanced this implementation to (1)
          be consistent with recent changes to Log_Msg.h and (2) to
          replace problematic use of strncpy().  Thanks to Alain
          Decamps for these fixes.

Sat Aug 25 20:58:22 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/FILE_IO.i (send_n): Changed to use ACE::write_n to send the
          chain of Message_Blocks.  The originally used ACE::send_n was
          causing problem on NT because send_n was restricted for sockets
          I/O on NT.  Thanks to Doug for pointing this out.

Sat Aug 25 10:16:21 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * tests/Svc_Handler_Test.cpp (main): The destructor of svc_handler
          will close file_io, so we don't need to do it explicitly!

        * ace/Log_Msg.cpp (log): Changed range check from

          this->msg_ + ACE_Log_Record::MAXLOGMSGLEN

          to

          this->msg_ + sizeof this->msg_

          to correspond to the change below.

        * ace/Log_Msg.h (ACE_Log_Msg): Increased the size of the buffer
          used to store log records to account for the NUL-terminator.

        * tests/Svc_Handler_Test.cpp (main): Changed the buffer size
          and NUL-terminated the buffer so that things print correctly.
          Thanks to Nanbor for finding this.

Sat Aug 25 09:00:28 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/TP_Reactor.cpp:
        * ace/TP_Reactor.h (ACE_TP_Reactor): Fixed  a warning in KCC
          builds.

Sat Aug 25 08:42:57 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Configuration_Import_Export.cpp: Fixed warnings with g++. I
          am not sure how this fix will be accepted on different
          compilers.  Things are always dicy when you want to delete a
          void *.

Fri Aug 24 23:29:09 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * bin/auto_run_tests.lst: Added File_IO test to our daily builds.

Fri Aug 24 23:12:15 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/WFMO_Reactor.h:
        * ace/WFMO_Reactor.cpp (dispatch_notify): Fixed a compile error on
          MSVC.

Fri Aug 24 23:07:42 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Configuration_Import_Export.cpp: Fixed a compile error with
          g++.

Fri Aug 24 21:55:00 2001  Craig Rodrigues  <crodrigu@bbn.com>

        * ace/QoS/QoS_Session_Impl.cpp:
          Check for null parameters in rsvp_callback().
          Thanks to Yamuna Krishnamurthy <yamuna@cs.wustl.edu>.

Fri Aug 24 20:32:39 2001  Steve Huston  <shuston@riverace.com>

        * tests/MEM_Stream_Test.cpp: Changed this test to use multiple
          processes on any platform without ACE_LACKS_FORK. It actually
          could be broader than this if desired. This is motivated by the
          fact that HP-UX can't mmap() (the call underlying ACE_MEM_IO)
          the same file more than once in the same process. With this,
          MEM_Stream_Test goes a lot better on HP-UX, though not perfectly
          yet.

Fri Aug 24 16:54:02 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_SOCK_Stream.h (recv_i):

          Added a timeout parameter.  See below for details.

        * ace/SSL/SSL_SOCK_Stream.i (recv_i):

          Perform an SSL_read() before attempting to block on select()
          with a timeout.  OpenSSL may buffer more data than requested
          since it is a record-oriented protocol.  Fixes a problem where
          subsequent calls to ACE_SSL_SOCK_Stream::recv() could timeout
          when needlessly blocking on select() because the expected data
          has already been buffered by OpenSSL.  Thanks to Martin
          Krumpolec <krumpo@pobox.sk> for reporting and diagnosing the
          problem.  [Bug 1006]

        * ace/SSL/SSL_SOCK_Stream.cpp (recv):

          Moved the timed recv() code to the lower level recv_i() method
          since timeout support must now be more tightly integrated with
          do/while(SSL_pending()) SSL_read() loop.

Fri Aug 24 18:33:09 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/Parse_Node.cpp (ACE_Function_Node): Make sure to dynamically
          allocate the pathname_ so we can delete it!   Thanks to
          Don Hinton for reporting this.

        * ace/Configuration_Import_Export.cpp: Changed a couple of
          delete (char *) buf to delete (char *) [] buf.  Thanks to
          Don Hinton for reporting this.

Fri Aug 24 16:10:20 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        Merged in changes from the reactor_deadlock branch. This set of
        changes actually fixes a long standing problem with the
        TP_Reactor. The TP_Reactor was holding the token too long  and
        this created all sorts of problems for TAO. The changes have been
        merged from the branch <reactor_deadlock> and here are the relevant
        ChangeLog entries.

        Fri Aug 24 14:59:52 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/TP_Reactor.cpp (dispatch_socket_events): Cosmetic changes.

        Fri Aug 24 14:19:02 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Timer_Queue_T.i:
        * ace/Timer_Queue_T.h:Removed the default constructor and
          destructor for ACE_Timer_Node_Dispatch_Info_T allowing the
          compiler to do the job.

          Fri Aug 24 12:05:25 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Timer_Queue_T.cpp: Removed some vague debug statements.

        Fri Aug 24 11:34:11 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Timer_Queue_T.h:
        * ace/Timer_Queue_T.cpp:
        * ace/Timer_Queue_T.i: Added a new class
          ACE_Timer_Node_Dispatch_Info_T that has the dispatch information
          needed to make the upcall. Added methods, dispatch_info () and
          dispatch_info_i () in ACE_Timer_Queue_T. These methods return
          the dispatch information if there is a node in the queue whose
          timer value <= current time. Changed the expire () method to use
          this method to get dispatch information.

        * ace/Timer_Queue.h: Added a template specialisation for
          ACE_Timer_Node_Dispatch_Info_T.

        * ace/Timer_Queue.cpp: Added template instantiations for the
          specialisation.

        * ace/TP_Reactor.h:
        * ace/TP_Reactor.cpp: Added a new method handle_timer_events ()
          that would handles timer events.

        Thu Aug 23 11:50:18 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Reactor_Impl.h: Added two new methods notify_handle () and
          dispatch_notify () to the ACE_Reactor_Impl class.

        * ace/Select_Reactor_Base.h:
        * ace/Select_Reactor_Base.cpp: Implemented the above two
          methods in the ACE_Select_Reactor_Notify class. The
          notify_handle () method returns the handle of the pipe on which
          it is listening. The dispatch_notify () call does a dispatch of
          just one notify () call in the notify pipe. The handle_input ()
          call that used to process all the notify calls now calls the
          dispatch_notify () in a loop.  The change essentially allows
          some extrenal client of this class to just process one notify at
          a time if needed.

        * ace/TP_Reactor.h:
        * ace/TP_Reactor.i:
        * ace/TP_Reactor.cpp (handle_events): Fixed a bug with
          handle_events (ACE_Time_Value &). This should be calling the
          handle_events () of the TP_Reactor and not the select reactor.

          Added a whole slew of new methods that basically allows us to do
          this
            - handle one event at a time

            - once the thread knows the event that needs handling it should
              release the token before dispatching the events

          The new methods that have been added are

            - handle_signals (), which handle signals that interrupted the
              select (). The implementation of this method is busted. The
              implementation has been copied from the existing setup

            - handle_notify_events (), which handles one notify on the
              notify_pipe at a time

            - handle_socket_events (), which handles socket events.

          Quite a few helper methods have also been added. They are
          get_notify_handle (), get_socket_event_info (), and
          dispatch_socket_events (). Removed the methods dispatch_i (),
          dispatch_i_protected () and notify_handle (). This checkin fixes
          the problem in 1002. But we still have to add handling timeouts
          into the TP_Reactor.


        Tue Aug 21 17:21:07 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/TP_Reactor.i:
        * ace/TP_Reactor.h:
        * ace/TP_Reactor.cpp: Made lots of changes which havent been
          compiled yet.  Added a new class ACE_TP_Token_Guard that helps
          in obtaining and releasing tokens. Moved the grab_token () from
          the ACE_TP_Reactor class to the TP_Token_Guard class. Added a
          new method for handling signals. They havent been compiled yet
          and this checkin is to put files from work to my home box.

        Tue Aug 21 07:58:42 2001 Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/TP_Reactor.i:
        * ace/TP_Reactor.h:
        * ace/TP_Reactor.cpp (handle_events): Started refactoring some of
          the code to help with this bug.  This change has not been
          compiled. This is just being done to transfer files from home
          to work.

Fri Aug 24 14:25:31 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * THANKS: Added Massimo Pichini <massimo@webbridges.it> to the
          Hall of Fame.

Fri Aug 24 13:40:01 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * bin/nightlybuilds/builds.lst: Removed HPUX and AIX_VAC for the
          timebeing. Looks like OCI is running different versions of the
          OS for their internal use.

Fri Aug 24 10:17:00 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Log_Msg.cpp (log_hexdump): Added a patch provided by Massimo
          Pichini <massimo@webbridges.it>. This prevents overflows with
          long strings that are used in printing hexdumps. Previously we
          had a buffer of 80 bytes on the stack.

Fri Aug 24 10:03:29 2001  Steve Huston  <shuston@riverace.com>

        * ace/INET_Addr.(h cpp): Applied changes submitted by
          Alain Decamps <Alain.Decamps@PIDPA.be> to insure that
          get_host_name (char hostname[], size_t len) const always
          nul-terminates the hostname string. If the host lookup is
          successful, but the supplied buffer is too short, the function
          returns -1, errno == ENOSPC.

Thu Aug 23 22:01:11 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * tests/Logging_Strategy_Test.cpp: Reverted this change "Thu Aug
          23 05:24:57 2001  Douglas C. Schmidt" as this was giving
          warnings with MSVC 6.0

Thu Aug 23 11:49:15 2001  Paul Calabrese  <calabrese_p@ociweb.com>

        * bin/msvc_auto_compile.pl:

          Revert changes from Mon Aug 20 15:48:30 2001.
          Thanks to Darrell to showing me the error in my ways.

Thu Aug 23 09:17:25 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Log_Msg.cpp (file): Reduced the number of bytes copied in
          ACE_Log_Msg::file () and ACE_Log_Msg::msg () by one. Thanks to
          Alain Decamps <Alain.Decamps@PIDPA.be> for pointing this out.

Thu Aug 23 08:11:22 2001  Steve Huston  <shuston@riverace.com>

        * ace/Configuration_Import_Export.cpp (process_previous_line_format):
          Prepend ACE_OS:: to atoi to work with both narrow and wide chars.

Thu Aug 23 08:03:00 2001  Craig Rodrigues  <crodrigu@bbn.com>

        * ace/QoS/QoS_Session_Impl.cpp:
          Improve debugging messages.  Return -1 inside rsvp_callback()
          if flowspec type is unknown.

Thu Aug 23 05:24:57 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * tests/Logging_Strategy_Test.cpp: Added new and improved test that
          it better documented and fixes some minor bugs.  Thanks to
          Edan Ayal for this.

Wed Aug 22 19:04:57 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * tests/Logging_Strategy_Test.cpp: Enable this test to work
          on platforms that don't support DLLs.  Thanks to Edan Ayal
          <edana@bandwiz.com> for suggestion this and providing the code.

        * tests/Logging_Strategy_Test.cpp (parse_args): Changed 'n' for 'N'
          since that controls the max number of log files.  Thanks to Edan
          Ayal <edana@bandwiz.com> for reporting this.

Thu Aug 23 07:30:12 2001  Johnny Willemsen <jwillemsen@remedy.nl>

        * ace/SString.{h,i}: Added clear() method to the ACE_CString and
          ACE_WString so that it is possible to clear a string in just one
          call
        * tests/SString_Test.cpp: Extended to test clear() method

Wed Aug 22 15:30:05 2001  Carlos O'Ryan  <coryan@uci.edu>

        * bin/auto_compile:
          Use the print_config.pl script to print out the configuration.

Wed Aug 22 17:33:29 2001  Steve Huston  <shuston@riverace.com>

        Applied fixes submitted by Jerry D. Odenwelder, to fix
        Bugzilla #953:

        * ace/Configuration.cpp (import_config, export_config): Changed
          from using a ACE_Ini_ImpExp object to an ACE_Registry_ImpExp
          to preserve type information in the import/export files, and
          retain the ability to read an ACE 5.1-format file (with the
          changes next...)

        * ace/Configuration_Import_Export.(h cpp): Added a new
          ACE_Registry_ImpExp::process_previous_line_format() method that
          knows how to read an ACE 5.1-format config line. If
          ACE_Registry_ImpExp::import_config finds a line that does not
          begin with one of <"[#;> it calls process_previous_line_format
          to try to convert it using ACE 5.1-format rules.
          Note that the auto conversion works on import. If the
          object is subsequently exported, the new registry format
          will be used to write the file, effectively updating it
          from old to new format.

Wed Aug 22 12:04:04 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/WFMO_Reactor.h (ACE_WFMO_Reactor): Clarified that the
          work_pending() method isn't implemented and suggest what to do
          for a workaround.  Thanks to Michelangelo Riccobene
          (michelangelo.riccobene@marconi.com) for reporting this.

Wed Aug 22 10:38:08 2001  Carlos O'Ryan  <coryan@uci.edu>

        * bin/nightlybuilds/print_config.pl:
          Add new perl script to print out the build configuration, the
          script will be shared by the Unix and Win32 builds.

Wed Aug 22 11:30:13 2001  Joe Hoffert  <joeh@cs.wustl.edu>

        * ace/OS_Memory.h:
          Removed include of pace/stddef.h. PACE does not have this
          file. There are no POSIX functions that typically reside
          in this header. Maybe PACE will need this later but it
          doesn't now.

        * ace/OS.h (ACE_cond_t):
          Modified #if guard to include ACE_cond_t class if we're
          on Win32. If we're using PACE then we don't want this method
          (since PACE takes care of it) unless we're on Windows. Win32
          mutexes, semaphores, and condition variables are not yet
          supported in PACE.

        * ace/OS.cpp (ACE_OS::cond_destroy):
          Modified #if guard to include ACE_cond_t::cond_destroy
          if we're on Win32. If we're using PACE then we don't want
          this method (since PACE takes care of it) unless we're on
          Windows. Win32 mutexes, semaphores, and condition variables
          are not yet supported in PACE.

        * ace/OS.i (ACE_OS::waiters):
          Modified #if guard to include ACE_cond_t::waiters if
          we're not on Win32. If we're using PACE then we want
          this method (since PACE defines cond_t) unless we're
          on Windows. Win32 mutexes, semaphores, and condition
          variables are not yet supported in PACE.

Tue Aug 21 08:26:30 2001  David L. Levine <levine@cs.wustl.edu>

        * docs/ACE-guidelines.html: changed the example referenced
          in:
          Sun Aug 19 08:17:14 2001  David L. Levine <levine@cs.wustl.edu>
          to be a bit more realistic.

Tue Aug 21 06:58:49 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Log_Msg.cpp: Fixed problematic uses of strncpy. Thanks to
          Alain Decamps <Alain.Decamps@advalvas.be> for giving this patch.

Tue Aug 21 10:40:12 2001  Johnny Willemsen <jwillemsen@remedy.nl>

        * ace/Map.i: Made the return value of ACE_Incremental_Key_Generator
          getCurrentValue() const

        * ace/Map_Manager.*: Added a const iterator for the
          ACE_Map_Manager

Mon Aug 20 18:20:51 2001  Steve Huston  <shuston@riverace.com>

        * ace/Process.cpp (pass_handle): Only try to compile the
          DuplicateHandle stuff when !ACE_HAS_WINCE... I think it's
          right this time...

Mon Aug 20 15:54:46 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/SUN_Proactor.cpp: Removed the instantiation of
          ACE_Condition<ACE_Thread_Mutex>.  Thanks to David Trusty
          <david.trusty@westwave.com> for reporting this.

Mon Aug 20 15:48:30 2001  Paul Calabrese  <calabrese_p@ociweb.com>

        * bin/msvc_auto_compile.pl:

          Modify script to print config.h contents.

Mon Aug 20 13:14:00 2001  Carlos O'Ryan  <coryan@uci.edu>

        * bin/auto_compile:
          Fixed chdir commands for the auto_compile scripts.

Mon Aug 20 14:33:31 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/Message_Queue_T.cpp: If we timeout in the semaphore implementation
          of the message queue in wait_not_full_cond() or
          wait_not_empty_cond() make sure to decrement the "waiters" count
          accordingly!  Thanks to Patrick Rabau <Patrick.Rabau@htc.com>
          for noticing this in the C++NPv1 book version!

Mon Aug 20 07:01:31 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/Synch_T.i (release): If owner_ == -1 then return
          -1.  Thanks to Don Hinton <dhinton@swan.fr> for suggesting this.

Mon Aug 20 13:18:51 2001  Steve Huston  <shuston@riverace.com>

        * ace/SOCK.h: Corrected comment on ACE_SOCK ctor being protected,
          not private. Thanks to Don Hinton <dhinton@swan.fr> for
          pointing this out.

        * THANKS: Added Don Hinton to the Hall of Fame.

Mon Aug 20 11:00:50 2001  Chad Elliott  <elliott_c@ociweb.com>

        * ace/OS.h:

          Set the ACE_DEFAULT_FILE_PERMS to the correct value for VxWorks.

        * tests/run_test.lst:

          Removed tests for VxWorks for which the platform has no support.

        * tests/CDR_File_Test.cpp:
        * tests/Svc_Handler_Test.cpp:

          Add VxWorks to the list of platforms that can't unlink the file
          in advance of the test completing.

Mon Aug 20 01:49:12 2001  Christopher Kohlhoff  <chris@kohlhoff.com>

        * include/makeinclude/build_dll.bor:
          Build non-core DLLs into the common bin directory. This is necessary
          so that the tests can find all the DLLs they need on the path.

        * tests/run_test.pl:
          Removed the append of the ExeSubDir to the path, since it is no
          longer needed and never really worked properly anyway.

Mon Aug 20 00:01:29 2001  Steve Huston  <shuston@riverace.com>

        * ace/SOCK_Connector.h: Clarify the conditions under which errno
          will be ETIME (caller-specified timeout expires w/o connect)
          vs. ETIMEDOUT (protocol layer timed out the connect).

        * ace/SOCK_Connector.cpp: Add "|| errno == ETIME" to a couple
          places where an ACE_ERROR is _not_ done for certain conditions.

        * ace/ACE.cpp (handle_timed_complete): If the user-specified timeout
          expires before the connect is resolved one way or the other,
          set errno to ETIME, not ETIMEDOUT. This makes it match the
          documented behavior in the ACE_SOCK_Connector man page.

Sun Aug 19 20:33:39 2001  Carlos O'Ryan  <coryan@uci.edu>

        * bin/nightlybuilds/builds.lst:
          Update build list

Sun Aug 19 15:36:23 2001  Carlos O'Ryan  <coryan@uci.edu>

        * bin/auto_compile:
          Add new 'Config' section at the end of the build, useful for the
          next generation scoreboard.

Sun Aug 19 13:25:51 2001  Carlos O'Ryan  <coryan@uci.edu>

        * bin/footprint_stats.sh:
        * bin/performance_stats.sh:
        * bin/generate_footprint_chart.sh:
        * bin/generate_performance_chart.sh:
        * html/Stats/Stats.css:
        * html/Stats/configuration.shtml:
        * html/Stats/detailed_footprint.shtml:
        * html/Stats/detailed_performance.shtml:
        * html/Stats/footer.html:
        * html/Stats/index.shtml:
        * html/Stats/navigation.html:
          Put the scripts and HTML documents used to generate the Stats
          pages under CVS control.  Now it is easier for people to add
          their own libraries and tests, as well as let our user community
          examine the way the pages are generated.

        * bin/auto_run_tests.lst:
          Remove TAO/tests/LongUpcalls/run_ami_test.pl, the tests have
          been incorporated into the run_test.pl script.

        * bin/sandbox.cpp:
          Minor changes to the sandbox script, actually not very useful,
          the ACE classes to create processes start a new process group by
          default, therefore there is no simple way to kill all the
          subprocesses if a test fails.

Sun Aug 19 08:17:14 2001  David L. Levine <levine@cs.wustl.edu>

        * docs/ACE-guidelines.html: replaced function call in
          ASSERT with simple comparison of a variable value.  Thanks
          to Tino Schwarze <tino.schwarze@informatik.tu-chemnitz.de>
          for suggesting this.

Sat Aug 18 18:26:24 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/ACE.cpp: Removed the ASYS_INLINE macro from the definition
          of write_n ().

Sat Aug 18 13:18:10 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/ACE.{h,cpp}: Added a new write_n(...ACE_Message_Block *...)
          for file transfers that's the dual of
          send_n(...ACE_Message_Block *...).  This helps out the C++NPv1
          book symmetry.  Thanks to Alain Decamps <Alain.Decamps@PIDPA.be>
          for motivating this.

Fri Aug 17 18:17:38 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * bin/clone.cpp: Only use extern char *sys_errlist[] if we're not
          compiling on Linux.  Thanks to Thomas Groth
          <groth.th@stn-atlas.de> for reporting this.

Fri Aug 17 19:04:31 2001  Steve Huston  <shuston@riverace.com>

        * ace/Process.cpp (ACE_Process_Options::pass_handle): For WinCE,
          just do ACE_NOTSUP_RETURN (-1). It can't dup a handle.

Fri Aug 17 16:56:16 2001  Jeff Parsons <parsons@cs.wustl.edu>

        * ace/CDR_Stream.h:
        * ace/CDR_Stream.i:
        * ace/CDR_Stream.cpp:

          Added wr_ptr() accessor method to ACE_InputCDR, and added its
          use to adjust(), align_read_ptr(), read_1(), skip_string() and
          skip_bytes() instead of end().  Also added reset of good_bit_
          to 0 upon failure in read_string() and read_wstring(). Thanks to
          Peter Phillips <pphillip@opentext.com> for reporting this bug,
          which was causing excessive memory allocation is some cases.
          [Bug 591, 944, 983]

Fri Aug 17 13:31:45 2001  Chad Elliott  <elliott_c@ociweb.com>

        * tests/run_test.pl:

          Added the ability to generate windsh commands to load and run
          the ace tests.

        * tests/Makefile:

          Added a rule to generate run_test.vxworks, using run_test.pl,
          which can be used to run the tests selected for the VxWorks OS.

        * tests/run_test.lst:

          Update this list to take into account the limitations of VxWorks.

        * tests/test_config.h:

          Change the permissions of the log file open (for VxWorks only) to
          use the symbolic permission names instead of 0x644.  The
          permissions differ from the standard UNIX modes.

        * tests/run_tests.vxworks:

          This file was out of date and no longer needs to be maintained.
          So, it has been removed.

Fri Aug 17 09:44:49 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Map_T.{h,i}: Reverted this change "Fri Aug 17 08:07:12 2001
          Johnny Willemsen <jwillemsen@remedy.nl>" as this was giving too
          much of warnings in the builds.

Fri Aug 17 09:30:34 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * gperf/apps/tests/Makefile: Fixed the problem that was causing
          the builds to fail.

Fri Aug 17 08:07:12 2001  Johnny Willemsen <jwillemsen@remedy.nl>

        * ace/Map_T.(h i): made the return value of
          ACE_Incremental_Key_Generator::current_value const T& instead
          of T&. Added uppercase traits to the ACE_Map class.

Thu Aug 16 19:27:29 2001  Steve Huston  <shuston@riverace.com>

        * ace/Process.cpp (ACE_Process_Options::pass_handle): Add
          "::" to front of "DuplicateHandle" so the WinCE compiler
          sees the right function.
          Also added ctor/dtor for ACE_Managed_Process to try and fix the
          can't find vtable error on Linux.

        * ace/Process.h: Added a constructor for ACE_Managed_Process
          to fix "can't find vtable" error on Linux.

        * ace/Process.i: Moved ACE_Managed_Process dtor to .cpp file.

Thu Aug 16 15:10:42 2001  Steve Huston  <shuston@riverace.com>

        * ace/Process.h (pass_handle): Clarify comments for this method.

        * ace/Process_Manager.cpp:
        * ace/Process.(h i): Moved the ACE_Managed_Process class out
          of Process_Manager.cpp, exposing it for general use.

Thu Aug 16 10:34:20 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/POSIX_Proactor.cpp (allocate_aio_slot): Added a fix so that
          the POSIX Proactor compiles with FreeBSD 4.4.  Thanks to Yev
          Omenzel <omenzel@yahoo.com> for reporting this and to Craig
          Rodrigues <crodrigu@bbn.com> for fixing it and to
          John E Hein <jhein@timing.com> for fixing the fix ;-)

Thu Aug 16 08:09:53 2001  Chad Elliott  <elliott_c@ociweb.com>

        * tests/run_test.lst:

          Added the OTHER requirement to the Thread_Pool_Reactor_Test and
          the Thread_Pool_Reactor_Resume_Test.  These are only built if
          OTHER is part of the ACE components list.


Wed Aug 15 15:50:38 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/WFMO_Reactor.cpp: Don't try to purge the notifications if
          notify_handler_ is 0.  Thanks to Edan Ayal
          <edanayal@hotmail.com> for reporting this.

Wed Aug 15 11:33:26 2001  Carlos O'Ryan  <coryan@uci.edu>

        * bin/nightlybuilds/builds.lst:
          Remove one build from the list, the machine is being retargeted
          for performance testing.

Wed Aug 15 11:10:22 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * include/makeinclude/wrapper_macros.GNU: Added $(VDIR) for
          OBJDIRS. This prevents hardcoding the value of OBJDIRS. This has
          been tested for a dynamic and a static library on Linux. If
          there are other platforms that gives problems, please feel free
          to revert the changes to the version 4.114 of the file.

Wed Aug 15 09:35:19 2001  Chad Elliott  <elliott_c@ociweb.com>

        * ace/Dirent_Test.cpp:

          Added #define's for VXWORKS that allow this test to function
          properly.  Avoid hard-coded relative paths that may not exist on
          VxWorks.

Wed Aug 15 09:08:40 2001  Chad Elliott  <elliott_c@ociweb.com>

        * ace/Sock_Connect.cpp:

          Added an implementation to ACE_Sock_Connect::get_ip_interfaces().
          With this, the Enum_Interfaces_Test works correctly.

Wed Aug 15 07:54:49 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * include/makeinclude/wrapper_macros.GNU: Unravelled the mystery a
          bit. The patch that was applied to remove the hard coding of
          OBJDIRS seems to be the problem. The OBJDIRS has been hardcoded
          again. This should fix the problems that we have been seeing in
          the builds.  If at all we need to remove hardcoding the OBJDIRS,
          we either need to put the value of VDIR or VSHDIR. If we put
          both we are going to end up with duplicate targets. Now the
          killer, what do we add to the OBJDIRS? Me thinks it is VDIR. I
          have test that out else I would be breaking builds again.

Wed Aug 15 07:30:00 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * include/makeinclude/wrapper_macros.GNU: Reverted the change "Tue
          Aug 14 21:42:24 2001  Balachandran Natarajan". Thought that was a
          typo. But looks like it is not.

Wed Aug 15 06:39:50 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Process.cpp: Fixed a warning with g++.

Tue Aug 14 23:57:42 2001  Steve Huston  <shuston@riverace.com>

        * A set of changes to encapsulate passing handles to spawned
          processes. Thanks very much to Eamonn Saunders
          <Esaunders@softricity.com> for suggesting that this could work
          and pointing out the Win32 details!

        * THANKS: Added Eamonn Saunders to the Hall of Fame

        * ace/Handle_Set.h: Replace include ace/ACE.h with ace/OS.h. This
          class is part of the OS subset.

        * ace/Process.h: Added the following methods:
          - ACE_Process_Options::pass_handle (ACE_HANDLE). Cause the specified
            handle to be passed to a child process when it's spawned. Has
            meaning mainly for Win32. The handle value will be included
            in the spawned process's command line as +H <handle>. The passed
            handle value will be duplicated if on Win32 less than NT4.

          - ACE_Process_Options::dup_handles (ACE_Handle_Set set) const
            Get a copy of the handles the ACE_Process_Options duplicated
            for the spawned process.

          - ACE_Process_Options::passed_handles (ACE_Handle_Set set) const
            Get a copy of the handles passed to the spawned process. This
            will be the set of handles previously passed to pass_handle().

          - ACE_Process::close_dup_handles (). Close all the handles in
            the set obtained from ACE_Process_Options::dup_handles.

          - ACE_Process::close_passed_handles (). Close all the handles in
            the set obtained from ACE_Process_Options::passed_handles.

          Also moved the avoid_zombies() functions and flag out of the
          non-Win32 section - it can safely be ignored, maintain the
          intended semantics, and help apps stay portable.

        * Process.cpp: Implement the above new methods. Also, after spawning
          a process, the parent will call the above dup_handles/passed_handles
          methods to get any passed handles. The close_*_handles() methods
          can then close them. Also, the destructor will call close_dup_handles
          to be sure that no handles leak on Win32 less than NT4.

        * Process.i (command_line_buf ()): Added a new arg to receive the
          maximum length of the buffer pointed to on return. To maintain
          backward compatibility, the arg defaults to 0 (don't return
          the max length).

        * ace/Makefile: Moved Handle_Set from the UTILS group to the OS group.

        * ace/ace.icc: Moved Handle_Set from DEMUX to OS.

        * docs/ACE-subsets.html: Move Handle_Set from DEMUX to OS.

Tue Aug 14 21:42:24 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * include/makeinclude/wrapper_macros.GNU: Fixed a typo.

Tue Aug 14 21:30:04 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * apps/Makefile: Removed JAWS2 and JAWS from the Makefile. There
          are several reasons for reverting. This breaks the builds. The
          Makefiles in the recursed directories are all messed up. The
          library dependencies doesnt seem trivial. Nobody may have time
          to fix this. Further, our daily builds return too quickly and we
          just needed more files to compile :-).

Tue Aug 14 14:19:49 2001  Steve Huston  <shuston@riverace.com>

        * ace/Memory_Pool.i (ACE_Local_Memory_Pool dtor): Call release()
          here to free up the blocks allocated by the pool, else they're
          stranded and can't be freed.

        * ace/Memory_Pool.cpp (ACE_Local_Memory_Pool::release): After
          freeing up the blocks, reset the allocated_chunks_ set to be
          sure they are also freed, and the chunks can't be freed again.

Tue Aug 14 14:19:37 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Log_Msg.cpp: Applied the patches sent by Tibor Kiss
          <tkiss@mindmaker.hu> for ACE_Log_Msg::close ()

Tue Aug 14 13:55:42 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * include/makeinclude/platform_macosx.GNU: Added a patch from John
          Michael Zorko  <j.zorko@att.net>.

Tue Aug 14 10:21:39 2001  Steve Huston  <shuston@riverace.com>

        * ace/Log_Msg.h: Clarified the defaults for the per-process and
          per-instance default priority masks.

Mon Aug 13 14:01:35 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * include/makeinclude/wrapper_macros.GNU: Fixed some hard-coded
          uses of .shobj and .obj.  Thanks to Shashi Bhushan
          <Shashi.Bhushan@lmco.com> for contributing these.

        * ace/CDR_Stream.h: Added comments warning about the deletarious
          effects of not aligning buffers to ACE_InputCDR and
          ACE_OutputCDR properly.  Thanks to Alain Decamps
          <Alain.Decamps@PIDPA.be> for reporting this.

Sun Aug 12 14:46:07 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/OS.cpp (sched_params): Make sure to set errno for Win32 so
          that callers can figure out what's going wrong in a consistent
          way.

        * ace/Select_Reactor_Base.i (purge_pending_notifications): Don't
          try to purge the notifications if notify_handler_ is 0.  thanks
          to Steve Rahn <SRahn@rim.net> for reporting this.

Mon Aug 13 20:09:04 2001  Balachandran  <bala@cs.wustl.edu>

        * ACE version 5.1.19 released.

Sun Aug 12 02:17:01 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/MEM_Acceptor.cpp:
        * ace/MEM_Connector.cpp: On non-Win32 platforms, disable
          multithreaded MEM_IO if _ACE_USE_SV_SEM is defined.

Sun Aug 12 01:27:51 2001  Steve Huston  <shuston@riverace.com>

        * tests/Log_Msg_Test.cpp: Correct const-ness of a pointer
          retrieved from ACE_Log_Record::msg_data().

Sun Aug 12 00:34:42 2001  Steve Huston  <shuston@riverace.com>

        * ace/Log_Record.h:
        * ace/Log_Record.i (msg_data()): Changed ACE_TCHAR *msg_data()
          to:  const ACE_TCHAR *msg_data (void) const. Makes it safer,
          and conforms to all current usage inside ACE. Also makes
          C++ Network Programming examples simpler :-)

Sat Aug 11 09:01:11 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/Thread.h:
        * ace/Task.h: Added a list of other flags that can be passed to
          activate().

Fri Aug 10 19:39:48 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * bin/auto_run_tests.lst:

          Disabled the Blocking_Sync_None test from running under Tru64.
          Also changed the config parameter passed to the auto_compile
          script from TRU_64 to Tru64 in
               ~bugzilla/bin/auto_compile_tru64_cxx.

          This is so that the test is disabled only for the WashU builds.
          The reason being that Bala was not too happy with changing the
          default values for all the platforms and we also wanted to avoid
          more #ifdefs in the code. Other builds might have better values
          and the test might succeed. Have to confirm this though.

Fri Aug 10 17:59:47 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/Svc_Conf_y.cpp:
        * ace/OS.h: Added /**/ between #include and <sys/modem.h> and
          <alloca.h> to avoid warning from CE compiler.

        * ace/ace_dll.vcp: Added Svc_Conf_Lexer_Guard.* to the project.

Fri Aug 10 13:40:46 2001  Chad Elliott  <elliott_c@ociweb.com>

        * bin/nightlybuilds/builds.lst:

          I didn't realize the LIST definition was needed.  I have
          added it for the Tru64 4.0f Compaq C++ 6.3-10 build.

Fri Aug 10 11:45:03 2001  Chad Elliott  <elliott_c@ociweb.com>

        * bin/nightlybuilds/builds.lst:

          Added the Tru64 4.0f Compaq C++ 6.3-10 build.

Fri Aug 10 11:06:23 2001  Chad Elliott  <elliott_c@ociweb.com>

        * apps/drwho/CM_Client.cpp:
        * apps/drwho/CM_Server.cpp:
        * apps/drwho/server.cpp:

          Changes to avoid warnings on HP-UX with aCC.

Thu Aug  9 16:56:05 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Hash_Map_Manager_T.i:
        * ace/Hash_Map_Manager_T.cpp: We seem to be re-inventing wheels
          again and again.  A few months back we had a show stopper in a
          beta which was caused by usage of static cast. The cast was not
          to the liking of SunCC 4.2. Looks like we had to change a bunch
          of static cast sprayed in these two files to a C style cast as
          4.2 doesnt like them. Compilers like Borland handle these
          better, but not 4.2.

Thu Aug  9 11:51:10 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * include/makeinclude/platform_hpux_aCC.GNU: On popular mandate we
          have the -w flag removed from CCFLAGS in the above file. Looks
          like the -w disables lots of warnings that may be useful.

Thu Aug  9 11:41:01 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/CDR_Stream.h (ACE_OutputCDR): Fixed the ambigous constructor
          problem. The InputCDR class had two constructors which were
          similar if the default values for the arguments were
          exercised. Thanks to Torbjorn Backstrom
          <torbjorn.k.backstrom@volvo.com> for reporting this.

Thu Aug  9 12:31:21 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/OS_String.cpp (strtok_r_emulation): Make sure to check
          for a NULL return from strtok() before calling strlen()!  Thanks
          to Boris Sukholitko <boriss@richfx.com> for reporting this.

Wed Aug 08 21:27:50 2001  Ossama Othman  <ossama@uci.edu>

        * bin/nightlybuilds/builds.lst (Debian_Wchar, Debian_GCC_3.0):

          The host these nightly builds were built on is now called
          "rumba" (previously "valinor").  Updated the build list
          accordingly.

Wed Aug 08 21:19:09 2001  Ossama Othman  <ossama@uci.edu>

        * tests/Service_Config_Test.UTF-16.conf:

          Removed extraneous characters from this file that were causing
          the Service Configurator's underlying lexer to "choke."

Wed Aug  8 16:23:31 2001  Carlos O'Ryan  <coryan@uci.edu>

        * bin/auto_run_tests.lst:
          Add the AMI_Buffering tests to the nightly regression testsuite.

Wed Aug  8 16:07:26 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * bin/auto_run_tests.lst: The GIOP lite tests will not work in the
          static builds. It was  adding more complications to the test
          than what is already there to get it working for the static
          builds.

Wed Aug  8 14:06:36 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * ace/config-tru64.h:

          Define ACE_HAS_NONSTATIC_OBJECT_MANAGER for all DEC Unix 4.x
          versions.

        * ace/config-cxx-common.h:

          Define ACE_AUTO_PTR_LACKS_RESET if __DECCXX_VER == 60190027.
          Thanks to Robert Burke <c-robert.burke@wcom.com> for reporting
          this.

        * include/makeinclude/platform_osf1_3.2.GNU:
        * include/makeinclude/platform_osf1_4.0.GNU:
        * include/makeinclude/platform_osf1_4.0_g++.GNU:
        * include/makeinclude/platform_osf1_4.0_kcc.GNU:
        * include/makeinclude/platform_osf1_4.0_rcc.GNU:

          Removed the following files.

        * include/makeinclude/platform_osf1_3.2_cxx.GNU:
        * include/makeinclude/platform_osf1_4.x_cxx.GNU:
        * include/makeinclude/platform_osf1_4.x_g++.GNU:
        * include/makeinclude/platform_osf1_4.x_kcc.GNU:
        * include/makeinclude/platform_osf1_4.x_rcc.GNU:

          Added new versions of the removed files.

        * include/makeinclude/platform_tru64_pre.GNU:
        * include/makeinclude/platform_tru64_post.GNU:

          Moved a lot of duplicated code into these new files.

        * include/makeinclude/platform_tru64_cxx.GNU:
        * include/makeinclude/platform_tru64_g++.GNU:
        * include/makeinclude/platform_tru64_kcc.GNU:

          Removed a lot of old *cruft* like setting up compilation with
          cxx when gcc was asked for etc. etc. Somebody went overboard
          with cut'n paste and copied David's changes blindly. Still not
          completely satisfied. But it works and is better than before.
          This also fixes Bug Id 989.

Wed Aug 08 11:30:26 2001  Ossama Othman  <ossama@uci.edu>

        * tests/Service_Config_Test.cpp (run_test):

          Don't check if "ACE_USES_WCHAR == 1" since some configurations
          neglect to set it an integer value.  Instead, just check if it
          is defined.

Wed Aug  8 12:31:51 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * tests/MEM_Stream_Test.cpp: Changed a ACE_DEBUG statment with an
          LM_WARNING  to an LM_DEBUG.

Wed Aug 08 11:59:45 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/OS.h: Do not redefine ACE_IOV_MAX if it has already been
          defined.

Wed Aug  8 06:21:24 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/Makefile: Moved Message_Block from STREAMS_FILES to
          UTILS_FILES.

        * ace/OS_Dirent.inl (closedir): Changed delete d->directory_name_ to
          delete [] d->directory_name_.  Thanks to Olivier Brunet
          <obrunet@groupama-ccama.tm.fr> for reporting this.

Tue Aug  7 21:59:42 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * tests/Svc_Handler_Test.cpp: Modified the test to dump the contents
          of the temporary file to the log file.

Tue Aug  7 19:14:24 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/CDR_Stream.i:
        * ace/SOCK_Stream.h: Fixed incorrect comments.
          Thanks to Alain Decamps <Alain.Decamps@PIDPA.be> for reporting
          these.

Tue Aug  7 15:19:38 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace: Changed all uses of IOV_MAX to use the new ACE_IOV_MAX.
        * ace/OS.h: Added a new ACE_IOV_MAX that makes it clear this is
          an ACE-level #define.  We use this in C++NP v1.

Tue Aug  7 14:16:57 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/Svc_Handler.cpp: Reimplemented the flush() method to use
          the new send_n() method on the various ACE I/O classes.

        * ace/SOCK_Stream.{h,i}:
        * ace/FILE_IO.{h,i}: Added a new send_n() method that sends all
          the <message_block>s chained through their <next> and <cont>
          pointers using the underlying OS gather-write operation to
          reduce the domain-crossing penalty.

Tue Aug  7 17:27:16 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * tests/Collection_test.cpp: Fixed a compile error with g++. This
          is a patch that Johnny Willemsen sent as a part of his last
          checkin.

Tue Aug 07 11:25:36 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/config-freebsd-pthread.h: Made the following definition
          valid only for pre-4.2-RELEASE.

          #define ACE_LACKS_GETPGID
          #define ACE_LACKS_SETPGID
          #define ACE_LACKS_SETREGID
          #define ACE_LACKS_SETREUID

          Thanks to Robert Burke <rburke2002@yahoo.com> for reporting
          this.

Tue Aug 07 16:40:12 2001  Johnny Willemsen <jwillemsen@remedy.nl>

        * ace/Hash_Map_Manager_T.*:
          Added const_iterator to the Hash_Map_Manager so that it is
          possible to iterate over a hash map in a const method

          The operator= of the iterator now check the value of this to
          check that the iterator instance is assigned to itself

        * tests/Hash_Map_Manager_Test.cpp
          Extended this test to test the new const_iterator capabilities
          of the hash map

        * ace/Unbounded_Set.cpp:
          Implemented missing operator* for the const iterator

        * tests/Collection_test.cpp:
          Extended test to test the operator* of the
          Unbounded_Set_Const_Iterator

Mon Aug  6 19:58:48 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/config-hpux-11.00.h: Added #define for ACE_HAS_TERM_IOCTLS.
          Thanks to Torbjorn Backstrom <torbjorn.k.backstrom@volvo.com>
          for reporting this.

        * ace/OS.h: Added a #include for <sys/modem.h> for HP/UX.  Thanks
          to Torbjorn Backstrom <torbjorn.k.backstrom@volvo.com> for
          reporting this.

Mon Aug  6 12:51:35 2001  Douglas C. Schmidt  <schmidt@flamenco.cs.wustl.edu>

        * ace/Synch.h (ACE_Null_Mutex>): Fixed a cut&paste error
          where acquire_write() should be acquire_read().  Thanks to
          Russell Mora <rd.mora@router.econz.co.nz> for fixing this.

Mon Aug 06 17:17:33 2001  Ossama Othman  <ossama@uci.edu>

        * ace/Service_Config.cpp:

          Fixed some debugging messages that were not wrapped within an
          ACE_LIB_TEXT macro.

        * tests/Service_Config_Test.UTF-16.conf:

          Interim UTF-16 encoded version of the UTF-8 encoded
          Service_Config_Test.conf.  It was generated on a little-endian
          host.  Its current purpose is simply to keep our Unicode
          regression testing happy until the on-the-fly generation is
          implemented.  Once we start generating this file on-the-fly
          this file should disappear.

        * tests/Service_Config_Test.cpp (run_test):

          When using full Unicode support, use the version of the Service
          Configurator file that is UTF-16 encoded (as described above).

Mon Aug 06 11:10:24 2001  Ossama Othman  <ossama@uci.edu>

        * ace/Svc_Conf_l.cpp:

          More Unicode fixes.  Flex's allocation function uses malloc() as
          its underlying allocator.  Since it only accepts the size in
          bytes, allocate "size * sizeof (ACE_TCHAR)" when allocating
          string buffers.  This should clear up some strange looking text
          "unknown character" messages emanating from the Service
          Configurator's underlying text scanner.

          Note that these changes do not fix the cause of the "unknown
          character."  Those fixes should soon follow.

Mon Aug 06 09:04:04 2001  Ossama Othman  <ossama@uci.edu>

        * ace/Svc_Conf.l:

          Unicode updates.  Wrap debugging text within an ACE_LIB_TEXT
          macro.

Sun Aug  5 14:31:10 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * tests/run_tests.lst: Ossama suggested that we dont run the
          Service_Config_Test in static builds.

Fri Aug 04 3:33:31 2001  Yamuna Krishnamurthy  <yamuna@cs.wustl.edu>

        * ace/QoS/SOCK_Dgram_Mcast_QoS.h:
        * ace/QoS/SOCK_Dgram_Mcast_QoS.cpp:

          Made the open method public so we can open UDP sockets for
          non-multicast addresses.

Fri Aug 03 22:19:31 2001  Steve Huston  <shuston@riverace.com>

        * ace/config-hpux-11.00.h: Added ACE_HAS_WCHAR to build in the
          wide char handling since Darrell so nicely straightened all
          the muck out throughout ACE. Thanks Darrell!

Fri Aug 03 22:15:51 2001  Steve Huston  <shuston@riverace.com>

        * ace/Log_Msg.cpp (log): For 'W' and 'w' on HP-UX, the 'ls' and
          'lc' forms are not allowed; HP-UX requires 'S' and 'C'.

Fri Aug  3 13:10:59 2001  Ossama Othman  <ossama@uci.edu>

        * ace/config-linux-common.h (ACE_UINT64_FORMAT_SPECIFIER,
          ACE_SSIZE_T_FORMAT_SPECIFIER, ACE_SIZE_T_FORMAT_SPECIFIER):

          Removed unnecessary and some incorrect format specifiers for the
          32-bit platform case.  In particular, the format specifier for
          an unsigned 64-bit integer was incorrectly set to "%Lu."  "%L"
          is the format specifier for a "long double," not a "long long"
          integer on 32-bit platforms.  "%llu" is the correct format
          specifier which `ace/Basic_Types.h' already defines.

Fri Aug  3 09:55:38 2001  Ossama Othman  <ossama@uci.edu>

        * bin/auto_run_tests.lst:

          Added the new TAO "DLL_ORB" test to the list of tests to run.

Fri Aug  3 08:26:45 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/RW_Process_Mutex.cpp: Added a missing comma in the
          constructor. This should fix Win32 compile errors.

Fri Aug  3 08:07:45 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/CDR_Base.cpp: Added a check for a memory allocation failure
          in grow (). Thanks to Francis Paul <FranciP@navcanada.ca> for
          pointing this out.

Thu Aug  2 18:37:23 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/RW_Process_Mutex.cpp: Added ACE_DEFAULT_OPEN_PERMS
          to the constructor call to ACE_RW_Process_Mutex so that it does
          the right thing on Win32.  Thanks to Wayne Erchak
          <werchak@stentor.com> for reporting this.  This fixes
          bugid 996.

Thu Aug 02 13:04:19 2001  Steve Huston  <shuston@riverace.com>

        * ace/ace.icc: Added Intrusive_List.cpp to the TEMPLATE_FILES
          section.

Thu Aug 02 06:59:39 2001  Steve Huston  <shuston@riverace.com>

        * ace/Basic_Types.h (ACE_SIZEOF_WCHAR): If ACE_HAS_XPG4_MULTIBYTE_CHAR
          is defined, use sizeof(wchar_t) to set ACE_SIZEOF_WCHAR.

Wed Aug  1 16:05:49 2001  Carlos O'Ryan  <coryan@uci.edu>

        * Merged changes from the fix_886 branch

        Tue Jul 31 09:17:49 2001  Carlos O'Ryan  <coryan@uci.edu>

        * ace/Intrusive_List.h:
        * ace/Intrusive_List.inl:
          Add new methods to access the head and tail of the list.

        * ace/Intrusive_List.cpp:
          Fixed the implementation of remove(), if the element to be
          removed was the last on the list it wasn't removed at all.
          Left some code to check invariants, have to find a way to keep
          that code around with some optional compilation flags.

        Thu Jul 26 16:50:54 2001  Carlos O'Ryan  <coryan@uci.edu>

        * ace/Makefile:
        * ace/Makefile.am:
        * ace/Makefile.bor:
        * ace/Intrusive_List.h:
        * ace/Intrusive_List.inl:
        * ace/Intrusive_List.cpp:
          Add new template to implement intrusive lists, i.e. lists that
          assume their elements implement the next() and prev() methods.

        * ace/Intrusive_List_Node.h:
        * ace/Intrusive_List_Node.inl:
        * ace/Intrusive_List_Node.cpp:
          Helper class to add the requirements of ACE_Intrusive_List to
          any other class, simply do:
          class Foo : public ACE_Intrusive_List_Node<Foo>

Wed Aug  1 15:57:35 2001  Ossama Othman  <ossama@uci.edu>

        * ace/Message_Block.cpp (release, release_i):

          Obtain the pointer to the allocator from the object that will be
          destroyed before calling ACE_DES_FREE on the object.  Previously
          we were obtaining the allocator after the object was destroyed,
          due to the way the ACE_DES_FREE macro works.  Thanks to Hyman
          Rosen <hyrosen@mail.com> for reporting the problem, and to
          Carlos for suggesting a fix.  [Bug 992]

Wed Aug  1 15:00:21 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/Log_Record.{h,i}: Changed msg_data_len() from a "setter"
          to a "getter" method, which makes more sense.  Thanks to Patrick
          Rabau <Patrick.Rabau@htc.com> for reporting this.

Wed Aug  1 12:43:57 2001  Ossama Othman  <ossama@uci.edu>

        * ace/Svc_Conf_l.cpp:

          Reintegreated Nanbor's change (Wed Jun 13 10:22:10 2001  Nanbor
          Wang  <nanbor@cs.wustl.edu>) that enables proper handling of
          UNICODE Service Configurator directives.

Wed Aug  1 07:14:42 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * include/makeinclude/platform_vxworks5.x_g++.GNU: Checked in a new
          version of this file, which includes support for the Hitachi
          chip.  Thanks to Frank Wolf for this.

        * ace/Log_Record.cpp (format_msg): Added a cast to fix a warning.
          Thanks to Bala for reporting this.

Tue Jul 31 22:53:26 2001  Ossama Othman  <ossama@uci.edu>

        * tests/libService_Config_DLL.icc:

          New Visual Age project file for the libService_Config_DLL
          library.

        * tests/Makefile.am:

          Added build targets/dependencies for the libService_Config_DLL
          library.

Tue Jul 31 22:46:33 2001  Ossama Othman  <ossama@uci.edu>

        * tests/Service_Config_DLL.dsp:
        * tests/Service_Config_Test.dsp:

          Removed the static library configurations.  The
          Service_Config_Test currently requires dynamically loadable
          objects.  Fixes Win32 "LIB" build failures.

Tue Jul 31 22:10:48 2001  Ossama Othman  <ossama@uci.edu>

        * tests/Service_Config_Test.cpp (run_test):

          Wrap strings passed to ACE_ARGV::add() within an ACE_TEXT
          macro.  Fixes Unicode conversion problems.

Tue Jul 31 16:53:57 2001  Ossama Othman  <ossama@uci.edu>

        * ace/Svc_Conf.h (ace_yyrestart, ace_yy_delete_parse_buffer,
          ace_yydirective):

          Remove these global function and variable declarations.  They
          are no longer used.

Tue Jul 31 16:43:33 2001  Ossama Othman  <ossama@uci.edu>

        * ace/Basic_Types.h:

          If "__LITTLE_ENDIAN__" is defined then assume that the
          architecture is little endian.  Some compilers/platforms define
          that macro.  Suggested by Frank Wolf" <fwolf@gum.de>.

        * ace/Svc_Conf.h (yy_push_buffer):
        * ace/Svc_Conf.l (yy_push_buffer):
        * ace/Svc_Conf_l.cpp (ace_yy_push_buffer):
        * ace/Svc_Conf_Lexer_Guard.cpp (ACE_Svc_Conf_Lexer_Guard):
        * ace/Svc_Conf_Lexer_Guard.h (ACE_Svc_Conf_Lexer_Guard):

          The Service Configurator directive is an "ACE_TCHAR *" not a
          "char *".  Updated these method/function parameters to accept
          the former.  Fixes a compile-time problem on "wchar/Unicode"
          builds.

Tue Jul 31 05:34:48 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/OS.h: Removed a spurious WNOHANG definition.  Thanks to
          Christina Junru <junruli@lucent.com> for reporting this.

Mon Jul 30 15:31:42 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/Log_Msg.{h,i,cpp}: Fixed this class so that all of its fields
          are ACE_UINT32 or ACE_INT32 internally so that it'll always be
          the same on all platforms.  Thanks to Fabris
          <fabris65@my-deja.com> for reporting this.

Tue Jul 31 10:22:38 2001  Ossama Othman  <ossama@uci.edu>

        * tests/Makefile:

          Only build the Service_Config_Test if shared libraries are
          enabled, since it attempts to dynamically load a shared
          library.

Tue Jul 31 10:16:31 2001  Steve Huston  <shuston@riverace.com>

        * ace/Dump.h: Clarified the use of ACE_NDEBUG for turning this
          feature off, not on. Thanks to Don Hinton <dhinton@swan.fr>
          for noticing this.

Mon Jul 30 13:41:00 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/OS.cpp (ACE_Time_Value::FILETIME_to_timval_skew): Updated
          docuementation to better explain the meaning of this constant.
          Thanks to Mike Vitalo <mvitalo@sprynet.com> for motivating the
          change.

Mon Jul 30 09:43:06 2001  Douglas C. Schmidt  <schmidt@macarena.cs.wustl.edu>

        * ace/OS.i (mutex_lock): Missing an argument to the ACE_OSCALL macro.
          Thanks to Bala for reporting this.

Mon Jul 30 05:43:23 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/Synch.h (ACE_Semaphore): Corrected the comment on
          how to get POSIX Pthreads "implementation" of semaphores (which
          supports the timed acquire() option).  Thanks to Grzegorz
          Sikora <GSikora1@era.pl> for reporting this.

Sun Jul 29 19:03:56 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * tests/Thread_Mutex_Test.cpp (test): Fixed this test to be
          consistent wrt the errno for the timed acquire(), which should
          now always be set to ETIME rather than ETIMEDOUT and EBUSY.

        * ace/Message_Queue_T.cpp (wait_not_full_cond,
          wait_not_empty_cond): Fixed a nasty bug with the semaphore
          version of ACE_Message_Queue that would have reared it's ugly
          head if ACE_NULL_SYNCH were used when
          ACE_HAS_OPTIMIZED_MESSAGE_QUEUE was enabled.  Fixing this bug
          also triggered the following changes.

        * ace/OS.{h,i}: Added support for ACE_OS::sema_wait(),
          ACE_OS::mutex_lock(), ACE_OS::thread_mutex_lock() that take
          ACE_Time_Value *.

        * ace/OS.i: For some odd reason the timeouts for the timed version
          of mutex_lock() were returning a random smattering of errnos.
          I've changed them to all be consistent with the
          ACE_Condition_Thread_Mutex::wait() errno, which is ETIME.

        * ace/Synch.h: Updated the documentation of all the timed
          acquire() methods to explain what the various return values
          mean.

Sun Jul 29 22:10:40 2001  Ossama Othman  <ossama@uci.edu>

        * tests/Service_Config_DLL.cpp:
        * tests/Service_Config_DLL.h:
        * tests/Service_Config_DLL.dsp:
        * tests/Service_Config_DLL_Export.h:
        * tests/Service_Config_Test.conf:

          New files associated with the existing Service_Config_Test.
          They are used when testing the reentrance/thread-safety of the
          Service Configurator, in addition to testing the Service
          Configurator's ability to handle nested processing of Service
          Configurator directives.

        * tests/Service_Config_Test.cpp (run_test):

          Add arguments to the Service Configurator argument vector to
          make it process the newly added `Service_Config_Test.conf'
          file.

          (main):

          Make the ACE_Thread_Manager wait for all running threads before
          exiting the test.  Processing the `Service_Config_Test.conf'
          file causes some threads to be spawned.

Sun Jul 29 19:19:20 2001  Ossama Othman  <ossama@uci.edu>

        * ace/Service_Config.cpp (process_directive, process_directives):

          Wrap the ACE_GUARD_RETURN macro within an ACE_MT block.  The
          ACE_Static_Object_Lock declaration is only visible if
          ACE_HAS_THREADS is defined.  This truly fixes the
          single-threaded build problems.

Sun Jul 29 19:06:11 2001  Ossama Othman  <ossama@uci.edu>

        * ace/Svc_Conf.y (ace_obstack):
        * ace/Svc_Conf_y.cpp:
        * ace/Svc_Conf_l.cpp:

          UNICODE updates and fixes.

Sun Jul 29 10:50:45 2001  Ossama Othman  <ossama@uci.edu>

        * ace/Svc_Conf_Lexer_Guard.cpp:

          There is no longer any need to include "ace/Object_Manager.h"

        * ace/Service_Config.cpp:

          Include "ace/Object_Manager.h" to pull in the definition of
          ACE_Static_Object_Lock.  Fixes a problem found in Sun builds and
          single-threaded builds.

Sat Jul 28 23:03:24 2001  Ossama Othman  <ossama@uci.edu>

        The following are changes that make the Service Configurator
        reentrant and thread-safe.

        * ace/Svc_Conf.y:

          Generate a pure (reentrant) parser using Bison.  BYACC doesn't
          support generation of reentrant parsers.

        * ace/Svc_Conf.l:

          Implemented "buffer stack" support.  This feature makes it
          possible to process Service Configurator directives within a
          Service Object's init() method, i.e. support nested directive
          processing.

          (ace_yyerrno):

          Moved declaration of ace_yyerrno from this file to
          `Svc_Conf.y'.  ace_yyerrno was not used in the generated
          scanner.  It was only used in the generated parser.

          (yy_delete_parse_buffer):

          There is no longer any need for this function.  The lexer buffer
          stack implementation handles memory management of lexer buffers.

          (yywrap):

          Do not call yy_delete_parse_buffer().  It is no longer necessary
          to do so, in addition to the fact that that function was
          removed (as described above).

          (<<EOF>>):

          Do not call ACE_YY_NEW_FILE in this rule.  The new buffer stack
          implementation handles the buffer switching that ACE_YY_NEW_FILE
          did, and more.

        * ace/Svc_Conf_Tokens.h:
        * ace/Svc_Conf_l.cpp:
        * ace/Svc_Conf_y.cpp:

          Regenerated these files using updated Bison/YACC and FLEX input
          files to pull in support for reentrant parsing and nested
          processing of Service Configurator directives.

        * ace/Svc_Conf.h (ace_yy_push_buffer, ace_yy_pop_buffer):

          Added function prototypes for the newly implemented lexer buffer
          stack manipulation functions.

          (ace_yylex):

          Added ACE_YYSTYPE parameter to this functions signature, as
          required by the new reentrant parser support.

          (ACE_SERVICE_DIRECTIVE_STACK_DEPTH):

          New symbolic constant that defines the maximum supported depth
          for nested Service Configurator processing.  The current default
          is 8.

          (ACE_YY_INPUT):

          No longer any need to redefine this macro to support scanning of
          Service Configurator directive strings.  The new lexer buffer
          stack implementation provides support for lexer buffer scanning
          from a string instead of a pointer to "FILE."

          (ace_yydirective):

          This global variable is no longer needed due to the fact that
          the new buffer stack implementation handles directives read from
          both a string and a file.

        * ace/Service_Config.cpp:

          (process_directive, process_directives):

          Obtain a recursive lock before manipulating the lexer buffer
          stack, and invoking the parser and scanner.  This makes
          invocation of the scanner thread-safe.

          The new lexer buffer stack implemenation obviates the need to
          call yyrestart() since buffer switching is handled by the stack
          implementation.

          (open_i, close):

          No need to deallocate the lexer buffer since the buffer stack
          implementation handles that.

        * ace/Svc_Conf_Lexer_Guard.h:
        * ace/Svc_Conf_Lexer_Guard.cpp:

          New "guard" class that makes lexer buffer stack pushing and
          popping exception-safe.

        * ace/Makefile:
        * ace/Makefile.am:
        * ace/Makefile.bor:
        * ace/ace.icc:
        * ace/ace_dll.dsp:
        * ace/ace_lib.dsp:

          Added Svc_Conf_Lexer_Guard.* sources to these Makefiles and
          project files.

Sat Jul 28 14:58:30 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/Svc_Conf_l.cpp:
        * ace/Svc_Conf_y.cpp: Reran BYACC and FLEX on the Svc_Conf.l and
          Svc_Conf.y files to regenerate them.  Thanks to Bala for
          motivating this.

        * netsvcs/clients/Tokens/collection/Makefile,
          netsvcs/clients/Tokens/deadlock/Makefile,
          netsvcs/clients/Tokens/invariant/Makefile,
          netsvcs/clients/Tokens/mutex/Makefile,
          netsvcs/clients/Tokens/rw_lock/Makefile,
          examples/ASX/CCM_App/Makefile,
          examples/Logger/Acceptor-server/Makefile,
          examples/Reactor/Multicast/Makefile,
          examples/Reactor/Ntalker/Makefile,
          examples/Shared_Malloc/Makefile,
          performance-tests/TCP/Makefile,
          performance-tests/UDP/Makefile: Removed the line
          include $(ACE_ROOT)/include/makeinclude/rules.LIB.GNU
          so that these projects will build correctly on VxWorks with
          Make 3.79.1.  Thanks to Frank Wolf for reporting this.

Fri Jul 27 11:24:50 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/Svc_Conf.y: Allow quoted strings as the pathname.  Thanks
          to Kevin Burge <kcburge@systemware-inc.com> for suggesting this
          and providing the fix.

        * ace/Svc_Conf.l: Added support for "~" in pathnames to support
          Win32isms.  Thanks to Kevin Burge <kcburge@systemware-inc.com>
          for suggesting this and providing the fix.

        * ace/Refcounted_Auto_Ptr.i (assign): Fixed the code to avoid a
          race condition.  Thanks to Charlie Duke for this fix.

Thu Jul 26 08:15:36 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * include/makeinclude/platform_vxworks5.x_g++.GNU: Changed
          $PATH to $(PATH).  Thanks to Frank Wolf for reporting this.

Wed Jul 25 17:46:58 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/Asynch_Acceptor.{h,cpp}: Added an asynch_accept() accessor
          method.  Thanks to Craig L. Ching <cching@mqsoftware.com> for
          reporting this.

Wed Jul 25 17:36:09 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/Refcounted_Auto_Ptr.i: Added a lock for the reference count
          to the assign() method.  Thanks to Charlie Duke
          <cduke@cuseeme.com> for reporting this.

Fri Jul 27 23:17:31 2001  Steve Huston  <shuston@riverace.com>

        * ace/ace_wchar.h: If ACE_HAS_XPG4_MULTIBYTE_CHAR is set, then
          also set up definitions for functions that are not present
          (ACE_LACKS_ITOW, ACE_LACKS_WCSICMP, ACE_LACKS_WCSNICMP,
          ACE_LACKS_WCSDUP).

        * ace/ace_wchar.inl: If not ACE_WIN32, include <string.h> to see
          strlen().

        * ace/OS_String.inl (strstr): The XPG4 multibyte version of
          strstr() is wcswcs(), whereas the ANSI C / UNIX98 version is
          wcsstr(). So if ACE_HAS_XPG4_MULTIBYTE_CHAR is defined, use
          wcswcs.

Fri Jul 27 21:52:48 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * bin/auto_run_tests.lst: Added the IDL_Cubut test with GIOP Lite
          script, to our daily builds.

Fri Jul 27 16:50:49 2001  Steve Huston  <shuston@riverace.com>

        * tests/Log_Msg_Test.cpp: Silence a compile warning in g++.

Fri Jul 27 12:18:49 2001  Steve Huston  <shuston@riverace.com>

        * ace/Log_Msg.cpp (log): Fixed compile error - missing "" around
          's' for the %S case.

Fri Jul 27 11:07:26 2001  Chad Elliott  <elliott_c@ociweb.com>

        * ace/OS.h:

          After conversation with Steve Huston, I am reverting his change
          pertaining to HPUX from "Tue Jul 10 18:15:39 2001  Steve Huston
          <shuston@riverace.com>".

Fri Jul 27 10:57:24 2001  Chad Elliott  <elliott_c@ociweb.com>

        * ace/SOCK_Dgram_Bcast.cpp:

          Fix the ACE_SOCK_Dgram_Bcast::mk_broadcast() which was completely
          broken on AIX.  The broadcast_client in docs/tutorials/008 now
          works with the help of this change.

Thu Jul 26 22:09:19 2001  Steve Huston  <shuston@riverace.com>

        * ace/Log_Msg.cpp (log): Extend behavior so that all printf
          formatting conversion specifiers can be used with all legal
          ACE_Log_Msg format characters. This allows the caller to line
          up columns on any field, like line number or program name, or
          thread ID. Thanks to Paul Caffrey <pcaffrey@iel.ie> for
          motivating this extension.

        * tests/Log_Msg_Test.cpp: Added a new function, test_format_specs,
          that verifies the formatting. Right now it does not detect the
          correctness of the strings produced - they have to be examined
          in the log file to check. This needs to be fixed still.

Thu Jul 26 11:48:16 2001  Carlos O'Ryan  <coryan@uci.edu>

        * bin/count_lines:
          Add a few new file types.

Wed Jul 25 23:49:43 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * include/makeinclude/platform_tru64_g++.GNU:

          Fixed some missing defines in the Makefile for DEC Unix versions
          4.0D, 4.0E. We don't support or suggest this combination. Hence
          the oversight in missing the needed defines.

          Thanks to Martin Krumpolec <krumpo@pobox.sk> for reporting this.

Wed Jul 25 23:49:00 2001  Craig Rodrigues <crodrigu@bbn.com>

        * include/makeinclude/wrapper_macros.GNU:

          Remove extraneous rapi = 0.

Wed Jul 25 18:53:18 2001  Ossama Othman  <ossama@uci.edu>

        * html/index.html:

          Added CORBA Security Service main page link to the list of
          documentation.

Wed Jul 25 17:41:43 2001  Ossama Othman  <ossama@uci.edu>

        * ltcf-c.sh:
        * ltcf-cxx.sh:
        * ltconfig:

          Removed these libtool related files.  New versions of libtool
          (GNU libtool >= 1.4b) no longer use them.

        * config.guess:
        * config.sub:
        * ltmain.sh:

          Removed these files.  We no longer need to keep custom copies
          lieing around since libtool 1.4b includes all of our local
          changes (i.e. our changes have been folded into the upstream
          libtool sources).

        * install-sh:
        * missing:
        * mkinstalldirs:

          Removed these files.  Automake will automatically add these when
          necessary.

Wed Jul 25 16:29:48 2001  Steve Huston  <shuston@riverace.com>

        * tests/Max_Default_Port_Test.cpp: ACE-ified the code and fixed
          a number of ACE_DEBUG %p directives without a corresponding
          string. Also, closed a 2 handle-per-try handle leak, which
          may have affected test results on some platforms.
        * tests/Max_Default_Port_Test.h: Added a destructor to the
          test class - it's used to close the acceptor handle down.

Wed Jul 25 15:21:22 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * ace/OS.h:

          Fixed the _XOPEN_SOURCE checking to _XOPEN_SOURCE < 500 to fix
          incorrect declaration of prototype. This fixes the warnings when
          compiling with gcc-3.0. Thanks to Ossama for suggesting the fix.

Wed Jul 25 08:05:45 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * tests/Thread_Pool_Reactor_Resume_Test.h:
        * tests/Thread_Pool_Reactor_Resume_Test.cpp: Fixed a subtle race
          condition. This hardly showed up in many of our daily
          builds. The race condition had to be fixed to show the users of
          the cautious approach that one needs to take if they are
          resuming the handle in the application itself.

Tue Jul 24 16:41:57 2001  Joe Hoffert  <joeh@cs.wustl.edu>

        * ace/Thread_Manager.cpp :
          Added "&& ! defined (ACE_HAS_PACE)" ifdefs to already existing
          #if defined (VXWORKS) sections of code to get ACE_HAS_PACE to
          compile on VxWorks.

        * ace/OS.i :
        * ace/OS.cpp:
          Fixed formatting of some comments and added needed PACE
          calls for ACE_HAS_PACE on VxWorks.

        * ace/OS.h :
          Put #if !defined guards around the ACE_THR_PRI* macros
          so that we can define them in the config*.h files if
          they need to be corrected. For instance, ACE_THR_PRI_OTHER_MIN
          has a different value on SunOS 5.8 than it does on SunOS 5.7,
          i.e., -20 vs. 0 respectively.

          Also, added some needed typedefs and #define for ACE_HAS_PACE
          on VxWorks and updated some comments concerning ACE_OS::thr_create
          flags.

        * ace/Sched_Params.cpp (priority_min, priority_max):
          Changed to return correct thread priority min/max for
          Solaris threads. We now use the ACE_PRI_THR* macros
          for these values while still calling ACE_OS::priority_control
          for process and LWP priorities.

        * ace/config-sunos5.8.h:
          Added setting of ACE_THR_PRI_OTHER_MIN to be correct
          for SunOS 5.8.

Tue Jul 24 13:47:32 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/SSL/SSL_Asynch_Stream.h (ACE_SSL_Asynch_Stream):
        * ace/SSL/SSL_Asynch_Stream.cpp: Added a open () method that
          matches the signature of ACE_Service_Handler. This should fix
          the warnings in Borland builds that complain about hiding
          the virtual functions.

Tue Jul 24 10:56:04 2001  Ossama Othman  <ossama@uci.edu>

        * bin/generate_doxygen.pl (TAO_DOCS):

          Added "tao_security" and "tao_ssliop" Doxygen configurations to
          the list of documentation to generate.

Tue Jul 24 07:45:03 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/Containers_T: Fixed some problems with the lack of
          const for the ACE_DLList and ACE_Double_Linked_List classes.
          Thanks to Michael Kircher for reporting this.

        * ace/config-cygwin32-common.h: Removed the ACE_LACKS_FORK
          macro since this is apparently working on Cygwin.  Thanks tj
          Stefan Kluehspies <Stefan.Kluehspies@gmx.net> for reporting
          this.

        * ace/config-cygwin32.h: Removed the #define _CLOCKID_T
          macro, which should now be handled by the following change.

        * ace/OS.h: Added a #defined for _CLOCKID_T_.  Thanks to
          Stefan Kluehspies <Stefan.Kluehspies@gmx.net> for
          reporting this.

Tue Jul 24 11:10:59 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * ace/OS.h:

          Fix the compile errors seen on gcc-3.0 with -pedantic and
          -Wno-long-long. This should fix all the errors.

Tue Jul 24 10:07:31 2001  Chad Elliott  <elliott_c@ociweb.com>

        * include/makeinclude/platform_sunos5_g++.GNU:

          Add an optimize override to 0 for g++ 3.0.  The compiler breaks on
          a tremendous amount of files, even with -O.

Tue Jul 24 10:04:52 2001  Chad Elliott  <elliott_c@ociweb.com>

        * ace/INET_Addr.cpp:

          Corrected a run-time error on Tru64 with gcc.  Any executable
          that called ACE_INET_Addr::get_host_name() would core dump.
          This was caused by the call to ACE_OS::gethostbyaddr_r().

Tue Jul 24 08:20:02 2001  Chad Elliott  <elliott_c@ociweb.com>

        * include/makeinclude/platform_aix_ibm.GNU:

          Change -O2 to -O.  The optimizer seems to be a tiny
          bit broken, which is demonstrated by a few TAO and orbsvcs
          tests.

Mon Jul 23 17:38:46 2001  Ossama Othman  <ossama@uci.edu>

        * etc/tao_security.doxygen:
        * etc/tao_ssliop.doxygen:

          New Doxygen files for TAO's CORBA security libraries.

Mon Jul 23 13:48:26 2001  Ossama Othman  <ossama@uci.edu>

        * ace/MEM_Connector.cpp (connect):

          Disable non-blocking on the stream after its handle has been
          set.  Previously, non-blocking was disabled on an uninitialized
          MEM_Stream, after which the handle was set (i.e. initializing
          the stream).  In order to properly disable non-blocking on a
          stream, its handle must be set first since ioctl() operations
          are typically performed on the underlying stream handle.

Mon Jul 23 13:06:39 2001  Steve Huston  <shuston@riverace.com>

        * ace/WFMO_Reactor.cpp (event_handling): Corrected the loop check
          to account for a zero ACE_Time_Value *, avoiding a crash in
          tests/Reactor_Timer_Test, as well as any other program that
          called ACE_Reactor::handle_events with a zero timer pointer.

Mon Jul 23 10:39:55 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/OS.h: Added /**/ between #include and <sys/times.h> to
          avoid warning from CE compiler.

        * ace/ace_dll.vcp: Added Obchunk.cpp to the project.

Sun Jul 22 08:19:43 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/config-cygwin32.h: ADded a #define for_CLOCKID_T.  Thanks to
          Christophe Galerne <christophgalerne@earthlink.net> for
          reporting this.

        * ace/Log_Record.cpp (priority_names_): Added commas after the
          'ACE_LIB_TEXT ("LM_UNK(04000)")' lines.  Thanks to Steve Harris
          <harris_s@ociweb.com> for reporting this.

Sat Jul 21 19:56:08 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/Map_T.{h,i}: Made current_value() a const member function.
          Thanks to Johnny Willemsen for reporting this.

Fri Jul 20 10:16:46 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/Connector.cpp (create_AST): Replaced some calls to
          sh->get_handle () with a cached value of handle.  This fixes a
          bug with gcc 2.96 on Tornado 2.1/VxWorks for SuperH.  Thanks to
          Frank Wolf <fwolf@gum.de> for reporting this.

        * examples/Connection/non_blocking/CPP-acceptor.cpp:
        * examples/Service_Configurator/IPC-tests/server/Handle_Thr_Stream.cpp:
        * examples/Connection/non_blocking/CPP-connector.cpp:  Changed the
          SH macro to SVH to avoid clashes with a macro in VxWorks.
          Thanks to Frank Wolf <fwolf@gum.de> for reporting this.

Thu Jul 19 06:55:07 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/config-g++-common.h: Version 2.96 of g++ on VxWorks
          is missing auto_ptr, so let's add the ACE_LACK_AUTO_PTR flag
          there.  Thanks to Frank Wolf for suggesting this.

Fri Jul 20 09:47:38 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/Log_Msg.cpp: Fixed WinCE errors.  CE does not support
          UNIX_Syslog.

Thu Jul 19 22:39:32 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * tests/MEM_Stream_Test.cpp:
        * ace/MEM_IO.h:
        * ace/MEM_IO.i:
        * ace/MEM_IO.cpp: On non-Win32 platforms, disable multithreaded
          MEM_IO if _ACE_USE_SV_SEM is defined.

Thu Jul 19 15:25:11 2001  Paul Calabrese  <calabrese_p@ociweb.com>

        * ace/MEM_Acceptor.i (mmap_prefix):

          Fix case where a null pointer is passed in.

Thu Jul 19 06:55:07 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/Connector.cpp (connect_svc_handler): Missed one change...
          Thanks to Bala for reporting this!

        * include/makeinclude/platform_vxworks5.x_g++.GNU (HOST_DIR): Added
           support for the SH7700 and SH7700LE.  Thanks to Frank Wolf
          <WolfF@Becker.de> for reporting this.

        * ace/OS.i (truncate): Make sure to close the handle that we
          opens.  Thanks to Lothar for reporting this.

        * ace/Connector.cpp: Changed the SH macro to SVH to avoid clashes
          with a macro in VxWorks.  Thanks to Frank Wolf <fwolf@gum.de>
          for reporting this.

Wed Jul 18 13:15:06 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/OS_Dirent.cpp (scandir_emulation): Removed the calls to the
          ACE_ERROR_RETURN macros to avoid dependencies on ACE_Log_Msg
          from within the ACE_OS layer.  Thanks to Bala for pointing this
          out!

        * ace/ACE.{h,cpp}: Added a new wrapper method for ACE_OS::select()
          that uses ACE_Handle_Set *'s rather than fd_set *'s.  This is
          motivated by work Steve Huston and I are doing on our new book
          "C++ Network Programming: Resolving Complexity with ACE and
          Patterns."

        * ace/Malloc_T.i (release): Removed an unnecessary "else" to
          make gcc 2.96 happy.  Thanks to Frank Wolf <fwolf@gum.de> for
          reporting this.

        * Happy birthday to me and Angelo Corsaro!

Tue Jul 17 00:34:40 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/SString.h (ACE_Tokenizer): Make sure that the data members
          are protected, not private...  Thanks to Martin Krumpolec for
          reporting this (again)!

Wed Jul 18 16:40:56 2001  Irfan Pyarali  <irfan@cs.wustl.edu>

        * ace/Log_Msg.cpp (program_name): Undid the following changes:

          ChangeLogTag:Tue Jul 10 11:32:26 2001  Tibor Kiss

          Tibor will be looking into this further since this change
          currently causes shutdown problems on Win2000.

Wed Jul 18 15:59:03 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * ace/config-tru64.h:

          Removed _LIBC_POLLUTION_H. It seems that this macro is causing
          problems for some users.  Thanks to Pierre Oberson
          <oberson@nagra-kudelski.ch> for prompting this fix.

Tue Jul 17 13:00:11 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * tests/run_test.lst: Enabled the MEM_Stream test on Linux.

Mon Jul 16 14:59:32 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/Memory_Pool.h (ACE_Shared_Memory_Pool): Added a comment
          that discourages developer from using the ACE_Shared_Memory_Pool
          and points them to the ACE_MMAP_Memory_Pool instead.  Thanks to
          Johnny Chen <jchen@huawei.com> for motivating this.

        * ace/OS_Dirent.cpp (readdir_emulation): Fixed a handle leak
          in the event that errors occur.  Thanks to Kevin Burge
          <kcburge@systemware-inc.com> for reporting this.

        * ace/Log_Msg_UNIX_Syslog.cpp (open): Add an ACE_const_cast()
          to the program name for platforms like LynxOS whose openlog()
          method is char * rather than const char *.  Thanks to Bala for
          reporting this.

Sun Jul 15 11:06:33 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/Log_Msg_NT_Event_Log.cpp: Fixed the implementation so that
          it's consistent with the new program_name() features.  Thanks to
          Chris Kohloff <chris@kohlhoff.com> for this fix.

Sun Jul 15 11:04:26 2001  Carlos O'Ryan  <coryan@uci.edu>

        * ace/SSL/ACE_SSL.dsp:
          Removed references to $OPENSSL_ROOT, the user should configure
          those in the Tools -> Option -> Directories tab.

Fri Jul 13 23:02:46 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_Asynch_Stream.h:
        * ace/SSL/SSL_Asynch_Stream.cpp:
        * ace/SSL/SSL_Asynch_BIO.h:
        * ace/SSL/SSL_Asynch_BIO.cpp:

          Only support asynchronous SSL streams when using OpenSSL >
          0.9.5a.  The BIO method signatures changed in OpenSSL 0.9.6.

Fri Jul 13 22:48:56 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_Asynch_BIO.cpp (methods_ACE):

          Removed excess element in aggregate initializer.

Fri Jul 13 22:29:01 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_Asynch_Stream.cpp (print_error):

          The OpenSSL ERR_error_string_n() function is only supported in
          OpenSSL 0.9.6 or better.

Fri Jul 13 14:59:18 2001  Alexander Libman <alexander.libman@baltimore.com>

        * ace/WIN32_Asynch_IO.h (ACE_WIN32_Asynch_Result):
        * ace/WIN32_Asynch_IO.cpp (set_error, set_bytes_transferred):

          Added new methods set_error() and set_bytes_transferred().
          Needed for below changes and new asynchronous SSL stream
          implementation.

        * ace/WIN32_Proactor.cpp (handle_events):

          Fixed error handling semantics so that it is consistent with the
          POSIX Proactor error handling semantics.

          (post_completion):

          Pass the amount of bytes transferred and the completion key to
          the Win32 PostQueuedCompletionStatus() function.  The error, if
          any, will later be extracted in the handle_events() method.

Fri Jul 13 15:59:45 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * netsvcs/servers/main.cpp (main): The server was always outputing
          LM_DEBUG information, even when the program was not run with the
          -d command line argument.  Therefore, changed the following
          lines from:

          if (ACE::debug () == 0)
            ACE_Log_Msg::disable_debug_messages ();

          to:

          if (ACE::debug () == 0)
            ACE_LOG_MSG->priority_mask (~LM_DEBUG, ACE_Log_Msg::PROCESS);

          Thanks to Jerry D. De Master <jdemaster@rite-solutions.com> for
          reporting this fix.

Fri Jul 13 12:16:03 2001  Ossama Othman  <ossama@uci.edu>

        * ace/SSL/SSL_Asynch_BIO.h:
        * ace/SSL/SSL_Asynch_BIO.cpp:
        * ace/SSL/SSL_Asynch_Stream.h:
        * ace/SSL/SSL_Asynch_Stream.cpp:

          New asynchrounous SSL stream implementation contributed by
          Alexander Libman <alexander.libman@baltimore.com>.

        * ace/SSL/ACE_SSL.dsp:
        * ace/SSL/Makefile:
        * ace/SSL/Makefile.bor:

          Added new asynchronous SSL stream source files to these
          Makefiles and project files.

Fri Jul 13 09:40:08 2001  Jerry D. De Master <jdemaster@rite-solutions.com>

        * ace/Log_Msg.*,
          ace/Logging_Strategy.*,
          ace/Log_Msg_UNIX_Syslog.*:
          Applied patches to ACE_Log_Msg, ACE_Logging_Strategy, and
          ACE_Log_Msg_UNIX_Syslog that are required to add the program
          name logging strategy option ('n') and to initialize the UNIX
          syslog facility with the program name.  Also included are Boris
          Kolpackov <bosk@ipmce.ru> patches for ACE_LACKS_IOSTREAM_TOTALLY
          to ACE_Logging_Strategy.

Thu Jul 12 19:54:27 2001  Ossama Othman  <ossama@uci.edu>

        * examples/Registry/test_registry_update.cpp (main):

          Fixed unused argument warning.

Thu Jul 12 19:57:12 2001  Frank Hunleth  <fhunleth@cs.wustl.edu>

        * bin/auto_run_tests.lst:

          Added TAO/tests/RTCORBA/ORB_init to the auto run list.

Thu Jul 12 17:11:35 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * bin/nightlybuilds/builds.lst (WEB):

          Temporarily removed the IA-64 build till some issues get sorted
          out.

Thu Jul 12 06:01:03 2001  John Michael Zorko <j.zorko@att.net>

        * netsvcs/lib/Server_Logging_Handler.cpp:
          Added an an additional #define in config-macosx.h called
          ACE_HAS_MACOSX_DYLIB, and checked to see if this was _not_
          defined before instantiating the offending template in
          Server_Logging_Handler.cpp.  OS X has this thing about .dylibs
          (OS X version of .so) where they can't have any duplicate
          symbols, which is why libnetsvcs wasn't building on OS X
          earlier.  This fixes that.

        * include/makeincludes/platform-macosx.GNU: Added -lACE to the
          LIBS line, which fixed the majority of the build problems.

        * ace/config-macosx.h: Added the ACE_HAS_MACOSX_DYLIB #define
          mentioned above.

Thu Jul 12 06:01:03 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/TLI_Connector.cpp (complete): Changed ACE_OS::t_rcvconnect()
          to simply t_rcvconnect().  Thansk to Andreas Geisler for
          reporting this.

Thu Jul 12 09:43:36 2001  Ossama Othman  <ossama@uci.edu>

        * ace/FILE_Connector.h (ACE_FILE_Connector, connect):

          Removed the default O_EXCL flag I added a few days ago.  It is
          mostly useful for preventing symbolic link attacks in a
          directory with global write permissions.  Pass the
          responsibility of using the O_EXCL flag when necessary on to the
          application developer.

Wed Jul 11 22:31:50 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * include/makeinclude/rules.local.GNU (clean.local):

          Added ti_files to remove the template cache generated by KCC.

        * ace/TLI_Acceptor.cpp(open_new_endpoint):

          Fixed a small typo causing compilation errors under Tru64.

Wed Jul 11 13:06:33 2001  Steve Huston  <shuston@riverace.com>

        * tests/Log_Msg_Test.cpp: Changed the ostream test to close the
          under-test ostream file before trying to open it and read the
          contents. Avoids the "already open" error now that
          ACE_FILE_Connector includes O_EXCL by default, and avoids any
          potential file buffering issues reading an already-open file.

Wed Jul 11 08:31:02 2001  Jeff Parsons <parsons@cs.wustl.edu>

        * tests/Dirent_Test.cpp:

          Wrapped a string literal with ACE_TEXT, to get rid of a Win2000
          WChar build error.

Wed Jul 11 06:41:43 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/TLI_Stream.cpp,
        * ace/TLI_Connector.cpp,
        * ace/TLI_Acceptor.cpp: Added enhancements so that the code would
          work on Win32.  Thanks to Andreas Geisler
          <Andreas.Geisler@erl9.siemens.de> for reporting this.

Tue Jul 10 19:26:15 2001  Ossama Othman  <ossama@uci.edu>

        * ace/ace_dll.dsp:

          Disabled generation of source browse information.  It was
          causing problems on some existing builds that didn't use it.

        * ace/SSL/SSL_SOCK_Acceptor.cpp (ssl_accept):

          Removed certificate verification code.  It is up to the
          application, not the ACE_SSL library, to perform proper
          certificate verification.

Tue Jul 10 23:02:00 2001  Craig Rodrigues  <crodrigu@bbn.com>

        * tests/Log_Msg_Test.cpp:
          Fix test so it doesn't open output file to write to twice.
          Thanks to Ossama for finding it.

Tue Jul 10 19:10:19 2001  Steve Huston  <shuston@riverace.com>

        * ace/ace.icc: Corrected the mis-applied patch for ace.icc in
          Mon Jul 09 19:12:42 2001  Steve Huston  <shuston@riverace.com>

Tue Jul 10 16:01:52 2001  Ossama Othman  <ossama@uci.edu>

        * THANKS:

          Added Sangeetha Ramadurai <Sangeetha.Ramadurai@geind.ge.com> to
          the hall of fame.

Tue Jul 10 18:15:39 2001  Steve Huston  <shuston@riverace.com>

        * ace/WFMO_Reactor.cpp (event_handling): Move the logic for
          noticing that the wait timed out, but did not expire any
          timers, into this function. Will remove it from Reactor.cpp,
          to properly move the fix into handle_events() rather than
          needing to call run_reactor_event_loop to get it right.
        * ace/Select_Reactor_T.cpp - still need to add similar logic here.

        * ace/config-sunos5.6.h: Re the following:
          Mon Jul  2 15:26:32 2001  Nanbor Wang  <nanbor@cs.wustl.edu>
          Replaced ACE_HAS_POSIX_SEM, and left ACE_LACKS_NAMED_POSIX_SEM out.
          Solaris does indeed have POSIX semaphores in 2.6 and later, but
          requires the changes to OS.i below to work right.

        * ace/OS.h: For ACE_PROC_PRI_OTHER_MIN (and MAX), on HP-UX,
          convert the HP-UX priority value to the POSIX range.

        * ace/OS.i (ACE_OS::sema_init, named POSIX semaphore): On Solaris
          and HP-UX, the name of a POSIX semaphore needs to start with
          a slash (further restricted on Solaris). Enforce that here by
          prepending a slash, or by chopping off parts of the name.

Tue Jul 10 16:08:04 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * include/makeinclude/platform_osf1_4.0.GNU:

          Fixed the default flags so that it enables the user to override
          settings. Now that the long pending fix to wrapper_macros.GNU is
          through, this should work fine now.

Tue Jul 10 13:37:31 2001  Jeff Parsons <parsons@cs.wustl.edu>

        * ace/OS_Dirent.cpp (readdir_emulation):

          Removed the hard cast to char* of one of the two arguments in
          a call to strcpy. In the WChar win32 build, this cast was
          causing the source and target strings to be of different widths.

Tue Jul 10 11:32:26 2001  Tibor Kiss  <tkiss@mindmaker.hu>

        * ace/Log_Msg.cpp:
          Completed the ACE_Log_Msg::close method with the
          ACE_Thread::keyfree (log_msg_tss_key_) and key_created_ = 0; to
          ensure restartability by multiple successive ACE::init and
          ACE::fini calls.  This fix prevent leaks from occurring when
          ACE::init() and ACE::fini() are called multiple times.

Tue Jul 10 11:12:00 2001  Chris Gill <cdgill@cs.wustl.edu>

        * ace/OS_Dirent.{h, inl}: refactored XDIR, dirent usage for pSOS -
          user is no longer responsible for buffer deallocation after each
          readdir call, only for passing the pointer returned from opendir
          into closedir when all done.  ACE_DIR structure is now used
          consistently for all pSOS dirent calls.

Tue Jul 10 06:06:07 2001  Douglas C. Schmidt  <schmidt@ace.cs.wustl.edu>

        * ace/Service_Repository.h: Updated the insert() comment to
          clarify the return values.  Thanks to Johnny Willemsen for
          suggesting this.

        * ace/Service_Repository.{h,i}: Made the current_size() and
          total_size() methods const.  Thanks to Johnny Willemsen for
          suggesting this.

        * ace/Service_Repository.h: Fixed a typo in the comments.  Thanks
          to Johnny Willemsen for reporting this.

Tue Jul 10 08:39:04 2001  Chad Elliott  <elliott_c@ociweb.com>

        * ace/config-vxworks5.x.h:

          Added the macro ACE_LACKS_UNIX_SYSLOG.

Tue Jul 10 08:26:57 2001  Chad Elliott  <elliott_c@ociweb.com>

        * ace/Log_Msg_UNIX_Syslog.cpp:

          Added a macro, ACE_LACKS_SETLOGMASK, for platforms that have
          syslog, but don't have setlogmask().

        * ace/config-chorus.h:

          ChorusOS 4.0.1 happens to be one of them.

Tue Jul 10 09:00:12 2001  Johnny Willemsen <jwillemsen@remedy.nl>

        * ace/OS_Dirent.h
          Made the member 'd_name' of the 'dirent' struct non-const, because
          BCB had problems with it

Mon Jul 09 22:41:43 2001  Ossama Othman  <ossama@uci.edu>

        * include/makeinclude/wrapper_macros.GNU (exceptions):

          Include platform_macros.GNU before the default for "exceptions"
          is set.  This fixes a problem where the default native
          exceptions setting in platform_linux.GNU was not set due to the
          fact that it was previously set in wrapper_macros.GNU.  Thanks
          to Hans Utz <hans.utz@informatik.uni-ulm.de> for tracking down
          the problem.

Mon Jul  9 16:40:02 2001  Ossama Othman  <ossama@uci.edu>

        * ace/Dirent_Selector.cpp (ACE_Dirent_Selector):

          Correct order of initialization of members to match order of
          declaration.  Fixes a warning issued from GCC.

        * ace/Dirent_Selector.inl:

          Added missing RCS ID keyword.  Fuzz was whining about the lack
          of it.

        * ace/Dirent_Selector.h:

          Corrected some Doxygen comments.

Mon Jul 09 19:12:42 2001  Steve Huston  <shuston@riverace.com>

        * ace/ace.icc: Added Log_Msg_UNIX_Syslog and Log_Msg_NT_Event_Log
          modules to the LOGGING component. Added Dirent_Selector to the
          UTILS component.

Mon Jul  9 15:59:56 2001  Joe Hoffert  <joeh@cs.wustl.edu>

        * ace/config-lynxos.h:
          Added ACE_LACKS_MKSTEMP since LynxOS doesn't seem to have
          this.

Mon Jul  9 15:28:29 2001  Jeff Parsons <parsons@cs.wustl.edu>

        * ace/Dirent_Selector.cpp:
        * ace/Dirent_Selector.h:

          Added ACE_INLINE guards around inclusion of Dirent_Selector.inl.

        * ace/ace_dll.dsp:
        * ace/ace_lib.dsp:

          Added Dirent_Selector.{h,i,cpp} to these projects.

Mon Jul  9 06:52:09 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/Makefile.bor (OBJFILES): Added the Dirent_Selector.obj file.

        * tests/Dirent_Test.cpp: Integrated a new test for the
          ACE_Dirent_Selector class.

        * ace/Makefile (UTILS_FILES),
        * ace/Dirent_Selector.h,
        * ace/Dirent_Selector.inl,
        * ace/Dirent_Selector.cpp: Added support for a C++ wrapper facade that
          encapsulates ACE_OS_Dirent::scandir().  Thanks to Rich Newman for
          contributing this, as well.

        * ace/OS_Dirent.h,
        * ace/OS_Dirent.inl,
        * ace/OS_Dirent.cpp: Added support for the scandir() feature, which
          makes it possible to selectively pick which files in a directory
          to iterate over.  Also fixed a bug in the emulation of dirent.
          Thanks to Rich Newman <RNewman@directv.com> for contributing
          these fixes.

Mon Jul 09 14:39:50 2001  Irfan Pyarali  <irfan@cs.wustl.edu>

        * ace/OS.i (thr_getprio and thr_setprio): Changed these two
          function such that if we are on Solaris and we have pthreads
          enabled, we should use the pthread calls rather than the native
          Solaris calls.  The reasons for choosing the pthread calls is
          due to following problems with the native calls:

          - thr_getprio() is evil because on Solaris 5.8, a thread with
          priority -20 (SCHED_OTHER) is reported to have priority 80.

          - thr_setprio() is evil because it cannot set the negative
          priorities on Solaris 5.8.

          - Also, thr_setprio() cannot change the priority of a thread
          with negative priority to a positive priority on Solaris 5.8
          (even though there is no error reported and thr_getprio() shows
          that the change happened but pthread_getschedparam() shows that
          no change happened).

          - In addition, suppose a thread of policy SCHED_RR or SCHED_FIFO
          uses thr_setprio() to reset its priority, the priority will be
          reset but the scheduling policy will be dropped to SCHED_OTHER.
          This happens with both Solaris 5.7 and Solaris 5.8.

Mon Jul  9 13:33:43 2001  Joe Hoffert  <joeh@cs.wustl.edu>

        * include/makeinclude/wrapper_macros.GNU:
          Change PACE path to start at $PACE_ROOT rather than $ACE_ROOT/PACE
          since the latter is not as flexible. Defined PACE_ROOT if not
          already defined. Also, added inclusion of PACE library for VxWorks
          even when inlining since not all the PACE functions should be
          inlined.

Mon Jul 09 10:59:22 2001  Ossama Othman  <ossama@uci.edu>

        * THANKS:

          Added Mouna Seri <seri@crhc.uiuc.edu> to the hall of fame.

Mon Jul  9 11:10:44 2001  Jeff Parsons <parsons@cs.wustl.edu>

        * ace/config-win32-msvc-5.h:
        * ace/config-win32-msvc-6.h:

          Added conditional definitions for ACE_LD_DECORATOR_STR
          "mfc" and "mfcd" so that the MFC release and debug versions
          of libraries can be dynamically loaded in the same way that
          the non-MFC release and debug versions are. Thanks to
          Francois Bernier <fbernier@gel.ulaval.ca> for suggesting
          this enhancement.

Mon Jul 09 11:31:12 2001  Johnny Willemsen <jwillemsen@remedy.nl>

        * ace/pre.h
        * include/makeinclude/compiler.bor

          Removed the disabling of the compiler warning 'parameter never
          used'. Unused parameters are handled by ACE_UNUSED_ARG macro.
          A missing ACE_UNUSED_ARG is now shown as warning in the BCB build
          log.

Sun Jul 08 11:26:23 2001  Ossama Othman  <ossama@uci.edu>

        * ace/OS.h (mkstemp):
        * ace/OS.i (mkstemp):

          New mkstemp() wrapper.  It is assumed to be available on the
          given platform, unless ACE_LACKS_MKSTEMP is defined.

        * ace/FILE_Connector.h:

          Added O_EXCL to the default flags.  This is a security hole
          fix.

        * ace/FILE_Connector.cpp (connect):

          If mkstemp() is available, then use it to create a temporary
          file rather than mktemp() (via ACE_FILE_Addr) since mktemp() is
          susceptible to a denial-of-service attack.

        * ace/config-win32-common.h:
        * ace/config-vxworks5.x.h:

          mkstemp() is not supported on MS Windows and VxWorks.  Define
          ACE_LACKS_MKSTEMP in these headers.

Sun Jul  8 08:13:12 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/Select_Reactor_Base.h: Added a comment explaining what
          the ACE_HAS_REACTOR_NOTIFICATION_QUEUE macro means.  Thanks to
          Kobi Cohen-Arazi <kobic@bvr.co.il> for motivating this.

Sat Jul  7 18:53:49 2001  Krishnakumar B  <kitty@cs.wustl.edu>

        * include/makeinclude/platform_osf1_4.0.GNU:

          Revert the changes made to this file. Please see the file for a
          lengthy description.

Fri Jul 06 21:53:26 2001  Christopher Kohlhoff  <chris@kohlhoff.com>

        * ace/config-win32-borland.h:
          Reverted addition of ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION.

Fri Jul  6 19:55:23 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * examples/Reactor/Multicast: Adding the support for UNIX Syslog
          broke this example because LOG_DEBUG was suddenly defined as a
          macro (it's in syslog.h).  I've fixed this by renaming the LOG_
          enums to LM_ instead.  Thanks to Bala for reporting this.

Fri Jul 06 20:23:41 2001  Steve Huston  <shuston@riverace.com>

        * ace/Refcoutned_Auto_Ptr.i (null): Change const_cast<> to
          ACE_const_cast() to build on older compilers, like IBM C/C++ 3.6.6.

Fri Jul 06 20:13:29 2001  Steve Huston  <shuston@riverace.com>

        * netsvcs/lib/Name_Handler.cpp:
        * netsvcs/lib/Server_Logging_Handler_T.cpp:
        * netsvcs/lib/Token_Handler.cpp:

          More ACE_DEBUG disables.

Fri Jul  6 15:55:54 2001  Ossama Othman  <ossama@uci.edu>

        * ace/OS.h (ACE_FD_SETSIZE):

          Integrated patch from Jody Hagins <jody@atdesk.com>.  Set the
          default reactor file descriptor set size to be an integer
          constant rather than a preprocessor constant.  Some third party
          software #undef FD_SETSIZE in their header files, causing build
          problems in ACE.

Fri Jul 06 18:20:39 2001  Steve Huston  <shuston@riverace.com>

        * netsvcs/lib/Client_Logging_Handler.cpp: #if 0'd out a bunch of
          ACE_DEBUG statements that aren't appropriate for use in commercial
          logging. These can be #if 1'd if there's some doubt while debugging
          this stuff, but they aren't useful once debugged, and are
          distracting since they're interespersed with application records.

Fri Jul  6 13:40:20 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Log_Msg_UNIX_Syslog.cpp: Fixed a warning in g++.

Fri Jul 06 11:39:41 2001  Steve Huston  <shuston@riverace.com>

        * ace/INET_Addr.h: Clarified (and improved doxygenation) of
          constructor and set() methods regarding byte orders.

        * tests/Max_Default_Port_Test.icc: New file for this test.
        * tests/tests.icp: Added Max_Default_Port_Test

Fri Jul  6 08:36:20 2001  Chad Elliott  <elliott_c@ociweb.com>

        * netsvcs/Makefile: Don't build this if ACE_COMPONENTS does not
          contain Other.  The netsvcs library requires Naming_Context.

Fri Jul  6 05:44:13 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/Makefile (LOGGING_FILES): Added support for
          Log_Msg_UNIX_Syslog.

        * ace/Log_Msg_UNIX_Syslog.{h,cpp}:
        * ace/Log_Msg.cpp,
        * ace/OS.h: Added support for a new UNIX syslog backend for the
          ACE_Log_Msg class.  Thanks to Jerry D. De Master
          <jdemaster@rite-solutions.com> and Robert Davidson
          <robert@rdavidson.freeserve.co.uk>.

        * ace/SOCK_Dgram.h: Fixed a typo in one of the send() method
          comments.  Thanks to Alain Decamps <Alain.Decamps@PIDPA.be> for
          reporting this.

        * ace/config-macosx.h: Added a new file courtesy of John
          Zorko so that things will work on MacOSX.

Thu Jul  5 23:22:21 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

          Fixes that were required for fixing bug 575. Merged in from
          branch bug_575_stage_2.

Thu Jul  5 23:09:29 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/CDR_Stream.cpp (ACE_InputCDR): Fixed a long standing bug in
          the branch. This caused the DSI_Gateway test to fail. The
          problem was from setting the write pointer to a wrong position
          during the construction.

Thu Jul  5 14:39:45 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * Merged with the main trunk and moved it to a new branch by name
          bug_575_stage_2.

Thu Jun 28 15:25:07 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Reactor.h (ACE_Reactor):
        * ace/Reactor.cpp: Added a new method resumable_handler () to the
          reactor interface. This would indicate whether the application
          can take advantage by resuming the handlers themselves or
          not. Not all reactors can allow this feature.

        * ace/Reactor_Impl.h:
        * ace/Reactor_Impl.cpp: Added a pure virtual function so that all
          the implementations can decide whether the handlers are
          resumable or not.

        * ace/Select_Reactor_Base.h:
        * ace/Select_Reactor_Base.cpp:
        * ace/TP_Reactor.h:
        * ace/TP_Reactor.cpp:
        * ace/WFMO_Reactor.h:
        * ace/WFMO_Reactor.cpp:Implemented resumable_handlers ().

Sun Jun 24 11:25:07 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * Created this file. Got the whole stuff in ace to a new branch by
          name bug_575_stage_1. This ChangeLog file will be in branch
          bug_575.

Fri Jun 22 16:52:13 2001  Balachandran Natarajan <bala@cs.wustl.edu>

        * ace/CDR_Stream.cpp: Changed the copy constructor for the
          ACE_InputCDR's. Instead of duplicating the ACE_Data_Block we
          now use the new copy constructor in the ACE_Message_Block.

        * ace/Message_Block.h:
        * ace/Message_Block.cpp: Added a new copy constructor to the
          ACE_Message_Block. This copy constructor does a deep copy from
          the data block if the data block of the incoming message block
          is on the stack or does a shallow copy of the data block (by
          incrementing the ref count) if it is on the heap.

        END of entries from bug_575_stage_2.

Thu Jul  5 22:07:33 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * bin/auto_run_tests.lst: Added the new perl script in LongUpcalls
          in the  daily builds.

Thu Jul  5 20:36:00 2001  Craig Rodrigues  <crodrigu@bbn.com>

        * ace/config-win32-borland.h
            define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
        * tests/Token_Test.cpp
            Fix template instantiation problem.

Wed Jul  4 15:35:47 2001  Joe Hoffert  <joeh@cs.wustl.edu>

        * tests/run_tests.vxworks:
          Removed invocation of CDR_Array_Test. According to the ace
          config files the compiler we are using is pre 2.8 (i.e.,
          ACE_HAS_GNUG_PRE_2_8 is defined). Therefore don't run
          CDR_Array_Test since the Makefile doesn't build it (due to
          the ACE_HAS_GNUG_PRE_2_8 macro).

Wed Jul 04 14:26:10 2001  Irfan Pyarali  <irfan@cs.wustl.edu>

        * ace/Synch_T.h (class ACE_Acquire_Method): Moved the enums from
          the Reverse Lock class into ACE_Acquire_Method, a non-template
          class.  These enums should have been inside the reverse lock
          class, but some lame compilers cannot handle enums inside
          template classes.

Wed Jul 04 12:43:22 2001  Irfan Pyarali  <irfan@cs.wustl.edu>

        * ace/Synch_T.i (ACE_Reverse_Lock): Fully specified the
          ACE_ACQUIRE_METHOD type.

Tue Jul  3 15:43:25 2001  Balachandran Natarajan  <bala@cs.wustl.edu>

        * ace/Select_Reactor_Base.cpp: Fixed a warning in g++.

Tue Jul  3 14:44:00 2001  Craig Rodrigues  <crodrigues@bbn.com>

        * ace/config-win32-common.h: Borland C++ apparently
          does not support the "extern template class" Microsoft VC++
          proprietary extension.  Thanks to Chris Kohloff <chris@kohlhoff.com>
          for the fix.

Tue Jul 03 12:26:33 2001  Irfan Pyarali  <irfan@cs.wustl.edu>

        * ace/Synch_T.h (class ACE_Reverse_Lock): Added a parameter to the
          constructor of the reverse lock.  The ACE_ACQUIRE_METHOD
          parameter is used to indicate which acquire() method will be
          called on the real lock when the release() method is called on
          the reverse lock. REGULAR indicated the acquire() method, READ
          indicates the acquire_read() method, and WRITE indicates the
          acquire_write() method.  Note that the try_*() methods are not
          represented here because we have to make sure that the release()
          method on the reverse lock acquires a lock on the real lock.

          Thanks to Edan Ayal <edana@bandwiz.com> for suggesting this.

Tue Jul  3 06:20:13 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/Reactor.h,
        * ace/Reactor_Impl.h,
        * ace/Select_Reactor_Base.cpp,
        * ace/Select_Reactor_Base.i,
        * ace/Select_Reactor_Base.h,
        * ace/WFMO_Reactor.cpp,
        * ace/WFMO_Reactor.h: Added an enhancement that allows the
          Reactor to selectively purge event handlers from its
          notification queue according to their Reactor_Mask type.  Thanks
          to Edan Ayal <edana@bandwiz.com> for contributing this.

        * tests/Reactor_Notify_Test.cpp (run_notify_purge_test):
          Added a new set of tests for the new selective notification
          purging features of the Reactor.  Thanks to Edan Ayal
          <edana@bandwiz.com> for contributing this.

        * ace/WIN32_Asynch_IO.cpp: Removed the
          ACE_WIN32_Asynch_Result (handler, act, event, 0, 0, priority,
          signal_number), initializer since we no longer use virtual
          inheritance.  Thanks to Alexander Libman
          <alexander.libman@baltimore.com> for reporting this.

        * ace/WIN32_Asynch_IO.h: Removed the virtual inheritance from
          ACE_WIN32_Asynch_Result for the ACE_Asynch_Read_Stream_Result
          and ACE_Asynch_Read_Dgram_Result classes.  Thanks to Alexander
          Libman <alexander.libman@baltimore.com> for reporting this.

        * ace/Refcounted_Auto_Ptr.h: Made the destructor of
          ACE_Refcounted_Auto_Ptr virtual so that users can override it
          locally.  Thanks to Jenny Kowald <jkowald@oz.agile.tv> for
          reporting this.

Tue Jul  3 09:40:59 2001  Chad Elliott  <elliott_c@ociweb.com>

        * include/makeinclude/platform_osf1_4.0.GNU:
        * include/makeinclude/platform_osf1_4.0_g++.GNU:

          Allow users to set options like debug, exceptions, ... without
          using override.

Tue Jul  3 08:38:47 2001  Jeff Parsons <parsons@cs.wustl.edu>

        * examples/Reactor/Proactor/test_dup_proactor.dsp:

          Fixed a mistake in the link to the ACE library.

Mon Jul  2 16:23:04 2001  Jeff Parsons <parsons@cs.wustl.edu>

        *  examples/Reactor/Proactor/test_multiple_loops.dsp:
        *  examples/Reactor/Proactor/test_proactor.dsp:
        *  examples/Reactor/Proactor/test_proactor.dsw:
        *  examples/Reactor/Proactor/test_timeout.dsp:
        *  examples/Reactor/Proactor/test_udp_proactor.dsp:

          Fixed settings on release version of test_udp_proactor.dsp,
          added it to the workspace, and removed unused file folders
          from the FileViews of the other projects.

Mon Jul  2 15:26:32 2001  Nanbor Wang  <nanbor@cs.wustl.edu>

        * ace/config-sunos5.6.h: Removed ACE_HAS_POSIX_SEM and
          ACE_LACKS_NAMED_POSIX_SEM.  Thanks to Glenn Popelka
          <gpp@gpopelka.com> for helping track this down.

Mon Jul 02 11:45:57 2001  Ossama Othman  <ossama@uci.edu>

        * bin/make_release:

          Disabled bootstrapping of ACE's autoconf support.  It isn't
          ready for general use.  Doing so reduces the amount of
          confusion.  Thanks to Holger P. Krekel <krekel@merlinux.de> for
          motivating this change.

Mon Jul  2 13:18:14 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * Moved ACE-configurations.txt into the docs directory.  Also
          removed the hopelessly out of date BIBLIOGRAPHY file.

        * Moved all the ChangeLog-* files into the new ChangeLogs
          directory.  Thanks to Holger P. Krekel <krekel@merlinux.de> for
          this suggestion.

Mon Jul 02 11:20:52 2001  Ossama Othman  <ossama@uci.edu>

        * config.guess:
        * config.sub:

          Updated to the latest versions from the GNU FTP site.

Mon Jul 02 11:30:20 2001  Irfan Pyarali  <irfan@cs.wustl.edu>

        * ace/Synch_T.i: Since the release() method on the reverse lock
          calls the simple acquire() method on the real lock, it is
          assumed that it is a simple acquire/release protocol with the
          real lock.  Therefore, I think all the other methods on the
          reverse lock tryacquire(), acquire_read(), acquire_write(),
          tryacquire_read(), tryacquire_write(), and
          tryacquire_write_upgrade() should not be allowed.  This falls in
          line with the original concept of using reverse locks with
          regular guards.

          Thanks to Edan Ayal <edana@bandwiz.com> for pointing this out.

Mon Jul  2 11:17:37 2001  Chad Elliott  <elliott_c@ociweb.com>

        * ace/Profile_Timer.cpp:

          Cleaned up the conditional macros.  Added method bodies for
          ACE_Profile_Timer::get_rusage() and
          ACE_Profile_Timer::elapsed_rusage() when neither ACE_HAS_PRUSAGE_T
          nor ACE_HAS_GETRUSAGE is defined.

        * Reverted the reverted changes in this entry.
          "Fri Jun 29 22:31:56 2001  Balachandran Natarajan
          <bala@cs.wustl.edu>".  These changes are ok, I just
          needed to fix the bug in Profile_Timer.cpp.

Mon Jul  2 09:40:45 2001  Chad Elliott  <elliott_c@ociweb.com>

        * include/makeinclude/platform_aix_ibm.GNU:

          Add the output filter to the linker to avoid the duplicate symbol
          warnings on AIX.

Mon Jul  2 05:40:54 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * ace/Logging_Strategy.cpp: Enhanced the code so that it works with
          ACE_LACKS_IOSTREAM_TOTALLY.  Thanks to Nir Drang <nir@bandwiz.com>
          and Edan Ayal <edana@bandwiz.com> for reporting this.

        * ace/SPIPE_Addr.cpp (set): Added a "+ 1" to the computation of
          the size of the SPIPE_Addr to account for the trailing NUL.
          Thanks to Oren Zeev-Ben-Mordehai <oren@phonedo.com> for
          reporting this.

        * ace/Refcounted_Auto_Ptr.{h,i}: Added support for a "null()"
          method to check if a refcounted auto ptr is NULL.  Thanks to
          Jenny Kowald <jkowald@oz.agile.tv> for reporting this.

        * ace/config-macosx.h,
        * ace/platform_macosx.GNU: Enhanced these files to support MacOSX.
          Thanks to John Zorko <j.zorko@att.net> for contributing this.

        * ace/Synch.h: Fixed the Doxygen documentation for all the
          removed_ fields, which where somehow messed up.  Thanks to
          Johnny Willemsen for reporting this.

Sun Jul  1 11:49:13 2001  Alexander Libman <alexander.libman@baltimore.com>

        * ace: Enhanced the POSIX and Sun Proactor implementations as
          follows:

          . POSIX_SIG_Proactor is now based on POSIX_AIOCB_Proactor

          . All classes ACE_POSIX_SIG_Asynch_XXXX are removed.
            POSIX_SIG_Proactor uses the ACE_POSIX_AIOCB_Asynch_XXXX
            classes now.

          . ACE_POSIX_AIOCB_Proactor::register_and_start_aio (...)
            now calls a new virtual method: int
            ACE_POSIX_AIOCB_Proactor::allocate_aio_slot
            (ACE_POSIX_Asynch_Result *result).

          . The strategy of free slot allocation in SIG_Proactor is
            a bit different from AIOCB and SUN Proactors.  The
            allocate_aio_slot() method is responsible for setting
            notification information for aio request
            (SIGEV_NONE/SIGEV_SIGNAL).  For SIG_Proactor, the field
            aio_sigevent.sigev_value.sival_int now contains index of aiocb
            in the aiocb_list_, not a pointer.

          . The ACE_POSIX_AIOCB_Proactor::find_completed_aio (int &error_status,
                                              int &return_status, size_t
                                              &index, size_t &count)
            parameter index defines initial slot to scan and the new
            parameter count tells us maximum number slots to scan.  On
            return: index contains value to start scan next time, count
            contains remained number of slots.  Scanning is performed in
            "wheel" style to allow all requests be handled with equal
            priorities.

          . ACE_POSIX_AIOCB_Proactor::check_max_aio_num () checks for
            max_number_files to open and tries to setup max_number_files
            equal to aiocb_max_size_. if we failed than cut off
            aiocb_max_size_ value to existing max_number_files.

          . POSIX_Proactor added member int os_id_ and constructor sets up
            os_id_ (compilation time + run_time function) to know
            OS(Sun/HP/Linux/...) and version.  We need such info for
            POSIX_SIG_Proactors to take into account the behavior of
            different OS.

          . Delivery of simulated/"post_completed" Asynch_Results
            (Timers, AsynchAccept,Wakeup ...).  As both Proactors have no
            reliable mechanizm for delivery "post_completed" results, so
            the reliable queue of "post_completed" results was
            implemented.  The new member of AIOCB Proactor
            ACE_Unbounded_Queue<ACE_POSIX_Asynch_Result *> result_queue_
            has been added.  Also added protected methods to the
            ACE_POSIX_AIOCB_Proactor.

          . We had an error in all previous versions (from major ACE 5.1):
            post_completion (int how_many) does not guarantee that all
            completions will be delivered to the different threads running
            event_loop (sometimes several completions could be delivered
            to the one thread, in another thread performs during long time
            application_spesific_code ()).  Moreover, you can run now
            Proactor event_loop in any number of threads (more than
            SIGQUEMAX).

Sun Jul  1 11:49:13 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * examples/Reactor/Proactor: Integrated a test that exercises the
          support for asynchronous UDP operations.  Thanks to Roger Tragin
          <r.tragin@computer.org> for contributing this.

        * ace/Synch_T.i: Changed the implementations of all the
          acquire*() method to call release().  Thanks to Edan Ayal
          <edana@bandwiz.com> for reporting this.

Sat Jun 30 12:44:11 2001  Douglas C. Schmidt  <schmidt@tango.doc.wustl.edu>

        * examples/Connection/blocking/SPIPE-acceptor.cpp: Added better
          support for shutting down the server when a signal occurs.
          Thanks to Rich Newman <RNewman@directv.com> for this
          enhancement.
